From 2d274f824489c109ea78ae1c98e9fc8832a86b1f Mon Sep 17 00:00:00 2001 From: Ferdinand Thiessen Date: Sun, 5 Nov 2023 02:38:26 +0100 Subject: [PATCH] chore: Compile assets Signed-off-by: Ferdinand Thiessen --- js/activity-389.js.map | 1 - js/{activity-389.js => activity-629.js} | 6 +++--- ...ivity-389.js.LICENSE.txt => activity-629.js.LICENSE.txt} | 0 js/activity-629.js.map | 1 + js/activity-sidebar.js | 4 ++-- js/activity-sidebar.js.map | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) delete mode 100644 js/activity-389.js.map rename js/{activity-389.js => activity-629.js} (98%) rename js/{activity-389.js.LICENSE.txt => activity-629.js.LICENSE.txt} (100%) create mode 100644 js/activity-629.js.map diff --git a/js/activity-389.js.map b/js/activity-389.js.map deleted file mode 100644 index 6daead6e0..000000000 --- a/js/activity-389.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"activity-389.js?v=ad462860ee137ff27ece","mappings":"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","sources":["webpack:///activity/node_modules/@nextcloud/auth/dist/index.js","webpack:///activity/node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js","webpack:///activity/node_modules/@nextcloud/event-bus/node_modules/semver/functions/major.js","webpack:///activity/node_modules/@nextcloud/event-bus/node_modules/semver/functions/parse.js","webpack:///activity/node_modules/@nextcloud/event-bus/node_modules/semver/functions/valid.js","webpack:///activity/node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js","webpack:///activity/node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js","webpack:///activity/node_modules/@nextcloud/event-bus/node_modules/semver/internal/identifiers.js","webpack:///activity/node_modules/@nextcloud/event-bus/node_modules/semver/internal/parse-options.js","webpack:///activity/node_modules/@nextcloud/event-bus/node_modules/semver/internal/re.js","webpack:///activity/node_modules/@nextcloud/l10n/dist/gettext.js","webpack:///activity/node_modules/@nextcloud/logger/dist/ConsoleLogger.js","webpack:///activity/node_modules/@nextcloud/logger/dist/LoggerBuilder.js","webpack:///activity/node_modules/@nextcloud/logger/dist/contracts.js","webpack:///activity/node_modules/@nextcloud/logger/dist/index.js","webpack:///activity/node_modules/@nextcloud/moment/dist/index.js","webpack:///activity/node_modules/@nextcloud/moment/node_modules/@nextcloud/l10n/dist/index.js","webpack:///activity/node_modules/@nextcloud/paths/dist/index.js","webpack:///activity/node_modules/@nextcloud/vue/dist/Components/NcAvatar.js","webpack:///activity/node_modules/@nextcloud/vue/dist/Components/NcEmptyContent.js","webpack:///activity/node_modules/@nextcloud/vue/dist/Components/NcUserBubble.js","webpack:///activity/node_modules/base64-js/index.js","webpack:///activity/node_modules/core-js/internals/a-constructor.js","webpack:///activity/node_modules/core-js/internals/a-possible-prototype.js","webpack:///activity/node_modules/core-js/internals/add-to-unscopables.js","webpack:///activity/node_modules/core-js/internals/array-iteration.js","webpack:///activity/node_modules/core-js/internals/array-reduce.js","webpack:///activity/node_modules/core-js/internals/array-slice-simple.js","webpack:///activity/node_modules/core-js/internals/array-slice.js","webpack:///activity/node_modules/core-js/internals/array-species-constructor.js","webpack:///activity/node_modules/core-js/internals/array-species-create.js","webpack:///activity/node_modules/core-js/internals/correct-prototype-getter.js","webpack:///activity/node_modules/core-js/internals/create-iter-result-object.js","webpack:///activity/node_modules/core-js/internals/create-property.js","webpack:///activity/node_modules/core-js/internals/date-to-primitive.js","webpack:///activity/node_modules/core-js/internals/dom-iterables.js","webpack:///activity/node_modules/core-js/internals/dom-token-list-prototype.js","webpack:///activity/node_modules/core-js/internals/engine-is-node.js","webpack:///activity/node_modules/core-js/internals/function-bind-context.js","webpack:///activity/node_modules/core-js/internals/inherit-if-required.js","webpack:///activity/node_modules/core-js/internals/is-array.js","webpack:///activity/node_modules/core-js/internals/is-constructor.js","webpack:///activity/node_modules/core-js/internals/iterator-create-constructor.js","webpack:///activity/node_modules/core-js/internals/iterator-define.js","webpack:///activity/node_modules/core-js/internals/iterators-core.js","webpack:///activity/node_modules/core-js/internals/iterators.js","webpack:///activity/node_modules/core-js/internals/object-get-own-property-names-external.js","webpack:///activity/node_modules/core-js/internals/object-get-prototype-of.js","webpack:///activity/node_modules/core-js/internals/object-set-prototype-of.js","webpack:///activity/node_modules/core-js/internals/path.js","webpack:///activity/node_modules/core-js/internals/set-to-string-tag.js","webpack:///activity/node_modules/core-js/internals/species-constructor.js","webpack:///activity/node_modules/core-js/internals/string-trim.js","webpack:///activity/node_modules/core-js/internals/symbol-define-to-primitive.js","webpack:///activity/node_modules/core-js/internals/symbol-registry-detection.js","webpack:///activity/node_modules/core-js/internals/this-number-value.js","webpack:///activity/node_modules/core-js/internals/well-known-symbol-define.js","webpack:///activity/node_modules/core-js/internals/well-known-symbol-wrapped.js","webpack:///activity/node_modules/core-js/internals/whitespaces.js","webpack:///activity/node_modules/core-js/modules/es.array.iterator.js","webpack:///activity/node_modules/core-js/modules/es.array.reduce.js","webpack:///activity/node_modules/core-js/modules/es.date.to-primitive.js","webpack:///activity/node_modules/core-js/modules/es.json.stringify.js","webpack:///activity/node_modules/core-js/modules/es.number.constructor.js","webpack:///activity/node_modules/core-js/modules/es.object.get-own-property-symbols.js","webpack:///activity/node_modules/core-js/modules/es.string.iterator.js","webpack:///activity/node_modules/core-js/modules/es.string.split.js","webpack:///activity/node_modules/core-js/modules/es.symbol.constructor.js","webpack:///activity/node_modules/core-js/modules/es.symbol.description.js","webpack:///activity/node_modules/core-js/modules/es.symbol.for.js","webpack:///activity/node_modules/core-js/modules/es.symbol.iterator.js","webpack:///activity/node_modules/core-js/modules/es.symbol.js","webpack:///activity/node_modules/core-js/modules/es.symbol.key-for.js","webpack:///activity/node_modules/core-js/modules/es.symbol.to-primitive.js","webpack:///activity/node_modules/core-js/modules/web.dom-collections.iterator.js","webpack:///activity/src/components/Activity.vue?vue&type=style&index=0&id=35ab5901&prod&lang=scss&scoped=true","webpack:///activity/src/components/richArgumentsTypes/FileRichArgument.vue?vue&type=style&index=0&id=8696f7f0&prod&lang=scss&scoped=true","webpack:///activity/src/views/ActivityTab.vue?vue&type=style&index=0&id=030d4a40&prod&scoped=true&lang=scss","webpack:///activity/src/components/richArgumentsTypes/SystemTagRichArgument.vue?vue&type=style&index=0&id=7e2ba972&prod&scoped=true&lang=css","webpack:///activity/node_modules/css-loader/dist/runtime/api.js","webpack:///activity/node_modules/css-loader/dist/runtime/sourceMaps.js","webpack:///activity/node_modules/ieee754/index.js","webpack:///activity/node_modules/lodash.get/index.js","webpack:///activity/node_modules/moment/locale/af.js","webpack:///activity/node_modules/moment/locale/ar-dz.js","webpack:///activity/node_modules/moment/locale/ar-kw.js","webpack:///activity/node_modules/moment/locale/ar-ly.js","webpack:///activity/node_modules/moment/locale/ar-ma.js","webpack:///activity/node_modules/moment/locale/ar-sa.js","webpack:///activity/node_modules/moment/locale/ar-tn.js","webpack:///activity/node_modules/moment/locale/ar.js","webpack:///activity/node_modules/moment/locale/az.js","webpack:///activity/node_modules/moment/locale/be.js","webpack:///activity/node_modules/moment/locale/bg.js","webpack:///activity/node_modules/moment/locale/bm.js","webpack:///activity/node_modules/moment/locale/bn-bd.js","webpack:///activity/node_modules/moment/locale/bn.js","webpack:///activity/node_modules/moment/locale/bo.js","webpack:///activity/node_modules/moment/locale/br.js","webpack:///activity/node_modules/moment/locale/bs.js","webpack:///activity/node_modules/moment/locale/ca.js","webpack:///activity/node_modules/moment/locale/cs.js","webpack:///activity/node_modules/moment/locale/cv.js","webpack:///activity/node_modules/moment/locale/cy.js","webpack:///activity/node_modules/moment/locale/da.js","webpack:///activity/node_modules/moment/locale/de-at.js","webpack:///activity/node_modules/moment/locale/de-ch.js","webpack:///activity/node_modules/moment/locale/de.js","webpack:///activity/node_modules/moment/locale/dv.js","webpack:///activity/node_modules/moment/locale/el.js","webpack:///activity/node_modules/moment/locale/en-au.js","webpack:///activity/node_modules/moment/locale/en-ca.js","webpack:///activity/node_modules/moment/locale/en-gb.js","webpack:///activity/node_modules/moment/locale/en-ie.js","webpack:///activity/node_modules/moment/locale/en-il.js","webpack:///activity/node_modules/moment/locale/en-in.js","webpack:///activity/node_modules/moment/locale/en-nz.js","webpack:///activity/node_modules/moment/locale/en-sg.js","webpack:///activity/node_modules/moment/locale/eo.js","webpack:///activity/node_modules/moment/locale/es-do.js","webpack:///activity/node_modules/moment/locale/es-mx.js","webpack:///activity/node_modules/moment/locale/es-us.js","webpack:///activity/node_modules/moment/locale/es.js","webpack:///activity/node_modules/moment/locale/et.js","webpack:///activity/node_modules/moment/locale/eu.js","webpack:///activity/node_modules/moment/locale/fa.js","webpack:///activity/node_modules/moment/locale/fi.js","webpack:///activity/node_modules/moment/locale/fil.js","webpack:///activity/node_modules/moment/locale/fo.js","webpack:///activity/node_modules/moment/locale/fr-ca.js","webpack:///activity/node_modules/moment/locale/fr-ch.js","webpack:///activity/node_modules/moment/locale/fr.js","webpack:///activity/node_modules/moment/locale/fy.js","webpack:///activity/node_modules/moment/locale/ga.js","webpack:///activity/node_modules/moment/locale/gd.js","webpack:///activity/node_modules/moment/locale/gl.js","webpack:///activity/node_modules/moment/locale/gom-deva.js","webpack:///activity/node_modules/moment/locale/gom-latn.js","webpack:///activity/node_modules/moment/locale/gu.js","webpack:///activity/node_modules/moment/locale/he.js","webpack:///activity/node_modules/moment/locale/hi.js","webpack:///activity/node_modules/moment/locale/hr.js","webpack:///activity/node_modules/moment/locale/hu.js","webpack:///activity/node_modules/moment/locale/hy-am.js","webpack:///activity/node_modules/moment/locale/id.js","webpack:///activity/node_modules/moment/locale/is.js","webpack:///activity/node_modules/moment/locale/it-ch.js","webpack:///activity/node_modules/moment/locale/it.js","webpack:///activity/node_modules/moment/locale/ja.js","webpack:///activity/node_modules/moment/locale/jv.js","webpack:///activity/node_modules/moment/locale/ka.js","webpack:///activity/node_modules/moment/locale/kk.js","webpack:///activity/node_modules/moment/locale/km.js","webpack:///activity/node_modules/moment/locale/kn.js","webpack:///activity/node_modules/moment/locale/ko.js","webpack:///activity/node_modules/moment/locale/ku.js","webpack:///activity/node_modules/moment/locale/ky.js","webpack:///activity/node_modules/moment/locale/lb.js","webpack:///activity/node_modules/moment/locale/lo.js","webpack:///activity/node_modules/moment/locale/lt.js","webpack:///activity/node_modules/moment/locale/lv.js","webpack:///activity/node_modules/moment/locale/me.js","webpack:///activity/node_modules/moment/locale/mi.js","webpack:///activity/node_modules/moment/locale/mk.js","webpack:///activity/node_modules/moment/locale/ml.js","webpack:///activity/node_modules/moment/locale/mn.js","webpack:///activity/node_modules/moment/locale/mr.js","webpack:///activity/node_modules/moment/locale/ms-my.js","webpack:///activity/node_modules/moment/locale/ms.js","webpack:///activity/node_modules/moment/locale/mt.js","webpack:///activity/node_modules/moment/locale/my.js","webpack:///activity/node_modules/moment/locale/nb.js","webpack:///activity/node_modules/moment/locale/ne.js","webpack:///activity/node_modules/moment/locale/nl-be.js","webpack:///activity/node_modules/moment/locale/nl.js","webpack:///activity/node_modules/moment/locale/nn.js","webpack:///activity/node_modules/moment/locale/oc-lnc.js","webpack:///activity/node_modules/moment/locale/pa-in.js","webpack:///activity/node_modules/moment/locale/pl.js","webpack:///activity/node_modules/moment/locale/pt-br.js","webpack:///activity/node_modules/moment/locale/pt.js","webpack:///activity/node_modules/moment/locale/ro.js","webpack:///activity/node_modules/moment/locale/ru.js","webpack:///activity/node_modules/moment/locale/sd.js","webpack:///activity/node_modules/moment/locale/se.js","webpack:///activity/node_modules/moment/locale/si.js","webpack:///activity/node_modules/moment/locale/sk.js","webpack:///activity/node_modules/moment/locale/sl.js","webpack:///activity/node_modules/moment/locale/sq.js","webpack:///activity/node_modules/moment/locale/sr-cyrl.js","webpack:///activity/node_modules/moment/locale/sr.js","webpack:///activity/node_modules/moment/locale/ss.js","webpack:///activity/node_modules/moment/locale/sv.js","webpack:///activity/node_modules/moment/locale/sw.js","webpack:///activity/node_modules/moment/locale/ta.js","webpack:///activity/node_modules/moment/locale/te.js","webpack:///activity/node_modules/moment/locale/tet.js","webpack:///activity/node_modules/moment/locale/tg.js","webpack:///activity/node_modules/moment/locale/th.js","webpack:///activity/node_modules/moment/locale/tk.js","webpack:///activity/node_modules/moment/locale/tl-ph.js","webpack:///activity/node_modules/moment/locale/tlh.js","webpack:///activity/node_modules/moment/locale/tr.js","webpack:///activity/node_modules/moment/locale/tzl.js","webpack:///activity/node_modules/moment/locale/tzm-latn.js","webpack:///activity/node_modules/moment/locale/tzm.js","webpack:///activity/node_modules/moment/locale/ug-cn.js","webpack:///activity/node_modules/moment/locale/uk.js","webpack:///activity/node_modules/moment/locale/ur.js","webpack:///activity/node_modules/moment/locale/uz-latn.js","webpack:///activity/node_modules/moment/locale/uz.js","webpack:///activity/node_modules/moment/locale/vi.js","webpack:///activity/node_modules/moment/locale/x-pseudo.js","webpack:///activity/node_modules/moment/locale/yo.js","webpack:///activity/node_modules/moment/locale/zh-cn.js","webpack:///activity/node_modules/moment/locale/zh-hk.js","webpack:///activity/node_modules/moment/locale/zh-mo.js","webpack:///activity/node_modules/moment/locale/zh-tw.js","webpack:///activity/node_modules/moment/locale|sync|/^\\.\\/.*$","webpack:///activity/node_modules/moment/moment.js","webpack:///activity/node_modules/node-gettext/lib/gettext.js","webpack:///activity/node_modules/node-gettext/lib/plurals.js","webpack:///activity/node_modules/node-polyfill-webpack-plugin/node_modules/buffer/index.js","webpack:///activity/node_modules/process/browser.js","webpack:///activity/node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack:///activity/node_modules/style-loader/dist/runtime/insertBySelector.js","webpack:///activity/node_modules/style-loader/dist/runtime/insertStyleElement.js","webpack:///activity/node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack:///activity/node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack:///activity/node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack://activity/./src/views/ActivityTab.vue?e255","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/bind.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/utils.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/core/AxiosError.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/toFormData.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/AxiosURLSearchParams.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/buildURL.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/core/InterceptorManager.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/defaults/transitional.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/platform/browser/index.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/platform/browser/classes/FormData.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/platform/browser/classes/Blob.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/formDataToJSON.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/defaults/index.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/toURLEncodedForm.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/parseHeaders.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/core/AxiosHeaders.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/core/transformData.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/cancel/isCancel.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/cancel/CanceledError.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/cookies.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/core/buildFullPath.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/combineURLs.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/adapters/xhr.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/speedometer.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/adapters/adapters.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/null.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/core/settle.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/parseProtocol.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/core/dispatchRequest.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/core/mergeConfig.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/env/data.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/validator.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/core/Axios.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/cancel/CancelToken.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/HttpStatusCode.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/axios.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/spread.js","webpack:///activity/node_modules/@nextcloud/axios/node_modules/axios/lib/helpers/isAxiosError.js","webpack:///activity/node_modules/@nextcloud/event-bus/dist/index.mjs","webpack:///activity/node_modules/@nextcloud/auth/dist/index.es.mjs","webpack:///activity/node_modules/@nextcloud/axios/dist/index.es.mjs","webpack:///activity/node_modules/@nextcloud/vue-richtext/dist/index.js","webpack:///activity/src/models/ActivityModel.js","webpack://activity/./src/components/richArgumentsTypes/FileRichArgument.vue?efe1","webpack:///activity/src/components/richArgumentsTypes/FileRichArgument.vue","webpack:///activity/src/components/richArgumentsTypes/FileRichArgument.vue?vue&type=script&lang=js","webpack://activity/./src/components/richArgumentsTypes/FileRichArgument.vue?0649","webpack://activity/./src/components/richArgumentsTypes/FileRichArgument.vue?fa46","webpack:///activity/src/components/richArgumentsTypes/EmailRichArgument.vue?vue&type=script&lang=js","webpack:///activity/src/components/richArgumentsTypes/EmailRichArgument.vue","webpack://activity/./src/components/richArgumentsTypes/EmailRichArgument.vue?447f","webpack://activity/./src/components/richArgumentsTypes/EmailRichArgument.vue?0cf8","webpack:///activity/src/components/richArgumentsTypes/SystemTagRichArgument.vue?vue&type=script&lang=js","webpack:///activity/src/components/richArgumentsTypes/SystemTagRichArgument.vue","webpack://activity/./src/components/richArgumentsTypes/SystemTagRichArgument.vue?5d93","webpack://activity/./src/components/richArgumentsTypes/SystemTagRichArgument.vue?bdcb","webpack://activity/./src/components/richArgumentsTypes/SystemTagRichArgument.vue?bde9","webpack:///activity/src/components/richArgumentsTypes/CalendarEventRichArgument.vue?vue&type=script&lang=js","webpack:///activity/src/components/richArgumentsTypes/CalendarEventRichArgument.vue","webpack://activity/./src/components/richArgumentsTypes/CalendarEventRichArgument.vue?081d","webpack://activity/./src/components/richArgumentsTypes/CalendarEventRichArgument.vue?8be1","webpack:///activity/src/components/richArgumentsTypes/OpenGraphRichArgument.vue?vue&type=script&lang=js","webpack:///activity/src/components/richArgumentsTypes/OpenGraphRichArgument.vue","webpack://activity/./src/components/richArgumentsTypes/OpenGraphRichArgument.vue?4083","webpack://activity/./src/components/richArgumentsTypes/OpenGraphRichArgument.vue?d1ea","webpack:///activity/src/components/Activity.vue?vue&type=script&lang=js","webpack:///activity/src/components/Activity.vue","webpack://activity/./src/components/Activity.vue?56c6","webpack://activity/./src/components/Activity.vue?8386","webpack://activity/./src/components/Activity.vue?95e8","webpack:///activity/src/logger.js","webpack:///activity/src/views/ActivityTab.vue?vue&type=script&lang=js","webpack:///activity/src/views/ActivityTab.vue","webpack://activity/./src/views/ActivityTab.vue?1a41","webpack://activity/./src/views/ActivityTab.vue?6163","webpack:///activity/node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack:///activity/node_modules/@nextcloud/event-bus/dist/index.cjs"],"sourcesContent":["'use strict';\n\nvar eventBus = require('@nextcloud/event-bus');\n\nvar token = undefined;\nvar observers = [];\n/**\n * Get current request token\n *\n * @return {string|null} Current request token or null if not set\n */\nfunction getRequestToken() {\n if (token === undefined) {\n // Only on first load, try to get token from document\n var tokenElement = document === null || document === void 0 ? void 0 : document.getElementsByTagName('head')[0];\n token = tokenElement ? tokenElement.getAttribute('data-requesttoken') : null;\n }\n return token;\n}\n/**\n * Add an observer which is called when the CSRF token changes\n *\n * @param observer The observer\n */\nfunction onRequestTokenUpdate(observer) {\n observers.push(observer);\n}\n// Listen to server event and keep token in sync\neventBus.subscribe('csrf-token-update', function (e) {\n token = e.token;\n observers.forEach(function (observer) {\n try {\n observer(e.token);\n }\n catch (e) {\n console.error('error updating CSRF token observer', e);\n }\n });\n});\n\n/// \nvar getAttribute = function (el, attribute) {\n if (el) {\n return el.getAttribute(attribute);\n }\n return null;\n};\nvar currentUser = undefined;\nfunction getCurrentUser() {\n if (currentUser !== undefined) {\n return currentUser;\n }\n var head = document === null || document === void 0 ? void 0 : document.getElementsByTagName('head')[0];\n if (!head) {\n return null;\n }\n // No user logged in so cache and return null\n var uid = getAttribute(head, 'data-user');\n if (uid === null) {\n currentUser = null;\n return currentUser;\n }\n currentUser = {\n uid: uid,\n displayName: getAttribute(head, 'data-user-displayname'),\n isAdmin: (typeof OC === 'undefined') ? false : OC.isUserAdmin(),\n };\n return currentUser;\n}\n\nexports.getCurrentUser = getCurrentUser;\nexports.getRequestToken = getRequestToken;\nexports.onRequestTokenUpdate = onRequestTokenUpdate;\n//# sourceMappingURL=index.js.map\n","const debug = require('../internal/debug')\nconst { MAX_LENGTH, MAX_SAFE_INTEGER } = require('../internal/constants')\nconst { safeRe: re, t } = require('../internal/re')\n\nconst parseOptions = require('../internal/parse-options')\nconst { compareIdentifiers } = require('../internal/identifiers')\nclass SemVer {\n constructor (version, options) {\n options = parseOptions(options)\n\n if (version instanceof SemVer) {\n if (version.loose === !!options.loose &&\n version.includePrerelease === !!options.includePrerelease) {\n return version\n } else {\n version = version.version\n }\n } else if (typeof version !== 'string') {\n throw new TypeError(`Invalid version. Must be a string. Got type \"${typeof version}\".`)\n }\n\n if (version.length > MAX_LENGTH) {\n throw new TypeError(\n `version is longer than ${MAX_LENGTH} characters`\n )\n }\n\n debug('SemVer', version, options)\n this.options = options\n this.loose = !!options.loose\n // this isn't actually relevant for versions, but keep it so that we\n // don't run into trouble passing this.options around.\n this.includePrerelease = !!options.includePrerelease\n\n const m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL])\n\n if (!m) {\n throw new TypeError(`Invalid Version: ${version}`)\n }\n\n this.raw = version\n\n // these are actually numbers\n this.major = +m[1]\n this.minor = +m[2]\n this.patch = +m[3]\n\n if (this.major > MAX_SAFE_INTEGER || this.major < 0) {\n throw new TypeError('Invalid major version')\n }\n\n if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {\n throw new TypeError('Invalid minor version')\n }\n\n if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {\n throw new TypeError('Invalid patch version')\n }\n\n // numberify any prerelease numeric ids\n if (!m[4]) {\n this.prerelease = []\n } else {\n this.prerelease = m[4].split('.').map((id) => {\n if (/^[0-9]+$/.test(id)) {\n const num = +id\n if (num >= 0 && num < MAX_SAFE_INTEGER) {\n return num\n }\n }\n return id\n })\n }\n\n this.build = m[5] ? m[5].split('.') : []\n this.format()\n }\n\n format () {\n this.version = `${this.major}.${this.minor}.${this.patch}`\n if (this.prerelease.length) {\n this.version += `-${this.prerelease.join('.')}`\n }\n return this.version\n }\n\n toString () {\n return this.version\n }\n\n compare (other) {\n debug('SemVer.compare', this.version, this.options, other)\n if (!(other instanceof SemVer)) {\n if (typeof other === 'string' && other === this.version) {\n return 0\n }\n other = new SemVer(other, this.options)\n }\n\n if (other.version === this.version) {\n return 0\n }\n\n return this.compareMain(other) || this.comparePre(other)\n }\n\n compareMain (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n return (\n compareIdentifiers(this.major, other.major) ||\n compareIdentifiers(this.minor, other.minor) ||\n compareIdentifiers(this.patch, other.patch)\n )\n }\n\n comparePre (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n // NOT having a prerelease is > having one\n if (this.prerelease.length && !other.prerelease.length) {\n return -1\n } else if (!this.prerelease.length && other.prerelease.length) {\n return 1\n } else if (!this.prerelease.length && !other.prerelease.length) {\n return 0\n }\n\n let i = 0\n do {\n const a = this.prerelease[i]\n const b = other.prerelease[i]\n debug('prerelease compare', i, a, b)\n if (a === undefined && b === undefined) {\n return 0\n } else if (b === undefined) {\n return 1\n } else if (a === undefined) {\n return -1\n } else if (a === b) {\n continue\n } else {\n return compareIdentifiers(a, b)\n }\n } while (++i)\n }\n\n compareBuild (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n let i = 0\n do {\n const a = this.build[i]\n const b = other.build[i]\n debug('prerelease compare', i, a, b)\n if (a === undefined && b === undefined) {\n return 0\n } else if (b === undefined) {\n return 1\n } else if (a === undefined) {\n return -1\n } else if (a === b) {\n continue\n } else {\n return compareIdentifiers(a, b)\n }\n } while (++i)\n }\n\n // preminor will bump the version up to the next minor release, and immediately\n // down to pre-release. premajor and prepatch work the same way.\n inc (release, identifier, identifierBase) {\n switch (release) {\n case 'premajor':\n this.prerelease.length = 0\n this.patch = 0\n this.minor = 0\n this.major++\n this.inc('pre', identifier, identifierBase)\n break\n case 'preminor':\n this.prerelease.length = 0\n this.patch = 0\n this.minor++\n this.inc('pre', identifier, identifierBase)\n break\n case 'prepatch':\n // If this is already a prerelease, it will bump to the next version\n // drop any prereleases that might already exist, since they are not\n // relevant at this point.\n this.prerelease.length = 0\n this.inc('patch', identifier, identifierBase)\n this.inc('pre', identifier, identifierBase)\n break\n // If the input is a non-prerelease version, this acts the same as\n // prepatch.\n case 'prerelease':\n if (this.prerelease.length === 0) {\n this.inc('patch', identifier, identifierBase)\n }\n this.inc('pre', identifier, identifierBase)\n break\n\n case 'major':\n // If this is a pre-major version, bump up to the same major version.\n // Otherwise increment major.\n // 1.0.0-5 bumps to 1.0.0\n // 1.1.0 bumps to 2.0.0\n if (\n this.minor !== 0 ||\n this.patch !== 0 ||\n this.prerelease.length === 0\n ) {\n this.major++\n }\n this.minor = 0\n this.patch = 0\n this.prerelease = []\n break\n case 'minor':\n // If this is a pre-minor version, bump up to the same minor version.\n // Otherwise increment minor.\n // 1.2.0-5 bumps to 1.2.0\n // 1.2.1 bumps to 1.3.0\n if (this.patch !== 0 || this.prerelease.length === 0) {\n this.minor++\n }\n this.patch = 0\n this.prerelease = []\n break\n case 'patch':\n // If this is not a pre-release version, it will increment the patch.\n // If it is a pre-release it will bump up to the same patch version.\n // 1.2.0-5 patches to 1.2.0\n // 1.2.0 patches to 1.2.1\n if (this.prerelease.length === 0) {\n this.patch++\n }\n this.prerelease = []\n break\n // This probably shouldn't be used publicly.\n // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.\n case 'pre': {\n const base = Number(identifierBase) ? 1 : 0\n\n if (!identifier && identifierBase === false) {\n throw new Error('invalid increment argument: identifier is empty')\n }\n\n if (this.prerelease.length === 0) {\n this.prerelease = [base]\n } else {\n let i = this.prerelease.length\n while (--i >= 0) {\n if (typeof this.prerelease[i] === 'number') {\n this.prerelease[i]++\n i = -2\n }\n }\n if (i === -1) {\n // didn't increment anything\n if (identifier === this.prerelease.join('.') && identifierBase === false) {\n throw new Error('invalid increment argument: identifier already exists')\n }\n this.prerelease.push(base)\n }\n }\n if (identifier) {\n // 1.2.0-beta.1 bumps to 1.2.0-beta.2,\n // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0\n let prerelease = [identifier, base]\n if (identifierBase === false) {\n prerelease = [identifier]\n }\n if (compareIdentifiers(this.prerelease[0], identifier) === 0) {\n if (isNaN(this.prerelease[1])) {\n this.prerelease = prerelease\n }\n } else {\n this.prerelease = prerelease\n }\n }\n break\n }\n default:\n throw new Error(`invalid increment argument: ${release}`)\n }\n this.raw = this.format()\n if (this.build.length) {\n this.raw += `+${this.build.join('.')}`\n }\n return this\n }\n}\n\nmodule.exports = SemVer\n","const SemVer = require('../classes/semver')\nconst major = (a, loose) => new SemVer(a, loose).major\nmodule.exports = major\n","const SemVer = require('../classes/semver')\nconst parse = (version, options, throwErrors = false) => {\n if (version instanceof SemVer) {\n return version\n }\n try {\n return new SemVer(version, options)\n } catch (er) {\n if (!throwErrors) {\n return null\n }\n throw er\n }\n}\n\nmodule.exports = parse\n","const parse = require('./parse')\nconst valid = (version, options) => {\n const v = parse(version, options)\n return v ? v.version : null\n}\nmodule.exports = valid\n","// Note: this is the semver.org version of the spec that it implements\n// Not necessarily the package version of this code.\nconst SEMVER_SPEC_VERSION = '2.0.0'\n\nconst MAX_LENGTH = 256\nconst MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||\n/* istanbul ignore next */ 9007199254740991\n\n// Max safe segment length for coercion.\nconst MAX_SAFE_COMPONENT_LENGTH = 16\n\n// Max safe length for a build identifier. The max length minus 6 characters for\n// the shortest version with a build 0.0.0+BUILD.\nconst MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6\n\nconst RELEASE_TYPES = [\n 'major',\n 'premajor',\n 'minor',\n 'preminor',\n 'patch',\n 'prepatch',\n 'prerelease',\n]\n\nmodule.exports = {\n MAX_LENGTH,\n MAX_SAFE_COMPONENT_LENGTH,\n MAX_SAFE_BUILD_LENGTH,\n MAX_SAFE_INTEGER,\n RELEASE_TYPES,\n SEMVER_SPEC_VERSION,\n FLAG_INCLUDE_PRERELEASE: 0b001,\n FLAG_LOOSE: 0b010,\n}\n","const debug = (\n typeof process === 'object' &&\n process.env &&\n process.env.NODE_DEBUG &&\n /\\bsemver\\b/i.test(process.env.NODE_DEBUG)\n) ? (...args) => console.error('SEMVER', ...args)\n : () => {}\n\nmodule.exports = debug\n","const numeric = /^[0-9]+$/\nconst compareIdentifiers = (a, b) => {\n const anum = numeric.test(a)\n const bnum = numeric.test(b)\n\n if (anum && bnum) {\n a = +a\n b = +b\n }\n\n return a === b ? 0\n : (anum && !bnum) ? -1\n : (bnum && !anum) ? 1\n : a < b ? -1\n : 1\n}\n\nconst rcompareIdentifiers = (a, b) => compareIdentifiers(b, a)\n\nmodule.exports = {\n compareIdentifiers,\n rcompareIdentifiers,\n}\n","// parse out just the options we care about\nconst looseOption = Object.freeze({ loose: true })\nconst emptyOpts = Object.freeze({ })\nconst parseOptions = options => {\n if (!options) {\n return emptyOpts\n }\n\n if (typeof options !== 'object') {\n return looseOption\n }\n\n return options\n}\nmodule.exports = parseOptions\n","const { MAX_SAFE_COMPONENT_LENGTH, MAX_SAFE_BUILD_LENGTH } = require('./constants')\nconst debug = require('./debug')\nexports = module.exports = {}\n\n// The actual regexps go on exports.re\nconst re = exports.re = []\nconst safeRe = exports.safeRe = []\nconst src = exports.src = []\nconst t = exports.t = {}\nlet R = 0\n\nconst LETTERDASHNUMBER = '[a-zA-Z0-9-]'\n\n// Replace some greedy regex tokens to prevent regex dos issues. These regex are\n// used internally via the safeRe object since all inputs in this library get\n// normalized first to trim and collapse all extra whitespace. The original\n// regexes are exported for userland consumption and lower level usage. A\n// future breaking change could export the safer regex only with a note that\n// all input should have extra whitespace removed.\nconst safeRegexReplacements = [\n ['\\\\s', 1],\n ['\\\\d', MAX_SAFE_COMPONENT_LENGTH],\n [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH],\n]\n\nconst makeSafeRegex = (value) => {\n for (const [token, max] of safeRegexReplacements) {\n value = value\n .split(`${token}*`).join(`${token}{0,${max}}`)\n .split(`${token}+`).join(`${token}{1,${max}}`)\n }\n return value\n}\n\nconst createToken = (name, value, isGlobal) => {\n const safe = makeSafeRegex(value)\n const index = R++\n debug(name, index, value)\n t[name] = index\n src[index] = value\n re[index] = new RegExp(value, isGlobal ? 'g' : undefined)\n safeRe[index] = new RegExp(safe, isGlobal ? 'g' : undefined)\n}\n\n// The following Regular Expressions can be used for tokenizing,\n// validating, and parsing SemVer version strings.\n\n// ## Numeric Identifier\n// A single `0`, or a non-zero digit followed by zero or more digits.\n\ncreateToken('NUMERICIDENTIFIER', '0|[1-9]\\\\d*')\ncreateToken('NUMERICIDENTIFIERLOOSE', '\\\\d+')\n\n// ## Non-numeric Identifier\n// Zero or more digits, followed by a letter or hyphen, and then zero or\n// more letters, digits, or hyphens.\n\ncreateToken('NONNUMERICIDENTIFIER', `\\\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`)\n\n// ## Main Version\n// Three dot-separated numeric identifiers.\n\ncreateToken('MAINVERSION', `(${src[t.NUMERICIDENTIFIER]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIER]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIER]})`)\n\ncreateToken('MAINVERSIONLOOSE', `(${src[t.NUMERICIDENTIFIERLOOSE]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIERLOOSE]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIERLOOSE]})`)\n\n// ## Pre-release Version Identifier\n// A numeric identifier, or a non-numeric identifier.\n\ncreateToken('PRERELEASEIDENTIFIER', `(?:${src[t.NUMERICIDENTIFIER]\n}|${src[t.NONNUMERICIDENTIFIER]})`)\n\ncreateToken('PRERELEASEIDENTIFIERLOOSE', `(?:${src[t.NUMERICIDENTIFIERLOOSE]\n}|${src[t.NONNUMERICIDENTIFIER]})`)\n\n// ## Pre-release Version\n// Hyphen, followed by one or more dot-separated pre-release version\n// identifiers.\n\ncreateToken('PRERELEASE', `(?:-(${src[t.PRERELEASEIDENTIFIER]\n}(?:\\\\.${src[t.PRERELEASEIDENTIFIER]})*))`)\n\ncreateToken('PRERELEASELOOSE', `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]\n}(?:\\\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`)\n\n// ## Build Metadata Identifier\n// Any combination of digits, letters, or hyphens.\n\ncreateToken('BUILDIDENTIFIER', `${LETTERDASHNUMBER}+`)\n\n// ## Build Metadata\n// Plus sign, followed by one or more period-separated build metadata\n// identifiers.\n\ncreateToken('BUILD', `(?:\\\\+(${src[t.BUILDIDENTIFIER]\n}(?:\\\\.${src[t.BUILDIDENTIFIER]})*))`)\n\n// ## Full Version String\n// A main version, followed optionally by a pre-release version and\n// build metadata.\n\n// Note that the only major, minor, patch, and pre-release sections of\n// the version string are capturing groups. The build metadata is not a\n// capturing group, because it should not ever be used in version\n// comparison.\n\ncreateToken('FULLPLAIN', `v?${src[t.MAINVERSION]\n}${src[t.PRERELEASE]}?${\n src[t.BUILD]}?`)\n\ncreateToken('FULL', `^${src[t.FULLPLAIN]}$`)\n\n// like full, but allows v1.2.3 and =1.2.3, which people do sometimes.\n// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty\n// common in the npm registry.\ncreateToken('LOOSEPLAIN', `[v=\\\\s]*${src[t.MAINVERSIONLOOSE]\n}${src[t.PRERELEASELOOSE]}?${\n src[t.BUILD]}?`)\n\ncreateToken('LOOSE', `^${src[t.LOOSEPLAIN]}$`)\n\ncreateToken('GTLT', '((?:<|>)?=?)')\n\n// Something like \"2.*\" or \"1.2.x\".\n// Note that \"x.x\" is a valid xRange identifer, meaning \"any version\"\n// Only the first item is strictly required.\ncreateToken('XRANGEIDENTIFIERLOOSE', `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\\\*`)\ncreateToken('XRANGEIDENTIFIER', `${src[t.NUMERICIDENTIFIER]}|x|X|\\\\*`)\n\ncreateToken('XRANGEPLAIN', `[v=\\\\s]*(${src[t.XRANGEIDENTIFIER]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIER]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIER]})` +\n `(?:${src[t.PRERELEASE]})?${\n src[t.BUILD]}?` +\n `)?)?`)\n\ncreateToken('XRANGEPLAINLOOSE', `[v=\\\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:${src[t.PRERELEASELOOSE]})?${\n src[t.BUILD]}?` +\n `)?)?`)\n\ncreateToken('XRANGE', `^${src[t.GTLT]}\\\\s*${src[t.XRANGEPLAIN]}$`)\ncreateToken('XRANGELOOSE', `^${src[t.GTLT]}\\\\s*${src[t.XRANGEPLAINLOOSE]}$`)\n\n// Coercion.\n// Extract anything that could conceivably be a part of a valid semver\ncreateToken('COERCE', `${'(^|[^\\\\d])' +\n '(\\\\d{1,'}${MAX_SAFE_COMPONENT_LENGTH}})` +\n `(?:\\\\.(\\\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` +\n `(?:\\\\.(\\\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` +\n `(?:$|[^\\\\d])`)\ncreateToken('COERCERTL', src[t.COERCE], true)\n\n// Tilde ranges.\n// Meaning is \"reasonably at or greater than\"\ncreateToken('LONETILDE', '(?:~>?)')\n\ncreateToken('TILDETRIM', `(\\\\s*)${src[t.LONETILDE]}\\\\s+`, true)\nexports.tildeTrimReplace = '$1~'\n\ncreateToken('TILDE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`)\ncreateToken('TILDELOOSE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`)\n\n// Caret ranges.\n// Meaning is \"at least and backwards compatible with\"\ncreateToken('LONECARET', '(?:\\\\^)')\n\ncreateToken('CARETTRIM', `(\\\\s*)${src[t.LONECARET]}\\\\s+`, true)\nexports.caretTrimReplace = '$1^'\n\ncreateToken('CARET', `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`)\ncreateToken('CARETLOOSE', `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`)\n\n// A simple gt/lt/eq thing, or just \"\" to indicate \"any version\"\ncreateToken('COMPARATORLOOSE', `^${src[t.GTLT]}\\\\s*(${src[t.LOOSEPLAIN]})$|^$`)\ncreateToken('COMPARATOR', `^${src[t.GTLT]}\\\\s*(${src[t.FULLPLAIN]})$|^$`)\n\n// An expression to strip any whitespace between the gtlt and the thing\n// it modifies, so that `> 1.2.3` ==> `>1.2.3`\ncreateToken('COMPARATORTRIM', `(\\\\s*)${src[t.GTLT]\n}\\\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true)\nexports.comparatorTrimReplace = '$1$2$3'\n\n// Something like `1.2.3 - 1.2.4`\n// Note that these all use the loose form, because they'll be\n// checked against either the strict or loose comparator form\n// later.\ncreateToken('HYPHENRANGE', `^\\\\s*(${src[t.XRANGEPLAIN]})` +\n `\\\\s+-\\\\s+` +\n `(${src[t.XRANGEPLAIN]})` +\n `\\\\s*$`)\n\ncreateToken('HYPHENRANGELOOSE', `^\\\\s*(${src[t.XRANGEPLAINLOOSE]})` +\n `\\\\s+-\\\\s+` +\n `(${src[t.XRANGEPLAINLOOSE]})` +\n `\\\\s*$`)\n\n// Star ranges basically just allow anything at all.\ncreateToken('STAR', '(<|>)?=?\\\\s*\\\\*')\n// >=0.0.0 is like a star\ncreateToken('GTE0', '^\\\\s*>=\\\\s*0\\\\.0\\\\.0\\\\s*$')\ncreateToken('GTE0PRE', '^\\\\s*>=\\\\s*0\\\\.0\\\\.0-0\\\\s*$')\n","'use strict';\n\nvar GetText = require('node-gettext');\nrequire('@nextcloud/router');\nrequire('dompurify');\nrequire('escape-html');\n\n/**\n * Returns the user's locale\n */\n/**\n * Returns the user's language\n */\nfunction getLanguage() {\n return document.documentElement.lang || 'en';\n}\n\n/**\n * This module provides functionality to translate applications independent from Nextcloud\n *\n * @packageDocumentation\n * @module @nextcloud/l10n/gettext\n * @example\n * ```js\nimport { getGettextBuilder } from '@nextcloud/l10n/gettext'\nconst gt = getGettextBuilder()\n .detectLocale() // or use setLanguage()\n .addTranslation(/* ... *\\/)\n .build()\ngt.gettext('some string to translate')\n```\n */\n/**\n * @notExported\n */\nclass GettextBuilder {\n constructor() {\n this.translations = {};\n this.debug = false;\n }\n setLanguage(language) {\n this.locale = language;\n return this;\n }\n /** Try to detect locale from context with `en` as fallback value */\n detectLocale() {\n return this.setLanguage(getLanguage().replace('-', '_'));\n }\n addTranslation(language, data) {\n this.translations[language] = data;\n return this;\n }\n enableDebugMode() {\n this.debug = true;\n return this;\n }\n build() {\n return new GettextWrapper(this.locale || 'en', this.translations, this.debug);\n }\n}\n/**\n * @notExported\n */\nclass GettextWrapper {\n constructor(locale, data, debug) {\n this.gt = new GetText({\n debug,\n sourceLocale: 'en',\n });\n for (const key in data) {\n this.gt.addTranslations(key, 'messages', data[key]);\n }\n this.gt.setLocale(locale);\n }\n subtitudePlaceholders(translated, vars) {\n return translated.replace(/{([^{}]*)}/g, (a, b) => {\n const r = vars[b];\n if (typeof r === 'string' || typeof r === 'number') {\n return r.toString();\n }\n else {\n return a;\n }\n });\n }\n /**\n * Get translated string (singular form), optionally with placeholders\n *\n * @param original original string to translate\n * @param placeholders map of placeholder key to value\n */\n gettext(original, placeholders = {}) {\n return this.subtitudePlaceholders(this.gt.gettext(original), placeholders);\n }\n /**\n * Get translated string with plural forms\n *\n * @param singular Singular text form\n * @param plural Plural text form to be used if `count` requires it\n * @param count The number to insert into the text\n * @param placeholders optional map of placeholder key to value\n */\n ngettext(singular, plural, count, placeholders = {}) {\n return this.subtitudePlaceholders(this.gt.ngettext(singular, plural, count).replace(/%n/g, count.toString()), placeholders);\n }\n}\n/**\n * Create a new GettextBuilder instance\n */\nfunction getGettextBuilder() {\n return new GettextBuilder();\n}\n\nexports.getGettextBuilder = getGettextBuilder;\n","\"use strict\";\n\nrequire(\"core-js/modules/es.object.define-property.js\");\nrequire(\"core-js/modules/es.symbol.iterator.js\");\nrequire(\"core-js/modules/es.array.iterator.js\");\nrequire(\"core-js/modules/es.string.iterator.js\");\nrequire(\"core-js/modules/web.dom-collections.iterator.js\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ConsoleLogger = void 0;\nexports.buildConsoleLogger = buildConsoleLogger;\nrequire(\"core-js/modules/es.object.assign.js\");\nrequire(\"core-js/modules/es.symbol.to-primitive.js\");\nrequire(\"core-js/modules/es.date.to-primitive.js\");\nrequire(\"core-js/modules/es.symbol.js\");\nrequire(\"core-js/modules/es.symbol.description.js\");\nrequire(\"core-js/modules/es.object.to-string.js\");\nrequire(\"core-js/modules/es.number.constructor.js\");\nvar _contracts = require(\"./contracts\");\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nvar ConsoleLogger = /*#__PURE__*/function () {\n function ConsoleLogger(context) {\n _classCallCheck(this, ConsoleLogger);\n _defineProperty(this, \"context\", void 0);\n this.context = context || {};\n }\n _createClass(ConsoleLogger, [{\n key: \"formatMessage\",\n value: function formatMessage(message, level, context) {\n var msg = '[' + _contracts.LogLevel[level].toUpperCase() + '] ';\n if (context && context.app) {\n msg += context.app + ': ';\n }\n if (typeof message === 'string') return msg + message;\n\n // basic error formatting\n msg += \"Unexpected \".concat(message.name);\n if (message.message) msg += \" \\\"\".concat(message.message, \"\\\"\");\n // only add stack trace when debugging\n if (level === _contracts.LogLevel.Debug && message.stack) msg += \"\\n\\nStack trace:\\n\".concat(message.stack);\n return msg;\n }\n }, {\n key: \"log\",\n value: function log(level, message, context) {\n var _this$context, _this$context2;\n // Skip if level is configured and this is below the level\n if (typeof ((_this$context = this.context) === null || _this$context === void 0 ? void 0 : _this$context.level) === 'number' && level < ((_this$context2 = this.context) === null || _this$context2 === void 0 ? void 0 : _this$context2.level)) {\n return;\n }\n\n // Add error object to context\n if (_typeof(message) === 'object' && (context === null || context === void 0 ? void 0 : context.error) === undefined) {\n context.error = message;\n }\n switch (level) {\n case _contracts.LogLevel.Debug:\n console.debug(this.formatMessage(message, _contracts.LogLevel.Debug, context), context);\n break;\n case _contracts.LogLevel.Info:\n console.info(this.formatMessage(message, _contracts.LogLevel.Info, context), context);\n break;\n case _contracts.LogLevel.Warn:\n console.warn(this.formatMessage(message, _contracts.LogLevel.Warn, context), context);\n break;\n case _contracts.LogLevel.Error:\n console.error(this.formatMessage(message, _contracts.LogLevel.Error, context), context);\n break;\n case _contracts.LogLevel.Fatal:\n default:\n console.error(this.formatMessage(message, _contracts.LogLevel.Fatal, context), context);\n break;\n }\n }\n }, {\n key: \"debug\",\n value: function debug(message, context) {\n this.log(_contracts.LogLevel.Debug, message, Object.assign({}, this.context, context));\n }\n }, {\n key: \"info\",\n value: function info(message, context) {\n this.log(_contracts.LogLevel.Info, message, Object.assign({}, this.context, context));\n }\n }, {\n key: \"warn\",\n value: function warn(message, context) {\n this.log(_contracts.LogLevel.Warn, message, Object.assign({}, this.context, context));\n }\n }, {\n key: \"error\",\n value: function error(message, context) {\n this.log(_contracts.LogLevel.Error, message, Object.assign({}, this.context, context));\n }\n }, {\n key: \"fatal\",\n value: function fatal(message, context) {\n this.log(_contracts.LogLevel.Fatal, message, Object.assign({}, this.context, context));\n }\n }]);\n return ConsoleLogger;\n}();\n/**\n * Create a new console logger\n *\n * @param context Optional global context which should be included for all logging messages\n */\nexports.ConsoleLogger = ConsoleLogger;\nfunction buildConsoleLogger(context) {\n return new ConsoleLogger(context);\n}\n//# sourceMappingURL=ConsoleLogger.js.map","\"use strict\";\n\nrequire(\"core-js/modules/es.object.define-property.js\");\nrequire(\"core-js/modules/es.symbol.iterator.js\");\nrequire(\"core-js/modules/es.array.iterator.js\");\nrequire(\"core-js/modules/es.string.iterator.js\");\nrequire(\"core-js/modules/web.dom-collections.iterator.js\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.LoggerBuilder = void 0;\nrequire(\"core-js/modules/es.symbol.to-primitive.js\");\nrequire(\"core-js/modules/es.date.to-primitive.js\");\nrequire(\"core-js/modules/es.symbol.js\");\nrequire(\"core-js/modules/es.symbol.description.js\");\nrequire(\"core-js/modules/es.object.to-string.js\");\nrequire(\"core-js/modules/es.number.constructor.js\");\nvar _auth = require(\"@nextcloud/auth\");\nvar _contracts = require(\"./contracts\");\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\n/**\n * @notExported\n */\nvar LoggerBuilder = /*#__PURE__*/function () {\n function LoggerBuilder(factory) {\n _classCallCheck(this, LoggerBuilder);\n _defineProperty(this, \"context\", void 0);\n _defineProperty(this, \"factory\", void 0);\n this.context = {};\n this.factory = factory;\n }\n\n /**\n * Set the app name within the logging context\n *\n * @param appId App name\n */\n _createClass(LoggerBuilder, [{\n key: \"setApp\",\n value: function setApp(appId) {\n this.context.app = appId;\n return this;\n }\n\n /**\n * Set the logging level within the logging context\n *\n * @param level Logging level\n */\n }, {\n key: \"setLogLevel\",\n value: function setLogLevel(level) {\n this.context.level = level;\n return this;\n }\n\n /* eslint-disable jsdoc/no-undefined-types */\n /**\n * Set the user id within the logging context\n * @param uid User ID\n * @see {@link detectUser}\n */\n /* eslint-enable jsdoc/no-undefined-types */\n }, {\n key: \"setUid\",\n value: function setUid(uid) {\n this.context.uid = uid;\n return this;\n }\n\n /**\n * Detect the currently logged in user and set the user id within the logging context\n */\n }, {\n key: \"detectUser\",\n value: function detectUser() {\n var user = (0, _auth.getCurrentUser)();\n if (user !== null) {\n this.context.uid = user.uid;\n }\n return this;\n }\n\n /**\n * Detect and use logging level configured in nextcloud config\n */\n }, {\n key: \"detectLogLevel\",\n value: function detectLogLevel() {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n var self = this;\n\n // Use arrow function to prevent undefined `this` within event handler\n var onLoaded = function onLoaded() {\n if (document.readyState === 'complete' || document.readyState === 'interactive') {\n var _window$_oc_config$lo, _window$_oc_config;\n // Up to, including, nextcloud 24 the loglevel was not exposed\n self.context.level = (_window$_oc_config$lo = (_window$_oc_config = window._oc_config) === null || _window$_oc_config === void 0 ? void 0 : _window$_oc_config.loglevel) !== null && _window$_oc_config$lo !== void 0 ? _window$_oc_config$lo : _contracts.LogLevel.Warn;\n // Override loglevel if we are in debug mode\n if (window._oc_debug) {\n self.context.level = _contracts.LogLevel.Debug;\n }\n document.removeEventListener('readystatechange', onLoaded);\n } else {\n document.addEventListener('readystatechange', onLoaded);\n }\n };\n onLoaded();\n return this;\n }\n\n /** Build a logger using the logging context and factory */\n }, {\n key: \"build\",\n value: function build() {\n if (this.context.level === undefined) {\n // No logging level set manually, use the configured one\n this.detectLogLevel();\n }\n return this.factory(this.context);\n }\n }]);\n return LoggerBuilder;\n}();\nexports.LoggerBuilder = LoggerBuilder;\n//# sourceMappingURL=LoggerBuilder.js.map","\"use strict\";\n\nrequire(\"core-js/modules/es.object.define-property.js\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.LogLevel = void 0;\nvar LogLevel = /*#__PURE__*/function (LogLevel) {\n LogLevel[LogLevel[\"Debug\"] = 0] = \"Debug\";\n LogLevel[LogLevel[\"Info\"] = 1] = \"Info\";\n LogLevel[LogLevel[\"Warn\"] = 2] = \"Warn\";\n LogLevel[LogLevel[\"Error\"] = 3] = \"Error\";\n LogLevel[LogLevel[\"Fatal\"] = 4] = \"Fatal\";\n return LogLevel;\n}({});\nexports.LogLevel = LogLevel;\n//# sourceMappingURL=contracts.js.map","\"use strict\";\n\nrequire(\"core-js/modules/es.object.define-property.js\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"LogLevel\", {\n enumerable: true,\n get: function get() {\n return _contracts.LogLevel;\n }\n});\nexports.getLogger = getLogger;\nexports.getLoggerBuilder = getLoggerBuilder;\nvar _ConsoleLogger = require(\"./ConsoleLogger\");\nvar _LoggerBuilder = require(\"./LoggerBuilder\");\nvar _contracts = require(\"./contracts\");\n/**\n * Build a customized logger instance\n */\nfunction getLoggerBuilder() {\n return new _LoggerBuilder.LoggerBuilder(_ConsoleLogger.buildConsoleLogger);\n}\n\n/**\n * Get a default logger instance without any configuration\n */\nfunction getLogger() {\n return getLoggerBuilder().build();\n}\n//# sourceMappingURL=index.js.map","!function(a,n){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define([],n):\"object\"==typeof exports?exports.NextcloudMoment=n():a.NextcloudMoment=n()}(self,(function(){return function(){\"use strict\";var a={n:function(n){var s=n&&n.__esModule?function(){return n.default}:function(){return n};return a.d(s,{a:s}),s},d:function(n,s){for(var e in s)a.o(s,e)&&!a.o(n,e)&&Object.defineProperty(n,e,{enumerable:!0,get:s[e]})},o:function(a,n){return Object.prototype.hasOwnProperty.call(a,n)},r:function(a){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(a,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(a,\"__esModule\",{value:!0})}},n={};a.r(n),a.d(n,{default:function(){return u}});var s=require(\"moment\"),e=a.n(s),t=require(\"node-gettext\"),r=a.n(t),l=require(\"@nextcloud/l10n\"),o=new(r()),m=(0,l.getLocale)();[{locale:\"ar\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"S1 SYSTEMS | BP , 2020\",\"Language-Team\":\"Arabic (https://www.transifex.com/nextcloud/teams/64236/ar/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"ar\",\"Plural-Forms\":\"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nS1 SYSTEMS | BP , 2020\\n\"},msgstr:[\"Last-Translator: S1 SYSTEMS | BP , 2020\\nLanguage-Team: Arabic (https://www.transifex.com/nextcloud/teams/64236/ar/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar\\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"ثواني\"]}}}}},{locale:\"ast\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"enolp , 2020\",\"Language-Team\":\"Asturian (https://www.transifex.com/nextcloud/teams/64236/ast/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"ast\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nenolp , 2020\\n\"},msgstr:[\"Last-Translator: enolp , 2020\\nLanguage-Team: Asturian (https://www.transifex.com/nextcloud/teams/64236/ast/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ast\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segundos\"]}}}}},{locale:\"br\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Kervoas-Le Nabat Ewen , 2020\",\"Language-Team\":\"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"br\",\"Plural-Forms\":\"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nKervoas-Le Nabat Ewen , 2020\\n\"},msgstr:[\"Last-Translator: Kervoas-Le Nabat Ewen , 2020\\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: br\\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"eilennoù\"]}}}}},{locale:\"ca\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Marc Riera , 2020\",\"Language-Team\":\"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"ca\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nMarc Riera , 2020\\n\"},msgstr:[\"Last-Translator: Marc Riera , 2020\\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segons\"]}}}}},{locale:\"cs_CZ\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Pavel Borecki , 2021\",\"Language-Team\":\"Czech (Czech Republic) (https://www.transifex.com/nextcloud/teams/64236/cs_CZ/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"cs_CZ\",\"Plural-Forms\":\"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nPavel Borecki , 2021\\n\"},msgstr:[\"Last-Translator: Pavel Borecki , 2021\\nLanguage-Team: Czech (Czech Republic) (https://www.transifex.com/nextcloud/teams/64236/cs_CZ/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs_CZ\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekund(y)\"]}}}}},{locale:\"da\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Henrik Troels-Hansen , 2020\",\"Language-Team\":\"Danish (https://www.transifex.com/nextcloud/teams/64236/da/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"da\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nHenrik Troels-Hansen , 2020\\n\"},msgstr:[\"Last-Translator: Henrik Troels-Hansen , 2020\\nLanguage-Team: Danish (https://www.transifex.com/nextcloud/teams/64236/da/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: da\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekunder\"]}}}}},{locale:\"de_DE\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Christoph Wurst , 2020\",\"Language-Team\":\"German (Germany) (https://www.transifex.com/nextcloud/teams/64236/de_DE/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"de_DE\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nChristoph Wurst , 2020\\n\"},msgstr:[\"Last-Translator: Christoph Wurst , 2020\\nLanguage-Team: German (Germany) (https://www.transifex.com/nextcloud/teams/64236/de_DE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de_DE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"Sekunden\"]}}}}},{locale:\"el\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"GRMarksman , 2020\",\"Language-Team\":\"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"el\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nGRMarksman , 2020\\n\"},msgstr:[\"Last-Translator: GRMarksman , 2020\\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"δευτερόλεπτα\"]}}}}},{locale:\"en_GB\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Oleksa Stasevych , 2020\",\"Language-Team\":\"English (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/en_GB/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"en_GB\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nOleksa Stasevych , 2020\\n\"},msgstr:[\"Last-Translator: Oleksa Stasevych , 2020\\nLanguage-Team: English (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/en_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: en_GB\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"seconds\"]}}}}},{locale:\"eo\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Va Milushnikov , 2020\",\"Language-Team\":\"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"eo\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nVa Milushnikov , 2020\\n\"},msgstr:[\"Last-Translator: Va Milushnikov , 2020\\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekundoj\"]}}}}},{locale:\"es\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Javier San Juan , 2020\",\"Language-Team\":\"Spanish (https://www.transifex.com/nextcloud/teams/64236/es/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"es\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nJavier San Juan , 2020\\n\"},msgstr:[\"Last-Translator: Javier San Juan , 2020\\nLanguage-Team: Spanish (https://www.transifex.com/nextcloud/teams/64236/es/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segundos\"]}}}}},{locale:\"eu\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Asier Iturralde Sarasola , 2020\",\"Language-Team\":\"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"eu\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nAsier Iturralde Sarasola , 2020\\n\"},msgstr:[\"Last-Translator: Asier Iturralde Sarasola , 2020\\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segundo\"]}}}}},{locale:\"fa\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Amirreza Kolivand , 2021\",\"Language-Team\":\"Persian (https://www.transifex.com/nextcloud/teams/64236/fa/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"fa\",\"Plural-Forms\":\"nplurals=2; plural=(n > 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nAmirreza Kolivand , 2021\\n\"},msgstr:[\"Last-Translator: Amirreza Kolivand , 2021\\nLanguage-Team: Persian (https://www.transifex.com/nextcloud/teams/64236/fa/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fa\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"ثانیه\"]}}}}},{locale:\"fi_FI\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Robin Lahtinen , 2020\",\"Language-Team\":\"Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"fi_FI\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nRobin Lahtinen , 2020\\n\"},msgstr:[\"Last-Translator: Robin Lahtinen , 2020\\nLanguage-Team: Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fi_FI\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekuntia\"]}}}}},{locale:\"fr\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Yoplala , 2020\",\"Language-Team\":\"French (https://www.transifex.com/nextcloud/teams/64236/fr/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"fr\",\"Plural-Forms\":\"nplurals=2; plural=(n > 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nYoplala , 2020\\n\"},msgstr:[\"Last-Translator: Yoplala , 2020\\nLanguage-Team: French (https://www.transifex.com/nextcloud/teams/64236/fr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"secondes\"]}}}}},{locale:\"gl\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Miguel Anxo Bouzada , 2020\",\"Language-Team\":\"Galician (https://www.transifex.com/nextcloud/teams/64236/gl/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"gl\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nMiguel Anxo Bouzada , 2020\\n\"},msgstr:[\"Last-Translator: Miguel Anxo Bouzada , 2020\\nLanguage-Team: Galician (https://www.transifex.com/nextcloud/teams/64236/gl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segundos\"]}}}}},{locale:\"he\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Yaron Shahrabani , 2020\",\"Language-Team\":\"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"he\",\"Plural-Forms\":\"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nYaron Shahrabani , 2020\\n\"},msgstr:[\"Last-Translator: Yaron Shahrabani , 2020\\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: he\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"שניות\"]}}}}},{locale:\"hu_HU\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Balázs Meskó , 2020\",\"Language-Team\":\"Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"hu_HU\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nBalázs Meskó , 2020\\n\"},msgstr:[\"Last-Translator: Balázs Meskó , 2020\\nLanguage-Team: Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu_HU\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"másodperc\"]}}}}},{locale:\"id\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Marcus Pierce, 2021\",\"Language-Team\":\"Indonesian (https://www.transifex.com/nextcloud/teams/64236/id/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"id\",\"Plural-Forms\":\"nplurals=1; plural=0;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nMarcus Pierce, 2021\\n\"},msgstr:[\"Last-Translator: Marcus Pierce, 2021\\nLanguage-Team: Indonesian (https://www.transifex.com/nextcloud/teams/64236/id/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: id\\nPlural-Forms: nplurals=1; plural=0;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"detik\"]}}}}},{locale:\"is\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Sveinn í Felli , 2020\",\"Language-Team\":\"Icelandic (https://www.transifex.com/nextcloud/teams/64236/is/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"is\",\"Plural-Forms\":\"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nSveinn í Felli , 2020\\n\"},msgstr:[\"Last-Translator: Sveinn í Felli , 2020\\nLanguage-Team: Icelandic (https://www.transifex.com/nextcloud/teams/64236/is/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: is\\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekúndur\"]}}}}},{locale:\"it\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Random_R, 2020\",\"Language-Team\":\"Italian (https://www.transifex.com/nextcloud/teams/64236/it/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"it\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nRandom_R, 2020\\n\"},msgstr:[\"Last-Translator: Random_R, 2020\\nLanguage-Team: Italian (https://www.transifex.com/nextcloud/teams/64236/it/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"secondi\"]}}}}},{locale:\"ja_JP\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"YANO Tetsu , 2020\",\"Language-Team\":\"Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"ja_JP\",\"Plural-Forms\":\"nplurals=1; plural=0;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nYANO Tetsu , 2020\\n\"},msgstr:[\"Last-Translator: YANO Tetsu , 2020\\nLanguage-Team: Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"秒\"]}}}}},{locale:\"ko\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Brandon Han, 2021\",\"Language-Team\":\"Korean (https://www.transifex.com/nextcloud/teams/64236/ko/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"ko\",\"Plural-Forms\":\"nplurals=1; plural=0;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nBrandon Han, 2021\\n\"},msgstr:[\"Last-Translator: Brandon Han, 2021\\nLanguage-Team: Korean (https://www.transifex.com/nextcloud/teams/64236/ko/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ko\\nPlural-Forms: nplurals=1; plural=0;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"초\"]}}}}},{locale:\"lt_LT\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Moo, 2020\",\"Language-Team\":\"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"lt_LT\",\"Plural-Forms\":\"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nMoo, 2020\\n\"},msgstr:[\"Last-Translator: Moo, 2020\\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lt_LT\\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sek.\"]}}}}},{locale:\"lv\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"stendec , 2020\",\"Language-Team\":\"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"lv\",\"Plural-Forms\":\"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nstendec , 2020\\n\"},msgstr:[\"Last-Translator: stendec , 2020\\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lv\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekundes\"]}}}}},{locale:\"mk\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Сашко Тодоров, 2020\",\"Language-Team\":\"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"mk\",\"Plural-Forms\":\"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nСашко Тодоров, 2020\\n\"},msgstr:[\"Last-Translator: Сашко Тодоров, 2020\\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mk\\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"секунди\"]}}}}},{locale:\"my\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Htike Aung Kyaw , 2021\",\"Language-Team\":\"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"my\",\"Plural-Forms\":\"nplurals=1; plural=0;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nHtike Aung Kyaw , 2021\\n\"},msgstr:[\"Last-Translator: Htike Aung Kyaw , 2021\\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: my\\nPlural-Forms: nplurals=1; plural=0;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"စက္ကန့်\"]}}}}},{locale:\"nb_NO\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Ole Jakob Brustad , 2020\",\"Language-Team\":\"Norwegian Bokmål (Norway) (https://www.transifex.com/nextcloud/teams/64236/nb_NO/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"nb_NO\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nOle Jakob Brustad , 2020\\n\"},msgstr:[\"Last-Translator: Ole Jakob Brustad , 2020\\nLanguage-Team: Norwegian Bokmål (Norway) (https://www.transifex.com/nextcloud/teams/64236/nb_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nb_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekunder\"]}}}}},{locale:\"nl\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Roeland Jago Douma , 2020\",\"Language-Team\":\"Dutch (https://www.transifex.com/nextcloud/teams/64236/nl/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"nl\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nRoeland Jago Douma , 2020\\n\"},msgstr:[\"Last-Translator: Roeland Jago Douma , 2020\\nLanguage-Team: Dutch (https://www.transifex.com/nextcloud/teams/64236/nl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"seconden\"]}}}}},{locale:\"oc\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Quentin PAGÈS, 2020\",\"Language-Team\":\"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"oc\",\"Plural-Forms\":\"nplurals=2; plural=(n > 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nQuentin PAGÈS, 2020\\n\"},msgstr:[\"Last-Translator: Quentin PAGÈS, 2020\\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: oc\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segondas\"]}}}}},{locale:\"pl\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Janusz Gwiazda , 2020\",\"Language-Team\":\"Polish (https://www.transifex.com/nextcloud/teams/64236/pl/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"pl\",\"Plural-Forms\":\"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nJanusz Gwiazda , 2020\\n\"},msgstr:[\"Last-Translator: Janusz Gwiazda , 2020\\nLanguage-Team: Polish (https://www.transifex.com/nextcloud/teams/64236/pl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pl\\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekundy\"]}}}}},{locale:\"pt_BR\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"André Marcelo Alvarenga , 2020\",\"Language-Team\":\"Portuguese (Brazil) (https://www.transifex.com/nextcloud/teams/64236/pt_BR/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"pt_BR\",\"Plural-Forms\":\"nplurals=2; plural=(n > 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nAndré Marcelo Alvarenga , 2020\\n\"},msgstr:[\"Last-Translator: André Marcelo Alvarenga , 2020\\nLanguage-Team: Portuguese (Brazil) (https://www.transifex.com/nextcloud/teams/64236/pt_BR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_BR\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segundos\"]}}}}},{locale:\"pt_PT\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"fpapoila , 2020\",\"Language-Team\":\"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"pt_PT\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nfpapoila , 2020\\n\"},msgstr:[\"Last-Translator: fpapoila , 2020\\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_PT\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"segundos\"]}}}}},{locale:\"ru\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Игорь Бондаренко , 2020\",\"Language-Team\":\"Russian (https://www.transifex.com/nextcloud/teams/64236/ru/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"ru\",\"Plural-Forms\":\"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nИгорь Бондаренко , 2020\\n\"},msgstr:[\"Last-Translator: Игорь Бондаренко , 2020\\nLanguage-Team: Russian (https://www.transifex.com/nextcloud/teams/64236/ru/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"секунды\"]}}}}},{locale:\"si\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Hela Basa, 2021\",\"Language-Team\":\"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"si\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nHela Basa, 2021\\n\"},msgstr:[\"Last-Translator: Hela Basa, 2021\\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"තත්පර\"]}}}}},{locale:\"sk_SK\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Anton Kuchár , 2020\",\"Language-Team\":\"Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"sk_SK\",\"Plural-Forms\":\"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nAnton Kuchár , 2020\\n\"},msgstr:[\"Last-Translator: Anton Kuchár , 2020\\nLanguage-Team: Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sk_SK\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekundy\"]}}}}},{locale:\"sl\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Matej Urbančič <>, 2020\",\"Language-Team\":\"Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"sl\",\"Plural-Forms\":\"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nMatej Urbančič <>, 2020\\n\"},msgstr:[\"Last-Translator: Matej Urbančič <>, 2020\\nLanguage-Team: Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekunde\"]}}}}},{locale:\"sq\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Greta, 2020\",\"Language-Team\":\"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"sq\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nGreta, 2020\\n\"},msgstr:[\"Last-Translator: Greta, 2020\\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sq\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekonda\"]}}}}},{locale:\"sr\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Slobodan Simić , 2020\",\"Language-Team\":\"Serbian (https://www.transifex.com/nextcloud/teams/64236/sr/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"sr\",\"Plural-Forms\":\"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nSlobodan Simić , 2020\\n\"},msgstr:[\"Last-Translator: Slobodan Simić , 2020\\nLanguage-Team: Serbian (https://www.transifex.com/nextcloud/teams/64236/sr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"секунде\"]}}}}},{locale:\"sv\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Magnus Höglund, 2020\",\"Language-Team\":\"Swedish (https://www.transifex.com/nextcloud/teams/64236/sv/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"sv\",\"Plural-Forms\":\"nplurals=2; plural=(n != 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nMagnus Höglund, 2020\\n\"},msgstr:[\"Last-Translator: Magnus Höglund, 2020\\nLanguage-Team: Swedish (https://www.transifex.com/nextcloud/teams/64236/sv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sv\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"sekunder\"]}}}}},{locale:\"th_TH\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Phongpanot Phairat , 2021\",\"Language-Team\":\"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"th_TH\",\"Plural-Forms\":\"nplurals=1; plural=0;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nPhongpanot Phairat , 2021\\n\"},msgstr:[\"Last-Translator: Phongpanot Phairat , 2021\\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th_TH\\nPlural-Forms: nplurals=1; plural=0;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"วินาที\"]}}}}},{locale:\"tr\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Hüseyin Fahri Uzun , 2020\",\"Language-Team\":\"Turkish (https://www.transifex.com/nextcloud/teams/64236/tr/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"tr\",\"Plural-Forms\":\"nplurals=2; plural=(n > 1);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nHüseyin Fahri Uzun , 2020\\n\"},msgstr:[\"Last-Translator: Hüseyin Fahri Uzun , 2020\\nLanguage-Team: Turkish (https://www.transifex.com/nextcloud/teams/64236/tr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"saniye\"]}}}}},{locale:\"uk\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Oleksa Stasevych , 2020\",\"Language-Team\":\"Ukrainian (https://www.transifex.com/nextcloud/teams/64236/uk/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"uk\",\"Plural-Forms\":\"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nOleksa Stasevych , 2020\\n\"},msgstr:[\"Last-Translator: Oleksa Stasevych , 2020\\nLanguage-Team: Ukrainian (https://www.transifex.com/nextcloud/teams/64236/uk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uk\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"секунд\"]}}}}},{locale:\"vi\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Luu Thang , 2021\",\"Language-Team\":\"Vietnamese (https://www.transifex.com/nextcloud/teams/64236/vi/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"vi\",\"Plural-Forms\":\"nplurals=1; plural=0;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nLuu Thang , 2021\\n\"},msgstr:[\"Last-Translator: Luu Thang , 2021\\nLanguage-Team: Vietnamese (https://www.transifex.com/nextcloud/teams/64236/vi/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: vi\\nPlural-Forms: nplurals=1; plural=0;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"giây\"]}}}}},{locale:\"zh_CN\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Jay Guo , 2020\",\"Language-Team\":\"Chinese (China) (https://www.transifex.com/nextcloud/teams/64236/zh_CN/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"zh_CN\",\"Plural-Forms\":\"nplurals=1; plural=0;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nJay Guo , 2020\\n\"},msgstr:[\"Last-Translator: Jay Guo , 2020\\nLanguage-Team: Chinese (China) (https://www.transifex.com/nextcloud/teams/64236/zh_CN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_CN\\nPlural-Forms: nplurals=1; plural=0;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"秒\"]}}}}},{locale:\"zh_HK\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Cha Wong , 2021\",\"Language-Team\":\"Chinese (Hong Kong) (https://www.transifex.com/nextcloud/teams/64236/zh_HK/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"zh_HK\",\"Plural-Forms\":\"nplurals=1; plural=0;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"\\nTranslators:\\nCha Wong , 2021\\n\"},msgstr:[\"Last-Translator: Cha Wong , 2021\\nLanguage-Team: Chinese (Hong Kong) (https://www.transifex.com/nextcloud/teams/64236/zh_HK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_HK\\nPlural-Forms: nplurals=1; plural=0;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"秒\"]}}}}},{locale:\"zh_TW\",json:{charset:\"utf-8\",headers:{\"Last-Translator\":\"Jim Tsai , 2020\",\"Language-Team\":\"Chinese (Taiwan) (https://www.transifex.com/nextcloud/teams/64236/zh_TW/)\",\"Content-Type\":\"text/plain; charset=UTF-8\",Language:\"zh_TW\",\"Plural-Forms\":\"nplurals=1; plural=0;\"},translations:{\"\":{\"\":{msgid:\"\",comments:{translator:\"Translators:\\nJim Tsai , 2020\\n\"},msgstr:[\"Last-Translator: Jim Tsai , 2020\\nLanguage-Team: Chinese (Taiwan) (https://www.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"]},seconds:{msgid:\"seconds\",comments:{reference:\"lib/index.ts:22\"},msgstr:[\"秒\"]}}}}}].map((function(a){o.addTranslations(a.locale,\"messages\",a.json)})),o.setLocale(m),e().locale(m),e().updateLocale(e().locale(),{parentLocale:e().locale(),relativeTime:Object.assign(e().localeData(e().locale())._relativeTime,{s:o.gettext(\"seconds\")})});var u=e();return n}()}));\n//# sourceMappingURL=index.js.map","\"use strict\";\n\nrequire(\"core-js/modules/es.object.define-property.js\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getCanonicalLocale = getCanonicalLocale;\nexports.getDayNames = getDayNames;\nexports.getDayNamesMin = getDayNamesMin;\nexports.getDayNamesShort = getDayNamesShort;\nexports.getFirstDay = getFirstDay;\nexports.getLanguage = getLanguage;\nexports.getLocale = getLocale;\nexports.getMonthNames = getMonthNames;\nexports.getMonthNamesShort = getMonthNamesShort;\nexports.translate = translate;\nexports.translatePlural = translatePlural;\n\nrequire(\"core-js/modules/es.regexp.exec.js\");\n\nrequire(\"core-js/modules/es.string.replace.js\");\n\n/// \n\n/**\n * Returns the user's locale\n */\nfunction getLocale() {\n return document.documentElement.dataset.locale || 'en';\n}\n\nfunction getCanonicalLocale() {\n return getLocale().replace(/_/g, '-');\n}\n/**\n * Returns the user's language\n */\n\n\nfunction getLanguage() {\n return document.documentElement.lang || 'en';\n}\n\n/**\n * Translate a string\n *\n * @param {string} app the id of the app for which to translate the string\n * @param {string} text the string to translate\n * @param {object} vars map of placeholder key to value\n * @param {number} number to replace %n with\n * @param {object} [options] options object\n * @return {string}\n */\nfunction translate(app, text, vars, count, options) {\n if (typeof OC === 'undefined') {\n console.warn('No OC found');\n return text;\n }\n\n return OC.L10N.translate(app, text, vars, count, options);\n}\n/**\n * Translate a plural string\n *\n * @param {string} app the id of the app for which to translate the string\n * @param {string} textSingular the string to translate for exactly one object\n * @param {string} textPlural the string to translate for n objects\n * @param {number} count number to determine whether to use singular or plural\n * @param {Object} vars of placeholder key to value\n * @param {object} options options object\n * @return {string}\n */\n\n\nfunction translatePlural(app, textSingular, textPlural, count, vars, options) {\n if (typeof OC === 'undefined') {\n console.warn('No OC found');\n return textSingular;\n }\n\n return OC.L10N.translatePlural(app, textSingular, textPlural, count, vars, options);\n}\n/**\n * Get the first day of the week\n *\n * @return {number}\n */\n\n\nfunction getFirstDay() {\n if (typeof window.firstDay === 'undefined') {\n console.warn('No firstDay found');\n return 1;\n }\n\n return window.firstDay;\n}\n/**\n * Get a list of day names (full names)\n *\n * @return {string[]}\n */\n\n\nfunction getDayNames() {\n if (typeof window.dayNames === 'undefined') {\n console.warn('No dayNames found');\n return ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];\n }\n\n return window.dayNames;\n}\n/**\n * Get a list of day names (short names)\n *\n * @return {string[]}\n */\n\n\nfunction getDayNamesShort() {\n if (typeof window.dayNamesShort === 'undefined') {\n console.warn('No dayNamesShort found');\n return ['Sun.', 'Mon.', 'Tue.', 'Wed.', 'Thu.', 'Fri.', 'Sat.'];\n }\n\n return window.dayNamesShort;\n}\n/**\n * Get a list of day names (minified names)\n *\n * @return {string[]}\n */\n\n\nfunction getDayNamesMin() {\n if (typeof window.dayNamesMin === 'undefined') {\n console.warn('No dayNamesMin found');\n return ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'];\n }\n\n return window.dayNamesMin;\n}\n/**\n * Get a list of month names (full names)\n *\n * @return {string[]}\n */\n\n\nfunction getMonthNames() {\n if (typeof window.monthNames === 'undefined') {\n console.warn('No monthNames found');\n return ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];\n }\n\n return window.monthNames;\n}\n/**\n * Get a list of month names (short names)\n *\n * @return {string[]}\n */\n\n\nfunction getMonthNamesShort() {\n if (typeof window.monthNamesShort === 'undefined') {\n console.warn('No monthNamesShort found');\n return ['Jan.', 'Feb.', 'Mar.', 'Apr.', 'May.', 'Jun.', 'Jul.', 'Aug.', 'Sep.', 'Oct.', 'Nov.', 'Dec.'];\n }\n\n return window.monthNamesShort;\n}\n//# sourceMappingURL=index.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.encodePath = encodePath;\nexports.basename = basename;\nexports.dirname = dirname;\nexports.joinPaths = joinPaths;\nexports.isSamePath = isSamePath;\n\nrequire(\"core-js/modules/es.array.map.js\");\n\nrequire(\"core-js/modules/es.regexp.exec.js\");\n\nrequire(\"core-js/modules/es.string.split.js\");\n\nrequire(\"core-js/modules/es.string.replace.js\");\n\nrequire(\"core-js/modules/es.array.filter.js\");\n\nrequire(\"core-js/modules/es.array.reduce.js\");\n\nrequire(\"core-js/modules/es.array.concat.js\");\n\n/**\n * URI-Encodes a file path but keep the path slashes.\n */\nfunction encodePath(path) {\n if (!path) {\n return path;\n }\n\n return path.split('/').map(encodeURIComponent).join('/');\n}\n/**\n * Returns the base name of the given path.\n * For example for \"/abc/somefile.txt\" it will return \"somefile.txt\"\n */\n\n\nfunction basename(path) {\n return path.replace(/\\\\/g, '/').replace(/.*\\//, '');\n}\n/**\n * Returns the dir name of the given path.\n * For example for \"/abc/somefile.txt\" it will return \"/abc\"\n */\n\n\nfunction dirname(path) {\n return path.replace(/\\\\/g, '/').replace(/\\/[^\\/]*$/, '');\n}\n/**\n * Join path sections\n */\n\n\nfunction joinPaths() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n if (arguments.length < 1) {\n return '';\n } // discard empty arguments\n\n\n var nonEmptyArgs = args.filter(function (arg) {\n return arg.length > 0;\n });\n\n if (nonEmptyArgs.length < 1) {\n return '';\n }\n\n var lastArg = nonEmptyArgs[nonEmptyArgs.length - 1];\n var leadingSlash = nonEmptyArgs[0].charAt(0) === '/';\n var trailingSlash = lastArg.charAt(lastArg.length - 1) === '/';\n var sections = nonEmptyArgs.reduce(function (acc, section) {\n return acc.concat(section.split('/'));\n }, []);\n var first = !leadingSlash;\n var path = sections.reduce(function (acc, section) {\n if (section === '') {\n return acc;\n }\n\n if (first) {\n first = false;\n return acc + section;\n }\n\n return acc + '/' + section;\n }, '');\n\n if (trailingSlash) {\n // add it back\n return path + '/';\n }\n\n return path;\n}\n/**\n * Returns whether the given paths are the same, without\n * leading, trailing or doubled slashes and also removing\n * the dot sections.\n */\n\n\nfunction isSamePath(path1, path2) {\n var pathSections1 = (path1 || '').split('/').filter(function (p) {\n return p !== '.';\n });\n var pathSections2 = (path2 || '').split('/').filter(function (p) {\n return p !== '.';\n });\n path1 = joinPaths.apply(undefined, pathSections1);\n path2 = joinPaths.apply(undefined, pathSections2);\n return path1 === path2;\n}\n//# sourceMappingURL=index.js.map","/*! For license information please see NcAvatar.js.LICENSE.txt */\n!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(\"NextcloudVue\",[],e):\"object\"==typeof exports?exports.NextcloudVue=e():(t.NextcloudVue=t.NextcloudVue||{},t.NextcloudVue[\"Components/NcAvatar\"]=e())}(self,(()=>(()=>{var t={5378:(t,e,a)=>{\"use strict\";a.d(e,{default:()=>k});const i={name:\"NcLoadingIcon\",props:{size:{type:Number,default:20},appearance:{type:String,validator:t=>[\"auto\",\"light\",\"dark\"].includes(t),default:\"auto\"},title:{type:String,default:\"\"}},computed:{colors(){const t=[\"#777\",\"#CCC\"];return\"light\"===this.appearance?t:\"dark\"===this.appearance?t.reverse():[\"var(--color-loading-light)\",\"var(--color-loading-dark)\"]}}};var n=a(3379),o=a.n(n),s=a(7795),r=a.n(s),l=a(569),c=a.n(l),u=a(3565),d=a.n(u),m=a(9216),p=a.n(m),g=a(4589),h=a.n(g),A=a(5030),v={};v.styleTagTransform=h(),v.setAttributes=d(),v.insert=c().bind(null,\"head\"),v.domAPI=r(),v.insertStyleElement=p();o()(A.Z,v);A.Z&&A.Z.locals&&A.Z.locals;var b=a(1900),C=a(9280),f=a.n(C),y=(0,b.Z)(i,(function(){var t=this,e=t._self._c;return e(\"span\",{staticClass:\"material-design-icon loading-icon\",attrs:{\"aria-label\":t.title,role:\"img\"}},[e(\"svg\",{attrs:{width:t.size,height:t.size,viewBox:\"0 0 24 24\"}},[e(\"path\",{attrs:{fill:t.colors[0],d:\"M12,4V2A10,10 0 1,0 22,12H20A8,8 0 1,1 12,4Z\"}}),t._v(\" \"),e(\"path\",{attrs:{fill:t.colors[1],d:\"M12,4V2A10,10 0 0,1 22,12H20A8,8 0 0,0 12,4Z\"}},[t.title?e(\"title\",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,\"c4a9cada\",null);\"function\"==typeof f()&&f()(y);const k=y.exports},2297:(t,e,a)=>{\"use strict\";a.d(e,{default:()=>z});var i=a(9454),n=a(4505),o=a(1206);const s={name:\"NcPopover\",components:{Dropdown:i.Dropdown},inheritAttrs:!1,props:{popoverBaseClass:{type:String,default:\"\"},focusTrap:{type:Boolean,default:!0},setReturnFocus:{default:void 0,type:[HTMLElement,SVGElement,String,Boolean]}},emits:[\"after-show\",\"after-hide\"],beforeDestroy(){this.clearFocusTrap()},methods:{async useFocusTrap(){var t,e;if(await this.$nextTick(),!this.focusTrap)return;const a=null===(t=this.$refs.popover)||void 0===t||null===(e=t.$refs.popperContent)||void 0===e?void 0:e.$el;a&&(this.$focusTrap=(0,n.createFocusTrap)(a,{escapeDeactivates:!1,allowOutsideClick:!0,setReturnFocus:this.setReturnFocus,trapStack:(0,o.L)()}),this.$focusTrap.activate())},clearFocusTrap(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};try{var e;null===(e=this.$focusTrap)||void 0===e||e.deactivate(t),this.$focusTrap=null}catch(t){console.warn(t)}},afterShow(){this.$nextTick((()=>{this.$emit(\"after-show\"),this.useFocusTrap()}))},afterHide(){this.$emit(\"after-hide\"),this.clearFocusTrap()}}},r=s;var l=a(3379),c=a.n(l),u=a(7795),d=a.n(u),m=a(569),p=a.n(m),g=a(3565),h=a.n(g),A=a(9216),v=a.n(A),b=a(4589),C=a.n(b),f=a(1625),y={};y.styleTagTransform=C(),y.setAttributes=h(),y.insert=p().bind(null,\"head\"),y.domAPI=d(),y.insertStyleElement=v();c()(f.Z,y);f.Z&&f.Z.locals&&f.Z.locals;var k=a(1900),S=a(2405),w=a.n(S),x=(0,k.Z)(r,(function(){var t=this;return(0,t._self._c)(\"Dropdown\",t._g(t._b({ref:\"popover\",attrs:{distance:10,\"arrow-padding\":10,\"no-auto-focus\":!0,\"popper-class\":t.popoverBaseClass},on:{\"apply-show\":t.afterShow,\"apply-hide\":t.afterHide},scopedSlots:t._u([{key:\"popper\",fn:function(){return[t._t(\"default\")]},proxy:!0}],null,!0)},\"Dropdown\",t.$attrs,!1),t.$listeners),[t._t(\"trigger\")],2)}),[],!1,null,null,null);\"function\"==typeof w()&&w()(x);const z=x.exports},306:(t,e,a)=>{\"use strict\";a.d(e,{default:()=>N});const i={name:\"NcPopoverMenuItem\",props:{item:{type:Object,required:!0,default:()=>({key:\"nextcloud-link\",href:\"https://nextcloud.com\",icon:\"icon-links\",text:\"Nextcloud\"}),validator:t=>!t.input||-1!==[\"text\",\"checkbox\"].indexOf(t.input)}},computed:{key(){return this.item.key?this.item.key:Math.round(16*Math.random()*1e6).toString(16)},iconIsUrl(){try{return new URL(this.item.icon),!0}catch(t){return!1}}},methods:{action(t){this.item.action&&this.item.action(t)}}};var n=a(3379),o=a.n(n),s=a(7795),r=a.n(s),l=a(569),c=a.n(l),u=a(3565),d=a.n(u),m=a(9216),p=a.n(m),g=a(4589),h=a.n(g),A=a(8369),v={};v.styleTagTransform=h(),v.setAttributes=d(),v.insert=c().bind(null,\"head\"),v.domAPI=r(),v.insertStyleElement=p();o()(A.Z,v);A.Z&&A.Z.locals&&A.Z.locals;var b=a(408),C={};C.styleTagTransform=h(),C.setAttributes=d(),C.insert=c().bind(null,\"head\"),C.domAPI=r(),C.insertStyleElement=p();o()(b.Z,C);b.Z&&b.Z.locals&&b.Z.locals;var f=a(1900);const y={name:\"NcPopoverMenu\",components:{NcPopoverMenuItem:(0,f.Z)(i,(function(){var t=this,e=t._self._c;return e(\"li\",{staticClass:\"popover__menuitem\"},[t.item.href?e(\"a\",{staticClass:\"focusable\",attrs:{href:t.item.href?t.item.href:\"#\",target:t.item.target?t.item.target:\"\",download:t.item.download,rel:\"nofollow noreferrer noopener\"},on:{click:t.action}},[t.iconIsUrl?e(\"img\",{attrs:{src:t.item.icon}}):e(\"span\",{class:t.item.icon}),t._v(\" \"),t.item.text&&t.item.longtext?e(\"p\",[e(\"strong\",{staticClass:\"menuitem-text\"},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.item.text)+\"\\n\\t\\t\\t\")]),e(\"br\"),t._v(\" \"),e(\"span\",{staticClass:\"menuitem-text-detail\"},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.item.longtext)+\"\\n\\t\\t\\t\")])]):t.item.text?e(\"span\",[t._v(\"\\n\\t\\t\\t\"+t._s(t.item.text)+\"\\n\\t\\t\")]):t.item.longtext?e(\"p\",[t._v(\"\\n\\t\\t\\t\"+t._s(t.item.longtext)+\"\\n\\t\\t\")]):t._e()]):t.item.input?e(\"span\",{staticClass:\"menuitem\",class:{active:t.item.active}},[\"checkbox\"!==t.item.input?e(\"span\",{class:t.item.icon}):t._e(),t._v(\" \"),\"text\"===t.item.input?e(\"form\",{class:t.item.input,on:{submit:function(e){return e.preventDefault(),t.item.action.apply(null,arguments)}}},[e(\"input\",{attrs:{type:t.item.input,placeholder:t.item.text,required:\"\"},domProps:{value:t.item.value}}),t._v(\" \"),e(\"input\",{staticClass:\"icon-confirm\",attrs:{type:\"submit\",value:\"\"}})]):[\"checkbox\"===t.item.input?e(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:t.item.model,expression:\"item.model\"}],class:t.item.input,attrs:{id:t.key,type:\"checkbox\"},domProps:{checked:Array.isArray(t.item.model)?t._i(t.item.model,null)>-1:t.item.model},on:{change:[function(e){var a=t.item.model,i=e.target,n=!!i.checked;if(Array.isArray(a)){var o=t._i(a,null);i.checked?o<0&&t.$set(t.item,\"model\",a.concat([null])):o>-1&&t.$set(t.item,\"model\",a.slice(0,o).concat(a.slice(o+1)))}else t.$set(t.item,\"model\",n)},t.item.action]}}):\"radio\"===t.item.input?e(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:t.item.model,expression:\"item.model\"}],class:t.item.input,attrs:{id:t.key,type:\"radio\"},domProps:{checked:t._q(t.item.model,null)},on:{change:[function(e){return t.$set(t.item,\"model\",null)},t.item.action]}}):e(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:t.item.model,expression:\"item.model\"}],class:t.item.input,attrs:{id:t.key,type:t.item.input},domProps:{value:t.item.model},on:{change:t.item.action,input:function(e){e.target.composing||t.$set(t.item,\"model\",e.target.value)}}}),t._v(\" \"),e(\"label\",{attrs:{for:t.key},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.item.action.apply(null,arguments)}}},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.item.text)+\"\\n\\t\\t\\t\")])]],2):t.item.action?e(\"button\",{staticClass:\"menuitem focusable\",class:{active:t.item.active},attrs:{disabled:t.item.disabled,type:\"button\"},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.item.action.apply(null,arguments)}}},[e(\"span\",{class:t.item.icon}),t._v(\" \"),t.item.text&&t.item.longtext?e(\"p\",[e(\"strong\",{staticClass:\"menuitem-text\"},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.item.text)+\"\\n\\t\\t\\t\")]),e(\"br\"),t._v(\" \"),e(\"span\",{staticClass:\"menuitem-text-detail\"},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.item.longtext)+\"\\n\\t\\t\\t\")])]):t.item.text?e(\"span\",[t._v(\"\\n\\t\\t\\t\"+t._s(t.item.text)+\"\\n\\t\\t\")]):t.item.longtext?e(\"p\",[t._v(\"\\n\\t\\t\\t\"+t._s(t.item.longtext)+\"\\n\\t\\t\")]):t._e()]):e(\"span\",{staticClass:\"menuitem\",class:{active:t.item.active}},[e(\"span\",{class:t.item.icon}),t._v(\" \"),t.item.text&&t.item.longtext?e(\"p\",[e(\"strong\",{staticClass:\"menuitem-text\"},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.item.text)+\"\\n\\t\\t\\t\")]),e(\"br\"),t._v(\" \"),e(\"span\",{staticClass:\"menuitem-text-detail\"},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.item.longtext)+\"\\n\\t\\t\\t\")])]):t.item.text?e(\"span\",[t._v(\"\\n\\t\\t\\t\"+t._s(t.item.text)+\"\\n\\t\\t\")]):t.item.longtext?e(\"p\",[t._v(\"\\n\\t\\t\\t\"+t._s(t.item.longtext)+\"\\n\\t\\t\")]):t._e()])])}),[],!1,null,\"127b0c62\",null).exports},props:{menu:{type:Array,default:()=>[{href:\"https://nextcloud.com\",icon:\"icon-links\",text:\"Nextcloud\"}],required:!0}}};var k=a(2),S={};S.styleTagTransform=h(),S.setAttributes=d(),S.insert=c().bind(null,\"head\"),S.domAPI=r(),S.insertStyleElement=p();o()(k.Z,S);k.Z&&k.Z.locals&&k.Z.locals;var w=a(1174),x=a.n(w),z=(0,f.Z)(y,(function(){var t=this,e=t._self._c;return e(\"ul\",{staticClass:\"popover__menu\"},t._l(t.menu,(function(t,a){return e(\"NcPopoverMenuItem\",{key:a,attrs:{item:t}})})),1)}),[],!1,null,\"31ffd2d4\",null);\"function\"==typeof x()&&x()(z);const N=z.exports},7993:(t,e,a)=>{\"use strict\";a.d(e,{default:()=>s});var i=a(6609);const n=require(\"md5\");var o=a.n(n);const s=function(t){let e=t.toLowerCase();null===e.match(/^([0-9a-f]{4}-?){8}$/)&&(e=o()(e)),e=e.replace(/[^0-9a-f]/g,\"\");return(0,i.Z)(6)[function(t,e){let a=0;const i=[];for(let e=0;e{\"use strict\";a.d(e,{t:()=>s});var i=a(7931);const n=(0,i.getGettextBuilder)().detectLocale();[{locale:\"ar\",translations:{\"{tag} (invisible)\":\"{tag} (غير مرئي)\",\"{tag} (restricted)\":\"{tag} (مقيد)\",Actions:\"الإجراءات\",Activities:\"النشاطات\",\"Animals & Nature\":\"الحيوانات والطبيعة\",\"Anything shared with the same group of people will show up here\":\"أي مادة تمت مشاركتها مع نفس المجموعة من الأشخاص سيتم عرضها هنا\",\"Avatar of {displayName}\":\"صورة {displayName} الرمزية\",\"Avatar of {displayName}, {status}\":\"صورة {displayName} الرمزية، {status}\",\"Cancel changes\":\"إلغاء التغييرات\",\"Change title\":\"تغيير العنوان\",Choose:\"إختيار\",\"Clear text\":\"مسح النص\",Close:\"أغلق\",\"Close modal\":\"قفل الشرط\",\"Close navigation\":\"إغلاق المتصفح\",\"Close sidebar\":\"قفل الشريط الجانبي\",\"Confirm changes\":\"تأكيد التغييرات\",Custom:\"مخصص\",\"Edit item\":\"تعديل عنصر\",\"Error getting related resources\":\"خطأ في تحصيل مصادر ذات صلة\",\"External documentation for {title}\":\"الوثائق الخارجية لـ{title}\",Favorite:\"مفضلة\",Flags:\"الأعلام\",\"Food & Drink\":\"الطعام والشراب\",\"Frequently used\":\"كثيرا ما تستخدم\",Global:\"عالمي\",\"Go back to the list\":\"العودة إلى القائمة\",\"Hide password\":\"إخفاء كلمة السر\",\"Message limit of {count} characters reached\":\"تم الوصول إلى الحد الأقصى لعدد الأحرف في الرسالة: {count} حرف\",\"More items …\":\"عناصر أخرى ...\",Next:\"التالي\",\"No emoji found\":\"لم يتم العثور على أي رمز تعبيري\",\"No results\":\"ليس هناك أية نتيجة\",Objects:\"الأشياء\",Open:\"فتح\",'Open link to \"{resourceTitle}\"':'فتح رابط إلى \"{resourceTitle}\"',\"Open navigation\":\"فتح المتصفح\",\"Password is secure\":\"كلمة السر مُؤمّنة\",\"Pause slideshow\":\"إيقاف العرض مؤقتًا\",\"People & Body\":\"الناس والجسم\",\"Pick an emoji\":\"اختر رمزًا تعبيريًا\",\"Please select a time zone:\":\"الرجاء تحديد المنطقة الزمنية:\",Previous:\"السابق\",\"Related resources\":\"مصادر ذات صلة\",Search:\"بحث\",\"Search results\":\"نتائج البحث\",\"Select a tag\":\"اختر علامة\",Settings:\"الإعدادات\",\"Settings navigation\":\"إعدادات المتصفح\",\"Show password\":\"أعرض كلمة السر\",\"Smileys & Emotion\":\"الوجوه و الرموز التعبيرية\",\"Start slideshow\":\"بدء العرض\",Submit:\"إرسال\",Symbols:\"الرموز\",\"Travel & Places\":\"السفر والأماكن\",\"Type to search time zone\":\"اكتب للبحث عن منطقة زمنية\",\"Unable to search the group\":\"تعذر البحث في المجموعة\",\"Undo changes\":\"التراجع عن التغييرات\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"اكتب رسالة، @ للإشارة إلى شخص ما، : للإكمال التلقائي للرموز التعبيرية ...\"}},{locale:\"br\",translations:{\"{tag} (invisible)\":\"{tag} (diwelus)\",\"{tag} (restricted)\":\"{tag} (bevennet)\",Actions:\"Oberioù\",Activities:\"Oberiantizoù\",\"Animals & Nature\":\"Loened & Natur\",Choose:\"Dibab\",Close:\"Serriñ\",Custom:\"Personelañ\",Flags:\"Bannieloù\",\"Food & Drink\":\"Boued & Evajoù\",\"Frequently used\":\"Implijet alies\",Next:\"Da heul\",\"No emoji found\":\"Emoji ebet kavet\",\"No results\":\"Disoc'h ebet\",Objects:\"Traoù\",\"Pause slideshow\":\"Arsav an diaporama\",\"People & Body\":\"Tud & Korf\",\"Pick an emoji\":\"Choaz un emoji\",Previous:\"A-raok\",Search:\"Klask\",\"Search results\":\"Disoc'hoù an enklask\",\"Select a tag\":\"Choaz ur c'hlav\",Settings:\"Arventennoù\",\"Smileys & Emotion\":\"Smileyioù & Fromoù\",\"Start slideshow\":\"Kregiñ an diaporama\",Symbols:\"Arouezioù\",\"Travel & Places\":\"Beaj & Lec'hioù\",\"Unable to search the group\":\"Dibosupl eo klask ar strollad\"}},{locale:\"ca\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (restringit)\",Actions:\"Accions\",Activities:\"Activitats\",\"Animals & Nature\":\"Animals i natura\",\"Anything shared with the same group of people will show up here\":\"Qualsevol cosa compartida amb el mateix grup de persones es mostrarà aquí\",\"Avatar of {displayName}\":\"Avatar de {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar de {displayName}, {status}\",\"Cancel changes\":\"Cancel·la els canvis\",\"Change title\":\"Canviar títol\",Choose:\"Tria\",\"Clear text\":\"Netejar text\",Close:\"Tanca\",\"Close modal\":\"Tancar el mode\",\"Close navigation\":\"Tanca la navegació\",\"Close sidebar\":\"Tancar la barra lateral\",\"Confirm changes\":\"Confirmeu els canvis\",Custom:\"Personalitzat\",\"Edit item\":\"Edita l'element\",\"Error getting related resources\":\"Error obtenint els recursos relacionats\",\"Error parsing svg\":\"Error en l'anàlisi del svg\",\"External documentation for {title}\":\"Documentació externa per a {title}\",Favorite:\"Preferit\",Flags:\"Marques\",\"Food & Drink\":\"Menjar i begudes\",\"Frequently used\":\"Utilitzats recentment\",Global:\"Global\",\"Go back to the list\":\"Torna a la llista\",\"Hide password\":\"Amagar contrasenya\",\"Message limit of {count} characters reached\":\"S'ha arribat al límit de {count} caràcters per missatge\",\"More items …\":\"Més artícles...\",Next:\"Següent\",\"No emoji found\":\"No s'ha trobat cap emoji\",\"No results\":\"Sense resultats\",Objects:\"Objectes\",Open:\"Obrir\",'Open link to \"{resourceTitle}\"':'Obrir enllaç a \"{resourceTitle}\"',\"Open navigation\":\"Obre la navegació\",\"Password is secure\":\"Contrasenya segura
\",\"Pause slideshow\":\"Atura la presentació\",\"People & Body\":\"Persones i cos\",\"Pick an emoji\":\"Trieu un emoji\",\"Please select a time zone:\":\"Seleccioneu una zona horària:\",Previous:\"Anterior\",\"Related resources\":\"Recursos relacionats\",Search:\"Cerca\",\"Search results\":\"Resultats de cerca\",\"Select a tag\":\"Seleccioneu una etiqueta\",Settings:\"Paràmetres\",\"Settings navigation\":\"Navegació d'opcions\",\"Show password\":\"Mostrar contrasenya\",\"Smileys & Emotion\":\"Cares i emocions\",\"Start slideshow\":\"Inicia la presentació\",Submit:\"Envia\",Symbols:\"Símbols\",\"Travel & Places\":\"Viatges i llocs\",\"Type to search time zone\":\"Escriviu per cercar la zona horària\",\"Unable to search the group\":\"No es pot cercar el grup\",\"Undo changes\":\"Desfés els canvis\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Escriu missatge, fes servir \"@\" per esmentar algú, fes servir \":\" per autocompletar emojis...'}},{locale:\"cs_CZ\",translations:{\"{tag} (invisible)\":\"{tag} (neviditelné)\",\"{tag} (restricted)\":\"{tag} (omezené)\",Actions:\"Akce\",Activities:\"Aktivity\",\"Animals & Nature\":\"Zvířata a příroda\",\"Anything shared with the same group of people will show up here\":\"Cokoli nasdíleného stejné skupině lidí se zobrazí zde\",\"Avatar of {displayName}\":\"Zástupný obrázek uživatele {displayName}\",\"Avatar of {displayName}, {status}\":\"Zástupný obrázek uživatele {displayName}, {status}\",\"Cancel changes\":\"Zrušit změny\",\"Change title\":\"Změnit nadpis\",Choose:\"Zvolit\",\"Clear text\":\"Čitelný text\",Close:\"Zavřít\",\"Close modal\":\"Zavřít dialogové okno\",\"Close navigation\":\"Zavřít navigaci\",\"Close sidebar\":\"Zavřít postranní panel\",\"Confirm changes\":\"Potvrdit změny\",Custom:\"Uživatelsky určené\",\"Edit item\":\"Upravit položku\",\"Error getting related resources\":\"Chyba při získávání souvisejících prostředků\",\"Error parsing svg\":\"Chyba při zpracovávání svg\",\"External documentation for {title}\":\"Externí dokumentace k {title}\",Favorite:\"Oblíbené\",Flags:\"Příznaky\",\"Food & Drink\":\"Jídlo a pití\",\"Frequently used\":\"Často používané\",Global:\"Globální\",\"Go back to the list\":\"Jít zpět na seznam\",\"Hide password\":\"Skrýt heslo\",\"Message limit of {count} characters reached\":\"Dosaženo limitu počtu ({count}) znaků zprávy\",\"More items …\":\"Další položky…\",Next:\"Následující\",\"No emoji found\":\"Nenalezeno žádné emoji\",\"No results\":\"Nic nenalezeno\",Objects:\"Objekty\",Open:\"Otevřít\",'Open link to \"{resourceTitle}\"':\"Otevřít odkaz na „{resourceTitle}“\",\"Open navigation\":\"Otevřít navigaci\",\"Password is secure\":\"Heslo je bezpečné\",\"Pause slideshow\":\"Pozastavit prezentaci\",\"People & Body\":\"Lidé a tělo\",\"Pick an emoji\":\"Vybrat emoji\",\"Please select a time zone:\":\"Vyberte časovou zónu:\",Previous:\"Předchozí\",\"Related resources\":\"Související prostředky\",Search:\"Hledat\",\"Search results\":\"Výsledky hledání\",\"Select a tag\":\"Vybrat štítek\",Settings:\"Nastavení\",\"Settings navigation\":\"Pohyb po nastavení\",\"Show password\":\"Zobrazit heslo\",\"Smileys & Emotion\":\"Úsměvy a emoce\",\"Start slideshow\":\"Spustit prezentaci\",Submit:\"Odeslat\",Symbols:\"Symboly\",\"Travel & Places\":\"Cestování a místa\",\"Type to search time zone\":\"Psaním vyhledejte časovou zónu\",\"Unable to search the group\":\"Nedaří se hledat skupinu\",\"Undo changes\":\"Vzít změny zpět\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':\"Napište zprávu – pokud chcete někoho zmínit, napište před jeho uživatelským jménem „@“ (zavináč); automatické doplňování emotikonů zahájíte napsáním „:“ (dvojtečky)…\"}},{locale:\"da\",translations:{\"{tag} (invisible)\":\"{tag} (usynlig)\",\"{tag} (restricted)\":\"{tag} (begrænset)\",Actions:\"Handlinger\",Activities:\"Aktiviteter\",\"Animals & Nature\":\"Dyr & Natur\",\"Anything shared with the same group of people will show up here\":\"Alt der deles med samme gruppe af personer vil vises her\",\"Avatar of {displayName}\":\"Avatar af {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar af {displayName}, {status}\",\"Cancel changes\":\"Annuller ændringer\",\"Change title\":\"Ret titel\",Choose:\"Vælg\",\"Clear text\":\"Ryd tekst\",Close:\"Luk\",\"Close modal\":\"Luk vindue\",\"Close navigation\":\"Luk navigation\",\"Close sidebar\":\"Luk sidepanel\",\"Confirm changes\":\"Bekræft ændringer\",Custom:\"Brugerdefineret\",\"Edit item\":\"Rediger emne\",\"Error getting related resources\":\"Kunne ikke hente tilknyttede data\",\"Error parsing svg\":\"Fejl ved analysering af svg\",\"External documentation for {title}\":\"Ekstern dokumentation for {title}\",Favorite:\"Favorit\",Flags:\"Flag\",\"Food & Drink\":\"Mad & Drikke\",\"Frequently used\":\"Ofte brugt\",Global:\"Global\",\"Go back to the list\":\"Tilbage til listen\",\"Hide password\":\"Skjul kodeord\",\"Message limit of {count} characters reached\":\"Begrænsning på {count} tegn er nået\",\"More items …\":\"Mere ...\",Next:\"Videre\",\"No emoji found\":\"Ingen emoji fundet\",\"No results\":\"Ingen resultater\",Objects:\"Objekter\",Open:\"Åbn\",'Open link to \"{resourceTitle}\"':'Åbn link til \"{resourceTitle}\"',\"Open navigation\":\"Åbn navigation\",\"Password is secure\":\"Kodeordet er sikkert\",\"Pause slideshow\":\"Suspender fremvisning\",\"People & Body\":\"Mennesker & Menneskekroppen\",\"Pick an emoji\":\"Vælg en emoji\",\"Please select a time zone:\":\"Vælg venligst en tidszone:\",Previous:\"Forrige\",\"Related resources\":\"Relaterede emner\",Search:\"Søg\",\"Search results\":\"Søgeresultater\",\"Select a tag\":\"Vælg et mærke\",Settings:\"Indstillinger\",\"Settings navigation\":\"Naviger i indstillinger\",\"Show password\":\"Vis kodeord\",\"Smileys & Emotion\":\"Smileys & Emotion\",\"Start slideshow\":\"Start fremvisning\",Submit:\"Send\",Symbols:\"Symboler\",\"Travel & Places\":\"Rejser & Rejsemål\",\"Type to search time zone\":\"Indtast for at søge efter tidszone\",\"Unable to search the group\":\"Kan ikke søge på denne gruppe\",\"Undo changes\":\"Fortryd ændringer\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Skriv besked, brug \"@\" for at nævne nogen, brug \":\" til emoji-autofuldførelse ...'}},{locale:\"de\",translations:{\"{tag} (invisible)\":\"{tag} (unsichtbar)\",\"{tag} (restricted)\":\"{tag} (eingeschränkt)\",Actions:\"Aktionen\",Activities:\"Aktivitäten\",\"Animals & Nature\":\"Tiere & Natur\",\"Anything shared with the same group of people will show up here\":\"Alles, das mit derselben Gruppe von Personen geteilt wird, wird hier angezeigt\",\"Avatar of {displayName}\":\"Avatar von {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar von {displayName}, {status}\",\"Cancel changes\":\"Änderungen verwerfen\",\"Change title\":\"Titel ändern\",Choose:\"Auswählen\",\"Clear text\":\"Klartext\",Close:\"Schließen\",\"Close modal\":\"Modal schließen\",\"Close navigation\":\"Navigation schließen\",\"Close sidebar\":\"Seitenleiste schließen\",\"Confirm changes\":\"Änderungen bestätigen\",Custom:\"Benutzerdefiniert\",\"Edit item\":\"Objekt bearbeiten\",\"Error getting related resources\":\"Fehler beim Abrufen verwandter Ressourcen\",\"Error parsing svg\":\"Fehler beim Einlesen der SVG\",\"External documentation for {title}\":\"Externe Dokumentation für {title}\",Favorite:\"Favorit\",Flags:\"Flaggen\",\"Food & Drink\":\"Essen & Trinken\",\"Frequently used\":\"Häufig verwendet\",Global:\"Global\",\"Go back to the list\":\"Zurück zur Liste\",\"Hide password\":\"Passwort verbergen\",\"Message limit of {count} characters reached\":\"Nachrichtenlimit von {count} Zeichen erreicht\",\"More items …\":\"Weitere Elemente …\",Next:\"Weiter\",\"No emoji found\":\"Kein Emoji gefunden\",\"No results\":\"Keine Ergebnisse\",Objects:\"Gegenstände\",Open:\"Öffnen\",'Open link to \"{resourceTitle}\"':'Link zu \"{resourceTitle}\" öffnen',\"Open navigation\":\"Navigation öffnen\",\"Password is secure\":\"Passwort ist sicher\",\"Pause slideshow\":\"Diashow pausieren\",\"People & Body\":\"Menschen & Körper\",\"Pick an emoji\":\"Ein Emoji auswählen\",\"Please select a time zone:\":\"Bitte wählen Sie eine Zeitzone:\",Previous:\"Vorherige\",\"Related resources\":\"Verwandte Ressourcen\",Search:\"Suche\",\"Search results\":\"Suchergebnisse\",\"Select a tag\":\"Schlagwort auswählen\",Settings:\"Einstellungen\",\"Settings navigation\":\"Einstellungen für die Navigation\",\"Show password\":\"Passwort anzeigen\",\"Smileys & Emotion\":\"Smileys & Emotionen\",\"Start slideshow\":\"Diashow starten\",Submit:\"Einreichen\",Symbols:\"Symbole\",\"Travel & Places\":\"Reisen & Orte\",\"Type to search time zone\":\"Tippen, um Zeitzone zu suchen\",\"Unable to search the group\":\"Die Gruppe konnte nicht durchsucht werden\",\"Undo changes\":\"Änderungen rückgängig machen\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Nachricht schreiben, \"@\" um jemanden zu erwähnen, \":\" für die automatische Vervollständigung von Emojis …'}},{locale:\"de_DE\",translations:{\"{tag} (invisible)\":\"{tag} (unsichtbar)\",\"{tag} (restricted)\":\"{tag} (eingeschränkt)\",Actions:\"Aktionen\",Activities:\"Aktivitäten\",\"Animals & Nature\":\"Tiere & Natur\",\"Anything shared with the same group of people will show up here\":\"Alles, das mit derselben Gruppe von Personen geteilt wird, wird hier angezeigt\",\"Avatar of {displayName}\":\"Avatar von {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar von {displayName}, {status}\",\"Cancel changes\":\"Änderungen verwerfen\",\"Change title\":\"Titel ändern\",Choose:\"Auswählen\",\"Clear text\":\"Klartext\",Close:\"Schließen\",\"Close modal\":\"Modal schließen\",\"Close navigation\":\"Navigation schließen\",\"Close sidebar\":\"Seitenleiste schließen\",\"Confirm changes\":\"Änderungen bestätigen\",Custom:\"Benutzerdefiniert\",\"Edit item\":\"Objekt bearbeiten\",\"Error getting related resources\":\"Fehler beim Abrufen verwandter Ressourcen\",\"Error parsing svg\":\"Fehler beim Einlesen der SVG\",\"External documentation for {title}\":\"Externe Dokumentation für {title}\",Favorite:\"Favorit\",Flags:\"Flaggen\",\"Food & Drink\":\"Essen & Trinken\",\"Frequently used\":\"Häufig verwendet\",Global:\"Global\",\"Go back to the list\":\"Zurück zur Liste\",\"Hide password\":\"Passwort verbergen\",\"Message limit of {count} characters reached\":\"Nachrichtenlimit von {count} Zeichen erreicht\",\"More items …\":\"Weitere Elemente …\",Next:\"Weiter\",\"No emoji found\":\"Kein Emoji gefunden\",\"No results\":\"Keine Ergebnisse\",Objects:\"Objekte\",Open:\"Öffnen\",'Open link to \"{resourceTitle}\"':'Link zu \"{resourceTitle}\" öffnen',\"Open navigation\":\"Navigation öffnen\",\"Password is secure\":\"Passwort ist sicher\",\"Pause slideshow\":\"Diashow pausieren\",\"People & Body\":\"Menschen & Körper\",\"Pick an emoji\":\"Ein Emoji auswählen\",\"Please select a time zone:\":\"Bitte eine Zeitzone auswählen:\",Previous:\"Vorherige\",\"Related resources\":\"Verwandte Ressourcen\",Search:\"Suche\",\"Search results\":\"Suchergebnisse\",\"Select a tag\":\"Schlagwort auswählen\",Settings:\"Einstellungen\",\"Settings navigation\":\"Einstellungen für die Navigation\",\"Show password\":\"Passwort anzeigen\",\"Smileys & Emotion\":\"Smileys & Emotionen\",\"Start slideshow\":\"Diashow starten\",Submit:\"Einreichen\",Symbols:\"Symbole\",\"Travel & Places\":\"Reisen & Orte\",\"Type to search time zone\":\"Tippen, um eine Zeitzone zu suchen\",\"Unable to search the group\":\"Die Gruppe kann nicht durchsucht werden\",\"Undo changes\":\"Änderungen rückgängig machen\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Nachricht schreiben, \"@\" um jemanden zu erwähnen, \":\" für die automatische Vervollständigung von Emojis …'}},{locale:\"el\",translations:{\"{tag} (invisible)\":\"{tag} (αόρατο)\",\"{tag} (restricted)\":\"{tag} (περιορισμένο)\",Actions:\"Ενέργειες\",Activities:\"Δραστηριότητες\",\"Animals & Nature\":\"Ζώα & Φύση\",\"Anything shared with the same group of people will show up here\":\"Οτιδήποτε μοιράζεται με την ίδια ομάδα ατόμων θα εμφανίζεται εδώ\",\"Avatar of {displayName}\":\"Άβαταρ του {displayName}\",\"Avatar of {displayName}, {status}\":\"Άβαταρ του {displayName}, {status}\",\"Cancel changes\":\"Ακύρωση αλλαγών\",\"Change title\":\"Αλλαγή τίτλου\",Choose:\"Επιλογή\",\"Clear text\":\"Εκκαθάριση κειμένου\",Close:\"Κλείσιμο\",\"Close modal\":\"Βοηθητικό κλείσιμο\",\"Close navigation\":\"Κλείσιμο πλοήγησης\",\"Close sidebar\":\"Κλείσιμο πλευρικής μπάρας\",\"Confirm changes\":\"Επιβεβαίωση αλλαγών\",Custom:\"Προσαρμογή\",\"Edit item\":\"Επεξεργασία\",\"Error getting related resources\":\"Σφάλμα λήψης σχετικών πόρων\",\"Error parsing svg\":\"Σφάλμα ανάλυσης svg\",\"External documentation for {title}\":\"Εξωτερική τεκμηρίωση για {title}\",Favorite:\"Αγαπημένα\",Flags:\"Σημαίες\",\"Food & Drink\":\"Φαγητό & Ποτό\",\"Frequently used\":\"Συχνά χρησιμοποιούμενο\",Global:\"Καθολικό\",\"Go back to the list\":\"Επιστροφή στην αρχική λίστα \",\"Hide password\":\"Απόκρυψη κωδικού πρόσβασης\",\"Message limit of {count} characters reached\":\"Συμπληρώθηκε το όριο των {count} χαρακτήρων του μηνύματος\",\"More items …\":\"Περισσότερα στοιχεία …\",Next:\"Επόμενο\",\"No emoji found\":\"Δεν βρέθηκε emoji\",\"No results\":\"Κανένα αποτέλεσμα\",Objects:\"Αντικείμενα\",Open:\"Άνοιγμα\",'Open link to \"{resourceTitle}\"':'Άνοιγμα συνδέσμου στο \"{resourceTitle}\"',\"Open navigation\":\"Άνοιγμα πλοήγησης\",\"Password is secure\":\"Ο κωδικός πρόσβασης είναι ασφαλής\",\"Pause slideshow\":\"Παύση προβολής διαφανειών\",\"People & Body\":\"Άνθρωποι & Σώμα\",\"Pick an emoji\":\"Επιλέξτε ένα emoji\",\"Please select a time zone:\":\"Παρακαλούμε επιλέξτε μια ζώνη ώρας:\",Previous:\"Προηγούμενο\",\"Related resources\":\"Σχετικοί πόροι\",Search:\"Αναζήτηση\",\"Search results\":\"Αποτελέσματα αναζήτησης\",\"Select a tag\":\"Επιλογή ετικέτας\",Settings:\"Ρυθμίσεις\",\"Settings navigation\":\"Πλοήγηση ρυθμίσεων\",\"Show password\":\"Εμφάνιση κωδικού πρόσβασης\",\"Smileys & Emotion\":\"Φατσούλες & Συναίσθημα\",\"Start slideshow\":\"Έναρξη προβολής διαφανειών\",Submit:\"Υποβολή\",Symbols:\"Σύμβολα\",\"Travel & Places\":\"Ταξίδια & Τοποθεσίες\",\"Type to search time zone\":\"Πληκτρολογήστε για αναζήτηση ζώνης ώρας\",\"Unable to search the group\":\"Δεν είναι δυνατή η αναζήτηση της ομάδας\",\"Undo changes\":\"Αναίρεση Αλλαγών\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Γράψτε μήνυμα, χρησιμοποιείστε \"@\" για να αναφέρετε κάποιον, χρησιμοποιείστε \":\" για αυτόματη συμπλήρωση emoji …'}},{locale:\"en_GB\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (restricted)\",Actions:\"Actions\",Activities:\"Activities\",\"Animals & Nature\":\"Animals & Nature\",\"Anything shared with the same group of people will show up here\":\"Anything shared with the same group of people will show up here\",\"Avatar of {displayName}\":\"Avatar of {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar of {displayName}, {status}\",\"Cancel changes\":\"Cancel changes\",\"Change title\":\"Change title\",Choose:\"Choose\",\"Clear text\":\"Clear text\",Close:\"Close\",\"Close modal\":\"Close modal\",\"Close navigation\":\"Close navigation\",\"Close sidebar\":\"Close sidebar\",\"Confirm changes\":\"Confirm changes\",Custom:\"Custom\",\"Edit item\":\"Edit item\",\"Error getting related resources\":\"Error getting related resources\",\"Error parsing svg\":\"Error parsing svg\",\"External documentation for {title}\":\"External documentation for {title}\",Favorite:\"Favourite\",Flags:\"Flags\",\"Food & Drink\":\"Food & Drink\",\"Frequently used\":\"Frequently used\",Global:\"Global\",\"Go back to the list\":\"Go back to the list\",\"Hide password\":\"Hide password\",\"Message limit of {count} characters reached\":\"Message limit of {count} characters reached\",\"More items …\":\"More items …\",Next:\"Next\",\"No emoji found\":\"No emoji found\",\"No results\":\"No results\",Objects:\"Objects\",Open:\"Open\",'Open link to \"{resourceTitle}\"':'Open link to \"{resourceTitle}\"',\"Open navigation\":\"Open navigation\",\"Password is secure\":\"Password is secure\",\"Pause slideshow\":\"Pause slideshow\",\"People & Body\":\"People & Body\",\"Pick an emoji\":\"Pick an emoji\",\"Please select a time zone:\":\"Please select a time zone:\",Previous:\"Previous\",\"Related resources\":\"Related resources\",Search:\"Search\",\"Search results\":\"Search results\",\"Select a tag\":\"Select a tag\",Settings:\"Settings\",\"Settings navigation\":\"Settings navigation\",\"Show password\":\"Show password\",\"Smileys & Emotion\":\"Smileys & Emotion\",\"Start slideshow\":\"Start slideshow\",Submit:\"Submit\",Symbols:\"Symbols\",\"Travel & Places\":\"Travel & Places\",\"Type to search time zone\":\"Type to search time zone\",\"Unable to search the group\":\"Unable to search the group\",\"Undo changes\":\"Undo changes\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …'}},{locale:\"eo\",translations:{\"{tag} (invisible)\":\"{tag} (kaŝita)\",\"{tag} (restricted)\":\"{tag} (limigita)\",Actions:\"Agoj\",Activities:\"Aktiveco\",\"Animals & Nature\":\"Bestoj & Naturo\",Choose:\"Elektu\",Close:\"Fermu\",Custom:\"Propra\",Flags:\"Flagoj\",\"Food & Drink\":\"Manĝaĵo & Trinkaĵo\",\"Frequently used\":\"Ofte uzataj\",\"Message limit of {count} characters reached\":\"La limo je {count} da literoj atingita\",Next:\"Sekva\",\"No emoji found\":\"La emoĝio forestas\",\"No results\":\"La rezulto forestas\",Objects:\"Objektoj\",\"Pause slideshow\":\"Payzi bildprezenton\",\"People & Body\":\"Homoj & Korpo\",\"Pick an emoji\":\"Elekti emoĝion \",Previous:\"Antaŭa\",Search:\"Serĉi\",\"Search results\":\"Serĉrezultoj\",\"Select a tag\":\"Elektu etikedon\",Settings:\"Agordo\",\"Settings navigation\":\"Agorda navigado\",\"Smileys & Emotion\":\"Ridoj kaj Emocioj\",\"Start slideshow\":\"Komenci bildprezenton\",Symbols:\"Signoj\",\"Travel & Places\":\"Vojaĵoj & Lokoj\",\"Unable to search the group\":\"Ne eblas serĉi en la grupo\",\"Write message, @ to mention someone …\":\"Mesaĝi, uzu @ por mencii iun ...\"}},{locale:\"es\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (restringido)\",Actions:\"Acciones\",Activities:\"Actividades\",\"Animals & Nature\":\"Animales y naturaleza\",\"Anything shared with the same group of people will show up here\":\"Cualquier cosa que sea compartida con el mismo grupo de personas se mostrará aquí\",\"Avatar of {displayName}\":\"Avatar de {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar de {displayName}, {status}\",\"Cancel changes\":\"Cancelar cambios\",\"Change title\":\"Cambiar título\",Choose:\"Elegir\",\"Clear text\":\"Limpiar texto\",Close:\"Cerrar\",\"Close modal\":\"Cerrar modal\",\"Close navigation\":\"Cerrar navegación\",\"Close sidebar\":\"Cerrar barra lateral\",\"Confirm changes\":\"Confirmar cambios\",Custom:\"Personalizado\",\"Edit item\":\"Editar elemento\",\"Error getting related resources\":\"Se encontró un error al obtener los recursos relacionados\",\"Error parsing svg\":\"Error procesando svg\",\"External documentation for {title}\":\"Documentacion externa de {title}\",Favorite:\"Favorito\",Flags:\"Banderas\",\"Food & Drink\":\"Comida y bebida\",\"Frequently used\":\"Usado con frecuenca\",Global:\"Global\",\"Go back to the list\":\"Volver a la lista\",\"Hide password\":\"Ocultar contraseña\",\"Message limit of {count} characters reached\":\"El mensaje ha alcanzado el límite de {count} caracteres\",\"More items …\":\"Más ítems...\",Next:\"Siguiente\",\"No emoji found\":\"No hay ningún emoji\",\"No results\":\" Ningún resultado\",Objects:\"Objetos\",Open:\"Abrir\",'Open link to \"{resourceTitle}\"':'Abrir enlace a \"{resourceTitle}\"',\"Open navigation\":\"Abrir navegación\",\"Password is secure\":\"La contraseña es segura\",\"Pause slideshow\":\"Pausar la presentación \",\"People & Body\":\"Personas y cuerpos\",\"Pick an emoji\":\"Elegir un emoji\",\"Please select a time zone:\":\"Por favor elige un huso de horario:\",Previous:\"Anterior\",\"Related resources\":\"Recursos relacionados\",Search:\"Buscar\",\"Search results\":\"Resultados de la búsqueda\",\"Select a tag\":\"Seleccione una etiqueta\",Settings:\"Ajustes\",\"Settings navigation\":\"Navegación por ajustes\",\"Show password\":\"Mostrar contraseña\",\"Smileys & Emotion\":\"Smileys y emoticonos\",\"Start slideshow\":\"Iniciar la presentación\",Submit:\"Enviar\",Symbols:\"Símbolos\",\"Travel & Places\":\"Viajes y lugares\",\"Type to search time zone\":\"Escribe para buscar un huso de horario\",\"Unable to search the group\":\"No es posible buscar en el grupo\",\"Undo changes\":\"Deshacer cambios\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Escribir mensaje, utilice \"@\" para mencionar a alguien, utilice \":\" para autocompletado de emojis ...'}},{locale:\"eu\",translations:{\"{tag} (invisible)\":\"{tag} (ikusezina)\",\"{tag} (restricted)\":\"{tag} (mugatua)\",Actions:\"Ekintzak\",Activities:\"Jarduerak\",\"Animals & Nature\":\"Animaliak eta Natura\",\"Anything shared with the same group of people will show up here\":\"Pertsona-talde berarekin partekatutako edozer agertuko da hemen\",\"Avatar of {displayName}\":\"{displayName}-(e)n irudia\",\"Avatar of {displayName}, {status}\":\"{displayName} -(e)n irudia, {status}\",\"Cancel changes\":\"Ezeztatu aldaketak\",\"Change title\":\"Aldatu titulua\",Choose:\"Aukeratu\",\"Clear text\":\"Garbitu testua\",Close:\"Itxi\",\"Close modal\":\"Itxi modala\",\"Close navigation\":\"Itxi nabigazioa\",\"Close sidebar\":\"Itxi albo-barra\",\"Confirm changes\":\"Baieztatu aldaketak\",Custom:\"Pertsonalizatua\",\"Edit item\":\"Editatu elementua\",\"Error getting related resources\":\"Errorea erlazionatutako baliabideak lortzerakoan\",\"Error parsing svg\":\"Errore bat gertatu da svg-a analizatzean\",\"External documentation for {title}\":\"Kanpoko dokumentazioa {title}(r)entzat\",Favorite:\"Gogokoa\",Flags:\"Banderak\",\"Food & Drink\":\"Janaria eta edariak\",\"Frequently used\":\"Askotan erabilia\",Global:\"Globala\",\"Go back to the list\":\"Bueltatu zerrendara\",\"Hide password\":\"Ezkutatu pasahitza\",\"Message limit of {count} characters reached\":\"Mezuaren {count} karaketere-limitera heldu zara\",\"More items …\":\"Elementu gehiago …\",Next:\"Hurrengoa\",\"No emoji found\":\"Ez da emojirik aurkitu\",\"No results\":\"Emaitzarik ez\",Objects:\"Objektuak\",Open:\"Ireki\",'Open link to \"{resourceTitle}\"':'Ireki esteka: \"{resourceTitle}\"',\"Open navigation\":\"Ireki nabigazioa\",\"Password is secure\":\"Pasahitza segurua da\",\"Pause slideshow\":\"Pausatu diaporama\",\"People & Body\":\"Jendea eta gorputza\",\"Pick an emoji\":\"Hautatu emoji bat\",\"Please select a time zone:\":\"Mesedez hautatu ordu-zona bat:\",Previous:\"Aurrekoa\",\"Related resources\":\"Erlazionatutako baliabideak\",Search:\"Bilatu\",\"Search results\":\"Bilaketa emaitzak\",\"Select a tag\":\"Hautatu etiketa bat\",Settings:\"Ezarpenak\",\"Settings navigation\":\"Nabigazio ezarpenak\",\"Show password\":\"Erakutsi pasahitza\",\"Smileys & Emotion\":\"Smileyak eta emozioa\",\"Start slideshow\":\"Hasi diaporama\",Submit:\"Bidali\",Symbols:\"Sinboloak\",\"Travel & Places\":\"Bidaiak eta lekuak\",\"Type to search time zone\":\"Idatzi ordu-zona bat bilatzeko\",\"Unable to search the group\":\"Ezin izan da taldea bilatu\",\"Undo changes\":\"Aldaketak desegin\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Idatzi mezua, erabili \"@\" norbait aipatzeko, erabili \":\" emojiak automatikoki osatzeko...'}},{locale:\"fi_FI\",translations:{\"{tag} (invisible)\":\"{tag} (näkymätön)\",\"{tag} (restricted)\":\"{tag} (rajoitettu)\",Actions:\"Toiminnot\",Activities:\"Aktiviteetit\",\"Animals & Nature\":\"Eläimet & luonto\",\"Avatar of {displayName}\":\"Käyttäjän {displayName} avatar\",\"Avatar of {displayName}, {status}\":\"Käyttäjän {displayName} avatar, {status}\",\"Cancel changes\":\"Peruuta muutokset\",Choose:\"Valitse\",Close:\"Sulje\",\"Close navigation\":\"Sulje navigaatio\",\"Confirm changes\":\"Vahvista muutokset\",Custom:\"Mukautettu\",\"Edit item\":\"Muokkaa kohdetta\",\"External documentation for {title}\":\"Ulkoinen dokumentaatio kohteelle {title}\",Flags:\"Liput\",\"Food & Drink\":\"Ruoka & juoma\",\"Frequently used\":\"Usein käytetyt\",Global:\"Yleinen\",\"Go back to the list\":\"Siirry takaisin listaan\",\"Message limit of {count} characters reached\":\"Viestin merkken enimmäisimäärä {count} täynnä \",Next:\"Seuraava\",\"No emoji found\":\"Emojia ei löytynyt\",\"No results\":\"Ei tuloksia\",Objects:\"Esineet & asiat\",\"Open navigation\":\"Avaa navigaatio\",\"Pause slideshow\":\"Keskeytä diaesitys\",\"People & Body\":\"Ihmiset & keho\",\"Pick an emoji\":\"Valitse emoji\",\"Please select a time zone:\":\"Valitse aikavyöhyke:\",Previous:\"Edellinen\",Search:\"Etsi\",\"Search results\":\"Hakutulokset\",\"Select a tag\":\"Valitse tagi\",Settings:\"Asetukset\",\"Settings navigation\":\"Asetusnavigaatio\",\"Smileys & Emotion\":\"Hymiöt & tunteet\",\"Start slideshow\":\"Aloita diaesitys\",Submit:\"Lähetä\",Symbols:\"Symbolit\",\"Travel & Places\":\"Matkustus & kohteet\",\"Type to search time zone\":\"Kirjoita etsiäksesi aikavyöhyke\",\"Unable to search the group\":\"Ryhmää ei voi hakea\",\"Undo changes\":\"Kumoa muutokset\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Kirjoita viesti, @ mainitaksesi käyttäjän, : emojin automaattitäydennykseen…\"}},{locale:\"fr\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (restreint)\",Actions:\"Actions\",Activities:\"Activités\",\"Animals & Nature\":\"Animaux & Nature\",\"Anything shared with the same group of people will show up here\":\"Tout ce qui est partagé avec le même groupe de personnes apparaîtra ici\",\"Avatar of {displayName}\":\"Avatar de {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar de {displayName}, {status}\",\"Cancel changes\":\"Annuler les modifications\",\"Change title\":\"Modifier le titre\",Choose:\"Choisir\",\"Clear text\":\"Effacer le texte\",Close:\"Fermer\",\"Close modal\":\"Fermer la fenêtre\",\"Close navigation\":\"Fermer la navigation\",\"Close sidebar\":\"Fermer la barre latérale\",\"Confirm changes\":\"Confirmer les modifications\",Custom:\"Personnalisé\",\"Edit item\":\"Éditer l'élément\",\"Error getting related resources\":\"Erreur à la récupération des ressources liées\",\"Error parsing svg\":\"Erreur d'analyse SVG\",\"External documentation for {title}\":\"Documentation externe pour {title}\",Favorite:\"Favori\",Flags:\"Drapeaux\",\"Food & Drink\":\"Nourriture & Boissons\",\"Frequently used\":\"Utilisés fréquemment\",Global:\"Global\",\"Go back to the list\":\"Retourner à la liste\",\"Hide password\":\"Cacher le mot de passe\",\"Message limit of {count} characters reached\":\"Limite de messages de {count} caractères atteinte\",\"More items …\":\"Plus d'éléments...\",Next:\"Suivant\",\"No emoji found\":\"Pas d’émoji trouvé\",\"No results\":\"Aucun résultat\",Objects:\"Objets\",Open:\"Ouvrir\",'Open link to \"{resourceTitle}\"':'Ouvrir le lien vers \"{resourceTitle}\"',\"Open navigation\":\"Ouvrir la navigation\",\"Password is secure\":\"Le mot de passe est sécurisé\",\"Pause slideshow\":\"Mettre le diaporama en pause\",\"People & Body\":\"Personnes & Corps\",\"Pick an emoji\":\"Choisissez un émoji\",\"Please select a time zone:\":\"Sélectionnez un fuseau horaire : \",Previous:\"Précédent\",\"Related resources\":\"Ressources liées\",Search:\"Chercher\",\"Search results\":\"Résultats de recherche\",\"Select a tag\":\"Sélectionnez une balise\",Settings:\"Paramètres\",\"Settings navigation\":\"Navigation dans les paramètres\",\"Show password\":\"Afficher le mot de passe\",\"Smileys & Emotion\":\"Smileys & Émotions\",\"Start slideshow\":\"Démarrer le diaporama\",Submit:\"Valider\",Symbols:\"Symboles\",\"Travel & Places\":\"Voyage & Lieux\",\"Type to search time zone\":\"Saisissez les premiers lettres pour rechercher un fuseau horaire\",\"Unable to search the group\":\"Impossible de chercher le groupe\",\"Undo changes\":\"Annuler les changements\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Écrire un message, utiliser \"@\" pour mentionner une personne, \":\" pour l\\'autocomplétion des émojis...'}},{locale:\"gl\",translations:{\"{tag} (invisible)\":\"{tag} (invisíbel)\",\"{tag} (restricted)\":\"{tag} (restrinxido)\",Actions:\"Accións\",Activities:\"Actividades\",\"Animals & Nature\":\"Animais e natureza\",\"Cancel changes\":\"Cancelar os cambios\",Choose:\"Escoller\",Close:\"Pechar\",\"Confirm changes\":\"Confirma os cambios\",Custom:\"Personalizado\",\"External documentation for {title}\":\"Documentación externa para {title}\",Flags:\"Bandeiras\",\"Food & Drink\":\"Comida e bebida\",\"Frequently used\":\"Usado con frecuencia\",\"Message limit of {count} characters reached\":\"Acadouse o límite de {count} caracteres por mensaxe\",Next:\"Seguinte\",\"No emoji found\":\"Non se atopou ningún «emoji»\",\"No results\":\"Sen resultados\",Objects:\"Obxectos\",\"Pause slideshow\":\"Pausar o diaporama\",\"People & Body\":\"Persoas e corpo\",\"Pick an emoji\":\"Escolla un «emoji»\",Previous:\"Anterir\",Search:\"Buscar\",\"Search results\":\"Resultados da busca\",\"Select a tag\":\"Seleccione unha etiqueta\",Settings:\"Axustes\",\"Settings navigation\":\"Navegación polos axustes\",\"Smileys & Emotion\":\"Sorrisos e emocións\",\"Start slideshow\":\"Iniciar o diaporama\",Submit:\"Enviar\",Symbols:\"Símbolos\",\"Travel & Places\":\"Viaxes e lugares\",\"Unable to search the group\":\"Non foi posíbel buscar o grupo\",\"Write message, @ to mention someone …\":\"Escriba a mensaxe, @ para mencionar a alguén…\"}},{locale:\"he\",translations:{\"{tag} (invisible)\":\"{tag} (נסתר)\",\"{tag} (restricted)\":\"{tag} (מוגבל)\",Actions:\"פעולות\",Activities:\"פעילויות\",\"Animals & Nature\":\"חיות וטבע\",Choose:\"בחירה\",Close:\"סגירה\",Custom:\"בהתאמה אישית\",Flags:\"דגלים\",\"Food & Drink\":\"מזון ומשקאות\",\"Frequently used\":\"בשימוש תדיר\",Next:\"הבא\",\"No emoji found\":\"לא נמצא אמוג׳י\",\"No results\":\"אין תוצאות\",Objects:\"חפצים\",\"Pause slideshow\":\"השהיית מצגת\",\"People & Body\":\"אנשים וגוף\",\"Pick an emoji\":\"נא לבחור אמוג׳י\",Previous:\"הקודם\",Search:\"חיפוש\",\"Search results\":\"תוצאות חיפוש\",\"Select a tag\":\"בחירת תגית\",Settings:\"הגדרות\",\"Smileys & Emotion\":\"חייכנים ורגשונים\",\"Start slideshow\":\"התחלת המצגת\",Symbols:\"סמלים\",\"Travel & Places\":\"טיולים ומקומות\",\"Unable to search the group\":\"לא ניתן לחפש בקבוצה\"}},{locale:\"hu_HU\",translations:{\"{tag} (invisible)\":\"{tag} (láthatatlan)\",\"{tag} (restricted)\":\"{tag} (korlátozott)\",Actions:\"Műveletek\",Activities:\"Tevékenységek\",\"Animals & Nature\":\"Állatok és természet\",\"Anything shared with the same group of people will show up here\":\"Minden, amit ugyanazzal a csoporttal oszt meg, itt fog megjelenni\",\"Avatar of {displayName}\":\"{displayName} profilképe\",\"Avatar of {displayName}, {status}\":\"{displayName} profilképe, {status}\",\"Cancel changes\":\"Változtatások elvetése\",\"Change title\":\"Cím megváltoztatása\",Choose:\"Válassszon\",\"Clear text\":\"Szöveg törlése\",Close:\"Bezárás\",\"Close modal\":\"Ablak bezárása\",\"Close navigation\":\"Navigáció bezárása\",\"Close sidebar\":\"Oldalsáv bezárása\",\"Confirm changes\":\"Változtatások megerősítése\",Custom:\"Egyéni\",\"Edit item\":\"Elem szerkesztése\",\"Error getting related resources\":\"Hiba a kapcsolódó erőforrások lekérésekor\",\"Error parsing svg\":\"Hiba az SVG feldolgozásakor\",\"External documentation for {title}\":\"Külső dokumentáció ehhez: {title}\",Favorite:\"Kedvenc\",Flags:\"Zászlók\",\"Food & Drink\":\"Étel és ital\",\"Frequently used\":\"Gyakran használt\",Global:\"Globális\",\"Go back to the list\":\"Ugrás vissza a listához\",\"Hide password\":\"Jelszó elrejtése\",\"Message limit of {count} characters reached\":\"{count} karakteres üzenetkorlát elérve\",\"More items …\":\"További elemek...\",Next:\"Következő\",\"No emoji found\":\"Nem található emodzsi\",\"No results\":\"Nincs találat\",Objects:\"Tárgyak\",Open:\"Megnyitás\",'Open link to \"{resourceTitle}\"':\"A(z) „{resourceTitle}” hivatkozásának megnyitása\",\"Open navigation\":\"Navigáció megnyitása\",\"Password is secure\":\"A jelszó biztonságos\",\"Pause slideshow\":\"Diavetítés szüneteltetése\",\"People & Body\":\"Emberek és test\",\"Pick an emoji\":\"Válasszon egy emodzsit\",\"Please select a time zone:\":\"Válasszon időzónát:\",Previous:\"Előző\",\"Related resources\":\"Kapcsolódó erőforrások\",Search:\"Keresés\",\"Search results\":\"Találatok\",\"Select a tag\":\"Válasszon címkét\",Settings:\"Beállítások\",\"Settings navigation\":\"Navigáció a beállításokban\",\"Show password\":\"Jelszó megjelenítése\",\"Smileys & Emotion\":\"Mosolyok és érzelmek\",\"Start slideshow\":\"Diavetítés indítása\",Submit:\"Beküldés\",Symbols:\"Szimbólumok\",\"Travel & Places\":\"Utazás és helyek\",\"Type to search time zone\":\"Gépeljen az időzóna kereséséhez\",\"Unable to search the group\":\"A csoport nem kereshető\",\"Undo changes\":\"Változtatások visszavonása\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':\"Írjon egy üzenetet, használja a „@”-ot valaki megemlítéséhet, illetve a „:”-ot az emodzsik automatikus kiegészítéséhez…\"}},{locale:\"is\",translations:{\"{tag} (invisible)\":\"{tag} (ósýnilegt)\",\"{tag} (restricted)\":\"{tag} (takmarkað)\",Actions:\"Aðgerðir\",Activities:\"Aðgerðir\",\"Animals & Nature\":\"Dýr og náttúra\",Choose:\"Velja\",Close:\"Loka\",Custom:\"Sérsniðið\",Flags:\"Flögg\",\"Food & Drink\":\"Matur og drykkur\",\"Frequently used\":\"Oftast notað\",Next:\"Næsta\",\"No emoji found\":\"Ekkert tjáningartákn fannst\",\"No results\":\"Engar niðurstöður\",Objects:\"Hlutir\",\"Pause slideshow\":\"Gera hlé á skyggnusýningu\",\"People & Body\":\"Fólk og líkami\",\"Pick an emoji\":\"Veldu tjáningartákn\",Previous:\"Fyrri\",Search:\"Leita\",\"Search results\":\"Leitarniðurstöður\",\"Select a tag\":\"Veldu merki\",Settings:\"Stillingar\",\"Smileys & Emotion\":\"Broskallar og tilfinningar\",\"Start slideshow\":\"Byrja skyggnusýningu\",Symbols:\"Tákn\",\"Travel & Places\":\"Staðir og ferðalög\",\"Unable to search the group\":\"Get ekki leitað í hópnum\"}},{locale:\"it\",translations:{\"{tag} (invisible)\":\"{tag} (invisibile)\",\"{tag} (restricted)\":\"{tag} (limitato)\",Actions:\"Azioni\",Activities:\"Attività\",\"Animals & Nature\":\"Animali e natura\",\"Anything shared with the same group of people will show up here\":\"Tutto ciò che è stato condiviso con lo stesso gruppo di persone viene visualizzato qui\",\"Avatar of {displayName}\":\"Avatar di {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar di {displayName}, {status}\",\"Cancel changes\":\"Annulla modifiche\",\"Change title\":\"Modifica il titolo\",Choose:\"Scegli\",\"Clear text\":\"Cancella il testo\",Close:\"Chiudi\",\"Close modal\":\"Chiudi il messaggio modale\",\"Close navigation\":\"Chiudi la navigazione\",\"Close sidebar\":\"Chiudi la barra laterale\",\"Confirm changes\":\"Conferma modifiche\",Custom:\"Personalizzato\",\"Edit item\":\"Modifica l'elemento\",\"Error getting related resources\":\"Errore nell'ottenere risorse correlate\",\"Error parsing svg\":\"Errore nell'analizzare l'svg\",\"External documentation for {title}\":\"Documentazione esterna per {title}\",Favorite:\"Preferito\",Flags:\"Bandiere\",\"Food & Drink\":\"Cibo e bevande\",\"Frequently used\":\"Usati di frequente\",Global:\"Globale\",\"Go back to the list\":\"Torna all'elenco\",\"Hide password\":\"Nascondi la password\",\"Message limit of {count} characters reached\":\"Limite dei messaggi di {count} caratteri raggiunto\",\"More items …\":\"Più elementi ...\",Next:\"Successivo\",\"No emoji found\":\"Nessun emoji trovato\",\"No results\":\"Nessun risultato\",Objects:\"Oggetti\",Open:\"Apri\",'Open link to \"{resourceTitle}\"':'Apri il link a \"{resourceTitle}\"',\"Open navigation\":\"Apri la navigazione\",\"Password is secure\":\"La password è sicura\",\"Pause slideshow\":\"Presentazione in pausa\",\"People & Body\":\"Persone e corpo\",\"Pick an emoji\":\"Scegli un emoji\",\"Please select a time zone:\":\"Si prega di selezionare un fuso orario:\",Previous:\"Precedente\",\"Related resources\":\"Risorse correlate\",Search:\"Cerca\",\"Search results\":\"Risultati di ricerca\",\"Select a tag\":\"Seleziona un'etichetta\",Settings:\"Impostazioni\",\"Settings navigation\":\"Navigazione delle impostazioni\",\"Show password\":\"Mostra la password\",\"Smileys & Emotion\":\"Faccine ed emozioni\",\"Start slideshow\":\"Avvia presentazione\",Submit:\"Invia\",Symbols:\"Simboli\",\"Travel & Places\":\"Viaggi e luoghi\",\"Type to search time zone\":\"Digita per cercare un fuso orario\",\"Unable to search the group\":\"Impossibile cercare il gruppo\",\"Undo changes\":\"Cancella i cambiamenti\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Scrivi un messaggio, \"@\" per menzionare qualcuno, \":\" per il completamento automatico delle emoji ...'}},{locale:\"ja_JP\",translations:{\"{tag} (invisible)\":\"{タグ} (不可視)\",\"{tag} (restricted)\":\"{タグ} (制限付)\",Actions:\"操作\",Activities:\"アクティビティ\",\"Animals & Nature\":\"動物と自然\",\"Anything shared with the same group of people will show up here\":\"同じグループで共有しているものは、全てここに表示されます\",\"Avatar of {displayName}\":\"{displayName} のアバター\",\"Avatar of {displayName}, {status}\":\"{displayName}, {status} のアバター\",\"Cancel changes\":\"変更をキャンセル\",\"Change title\":\"タイトルを変更\",Choose:\"選択\",\"Clear text\":\"テキストをクリア\",Close:\"閉じる\",\"Close modal\":\"モーダルを閉じる\",\"Close navigation\":\"ナビゲーションを閉じる\",\"Close sidebar\":\"サイドバーを閉じる\",\"Confirm changes\":\"変更を承認\",Custom:\"カスタム\",\"Edit item\":\"編集\",\"Error getting related resources\":\"関連リソースの取得エラー\",\"Error parsing svg\":\"svgの解析エラー\",\"External documentation for {title}\":\"{title} のための添付文書\",Favorite:\"お気に入り\",Flags:\"国旗\",\"Food & Drink\":\"食べ物と飲み物\",\"Frequently used\":\"よく使うもの\",Global:\"全体\",\"Go back to the list\":\"リストに戻る\",\"Hide password\":\"パスワードを非表示\",\"Message limit of {count} characters reached\":\"{count} 文字のメッセージ上限に達しています\",\"More items …\":\"他のアイテム\",Next:\"次\",\"No emoji found\":\"絵文字が見つかりません\",\"No results\":\"なし\",Objects:\"物\",Open:\"開く\",'Open link to \"{resourceTitle}\"':'\"{resourceTitle}\"のリンクを開く',\"Open navigation\":\"ナビゲーションを開く\",\"Password is secure\":\"パスワードは保護されています\",\"Pause slideshow\":\"スライドショーを一時停止\",\"People & Body\":\"様々な人と体の部位\",\"Pick an emoji\":\"絵文字を選択\",\"Please select a time zone:\":\"タイムゾーンを選んで下さい:\",Previous:\"前\",\"Related resources\":\"関連リソース\",Search:\"検索\",\"Search results\":\"検索結果\",\"Select a tag\":\"タグを選択\",Settings:\"設定\",\"Settings navigation\":\"ナビゲーション設定\",\"Show password\":\"パスワードを表示\",\"Smileys & Emotion\":\"感情表現\",\"Start slideshow\":\"スライドショーを開始\",Submit:\"提出\",Symbols:\"記号\",\"Travel & Places\":\"旅行と場所\",\"Type to search time zone\":\"タイムゾーン検索のため入力してください\",\"Unable to search the group\":\"グループを検索できません\",\"Undo changes\":\"変更を取り消し\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'メッセージを記入、\"@\"でメンション、\":\"で絵文字の自動補完 ...'}},{locale:\"lt_LT\",translations:{\"{tag} (invisible)\":\"{tag} (nematoma)\",\"{tag} (restricted)\":\"{tag} (apribota)\",Actions:\"Veiksmai\",Activities:\"Veiklos\",\"Animals & Nature\":\"Gyvūnai ir gamta\",Choose:\"Pasirinkti\",Close:\"Užverti\",Custom:\"Tinkinti\",\"External documentation for {title}\":\"Išorinė {title} dokumentacija\",Flags:\"Vėliavos\",\"Food & Drink\":\"Maistas ir gėrimai\",\"Frequently used\":\"Dažniausiai naudoti\",\"Message limit of {count} characters reached\":\"Pasiekta {count} simbolių žinutės riba\",Next:\"Kitas\",\"No emoji found\":\"Nerasta jaustukų\",\"No results\":\"Nėra rezultatų\",Objects:\"Objektai\",\"Pause slideshow\":\"Pristabdyti skaidrių rodymą\",\"People & Body\":\"Žmonės ir kūnas\",\"Pick an emoji\":\"Pasirinkti jaustuką\",Previous:\"Ankstesnis\",Search:\"Ieškoti\",\"Search results\":\"Paieškos rezultatai\",\"Select a tag\":\"Pasirinkti žymę\",Settings:\"Nustatymai\",\"Settings navigation\":\"Naršymas nustatymuose\",\"Smileys & Emotion\":\"Šypsenos ir emocijos\",\"Start slideshow\":\"Pradėti skaidrių rodymą\",Submit:\"Pateikti\",Symbols:\"Simboliai\",\"Travel & Places\":\"Kelionės ir vietos\",\"Unable to search the group\":\"Nepavyko atlikti paiešką grupėje\",\"Write message, @ to mention someone …\":\"Rašykite žinutę, naudokite @ norėdami kažką paminėti…\"}},{locale:\"lv\",translations:{\"{tag} (invisible)\":\"{tag} (neredzams)\",\"{tag} (restricted)\":\"{tag} (ierobežots)\",Choose:\"Izvēlēties\",Close:\"Aizvērt\",Next:\"Nākamais\",\"No results\":\"Nav rezultātu\",\"Pause slideshow\":\"Pauzēt slaidrādi\",Previous:\"Iepriekšējais\",\"Select a tag\":\"Izvēlēties birku\",Settings:\"Iestatījumi\",\"Start slideshow\":\"Sākt slaidrādi\"}},{locale:\"mk\",translations:{\"{tag} (invisible)\":\"{tag} (невидливо)\",\"{tag} (restricted)\":\"{tag} (ограничено)\",Actions:\"Акции\",Activities:\"Активности\",\"Animals & Nature\":\"Животни & Природа\",\"Avatar of {displayName}\":\"Аватар на {displayName}\",\"Avatar of {displayName}, {status}\":\"Аватар на {displayName}, {status}\",\"Cancel changes\":\"Откажи ги промените\",\"Change title\":\"Промени наслов\",Choose:\"Избери\",Close:\"Затвори\",\"Close modal\":\"Затвори модал\",\"Close navigation\":\"Затвори навигација\",\"Confirm changes\":\"Потврди ги промените\",Custom:\"Прилагодени\",\"Edit item\":\"Уреди\",\"External documentation for {title}\":\"Надворешна документација за {title}\",Favorite:\"Фаворити\",Flags:\"Знамиња\",\"Food & Drink\":\"Храна & Пијалоци\",\"Frequently used\":\"Најчесто користени\",Global:\"Глобално\",\"Go back to the list\":\"Врати се на листата\",items:\"ставки\",\"Message limit of {count} characters reached\":\"Ограничувањето на должината на пораката од {count} карактери е надминато\",\"More {dashboardItemType} …\":\"Повеќе {dashboardItemType} …\",Next:\"Следно\",\"No emoji found\":\"Не се пронајдени емотикони\",\"No results\":\"Нема резултати\",Objects:\"Објекти\",Open:\"Отвори\",\"Open navigation\":\"Отвори навигација\",\"Pause slideshow\":\"Пузирај слајдшоу\",\"People & Body\":\"Луѓе & Тело\",\"Pick an emoji\":\"Избери емотикон\",\"Please select a time zone:\":\"Изберете временска зона:\",Previous:\"Предходно\",Search:\"Барај\",\"Search results\":\"Резултати од барувањето\",\"Select a tag\":\"Избери ознака\",Settings:\"Параметри\",\"Settings navigation\":\"Параметри за навигација\",\"Smileys & Emotion\":\"Смешковци & Емотикони\",\"Start slideshow\":\"Стартувај слајдшоу\",Submit:\"Испрати\",Symbols:\"Симболи\",\"Travel & Places\":\"Патувања & Места\",\"Type to search time zone\":\"Напишете за да пребарате временска зона\",\"Unable to search the group\":\"Неможе да се принајде групата\",\"Undo changes\":\"Врати ги промените\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Напиши порака, @ за да спомнете некого, : за емотинони автоатско комплетирање ...\"}},{locale:\"my\",translations:{\"{tag} (invisible)\":\"{tag} (ကွယ်ဝှက်ထား)\",\"{tag} (restricted)\":\"{tag} (ကန့်သတ်)\",Actions:\"လုပ်ဆောင်ချက်များ\",Activities:\"ပြုလုပ်ဆောင်တာများ\",\"Animals & Nature\":\"တိရစ္ဆာန်များနှင့် သဘာဝ\",\"Avatar of {displayName}\":\"{displayName} ၏ ကိုယ်ပွား\",\"Cancel changes\":\"ပြောင်းလဲမှုများ ပယ်ဖျက်ရန်\",Choose:\"ရွေးချယ်ရန်\",Close:\"ပိတ်ရန်\",\"Confirm changes\":\"ပြောင်းလဲမှုများ အတည်ပြုရန်\",Custom:\"အလိုကျချိန်ညှိမှု\",\"External documentation for {title}\":\"{title} အတွက် ပြင်ပ စာရွက်စာတမ်း\",Flags:\"အလံများ\",\"Food & Drink\":\"အစားအသောက်\",\"Frequently used\":\"မကြာခဏအသုံးပြုသော\",Global:\"ကမ္ဘာလုံးဆိုင်ရာ\",\"Message limit of {count} characters reached\":\"ကန့်သတ် စာလုံးရေ {count} လုံး ပြည့်ပါပြီ\",Next:\"နောက်သို့ဆက်ရန်\",\"No emoji found\":\"အီမိုဂျီ ရှာဖွေမတွေ့နိုင်ပါ\",\"No results\":\"ရလဒ်မရှိပါ\",Objects:\"အရာဝတ္ထုများ\",\"Pause slideshow\":\"စလိုက်ရှိုး ခေတ္တရပ်ရန်\",\"People & Body\":\"လူပုဂ္ဂိုလ်များနှင့် ခန္ဓာကိုယ်\",\"Pick an emoji\":\"အီမိုဂျီရွေးရန်\",\"Please select a time zone:\":\"ဒေသစံတော်ချိန် ရွေးချယ်ပေးပါ\",Previous:\"ယခင်\",Search:\"ရှာဖွေရန်\",\"Search results\":\"ရှာဖွေမှု ရလဒ်များ\",\"Select a tag\":\"tag ရွေးချယ်ရန်\",Settings:\"ချိန်ညှိချက်များ\",\"Settings navigation\":\"ချိန်ညှိချက်အညွှန်း\",\"Smileys & Emotion\":\"စမိုင်လီများနှင့် အီမိုရှင်း\",\"Start slideshow\":\"စလိုက်ရှိုးအား စတင်ရန်\",Submit:\"တင်သွင်းရန်\",Symbols:\"သင်္ကေတများ\",\"Travel & Places\":\"ခရီးသွားလာခြင်းနှင့် နေရာများ\",\"Type to search time zone\":\"ဒေသစံတော်ချိန်များ ရှာဖွေရန် စာရိုက်ပါ\",\"Unable to search the group\":\"အဖွဲ့အား ရှာဖွေ၍ မရနိုင်ပါ\",\"Write message, @ to mention someone …\":\"စာရေးသားရန်၊ တစ်စုံတစ်ဦးအား @ အသုံးပြု ရည်ညွှန်းရန်...\"}},{locale:\"nb_NO\",translations:{\"{tag} (invisible)\":\"{tag} (usynlig)\",\"{tag} (restricted)\":\"{tag} (beskyttet)\",Actions:\"Handlinger\",Activities:\"Aktiviteter\",\"Animals & Nature\":\"Dyr og natur\",\"Anything shared with the same group of people will show up here\":\"Alt som er delt med den samme gruppen vil vises her\",\"Avatar of {displayName}\":\"Avataren til {displayName}\",\"Avatar of {displayName}, {status}\":\"{displayName}'s avatar, {status}\",\"Cancel changes\":\"Avbryt endringer\",\"Change title\":\"Endre tittel\",Choose:\"Velg\",\"Clear text\":\"Fjern tekst\",Close:\"Lukk\",\"Close modal\":\"Lukk modal\",\"Close navigation\":\"Lukk navigasjon\",\"Close sidebar\":\"Lukk sidepanel\",\"Confirm changes\":\"Bekreft endringer\",Custom:\"Tilpasset\",\"Edit item\":\"Rediger\",\"Error getting related resources\":\"Feil ved henting av relaterte ressurser\",\"Error parsing svg\":\"Feil ved parsing av svg\",\"External documentation for {title}\":\"Ekstern dokumentasjon for {title}\",Favorite:\"Favoritt\",Flags:\"Flagg\",\"Food & Drink\":\"Mat og drikke\",\"Frequently used\":\"Ofte brukt\",Global:\"Global\",\"Go back to the list\":\"Gå tilbake til listen\",\"Hide password\":\"Skjul passord\",\"Message limit of {count} characters reached\":\"Karakter begrensing {count} nådd i melding\",\"More items …\":\"Flere gjenstander...\",Next:\"Neste\",\"No emoji found\":\"Fant ingen emoji\",\"No results\":\"Ingen resultater\",Objects:\"Objekter\",Open:\"Åpne\",'Open link to \"{resourceTitle}\"':'Åpne link til \"{resourceTitle}\"',\"Open navigation\":\"Åpne navigasjon\",\"Password is secure\":\"Passordet er sikkert\",\"Pause slideshow\":\"Pause lysbildefremvisning\",\"People & Body\":\"Mennesker og kropp\",\"Pick an emoji\":\"Velg en emoji\",\"Please select a time zone:\":\"Vennligst velg tidssone\",Previous:\"Forrige\",\"Related resources\":\"Relaterte ressurser\",Search:\"Søk\",\"Search results\":\"Søkeresultater\",\"Select a tag\":\"Velg en merkelapp\",Settings:\"Innstillinger\",\"Settings navigation\":\"Navigasjonsinstillinger\",\"Show password\":\"Vis passord\",\"Smileys & Emotion\":\"Smilefjes og følelser\",\"Start slideshow\":\"Start lysbildefremvisning\",Submit:\"Send\",Symbols:\"Symboler\",\"Travel & Places\":\"Reise og steder\",\"Type to search time zone\":\"Tast for å søke etter tidssone\",\"Unable to search the group\":\"Kunne ikke søke i gruppen\",\"Undo changes\":\"Tilbakestill endringer\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Skriv melding, bruk \"@\" for å nevne noen, bruk \":\" for autofullføring av emoji...'}},{locale:\"nl\",translations:{\"{tag} (invisible)\":\"{tag} (onzichtbaar)\",\"{tag} (restricted)\":\"{tag} (beperkt)\",Actions:\"Acties\",Activities:\"Activiteiten\",\"Animals & Nature\":\"Dieren & Natuur\",\"Avatar of {displayName}\":\"Avatar van {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar van {displayName}, {status}\",\"Cancel changes\":\"Wijzigingen annuleren\",Choose:\"Kies\",Close:\"Sluiten\",\"Close navigation\":\"Navigatie sluiten\",\"Confirm changes\":\"Wijzigingen bevestigen\",Custom:\"Aangepast\",\"Edit item\":\"Item bewerken\",\"External documentation for {title}\":\"Externe documentatie voor {title}\",Flags:\"Vlaggen\",\"Food & Drink\":\"Eten & Drinken\",\"Frequently used\":\"Vaak gebruikt\",Global:\"Globaal\",\"Go back to the list\":\"Ga terug naar de lijst\",\"Message limit of {count} characters reached\":\"Berichtlimiet van {count} karakters bereikt\",Next:\"Volgende\",\"No emoji found\":\"Geen emoji gevonden\",\"No results\":\"Geen resultaten\",Objects:\"Objecten\",\"Open navigation\":\"Navigatie openen\",\"Pause slideshow\":\"Pauzeer diavoorstelling\",\"People & Body\":\"Mensen & Lichaam\",\"Pick an emoji\":\"Kies een emoji\",\"Please select a time zone:\":\"Selecteer een tijdzone:\",Previous:\"Vorige\",Search:\"Zoeken\",\"Search results\":\"Zoekresultaten\",\"Select a tag\":\"Selecteer een label\",Settings:\"Instellingen\",\"Settings navigation\":\"Instellingen navigatie\",\"Smileys & Emotion\":\"Smileys & Emotie\",\"Start slideshow\":\"Start diavoorstelling\",Submit:\"Verwerken\",Symbols:\"Symbolen\",\"Travel & Places\":\"Reizen & Plaatsen\",\"Type to search time zone\":\"Type om de tijdzone te zoeken\",\"Unable to search the group\":\"Kan niet in de groep zoeken\",\"Undo changes\":\"Wijzigingen ongedaan maken\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Schrijf bericht, @ om iemand te noemen, : voor emoji auto-aanvullen ...\"}},{locale:\"oc\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (limit)\",Actions:\"Accions\",Choose:\"Causir\",Close:\"Tampar\",Next:\"Seguent\",\"No results\":\"Cap de resultat\",\"Pause slideshow\":\"Metre en pausa lo diaporama\",Previous:\"Precedent\",\"Select a tag\":\"Seleccionar una etiqueta\",Settings:\"Paramètres\",\"Start slideshow\":\"Lançar lo diaporama\"}},{locale:\"pl\",translations:{\"{tag} (invisible)\":\"{tag} (niewidoczna)\",\"{tag} (restricted)\":\"{tag} (ograniczona)\",Actions:\"Działania\",Activities:\"Aktywność\",\"Animals & Nature\":\"Zwierzęta i natura\",\"Anything shared with the same group of people will show up here\":\"Tutaj pojawi się wszystko, co zostało udostępnione tej samej grupie osób\",\"Avatar of {displayName}\":\"Awatar {displayName}\",\"Avatar of {displayName}, {status}\":\"Awatar {displayName}, {status}\",\"Cancel changes\":\"Anuluj zmiany\",\"Change title\":\"Zmień tytuł\",Choose:\"Wybierz\",\"Clear text\":\"Wyczyść tekst\",Close:\"Zamknij\",\"Close modal\":\"Zamknij modal\",\"Close navigation\":\"Zamknij nawigację\",\"Close sidebar\":\"Zamknij pasek boczny\",\"Confirm changes\":\"Potwierdź zmiany\",Custom:\"Zwyczajne\",\"Edit item\":\"Edytuj element\",\"Error getting related resources\":\"Błąd podczas pobierania powiązanych zasobów\",\"Error parsing svg\":\"Błąd podczas analizowania svg\",\"External documentation for {title}\":\"Dokumentacja zewnętrzna dla {title}\",Favorite:\"Ulubiony\",Flags:\"Flagi\",\"Food & Drink\":\"Jedzenie i picie\",\"Frequently used\":\"Często używane\",Global:\"Globalnie\",\"Go back to the list\":\"Powrót do listy\",\"Hide password\":\"Ukryj hasło\",\"Message limit of {count} characters reached\":\"Przekroczono limit wiadomości wynoszący {count} znaków\",\"More items …\":\"Więcej pozycji…\",Next:\"Następny\",\"No emoji found\":\"Nie znaleziono emoji\",\"No results\":\"Brak wyników\",Objects:\"Obiekty\",Open:\"Otwórz\",'Open link to \"{resourceTitle}\"':'Otwórz link do \"{resourceTitle}\"',\"Open navigation\":\"Otwórz nawigację\",\"Password is secure\":\"Hasło jest bezpieczne\",\"Pause slideshow\":\"Wstrzymaj pokaz slajdów\",\"People & Body\":\"Ludzie i ciało\",\"Pick an emoji\":\"Wybierz emoji\",\"Please select a time zone:\":\"Wybierz strefę czasową:\",Previous:\"Poprzedni\",\"Related resources\":\"Powiązane zasoby\",Search:\"Szukaj\",\"Search results\":\"Wyniki wyszukiwania\",\"Select a tag\":\"Wybierz etykietę\",Settings:\"Ustawienia\",\"Settings navigation\":\"Ustawienia nawigacji\",\"Show password\":\"Pokaż hasło\",\"Smileys & Emotion\":\"Buźki i emotikony\",\"Start slideshow\":\"Rozpocznij pokaz slajdów\",Submit:\"Wyślij\",Symbols:\"Symbole\",\"Travel & Places\":\"Podróże i miejsca\",\"Type to search time zone\":\"Wpisz, aby wyszukać strefę czasową\",\"Unable to search the group\":\"Nie można przeszukać grupy\",\"Undo changes\":\"Cofnij zmiany\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Napisz wiadomość, \"@\" aby o kimś wspomnieć, \":\" dla autouzupełniania emoji…'}},{locale:\"pt_BR\",translations:{\"{tag} (invisible)\":\"{tag} (invisível)\",\"{tag} (restricted)\":\"{tag} (restrito) \",Actions:\"Ações\",Activities:\"Atividades\",\"Animals & Nature\":\"Animais & Natureza\",\"Anything shared with the same group of people will show up here\":\"Qualquer coisa compartilhada com o mesmo grupo de pessoas aparecerá aqui\",\"Avatar of {displayName}\":\"Avatar de {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar de {displayName}, {status}\",\"Cancel changes\":\"Cancelar alterações\",\"Change title\":\"Alterar título\",Choose:\"Escolher\",\"Clear text\":\"Limpar texto\",Close:\"Fechar\",\"Close modal\":\"Fechar modal\",\"Close navigation\":\"Fechar navegação\",\"Close sidebar\":\"Fechar barra lateral\",\"Confirm changes\":\"Confirmar alterações\",Custom:\"Personalizado\",\"Edit item\":\"Editar item\",\"Error getting related resources\":\"Erro ao obter recursos relacionados\",\"Error parsing svg\":\"Erro ao analisar svg\",\"External documentation for {title}\":\"Documentação externa para {title}\",Favorite:\"Favorito\",Flags:\"Bandeiras\",\"Food & Drink\":\"Comida & Bebida\",\"Frequently used\":\"Mais usados\",Global:\"Global\",\"Go back to the list\":\"Volte para a lista\",\"Hide password\":\"Ocultar a senha\",\"Message limit of {count} characters reached\":\"Limite de mensagem de {count} caracteres atingido\",\"More items …\":\"Mais itens …\",Next:\"Próximo\",\"No emoji found\":\"Nenhum emoji encontrado\",\"No results\":\"Sem resultados\",Objects:\"Objetos\",Open:\"Aberto\",'Open link to \"{resourceTitle}\"':'Abrir link para \"{resourceTitle}\"',\"Open navigation\":\"Abrir navegação\",\"Password is secure\":\"A senha é segura\",\"Pause slideshow\":\"Pausar apresentação de slides\",\"People & Body\":\"Pessoas & Corpo\",\"Pick an emoji\":\"Escolha um emoji\",\"Please select a time zone:\":\"Selecione um fuso horário: \",Previous:\"Anterior\",\"Related resources\":\"Recursos relacionados\",Search:\"Pesquisar\",\"Search results\":\"Resultados da pesquisa\",\"Select a tag\":\"Selecionar uma tag\",Settings:\"Configurações\",\"Settings navigation\":\"Navegação de configurações\",\"Show password\":\"Mostrar senha\",\"Smileys & Emotion\":\"Smiles & Emoções\",\"Start slideshow\":\"Iniciar apresentação de slides\",Submit:\"Enviar\",Symbols:\"Símbolo\",\"Travel & Places\":\"Viagem & Lugares\",\"Type to search time zone\":\"Digite para pesquisar o fuso horário \",\"Unable to search the group\":\"Não foi possível pesquisar o grupo\",\"Undo changes\":\"Desfazer modificações\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Escreva mensagens, use \"@\" para mencionar algum, use \":\" for autocompletar emoji …'}},{locale:\"pt_PT\",translations:{\"{tag} (invisible)\":\"{tag} (invisivel)\",\"{tag} (restricted)\":\"{tag} (restrito)\",Actions:\"Ações\",Choose:\"Escolher\",Close:\"Fechar\",Next:\"Seguinte\",\"No results\":\"Sem resultados\",\"Pause slideshow\":\"Pausar diaporama\",Previous:\"Anterior\",\"Select a tag\":\"Selecionar uma etiqueta\",Settings:\"Definições\",\"Start slideshow\":\"Iniciar diaporama\",\"Unable to search the group\":\"Não é possível pesquisar o grupo\"}},{locale:\"ro\",translations:{\"{tag} (invisible)\":\"{tag} (invizibil)\",\"{tag} (restricted)\":\"{tag} (restricționat)\",Actions:\"Acțiuni\",Activities:\"Activități\",\"Animals & Nature\":\"Animale și natură\",\"Anything shared with the same group of people will show up here\":\"Tot ceea ce este partajat cu același grup de persoane va fi afișat aici\",\"Avatar of {displayName}\":\"Avatarul lui {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatarul lui {displayName}, {status}\",\"Cancel changes\":\"Anulează modificările\",\"Change title\":\"Modificați titlul\",Choose:\"Alegeți\",\"Clear text\":\"Șterge textul\",Close:\"Închideți\",\"Close modal\":\"Închideți modulul\",\"Close navigation\":\"Închideți navigarea\",\"Close sidebar\":\"Închide bara laterală\",\"Confirm changes\":\"Confirmați modificările\",Custom:\"Personalizat\",\"Edit item\":\"Editați elementul\",\"Error getting related resources\":\" Eroare la returnarea resurselor legate\",\"Error parsing svg\":\"Eroare de analizare a svg\",\"External documentation for {title}\":\"Documentație externă pentru {title}\",Favorite:\"Favorit\",Flags:\"Marcaje\",\"Food & Drink\":\"Alimente și băuturi\",\"Frequently used\":\"Utilizate frecvent\",Global:\"Global\",\"Go back to the list\":\"Întoarceți-vă la listă\",\"Hide password\":\"Ascunde parola\",\"Message limit of {count} characters reached\":\"Limita mesajului de {count} caractere a fost atinsă\",\"More items …\":\"Mai multe articole ...\",Next:\"Următorul\",\"No emoji found\":\"Nu s-a găsit niciun emoji\",\"No results\":\"Nu există rezultate\",Objects:\"Obiecte\",Open:\"Deschideți\",'Open link to \"{resourceTitle}\"':'Deschide legătura la \"{resourceTitle}\"',\"Open navigation\":\"Deschideți navigația\",\"Password is secure\":\"Parola este sigură\",\"Pause slideshow\":\"Pauză prezentare de diapozitive\",\"People & Body\":\"Oameni și corp\",\"Pick an emoji\":\"Alege un emoji\",\"Please select a time zone:\":\"Vă rugăm să selectați un fus orar:\",Previous:\"Anterior\",\"Related resources\":\"Resurse legate\",Search:\"Căutare\",\"Search results\":\"Rezultatele căutării\",\"Select a tag\":\"Selectați o etichetă\",Settings:\"Setări\",\"Settings navigation\":\"Navigare setări\",\"Show password\":\"Arată parola\",\"Smileys & Emotion\":\"Zâmbete și emoții\",\"Start slideshow\":\"Începeți prezentarea de diapozitive\",Submit:\"Trimiteți\",Symbols:\"Simboluri\",\"Travel & Places\":\"Călătorii și locuri\",\"Type to search time zone\":\"Tastați pentru a căuta fusul orar\",\"Unable to search the group\":\"Imposibilitatea de a căuta în grup\",\"Undo changes\":\"Anularea modificărilor\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Scrie un mesaj, folosește \"@\" pentru a menționa pe cineva, folosește \":\" pentru autocompletarea cu emoji ...'}},{locale:\"ru\",translations:{\"{tag} (invisible)\":\"{tag} (невидимое)\",\"{tag} (restricted)\":\"{tag} (ограниченное)\",Actions:\"Действия \",Activities:\"События\",\"Animals & Nature\":\"Животные и природа \",\"Avatar of {displayName}\":\"Аватар {displayName}\",\"Avatar of {displayName}, {status}\":\"Фотография {displayName}, {status}\",\"Cancel changes\":\"Отменить изменения\",Choose:\"Выберите\",Close:\"Закрыть\",\"Close modal\":\"Закрыть модальное окно\",\"Close navigation\":\"Закрыть навигацию\",\"Confirm changes\":\"Подтвердить изменения\",Custom:\"Пользовательское\",\"Edit item\":\"Изменить элемент\",\"External documentation for {title}\":\"Внешняя документация для {title}\",Flags:\"Флаги\",\"Food & Drink\":\"Еда, напиток\",\"Frequently used\":\"Часто используемый\",Global:\"Глобальный\",\"Go back to the list\":\"Вернуться к списку\",items:\"элементов\",\"Message limit of {count} characters reached\":\"Достигнуто ограничение на количество символов в {count}\",\"More {dashboardItemType} …\":\"Больше {dashboardItemType} …\",Next:\"Следующее\",\"No emoji found\":\"Эмодзи не найдено\",\"No results\":\"Результаты отсуствуют\",Objects:\"Объекты\",Open:\"Открыть\",\"Open navigation\":\"Открыть навигацию\",\"Pause slideshow\":\"Приостановить показ слйдов\",\"People & Body\":\"Люди и тело\",\"Pick an emoji\":\"Выберите эмодзи\",\"Please select a time zone:\":\"Пожалуйста, выберите часовой пояс:\",Previous:\"Предыдущее\",Search:\"Поиск\",\"Search results\":\"Результаты поиска\",\"Select a tag\":\"Выберите метку\",Settings:\"Параметры\",\"Settings navigation\":\"Навигация по настройкам\",\"Smileys & Emotion\":\"Смайлики и эмоции\",\"Start slideshow\":\"Начать показ слайдов\",Submit:\"Утвердить\",Symbols:\"Символы\",\"Travel & Places\":\"Путешествия и места\",\"Type to search time zone\":\"Введите для поиска часового пояса\",\"Unable to search the group\":\"Невозможно найти группу\",\"Undo changes\":\"Отменить изменения\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Напишите сообщение, @ - чтобы упомянуть кого-то, : - для автозаполнения эмодзи …\"}},{locale:\"sk_SK\",translations:{\"{tag} (invisible)\":\"{tag} (neviditeľný)\",\"{tag} (restricted)\":\"{tag} (obmedzený)\",Actions:\"Akcie\",Activities:\"Aktivity\",\"Animals & Nature\":\"Zvieratá a príroda\",\"Avatar of {displayName}\":\"Avatar {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar {displayName}, {status}\",\"Cancel changes\":\"Zrušiť zmeny\",Choose:\"Vybrať\",Close:\"Zatvoriť\",\"Close navigation\":\"Zavrieť navigáciu\",\"Confirm changes\":\"Potvrdiť zmeny\",Custom:\"Zvyk\",\"Edit item\":\"Upraviť položku\",\"External documentation for {title}\":\"Externá dokumentácia pre {title}\",Flags:\"Vlajky\",\"Food & Drink\":\"Jedlo a nápoje\",\"Frequently used\":\"Často používané\",Global:\"Globálne\",\"Go back to the list\":\"Naspäť na zoznam\",\"Message limit of {count} characters reached\":\"Limit správy na {count} znakov dosiahnutý\",Next:\"Ďalší\",\"No emoji found\":\"Nenašli sa žiadne emodži\",\"No results\":\"Žiadne výsledky\",Objects:\"Objekty\",\"Open navigation\":\"Otvoriť navigáciu\",\"Pause slideshow\":\"Pozastaviť prezentáciu\",\"People & Body\":\"Ľudia a telo\",\"Pick an emoji\":\"Vyberte si emodži\",\"Please select a time zone:\":\"Prosím vyberte časovú zónu:\",Previous:\"Predchádzajúci\",Search:\"Hľadať\",\"Search results\":\"Výsledky vyhľadávania\",\"Select a tag\":\"Vybrať štítok\",Settings:\"Nastavenia\",\"Settings navigation\":\"Navigácia v nastaveniach\",\"Smileys & Emotion\":\"Smajlíky a emócie\",\"Start slideshow\":\"Začať prezentáciu\",Submit:\"Odoslať\",Symbols:\"Symboly\",\"Travel & Places\":\"Cestovanie a miesta\",\"Type to search time zone\":\"Začníte písať pre vyhľadávanie časovej zóny\",\"Unable to search the group\":\"Skupinu sa nepodarilo nájsť\",\"Undo changes\":\"Vrátiť zmeny\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Napíšte správu, @ ak chcete niekoho spomenúť, : pre automatické dopĺňanie emotikonov…\"}},{locale:\"sl\",translations:{\"{tag} (invisible)\":\"{tag} (nevidno)\",\"{tag} (restricted)\":\"{tag} (omejeno)\",Actions:\"Dejanja\",Activities:\"Dejavnosti\",\"Animals & Nature\":\"Živali in Narava\",\"Avatar of {displayName}\":\"Podoba {displayName}\",\"Avatar of {displayName}, {status}\":\"Prikazna slika {displayName}, {status}\",\"Cancel changes\":\"Prekliči spremembe\",\"Change title\":\"Spremeni naziv\",Choose:\"Izbor\",\"Clear text\":\"Počisti besedilo\",Close:\"Zapri\",\"Close modal\":\"Zapri pojavno okno\",\"Close navigation\":\"Zapri krmarjenje\",\"Close sidebar\":\"Zapri stransko vrstico\",\"Confirm changes\":\"Potrdi spremembe\",Custom:\"Po meri\",\"Edit item\":\"Uredi predmet\",\"Error getting related resources\":\"Napaka pridobivanja povezanih virov\",\"External documentation for {title}\":\"Zunanja dokumentacija za {title}\",Favorite:\"Priljubljeno\",Flags:\"Zastavice\",\"Food & Drink\":\"Hrana in Pijača\",\"Frequently used\":\"Pogostost uporabe\",Global:\"Splošno\",\"Go back to the list\":\"Vrni se na seznam\",\"Hide password\":\"Skrij geslo\",\"Message limit of {count} characters reached\":\"Dosežena omejitev {count} znakov na sporočilo.\",\"More items …\":\"Več predmetov ...\",Next:\"Naslednji\",\"No emoji found\":\"Ni najdenih izraznih ikon\",\"No results\":\"Ni zadetkov\",Objects:\"Predmeti\",Open:\"Odpri\",'Open link to \"{resourceTitle}\"':\"Odpri povezavo do »{resourceTitle}«\",\"Open navigation\":\"Odpri krmarjenje\",\"Password is secure\":\"Geslo je varno\",\"Pause slideshow\":\"Ustavi predstavitev\",\"People & Body\":\"Ljudje in Telo\",\"Pick a date\":\"Izbor datuma\",\"Pick a date and a time\":\"Izbor datuma in časa\",\"Pick a month\":\"Izbor meseca\",\"Pick a time\":\"Izbor časa\",\"Pick a week\":\"Izbor tedna\",\"Pick a year\":\"Izbor leta\",\"Pick an emoji\":\"Izbor izrazne ikone\",\"Please select a time zone:\":\"Izbor časovnega pasu:\",Previous:\"Predhodni\",\"Related resources\":\"Povezani viri\",Search:\"Iskanje\",\"Search results\":\"Zadetki iskanja\",\"Select a tag\":\"Izbor oznake\",Settings:\"Nastavitve\",\"Settings navigation\":\"Krmarjenje nastavitev\",\"Show password\":\"Pokaži geslo\",\"Smileys & Emotion\":\"Izrazne ikone\",\"Start slideshow\":\"Začni predstavitev\",Submit:\"Pošlji\",Symbols:\"Simboli\",\"Travel & Places\":\"Potovanja in Kraji\",\"Type to search time zone\":\"Vpišite niz za iskanje časovnega pasu\",\"Unable to search the group\":\"Ni mogoče iskati po skupini\",\"Undo changes\":\"Razveljavi spremembe\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Napišite sporočilo, za omembo pred ime postavite@, začnite z : za vstavljanje izraznih ikon …\"}},{locale:\"sr\",translations:{\"{tag} (invisible)\":\"{tag} (nevidljivo)\",\"{tag} (restricted)\":\"{tag} (ograničeno)\",Actions:\"Radnje\",Activities:\"Aktivnosti\",\"Animals & Nature\":\"Životinje i Priroda\",\"Avatar of {displayName}\":\"Avatar za {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar za {displayName}, {status}\",\"Cancel changes\":\"Otkaži izmene\",\"Change title\":\"Izmeni naziv\",Choose:\"Изаберите\",Close:\"Затвори\",\"Close modal\":\"Zatvori modal\",\"Close navigation\":\"Zatvori navigaciju\",\"Close sidebar\":\"Zatvori bočnu traku\",\"Confirm changes\":\"Potvrdite promene\",Custom:\"Po meri\",\"Edit item\":\"Uredi stavku\",\"External documentation for {title}\":\"Eksterna dokumentacija za {title}\",Favorite:\"Omiljeni\",Flags:\"Zastave\",\"Food & Drink\":\"Hrana i Piće\",\"Frequently used\":\"Često korišćeno\",Global:\"Globalno\",\"Go back to the list\":\"Natrag na listu\",items:\"stavke\",\"Message limit of {count} characters reached\":\"Dostignuto je ograničenje za poruke od {count} znakova\",\"More {dashboardItemType} …\":\"Više {dashboardItemType} …\",Next:\"Следеће\",\"No emoji found\":\"Nije pronađen nijedan emodži\",\"No results\":\"Нема резултата\",Objects:\"Objekti\",Open:\"Otvori\",\"Open navigation\":\"Otvori navigaciju\",\"Pause slideshow\":\"Паузирај слајд шоу\",\"People & Body\":\"Ljudi i Telo\",\"Pick an emoji\":\"Izaberi emodži\",\"Please select a time zone:\":\"Molimo izaberite vremensku zonu:\",Previous:\"Претходно\",Search:\"Pretraži\",\"Search results\":\"Rezultati pretrage\",\"Select a tag\":\"Изаберите ознаку\",Settings:\"Поставке\",\"Settings navigation\":\"Navigacija u podešavanjima\",\"Smileys & Emotion\":\"Smajli i Emocije\",\"Start slideshow\":\"Покрени слајд шоу\",Submit:\"Prihvati\",Symbols:\"Simboli\",\"Travel & Places\":\"Putovanja i Mesta\",\"Type to search time zone\":\"Ukucaj da pretražiš vremenske zone\",\"Unable to search the group\":\"Nije moguće pretražiti grupu\",\"Undo changes\":\"Poništi promene\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Napišite poruku, @ da pomenete nekoga, : za automatsko dovršavanje emodžija…\"}},{locale:\"sv\",translations:{\"{tag} (invisible)\":\"{tag} (osynlig)\",\"{tag} (restricted)\":\"{tag} (begränsad)\",Actions:\"Åtgärder\",Activities:\"Aktiviteter\",\"Animals & Nature\":\"Djur & Natur\",\"Anything shared with the same group of people will show up here\":\"Något som delats med samma grupp av personer kommer att visas här\",\"Avatar of {displayName}\":\"{displayName}s avatar\",\"Avatar of {displayName}, {status}\":\"{displayName}s avatar, {status}\",\"Cancel changes\":\"Avbryt ändringar\",\"Change title\":\"Ändra titel\",Choose:\"Välj\",\"Clear text\":\"Ta bort text\",Close:\"Stäng\",\"Close modal\":\"Stäng modal\",\"Close navigation\":\"Stäng navigering\",\"Close sidebar\":\"Stäng sidopanel\",\"Confirm changes\":\"Bekräfta ändringar\",Custom:\"Anpassad\",\"Edit item\":\"Ändra\",\"Error getting related resources\":\"Problem att hämta relaterade resurser\",\"Error parsing svg\":\"Fel vid inläsning av svg\",\"External documentation for {title}\":\"Extern dokumentation för {title}\",Favorite:\"Favorit\",Flags:\"Flaggor\",\"Food & Drink\":\"Mat & Dryck\",\"Frequently used\":\"Används ofta\",Global:\"Global\",\"Go back to the list\":\"Gå tillbaka till listan\",\"Hide password\":\"Göm lössenordet\",\"Message limit of {count} characters reached\":\"Meddelandegräns {count} tecken används\",\"More items …\":\"Fler objekt\",Next:\"Nästa\",\"No emoji found\":\"Hittade inga emojis\",\"No results\":\"Inga resultat\",Objects:\"Objekt\",Open:\"Öppna\",'Open link to \"{resourceTitle}\"':'Öppna länk till \"{resourceTitle}\"',\"Open navigation\":\"Öppna navigering\",\"Password is secure\":\"Lössenordet är säkert\",\"Pause slideshow\":\"Pausa bildspelet\",\"People & Body\":\"Kropp & Själ\",\"Pick an emoji\":\"Välj en emoji\",\"Please select a time zone:\":\"Välj tidszon:\",Previous:\"Föregående\",\"Related resources\":\"Relaterade resurser\",Search:\"Sök\",\"Search results\":\"Sökresultat\",\"Select a tag\":\"Välj en tag\",Settings:\"Inställningar\",\"Settings navigation\":\"Inställningsmeny\",\"Show password\":\"Visa lössenordet\",\"Smileys & Emotion\":\"Selfies & Känslor\",\"Start slideshow\":\"Starta bildspelet\",Submit:\"Skicka\",Symbols:\"Symboler\",\"Travel & Places\":\"Resor & Sevärdigheter\",\"Type to search time zone\":\"Skriv för att välja tidszon\",\"Unable to search the group\":\"Kunde inte söka i gruppen\",\"Undo changes\":\"Ångra ändringar\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'Skriv meddelande, använd \"@\" för att nämna någon, använd \":\" för automatiska emojiförslag ...'}},{locale:\"tr\",translations:{\"{tag} (invisible)\":\"{tag} (görünmez)\",\"{tag} (restricted)\":\"{tag} (kısıtlı)\",Actions:\"İşlemler\",Activities:\"Etkinlikler\",\"Animals & Nature\":\"Hayvanlar ve Doğa\",\"Anything shared with the same group of people will show up here\":\"Aynı kişi grubu ile paylaşılan herşey burada görüntülenir\",\"Avatar of {displayName}\":\"{displayName} avatarı\",\"Avatar of {displayName}, {status}\":\"{displayName}, {status} avatarı\",\"Cancel changes\":\"Değişiklikleri iptal et\",\"Change title\":\"Başlığı değiştir\",Choose:\"Seçin\",\"Clear text\":\"Metni temizle\",Close:\"Kapat\",\"Close modal\":\"Üste açılan pencereyi kapat\",\"Close navigation\":\"Gezinmeyi kapat\",\"Close sidebar\":\"Yan çubuğu kapat\",\"Confirm changes\":\"Değişiklikleri onayla\",Custom:\"Özel\",\"Edit item\":\"Ögeyi düzenle\",\"Error getting related resources\":\"İlgili kaynaklar alınırken sorun çıktı\",\"Error parsing svg\":\"svg işlenirken sorun çıktı\",\"External documentation for {title}\":\"{title} için dış belgeler\",Favorite:\"Sık kullanılanlara ekle\",Flags:\"Bayraklar\",\"Food & Drink\":\"Yeme ve İçme\",\"Frequently used\":\"Sık kullanılanlar\",Global:\"Evrensel\",\"Go back to the list\":\"Listeye dön\",\"Hide password\":\"Parolayı gizle\",\"Message limit of {count} characters reached\":\"{count} karakter ileti sınırına ulaşıldı\",\"More items …\":\"Diğer ögeler…\",Next:\"Sonraki\",\"No emoji found\":\"Herhangi bir emoji bulunamadı\",\"No results\":\"Herhangi bir sonuç bulunamadı\",Objects:\"Nesneler\",Open:\"Aç\",'Open link to \"{resourceTitle}\"':'\"{resourceTitle}\" bağlantısını aç',\"Open navigation\":\"Gezinmeyi aç\",\"Password is secure\":\"Parola güvenli\",\"Pause slideshow\":\"Slayt sunumunu duraklat\",\"People & Body\":\"İnsanlar ve Beden\",\"Pick an emoji\":\"Bir emoji seçin\",\"Please select a time zone:\":\"Lütfen bir saat dilimi seçin:\",Previous:\"Önceki\",\"Related resources\":\"İlgili kaynaklar\",Search:\"Arama\",\"Search results\":\"Arama sonuçları\",\"Select a tag\":\"Bir etiket seçin\",Settings:\"Ayarlar\",\"Settings navigation\":\"Gezinme ayarları\",\"Show password\":\"Parolayı görüntüle\",\"Smileys & Emotion\":\"İfadeler ve Duygular\",\"Start slideshow\":\"Slayt sunumunu başlat\",Submit:\"Gönder\",Symbols:\"Simgeler\",\"Travel & Places\":\"Gezi ve Yerler\",\"Type to search time zone\":\"Saat dilimi aramak için yazmaya başlayın\",\"Unable to search the group\":\"Grupta arama yapılamadı\",\"Undo changes\":\"Değişiklikleri geri al\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'İleti yazın, birini anmak için @, otomatik emoji tamamlamak için \":\" kullanın…'}},{locale:\"uk\",translations:{\"{tag} (invisible)\":\"{tag} (невидимий)\",\"{tag} (restricted)\":\"{tag} (обмежений)\",Actions:\"Дії\",Activities:\"Діяльність\",\"Animals & Nature\":\"Тварини та природа\",\"Avatar of {displayName}\":\"Аватар {displayName}\",\"Avatar of {displayName}, {status}\":\"Аватар {displayName}, {status}\",\"Cancel changes\":\"Скасувати зміни\",\"Change title\":\"Змінити назву\",Choose:\"ВиберітьВиберіть\",\"Clear text\":\"Очистити текст\",Close:\"Закрити\",\"Close modal\":\"Закрити модаль\",\"Close navigation\":\"Закрити навігацію\",\"Close sidebar\":\"Закрити бічну панель\",\"Confirm changes\":\"Підтвердити зміни\",Custom:\"Власне\",\"Edit item\":\"Редагувати елемент\",\"External documentation for {title}\":\"Зовнішня документація для {title}\",Favorite:\"Улюблений\",Flags:\"Прапори\",\"Food & Drink\":\"Їжа та напої\",\"Frequently used\":\"Найчастіші\",Global:\"Глобальний\",\"Go back to the list\":\"Повернутися до списку\",\"Hide password\":\"Приховати пароль\",items:\"елементи\",\"Message limit of {count} characters reached\":\"Вичерпано ліміт у {count} символів для повідомлення\",\"More {dashboardItemType} …\":\"Більше {dashboardItemType}…\",Next:\"Вперед\",\"No emoji found\":\"Емоційки відсутні\",\"No results\":\"Відсутні результати\",Objects:\"Об'єкти\",Open:\"Відкрити\",\"Open navigation\":\"Відкрити навігацію\",\"Password is secure\":\"Пароль безпечний\",\"Pause slideshow\":\"Пауза у показі слайдів\",\"People & Body\":\"Люди та жести\",\"Pick an emoji\":\"Виберіть емоційку\",\"Please select a time zone:\":\"Виберіть часовий пояс:\",Previous:\"Назад\",Search:\"Пошук\",\"Search results\":\"Результати пошуку\",\"Select a tag\":\"Виберіть позначку\",Settings:\"Налаштування\",\"Settings navigation\":\"Навігація у налаштуваннях\",\"Show password\":\"Показати пароль\",\"Smileys & Emotion\":\"Смайли та емоції\",\"Start slideshow\":\"Почати показ слайдів\",Submit:\"Надіслати\",Symbols:\"Символи\",\"Travel & Places\":\"Поїздки та місця\",\"Type to search time zone\":\"Введіть для пошуку часовий пояс\",\"Unable to search the group\":\"Неможливо шукати в групі\",\"Undo changes\":\"Скасувати зміни\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Напишіть повідомлення, @, щоб згадати когось, : для автозаповнення емодзі…\"}},{locale:\"zh_CN\",translations:{\"{tag} (invisible)\":\"{tag} (不可见)\",\"{tag} (restricted)\":\"{tag} (受限)\",Actions:\"行为\",Activities:\"活动\",\"Animals & Nature\":\"动物 & 自然\",\"Anything shared with the same group of people will show up here\":\"与同组用户分享的所有内容都会显示于此\",\"Avatar of {displayName}\":\"{displayName}的头像\",\"Avatar of {displayName}, {status}\":\"{displayName}的头像,{status}\",\"Cancel changes\":\"取消更改\",\"Change title\":\"更改标题\",Choose:\"选择\",\"Clear text\":\"清除文本\",Close:\"关闭\",\"Close modal\":\"关闭窗口\",\"Close navigation\":\"关闭导航\",\"Close sidebar\":\"关闭侧边栏\",\"Confirm changes\":\"确认更改\",Custom:\"自定义\",\"Edit item\":\"编辑项目\",\"Error getting related resources\":\"获取相关资源时出错\",\"Error parsing svg\":\"解析 svg 时出错\",\"External documentation for {title}\":\"{title}的外部文档\",Favorite:\"喜爱\",Flags:\"旗帜\",\"Food & Drink\":\"食物 & 饮品\",\"Frequently used\":\"经常使用\",Global:\"全局\",\"Go back to the list\":\"返回至列表\",\"Hide password\":\"隐藏密码\",\"Message limit of {count} characters reached\":\"已达到 {count} 个字符的消息限制\",\"More items …\":\"更多项目…\",Next:\"下一个\",\"No emoji found\":\"表情未找到\",\"No results\":\"无结果\",Objects:\"物体\",Open:\"打开\",'Open link to \"{resourceTitle}\"':'打开\"{resourceTitle}\"的连接',\"Open navigation\":\"开启导航\",\"Password is secure\":\"密码安全\",\"Pause slideshow\":\"暂停幻灯片\",\"People & Body\":\"人 & 身体\",\"Pick an emoji\":\"选择一个表情\",\"Please select a time zone:\":\"请选择一个时区:\",Previous:\"上一个\",\"Related resources\":\"相关资源\",Search:\"搜索\",\"Search results\":\"搜索结果\",\"Select a tag\":\"选择一个标签\",Settings:\"设置\",\"Settings navigation\":\"设置向导\",\"Show password\":\"显示密码\",\"Smileys & Emotion\":\"笑脸 & 情感\",\"Start slideshow\":\"开始幻灯片\",Submit:\"提交\",Symbols:\"符号\",\"Travel & Places\":\"旅游 & 地点\",\"Type to search time zone\":\"打字以搜索时区\",\"Unable to search the group\":\"无法搜索分组\",\"Undo changes\":\"撤销更改\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'写信息,使用\"@\"来提及某人,使用\":\"进行表情符号自动完成 ...'}},{locale:\"zh_HK\",translations:{\"{tag} (invisible)\":\"{tag} (隱藏)\",\"{tag} (restricted)\":\"{tag} (受限)\",Actions:\"動作\",Activities:\"活動\",\"Animals & Nature\":\"動物與自然\",\"Anything shared with the same group of people will show up here\":\"與同一組人共享的任何內容都會顯示在此處\",\"Avatar of {displayName}\":\"{displayName} 的頭像\",\"Avatar of {displayName}, {status}\":\"{displayName} 的頭像,{status}\",\"Cancel changes\":\"取消更改\",\"Change title\":\"更改標題\",Choose:\"選擇\",\"Clear text\":\"清除文本\",Close:\"關閉\",\"Close modal\":\"關閉模態\",\"Close navigation\":\"關閉導航\",\"Close sidebar\":\"關閉側邊欄\",\"Confirm changes\":\"確認更改\",Custom:\"自定義\",\"Edit item\":\"編輯項目\",\"Error getting related resources\":\"獲取相關資源出錯\",\"Error parsing svg\":\"解析 svg 時出錯\",\"External documentation for {title}\":\"{title} 的外部文檔\",Favorite:\"喜愛\",Flags:\"旗幟\",\"Food & Drink\":\"食物與飲料\",\"Frequently used\":\"經常使用\",Global:\"全球的\",\"Go back to the list\":\"返回清單\",\"Hide password\":\"隱藏密碼\",\"Message limit of {count} characters reached\":\"已達到訊息最多 {count} 字元限制\",\"More items …\":\"更多項目 …\",Next:\"下一個\",\"No emoji found\":\"未找到表情符號\",\"No results\":\"無結果\",Objects:\"物件\",Open:\"打開\",'Open link to \"{resourceTitle}\"':\"打開指向 “{resourceTitle}” 的鏈結\",\"Open navigation\":\"開啟導航\",\"Password is secure\":\"密碼是安全的\",\"Pause slideshow\":\"暫停幻燈片\",\"People & Body\":\"人物\",\"Pick an emoji\":\"選擇表情符號\",\"Please select a time zone:\":\"請選擇時區:\",Previous:\"上一個\",\"Related resources\":\"相關資源\",Search:\"搜尋\",\"Search results\":\"搜尋結果\",\"Select a tag\":\"選擇標籤\",Settings:\"設定\",\"Settings navigation\":\"設定值導覽\",\"Show password\":\"顯示密碼\",\"Smileys & Emotion\":\"表情\",\"Start slideshow\":\"開始幻燈片\",Submit:\"提交\",Symbols:\"標誌\",\"Travel & Places\":\"旅遊與景點\",\"Type to search time zone\":\"鍵入以搜索時區\",\"Unable to search the group\":\"無法搜尋群組\",\"Undo changes\":\"取消更改\",'Write message, use \"@\" to mention someone, use \":\" for emoji autocompletion …':'寫訊息,使用 \"@\" 來指代某人,使用 \":\" 用於表情符號自動填充 ...'}},{locale:\"zh_TW\",translations:{\"{tag} (invisible)\":\"{tag} (隱藏)\",\"{tag} (restricted)\":\"{tag} (受限)\",Actions:\"動作\",Activities:\"活動\",\"Animals & Nature\":\"動物與自然\",Choose:\"選擇\",Close:\"關閉\",Custom:\"自定義\",Flags:\"旗幟\",\"Food & Drink\":\"食物與飲料\",\"Frequently used\":\"最近使用\",\"Message limit of {count} characters reached\":\"已達到訊息最多 {count} 字元限制\",Next:\"下一個\",\"No emoji found\":\"未找到表情符號\",\"No results\":\"無結果\",Objects:\"物件\",\"Pause slideshow\":\"暫停幻燈片\",\"People & Body\":\"人物\",\"Pick an emoji\":\"選擇表情符號\",Previous:\"上一個\",Search:\"搜尋\",\"Search results\":\"搜尋結果\",\"Select a tag\":\"選擇標籤\",Settings:\"設定\",\"Settings navigation\":\"設定值導覽\",\"Smileys & Emotion\":\"表情\",\"Start slideshow\":\"開始幻燈片\",Symbols:\"標誌\",\"Travel & Places\":\"旅遊與景點\",\"Unable to search the group\":\"無法搜尋群組\",\"Write message, @ to mention someone …\":\"輸入訊息時可使用 @ 來標示某人...\"}}].forEach((t=>{const e={};for(const a in t.translations)t.translations[a].pluralId?e[a]={msgid:a,msgid_plural:t.translations[a].pluralId,msgstr:t.translations[a].msgstr}:e[a]={msgid:a,msgstr:[t.translations[a]]};n.addTranslation(t.locale,{translations:{\"\":e}})}));const o=n.build(),s=(o.ngettext.bind(o),o.gettext.bind(o))},6730:()=>{\"use strict\"},3351:(t,e,a)=>{\"use strict\";a.d(e,{iQ:()=>l});a(6730),a(8136),a(334),a(3132);var i=a(3607),n=a(768),o=a.n(n);const s=require(\"@nextcloud/capabilities\");var r=a(4262);const l={data:()=>({hasStatus:!1,userStatus:{status:null,message:null,icon:null}}),methods:{async fetchUserStatus(t){if(!t)return;const e=(0,s.getCapabilities)();if(Object.prototype.hasOwnProperty.call(e,\"user_status\")&&e.user_status.enabled&&(0,i.getCurrentUser)())try{const{data:e}=await o().get((0,r.generateOcsUrl)(\"apps/user_status/api/v1/statuses/{userId}\",{userId:t})),{status:a,message:i,icon:n}=e.ocs.data;this.userStatus.status=a,this.userStatus.message=i||\"\",this.userStatus.icon=n||\"\",this.hasStatus=!0}catch(t){var a,n;if(404===t.response.status&&0===(null===(a=t.response.data.ocs)||void 0===a||null===(n=a.data)||void 0===n?void 0:n.length))return;console.error(t)}}}}},8136:()=>{\"use strict\"},334:(t,e,a)=>{\"use strict\";var i=a(2734);new(a.n(i)())({data:()=>({isMobile:!1}),watch:{isMobile(t){this.$emit(\"changed\",t)}},created(){window.addEventListener(\"resize\",this.handleWindowResize),this.handleWindowResize()},beforeDestroy(){window.removeEventListener(\"resize\",this.handleWindowResize)},methods:{handleWindowResize(){this.isMobile=document.documentElement.clientWidth<1024}}})},3132:(t,e,a)=>{\"use strict\";a(4470),a(1390);require(\"escape-html\");require(\"striptags\");a(2734);const i=\"(?:^|\\\\s)\",n=\"(?:[^a-z]|$)\";new RegExp(\"\".concat(i,\"(@[a-zA-Z0-9_.@\\\\-']+)(\").concat(n,\")\"),\"gi\"),new RegExp(\"\".concat(i,\"(@"[a-zA-Z0-9 _.@\\\\-']+")(\").concat(n,\")\"),\"gi\")},6609:(t,e,a)=>{\"use strict\";function i(t,e,a){this.r=t,this.g=e,this.b=a}function n(t,e,a){const n=[];n.push(e);const o=function(t,e){const a=new Array(3);return a[0]=(e[1].r-e[0].r)/t,a[1]=(e[1].g-e[0].g)/t,a[2]=(e[1].b-e[0].b)/t,a}(t,[e,a]);for(let a=1;ao});const o=function(t){t||(t=6);const e=new i(182,70,157),a=new i(221,203,85),o=new i(0,130,201),s=n(t,e,a),r=n(t,a,o),l=n(t,o,e);return s.concat(r).concat(l)}},1390:(t,e,a)=>{\"use strict\";a.d(e,{Z:()=>o});const i=require(\"linkify-string\");var n=a.n(i);const o=t=>n()(t,{defaultProtocol:\"https\",target:\"_blank\",className:\"external linkified\",attributes:{rel:\"nofollow noopener noreferrer\"}})},1206:(t,e,a)=>{\"use strict\";a.d(e,{L:()=>i});a(4505);const i=function(){return Object.assign(window,{_nc_focus_trap:window._nc_focus_trap||[]}),window._nc_focus_trap}},4343:(t,e,a)=>{\"use strict\";a.d(e,{Z:()=>A});var i=a(7537),n=a.n(i),o=a(3645),s=a.n(o),r=a(1667),l=a.n(r),c=new URL(a(3423),a.b),u=new URL(a(2605),a.b),d=new URL(a(7127),a.b),m=s()(n()),p=l()(c),g=l()(u),h=l()(d);m.push([t.id,\".material-design-icon[data-v-b1ea54bc]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.avatardiv[data-v-b1ea54bc]{position:relative;display:inline-block;width:var(--size);height:var(--size)}.avatardiv--unknown[data-v-b1ea54bc]{position:relative;background-color:var(--color-main-background);white-space:normal}.avatardiv[data-v-b1ea54bc]:not(.avatardiv--unknown){background-color:var(--color-main-background) !important;box-shadow:0 0 5px rgba(0,0,0,.05) inset}.avatardiv--with-menu[data-v-b1ea54bc]{cursor:pointer}.avatardiv--with-menu[data-v-b1ea54bc] .v-popper{position:absolute;top:0;left:0}.avatardiv--with-menu .icon-more[data-v-b1ea54bc]{cursor:pointer;opacity:0}.avatardiv--with-menu:focus .icon-more[data-v-b1ea54bc],.avatardiv--with-menu:hover .icon-more[data-v-b1ea54bc]{opacity:1}.avatardiv--with-menu:focus img[data-v-b1ea54bc],.avatardiv--with-menu:hover img[data-v-b1ea54bc]{opacity:.3}.avatardiv--with-menu .icon-more[data-v-b1ea54bc],.avatardiv--with-menu img[data-v-b1ea54bc]{transition:opacity var(--animation-quick)}.avatardiv .avatardiv__initials-wrapper[data-v-b1ea54bc]{height:var(--size);width:var(--size);background-color:var(--color-main-background);border-radius:50%}.avatardiv .avatardiv__initials-wrapper .unknown[data-v-b1ea54bc]{position:absolute;top:0;left:0;display:block;width:100%;text-align:center;font-weight:normal}.avatardiv img[data-v-b1ea54bc]{width:100%;height:100%;object-fit:cover}.avatardiv .material-design-icon[data-v-b1ea54bc]{width:var(--size);height:var(--size)}.avatardiv .avatardiv__user-status[data-v-b1ea54bc]{position:absolute;right:-4px;bottom:-4px;max-height:18px;max-width:18px;height:40%;width:40%;line-height:15px;font-size:var(--default-font-size);border:2px solid var(--color-main-background);background-color:var(--color-main-background);background-repeat:no-repeat;background-size:16px;background-position:center;border-radius:50%}.acli:hover .avatardiv .avatardiv__user-status[data-v-b1ea54bc]{border-color:var(--color-background-hover);background-color:var(--color-background-hover)}.acli.active .avatardiv .avatardiv__user-status[data-v-b1ea54bc]{border-color:var(--color-primary-element-light);background-color:var(--color-primary-element-light)}.avatardiv .avatardiv__user-status--online[data-v-b1ea54bc]{background-image:url(\"+p+\")}.avatardiv .avatardiv__user-status--dnd[data-v-b1ea54bc]{background-image:url(\"+g+\");background-color:#fff}.avatardiv .avatardiv__user-status--away[data-v-b1ea54bc]{background-image:url(\"+h+\")}.avatardiv .avatardiv__user-status--icon[data-v-b1ea54bc]{border:none;background-color:rgba(0,0,0,0)}.avatardiv .popovermenu-wrapper[data-v-b1ea54bc]{position:relative;display:inline-block}.avatar-class-icon[data-v-b1ea54bc]{border-radius:50%;background-color:var(--color-background-darker);height:100%}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcAvatar/NcAvatar.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,4BACC,iBAAA,CACA,oBAAA,CACA,iBAAA,CACA,kBAAA,CAEA,qCACC,iBAAA,CACA,6CAAA,CACA,kBAAA,CAGD,qDAEC,wDAAA,CACA,wCAAA,CAGD,uCACC,cAAA,CACA,iDACC,iBAAA,CACA,KAAA,CACA,MAAA,CAED,kDACC,cAAA,CACA,SAAA,CAIA,gHACC,SAAA,CAED,kGACC,UAAA,CAGF,6FAEC,yCAAA,CAIF,yDACC,kBAAA,CACA,iBAAA,CACA,6CAAA,CACA,iBAAA,CAEA,kEACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,aAAA,CACA,UAAA,CACA,iBAAA,CACA,kBAAA,CAIF,gCAEC,UAAA,CACA,WAAA,CAEA,gBAAA,CAGD,kDACC,iBAAA,CACA,kBAAA,CAGD,oDACC,iBAAA,CACA,UAAA,CACA,WAAA,CACA,eAAA,CACA,cAAA,CACA,UAAA,CACA,SAAA,CACA,gBAAA,CACA,kCAAA,CACA,6CAAA,CACA,6CAAA,CACA,2BAAA,CACA,oBAAA,CACA,0BAAA,CACA,iBAAA,CAEA,gEACC,0CAAA,CACA,8CAAA,CAED,iEACC,+CAAA,CACA,mDAAA,CAGD,4DACC,wDAAA,CAED,yDACC,wDAAA,CACA,qBAAA,CAED,0DACC,wDAAA,CAED,0DACC,WAAA,CACA,8BAAA,CAIF,iDACC,iBAAA,CACA,oBAAA,CAIF,oCACC,iBAAA,CACA,+CAAA,CACA,WAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"18ada6c\\\"; @import 'variables'; @import 'material-icons';\\n\\n.avatardiv {\\n\\tposition: relative;\\n\\tdisplay: inline-block;\\n\\twidth: var(--size);\\n\\theight: var(--size);\\n\\n\\t&--unknown {\\n\\t\\tposition: relative;\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\twhite-space: normal;\\n\\t}\\n\\n\\t&:not(&--unknown) {\\n\\t\\t// White/black background for avatars with transparency\\n\\t\\tbackground-color: var(--color-main-background) !important;\\n\\t\\tbox-shadow: 0 0 5px rgba(0, 0, 0, 0.05) inset;\\n\\t}\\n\\n\\t&--with-menu {\\n\\t\\tcursor: pointer;\\n\\t\\t:deep(.v-popper) {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tleft: 0;\\n\\t\\t}\\n\\t\\t.icon-more {\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\topacity: 0;\\n\\t\\t}\\n\\t\\t&:focus,\\n\\t\\t&:hover {\\n\\t\\t\\t.icon-more {\\n\\t\\t\\t\\topacity: 1;\\n\\t\\t\\t}\\n\\t\\t\\timg {\\n\\t\\t\\t\\topacity: 0.3;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t.icon-more,\\n\\t\\timg {\\n\\t\\t\\ttransition: opacity var(--animation-quick);\\n\\t\\t}\\n\\t}\\n\\n\\t.avatardiv__initials-wrapper {\\n\\t\\theight: var(--size);\\n\\t\\twidth: var(--size);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tborder-radius: 50%;\\n\\n\\t\\t.unknown {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tleft: 0;\\n\\t\\t\\tdisplay: block;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\ttext-align: center;\\n\\t\\t\\tfont-weight: normal;\\n\\t\\t}\\n\\t}\\n\\n\\timg {\\n\\t\\t// Cover entire area\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\t\\t// Keep ratio\\n\\t\\tobject-fit: cover;\\n\\t}\\n\\n\\t.material-design-icon {\\n\\t\\twidth: var(--size);\\n\\t\\theight: var(--size);\\n\\t}\\n\\n\\t.avatardiv__user-status {\\n\\t\\tposition: absolute;\\n\\t\\tright: -4px;\\n\\t\\tbottom: -4px;\\n\\t\\tmax-height: 18px;\\n\\t\\tmax-width: 18px;\\n\\t\\theight: 40%;\\n\\t\\twidth: 40%;\\n\\t\\tline-height: 15px;\\n\\t\\tfont-size: var(--default-font-size);\\n\\t\\tborder: 2px solid var(--color-main-background);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tbackground-repeat: no-repeat;\\n\\t\\tbackground-size: 16px;\\n\\t\\tbackground-position: center;\\n\\t\\tborder-radius: 50%;\\n\\n\\t\\t.acli:hover & {\\n\\t\\t\\tborder-color: var(--color-background-hover);\\n\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t}\\n\\t\\t.acli.active & {\\n\\t\\t\\tborder-color: var(--color-primary-element-light);\\n\\t\\t\\tbackground-color: var(--color-primary-element-light);\\n\\t\\t}\\n\\n\\t\\t&--online{\\n\\t\\t\\tbackground-image: url('../../assets/status-icons/user-status-online.svg');\\n\\t\\t}\\n\\t\\t&--dnd{\\n\\t\\t\\tbackground-image: url('../../assets/status-icons/user-status-dnd.svg');\\n\\t\\t\\tbackground-color: #ffffff;\\n\\t\\t}\\n\\t\\t&--away{\\n\\t\\t\\tbackground-image: url('../../assets/status-icons/user-status-away.svg');\\n\\t\\t}\\n\\t\\t&--icon {\\n\\t\\t\\tborder: none;\\n\\t\\t\\tbackground-color: transparent;\\n\\t\\t}\\n\\t}\\n\\n\\t.popovermenu-wrapper {\\n\\t\\tposition: relative;\\n\\t\\tdisplay: inline-block;\\n\\t}\\n}\\n\\n.avatar-class-icon {\\n\\tborder-radius: 50%;\\n\\tbackground-color: var(--color-background-darker);\\n\\theight: 100%;\\n}\\n\\n\"],sourceRoot:\"\"}]);const A=m},5030:(t,e,a)=>{\"use strict\";a.d(e,{Z:()=>r});var i=a(7537),n=a.n(i),o=a(3645),s=a.n(o)()(n());s.push([t.id,\".material-design-icon[data-v-c4a9cada]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.loading-icon svg[data-v-c4a9cada]{animation:rotate var(--animation-duration, 0.8s) linear infinite}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcLoadingIcon/NcLoadingIcon.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,mCACC,gEAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"18ada6c\\\"; @import 'variables'; @import 'material-icons';\\n\\n.loading-icon svg{\\n\\tanimation: rotate var(--animation-duration, 0.8s) linear infinite;\\n}\\n\"],sourceRoot:\"\"}]);const r=s},1625:(t,e,a)=>{\"use strict\";a.d(e,{Z:()=>r});var i=a(7537),n=a.n(i),o=a(3645),s=a.n(o)()(n());s.push([t.id,\".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.resize-observer{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:rgba(0,0,0,0);pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}.v-popper--theme-dropdown.v-popper__popper{z-index:100000;top:0;left:0;display:block !important;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.v-popper--theme-dropdown.v-popper__popper .v-popper__inner{padding:0;color:var(--color-main-text);border-radius:var(--border-radius-large);overflow:hidden;background:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper .v-popper__arrow-container{position:absolute;z-index:1;width:0;height:0;border-style:solid;border-color:rgba(0,0,0,0);border-width:10px}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-container{bottom:-10px;border-bottom-width:0;border-top-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:-10px;border-top-width:0;border-bottom-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-container{left:-10px;border-left-width:0;border-right-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px;border-right-width:0;border-left-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[aria-hidden=true]{visibility:hidden;transition:opacity var(--animation-quick),visibility var(--animation-quick);opacity:0}.v-popper--theme-dropdown.v-popper__popper[aria-hidden=false]{visibility:visible;transition:opacity var(--animation-quick);opacity:1}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcPopover/NcPopover.vue\"],names:[],mappings:\"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,iBACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,UAAA,CACA,UAAA,CACA,WAAA,CACA,WAAA,CACA,8BAAA,CACA,mBAAA,CACA,aAAA,CACA,eAAA,CACA,SAAA,CAGD,wBACC,aAAA,CACA,iBAAA,CACA,KAAA,CACA,MAAA,CACA,WAAA,CACA,UAAA,CACA,eAAA,CACA,mBAAA,CACA,UAAA,CAMA,2CACC,cAAA,CACA,KAAA,CACA,MAAA,CACA,wBAAA,CAEA,sDAAA,CAEA,4DACC,SAAA,CACA,4BAAA,CACA,wCAAA,CACA,eAAA,CACA,uCAAA,CAGD,sEACC,iBAAA,CACA,SAAA,CACA,OAAA,CACA,QAAA,CACA,kBAAA,CACA,0BAAA,CACA,iBA1BW,CA6BZ,kGACC,YAAA,CACA,qBAAA,CACA,6CAAA,CAGD,qGACC,SAAA,CACA,kBAAA,CACA,gDAAA,CAGD,oGACC,UAAA,CACA,mBAAA,CACA,+CAAA,CAGD,mGACC,WAAA,CACA,oBAAA,CACA,8CAAA,CAGD,6DACC,iBAAA,CACA,2EAAA,CACA,SAAA,CAGD,8DACC,kBAAA,CACA,yCAAA,CACA,SAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"18ada6c\\\"; @import 'variables'; @import 'material-icons';\\n\\n\\n.resize-observer {\\n\\tposition:absolute;\\n\\ttop:0;\\n\\tleft:0;\\n\\tz-index:-1;\\n\\twidth:100%;\\n\\theight:100%;\\n\\tborder:none;\\n\\tbackground-color:transparent;\\n\\tpointer-events:none;\\n\\tdisplay:block;\\n\\toverflow:hidden;\\n\\topacity:0\\n}\\n\\n.resize-observer object {\\n\\tdisplay:block;\\n\\tposition:absolute;\\n\\ttop:0;\\n\\tleft:0;\\n\\theight:100%;\\n\\twidth:100%;\\n\\toverflow:hidden;\\n\\tpointer-events:none;\\n\\tz-index:-1\\n}\\n\\n$arrow-width: 10px;\\n\\n.v-popper--theme-dropdown {\\n\\t&.v-popper__popper {\\n\\t\\tz-index: 100000;\\n\\t\\ttop: 0;\\n\\t\\tleft: 0;\\n\\t\\tdisplay: block !important;\\n\\n\\t\\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\\n\\n\\t\\t.v-popper__inner {\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\tbackground: var(--color-main-background);\\n\\t\\t}\\n\\n\\t\\t.v-popper__arrow-container {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tz-index: 1;\\n\\t\\t\\twidth: 0;\\n\\t\\t\\theight: 0;\\n\\t\\t\\tborder-style: solid;\\n\\t\\t\\tborder-color: transparent;\\n\\t\\t\\tborder-width: $arrow-width;\\n\\t\\t}\\n\\n\\t\\t&[data-popper-placement^='top'] .v-popper__arrow-container {\\n\\t\\t\\tbottom: -$arrow-width;\\n\\t\\t\\tborder-bottom-width: 0;\\n\\t\\t\\tborder-top-color: var(--color-main-background);\\n\\t\\t}\\n\\n\\t\\t&[data-popper-placement^='bottom'] .v-popper__arrow-container {\\n\\t\\t\\ttop: -$arrow-width;\\n\\t\\t\\tborder-top-width: 0;\\n\\t\\t\\tborder-bottom-color: var(--color-main-background);\\n\\t\\t}\\n\\n\\t\\t&[data-popper-placement^='right'] .v-popper__arrow-container {\\n\\t\\t\\tleft: -$arrow-width;\\n\\t\\t\\tborder-left-width: 0;\\n\\t\\t\\tborder-right-color: var(--color-main-background);\\n\\t\\t}\\n\\n\\t\\t&[data-popper-placement^='left'] .v-popper__arrow-container {\\n\\t\\t\\tright: -$arrow-width;\\n\\t\\t\\tborder-right-width: 0;\\n\\t\\t\\tborder-left-color: var(--color-main-background);\\n\\t\\t}\\n\\n\\t\\t&[aria-hidden='true'] {\\n\\t\\t\\tvisibility: hidden;\\n\\t\\t\\ttransition: opacity var(--animation-quick), visibility var(--animation-quick);\\n\\t\\t\\topacity: 0;\\n\\t\\t}\\n\\n\\t\\t&[aria-hidden='false'] {\\n\\t\\t\\tvisibility: visible;\\n\\t\\t\\ttransition: opacity var(--animation-quick);\\n\\t\\t\\topacity: 1;\\n\\t\\t}\\n\\t}\\n}\\n\\n\"],sourceRoot:\"\"}]);const r=s},2:(t,e,a)=>{\"use strict\";a.d(e,{Z:()=>r});var i=a(7537),n=a.n(i),o=a(3645),s=a.n(o)()(n());s.push([t.id,\".material-design-icon[data-v-31ffd2d4]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}ul[data-v-31ffd2d4]{display:flex;flex-direction:column;gap:4px}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcPopoverMenu/NcPopoverMenu.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,oBACC,YAAA,CACA,qBAAA,CACA,OAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"18ada6c\\\"; @import 'variables'; @import 'material-icons';\\n\\nul {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: 4px;\\n}\\n\"],sourceRoot:\"\"}]);const r=s},408:(t,e,a)=>{\"use strict\";a.d(e,{Z:()=>r});var i=a(7537),n=a.n(i),o=a(3645),s=a.n(o)()(n());s.push([t.id,'.material-design-icon[data-v-127b0c62]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}li[data-v-127b0c62]{display:flex;flex:0 0 auto}li.hidden[data-v-127b0c62]{display:none}li>button[data-v-127b0c62],li>a[data-v-127b0c62],li>.menuitem[data-v-127b0c62]{cursor:pointer;line-height:44px;border:0;background-color:rgba(0,0,0,0);display:flex;align-items:flex-start;height:auto;margin:0;padding:0;font-weight:normal;box-shadow:none;width:100%;color:var(--color-main-text);white-space:nowrap;opacity:.7}li>button span[class^=icon-][data-v-127b0c62],li>button span[class*=\" icon-\"][data-v-127b0c62],li>button[class^=icon-][data-v-127b0c62],li>button[class*=\" icon-\"][data-v-127b0c62],li>a span[class^=icon-][data-v-127b0c62],li>a span[class*=\" icon-\"][data-v-127b0c62],li>a[class^=icon-][data-v-127b0c62],li>a[class*=\" icon-\"][data-v-127b0c62],li>.menuitem span[class^=icon-][data-v-127b0c62],li>.menuitem span[class*=\" icon-\"][data-v-127b0c62],li>.menuitem[class^=icon-][data-v-127b0c62],li>.menuitem[class*=\" icon-\"][data-v-127b0c62]{min-width:0;min-height:0;background-position:14px center;background-size:16px}li>button span[class^=icon-][data-v-127b0c62],li>button span[class*=\" icon-\"][data-v-127b0c62],li>a span[class^=icon-][data-v-127b0c62],li>a span[class*=\" icon-\"][data-v-127b0c62],li>.menuitem span[class^=icon-][data-v-127b0c62],li>.menuitem span[class*=\" icon-\"][data-v-127b0c62]{padding:22px 0 22px 44px}li>button:not([class^=icon-]):not([class*=icon-])>span[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>button:not([class^=icon-]):not([class*=icon-])>input[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>button:not([class^=icon-]):not([class*=icon-])>form[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>a:not([class^=icon-]):not([class*=icon-])>span[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>a:not([class^=icon-]):not([class*=icon-])>input[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>a:not([class^=icon-]):not([class*=icon-])>form[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>.menuitem:not([class^=icon-]):not([class*=icon-])>span[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>.menuitem:not([class^=icon-]):not([class*=icon-])>input[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>.menuitem:not([class^=icon-]):not([class*=icon-])>form[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child{margin-left:44px}li>button[class^=icon-][data-v-127b0c62],li>button[class*=\" icon-\"][data-v-127b0c62],li>a[class^=icon-][data-v-127b0c62],li>a[class*=\" icon-\"][data-v-127b0c62],li>.menuitem[class^=icon-][data-v-127b0c62],li>.menuitem[class*=\" icon-\"][data-v-127b0c62]{padding:0 14px 0 44px}li>button[data-v-127b0c62]:not(:disabled):hover,li>button[data-v-127b0c62]:not(:disabled):focus,li>button:not(:disabled).active[data-v-127b0c62],li>a[data-v-127b0c62]:not(:disabled):hover,li>a[data-v-127b0c62]:not(:disabled):focus,li>a:not(:disabled).active[data-v-127b0c62],li>.menuitem[data-v-127b0c62]:not(:disabled):hover,li>.menuitem[data-v-127b0c62]:not(:disabled):focus,li>.menuitem:not(:disabled).active[data-v-127b0c62]{opacity:1 !important}li>button.action[data-v-127b0c62],li>a.action[data-v-127b0c62],li>.menuitem.action[data-v-127b0c62]{padding:inherit !important}li>button>span[data-v-127b0c62],li>a>span[data-v-127b0c62],li>.menuitem>span[data-v-127b0c62]{cursor:pointer;white-space:nowrap}li>button>p[data-v-127b0c62],li>a>p[data-v-127b0c62],li>.menuitem>p[data-v-127b0c62]{width:150px;line-height:1.6em;padding:8px 0;white-space:normal;overflow:hidden;text-overflow:ellipsis}li>button>select[data-v-127b0c62],li>a>select[data-v-127b0c62],li>.menuitem>select[data-v-127b0c62]{margin:0;margin-left:6px}li>button[data-v-127b0c62]:not(:empty),li>a[data-v-127b0c62]:not(:empty),li>.menuitem[data-v-127b0c62]:not(:empty){padding-right:14px !important}li>button>img[data-v-127b0c62],li>a>img[data-v-127b0c62],li>.menuitem>img[data-v-127b0c62]{width:16px;height:16px;margin:14px}li>button>input.radio+label[data-v-127b0c62],li>button>input.checkbox+label[data-v-127b0c62],li>a>input.radio+label[data-v-127b0c62],li>a>input.checkbox+label[data-v-127b0c62],li>.menuitem>input.radio+label[data-v-127b0c62],li>.menuitem>input.checkbox+label[data-v-127b0c62]{padding:0 !important;width:100%}li>button>input.checkbox+label[data-v-127b0c62]::before,li>a>input.checkbox+label[data-v-127b0c62]::before,li>.menuitem>input.checkbox+label[data-v-127b0c62]::before{margin:-2px 13px 0}li>button>input.radio+label[data-v-127b0c62]::before,li>a>input.radio+label[data-v-127b0c62]::before,li>.menuitem>input.radio+label[data-v-127b0c62]::before{margin:-2px 12px 0}li>button>input[data-v-127b0c62]:not([type=radio]):not([type=checkbox]):not([type=image]),li>a>input[data-v-127b0c62]:not([type=radio]):not([type=checkbox]):not([type=image]),li>.menuitem>input[data-v-127b0c62]:not([type=radio]):not([type=checkbox]):not([type=image]){width:150px}li>button form[data-v-127b0c62],li>a form[data-v-127b0c62],li>.menuitem form[data-v-127b0c62]{display:flex;flex:1 1 auto}li>button form[data-v-127b0c62]:not(:first-child),li>a form[data-v-127b0c62]:not(:first-child),li>.menuitem form[data-v-127b0c62]:not(:first-child){margin-left:5px}li>button>span.hidden+form[data-v-127b0c62],li>button>span[style*=\"display:none\"]+form[data-v-127b0c62],li>a>span.hidden+form[data-v-127b0c62],li>a>span[style*=\"display:none\"]+form[data-v-127b0c62],li>.menuitem>span.hidden+form[data-v-127b0c62],li>.menuitem>span[style*=\"display:none\"]+form[data-v-127b0c62]{margin-left:0}li>button input[data-v-127b0c62],li>a input[data-v-127b0c62],li>.menuitem input[data-v-127b0c62]{min-width:44px;max-height:40px;margin:2px 0;flex:1 1 auto}li>button input[data-v-127b0c62]:not(:first-child),li>a input[data-v-127b0c62]:not(:first-child),li>.menuitem input[data-v-127b0c62]:not(:first-child){margin-left:5px}li:not(.hidden):not([style*=\"display:none\"]):first-of-type>button>form[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):first-of-type>button>input[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):first-of-type>a>form[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):first-of-type>a>input[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):first-of-type>.menuitem>form[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):first-of-type>.menuitem>input[data-v-127b0c62]{margin-top:12px}li:not(.hidden):not([style*=\"display:none\"]):last-of-type>button>form[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):last-of-type>button>input[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):last-of-type>a>form[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):last-of-type>a>input[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):last-of-type>.menuitem>form[data-v-127b0c62],li:not(.hidden):not([style*=\"display:none\"]):last-of-type>.menuitem>input[data-v-127b0c62]{margin-bottom:12px}li>button[data-v-127b0c62]{padding:0}li>button span[data-v-127b0c62]{opacity:1}',\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcPopoverMenu/NcPopoverMenuItem.vue\",\"webpack://./src/assets/variables.scss\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,oBACC,YAAA,CACA,aAAA,CAEA,2BACC,YAAA,CAGD,+EAGC,cAAA,CACA,gBCWe,CDVf,QAAA,CACA,8BAAA,CACA,YAAA,CACA,sBAAA,CACA,WAAA,CACA,QAAA,CACA,SAAA,CACA,kBAAA,CACA,eAAA,CACA,UAAA,CACA,4BAAA,CACA,kBAAA,CACA,UCgBe,CDbf,ohBAIC,WAAA,CACA,YAAA,CACA,+BAAA,CACA,oBCRS,CDWV,yRAIC,wBAAA,CAQC,ylCACC,gBC5BY,CDiCf,2PAEC,qBAAA,CAGD,6aAGC,oBAAA,CAID,oGACC,0BAAA,CAGD,8FACC,cAAA,CACA,kBAAA,CAID,qFACC,WAAA,CACA,iBAAA,CACA,aAAA,CACA,kBAAA,CAGA,eAAA,CACA,sBAAA,CAID,oGACC,QAAA,CACA,eAAA,CAID,mHACC,6BAAA,CAKD,2FACC,UC5ES,CD6ET,WC7ES,CD8ET,WC1EW,CD8EZ,mRAEC,oBAAA,CACA,UAAA,CAED,sKACC,kBAAA,CAED,6JACC,kBAAA,CAED,4QACC,WAAA,CAID,8FACC,YAAA,CACA,aAAA,CAGA,oJACC,eAAA,CAIF,oTAEC,aAAA,CAGD,iGACC,cCtHc,CDuHd,eAAA,CACA,YAAA,CACA,aAAA,CAEA,uJACC,eAAA,CAUA,+gBACC,eAAA,CAMD,ygBACC,kBAAA,CAKJ,2BACC,SAAA,CACA,gCACC,SCnIY\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"18ada6c\\\"; @import 'variables'; @import 'material-icons';\\n\\nli {\\n\\tdisplay: flex;\\n\\tflex: 0 0 auto;\\n\\n\\t&.hidden {\\n\\t\\tdisplay: none;\\n\\t}\\n\\n\\t> button,\\n\\t> a,\\n\\t> .menuitem {\\n\\t\\tcursor: pointer;\\n\\t\\tline-height: $clickable-area;\\n\\t\\tborder: 0;\\n\\t\\tbackground-color: transparent;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: flex-start;\\n\\t\\theight: auto;\\n\\t\\tmargin: 0;\\n\\t\\tpadding: 0;\\n\\t\\tfont-weight: normal;\\n\\t\\tbox-shadow: none;\\n\\t\\twidth: 100%;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\twhite-space: nowrap;\\n\\t\\topacity: $opacity_normal;\\n\\n\\t\\t// TODO split into individual components for readability\\n\\t\\tspan[class^='icon-'],\\n\\t\\tspan[class*=' icon-'],\\n\\t\\t&[class^='icon-'],\\n\\t\\t&[class*=' icon-'] {\\n\\t\\t\\tmin-width: 0; /* Overwrite icons*/\\n\\t\\t\\tmin-height: 0;\\n\\t\\t\\tbackground-position: #{$icon-margin} center;\\n\\t\\t\\tbackground-size: $icon-size;\\n\\t\\t}\\n\\n\\t\\tspan[class^='icon-'],\\n\\t\\tspan[class*=' icon-'] {\\n\\t\\t\\t/* Keep padding to define the width to\\n\\t\\t\\t\\tassure correct position of a possible text */\\n\\t\\t\\tpadding: #{math.div($clickable-area, 2)} 0 #{math.div($clickable-area, 2)} $clickable-area;\\n\\t\\t}\\n\\n\\t\\t// If no icons set, force left margin to align\\n\\t\\t&:not([class^='icon-']):not([class*='icon-']) {\\n\\t\\t\\t> span,\\n\\t\\t\\t> input,\\n\\t\\t\\t> form {\\n\\t\\t\\t\\t&:not([class^='icon-']):not([class*='icon-']):first-child {\\n\\t\\t\\t\\t\\tmargin-left: $clickable-area;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&[class^='icon-'],\\n\\t\\t&[class*=' icon-'] {\\n\\t\\t\\tpadding: 0 $icon-margin 0 $clickable-area;\\n\\t\\t}\\n\\n\\t\\t&:not(:disabled):hover,\\n\\t\\t&:not(:disabled):focus,\\n\\t\\t&:not(:disabled).active {\\n\\t\\t\\topacity: $opacity_full !important;\\n\\t\\t}\\n\\n\\t\\t/* prevent .action class to break the design */\\n\\t\\t&.action {\\n\\t\\t\\tpadding: inherit !important;\\n\\t\\t}\\n\\n\\t\\t> span {\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t}\\n\\n\\t\\t// long text area\\n\\t\\t> p {\\n\\t\\t\\twidth: 150px;\\n\\t\\t\\tline-height: 1.6em;\\n\\t\\t\\tpadding: 8px 0;\\n\\t\\t\\twhite-space: normal;\\n\\n\\t\\t\\t// in case there are no spaces like long email addresses\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t}\\n\\n\\t\\t// TODO: do we really supports it?\\n\\t\\t> select {\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tmargin-left: 6px;\\n\\t\\t}\\n\\n\\t\\t/* Add padding if contains icon+text */\\n\\t\\t&:not(:empty) {\\n\\t\\t\\tpadding-right: $icon-margin !important;\\n\\t\\t}\\n\\n\\t\\t/* DEPRECATED! old img in popover fallback\\n\\t\\t\\t* TODO: to remove */\\n\\t\\t> img {\\n\\t\\t\\twidth: $icon-size;\\n\\t\\t\\theight: $icon-size;\\n\\t\\t\\tmargin: $icon-margin;\\n\\t\\t}\\n\\n\\t\\t/* checkbox/radio fixes */\\n\\t\\t> input.radio + label,\\n\\t\\t> input.checkbox + label {\\n\\t\\t\\tpadding: 0 !important;\\n\\t\\t\\twidth: 100%;\\n\\t\\t}\\n\\t\\t> input.checkbox + label::before {\\n\\t\\t\\tmargin: -2px 13px 0;\\n\\t\\t}\\n\\t\\t> input.radio + label::before {\\n\\t\\t\\tmargin: -2px 12px 0;\\n\\t\\t}\\n\\t\\t> input:not([type=radio]):not([type=checkbox]):not([type=image]) {\\n\\t\\t\\twidth: 150px;\\n\\t\\t}\\n\\n\\t\\t// Forms & text inputs\\n\\t\\tform {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex: 1 1 auto;\\n\\t\\t\\t/* put a small space between text and form\\n\\t\\t\\t\\tif there is an element before */\\n\\t\\t\\t&:not(:first-child) {\\n\\t\\t\\t\\tmargin-left: 5px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t/* no margin if hidden span before */\\n\\t\\t> span.hidden + form,\\n\\t\\t> span[style*='display:none'] + form {\\n\\t\\t\\tmargin-left: 0;\\n\\t\\t}\\n\\t\\t/* Inputs inside popover supports text, submit & reset */\\n\\t\\tinput {\\n\\t\\t\\tmin-width: $clickable-area;\\n\\t\\t\\tmax-height: #{$clickable-area - 4px}; /* twice the element margin-y */\\n\\t\\t\\tmargin: 2px 0;\\n\\t\\t\\tflex: 1 1 auto;\\n\\t\\t\\t// space between inline inputs\\n\\t\\t\\t&:not(:first-child) {\\n\\t\\t\\t\\tmargin-left: 5px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t// TODO: do that in js, should be cleaner\\n\\t/* css hack, only first not hidden */\\n\\t&:not(.hidden):not([style*='display:none']) {\\n\\t\\t&:first-of-type {\\n\\t\\t\\t> button, > a, > .menuitem {\\n\\t\\t\\t\\t> form, > input {\\n\\t\\t\\t\\t\\tmargin-top: $icon-margin - 2px; // minus the input margin\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t&:last-of-type {\\n\\t\\t\\t> button, > a, > .menuitem {\\n\\t\\t\\t\\t> form, > input {\\n\\t\\t\\t\\t\\tmargin-bottom: $icon-margin - 2px; // minus the input margin\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\t> button {\\n\\t\\tpadding: 0;\\n\\t\\tspan {\\n\\t\\t\\topacity: $opacity_full;\\n\\t\\t}\\n\\t}\\n}\\n\",\"/**\\n * @copyright Copyright (c) 2019 John Molakvoæ \\n *\\n * @author John Molakvoæ \\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see .\\n *\\n */\\n\\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\\n// recommended is 48px\\n// 44px is what we choose and have very good visual-to-usability ratio\\n$clickable-area: 44px;\\n\\n// background icon size\\n// also used for the scss icon font\\n$icon-size: 16px;\\n\\n// icon padding for a $clickable-area width and a $icon-size icon\\n// ( 44px - 16px ) / 2\\n$icon-margin: math.div($clickable-area - $icon-size, 2);\\n\\n// transparency background for icons\\n$icon-focus-bg: rgba(127, 127, 127, .25);\\n\\n// popovermenu arrow width from the triangle center\\n$arrow-width: 9px;\\n\\n// opacities\\n$opacity_disabled: .5;\\n$opacity_normal: .7;\\n$opacity_full: 1;\\n\\n// menu round background hover feedback\\n// good looking on dark AND white bg\\n$action-background-hover: rgba(127, 127, 127, .25);\\n\\n// various structure data used in the \\n// `AppNavigation` component\\n$header-height: 50px;\\n$navigation-width: 300px;\\n\\n// mobile breakpoint\\n$breakpoint-mobile: 1024px;\\n\\n// top-bar spacing\\n$topbar-margin: 4px;\\n\\n// navigation spacing\\n$app-navigation-settings-margin: 3px;\\n\"],sourceRoot:\"\"}]);const r=s},5594:(t,e,a)=>{\"use strict\";a.d(e,{Z:()=>r});var i=a(7537),n=a.n(i),o=a(3645),s=a.n(o)()(n());s.push([t.id,\".material-design-icon[data-v-8a961b36]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.mention-bubble--primary .mention-bubble__content[data-v-8a961b36]{color:var(--color-primary-element-text);background-color:var(--color-primary-element)}.mention-bubble__wrapper[data-v-8a961b36]{max-width:150px;height:18px;vertical-align:text-bottom;display:inline-flex;align-items:center}.mention-bubble__content[data-v-8a961b36]{display:inline-flex;overflow:hidden;align-items:center;max-width:100%;height:20px;-webkit-user-select:none;user-select:none;padding-right:6px;padding-left:2px;border-radius:10px;background-color:var(--color-background-dark)}.mention-bubble__icon[data-v-8a961b36]{position:relative;width:16px;height:16px;border-radius:8px;background-color:var(--color-background-darker);background-repeat:no-repeat;background-position:center;background-size:12px}.mention-bubble__icon--with-avatar[data-v-8a961b36]{color:inherit;background-size:cover}.mention-bubble__title[data-v-8a961b36]{overflow:hidden;margin-left:2px;white-space:nowrap;text-overflow:ellipsis}.mention-bubble__title[data-v-8a961b36]::before{content:attr(title)}.mention-bubble__select[data-v-8a961b36]{position:absolute;z-index:-1;left:-1000px}\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/NcRichContenteditable/NcMentionBubble.vue\"],names:[],mappings:\"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CAAA,mECCC,uCAAA,CACA,6CAAA,CAGD,0CACC,eAXiB,CAajB,WAAA,CACA,0BAAA,CACA,mBAAA,CACA,kBAAA,CAGD,0CACC,mBAAA,CACA,eAAA,CACA,kBAAA,CACA,cAAA,CACA,WAzBc,CA0Bd,wBAAA,CACA,gBAAA,CACA,iBAAA,CACA,gBA3Be,CA4Bf,kBAAA,CACA,6CAAA,CAGD,uCACC,iBAAA,CACA,UAjCmB,CAkCnB,WAlCmB,CAmCnB,iBAAA,CACA,+CAAA,CACA,2BAAA,CACA,0BAAA,CACA,oBAAA,CAEA,oDACC,aAAA,CACA,qBAAA,CAIF,wCACC,eAAA,CACA,eAlDe,CAmDf,kBAAA,CACA,sBAAA,CAEA,gDACC,mBAAA,CAKF,yCACC,iBAAA,CACA,UAAA,CACA,YAAA\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"@use 'sass:math'; $scope_version:\\\"18ada6c\\\"; @import 'variables'; @import 'material-icons';\\n\\n$bubble-height: 20px;\\n$bubble-max-width: 150px;\\n$bubble-padding: 2px;\\n$bubble-avatar-size: $bubble-height - 2 * $bubble-padding;\\n\\n.mention-bubble {\\n\\t&--primary &__content {\\n\\t\\tcolor: var(--color-primary-element-text);\\n\\t\\tbackground-color: var(--color-primary-element);\\n\\t}\\n\\n\\t&__wrapper {\\n\\t\\tmax-width: $bubble-max-width;\\n\\t\\t// Align with text\\n\\t\\theight: $bubble-height - $bubble-padding;\\n\\t\\tvertical-align: text-bottom;\\n\\t\\tdisplay: inline-flex;\\n\\t\\talign-items: center;\\n\\t}\\n\\n\\t&__content {\\n\\t\\tdisplay: inline-flex;\\n\\t\\toverflow: hidden;\\n\\t\\talign-items: center;\\n\\t\\tmax-width: 100%;\\n\\t\\theight: $bubble-height ;\\n\\t\\t-webkit-user-select: none;\\n\\t\\tuser-select: none;\\n\\t\\tpadding-right: $bubble-padding * 3;\\n\\t\\tpadding-left: $bubble-padding;\\n\\t\\tborder-radius: math.div($bubble-height, 2);\\n\\t\\tbackground-color: var(--color-background-dark);\\n\\t}\\n\\n\\t&__icon {\\n\\t\\tposition: relative;\\n\\t\\twidth: $bubble-avatar-size;\\n\\t\\theight: $bubble-avatar-size;\\n\\t\\tborder-radius: math.div($bubble-avatar-size, 2);\\n\\t\\tbackground-color: var(--color-background-darker);\\n\\t\\tbackground-repeat: no-repeat;\\n\\t\\tbackground-position: center;\\n\\t\\tbackground-size: $bubble-avatar-size - 2 * $bubble-padding;\\n\\n\\t\\t&--with-avatar {\\n\\t\\t\\tcolor: inherit;\\n\\t\\t\\tbackground-size: cover;\\n\\t\\t}\\n\\t}\\n\\n\\t&__title {\\n\\t\\toverflow: hidden;\\n\\t\\tmargin-left: $bubble-padding;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\t// Put label in ::before so it is not selectable\\n\\t\\t&::before {\\n\\t\\t\\tcontent: attr(title);\\n\\t\\t}\\n\\t}\\n\\n\\t// Hide the mention id so it is selectable\\n\\t&__select {\\n\\t\\tposition: absolute;\\n\\t\\tz-index: -1;\\n\\t\\tleft: -1000px;\\n\\t}\\n}\\n\\n\"],sourceRoot:\"\"}]);const r=s},8369:(t,e,a)=>{\"use strict\";a.d(e,{Z:()=>r});var i=a(7537),n=a.n(i),o=a(3645),s=a.n(o)()(n());s.push([t.id,\"\\nbutton.menuitem[data-v-127b0c62] {\\n\\tborder-radius: var(--border-radius-large) !important;\\n\\ttext-align: left;\\n}\\nbutton.menuitem *[data-v-127b0c62] {\\n\\tcursor: pointer;\\n}\\nbutton.menuitem[data-v-127b0c62]:disabled {\\n\\topacity: 0.5 !important;\\n\\tcursor: default;\\n}\\nbutton.menuitem:disabled *[data-v-127b0c62] {\\n\\tcursor: default;\\n}\\n.menuitem.active[data-v-127b0c62] {\\n\\tborder-left: 4px solid var(--color-primary-element);\\n\\tborder-radius: 0 var(--border-radius-large) var(--border-radius-large) 0 !important;\\n}\\n\",\"\",{version:3,sources:[\"webpack://./src/components/NcPopoverMenu/NcPopoverMenuItem.vue\"],names:[],mappings:\";AAgYA;CACA,oDAAA;CACA,gBAAA;AACA;AAEA;CACA,eAAA;AACA;AAEA;CACA,uBAAA;CACA,eAAA;AACA;AAEA;CACA,eAAA;AACA;AAEA;CACA,mDAAA;CACA,mFAAA;AACA\",sourcesContent:['\\x3c!--\\n - @copyright Copyright (c) 2018 John Molakvoæ \\n -\\n - @author John Molakvoæ \\n -\\n - @license GNU AGPL version 3 or any later version\\n -\\n - This program is free software: you can redistribute it and/or modify\\n - it under the terms of the GNU Affero General Public License as\\n - published by the Free Software Foundation, either version 3 of the\\n - License, or (at your option) any later version.\\n -\\n - This program is distributed in the hope that it will be useful,\\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n - GNU Affero General Public License for more details.\\n -\\n - You should have received a copy of the GNU Affero General Public License\\n - along with this program. If not, see .\\n -\\n --\\x3e\\n\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","\"use strict\";\n\nmodule.exports = function (item) {\n var content = item[1];\n var cssMapping = item[3];\n if (!cssMapping) {\n return content;\n }\n if (typeof btoa === \"function\") {\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n var sourceMapping = \"/*# \".concat(data, \" */\");\n return [content].concat([sourceMapping]).join(\"\\n\");\n }\n return [content].join(\"\\n\");\n};","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n","/**\n * lodash (Custom Build) \n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the `TypeError` message for \"Functions\" methods. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** `Object#toString` result references. */\nvar funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n symbolTag = '[object Symbol]';\n\n/** Used to match property names within property paths. */\nvar reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/,\n reLeadingDot = /^\\./,\n rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to match backslashes in property paths. */\nvar reEscapeChar = /\\\\(\\\\)?/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\n/**\n * Checks if `value` is a host object in IE < 9.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a host object, else `false`.\n */\nfunction isHostObject(value) {\n // Many host objects are `Object` objects that can coerce to strings\n // despite having improperly defined `toString` methods.\n var result = false;\n if (value != null && typeof value.toString != 'function') {\n try {\n result = !!(value + '');\n } catch (e) {}\n }\n return result;\n}\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype,\n funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/** Built-in value references. */\nvar Symbol = root.Symbol,\n splice = arrayProto.splice;\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map'),\n nativeCreate = getNative(Object, 'create');\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries ? entries.length : 0;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n}\n\n/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n return this.has(key) && delete this.__data__[key];\n}\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? data[key] !== undefined : hasOwnProperty.call(data, key);\n}\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries ? entries.length : 0;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n}\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n return true;\n}\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries ? entries.length : 0;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n return getMapData(this, key)['delete'](key);\n}\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n getMapData(this, key).set(key, value);\n return this;\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\n/**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\nfunction baseGet(object, path) {\n path = isKey(path, object) ? [path] : castPath(path);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n}\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = (isFunction(value) || isHostObject(value)) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\n/**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Array} Returns the cast property path array.\n */\nfunction castPath(value) {\n return isArray(value) ? value : stringToPath(value);\n}\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\n/**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\nfunction isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n}\n\n/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = memoize(function(string) {\n string = toString(string);\n\n var result = [];\n if (reLeadingDot.test(string)) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, string) {\n result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n});\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to process.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\n/**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\nfunction memoize(func, resolver) {\n if (typeof func != 'function' || (resolver && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result);\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n}\n\n// Assign cache to `_.memoize`.\nmemoize.Cache = MapCache;\n\n/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\n/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 8-9 which returns 'object' for typed array and other constructors.\n var tag = isObject(value) ? objectToString.call(value) : '';\n return tag == funcTag || tag == genTag;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && objectToString.call(value) == symbolTag);\n}\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\n/**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\nfunction get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n}\n\nmodule.exports = get;\n","//! moment.js locale configuration\n//! locale : Afrikaans [af]\n//! author : Werner Mollentze : https://github.com/wernerm\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var af = moment.defineLocale('af', {\n months: 'Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des'.split('_'),\n weekdays: 'Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag'.split(\n '_'\n ),\n weekdaysShort: 'Son_Maa_Din_Woe_Don_Vry_Sat'.split('_'),\n weekdaysMin: 'So_Ma_Di_Wo_Do_Vr_Sa'.split('_'),\n meridiemParse: /vm|nm/i,\n isPM: function (input) {\n return /^nm$/i.test(input);\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower ? 'vm' : 'VM';\n } else {\n return isLower ? 'nm' : 'NM';\n }\n },\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Vandag om] LT',\n nextDay: '[Môre om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[Gister om] LT',\n lastWeek: '[Laas] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'oor %s',\n past: '%s gelede',\n s: \"'n paar sekondes\",\n ss: '%d sekondes',\n m: \"'n minuut\",\n mm: '%d minute',\n h: \"'n uur\",\n hh: '%d ure',\n d: \"'n dag\",\n dd: '%d dae',\n M: \"'n maand\",\n MM: '%d maande',\n y: \"'n jaar\",\n yy: '%d jaar',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n ); // Thanks to Joris Röling : https://github.com/jjupiter\n },\n week: {\n dow: 1, // Maandag is die eerste dag van die week.\n doy: 4, // Die week wat die 4de Januarie bevat is die eerste week van die jaar.\n },\n });\n\n return af;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Algeria) [ar-dz]\n//! author : Amine Roukh: https://github.com/Amine27\n//! author : Abdel Said: https://github.com/abdelsaid\n//! author : Ahmed Elkhatib\n//! author : forabi https://github.com/forabi\n//! author : Noureddine LOUAHEDJ : https://github.com/noureddinem\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var pluralForm = function (n) {\n return n === 0\n ? 0\n : n === 1\n ? 1\n : n === 2\n ? 2\n : n % 100 >= 3 && n % 100 <= 10\n ? 3\n : n % 100 >= 11\n ? 4\n : 5;\n },\n plurals = {\n s: [\n 'أقل من ثانية',\n 'ثانية واحدة',\n ['ثانيتان', 'ثانيتين'],\n '%d ثوان',\n '%d ثانية',\n '%d ثانية',\n ],\n m: [\n 'أقل من دقيقة',\n 'دقيقة واحدة',\n ['دقيقتان', 'دقيقتين'],\n '%d دقائق',\n '%d دقيقة',\n '%d دقيقة',\n ],\n h: [\n 'أقل من ساعة',\n 'ساعة واحدة',\n ['ساعتان', 'ساعتين'],\n '%d ساعات',\n '%d ساعة',\n '%d ساعة',\n ],\n d: [\n 'أقل من يوم',\n 'يوم واحد',\n ['يومان', 'يومين'],\n '%d أيام',\n '%d يومًا',\n '%d يوم',\n ],\n M: [\n 'أقل من شهر',\n 'شهر واحد',\n ['شهران', 'شهرين'],\n '%d أشهر',\n '%d شهرا',\n '%d شهر',\n ],\n y: [\n 'أقل من عام',\n 'عام واحد',\n ['عامان', 'عامين'],\n '%d أعوام',\n '%d عامًا',\n '%d عام',\n ],\n },\n pluralize = function (u) {\n return function (number, withoutSuffix, string, isFuture) {\n var f = pluralForm(number),\n str = plurals[u][pluralForm(number)];\n if (f === 2) {\n str = str[withoutSuffix ? 0 : 1];\n }\n return str.replace(/%d/i, number);\n };\n },\n months = [\n 'جانفي',\n 'فيفري',\n 'مارس',\n 'أفريل',\n 'ماي',\n 'جوان',\n 'جويلية',\n 'أوت',\n 'سبتمبر',\n 'أكتوبر',\n 'نوفمبر',\n 'ديسمبر',\n ];\n\n var arDz = moment.defineLocale('ar-dz', {\n months: months,\n monthsShort: months,\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/\\u200FM/\\u200FYYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|م/,\n isPM: function (input) {\n return 'م' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar: {\n sameDay: '[اليوم عند الساعة] LT',\n nextDay: '[غدًا عند الساعة] LT',\n nextWeek: 'dddd [عند الساعة] LT',\n lastDay: '[أمس عند الساعة] LT',\n lastWeek: 'dddd [عند الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'بعد %s',\n past: 'منذ %s',\n s: pluralize('s'),\n ss: pluralize('s'),\n m: pluralize('m'),\n mm: pluralize('m'),\n h: pluralize('h'),\n hh: pluralize('h'),\n d: pluralize('d'),\n dd: pluralize('d'),\n M: pluralize('M'),\n MM: pluralize('M'),\n y: pluralize('y'),\n yy: pluralize('y'),\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return arDz;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Kuwait) [ar-kw]\n//! author : Nusret Parlak: https://github.com/nusretparlak\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var arKw = moment.defineLocale('ar-kw', {\n months: 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(\n '_'\n ),\n monthsShort:\n 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(\n '_'\n ),\n weekdays: 'الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'في %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return arKw;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Libya) [ar-ly]\n//! author : Ali Hmer: https://github.com/kikoanis\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\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 0: '0',\n },\n pluralForm = function (n) {\n return n === 0\n ? 0\n : n === 1\n ? 1\n : n === 2\n ? 2\n : n % 100 >= 3 && n % 100 <= 10\n ? 3\n : n % 100 >= 11\n ? 4\n : 5;\n },\n plurals = {\n s: [\n 'أقل من ثانية',\n 'ثانية واحدة',\n ['ثانيتان', 'ثانيتين'],\n '%d ثوان',\n '%d ثانية',\n '%d ثانية',\n ],\n m: [\n 'أقل من دقيقة',\n 'دقيقة واحدة',\n ['دقيقتان', 'دقيقتين'],\n '%d دقائق',\n '%d دقيقة',\n '%d دقيقة',\n ],\n h: [\n 'أقل من ساعة',\n 'ساعة واحدة',\n ['ساعتان', 'ساعتين'],\n '%d ساعات',\n '%d ساعة',\n '%d ساعة',\n ],\n d: [\n 'أقل من يوم',\n 'يوم واحد',\n ['يومان', 'يومين'],\n '%d أيام',\n '%d يومًا',\n '%d يوم',\n ],\n M: [\n 'أقل من شهر',\n 'شهر واحد',\n ['شهران', 'شهرين'],\n '%d أشهر',\n '%d شهرا',\n '%d شهر',\n ],\n y: [\n 'أقل من عام',\n 'عام واحد',\n ['عامان', 'عامين'],\n '%d أعوام',\n '%d عامًا',\n '%d عام',\n ],\n },\n pluralize = function (u) {\n return function (number, withoutSuffix, string, isFuture) {\n var f = pluralForm(number),\n str = plurals[u][pluralForm(number)];\n if (f === 2) {\n str = str[withoutSuffix ? 0 : 1];\n }\n return str.replace(/%d/i, number);\n };\n },\n months = [\n 'يناير',\n 'فبراير',\n 'مارس',\n 'أبريل',\n 'مايو',\n 'يونيو',\n 'يوليو',\n 'أغسطس',\n 'سبتمبر',\n 'أكتوبر',\n 'نوفمبر',\n 'ديسمبر',\n ];\n\n var arLy = moment.defineLocale('ar-ly', {\n months: months,\n monthsShort: months,\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/\\u200FM/\\u200FYYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|م/,\n isPM: function (input) {\n return 'م' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar: {\n sameDay: '[اليوم عند الساعة] LT',\n nextDay: '[غدًا عند الساعة] LT',\n nextWeek: 'dddd [عند الساعة] LT',\n lastDay: '[أمس عند الساعة] LT',\n lastWeek: 'dddd [عند الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'بعد %s',\n past: 'منذ %s',\n s: pluralize('s'),\n ss: pluralize('s'),\n m: pluralize('m'),\n mm: pluralize('m'),\n h: pluralize('h'),\n hh: pluralize('h'),\n d: pluralize('d'),\n dd: pluralize('d'),\n M: pluralize('M'),\n MM: pluralize('M'),\n y: pluralize('y'),\n yy: pluralize('y'),\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, '،');\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return arLy;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Morocco) [ar-ma]\n//! author : ElFadili Yassine : https://github.com/ElFadiliY\n//! author : Abdel Said : https://github.com/abdelsaid\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var arMa = moment.defineLocale('ar-ma', {\n months: 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(\n '_'\n ),\n monthsShort:\n 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(\n '_'\n ),\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'في %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return arMa;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Saudi Arabia) [ar-sa]\n//! author : Suhail Alkowaileet : https://github.com/xsoh\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '١',\n 2: '٢',\n 3: '٣',\n 4: '٤',\n 5: '٥',\n 6: '٦',\n 7: '٧',\n 8: '٨',\n 9: '٩',\n 0: '٠',\n },\n numberMap = {\n '١': '1',\n '٢': '2',\n '٣': '3',\n '٤': '4',\n '٥': '5',\n '٦': '6',\n '٧': '7',\n '٨': '8',\n '٩': '9',\n '٠': '0',\n };\n\n var arSa = moment.defineLocale('ar-sa', {\n months: 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(\n '_'\n ),\n monthsShort:\n 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(\n '_'\n ),\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|م/,\n isPM: function (input) {\n return 'م' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'في %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n preparse: function (string) {\n return string\n .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n })\n .replace(/،/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, '،');\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return arSa;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Tunisia) [ar-tn]\n//! author : Nader Toukabri : https://github.com/naderio\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var arTn = moment.defineLocale('ar-tn', {\n months: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(\n '_'\n ),\n monthsShort:\n 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(\n '_'\n ),\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'في %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return arTn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic [ar]\n//! author : Abdel Said: https://github.com/abdelsaid\n//! author : Ahmed Elkhatib\n//! author : forabi https://github.com/forabi\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '١',\n 2: '٢',\n 3: '٣',\n 4: '٤',\n 5: '٥',\n 6: '٦',\n 7: '٧',\n 8: '٨',\n 9: '٩',\n 0: '٠',\n },\n numberMap = {\n '١': '1',\n '٢': '2',\n '٣': '3',\n '٤': '4',\n '٥': '5',\n '٦': '6',\n '٧': '7',\n '٨': '8',\n '٩': '9',\n '٠': '0',\n },\n pluralForm = function (n) {\n return n === 0\n ? 0\n : n === 1\n ? 1\n : n === 2\n ? 2\n : n % 100 >= 3 && n % 100 <= 10\n ? 3\n : n % 100 >= 11\n ? 4\n : 5;\n },\n plurals = {\n s: [\n 'أقل من ثانية',\n 'ثانية واحدة',\n ['ثانيتان', 'ثانيتين'],\n '%d ثوان',\n '%d ثانية',\n '%d ثانية',\n ],\n m: [\n 'أقل من دقيقة',\n 'دقيقة واحدة',\n ['دقيقتان', 'دقيقتين'],\n '%d دقائق',\n '%d دقيقة',\n '%d دقيقة',\n ],\n h: [\n 'أقل من ساعة',\n 'ساعة واحدة',\n ['ساعتان', 'ساعتين'],\n '%d ساعات',\n '%d ساعة',\n '%d ساعة',\n ],\n d: [\n 'أقل من يوم',\n 'يوم واحد',\n ['يومان', 'يومين'],\n '%d أيام',\n '%d يومًا',\n '%d يوم',\n ],\n M: [\n 'أقل من شهر',\n 'شهر واحد',\n ['شهران', 'شهرين'],\n '%d أشهر',\n '%d شهرا',\n '%d شهر',\n ],\n y: [\n 'أقل من عام',\n 'عام واحد',\n ['عامان', 'عامين'],\n '%d أعوام',\n '%d عامًا',\n '%d عام',\n ],\n },\n pluralize = function (u) {\n return function (number, withoutSuffix, string, isFuture) {\n var f = pluralForm(number),\n str = plurals[u][pluralForm(number)];\n if (f === 2) {\n str = str[withoutSuffix ? 0 : 1];\n }\n return str.replace(/%d/i, number);\n };\n },\n months = [\n 'يناير',\n 'فبراير',\n 'مارس',\n 'أبريل',\n 'مايو',\n 'يونيو',\n 'يوليو',\n 'أغسطس',\n 'سبتمبر',\n 'أكتوبر',\n 'نوفمبر',\n 'ديسمبر',\n ];\n\n var ar = moment.defineLocale('ar', {\n months: months,\n monthsShort: months,\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/\\u200FM/\\u200FYYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|م/,\n isPM: function (input) {\n return 'م' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar: {\n sameDay: '[اليوم عند الساعة] LT',\n nextDay: '[غدًا عند الساعة] LT',\n nextWeek: 'dddd [عند الساعة] LT',\n lastDay: '[أمس عند الساعة] LT',\n lastWeek: 'dddd [عند الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'بعد %s',\n past: 'منذ %s',\n s: pluralize('s'),\n ss: pluralize('s'),\n m: pluralize('m'),\n mm: pluralize('m'),\n h: pluralize('h'),\n hh: pluralize('h'),\n d: pluralize('d'),\n dd: pluralize('d'),\n M: pluralize('M'),\n MM: pluralize('M'),\n y: pluralize('y'),\n yy: pluralize('y'),\n },\n preparse: function (string) {\n return string\n .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n })\n .replace(/،/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, '،');\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return ar;\n\n})));\n","//! moment.js locale configuration\n//! locale : Azerbaijani [az]\n//! author : topchiyev : https://github.com/topchiyev\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 1: '-inci',\n 5: '-inci',\n 8: '-inci',\n 70: '-inci',\n 80: '-inci',\n 2: '-nci',\n 7: '-nci',\n 20: '-nci',\n 50: '-nci',\n 3: '-üncü',\n 4: '-üncü',\n 100: '-üncü',\n 6: '-ncı',\n 9: '-uncu',\n 10: '-uncu',\n 30: '-uncu',\n 60: '-ıncı',\n 90: '-ıncı',\n };\n\n var az = moment.defineLocale('az', {\n months: 'yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr'.split(\n '_'\n ),\n monthsShort: 'yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek'.split('_'),\n weekdays:\n 'Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə'.split(\n '_'\n ),\n weekdaysShort: 'Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən'.split('_'),\n weekdaysMin: 'Bz_BE_ÇA_Çə_CA_Cü_Şə'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[bugün saat] LT',\n nextDay: '[sabah saat] LT',\n nextWeek: '[gələn həftə] dddd [saat] LT',\n lastDay: '[dünən] LT',\n lastWeek: '[keçən həftə] dddd [saat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s sonra',\n past: '%s əvvəl',\n s: 'bir neçə saniyə',\n ss: '%d saniyə',\n m: 'bir dəqiqə',\n mm: '%d dəqiqə',\n h: 'bir saat',\n hh: '%d saat',\n d: 'bir gün',\n dd: '%d gün',\n M: 'bir ay',\n MM: '%d ay',\n y: 'bir il',\n yy: '%d il',\n },\n meridiemParse: /gecə|səhər|gündüz|axşam/,\n isPM: function (input) {\n return /^(gündüz|axşam)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'gecə';\n } else if (hour < 12) {\n return 'səhər';\n } else if (hour < 17) {\n return 'gündüz';\n } else {\n return 'axşam';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,\n ordinal: function (number) {\n if (number === 0) {\n // special case for zero\n return number + '-ıncı';\n }\n var a = number % 10,\n b = (number % 100) - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return az;\n\n})));\n","//! moment.js locale configuration\n//! locale : Belarusian [be]\n//! author : Dmitry Demidov : https://github.com/demidov91\n//! author: Praleska: http://praleska.pro/\n//! Author : Menelion Elensúle : https://github.com/Oire\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11\n ? forms[0]\n : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20)\n ? forms[1]\n : forms[2];\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд',\n mm: withoutSuffix ? 'хвіліна_хвіліны_хвілін' : 'хвіліну_хвіліны_хвілін',\n hh: withoutSuffix ? 'гадзіна_гадзіны_гадзін' : 'гадзіну_гадзіны_гадзін',\n dd: 'дзень_дні_дзён',\n MM: 'месяц_месяцы_месяцаў',\n yy: 'год_гады_гадоў',\n };\n if (key === 'm') {\n return withoutSuffix ? 'хвіліна' : 'хвіліну';\n } else if (key === 'h') {\n return withoutSuffix ? 'гадзіна' : 'гадзіну';\n } else {\n return number + ' ' + plural(format[key], +number);\n }\n }\n\n var be = moment.defineLocale('be', {\n months: {\n format: 'студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня'.split(\n '_'\n ),\n standalone:\n 'студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань'.split(\n '_'\n ),\n },\n monthsShort:\n 'студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж'.split('_'),\n weekdays: {\n format: 'нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу'.split(\n '_'\n ),\n standalone:\n 'нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота'.split(\n '_'\n ),\n isFormat: /\\[ ?[Ууў] ?(?:мінулую|наступную)? ?\\] ?dddd/,\n },\n weekdaysShort: 'нд_пн_ат_ср_чц_пт_сб'.split('_'),\n weekdaysMin: 'нд_пн_ат_ср_чц_пт_сб'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY г.',\n LLL: 'D MMMM YYYY г., HH:mm',\n LLLL: 'dddd, D MMMM YYYY г., HH:mm',\n },\n calendar: {\n sameDay: '[Сёння ў] LT',\n nextDay: '[Заўтра ў] LT',\n lastDay: '[Учора ў] LT',\n nextWeek: function () {\n return '[У] dddd [ў] LT';\n },\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 5:\n case 6:\n return '[У мінулую] dddd [ў] LT';\n case 1:\n case 2:\n case 4:\n return '[У мінулы] dddd [ў] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'праз %s',\n past: '%s таму',\n s: 'некалькі секунд',\n m: relativeTimeWithPlural,\n mm: relativeTimeWithPlural,\n h: relativeTimeWithPlural,\n hh: relativeTimeWithPlural,\n d: 'дзень',\n dd: relativeTimeWithPlural,\n M: 'месяц',\n MM: relativeTimeWithPlural,\n y: 'год',\n yy: relativeTimeWithPlural,\n },\n meridiemParse: /ночы|раніцы|дня|вечара/,\n isPM: function (input) {\n return /^(дня|вечара)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночы';\n } else if (hour < 12) {\n return 'раніцы';\n } else if (hour < 17) {\n return 'дня';\n } else {\n return 'вечара';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(і|ы|га)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n case 'w':\n case 'W':\n return (number % 10 === 2 || number % 10 === 3) &&\n number % 100 !== 12 &&\n number % 100 !== 13\n ? number + '-і'\n : number + '-ы';\n case 'D':\n return number + '-га';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return be;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bulgarian [bg]\n//! author : Krasen Borisov : https://github.com/kraz\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var bg = moment.defineLocale('bg', {\n months: 'януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември'.split(\n '_'\n ),\n monthsShort: 'яну_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек'.split('_'),\n weekdays: 'неделя_понеделник_вторник_сряда_четвъртък_петък_събота'.split(\n '_'\n ),\n weekdaysShort: 'нед_пон_вто_сря_чет_пет_съб'.split('_'),\n weekdaysMin: 'нд_пн_вт_ср_чт_пт_сб'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'D.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY H:mm',\n LLLL: 'dddd, D MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[Днес в] LT',\n nextDay: '[Утре в] LT',\n nextWeek: 'dddd [в] LT',\n lastDay: '[Вчера в] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 6:\n return '[Миналата] dddd [в] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[Миналия] dddd [в] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'след %s',\n past: 'преди %s',\n s: 'няколко секунди',\n ss: '%d секунди',\n m: 'минута',\n mm: '%d минути',\n h: 'час',\n hh: '%d часа',\n d: 'ден',\n dd: '%d дена',\n w: 'седмица',\n ww: '%d седмици',\n M: 'месец',\n MM: '%d месеца',\n y: 'година',\n yy: '%d години',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ев|ен|ти|ви|ри|ми)/,\n ordinal: function (number) {\n var lastDigit = number % 10,\n last2Digits = number % 100;\n if (number === 0) {\n return number + '-ев';\n } else if (last2Digits === 0) {\n return number + '-ен';\n } else if (last2Digits > 10 && last2Digits < 20) {\n return number + '-ти';\n } else if (lastDigit === 1) {\n return number + '-ви';\n } else if (lastDigit === 2) {\n return number + '-ри';\n } else if (lastDigit === 7 || lastDigit === 8) {\n return number + '-ми';\n } else {\n return number + '-ти';\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return bg;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bambara [bm]\n//! author : Estelle Comment : https://github.com/estellecomment\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var bm = moment.defineLocale('bm', {\n months: 'Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_Mɛkalo_Zuwɛnkalo_Zuluyekalo_Utikalo_Sɛtanburukalo_ɔkutɔburukalo_Nowanburukalo_Desanburukalo'.split(\n '_'\n ),\n monthsShort: 'Zan_Few_Mar_Awi_Mɛ_Zuw_Zul_Uti_Sɛt_ɔku_Now_Des'.split('_'),\n weekdays: 'Kari_Ntɛnɛn_Tarata_Araba_Alamisa_Juma_Sibiri'.split('_'),\n weekdaysShort: 'Kar_Ntɛ_Tar_Ara_Ala_Jum_Sib'.split('_'),\n weekdaysMin: 'Ka_Nt_Ta_Ar_Al_Ju_Si'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'MMMM [tile] D [san] YYYY',\n LLL: 'MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm',\n LLLL: 'dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm',\n },\n calendar: {\n sameDay: '[Bi lɛrɛ] LT',\n nextDay: '[Sini lɛrɛ] LT',\n nextWeek: 'dddd [don lɛrɛ] LT',\n lastDay: '[Kunu lɛrɛ] LT',\n lastWeek: 'dddd [tɛmɛnen lɛrɛ] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s kɔnɔ',\n past: 'a bɛ %s bɔ',\n s: 'sanga dama dama',\n ss: 'sekondi %d',\n m: 'miniti kelen',\n mm: 'miniti %d',\n h: 'lɛrɛ kelen',\n hh: 'lɛrɛ %d',\n d: 'tile kelen',\n dd: 'tile %d',\n M: 'kalo kelen',\n MM: 'kalo %d',\n y: 'san kelen',\n yy: 'san %d',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return bm;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bengali (Bangladesh) [bn-bd]\n//! author : Asraf Hossain Patoary : https://github.com/ashwoolford\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '১',\n 2: '২',\n 3: '৩',\n 4: '৪',\n 5: '৫',\n 6: '৬',\n 7: '৭',\n 8: '৮',\n 9: '৯',\n 0: '০',\n },\n numberMap = {\n '১': '1',\n '২': '2',\n '৩': '3',\n '৪': '4',\n '৫': '5',\n '৬': '6',\n '৭': '7',\n '৮': '8',\n '৯': '9',\n '০': '0',\n };\n\n var bnBd = moment.defineLocale('bn-bd', {\n months: 'জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর'.split(\n '_'\n ),\n monthsShort:\n 'জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে'.split(\n '_'\n ),\n weekdays: 'রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার'.split(\n '_'\n ),\n weekdaysShort: 'রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি'.split('_'),\n weekdaysMin: 'রবি_সোম_মঙ্গল_বুধ_বৃহ_শুক্র_শনি'.split('_'),\n longDateFormat: {\n LT: 'A h:mm সময়',\n LTS: 'A h:mm:ss সময়',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm সময়',\n LLLL: 'dddd, D MMMM YYYY, A h:mm সময়',\n },\n calendar: {\n sameDay: '[আজ] LT',\n nextDay: '[আগামীকাল] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[গতকাল] LT',\n lastWeek: '[গত] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s পরে',\n past: '%s আগে',\n s: 'কয়েক সেকেন্ড',\n ss: '%d সেকেন্ড',\n m: 'এক মিনিট',\n mm: '%d মিনিট',\n h: 'এক ঘন্টা',\n hh: '%d ঘন্টা',\n d: 'এক দিন',\n dd: '%d দিন',\n M: 'এক মাস',\n MM: '%d মাস',\n y: 'এক বছর',\n yy: '%d বছর',\n },\n preparse: function (string) {\n return string.replace(/[১২৩৪৫৬৭৮৯০]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n\n meridiemParse: /রাত|ভোর|সকাল|দুপুর|বিকাল|সন্ধ্যা|রাত/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'রাত') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ভোর') {\n return hour;\n } else if (meridiem === 'সকাল') {\n return hour;\n } else if (meridiem === 'দুপুর') {\n return hour >= 3 ? hour : hour + 12;\n } else if (meridiem === 'বিকাল') {\n return hour + 12;\n } else if (meridiem === 'সন্ধ্যা') {\n return hour + 12;\n }\n },\n\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'রাত';\n } else if (hour < 6) {\n return 'ভোর';\n } else if (hour < 12) {\n return 'সকাল';\n } else if (hour < 15) {\n return 'দুপুর';\n } else if (hour < 18) {\n return 'বিকাল';\n } else if (hour < 20) {\n return 'সন্ধ্যা';\n } else {\n return 'রাত';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return bnBd;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bengali [bn]\n//! author : Kaushik Gandhi : https://github.com/kaushikgandhi\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '১',\n 2: '২',\n 3: '৩',\n 4: '৪',\n 5: '৫',\n 6: '৬',\n 7: '৭',\n 8: '৮',\n 9: '৯',\n 0: '০',\n },\n numberMap = {\n '১': '1',\n '২': '2',\n '৩': '3',\n '৪': '4',\n '৫': '5',\n '৬': '6',\n '৭': '7',\n '৮': '8',\n '৯': '9',\n '০': '0',\n };\n\n var bn = moment.defineLocale('bn', {\n months: 'জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর'.split(\n '_'\n ),\n monthsShort:\n 'জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে'.split(\n '_'\n ),\n weekdays: 'রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার'.split(\n '_'\n ),\n weekdaysShort: 'রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি'.split('_'),\n weekdaysMin: 'রবি_সোম_মঙ্গল_বুধ_বৃহ_শুক্র_শনি'.split('_'),\n longDateFormat: {\n LT: 'A h:mm সময়',\n LTS: 'A h:mm:ss সময়',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm সময়',\n LLLL: 'dddd, D MMMM YYYY, A h:mm সময়',\n },\n calendar: {\n sameDay: '[আজ] LT',\n nextDay: '[আগামীকাল] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[গতকাল] LT',\n lastWeek: '[গত] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s পরে',\n past: '%s আগে',\n s: 'কয়েক সেকেন্ড',\n ss: '%d সেকেন্ড',\n m: 'এক মিনিট',\n mm: '%d মিনিট',\n h: 'এক ঘন্টা',\n hh: '%d ঘন্টা',\n d: 'এক দিন',\n dd: '%d দিন',\n M: 'এক মাস',\n MM: '%d মাস',\n y: 'এক বছর',\n yy: '%d বছর',\n },\n preparse: function (string) {\n return string.replace(/[১২৩৪৫৬৭৮৯০]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /রাত|সকাল|দুপুর|বিকাল|রাত/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n (meridiem === 'রাত' && hour >= 4) ||\n (meridiem === 'দুপুর' && hour < 5) ||\n meridiem === 'বিকাল'\n ) {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'রাত';\n } else if (hour < 10) {\n return 'সকাল';\n } else if (hour < 17) {\n return 'দুপুর';\n } else if (hour < 20) {\n return 'বিকাল';\n } else {\n return 'রাত';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return bn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tibetan [bo]\n//! author : Thupten N. Chakrishar : https://github.com/vajradog\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '༡',\n 2: '༢',\n 3: '༣',\n 4: '༤',\n 5: '༥',\n 6: '༦',\n 7: '༧',\n 8: '༨',\n 9: '༩',\n 0: '༠',\n },\n numberMap = {\n '༡': '1',\n '༢': '2',\n '༣': '3',\n '༤': '4',\n '༥': '5',\n '༦': '6',\n '༧': '7',\n '༨': '8',\n '༩': '9',\n '༠': '0',\n };\n\n var bo = moment.defineLocale('bo', {\n months: 'ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ'.split(\n '_'\n ),\n monthsShort:\n 'ཟླ་1_ཟླ་2_ཟླ་3_ཟླ་4_ཟླ་5_ཟླ་6_ཟླ་7_ཟླ་8_ཟླ་9_ཟླ་10_ཟླ་11_ཟླ་12'.split(\n '_'\n ),\n monthsShortRegex: /^(ཟླ་\\d{1,2})/,\n monthsParseExact: true,\n weekdays:\n 'གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་'.split(\n '_'\n ),\n weekdaysShort: 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split(\n '_'\n ),\n weekdaysMin: 'ཉི_ཟླ_མིག_ལྷག_ཕུར_སངས_སྤེན'.split('_'),\n longDateFormat: {\n LT: 'A h:mm',\n LTS: 'A h:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm',\n LLLL: 'dddd, D MMMM YYYY, A h:mm',\n },\n calendar: {\n sameDay: '[དི་རིང] LT',\n nextDay: '[སང་ཉིན] LT',\n nextWeek: '[བདུན་ཕྲག་རྗེས་མ], LT',\n lastDay: '[ཁ་སང] LT',\n lastWeek: '[བདུན་ཕྲག་མཐའ་མ] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ལ་',\n past: '%s སྔན་ལ',\n s: 'ལམ་སང',\n ss: '%d སྐར་ཆ།',\n m: 'སྐར་མ་གཅིག',\n mm: '%d སྐར་མ',\n h: 'ཆུ་ཚོད་གཅིག',\n hh: '%d ཆུ་ཚོད',\n d: 'ཉིན་གཅིག',\n dd: '%d ཉིན་',\n M: 'ཟླ་བ་གཅིག',\n MM: '%d ཟླ་བ',\n y: 'ལོ་གཅིག',\n yy: '%d ལོ',\n },\n preparse: function (string) {\n return string.replace(/[༡༢༣༤༥༦༧༨༩༠]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n (meridiem === 'མཚན་མོ' && hour >= 4) ||\n (meridiem === 'ཉིན་གུང' && hour < 5) ||\n meridiem === 'དགོང་དག'\n ) {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'མཚན་མོ';\n } else if (hour < 10) {\n return 'ཞོགས་ཀས';\n } else if (hour < 17) {\n return 'ཉིན་གུང';\n } else if (hour < 20) {\n return 'དགོང་དག';\n } else {\n return 'མཚན་མོ';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return bo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Breton [br]\n//! author : Jean-Baptiste Le Duigou : https://github.com/jbleduigou\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function relativeTimeWithMutation(number, withoutSuffix, key) {\n var format = {\n mm: 'munutenn',\n MM: 'miz',\n dd: 'devezh',\n };\n return number + ' ' + mutation(format[key], number);\n }\n function specialMutationForYears(number) {\n switch (lastNumber(number)) {\n case 1:\n case 3:\n case 4:\n case 5:\n case 9:\n return number + ' bloaz';\n default:\n return number + ' vloaz';\n }\n }\n function lastNumber(number) {\n if (number > 9) {\n return lastNumber(number % 10);\n }\n return number;\n }\n function mutation(text, number) {\n if (number === 2) {\n return softMutation(text);\n }\n return text;\n }\n function softMutation(text) {\n var mutationTable = {\n m: 'v',\n b: 'v',\n d: 'z',\n };\n if (mutationTable[text.charAt(0)] === undefined) {\n return text;\n }\n return mutationTable[text.charAt(0)] + text.substring(1);\n }\n\n var monthsParse = [\n /^gen/i,\n /^c[ʼ\\']hwe/i,\n /^meu/i,\n /^ebr/i,\n /^mae/i,\n /^(mez|eve)/i,\n /^gou/i,\n /^eos/i,\n /^gwe/i,\n /^her/i,\n /^du/i,\n /^ker/i,\n ],\n monthsRegex =\n /^(genver|c[ʼ\\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu|gen|c[ʼ\\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,\n monthsStrictRegex =\n /^(genver|c[ʼ\\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu)/i,\n monthsShortStrictRegex =\n /^(gen|c[ʼ\\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,\n fullWeekdaysParse = [\n /^sul/i,\n /^lun/i,\n /^meurzh/i,\n /^merc[ʼ\\']her/i,\n /^yaou/i,\n /^gwener/i,\n /^sadorn/i,\n ],\n shortWeekdaysParse = [\n /^Sul/i,\n /^Lun/i,\n /^Meu/i,\n /^Mer/i,\n /^Yao/i,\n /^Gwe/i,\n /^Sad/i,\n ],\n minWeekdaysParse = [\n /^Su/i,\n /^Lu/i,\n /^Me([^r]|$)/i,\n /^Mer/i,\n /^Ya/i,\n /^Gw/i,\n /^Sa/i,\n ];\n\n var br = moment.defineLocale('br', {\n months: 'Genver_Cʼhwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu'.split(\n '_'\n ),\n monthsShort: 'Gen_Cʼhwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker'.split('_'),\n weekdays: 'Sul_Lun_Meurzh_Mercʼher_Yaou_Gwener_Sadorn'.split('_'),\n weekdaysShort: 'Sul_Lun_Meu_Mer_Yao_Gwe_Sad'.split('_'),\n weekdaysMin: 'Su_Lu_Me_Mer_Ya_Gw_Sa'.split('_'),\n weekdaysParse: minWeekdaysParse,\n fullWeekdaysParse: fullWeekdaysParse,\n shortWeekdaysParse: shortWeekdaysParse,\n minWeekdaysParse: minWeekdaysParse,\n\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: monthsStrictRegex,\n monthsShortStrictRegex: monthsShortStrictRegex,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [a viz] MMMM YYYY',\n LLL: 'D [a viz] MMMM YYYY HH:mm',\n LLLL: 'dddd, D [a viz] MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Hiziv da] LT',\n nextDay: '[Warcʼhoazh da] LT',\n nextWeek: 'dddd [da] LT',\n lastDay: '[Decʼh da] LT',\n lastWeek: 'dddd [paset da] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'a-benn %s',\n past: '%s ʼzo',\n s: 'un nebeud segondennoù',\n ss: '%d eilenn',\n m: 'ur vunutenn',\n mm: relativeTimeWithMutation,\n h: 'un eur',\n hh: '%d eur',\n d: 'un devezh',\n dd: relativeTimeWithMutation,\n M: 'ur miz',\n MM: relativeTimeWithMutation,\n y: 'ur bloaz',\n yy: specialMutationForYears,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(añ|vet)/,\n ordinal: function (number) {\n var output = number === 1 ? 'añ' : 'vet';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n meridiemParse: /a.m.|g.m./, // goude merenn | a-raok merenn\n isPM: function (token) {\n return token === 'g.m.';\n },\n meridiem: function (hour, minute, isLower) {\n return hour < 12 ? 'a.m.' : 'g.m.';\n },\n });\n\n return br;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bosnian [bs]\n//! author : Nedim Cholich : https://github.com/frontyard\n//! based on (hr) translation by Bojan Marković\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n if (number === 1) {\n result += 'sekunda';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sekunde';\n } else {\n result += 'sekundi';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'jedna minuta' : 'jedne minute';\n case 'mm':\n if (number === 1) {\n result += 'minuta';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'minute';\n } else {\n result += 'minuta';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'jedan sat' : 'jednog sata';\n case 'hh':\n if (number === 1) {\n result += 'sat';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sata';\n } else {\n result += 'sati';\n }\n return result;\n case 'dd':\n if (number === 1) {\n result += 'dan';\n } else {\n result += 'dana';\n }\n return result;\n case 'MM':\n if (number === 1) {\n result += 'mjesec';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'mjeseca';\n } else {\n result += 'mjeseci';\n }\n return result;\n case 'yy':\n if (number === 1) {\n result += 'godina';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'godine';\n } else {\n result += 'godina';\n }\n return result;\n }\n }\n\n var bs = moment.defineLocale('bs', {\n months: 'januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sutra u] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[jučer u] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n return '[prošlu] dddd [u] LT';\n case 6:\n return '[prošle] [subote] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[prošli] dddd [u] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'prije %s',\n s: 'par sekundi',\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: 'dan',\n dd: translate,\n M: 'mjesec',\n MM: translate,\n y: 'godinu',\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return bs;\n\n})));\n","//! moment.js locale configuration\n//! locale : Catalan [ca]\n//! author : Juan G. Hurtado : https://github.com/juanghurtado\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ca = moment.defineLocale('ca', {\n months: {\n standalone:\n 'gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre'.split(\n '_'\n ),\n format: \"de gener_de febrer_de març_d'abril_de maig_de juny_de juliol_d'agost_de setembre_d'octubre_de novembre_de desembre\".split(\n '_'\n ),\n isFormat: /D[oD]?(\\s)+MMMM/,\n },\n monthsShort:\n 'gen._febr._març_abr._maig_juny_jul._ag._set._oct._nov._des.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte'.split(\n '_'\n ),\n weekdaysShort: 'dg._dl._dt._dc._dj._dv._ds.'.split('_'),\n weekdaysMin: 'dg_dl_dt_dc_dj_dv_ds'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM [de] YYYY',\n ll: 'D MMM YYYY',\n LLL: 'D MMMM [de] YYYY [a les] H:mm',\n lll: 'D MMM YYYY, H:mm',\n LLLL: 'dddd D MMMM [de] YYYY [a les] H:mm',\n llll: 'ddd D MMM YYYY, H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[avui a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n nextDay: function () {\n return '[demà a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n lastDay: function () {\n return '[ahir a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [passat a ' +\n (this.hours() !== 1 ? 'les' : 'la') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: \"d'aquí %s\",\n past: 'fa %s',\n s: 'uns segons',\n ss: '%d segons',\n m: 'un minut',\n mm: '%d minuts',\n h: 'una hora',\n hh: '%d hores',\n d: 'un dia',\n dd: '%d dies',\n M: 'un mes',\n MM: '%d mesos',\n y: 'un any',\n yy: '%d anys',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(r|n|t|è|a)/,\n ordinal: function (number, period) {\n var output =\n number === 1\n ? 'r'\n : number === 2\n ? 'n'\n : number === 3\n ? 'r'\n : number === 4\n ? 't'\n : 'è';\n if (period === 'w' || period === 'W') {\n output = 'a';\n }\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ca;\n\n})));\n","//! moment.js locale configuration\n//! locale : Czech [cs]\n//! author : petrbela : https://github.com/petrbela\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = {\n format: 'leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec'.split(\n '_'\n ),\n standalone:\n 'ledna_února_března_dubna_května_června_července_srpna_září_října_listopadu_prosince'.split(\n '_'\n ),\n },\n monthsShort = 'led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro'.split('_'),\n monthsParse = [\n /^led/i,\n /^úno/i,\n /^bře/i,\n /^dub/i,\n /^kvě/i,\n /^(čvn|červen$|června)/i,\n /^(čvc|červenec|července)/i,\n /^srp/i,\n /^zář/i,\n /^říj/i,\n /^lis/i,\n /^pro/i,\n ],\n // NOTE: 'červen' is substring of 'červenec'; therefore 'červenec' must precede 'červen' in the regex to be fully matched.\n // Otherwise parser matches '1. červenec' as '1. červen' + 'ec'.\n monthsRegex =\n /^(leden|únor|březen|duben|květen|červenec|července|červen|června|srpen|září|říjen|listopad|prosinec|led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i;\n\n function plural(n) {\n return n > 1 && n < 5 && ~~(n / 10) !== 1;\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's': // a few seconds / in a few seconds / a few seconds ago\n return withoutSuffix || isFuture ? 'pár sekund' : 'pár sekundami';\n case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'sekundy' : 'sekund');\n } else {\n return result + 'sekundami';\n }\n case 'm': // a minute / in a minute / a minute ago\n return withoutSuffix ? 'minuta' : isFuture ? 'minutu' : 'minutou';\n case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'minuty' : 'minut');\n } else {\n return result + 'minutami';\n }\n case 'h': // an hour / in an hour / an hour ago\n return withoutSuffix ? 'hodina' : isFuture ? 'hodinu' : 'hodinou';\n case 'hh': // 9 hours / in 9 hours / 9 hours ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'hodiny' : 'hodin');\n } else {\n return result + 'hodinami';\n }\n case 'd': // a day / in a day / a day ago\n return withoutSuffix || isFuture ? 'den' : 'dnem';\n case 'dd': // 9 days / in 9 days / 9 days ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'dny' : 'dní');\n } else {\n return result + 'dny';\n }\n case 'M': // a month / in a month / a month ago\n return withoutSuffix || isFuture ? 'měsíc' : 'měsícem';\n case 'MM': // 9 months / in 9 months / 9 months ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'měsíce' : 'měsíců');\n } else {\n return result + 'měsíci';\n }\n case 'y': // a year / in a year / a year ago\n return withoutSuffix || isFuture ? 'rok' : 'rokem';\n case 'yy': // 9 years / in 9 years / 9 years ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'roky' : 'let');\n } else {\n return result + 'lety';\n }\n }\n }\n\n var cs = moment.defineLocale('cs', {\n months: months,\n monthsShort: monthsShort,\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n // NOTE: 'červen' is substring of 'červenec'; therefore 'červenec' must precede 'červen' in the regex to be fully matched.\n // Otherwise parser matches '1. červenec' as '1. červen' + 'ec'.\n monthsStrictRegex:\n /^(leden|ledna|února|únor|březen|března|duben|dubna|květen|května|červenec|července|červen|června|srpen|srpna|září|říjen|října|listopadu|listopad|prosinec|prosince)/i,\n monthsShortStrictRegex:\n /^(led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota'.split('_'),\n weekdaysShort: 'ne_po_út_st_čt_pá_so'.split('_'),\n weekdaysMin: 'ne_po_út_st_čt_pá_so'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd D. MMMM YYYY H:mm',\n l: 'D. M. YYYY',\n },\n calendar: {\n sameDay: '[dnes v] LT',\n nextDay: '[zítra v] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[v neděli v] LT';\n case 1:\n case 2:\n return '[v] dddd [v] LT';\n case 3:\n return '[ve středu v] LT';\n case 4:\n return '[ve čtvrtek v] LT';\n case 5:\n return '[v pátek v] LT';\n case 6:\n return '[v sobotu v] LT';\n }\n },\n lastDay: '[včera v] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[minulou neděli v] LT';\n case 1:\n case 2:\n return '[minulé] dddd [v] LT';\n case 3:\n return '[minulou středu v] LT';\n case 4:\n case 5:\n return '[minulý] dddd [v] LT';\n case 6:\n return '[minulou sobotu v] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'před %s',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return cs;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chuvash [cv]\n//! author : Anatoly Mironov : https://github.com/mirontoli\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var cv = moment.defineLocale('cv', {\n months: 'кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав'.split(\n '_'\n ),\n monthsShort: 'кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш'.split('_'),\n weekdays:\n 'вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун'.split(\n '_'\n ),\n weekdaysShort: 'выр_тун_ытл_юн_кӗҫ_эрн_шӑм'.split('_'),\n weekdaysMin: 'вр_тн_ыт_юн_кҫ_эр_шм'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD-MM-YYYY',\n LL: 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]',\n LLL: 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm',\n LLLL: 'dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm',\n },\n calendar: {\n sameDay: '[Паян] LT [сехетре]',\n nextDay: '[Ыран] LT [сехетре]',\n lastDay: '[Ӗнер] LT [сехетре]',\n nextWeek: '[Ҫитес] dddd LT [сехетре]',\n lastWeek: '[Иртнӗ] dddd LT [сехетре]',\n sameElse: 'L',\n },\n relativeTime: {\n future: function (output) {\n var affix = /сехет$/i.exec(output)\n ? 'рен'\n : /ҫул$/i.exec(output)\n ? 'тан'\n : 'ран';\n return output + affix;\n },\n past: '%s каялла',\n s: 'пӗр-ик ҫеккунт',\n ss: '%d ҫеккунт',\n m: 'пӗр минут',\n mm: '%d минут',\n h: 'пӗр сехет',\n hh: '%d сехет',\n d: 'пӗр кун',\n dd: '%d кун',\n M: 'пӗр уйӑх',\n MM: '%d уйӑх',\n y: 'пӗр ҫул',\n yy: '%d ҫул',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-мӗш/,\n ordinal: '%d-мӗш',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return cv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Welsh [cy]\n//! author : Robert Allen : https://github.com/robgallen\n//! author : https://github.com/ryangreaves\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var cy = moment.defineLocale('cy', {\n months: 'Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr'.split(\n '_'\n ),\n monthsShort: 'Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag'.split(\n '_'\n ),\n weekdays:\n 'Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn'.split(\n '_'\n ),\n weekdaysShort: 'Sul_Llun_Maw_Mer_Iau_Gwe_Sad'.split('_'),\n weekdaysMin: 'Su_Ll_Ma_Me_Ia_Gw_Sa'.split('_'),\n weekdaysParseExact: true,\n // time formats are the same as en-gb\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Heddiw am] LT',\n nextDay: '[Yfory am] LT',\n nextWeek: 'dddd [am] LT',\n lastDay: '[Ddoe am] LT',\n lastWeek: 'dddd [diwethaf am] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'mewn %s',\n past: '%s yn ôl',\n s: 'ychydig eiliadau',\n ss: '%d eiliad',\n m: 'munud',\n mm: '%d munud',\n h: 'awr',\n hh: '%d awr',\n d: 'diwrnod',\n dd: '%d diwrnod',\n M: 'mis',\n MM: '%d mis',\n y: 'blwyddyn',\n yy: '%d flynedd',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,\n // traditional ordinal numbers above 31 are not commonly used in colloquial Welsh\n ordinal: function (number) {\n var b = number,\n output = '',\n lookup = [\n '',\n 'af',\n 'il',\n 'ydd',\n 'ydd',\n 'ed',\n 'ed',\n 'ed',\n 'fed',\n 'fed',\n 'fed', // 1af to 10fed\n 'eg',\n 'fed',\n 'eg',\n 'eg',\n 'fed',\n 'eg',\n 'eg',\n 'fed',\n 'eg',\n 'fed', // 11eg to 20fed\n ];\n if (b > 20) {\n if (b === 40 || b === 50 || b === 60 || b === 80 || b === 100) {\n output = 'fed'; // not 30ain, 70ain or 90ain\n } else {\n output = 'ain';\n }\n } else if (b > 0) {\n output = lookup[b];\n }\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return cy;\n\n})));\n","//! moment.js locale configuration\n//! locale : Danish [da]\n//! author : Ulrik Nielsen : https://github.com/mrbase\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var da = moment.defineLocale('da', {\n months: 'januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n weekdays: 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),\n weekdaysShort: 'søn_man_tir_ons_tor_fre_lør'.split('_'),\n weekdaysMin: 'sø_ma_ti_on_to_fr_lø'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd [d.] D. MMMM YYYY [kl.] HH:mm',\n },\n calendar: {\n sameDay: '[i dag kl.] LT',\n nextDay: '[i morgen kl.] LT',\n nextWeek: 'på dddd [kl.] LT',\n lastDay: '[i går kl.] LT',\n lastWeek: '[i] dddd[s kl.] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: '%s siden',\n s: 'få sekunder',\n ss: '%d sekunder',\n m: 'et minut',\n mm: '%d minutter',\n h: 'en time',\n hh: '%d timer',\n d: 'en dag',\n dd: '%d dage',\n M: 'en måned',\n MM: '%d måneder',\n y: 'et år',\n yy: '%d år',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return da;\n\n})));\n","//! moment.js locale configuration\n//! locale : German (Austria) [de-at]\n//! author : lluchs : https://github.com/lluchs\n//! author: Menelion Elensúle: https://github.com/Oire\n//! author : Martin Groller : https://github.com/MadMG\n//! author : Mikolaj Dadela : https://github.com/mik01aj\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eine Minute', 'einer Minute'],\n h: ['eine Stunde', 'einer Stunde'],\n d: ['ein Tag', 'einem Tag'],\n dd: [number + ' Tage', number + ' Tagen'],\n w: ['eine Woche', 'einer Woche'],\n M: ['ein Monat', 'einem Monat'],\n MM: [number + ' Monate', number + ' Monaten'],\n y: ['ein Jahr', 'einem Jahr'],\n yy: [number + ' Jahre', number + ' Jahren'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var deAt = moment.defineLocale('de-at', {\n months: 'Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort:\n 'Jän._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),\n monthsParseExact: true,\n weekdays:\n 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split(\n '_'\n ),\n weekdaysShort: 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),\n weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd, D. MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]',\n },\n relativeTime: {\n future: 'in %s',\n past: 'vor %s',\n s: 'ein paar Sekunden',\n ss: '%d Sekunden',\n m: processRelativeTime,\n mm: '%d Minuten',\n h: processRelativeTime,\n hh: '%d Stunden',\n d: processRelativeTime,\n dd: processRelativeTime,\n w: processRelativeTime,\n ww: '%d Wochen',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return deAt;\n\n})));\n","//! moment.js locale configuration\n//! locale : German (Switzerland) [de-ch]\n//! author : sschueller : https://github.com/sschueller\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eine Minute', 'einer Minute'],\n h: ['eine Stunde', 'einer Stunde'],\n d: ['ein Tag', 'einem Tag'],\n dd: [number + ' Tage', number + ' Tagen'],\n w: ['eine Woche', 'einer Woche'],\n M: ['ein Monat', 'einem Monat'],\n MM: [number + ' Monate', number + ' Monaten'],\n y: ['ein Jahr', 'einem Jahr'],\n yy: [number + ' Jahre', number + ' Jahren'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var deCh = moment.defineLocale('de-ch', {\n months: 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort:\n 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),\n monthsParseExact: true,\n weekdays:\n 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split(\n '_'\n ),\n weekdaysShort: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd, D. MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]',\n },\n relativeTime: {\n future: 'in %s',\n past: 'vor %s',\n s: 'ein paar Sekunden',\n ss: '%d Sekunden',\n m: processRelativeTime,\n mm: '%d Minuten',\n h: processRelativeTime,\n hh: '%d Stunden',\n d: processRelativeTime,\n dd: processRelativeTime,\n w: processRelativeTime,\n ww: '%d Wochen',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return deCh;\n\n})));\n","//! moment.js locale configuration\n//! locale : German [de]\n//! author : lluchs : https://github.com/lluchs\n//! author: Menelion Elensúle: https://github.com/Oire\n//! author : Mikolaj Dadela : https://github.com/mik01aj\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eine Minute', 'einer Minute'],\n h: ['eine Stunde', 'einer Stunde'],\n d: ['ein Tag', 'einem Tag'],\n dd: [number + ' Tage', number + ' Tagen'],\n w: ['eine Woche', 'einer Woche'],\n M: ['ein Monat', 'einem Monat'],\n MM: [number + ' Monate', number + ' Monaten'],\n y: ['ein Jahr', 'einem Jahr'],\n yy: [number + ' Jahre', number + ' Jahren'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var de = moment.defineLocale('de', {\n months: 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort:\n 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),\n monthsParseExact: true,\n weekdays:\n 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split(\n '_'\n ),\n weekdaysShort: 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),\n weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd, D. MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]',\n },\n relativeTime: {\n future: 'in %s',\n past: 'vor %s',\n s: 'ein paar Sekunden',\n ss: '%d Sekunden',\n m: processRelativeTime,\n mm: '%d Minuten',\n h: processRelativeTime,\n hh: '%d Stunden',\n d: processRelativeTime,\n dd: processRelativeTime,\n w: processRelativeTime,\n ww: '%d Wochen',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return de;\n\n})));\n","//! moment.js locale configuration\n//! locale : Maldivian [dv]\n//! author : Jawish Hameed : https://github.com/jawish\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'ޖެނުއަރީ',\n 'ފެބްރުއަރީ',\n 'މާރިޗު',\n 'އޭޕްރީލު',\n 'މޭ',\n 'ޖޫން',\n 'ޖުލައި',\n 'އޯގަސްޓު',\n 'ސެޕްޓެމްބަރު',\n 'އޮކްޓޯބަރު',\n 'ނޮވެމްބަރު',\n 'ޑިސެމްބަރު',\n ],\n weekdays = [\n 'އާދިއްތަ',\n 'ހޯމަ',\n 'އަންގާރަ',\n 'ބުދަ',\n 'ބުރާސްފަތި',\n 'ހުކުރު',\n 'ހޮނިހިރު',\n ];\n\n var dv = moment.defineLocale('dv', {\n months: months,\n monthsShort: months,\n weekdays: weekdays,\n weekdaysShort: weekdays,\n weekdaysMin: 'އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/M/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /މކ|މފ/,\n isPM: function (input) {\n return 'މފ' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'މކ';\n } else {\n return 'މފ';\n }\n },\n calendar: {\n sameDay: '[މިއަދު] LT',\n nextDay: '[މާދަމާ] LT',\n nextWeek: 'dddd LT',\n lastDay: '[އިއްޔެ] LT',\n lastWeek: '[ފާއިތުވި] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ތެރޭގައި %s',\n past: 'ކުރިން %s',\n s: 'ސިކުންތުކޮޅެއް',\n ss: 'd% ސިކުންތު',\n m: 'މިނިޓެއް',\n mm: 'މިނިޓު %d',\n h: 'ގަޑިއިރެއް',\n hh: 'ގަޑިއިރު %d',\n d: 'ދުވަހެއް',\n dd: 'ދުވަސް %d',\n M: 'މަހެއް',\n MM: 'މަސް %d',\n y: 'އަހަރެއް',\n yy: 'އަހަރު %d',\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n dow: 7, // Sunday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return dv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Greek [el]\n//! author : Aggelos Karalias : https://github.com/mehiel\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function isFunction(input) {\n return (\n (typeof Function !== 'undefined' && input instanceof Function) ||\n Object.prototype.toString.call(input) === '[object Function]'\n );\n }\n\n var el = moment.defineLocale('el', {\n monthsNominativeEl:\n 'Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος'.split(\n '_'\n ),\n monthsGenitiveEl:\n 'Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου'.split(\n '_'\n ),\n months: function (momentToFormat, format) {\n if (!momentToFormat) {\n return this._monthsNominativeEl;\n } else if (\n typeof format === 'string' &&\n /D/.test(format.substring(0, format.indexOf('MMMM')))\n ) {\n // if there is a day number before 'MMMM'\n return this._monthsGenitiveEl[momentToFormat.month()];\n } else {\n return this._monthsNominativeEl[momentToFormat.month()];\n }\n },\n monthsShort: 'Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ'.split('_'),\n weekdays: 'Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο'.split(\n '_'\n ),\n weekdaysShort: 'Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ'.split('_'),\n weekdaysMin: 'Κυ_Δε_Τρ_Τε_Πε_Πα_Σα'.split('_'),\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'μμ' : 'ΜΜ';\n } else {\n return isLower ? 'πμ' : 'ΠΜ';\n }\n },\n isPM: function (input) {\n return (input + '').toLowerCase()[0] === 'μ';\n },\n meridiemParse: /[ΠΜ]\\.?Μ?\\.?/i,\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendarEl: {\n sameDay: '[Σήμερα {}] LT',\n nextDay: '[Αύριο {}] LT',\n nextWeek: 'dddd [{}] LT',\n lastDay: '[Χθες {}] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 6:\n return '[το προηγούμενο] dddd [{}] LT';\n default:\n return '[την προηγούμενη] dddd [{}] LT';\n }\n },\n sameElse: 'L',\n },\n calendar: function (key, mom) {\n var output = this._calendarEl[key],\n hours = mom && mom.hours();\n if (isFunction(output)) {\n output = output.apply(mom);\n }\n return output.replace('{}', hours % 12 === 1 ? 'στη' : 'στις');\n },\n relativeTime: {\n future: 'σε %s',\n past: '%s πριν',\n s: 'λίγα δευτερόλεπτα',\n ss: '%d δευτερόλεπτα',\n m: 'ένα λεπτό',\n mm: '%d λεπτά',\n h: 'μία ώρα',\n hh: '%d ώρες',\n d: 'μία μέρα',\n dd: '%d μέρες',\n M: 'ένας μήνας',\n MM: '%d μήνες',\n y: 'ένας χρόνος',\n yy: '%d χρόνια',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}η/,\n ordinal: '%dη',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4st is the first week of the year.\n },\n });\n\n return el;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Australia) [en-au]\n//! author : Jared Morse : https://github.com/jarcoal\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enAu = moment.defineLocale('en-au', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enAu;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Canada) [en-ca]\n//! author : Jonathan Abourbih : https://github.com/jonbca\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enCa = moment.defineLocale('en-ca', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'YYYY-MM-DD',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY h:mm A',\n LLLL: 'dddd, MMMM D, YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n });\n\n return enCa;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (United Kingdom) [en-gb]\n//! author : Chris Gedrim : https://github.com/chrisgedrim\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enGb = moment.defineLocale('en-gb', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enGb;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Ireland) [en-ie]\n//! author : Chris Cartlidge : https://github.com/chriscartlidge\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enIe = moment.defineLocale('en-ie', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enIe;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Israel) [en-il]\n//! author : Chris Gedrim : https://github.com/chrisgedrim\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enIl = moment.defineLocale('en-il', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n });\n\n return enIl;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (India) [en-in]\n//! author : Jatin Agrawal : https://github.com/jatinag22\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enIn = moment.defineLocale('en-in', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 1st is the first week of the year.\n },\n });\n\n return enIn;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (New Zealand) [en-nz]\n//! author : Luke McGregor : https://github.com/lukemcgregor\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enNz = moment.defineLocale('en-nz', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enNz;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Singapore) [en-sg]\n//! author : Matthew Castrillon-Madrigal : https://github.com/techdimension\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enSg = moment.defineLocale('en-sg', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enSg;\n\n})));\n","//! moment.js locale configuration\n//! locale : Esperanto [eo]\n//! author : Colin Dean : https://github.com/colindean\n//! author : Mia Nordentoft Imperatori : https://github.com/miestasmia\n//! comment : miestasmia corrected the translation by colindean\n//! comment : Vivakvo corrected the translation by colindean and miestasmia\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var eo = moment.defineLocale('eo', {\n months: 'januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mart_apr_maj_jun_jul_aŭg_sept_okt_nov_dec'.split('_'),\n weekdays: 'dimanĉo_lundo_mardo_merkredo_ĵaŭdo_vendredo_sabato'.split('_'),\n weekdaysShort: 'dim_lun_mard_merk_ĵaŭ_ven_sab'.split('_'),\n weekdaysMin: 'di_lu_ma_me_ĵa_ve_sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: '[la] D[-an de] MMMM, YYYY',\n LLL: '[la] D[-an de] MMMM, YYYY HH:mm',\n LLLL: 'dddd[n], [la] D[-an de] MMMM, YYYY HH:mm',\n llll: 'ddd, [la] D[-an de] MMM, YYYY HH:mm',\n },\n meridiemParse: /[ap]\\.t\\.m/i,\n isPM: function (input) {\n return input.charAt(0).toLowerCase() === 'p';\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'p.t.m.' : 'P.T.M.';\n } else {\n return isLower ? 'a.t.m.' : 'A.T.M.';\n }\n },\n calendar: {\n sameDay: '[Hodiaŭ je] LT',\n nextDay: '[Morgaŭ je] LT',\n nextWeek: 'dddd[n je] LT',\n lastDay: '[Hieraŭ je] LT',\n lastWeek: '[pasintan] dddd[n je] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'post %s',\n past: 'antaŭ %s',\n s: 'kelkaj sekundoj',\n ss: '%d sekundoj',\n m: 'unu minuto',\n mm: '%d minutoj',\n h: 'unu horo',\n hh: '%d horoj',\n d: 'unu tago', //ne 'diurno', ĉar estas uzita por proksimumo\n dd: '%d tagoj',\n M: 'unu monato',\n MM: '%d monatoj',\n y: 'unu jaro',\n yy: '%d jaroj',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}a/,\n ordinal: '%da',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return eo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Spanish (Dominican Republic) [es-do]\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortDot =\n 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex =\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\n var esDo = moment.defineLocale('es-do', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex:\n /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY h:mm A',\n LLLL: 'dddd, D [de] MMMM [de] YYYY h:mm A',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return esDo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Spanish (Mexico) [es-mx]\n//! author : JC Franco : https://github.com/jcfranco\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortDot =\n 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex =\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\n var esMx = moment.defineLocale('es-mx', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex:\n /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY H:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n invalidDate: 'Fecha inválida',\n });\n\n return esMx;\n\n})));\n","//! moment.js locale configuration\n//! locale : Spanish (United States) [es-us]\n//! author : bustta : https://github.com/bustta\n//! author : chrisrodz : https://github.com/chrisrodz\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortDot =\n 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex =\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\n var esUs = moment.defineLocale('es-us', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex:\n /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'MM/DD/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY h:mm A',\n LLLL: 'dddd, D [de] MMMM [de] YYYY h:mm A',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return esUs;\n\n})));\n","//! moment.js locale configuration\n//! locale : Spanish [es]\n//! author : Julio Napurí : https://github.com/julionc\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortDot =\n 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex =\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\n var es = moment.defineLocale('es', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex:\n /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY H:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n invalidDate: 'Fecha inválida',\n });\n\n return es;\n\n})));\n","//! moment.js locale configuration\n//! locale : Estonian [et]\n//! author : Henry Kehlmann : https://github.com/madhenry\n//! improvements : Illimar Tambek : https://github.com/ragulka\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['mõne sekundi', 'mõni sekund', 'paar sekundit'],\n ss: [number + 'sekundi', number + 'sekundit'],\n m: ['ühe minuti', 'üks minut'],\n mm: [number + ' minuti', number + ' minutit'],\n h: ['ühe tunni', 'tund aega', 'üks tund'],\n hh: [number + ' tunni', number + ' tundi'],\n d: ['ühe päeva', 'üks päev'],\n M: ['kuu aja', 'kuu aega', 'üks kuu'],\n MM: [number + ' kuu', number + ' kuud'],\n y: ['ühe aasta', 'aasta', 'üks aasta'],\n yy: [number + ' aasta', number + ' aastat'],\n };\n if (withoutSuffix) {\n return format[key][2] ? format[key][2] : format[key][1];\n }\n return isFuture ? format[key][0] : format[key][1];\n }\n\n var et = moment.defineLocale('et', {\n months: 'jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember'.split(\n '_'\n ),\n monthsShort:\n 'jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets'.split('_'),\n weekdays:\n 'pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev'.split(\n '_'\n ),\n weekdaysShort: 'P_E_T_K_N_R_L'.split('_'),\n weekdaysMin: 'P_E_T_K_N_R_L'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[Täna,] LT',\n nextDay: '[Homme,] LT',\n nextWeek: '[Järgmine] dddd LT',\n lastDay: '[Eile,] LT',\n lastWeek: '[Eelmine] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s pärast',\n past: '%s tagasi',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: '%d päeva',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return et;\n\n})));\n","//! moment.js locale configuration\n//! locale : Basque [eu]\n//! author : Eneko Illarramendi : https://github.com/eillarra\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var eu = moment.defineLocale('eu', {\n months: 'urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua'.split(\n '_'\n ),\n monthsShort:\n 'urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata'.split(\n '_'\n ),\n weekdaysShort: 'ig._al._ar._az._og._ol._lr.'.split('_'),\n weekdaysMin: 'ig_al_ar_az_og_ol_lr'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY[ko] MMMM[ren] D[a]',\n LLL: 'YYYY[ko] MMMM[ren] D[a] HH:mm',\n LLLL: 'dddd, YYYY[ko] MMMM[ren] D[a] HH:mm',\n l: 'YYYY-M-D',\n ll: 'YYYY[ko] MMM D[a]',\n lll: 'YYYY[ko] MMM D[a] HH:mm',\n llll: 'ddd, YYYY[ko] MMM D[a] HH:mm',\n },\n calendar: {\n sameDay: '[gaur] LT[etan]',\n nextDay: '[bihar] LT[etan]',\n nextWeek: 'dddd LT[etan]',\n lastDay: '[atzo] LT[etan]',\n lastWeek: '[aurreko] dddd LT[etan]',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s barru',\n past: 'duela %s',\n s: 'segundo batzuk',\n ss: '%d segundo',\n m: 'minutu bat',\n mm: '%d minutu',\n h: 'ordu bat',\n hh: '%d ordu',\n d: 'egun bat',\n dd: '%d egun',\n M: 'hilabete bat',\n MM: '%d hilabete',\n y: 'urte bat',\n yy: '%d urte',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return eu;\n\n})));\n","//! moment.js locale configuration\n//! locale : Persian [fa]\n//! author : Ebrahim Byagowi : https://github.com/ebraminio\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '۱',\n 2: '۲',\n 3: '۳',\n 4: '۴',\n 5: '۵',\n 6: '۶',\n 7: '۷',\n 8: '۸',\n 9: '۹',\n 0: '۰',\n },\n numberMap = {\n '۱': '1',\n '۲': '2',\n '۳': '3',\n '۴': '4',\n '۵': '5',\n '۶': '6',\n '۷': '7',\n '۸': '8',\n '۹': '9',\n '۰': '0',\n };\n\n var fa = moment.defineLocale('fa', {\n months: 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split(\n '_'\n ),\n monthsShort:\n 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split(\n '_'\n ),\n weekdays:\n 'یک\\u200cشنبه_دوشنبه_سه\\u200cشنبه_چهارشنبه_پنج\\u200cشنبه_جمعه_شنبه'.split(\n '_'\n ),\n weekdaysShort:\n 'یک\\u200cشنبه_دوشنبه_سه\\u200cشنبه_چهارشنبه_پنج\\u200cشنبه_جمعه_شنبه'.split(\n '_'\n ),\n weekdaysMin: 'ی_د_س_چ_پ_ج_ش'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n meridiemParse: /قبل از ظهر|بعد از ظهر/,\n isPM: function (input) {\n return /بعد از ظهر/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'قبل از ظهر';\n } else {\n return 'بعد از ظهر';\n }\n },\n calendar: {\n sameDay: '[امروز ساعت] LT',\n nextDay: '[فردا ساعت] LT',\n nextWeek: 'dddd [ساعت] LT',\n lastDay: '[دیروز ساعت] LT',\n lastWeek: 'dddd [پیش] [ساعت] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'در %s',\n past: '%s پیش',\n s: 'چند ثانیه',\n ss: '%d ثانیه',\n m: 'یک دقیقه',\n mm: '%d دقیقه',\n h: 'یک ساعت',\n hh: '%d ساعت',\n d: 'یک روز',\n dd: '%d روز',\n M: 'یک ماه',\n MM: '%d ماه',\n y: 'یک سال',\n yy: '%d سال',\n },\n preparse: function (string) {\n return string\n .replace(/[۰-۹]/g, function (match) {\n return numberMap[match];\n })\n .replace(/،/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, '،');\n },\n dayOfMonthOrdinalParse: /\\d{1,2}م/,\n ordinal: '%dم',\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return fa;\n\n})));\n","//! moment.js locale configuration\n//! locale : Finnish [fi]\n//! author : Tarmo Aidantausta : https://github.com/bleadof\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var numbersPast =\n 'nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän'.split(\n ' '\n ),\n numbersFuture = [\n 'nolla',\n 'yhden',\n 'kahden',\n 'kolmen',\n 'neljän',\n 'viiden',\n 'kuuden',\n numbersPast[7],\n numbersPast[8],\n numbersPast[9],\n ];\n function translate(number, withoutSuffix, key, isFuture) {\n var result = '';\n switch (key) {\n case 's':\n return isFuture ? 'muutaman sekunnin' : 'muutama sekunti';\n case 'ss':\n result = isFuture ? 'sekunnin' : 'sekuntia';\n break;\n case 'm':\n return isFuture ? 'minuutin' : 'minuutti';\n case 'mm':\n result = isFuture ? 'minuutin' : 'minuuttia';\n break;\n case 'h':\n return isFuture ? 'tunnin' : 'tunti';\n case 'hh':\n result = isFuture ? 'tunnin' : 'tuntia';\n break;\n case 'd':\n return isFuture ? 'päivän' : 'päivä';\n case 'dd':\n result = isFuture ? 'päivän' : 'päivää';\n break;\n case 'M':\n return isFuture ? 'kuukauden' : 'kuukausi';\n case 'MM':\n result = isFuture ? 'kuukauden' : 'kuukautta';\n break;\n case 'y':\n return isFuture ? 'vuoden' : 'vuosi';\n case 'yy':\n result = isFuture ? 'vuoden' : 'vuotta';\n break;\n }\n result = verbalNumber(number, isFuture) + ' ' + result;\n return result;\n }\n function verbalNumber(number, isFuture) {\n return number < 10\n ? isFuture\n ? numbersFuture[number]\n : numbersPast[number]\n : number;\n }\n\n var fi = moment.defineLocale('fi', {\n months: 'tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu'.split(\n '_'\n ),\n monthsShort:\n 'tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu'.split(\n '_'\n ),\n weekdays:\n 'sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai'.split(\n '_'\n ),\n weekdaysShort: 'su_ma_ti_ke_to_pe_la'.split('_'),\n weekdaysMin: 'su_ma_ti_ke_to_pe_la'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD.MM.YYYY',\n LL: 'Do MMMM[ta] YYYY',\n LLL: 'Do MMMM[ta] YYYY, [klo] HH.mm',\n LLLL: 'dddd, Do MMMM[ta] YYYY, [klo] HH.mm',\n l: 'D.M.YYYY',\n ll: 'Do MMM YYYY',\n lll: 'Do MMM YYYY, [klo] HH.mm',\n llll: 'ddd, Do MMM YYYY, [klo] HH.mm',\n },\n calendar: {\n sameDay: '[tänään] [klo] LT',\n nextDay: '[huomenna] [klo] LT',\n nextWeek: 'dddd [klo] LT',\n lastDay: '[eilen] [klo] LT',\n lastWeek: '[viime] dddd[na] [klo] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s päästä',\n past: '%s sitten',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fi;\n\n})));\n","//! moment.js locale configuration\n//! locale : Filipino [fil]\n//! author : Dan Hagman : https://github.com/hagmandan\n//! author : Matthew Co : https://github.com/matthewdeeco\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var fil = moment.defineLocale('fil', {\n months: 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split(\n '_'\n ),\n monthsShort: 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'),\n weekdays: 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split(\n '_'\n ),\n weekdaysShort: 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'),\n weekdaysMin: 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'MM/D/YYYY',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY HH:mm',\n LLLL: 'dddd, MMMM DD, YYYY HH:mm',\n },\n calendar: {\n sameDay: 'LT [ngayong araw]',\n nextDay: '[Bukas ng] LT',\n nextWeek: 'LT [sa susunod na] dddd',\n lastDay: 'LT [kahapon]',\n lastWeek: 'LT [noong nakaraang] dddd',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'sa loob ng %s',\n past: '%s ang nakalipas',\n s: 'ilang segundo',\n ss: '%d segundo',\n m: 'isang minuto',\n mm: '%d minuto',\n h: 'isang oras',\n hh: '%d oras',\n d: 'isang araw',\n dd: '%d araw',\n M: 'isang buwan',\n MM: '%d buwan',\n y: 'isang taon',\n yy: '%d taon',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal: function (number) {\n return number;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fil;\n\n})));\n","//! moment.js locale configuration\n//! locale : Faroese [fo]\n//! author : Ragnar Johannesen : https://github.com/ragnar123\n//! author : Kristian Sakarisson : https://github.com/sakarisson\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var fo = moment.defineLocale('fo', {\n months: 'januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),\n weekdays:\n 'sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur'.split(\n '_'\n ),\n weekdaysShort: 'sun_mán_týs_mik_hós_frí_ley'.split('_'),\n weekdaysMin: 'su_má_tý_mi_hó_fr_le'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D. MMMM, YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Í dag kl.] LT',\n nextDay: '[Í morgin kl.] LT',\n nextWeek: 'dddd [kl.] LT',\n lastDay: '[Í gjár kl.] LT',\n lastWeek: '[síðstu] dddd [kl] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'um %s',\n past: '%s síðani',\n s: 'fá sekund',\n ss: '%d sekundir',\n m: 'ein minuttur',\n mm: '%d minuttir',\n h: 'ein tími',\n hh: '%d tímar',\n d: 'ein dagur',\n dd: '%d dagar',\n M: 'ein mánaður',\n MM: '%d mánaðir',\n y: 'eitt ár',\n yy: '%d ár',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fo;\n\n})));\n","//! moment.js locale configuration\n//! locale : French (Canada) [fr-ca]\n//! author : Jonathan Abourbih : https://github.com/jonbca\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var frCa = moment.defineLocale('fr-ca', {\n months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split(\n '_'\n ),\n monthsShort:\n 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Aujourd’hui à] LT',\n nextDay: '[Demain à] LT',\n nextWeek: 'dddd [à] LT',\n lastDay: '[Hier à] LT',\n lastWeek: 'dddd [dernier à] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dans %s',\n past: 'il y a %s',\n s: 'quelques secondes',\n ss: '%d secondes',\n m: 'une minute',\n mm: '%d minutes',\n h: 'une heure',\n hh: '%d heures',\n d: 'un jour',\n dd: '%d jours',\n M: 'un mois',\n MM: '%d mois',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|e)/,\n ordinal: function (number, period) {\n switch (period) {\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'D':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n });\n\n return frCa;\n\n})));\n","//! moment.js locale configuration\n//! locale : French (Switzerland) [fr-ch]\n//! author : Gaspard Bucher : https://github.com/gaspard\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var frCh = moment.defineLocale('fr-ch', {\n months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split(\n '_'\n ),\n monthsShort:\n 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Aujourd’hui à] LT',\n nextDay: '[Demain à] LT',\n nextWeek: 'dddd [à] LT',\n lastDay: '[Hier à] LT',\n lastWeek: 'dddd [dernier à] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dans %s',\n past: 'il y a %s',\n s: 'quelques secondes',\n ss: '%d secondes',\n m: 'une minute',\n mm: '%d minutes',\n h: 'une heure',\n hh: '%d heures',\n d: 'un jour',\n dd: '%d jours',\n M: 'un mois',\n MM: '%d mois',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|e)/,\n ordinal: function (number, period) {\n switch (period) {\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'D':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return frCh;\n\n})));\n","//! moment.js locale configuration\n//! locale : French [fr]\n//! author : John Fischer : https://github.com/jfroffice\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsStrictRegex =\n /^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,\n monthsShortStrictRegex =\n /(janv\\.?|févr\\.?|mars|avr\\.?|mai|juin|juil\\.?|août|sept\\.?|oct\\.?|nov\\.?|déc\\.?)/i,\n monthsRegex =\n /(janv\\.?|févr\\.?|mars|avr\\.?|mai|juin|juil\\.?|août|sept\\.?|oct\\.?|nov\\.?|déc\\.?|janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,\n monthsParse = [\n /^janv/i,\n /^févr/i,\n /^mars/i,\n /^avr/i,\n /^mai/i,\n /^juin/i,\n /^juil/i,\n /^août/i,\n /^sept/i,\n /^oct/i,\n /^nov/i,\n /^déc/i,\n ];\n\n var fr = moment.defineLocale('fr', {\n months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split(\n '_'\n ),\n monthsShort:\n 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split(\n '_'\n ),\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: monthsStrictRegex,\n monthsShortStrictRegex: monthsShortStrictRegex,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Aujourd’hui à] LT',\n nextDay: '[Demain à] LT',\n nextWeek: 'dddd [à] LT',\n lastDay: '[Hier à] LT',\n lastWeek: 'dddd [dernier à] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dans %s',\n past: 'il y a %s',\n s: 'quelques secondes',\n ss: '%d secondes',\n m: 'une minute',\n mm: '%d minutes',\n h: 'une heure',\n hh: '%d heures',\n d: 'un jour',\n dd: '%d jours',\n w: 'une semaine',\n ww: '%d semaines',\n M: 'un mois',\n MM: '%d mois',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|)/,\n ordinal: function (number, period) {\n switch (period) {\n // TODO: Return 'e' when day of month > 1. Move this case inside\n // block for masculine words below.\n // See https://github.com/moment/moment/issues/3375\n case 'D':\n return number + (number === 1 ? 'er' : '');\n\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Frisian [fy]\n//! author : Robin van der Vliet : https://github.com/robin0van0der0v\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortWithDots =\n 'jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.'.split('_'),\n monthsShortWithoutDots =\n 'jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_');\n\n var fy = moment.defineLocale('fy', {\n months: 'jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n monthsParseExact: true,\n weekdays: 'snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon'.split(\n '_'\n ),\n weekdaysShort: 'si._mo._ti._wo._to._fr._so.'.split('_'),\n weekdaysMin: 'Si_Mo_Ti_Wo_To_Fr_So'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[hjoed om] LT',\n nextDay: '[moarn om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[juster om] LT',\n lastWeek: '[ôfrûne] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'oer %s',\n past: '%s lyn',\n s: 'in pear sekonden',\n ss: '%d sekonden',\n m: 'ien minút',\n mm: '%d minuten',\n h: 'ien oere',\n hh: '%d oeren',\n d: 'ien dei',\n dd: '%d dagen',\n M: 'ien moanne',\n MM: '%d moannen',\n y: 'ien jier',\n yy: '%d jierren',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n );\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fy;\n\n})));\n","//! moment.js locale configuration\n//! locale : Irish or Irish Gaelic [ga]\n//! author : André Silva : https://github.com/askpt\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'Eanáir',\n 'Feabhra',\n 'Márta',\n 'Aibreán',\n 'Bealtaine',\n 'Meitheamh',\n 'Iúil',\n 'Lúnasa',\n 'Meán Fómhair',\n 'Deireadh Fómhair',\n 'Samhain',\n 'Nollaig',\n ],\n monthsShort = [\n 'Ean',\n 'Feabh',\n 'Márt',\n 'Aib',\n 'Beal',\n 'Meith',\n 'Iúil',\n 'Lún',\n 'M.F.',\n 'D.F.',\n 'Samh',\n 'Noll',\n ],\n weekdays = [\n 'Dé Domhnaigh',\n 'Dé Luain',\n 'Dé Máirt',\n 'Dé Céadaoin',\n 'Déardaoin',\n 'Dé hAoine',\n 'Dé Sathairn',\n ],\n weekdaysShort = ['Domh', 'Luan', 'Máirt', 'Céad', 'Déar', 'Aoine', 'Sath'],\n weekdaysMin = ['Do', 'Lu', 'Má', 'Cé', 'Dé', 'A', 'Sa'];\n\n var ga = moment.defineLocale('ga', {\n months: months,\n monthsShort: monthsShort,\n monthsParseExact: true,\n weekdays: weekdays,\n weekdaysShort: weekdaysShort,\n weekdaysMin: weekdaysMin,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Inniu ag] LT',\n nextDay: '[Amárach ag] LT',\n nextWeek: 'dddd [ag] LT',\n lastDay: '[Inné ag] LT',\n lastWeek: 'dddd [seo caite] [ag] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'i %s',\n past: '%s ó shin',\n s: 'cúpla soicind',\n ss: '%d soicind',\n m: 'nóiméad',\n mm: '%d nóiméad',\n h: 'uair an chloig',\n hh: '%d uair an chloig',\n d: 'lá',\n dd: '%d lá',\n M: 'mí',\n MM: '%d míonna',\n y: 'bliain',\n yy: '%d bliain',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(d|na|mh)/,\n ordinal: function (number) {\n var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ga;\n\n})));\n","//! moment.js locale configuration\n//! locale : Scottish Gaelic [gd]\n//! author : Jon Ashdown : https://github.com/jonashdown\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'Am Faoilleach',\n 'An Gearran',\n 'Am Màrt',\n 'An Giblean',\n 'An Cèitean',\n 'An t-Ògmhios',\n 'An t-Iuchar',\n 'An Lùnastal',\n 'An t-Sultain',\n 'An Dàmhair',\n 'An t-Samhain',\n 'An Dùbhlachd',\n ],\n monthsShort = [\n 'Faoi',\n 'Gear',\n 'Màrt',\n 'Gibl',\n 'Cèit',\n 'Ògmh',\n 'Iuch',\n 'Lùn',\n 'Sult',\n 'Dàmh',\n 'Samh',\n 'Dùbh',\n ],\n weekdays = [\n 'Didòmhnaich',\n 'Diluain',\n 'Dimàirt',\n 'Diciadain',\n 'Diardaoin',\n 'Dihaoine',\n 'Disathairne',\n ],\n weekdaysShort = ['Did', 'Dil', 'Dim', 'Dic', 'Dia', 'Dih', 'Dis'],\n weekdaysMin = ['Dò', 'Lu', 'Mà', 'Ci', 'Ar', 'Ha', 'Sa'];\n\n var gd = moment.defineLocale('gd', {\n months: months,\n monthsShort: monthsShort,\n monthsParseExact: true,\n weekdays: weekdays,\n weekdaysShort: weekdaysShort,\n weekdaysMin: weekdaysMin,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[An-diugh aig] LT',\n nextDay: '[A-màireach aig] LT',\n nextWeek: 'dddd [aig] LT',\n lastDay: '[An-dè aig] LT',\n lastWeek: 'dddd [seo chaidh] [aig] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ann an %s',\n past: 'bho chionn %s',\n s: 'beagan diogan',\n ss: '%d diogan',\n m: 'mionaid',\n mm: '%d mionaidean',\n h: 'uair',\n hh: '%d uairean',\n d: 'latha',\n dd: '%d latha',\n M: 'mìos',\n MM: '%d mìosan',\n y: 'bliadhna',\n yy: '%d bliadhna',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(d|na|mh)/,\n ordinal: function (number) {\n var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return gd;\n\n})));\n","//! moment.js locale configuration\n//! locale : Galician [gl]\n//! author : Juan G. Hurtado : https://github.com/juanghurtado\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var gl = moment.defineLocale('gl', {\n months: 'xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro'.split(\n '_'\n ),\n monthsShort:\n 'xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'domingo_luns_martes_mércores_xoves_venres_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mér._xov._ven._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mé_xo_ve_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY H:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[hoxe ' + (this.hours() !== 1 ? 'ás' : 'á') + '] LT';\n },\n nextDay: function () {\n return '[mañá ' + (this.hours() !== 1 ? 'ás' : 'á') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [' + (this.hours() !== 1 ? 'ás' : 'a') + '] LT';\n },\n lastDay: function () {\n return '[onte ' + (this.hours() !== 1 ? 'á' : 'a') + '] LT';\n },\n lastWeek: function () {\n return (\n '[o] dddd [pasado ' + (this.hours() !== 1 ? 'ás' : 'a') + '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: function (str) {\n if (str.indexOf('un') === 0) {\n return 'n' + str;\n }\n return 'en ' + str;\n },\n past: 'hai %s',\n s: 'uns segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'unha hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n M: 'un mes',\n MM: '%d meses',\n y: 'un ano',\n yy: '%d anos',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return gl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Konkani Devanagari script [gom-deva]\n//! author : The Discoverer : https://github.com/WikiDiscoverer\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['थोडया सॅकंडांनी', 'थोडे सॅकंड'],\n ss: [number + ' सॅकंडांनी', number + ' सॅकंड'],\n m: ['एका मिणटान', 'एक मिनूट'],\n mm: [number + ' मिणटांनी', number + ' मिणटां'],\n h: ['एका वरान', 'एक वर'],\n hh: [number + ' वरांनी', number + ' वरां'],\n d: ['एका दिसान', 'एक दीस'],\n dd: [number + ' दिसांनी', number + ' दीस'],\n M: ['एका म्हयन्यान', 'एक म्हयनो'],\n MM: [number + ' म्हयन्यानी', number + ' म्हयने'],\n y: ['एका वर्सान', 'एक वर्स'],\n yy: [number + ' वर्सांनी', number + ' वर्सां'],\n };\n return isFuture ? format[key][0] : format[key][1];\n }\n\n var gomDeva = moment.defineLocale('gom-deva', {\n months: {\n standalone:\n 'जानेवारी_फेब्रुवारी_मार्च_एप्रील_मे_जून_जुलय_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर'.split(\n '_'\n ),\n format: 'जानेवारीच्या_फेब्रुवारीच्या_मार्चाच्या_एप्रीलाच्या_मेयाच्या_जूनाच्या_जुलयाच्या_ऑगस्टाच्या_सप्टेंबराच्या_ऑक्टोबराच्या_नोव्हेंबराच्या_डिसेंबराच्या'.split(\n '_'\n ),\n isFormat: /MMMM(\\s)+D[oD]?/,\n },\n monthsShort:\n 'जाने._फेब्रु._मार्च_एप्री._मे_जून_जुल._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'आयतार_सोमार_मंगळार_बुधवार_बिरेस्तार_सुक्रार_शेनवार'.split('_'),\n weekdaysShort: 'आयत._सोम._मंगळ._बुध._ब्रेस्त._सुक्र._शेन.'.split('_'),\n weekdaysMin: 'आ_सो_मं_बु_ब्रे_सु_शे'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'A h:mm [वाजतां]',\n LTS: 'A h:mm:ss [वाजतां]',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY A h:mm [वाजतां]',\n LLLL: 'dddd, MMMM Do, YYYY, A h:mm [वाजतां]',\n llll: 'ddd, D MMM YYYY, A h:mm [वाजतां]',\n },\n calendar: {\n sameDay: '[आयज] LT',\n nextDay: '[फाल्यां] LT',\n nextWeek: '[फुडलो] dddd[,] LT',\n lastDay: '[काल] LT',\n lastWeek: '[फाटलो] dddd[,] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s',\n past: '%s आदीं',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(वेर)/,\n ordinal: function (number, period) {\n switch (period) {\n // the ordinal 'वेर' only applies to day of the month\n case 'D':\n return number + 'वेर';\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n case 'w':\n case 'W':\n return number;\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week\n doy: 3, // The week that contains Jan 4th is the first week of the year (7 + 0 - 4)\n },\n meridiemParse: /राती|सकाळीं|दनपारां|सांजे/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'राती') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'सकाळीं') {\n return hour;\n } else if (meridiem === 'दनपारां') {\n return hour > 12 ? hour : hour + 12;\n } else if (meridiem === 'सांजे') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'राती';\n } else if (hour < 12) {\n return 'सकाळीं';\n } else if (hour < 16) {\n return 'दनपारां';\n } else if (hour < 20) {\n return 'सांजे';\n } else {\n return 'राती';\n }\n },\n });\n\n return gomDeva;\n\n})));\n","//! moment.js locale configuration\n//! locale : Konkani Latin script [gom-latn]\n//! author : The Discoverer : https://github.com/WikiDiscoverer\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['thoddea sekondamni', 'thodde sekond'],\n ss: [number + ' sekondamni', number + ' sekond'],\n m: ['eka mintan', 'ek minut'],\n mm: [number + ' mintamni', number + ' mintam'],\n h: ['eka voran', 'ek vor'],\n hh: [number + ' voramni', number + ' voram'],\n d: ['eka disan', 'ek dis'],\n dd: [number + ' disamni', number + ' dis'],\n M: ['eka mhoinean', 'ek mhoino'],\n MM: [number + ' mhoineamni', number + ' mhoine'],\n y: ['eka vorsan', 'ek voros'],\n yy: [number + ' vorsamni', number + ' vorsam'],\n };\n return isFuture ? format[key][0] : format[key][1];\n }\n\n var gomLatn = moment.defineLocale('gom-latn', {\n months: {\n standalone:\n 'Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr'.split(\n '_'\n ),\n format: 'Janerachea_Febrerachea_Marsachea_Abrilachea_Maiachea_Junachea_Julaiachea_Agostachea_Setembrachea_Otubrachea_Novembrachea_Dezembrachea'.split(\n '_'\n ),\n isFormat: /MMMM(\\s)+D[oD]?/,\n },\n monthsShort:\n 'Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.'.split('_'),\n monthsParseExact: true,\n weekdays: \"Aitar_Somar_Mongllar_Budhvar_Birestar_Sukrar_Son'var\".split('_'),\n weekdaysShort: 'Ait._Som._Mon._Bud._Bre._Suk._Son.'.split('_'),\n weekdaysMin: 'Ai_Sm_Mo_Bu_Br_Su_Sn'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'A h:mm [vazta]',\n LTS: 'A h:mm:ss [vazta]',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY A h:mm [vazta]',\n LLLL: 'dddd, MMMM Do, YYYY, A h:mm [vazta]',\n llll: 'ddd, D MMM YYYY, A h:mm [vazta]',\n },\n calendar: {\n sameDay: '[Aiz] LT',\n nextDay: '[Faleam] LT',\n nextWeek: '[Fuddlo] dddd[,] LT',\n lastDay: '[Kal] LT',\n lastWeek: '[Fattlo] dddd[,] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s',\n past: '%s adim',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er)/,\n ordinal: function (number, period) {\n switch (period) {\n // the ordinal 'er' only applies to day of the month\n case 'D':\n return number + 'er';\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n case 'w':\n case 'W':\n return number;\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week\n doy: 3, // The week that contains Jan 4th is the first week of the year (7 + 0 - 4)\n },\n meridiemParse: /rati|sokallim|donparam|sanje/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'rati') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'sokallim') {\n return hour;\n } else if (meridiem === 'donparam') {\n return hour > 12 ? hour : hour + 12;\n } else if (meridiem === 'sanje') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'rati';\n } else if (hour < 12) {\n return 'sokallim';\n } else if (hour < 16) {\n return 'donparam';\n } else if (hour < 20) {\n return 'sanje';\n } else {\n return 'rati';\n }\n },\n });\n\n return gomLatn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Gujarati [gu]\n//! author : Kaushik Thanki : https://github.com/Kaushik1987\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '૧',\n 2: '૨',\n 3: '૩',\n 4: '૪',\n 5: '૫',\n 6: '૬',\n 7: '૭',\n 8: '૮',\n 9: '૯',\n 0: '૦',\n },\n numberMap = {\n '૧': '1',\n '૨': '2',\n '૩': '3',\n '૪': '4',\n '૫': '5',\n '૬': '6',\n '૭': '7',\n '૮': '8',\n '૯': '9',\n '૦': '0',\n };\n\n var gu = moment.defineLocale('gu', {\n months: 'જાન્યુઆરી_ફેબ્રુઆરી_માર્ચ_એપ્રિલ_મે_જૂન_જુલાઈ_ઑગસ્ટ_સપ્ટેમ્બર_ઑક્ટ્બર_નવેમ્બર_ડિસેમ્બર'.split(\n '_'\n ),\n monthsShort:\n 'જાન્યુ._ફેબ્રુ._માર્ચ_એપ્રિ._મે_જૂન_જુલા._ઑગ._સપ્ટે._ઑક્ટ્._નવે._ડિસે.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'રવિવાર_સોમવાર_મંગળવાર_બુધ્વાર_ગુરુવાર_શુક્રવાર_શનિવાર'.split(\n '_'\n ),\n weekdaysShort: 'રવિ_સોમ_મંગળ_બુધ્_ગુરુ_શુક્ર_શનિ'.split('_'),\n weekdaysMin: 'ર_સો_મં_બુ_ગુ_શુ_શ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm વાગ્યે',\n LTS: 'A h:mm:ss વાગ્યે',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm વાગ્યે',\n LLLL: 'dddd, D MMMM YYYY, A h:mm વાગ્યે',\n },\n calendar: {\n sameDay: '[આજ] LT',\n nextDay: '[કાલે] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[ગઇકાલે] LT',\n lastWeek: '[પાછલા] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s મા',\n past: '%s પહેલા',\n s: 'અમુક પળો',\n ss: '%d સેકંડ',\n m: 'એક મિનિટ',\n mm: '%d મિનિટ',\n h: 'એક કલાક',\n hh: '%d કલાક',\n d: 'એક દિવસ',\n dd: '%d દિવસ',\n M: 'એક મહિનો',\n MM: '%d મહિનો',\n y: 'એક વર્ષ',\n yy: '%d વર્ષ',\n },\n preparse: function (string) {\n return string.replace(/[૧૨૩૪૫૬૭૮૯૦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Gujarati notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Gujarati.\n meridiemParse: /રાત|બપોર|સવાર|સાંજ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'રાત') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'સવાર') {\n return hour;\n } else if (meridiem === 'બપોર') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'સાંજ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'રાત';\n } else if (hour < 10) {\n return 'સવાર';\n } else if (hour < 17) {\n return 'બપોર';\n } else if (hour < 20) {\n return 'સાંજ';\n } else {\n return 'રાત';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return gu;\n\n})));\n","//! moment.js locale configuration\n//! locale : Hebrew [he]\n//! author : Tomer Cohen : https://github.com/tomer\n//! author : Moshe Simantov : https://github.com/DevelopmentIL\n//! author : Tal Ater : https://github.com/TalAter\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var he = moment.defineLocale('he', {\n months: 'ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר'.split(\n '_'\n ),\n monthsShort:\n 'ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳'.split('_'),\n weekdays: 'ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת'.split('_'),\n weekdaysShort: 'א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳'.split('_'),\n weekdaysMin: 'א_ב_ג_ד_ה_ו_ש'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [ב]MMMM YYYY',\n LLL: 'D [ב]MMMM YYYY HH:mm',\n LLLL: 'dddd, D [ב]MMMM YYYY HH:mm',\n l: 'D/M/YYYY',\n ll: 'D MMM YYYY',\n lll: 'D MMM YYYY HH:mm',\n llll: 'ddd, D MMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[היום ב־]LT',\n nextDay: '[מחר ב־]LT',\n nextWeek: 'dddd [בשעה] LT',\n lastDay: '[אתמול ב־]LT',\n lastWeek: '[ביום] dddd [האחרון בשעה] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'בעוד %s',\n past: 'לפני %s',\n s: 'מספר שניות',\n ss: '%d שניות',\n m: 'דקה',\n mm: '%d דקות',\n h: 'שעה',\n hh: function (number) {\n if (number === 2) {\n return 'שעתיים';\n }\n return number + ' שעות';\n },\n d: 'יום',\n dd: function (number) {\n if (number === 2) {\n return 'יומיים';\n }\n return number + ' ימים';\n },\n M: 'חודש',\n MM: function (number) {\n if (number === 2) {\n return 'חודשיים';\n }\n return number + ' חודשים';\n },\n y: 'שנה',\n yy: function (number) {\n if (number === 2) {\n return 'שנתיים';\n } else if (number % 10 === 0 && number !== 10) {\n return number + ' שנה';\n }\n return number + ' שנים';\n },\n },\n meridiemParse:\n /אחה\"צ|לפנה\"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i,\n isPM: function (input) {\n return /^(אחה\"צ|אחרי הצהריים|בערב)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 5) {\n return 'לפנות בוקר';\n } else if (hour < 10) {\n return 'בבוקר';\n } else if (hour < 12) {\n return isLower ? 'לפנה\"צ' : 'לפני הצהריים';\n } else if (hour < 18) {\n return isLower ? 'אחה\"צ' : 'אחרי הצהריים';\n } else {\n return 'בערב';\n }\n },\n });\n\n return he;\n\n})));\n","//! moment.js locale configuration\n//! locale : Hindi [hi]\n//! author : Mayank Singhal : https://github.com/mayanksinghal\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '१',\n 2: '२',\n 3: '३',\n 4: '४',\n 5: '५',\n 6: '६',\n 7: '७',\n 8: '८',\n 9: '९',\n 0: '०',\n },\n numberMap = {\n '१': '1',\n '२': '2',\n '३': '3',\n '४': '4',\n '५': '5',\n '६': '6',\n '७': '7',\n '८': '8',\n '९': '9',\n '०': '0',\n },\n monthsParse = [\n /^जन/i,\n /^फ़र|फर/i,\n /^मार्च/i,\n /^अप्रै/i,\n /^मई/i,\n /^जून/i,\n /^जुल/i,\n /^अग/i,\n /^सितं|सित/i,\n /^अक्टू/i,\n /^नव|नवं/i,\n /^दिसं|दिस/i,\n ],\n shortMonthsParse = [\n /^जन/i,\n /^फ़र/i,\n /^मार्च/i,\n /^अप्रै/i,\n /^मई/i,\n /^जून/i,\n /^जुल/i,\n /^अग/i,\n /^सित/i,\n /^अक्टू/i,\n /^नव/i,\n /^दिस/i,\n ];\n\n var hi = moment.defineLocale('hi', {\n months: {\n format: 'जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर'.split(\n '_'\n ),\n standalone:\n 'जनवरी_फरवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितंबर_अक्टूबर_नवंबर_दिसंबर'.split(\n '_'\n ),\n },\n monthsShort:\n 'जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.'.split('_'),\n weekdays: 'रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'),\n weekdaysShort: 'रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि'.split('_'),\n weekdaysMin: 'र_सो_मं_बु_गु_शु_श'.split('_'),\n longDateFormat: {\n LT: 'A h:mm बजे',\n LTS: 'A h:mm:ss बजे',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm बजे',\n LLLL: 'dddd, D MMMM YYYY, A h:mm बजे',\n },\n\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: shortMonthsParse,\n\n monthsRegex:\n /^(जनवरी|जन\\.?|फ़रवरी|फरवरी|फ़र\\.?|मार्च?|अप्रैल|अप्रै\\.?|मई?|जून?|जुलाई|जुल\\.?|अगस्त|अग\\.?|सितम्बर|सितंबर|सित\\.?|अक्टूबर|अक्टू\\.?|नवम्बर|नवंबर|नव\\.?|दिसम्बर|दिसंबर|दिस\\.?)/i,\n\n monthsShortRegex:\n /^(जनवरी|जन\\.?|फ़रवरी|फरवरी|फ़र\\.?|मार्च?|अप्रैल|अप्रै\\.?|मई?|जून?|जुलाई|जुल\\.?|अगस्त|अग\\.?|सितम्बर|सितंबर|सित\\.?|अक्टूबर|अक्टू\\.?|नवम्बर|नवंबर|नव\\.?|दिसम्बर|दिसंबर|दिस\\.?)/i,\n\n monthsStrictRegex:\n /^(जनवरी?|फ़रवरी|फरवरी?|मार्च?|अप्रैल?|मई?|जून?|जुलाई?|अगस्त?|सितम्बर|सितंबर|सित?\\.?|अक्टूबर|अक्टू\\.?|नवम्बर|नवंबर?|दिसम्बर|दिसंबर?)/i,\n\n monthsShortStrictRegex:\n /^(जन\\.?|फ़र\\.?|मार्च?|अप्रै\\.?|मई?|जून?|जुल\\.?|अग\\.?|सित\\.?|अक्टू\\.?|नव\\.?|दिस\\.?)/i,\n\n calendar: {\n sameDay: '[आज] LT',\n nextDay: '[कल] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[कल] LT',\n lastWeek: '[पिछले] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s में',\n past: '%s पहले',\n s: 'कुछ ही क्षण',\n ss: '%d सेकंड',\n m: 'एक मिनट',\n mm: '%d मिनट',\n h: 'एक घंटा',\n hh: '%d घंटे',\n d: 'एक दिन',\n dd: '%d दिन',\n M: 'एक महीने',\n MM: '%d महीने',\n y: 'एक वर्ष',\n yy: '%d वर्ष',\n },\n preparse: function (string) {\n return string.replace(/[१२३४५६७८९०]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Hindi notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Hindi.\n meridiemParse: /रात|सुबह|दोपहर|शाम/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'रात') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'सुबह') {\n return hour;\n } else if (meridiem === 'दोपहर') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'शाम') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'रात';\n } else if (hour < 10) {\n return 'सुबह';\n } else if (hour < 17) {\n return 'दोपहर';\n } else if (hour < 20) {\n return 'शाम';\n } else {\n return 'रात';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return hi;\n\n})));\n","//! moment.js locale configuration\n//! locale : Croatian [hr]\n//! author : Bojan Marković : https://github.com/bmarkovic\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n if (number === 1) {\n result += 'sekunda';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sekunde';\n } else {\n result += 'sekundi';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'jedna minuta' : 'jedne minute';\n case 'mm':\n if (number === 1) {\n result += 'minuta';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'minute';\n } else {\n result += 'minuta';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'jedan sat' : 'jednog sata';\n case 'hh':\n if (number === 1) {\n result += 'sat';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sata';\n } else {\n result += 'sati';\n }\n return result;\n case 'dd':\n if (number === 1) {\n result += 'dan';\n } else {\n result += 'dana';\n }\n return result;\n case 'MM':\n if (number === 1) {\n result += 'mjesec';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'mjeseca';\n } else {\n result += 'mjeseci';\n }\n return result;\n case 'yy':\n if (number === 1) {\n result += 'godina';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'godine';\n } else {\n result += 'godina';\n }\n return result;\n }\n }\n\n var hr = moment.defineLocale('hr', {\n months: {\n format: 'siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca'.split(\n '_'\n ),\n standalone:\n 'siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac'.split(\n '_'\n ),\n },\n monthsShort:\n 'sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'Do MMMM YYYY',\n LLL: 'Do MMMM YYYY H:mm',\n LLLL: 'dddd, Do MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sutra u] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[jučer u] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[prošlu] [nedjelju] [u] LT';\n case 3:\n return '[prošlu] [srijedu] [u] LT';\n case 6:\n return '[prošle] [subote] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[prošli] dddd [u] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'prije %s',\n s: 'par sekundi',\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: 'dan',\n dd: translate,\n M: 'mjesec',\n MM: translate,\n y: 'godinu',\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return hr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Hungarian [hu]\n//! author : Adam Brunner : https://github.com/adambrunner\n//! author : Peter Viszt : https://github.com/passatgt\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var weekEndings =\n 'vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton'.split(' ');\n function translate(number, withoutSuffix, key, isFuture) {\n var num = number;\n switch (key) {\n case 's':\n return isFuture || withoutSuffix\n ? 'néhány másodperc'\n : 'néhány másodperce';\n case 'ss':\n return num + (isFuture || withoutSuffix)\n ? ' másodperc'\n : ' másodperce';\n case 'm':\n return 'egy' + (isFuture || withoutSuffix ? ' perc' : ' perce');\n case 'mm':\n return num + (isFuture || withoutSuffix ? ' perc' : ' perce');\n case 'h':\n return 'egy' + (isFuture || withoutSuffix ? ' óra' : ' órája');\n case 'hh':\n return num + (isFuture || withoutSuffix ? ' óra' : ' órája');\n case 'd':\n return 'egy' + (isFuture || withoutSuffix ? ' nap' : ' napja');\n case 'dd':\n return num + (isFuture || withoutSuffix ? ' nap' : ' napja');\n case 'M':\n return 'egy' + (isFuture || withoutSuffix ? ' hónap' : ' hónapja');\n case 'MM':\n return num + (isFuture || withoutSuffix ? ' hónap' : ' hónapja');\n case 'y':\n return 'egy' + (isFuture || withoutSuffix ? ' év' : ' éve');\n case 'yy':\n return num + (isFuture || withoutSuffix ? ' év' : ' éve');\n }\n return '';\n }\n function week(isFuture) {\n return (\n (isFuture ? '' : '[múlt] ') +\n '[' +\n weekEndings[this.day()] +\n '] LT[-kor]'\n );\n }\n\n var hu = moment.defineLocale('hu', {\n months: 'január_február_március_április_május_június_július_augusztus_szeptember_október_november_december'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._márc._ápr._máj._jún._júl._aug._szept._okt._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat'.split('_'),\n weekdaysShort: 'vas_hét_kedd_sze_csüt_pén_szo'.split('_'),\n weekdaysMin: 'v_h_k_sze_cs_p_szo'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'YYYY.MM.DD.',\n LL: 'YYYY. MMMM D.',\n LLL: 'YYYY. MMMM D. H:mm',\n LLLL: 'YYYY. MMMM D., dddd H:mm',\n },\n meridiemParse: /de|du/i,\n isPM: function (input) {\n return input.charAt(1).toLowerCase() === 'u';\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower === true ? 'de' : 'DE';\n } else {\n return isLower === true ? 'du' : 'DU';\n }\n },\n calendar: {\n sameDay: '[ma] LT[-kor]',\n nextDay: '[holnap] LT[-kor]',\n nextWeek: function () {\n return week.call(this, true);\n },\n lastDay: '[tegnap] LT[-kor]',\n lastWeek: function () {\n return week.call(this, false);\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s múlva',\n past: '%s',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return hu;\n\n})));\n","//! moment.js locale configuration\n//! locale : Armenian [hy-am]\n//! author : Armendarabyan : https://github.com/armendarabyan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var hyAm = moment.defineLocale('hy-am', {\n months: {\n format: 'հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի'.split(\n '_'\n ),\n standalone:\n 'հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր'.split(\n '_'\n ),\n },\n monthsShort: 'հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ'.split('_'),\n weekdays:\n 'կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ'.split(\n '_'\n ),\n weekdaysShort: 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'),\n weekdaysMin: 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY թ.',\n LLL: 'D MMMM YYYY թ., HH:mm',\n LLLL: 'dddd, D MMMM YYYY թ., HH:mm',\n },\n calendar: {\n sameDay: '[այսօր] LT',\n nextDay: '[վաղը] LT',\n lastDay: '[երեկ] LT',\n nextWeek: function () {\n return 'dddd [օրը ժամը] LT';\n },\n lastWeek: function () {\n return '[անցած] dddd [օրը ժամը] LT';\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s հետո',\n past: '%s առաջ',\n s: 'մի քանի վայրկյան',\n ss: '%d վայրկյան',\n m: 'րոպե',\n mm: '%d րոպե',\n h: 'ժամ',\n hh: '%d ժամ',\n d: 'օր',\n dd: '%d օր',\n M: 'ամիս',\n MM: '%d ամիս',\n y: 'տարի',\n yy: '%d տարի',\n },\n meridiemParse: /գիշերվա|առավոտվա|ցերեկվա|երեկոյան/,\n isPM: function (input) {\n return /^(ցերեկվա|երեկոյան)$/.test(input);\n },\n meridiem: function (hour) {\n if (hour < 4) {\n return 'գիշերվա';\n } else if (hour < 12) {\n return 'առավոտվա';\n } else if (hour < 17) {\n return 'ցերեկվա';\n } else {\n return 'երեկոյան';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}|\\d{1,2}-(ին|րդ)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'DDD':\n case 'w':\n case 'W':\n case 'DDDo':\n if (number === 1) {\n return number + '-ին';\n }\n return number + '-րդ';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return hyAm;\n\n})));\n","//! moment.js locale configuration\n//! locale : Indonesian [id]\n//! author : Mohammad Satrio Utomo : https://github.com/tyok\n//! reference: http://id.wikisource.org/wiki/Pedoman_Umum_Ejaan_Bahasa_Indonesia_yang_Disempurnakan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var id = moment.defineLocale('id', {\n months: 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des'.split('_'),\n weekdays: 'Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu'.split('_'),\n weekdaysShort: 'Min_Sen_Sel_Rab_Kam_Jum_Sab'.split('_'),\n weekdaysMin: 'Mg_Sn_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /pagi|siang|sore|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'siang') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'sore' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'siang';\n } else if (hours < 19) {\n return 'sore';\n } else {\n return 'malam';\n }\n },\n calendar: {\n sameDay: '[Hari ini pukul] LT',\n nextDay: '[Besok pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kemarin pukul] LT',\n lastWeek: 'dddd [lalu pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dalam %s',\n past: '%s yang lalu',\n s: 'beberapa detik',\n ss: '%d detik',\n m: 'semenit',\n mm: '%d menit',\n h: 'sejam',\n hh: '%d jam',\n d: 'sehari',\n dd: '%d hari',\n M: 'sebulan',\n MM: '%d bulan',\n y: 'setahun',\n yy: '%d tahun',\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return id;\n\n})));\n","//! moment.js locale configuration\n//! locale : Icelandic [is]\n//! author : Hinrik Örn Sigurðsson : https://github.com/hinrik\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function plural(n) {\n if (n % 100 === 11) {\n return true;\n } else if (n % 10 === 1) {\n return false;\n }\n return true;\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's':\n return withoutSuffix || isFuture\n ? 'nokkrar sekúndur'\n : 'nokkrum sekúndum';\n case 'ss':\n if (plural(number)) {\n return (\n result +\n (withoutSuffix || isFuture ? 'sekúndur' : 'sekúndum')\n );\n }\n return result + 'sekúnda';\n case 'm':\n return withoutSuffix ? 'mínúta' : 'mínútu';\n case 'mm':\n if (plural(number)) {\n return (\n result + (withoutSuffix || isFuture ? 'mínútur' : 'mínútum')\n );\n } else if (withoutSuffix) {\n return result + 'mínúta';\n }\n return result + 'mínútu';\n case 'hh':\n if (plural(number)) {\n return (\n result +\n (withoutSuffix || isFuture\n ? 'klukkustundir'\n : 'klukkustundum')\n );\n }\n return result + 'klukkustund';\n case 'd':\n if (withoutSuffix) {\n return 'dagur';\n }\n return isFuture ? 'dag' : 'degi';\n case 'dd':\n if (plural(number)) {\n if (withoutSuffix) {\n return result + 'dagar';\n }\n return result + (isFuture ? 'daga' : 'dögum');\n } else if (withoutSuffix) {\n return result + 'dagur';\n }\n return result + (isFuture ? 'dag' : 'degi');\n case 'M':\n if (withoutSuffix) {\n return 'mánuður';\n }\n return isFuture ? 'mánuð' : 'mánuði';\n case 'MM':\n if (plural(number)) {\n if (withoutSuffix) {\n return result + 'mánuðir';\n }\n return result + (isFuture ? 'mánuði' : 'mánuðum');\n } else if (withoutSuffix) {\n return result + 'mánuður';\n }\n return result + (isFuture ? 'mánuð' : 'mánuði');\n case 'y':\n return withoutSuffix || isFuture ? 'ár' : 'ári';\n case 'yy':\n if (plural(number)) {\n return result + (withoutSuffix || isFuture ? 'ár' : 'árum');\n }\n return result + (withoutSuffix || isFuture ? 'ár' : 'ári');\n }\n }\n\n var is = moment.defineLocale('is', {\n months: 'janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des'.split('_'),\n weekdays:\n 'sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur'.split(\n '_'\n ),\n weekdaysShort: 'sun_mán_þri_mið_fim_fös_lau'.split('_'),\n weekdaysMin: 'Su_Má_Þr_Mi_Fi_Fö_La'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY [kl.] H:mm',\n LLLL: 'dddd, D. MMMM YYYY [kl.] H:mm',\n },\n calendar: {\n sameDay: '[í dag kl.] LT',\n nextDay: '[á morgun kl.] LT',\n nextWeek: 'dddd [kl.] LT',\n lastDay: '[í gær kl.] LT',\n lastWeek: '[síðasta] dddd [kl.] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'eftir %s',\n past: 'fyrir %s síðan',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: 'klukkustund',\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return is;\n\n})));\n","//! moment.js locale configuration\n//! locale : Italian (Switzerland) [it-ch]\n//! author : xfh : https://github.com/xfh\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var itCh = moment.defineLocale('it-ch', {\n months: 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split(\n '_'\n ),\n monthsShort: 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),\n weekdays: 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split(\n '_'\n ),\n weekdaysShort: 'dom_lun_mar_mer_gio_ven_sab'.split('_'),\n weekdaysMin: 'do_lu_ma_me_gi_ve_sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Oggi alle] LT',\n nextDay: '[Domani alle] LT',\n nextWeek: 'dddd [alle] LT',\n lastDay: '[Ieri alle] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[la scorsa] dddd [alle] LT';\n default:\n return '[lo scorso] dddd [alle] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: function (s) {\n return (/^[0-9].+$/.test(s) ? 'tra' : 'in') + ' ' + s;\n },\n past: '%s fa',\n s: 'alcuni secondi',\n ss: '%d secondi',\n m: 'un minuto',\n mm: '%d minuti',\n h: \"un'ora\",\n hh: '%d ore',\n d: 'un giorno',\n dd: '%d giorni',\n M: 'un mese',\n MM: '%d mesi',\n y: 'un anno',\n yy: '%d anni',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return itCh;\n\n})));\n","//! moment.js locale configuration\n//! locale : Italian [it]\n//! author : Lorenzo : https://github.com/aliem\n//! author: Mattia Larentis: https://github.com/nostalgiaz\n//! author: Marco : https://github.com/Manfre98\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var it = moment.defineLocale('it', {\n months: 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split(\n '_'\n ),\n monthsShort: 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),\n weekdays: 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split(\n '_'\n ),\n weekdaysShort: 'dom_lun_mar_mer_gio_ven_sab'.split('_'),\n weekdaysMin: 'do_lu_ma_me_gi_ve_sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: function () {\n return (\n '[Oggi a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n nextDay: function () {\n return (\n '[Domani a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n nextWeek: function () {\n return (\n 'dddd [a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n lastDay: function () {\n return (\n '[Ieri a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return (\n '[La scorsa] dddd [a' +\n (this.hours() > 1\n ? 'lle '\n : this.hours() === 0\n ? ' '\n : \"ll'\") +\n ']LT'\n );\n default:\n return (\n '[Lo scorso] dddd [a' +\n (this.hours() > 1\n ? 'lle '\n : this.hours() === 0\n ? ' '\n : \"ll'\") +\n ']LT'\n );\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'tra %s',\n past: '%s fa',\n s: 'alcuni secondi',\n ss: '%d secondi',\n m: 'un minuto',\n mm: '%d minuti',\n h: \"un'ora\",\n hh: '%d ore',\n d: 'un giorno',\n dd: '%d giorni',\n w: 'una settimana',\n ww: '%d settimane',\n M: 'un mese',\n MM: '%d mesi',\n y: 'un anno',\n yy: '%d anni',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return it;\n\n})));\n","//! moment.js locale configuration\n//! locale : Japanese [ja]\n//! author : LI Long : https://github.com/baryon\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ja = moment.defineLocale('ja', {\n eras: [\n {\n since: '2019-05-01',\n offset: 1,\n name: '令和',\n narrow: '㋿',\n abbr: 'R',\n },\n {\n since: '1989-01-08',\n until: '2019-04-30',\n offset: 1,\n name: '平成',\n narrow: '㍻',\n abbr: 'H',\n },\n {\n since: '1926-12-25',\n until: '1989-01-07',\n offset: 1,\n name: '昭和',\n narrow: '㍼',\n abbr: 'S',\n },\n {\n since: '1912-07-30',\n until: '1926-12-24',\n offset: 1,\n name: '大正',\n narrow: '㍽',\n abbr: 'T',\n },\n {\n since: '1873-01-01',\n until: '1912-07-29',\n offset: 6,\n name: '明治',\n narrow: '㍾',\n abbr: 'M',\n },\n {\n since: '0001-01-01',\n until: '1873-12-31',\n offset: 1,\n name: '西暦',\n narrow: 'AD',\n abbr: 'AD',\n },\n {\n since: '0000-12-31',\n until: -Infinity,\n offset: 1,\n name: '紀元前',\n narrow: 'BC',\n abbr: 'BC',\n },\n ],\n eraYearOrdinalRegex: /(元|\\d+)年/,\n eraYearOrdinalParse: function (input, match) {\n return match[1] === '元' ? 1 : parseInt(match[1] || input, 10);\n },\n months: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日'.split('_'),\n weekdaysShort: '日_月_火_水_木_金_土'.split('_'),\n weekdaysMin: '日_月_火_水_木_金_土'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日 HH:mm',\n LLLL: 'YYYY年M月D日 dddd HH:mm',\n l: 'YYYY/MM/DD',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日(ddd) HH:mm',\n },\n meridiemParse: /午前|午後/i,\n isPM: function (input) {\n return input === '午後';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return '午前';\n } else {\n return '午後';\n }\n },\n calendar: {\n sameDay: '[今日] LT',\n nextDay: '[明日] LT',\n nextWeek: function (now) {\n if (now.week() !== this.week()) {\n return '[来週]dddd LT';\n } else {\n return 'dddd LT';\n }\n },\n lastDay: '[昨日] LT',\n lastWeek: function (now) {\n if (this.week() !== now.week()) {\n return '[先週]dddd LT';\n } else {\n return 'dddd LT';\n }\n },\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}日/,\n ordinal: function (number, period) {\n switch (period) {\n case 'y':\n return number === 1 ? '元年' : number + '年';\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s後',\n past: '%s前',\n s: '数秒',\n ss: '%d秒',\n m: '1分',\n mm: '%d分',\n h: '1時間',\n hh: '%d時間',\n d: '1日',\n dd: '%d日',\n M: '1ヶ月',\n MM: '%dヶ月',\n y: '1年',\n yy: '%d年',\n },\n });\n\n return ja;\n\n})));\n","//! moment.js locale configuration\n//! locale : Javanese [jv]\n//! author : Rony Lantip : https://github.com/lantip\n//! reference: http://jv.wikipedia.org/wiki/Basa_Jawa\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var jv = moment.defineLocale('jv', {\n months: 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des'.split('_'),\n weekdays: 'Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu'.split('_'),\n weekdaysShort: 'Min_Sen_Sel_Reb_Kem_Jem_Sep'.split('_'),\n weekdaysMin: 'Mg_Sn_Sl_Rb_Km_Jm_Sp'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /enjing|siyang|sonten|ndalu/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'enjing') {\n return hour;\n } else if (meridiem === 'siyang') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'sonten' || meridiem === 'ndalu') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'enjing';\n } else if (hours < 15) {\n return 'siyang';\n } else if (hours < 19) {\n return 'sonten';\n } else {\n return 'ndalu';\n }\n },\n calendar: {\n sameDay: '[Dinten puniko pukul] LT',\n nextDay: '[Mbenjang pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kala wingi pukul] LT',\n lastWeek: 'dddd [kepengker pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'wonten ing %s',\n past: '%s ingkang kepengker',\n s: 'sawetawis detik',\n ss: '%d detik',\n m: 'setunggal menit',\n mm: '%d menit',\n h: 'setunggal jam',\n hh: '%d jam',\n d: 'sedinten',\n dd: '%d dinten',\n M: 'sewulan',\n MM: '%d wulan',\n y: 'setaun',\n yy: '%d taun',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return jv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Georgian [ka]\n//! author : Irakli Janiashvili : https://github.com/IrakliJani\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ka = moment.defineLocale('ka', {\n months: 'იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი'.split(\n '_'\n ),\n monthsShort: 'იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ'.split('_'),\n weekdays: {\n standalone:\n 'კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი'.split(\n '_'\n ),\n format: 'კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს'.split(\n '_'\n ),\n isFormat: /(წინა|შემდეგ)/,\n },\n weekdaysShort: 'კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ'.split('_'),\n weekdaysMin: 'კვ_ორ_სა_ოთ_ხუ_პა_შა'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[დღეს] LT[-ზე]',\n nextDay: '[ხვალ] LT[-ზე]',\n lastDay: '[გუშინ] LT[-ზე]',\n nextWeek: '[შემდეგ] dddd LT[-ზე]',\n lastWeek: '[წინა] dddd LT-ზე',\n sameElse: 'L',\n },\n relativeTime: {\n future: function (s) {\n return s.replace(\n /(წამ|წუთ|საათ|წელ|დღ|თვ)(ი|ე)/,\n function ($0, $1, $2) {\n return $2 === 'ი' ? $1 + 'ში' : $1 + $2 + 'ში';\n }\n );\n },\n past: function (s) {\n if (/(წამი|წუთი|საათი|დღე|თვე)/.test(s)) {\n return s.replace(/(ი|ე)$/, 'ის წინ');\n }\n if (/წელი/.test(s)) {\n return s.replace(/წელი$/, 'წლის წინ');\n }\n return s;\n },\n s: 'რამდენიმე წამი',\n ss: '%d წამი',\n m: 'წუთი',\n mm: '%d წუთი',\n h: 'საათი',\n hh: '%d საათი',\n d: 'დღე',\n dd: '%d დღე',\n M: 'თვე',\n MM: '%d თვე',\n y: 'წელი',\n yy: '%d წელი',\n },\n dayOfMonthOrdinalParse: /0|1-ლი|მე-\\d{1,2}|\\d{1,2}-ე/,\n ordinal: function (number) {\n if (number === 0) {\n return number;\n }\n if (number === 1) {\n return number + '-ლი';\n }\n if (\n number < 20 ||\n (number <= 100 && number % 20 === 0) ||\n number % 100 === 0\n ) {\n return 'მე-' + number;\n }\n return number + '-ე';\n },\n week: {\n dow: 1,\n doy: 7,\n },\n });\n\n return ka;\n\n})));\n","//! moment.js locale configuration\n//! locale : Kazakh [kk]\n//! authors : Nurlan Rakhimzhanov : https://github.com/nurlan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 0: '-ші',\n 1: '-ші',\n 2: '-ші',\n 3: '-ші',\n 4: '-ші',\n 5: '-ші',\n 6: '-шы',\n 7: '-ші',\n 8: '-ші',\n 9: '-шы',\n 10: '-шы',\n 20: '-шы',\n 30: '-шы',\n 40: '-шы',\n 50: '-ші',\n 60: '-шы',\n 70: '-ші',\n 80: '-ші',\n 90: '-шы',\n 100: '-ші',\n };\n\n var kk = moment.defineLocale('kk', {\n months: 'қаңтар_ақпан_наурыз_сәуір_мамыр_маусым_шілде_тамыз_қыркүйек_қазан_қараша_желтоқсан'.split(\n '_'\n ),\n monthsShort: 'қаң_ақп_нау_сәу_мам_мау_шіл_там_қыр_қаз_қар_жел'.split('_'),\n weekdays: 'жексенбі_дүйсенбі_сейсенбі_сәрсенбі_бейсенбі_жұма_сенбі'.split(\n '_'\n ),\n weekdaysShort: 'жек_дүй_сей_сәр_бей_жұм_сен'.split('_'),\n weekdaysMin: 'жк_дй_сй_ср_бй_жм_сн'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Бүгін сағат] LT',\n nextDay: '[Ертең сағат] LT',\n nextWeek: 'dddd [сағат] LT',\n lastDay: '[Кеше сағат] LT',\n lastWeek: '[Өткен аптаның] dddd [сағат] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ішінде',\n past: '%s бұрын',\n s: 'бірнеше секунд',\n ss: '%d секунд',\n m: 'бір минут',\n mm: '%d минут',\n h: 'бір сағат',\n hh: '%d сағат',\n d: 'бір күн',\n dd: '%d күн',\n M: 'бір ай',\n MM: '%d ай',\n y: 'бір жыл',\n yy: '%d жыл',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ші|шы)/,\n ordinal: function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return kk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Cambodian [km]\n//! author : Kruy Vanna : https://github.com/kruyvanna\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '១',\n 2: '២',\n 3: '៣',\n 4: '៤',\n 5: '៥',\n 6: '៦',\n 7: '៧',\n 8: '៨',\n 9: '៩',\n 0: '០',\n },\n numberMap = {\n '១': '1',\n '២': '2',\n '៣': '3',\n '៤': '4',\n '៥': '5',\n '៦': '6',\n '៧': '7',\n '៨': '8',\n '៩': '9',\n '០': '0',\n };\n\n var km = moment.defineLocale('km', {\n months: 'មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split(\n '_'\n ),\n monthsShort:\n 'មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split(\n '_'\n ),\n weekdays: 'អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍'.split('_'),\n weekdaysShort: 'អា_ច_អ_ព_ព្រ_សុ_ស'.split('_'),\n weekdaysMin: 'អា_ច_អ_ព_ព្រ_សុ_ស'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n meridiemParse: /ព្រឹក|ល្ងាច/,\n isPM: function (input) {\n return input === 'ល្ងាច';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ព្រឹក';\n } else {\n return 'ល្ងាច';\n }\n },\n calendar: {\n sameDay: '[ថ្ងៃនេះ ម៉ោង] LT',\n nextDay: '[ស្អែក ម៉ោង] LT',\n nextWeek: 'dddd [ម៉ោង] LT',\n lastDay: '[ម្សិលមិញ ម៉ោង] LT',\n lastWeek: 'dddd [សប្តាហ៍មុន] [ម៉ោង] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%sទៀត',\n past: '%sមុន',\n s: 'ប៉ុន្មានវិនាទី',\n ss: '%d វិនាទី',\n m: 'មួយនាទី',\n mm: '%d នាទី',\n h: 'មួយម៉ោង',\n hh: '%d ម៉ោង',\n d: 'មួយថ្ងៃ',\n dd: '%d ថ្ងៃ',\n M: 'មួយខែ',\n MM: '%d ខែ',\n y: 'មួយឆ្នាំ',\n yy: '%d ឆ្នាំ',\n },\n dayOfMonthOrdinalParse: /ទី\\d{1,2}/,\n ordinal: 'ទី%d',\n preparse: function (string) {\n return string.replace(/[១២៣៤៥៦៧៨៩០]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return km;\n\n})));\n","//! moment.js locale configuration\n//! locale : Kannada [kn]\n//! author : Rajeev Naik : https://github.com/rajeevnaikte\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '೧',\n 2: '೨',\n 3: '೩',\n 4: '೪',\n 5: '೫',\n 6: '೬',\n 7: '೭',\n 8: '೮',\n 9: '೯',\n 0: '೦',\n },\n numberMap = {\n '೧': '1',\n '೨': '2',\n '೩': '3',\n '೪': '4',\n '೫': '5',\n '೬': '6',\n '೭': '7',\n '೮': '8',\n '೯': '9',\n '೦': '0',\n };\n\n var kn = moment.defineLocale('kn', {\n months: 'ಜನವರಿ_ಫೆಬ್ರವರಿ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂಬರ್_ಅಕ್ಟೋಬರ್_ನವೆಂಬರ್_ಡಿಸೆಂಬರ್'.split(\n '_'\n ),\n monthsShort:\n 'ಜನ_ಫೆಬ್ರ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂ_ಅಕ್ಟೋ_ನವೆಂ_ಡಿಸೆಂ'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'ಭಾನುವಾರ_ಸೋಮವಾರ_ಮಂಗಳವಾರ_ಬುಧವಾರ_ಗುರುವಾರ_ಶುಕ್ರವಾರ_ಶನಿವಾರ'.split(\n '_'\n ),\n weekdaysShort: 'ಭಾನು_ಸೋಮ_ಮಂಗಳ_ಬುಧ_ಗುರು_ಶುಕ್ರ_ಶನಿ'.split('_'),\n weekdaysMin: 'ಭಾ_ಸೋ_ಮಂ_ಬು_ಗು_ಶು_ಶ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm',\n LTS: 'A h:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm',\n LLLL: 'dddd, D MMMM YYYY, A h:mm',\n },\n calendar: {\n sameDay: '[ಇಂದು] LT',\n nextDay: '[ನಾಳೆ] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[ನಿನ್ನೆ] LT',\n lastWeek: '[ಕೊನೆಯ] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ನಂತರ',\n past: '%s ಹಿಂದೆ',\n s: 'ಕೆಲವು ಕ್ಷಣಗಳು',\n ss: '%d ಸೆಕೆಂಡುಗಳು',\n m: 'ಒಂದು ನಿಮಿಷ',\n mm: '%d ನಿಮಿಷ',\n h: 'ಒಂದು ಗಂಟೆ',\n hh: '%d ಗಂಟೆ',\n d: 'ಒಂದು ದಿನ',\n dd: '%d ದಿನ',\n M: 'ಒಂದು ತಿಂಗಳು',\n MM: '%d ತಿಂಗಳು',\n y: 'ಒಂದು ವರ್ಷ',\n yy: '%d ವರ್ಷ',\n },\n preparse: function (string) {\n return string.replace(/[೧೨೩೪೫೬೭೮೯೦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /ರಾತ್ರಿ|ಬೆಳಿಗ್ಗೆ|ಮಧ್ಯಾಹ್ನ|ಸಂಜೆ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ರಾತ್ರಿ') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ಬೆಳಿಗ್ಗೆ') {\n return hour;\n } else if (meridiem === 'ಮಧ್ಯಾಹ್ನ') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'ಸಂಜೆ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ರಾತ್ರಿ';\n } else if (hour < 10) {\n return 'ಬೆಳಿಗ್ಗೆ';\n } else if (hour < 17) {\n return 'ಮಧ್ಯಾಹ್ನ';\n } else if (hour < 20) {\n return 'ಸಂಜೆ';\n } else {\n return 'ರಾತ್ರಿ';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ನೇ)/,\n ordinal: function (number) {\n return number + 'ನೇ';\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return kn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Korean [ko]\n//! author : Kyungwook, Park : https://github.com/kyungw00k\n//! author : Jeeeyul Lee \n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ko = moment.defineLocale('ko', {\n months: '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split('_'),\n monthsShort: '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split(\n '_'\n ),\n weekdays: '일요일_월요일_화요일_수요일_목요일_금요일_토요일'.split('_'),\n weekdaysShort: '일_월_화_수_목_금_토'.split('_'),\n weekdaysMin: '일_월_화_수_목_금_토'.split('_'),\n longDateFormat: {\n LT: 'A h:mm',\n LTS: 'A h:mm:ss',\n L: 'YYYY.MM.DD.',\n LL: 'YYYY년 MMMM D일',\n LLL: 'YYYY년 MMMM D일 A h:mm',\n LLLL: 'YYYY년 MMMM D일 dddd A h:mm',\n l: 'YYYY.MM.DD.',\n ll: 'YYYY년 MMMM D일',\n lll: 'YYYY년 MMMM D일 A h:mm',\n llll: 'YYYY년 MMMM D일 dddd A h:mm',\n },\n calendar: {\n sameDay: '오늘 LT',\n nextDay: '내일 LT',\n nextWeek: 'dddd LT',\n lastDay: '어제 LT',\n lastWeek: '지난주 dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s 후',\n past: '%s 전',\n s: '몇 초',\n ss: '%d초',\n m: '1분',\n mm: '%d분',\n h: '한 시간',\n hh: '%d시간',\n d: '하루',\n dd: '%d일',\n M: '한 달',\n MM: '%d달',\n y: '일 년',\n yy: '%d년',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(일|월|주)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '일';\n case 'M':\n return number + '월';\n case 'w':\n case 'W':\n return number + '주';\n default:\n return number;\n }\n },\n meridiemParse: /오전|오후/,\n isPM: function (token) {\n return token === '오후';\n },\n meridiem: function (hour, minute, isUpper) {\n return hour < 12 ? '오전' : '오후';\n },\n });\n\n return ko;\n\n})));\n","//! moment.js locale configuration\n//! locale : Kurdish [ku]\n//! author : Shahram Mebashar : https://github.com/ShahramMebashar\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '١',\n 2: '٢',\n 3: '٣',\n 4: '٤',\n 5: '٥',\n 6: '٦',\n 7: '٧',\n 8: '٨',\n 9: '٩',\n 0: '٠',\n },\n numberMap = {\n '١': '1',\n '٢': '2',\n '٣': '3',\n '٤': '4',\n '٥': '5',\n '٦': '6',\n '٧': '7',\n '٨': '8',\n '٩': '9',\n '٠': '0',\n },\n months = [\n 'کانونی دووەم',\n 'شوبات',\n 'ئازار',\n 'نیسان',\n 'ئایار',\n 'حوزەیران',\n 'تەمموز',\n 'ئاب',\n 'ئەیلوول',\n 'تشرینی یەكەم',\n 'تشرینی دووەم',\n 'كانونی یەکەم',\n ];\n\n var ku = moment.defineLocale('ku', {\n months: months,\n monthsShort: months,\n weekdays:\n 'یه‌كشه‌ممه‌_دووشه‌ممه‌_سێشه‌ممه‌_چوارشه‌ممه‌_پێنجشه‌ممه‌_هه‌ینی_شه‌ممه‌'.split(\n '_'\n ),\n weekdaysShort:\n 'یه‌كشه‌م_دووشه‌م_سێشه‌م_چوارشه‌م_پێنجشه‌م_هه‌ینی_شه‌ممه‌'.split('_'),\n weekdaysMin: 'ی_د_س_چ_پ_ه_ش'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n meridiemParse: /ئێواره‌|به‌یانی/,\n isPM: function (input) {\n return /ئێواره‌/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'به‌یانی';\n } else {\n return 'ئێواره‌';\n }\n },\n calendar: {\n sameDay: '[ئه‌مرۆ كاتژمێر] LT',\n nextDay: '[به‌یانی كاتژمێر] LT',\n nextWeek: 'dddd [كاتژمێر] LT',\n lastDay: '[دوێنێ كاتژمێر] LT',\n lastWeek: 'dddd [كاتژمێر] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'له‌ %s',\n past: '%s',\n s: 'چه‌ند چركه‌یه‌ك',\n ss: 'چركه‌ %d',\n m: 'یه‌ك خوله‌ك',\n mm: '%d خوله‌ك',\n h: 'یه‌ك كاتژمێر',\n hh: '%d كاتژمێر',\n d: 'یه‌ك ڕۆژ',\n dd: '%d ڕۆژ',\n M: 'یه‌ك مانگ',\n MM: '%d مانگ',\n y: 'یه‌ك ساڵ',\n yy: '%d ساڵ',\n },\n preparse: function (string) {\n return string\n .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n })\n .replace(/،/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, '،');\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return ku;\n\n})));\n","//! moment.js locale configuration\n//! locale : Kyrgyz [ky]\n//! author : Chyngyz Arystan uulu : https://github.com/chyngyz\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 0: '-чү',\n 1: '-чи',\n 2: '-чи',\n 3: '-чү',\n 4: '-чү',\n 5: '-чи',\n 6: '-чы',\n 7: '-чи',\n 8: '-чи',\n 9: '-чу',\n 10: '-чу',\n 20: '-чы',\n 30: '-чу',\n 40: '-чы',\n 50: '-чү',\n 60: '-чы',\n 70: '-чи',\n 80: '-чи',\n 90: '-чу',\n 100: '-чү',\n };\n\n var ky = moment.defineLocale('ky', {\n months: 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split(\n '_'\n ),\n monthsShort: 'янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split(\n '_'\n ),\n weekdays: 'Жекшемби_Дүйшөмбү_Шейшемби_Шаршемби_Бейшемби_Жума_Ишемби'.split(\n '_'\n ),\n weekdaysShort: 'Жек_Дүй_Шей_Шар_Бей_Жум_Ише'.split('_'),\n weekdaysMin: 'Жк_Дй_Шй_Шр_Бй_Жм_Иш'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Бүгүн саат] LT',\n nextDay: '[Эртең саат] LT',\n nextWeek: 'dddd [саат] LT',\n lastDay: '[Кечээ саат] LT',\n lastWeek: '[Өткөн аптанын] dddd [күнү] [саат] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ичинде',\n past: '%s мурун',\n s: 'бирнече секунд',\n ss: '%d секунд',\n m: 'бир мүнөт',\n mm: '%d мүнөт',\n h: 'бир саат',\n hh: '%d саат',\n d: 'бир күн',\n dd: '%d күн',\n M: 'бир ай',\n MM: '%d ай',\n y: 'бир жыл',\n yy: '%d жыл',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(чи|чы|чү|чу)/,\n ordinal: function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return ky;\n\n})));\n","//! moment.js locale configuration\n//! locale : Luxembourgish [lb]\n//! author : mweimerskirch : https://github.com/mweimerskirch\n//! author : David Raison : https://github.com/kwisatz\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eng Minutt', 'enger Minutt'],\n h: ['eng Stonn', 'enger Stonn'],\n d: ['een Dag', 'engem Dag'],\n M: ['ee Mount', 'engem Mount'],\n y: ['ee Joer', 'engem Joer'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n function processFutureTime(string) {\n var number = string.substr(0, string.indexOf(' '));\n if (eifelerRegelAppliesToNumber(number)) {\n return 'a ' + string;\n }\n return 'an ' + string;\n }\n function processPastTime(string) {\n var number = string.substr(0, string.indexOf(' '));\n if (eifelerRegelAppliesToNumber(number)) {\n return 'viru ' + string;\n }\n return 'virun ' + string;\n }\n /**\n * Returns true if the word before the given number loses the '-n' ending.\n * e.g. 'an 10 Deeg' but 'a 5 Deeg'\n *\n * @param number {integer}\n * @returns {boolean}\n */\n function eifelerRegelAppliesToNumber(number) {\n number = parseInt(number, 10);\n if (isNaN(number)) {\n return false;\n }\n if (number < 0) {\n // Negative Number --> always true\n return true;\n } else if (number < 10) {\n // Only 1 digit\n if (4 <= number && number <= 7) {\n return true;\n }\n return false;\n } else if (number < 100) {\n // 2 digits\n var lastDigit = number % 10,\n firstDigit = number / 10;\n if (lastDigit === 0) {\n return eifelerRegelAppliesToNumber(firstDigit);\n }\n return eifelerRegelAppliesToNumber(lastDigit);\n } else if (number < 10000) {\n // 3 or 4 digits --> recursively check first digit\n while (number >= 10) {\n number = number / 10;\n }\n return eifelerRegelAppliesToNumber(number);\n } else {\n // Anything larger than 4 digits: recursively check first n-3 digits\n number = number / 1000;\n return eifelerRegelAppliesToNumber(number);\n }\n }\n\n var lb = moment.defineLocale('lb', {\n months: 'Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort:\n 'Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg'.split(\n '_'\n ),\n weekdaysShort: 'So._Mé._Dë._Më._Do._Fr._Sa.'.split('_'),\n weekdaysMin: 'So_Mé_Dë_Më_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm [Auer]',\n LTS: 'H:mm:ss [Auer]',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm [Auer]',\n LLLL: 'dddd, D. MMMM YYYY H:mm [Auer]',\n },\n calendar: {\n sameDay: '[Haut um] LT',\n sameElse: 'L',\n nextDay: '[Muer um] LT',\n nextWeek: 'dddd [um] LT',\n lastDay: '[Gëschter um] LT',\n lastWeek: function () {\n // Different date string for 'Dënschdeg' (Tuesday) and 'Donneschdeg' (Thursday) due to phonological rule\n switch (this.day()) {\n case 2:\n case 4:\n return '[Leschten] dddd [um] LT';\n default:\n return '[Leschte] dddd [um] LT';\n }\n },\n },\n relativeTime: {\n future: processFutureTime,\n past: processPastTime,\n s: 'e puer Sekonnen',\n ss: '%d Sekonnen',\n m: processRelativeTime,\n mm: '%d Minutten',\n h: processRelativeTime,\n hh: '%d Stonnen',\n d: processRelativeTime,\n dd: '%d Deeg',\n M: processRelativeTime,\n MM: '%d Méint',\n y: processRelativeTime,\n yy: '%d Joer',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return lb;\n\n})));\n","//! moment.js locale configuration\n//! locale : Lao [lo]\n//! author : Ryan Hart : https://github.com/ryanhart2\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var lo = moment.defineLocale('lo', {\n months: 'ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ'.split(\n '_'\n ),\n monthsShort:\n 'ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ'.split(\n '_'\n ),\n weekdays: 'ອາທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ'.split('_'),\n weekdaysShort: 'ທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ'.split('_'),\n weekdaysMin: 'ທ_ຈ_ອຄ_ພ_ພຫ_ສກ_ສ'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'ວັນdddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ຕອນເຊົ້າ|ຕອນແລງ/,\n isPM: function (input) {\n return input === 'ຕອນແລງ';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ຕອນເຊົ້າ';\n } else {\n return 'ຕອນແລງ';\n }\n },\n calendar: {\n sameDay: '[ມື້ນີ້ເວລາ] LT',\n nextDay: '[ມື້ອື່ນເວລາ] LT',\n nextWeek: '[ວັນ]dddd[ໜ້າເວລາ] LT',\n lastDay: '[ມື້ວານນີ້ເວລາ] LT',\n lastWeek: '[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ອີກ %s',\n past: '%sຜ່ານມາ',\n s: 'ບໍ່ເທົ່າໃດວິນາທີ',\n ss: '%d ວິນາທີ',\n m: '1 ນາທີ',\n mm: '%d ນາທີ',\n h: '1 ຊົ່ວໂມງ',\n hh: '%d ຊົ່ວໂມງ',\n d: '1 ມື້',\n dd: '%d ມື້',\n M: '1 ເດືອນ',\n MM: '%d ເດືອນ',\n y: '1 ປີ',\n yy: '%d ປີ',\n },\n dayOfMonthOrdinalParse: /(ທີ່)\\d{1,2}/,\n ordinal: function (number) {\n return 'ທີ່' + number;\n },\n });\n\n return lo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Lithuanian [lt]\n//! author : Mindaugas Mozūras : https://github.com/mmozuras\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var units = {\n ss: 'sekundė_sekundžių_sekundes',\n m: 'minutė_minutės_minutę',\n mm: 'minutės_minučių_minutes',\n h: 'valanda_valandos_valandą',\n hh: 'valandos_valandų_valandas',\n d: 'diena_dienos_dieną',\n dd: 'dienos_dienų_dienas',\n M: 'mėnuo_mėnesio_mėnesį',\n MM: 'mėnesiai_mėnesių_mėnesius',\n y: 'metai_metų_metus',\n yy: 'metai_metų_metus',\n };\n function translateSeconds(number, withoutSuffix, key, isFuture) {\n if (withoutSuffix) {\n return 'kelios sekundės';\n } else {\n return isFuture ? 'kelių sekundžių' : 'kelias sekundes';\n }\n }\n function translateSingular(number, withoutSuffix, key, isFuture) {\n return withoutSuffix\n ? forms(key)[0]\n : isFuture\n ? forms(key)[1]\n : forms(key)[2];\n }\n function special(number) {\n return number % 10 === 0 || (number > 10 && number < 20);\n }\n function forms(key) {\n return units[key].split('_');\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n if (number === 1) {\n return (\n result + translateSingular(number, withoutSuffix, key[0], isFuture)\n );\n } else if (withoutSuffix) {\n return result + (special(number) ? forms(key)[1] : forms(key)[0]);\n } else {\n if (isFuture) {\n return result + forms(key)[1];\n } else {\n return result + (special(number) ? forms(key)[1] : forms(key)[2]);\n }\n }\n }\n var lt = moment.defineLocale('lt', {\n months: {\n format: 'sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio'.split(\n '_'\n ),\n standalone:\n 'sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_spalis_lapkritis_gruodis'.split(\n '_'\n ),\n isFormat: /D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?|MMMM?(\\[[^\\[\\]]*\\]|\\s)+D[oD]?/,\n },\n monthsShort: 'sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd'.split('_'),\n weekdays: {\n format: 'sekmadienį_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį'.split(\n '_'\n ),\n standalone:\n 'sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis'.split(\n '_'\n ),\n isFormat: /dddd HH:mm/,\n },\n weekdaysShort: 'Sek_Pir_Ant_Tre_Ket_Pen_Šeš'.split('_'),\n weekdaysMin: 'S_P_A_T_K_Pn_Š'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY [m.] MMMM D [d.]',\n LLL: 'YYYY [m.] MMMM D [d.], HH:mm [val.]',\n LLLL: 'YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]',\n l: 'YYYY-MM-DD',\n ll: 'YYYY [m.] MMMM D [d.]',\n lll: 'YYYY [m.] MMMM D [d.], HH:mm [val.]',\n llll: 'YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]',\n },\n calendar: {\n sameDay: '[Šiandien] LT',\n nextDay: '[Rytoj] LT',\n nextWeek: 'dddd LT',\n lastDay: '[Vakar] LT',\n lastWeek: '[Praėjusį] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'po %s',\n past: 'prieš %s',\n s: translateSeconds,\n ss: translate,\n m: translateSingular,\n mm: translate,\n h: translateSingular,\n hh: translate,\n d: translateSingular,\n dd: translate,\n M: translateSingular,\n MM: translate,\n y: translateSingular,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-oji/,\n ordinal: function (number) {\n return number + '-oji';\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return lt;\n\n})));\n","//! moment.js locale configuration\n//! locale : Latvian [lv]\n//! author : Kristaps Karlsons : https://github.com/skakri\n//! author : Jānis Elmeris : https://github.com/JanisE\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var units = {\n ss: 'sekundes_sekundēm_sekunde_sekundes'.split('_'),\n m: 'minūtes_minūtēm_minūte_minūtes'.split('_'),\n mm: 'minūtes_minūtēm_minūte_minūtes'.split('_'),\n h: 'stundas_stundām_stunda_stundas'.split('_'),\n hh: 'stundas_stundām_stunda_stundas'.split('_'),\n d: 'dienas_dienām_diena_dienas'.split('_'),\n dd: 'dienas_dienām_diena_dienas'.split('_'),\n M: 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'),\n MM: 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'),\n y: 'gada_gadiem_gads_gadi'.split('_'),\n yy: 'gada_gadiem_gads_gadi'.split('_'),\n };\n /**\n * @param withoutSuffix boolean true = a length of time; false = before/after a period of time.\n */\n function format(forms, number, withoutSuffix) {\n if (withoutSuffix) {\n // E.g. \"21 minūte\", \"3 minūtes\".\n return number % 10 === 1 && number % 100 !== 11 ? forms[2] : forms[3];\n } else {\n // E.g. \"21 minūtes\" as in \"pēc 21 minūtes\".\n // E.g. \"3 minūtēm\" as in \"pēc 3 minūtēm\".\n return number % 10 === 1 && number % 100 !== 11 ? forms[0] : forms[1];\n }\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n return number + ' ' + format(units[key], number, withoutSuffix);\n }\n function relativeTimeWithSingular(number, withoutSuffix, key) {\n return format(units[key], number, withoutSuffix);\n }\n function relativeSeconds(number, withoutSuffix) {\n return withoutSuffix ? 'dažas sekundes' : 'dažām sekundēm';\n }\n\n var lv = moment.defineLocale('lv', {\n months: 'janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec'.split('_'),\n weekdays:\n 'svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena'.split(\n '_'\n ),\n weekdaysShort: 'Sv_P_O_T_C_Pk_S'.split('_'),\n weekdaysMin: 'Sv_P_O_T_C_Pk_S'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY.',\n LL: 'YYYY. [gada] D. MMMM',\n LLL: 'YYYY. [gada] D. MMMM, HH:mm',\n LLLL: 'YYYY. [gada] D. MMMM, dddd, HH:mm',\n },\n calendar: {\n sameDay: '[Šodien pulksten] LT',\n nextDay: '[Rīt pulksten] LT',\n nextWeek: 'dddd [pulksten] LT',\n lastDay: '[Vakar pulksten] LT',\n lastWeek: '[Pagājušā] dddd [pulksten] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'pēc %s',\n past: 'pirms %s',\n s: relativeSeconds,\n ss: relativeTimeWithPlural,\n m: relativeTimeWithSingular,\n mm: relativeTimeWithPlural,\n h: relativeTimeWithSingular,\n hh: relativeTimeWithPlural,\n d: relativeTimeWithSingular,\n dd: relativeTimeWithPlural,\n M: relativeTimeWithSingular,\n MM: relativeTimeWithPlural,\n y: relativeTimeWithSingular,\n yy: relativeTimeWithPlural,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return lv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Montenegrin [me]\n//! author : Miodrag Nikač : https://github.com/miodragnikac\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var translator = {\n words: {\n //Different grammatical cases\n ss: ['sekund', 'sekunda', 'sekundi'],\n m: ['jedan minut', 'jednog minuta'],\n mm: ['minut', 'minuta', 'minuta'],\n h: ['jedan sat', 'jednog sata'],\n hh: ['sat', 'sata', 'sati'],\n dd: ['dan', 'dana', 'dana'],\n MM: ['mjesec', 'mjeseca', 'mjeseci'],\n yy: ['godina', 'godine', 'godina'],\n },\n correctGrammaticalCase: function (number, wordKey) {\n return number === 1\n ? wordKey[0]\n : number >= 2 && number <= 4\n ? wordKey[1]\n : wordKey[2];\n },\n translate: function (number, withoutSuffix, key) {\n var wordKey = translator.words[key];\n if (key.length === 1) {\n return withoutSuffix ? wordKey[0] : wordKey[1];\n } else {\n return (\n number +\n ' ' +\n translator.correctGrammaticalCase(number, wordKey)\n );\n }\n },\n };\n\n var me = moment.defineLocale('me', {\n months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'),\n monthsParseExact: true,\n weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sjutra u] LT',\n\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[juče u] LT',\n lastWeek: function () {\n var lastWeekDays = [\n '[prošle] [nedjelje] [u] LT',\n '[prošlog] [ponedjeljka] [u] LT',\n '[prošlog] [utorka] [u] LT',\n '[prošle] [srijede] [u] LT',\n '[prošlog] [četvrtka] [u] LT',\n '[prošlog] [petka] [u] LT',\n '[prošle] [subote] [u] LT',\n ];\n return lastWeekDays[this.day()];\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'prije %s',\n s: 'nekoliko sekundi',\n ss: translator.translate,\n m: translator.translate,\n mm: translator.translate,\n h: translator.translate,\n hh: translator.translate,\n d: 'dan',\n dd: translator.translate,\n M: 'mjesec',\n MM: translator.translate,\n y: 'godinu',\n yy: translator.translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return me;\n\n})));\n","//! moment.js locale configuration\n//! locale : Maori [mi]\n//! author : John Corrigan : https://github.com/johnideal\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var mi = moment.defineLocale('mi', {\n months: 'Kohi-tāte_Hui-tanguru_Poutū-te-rangi_Paenga-whāwhā_Haratua_Pipiri_Hōngoingoi_Here-turi-kōkā_Mahuru_Whiringa-ā-nuku_Whiringa-ā-rangi_Hakihea'.split(\n '_'\n ),\n monthsShort:\n 'Kohi_Hui_Pou_Pae_Hara_Pipi_Hōngoi_Here_Mahu_Whi-nu_Whi-ra_Haki'.split(\n '_'\n ),\n monthsRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsStrictRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsShortRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsShortStrictRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,2}/i,\n weekdays: 'Rātapu_Mane_Tūrei_Wenerei_Tāite_Paraire_Hātarei'.split('_'),\n weekdaysShort: 'Ta_Ma_Tū_We_Tāi_Pa_Hā'.split('_'),\n weekdaysMin: 'Ta_Ma_Tū_We_Tāi_Pa_Hā'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [i] HH:mm',\n LLLL: 'dddd, D MMMM YYYY [i] HH:mm',\n },\n calendar: {\n sameDay: '[i teie mahana, i] LT',\n nextDay: '[apopo i] LT',\n nextWeek: 'dddd [i] LT',\n lastDay: '[inanahi i] LT',\n lastWeek: 'dddd [whakamutunga i] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'i roto i %s',\n past: '%s i mua',\n s: 'te hēkona ruarua',\n ss: '%d hēkona',\n m: 'he meneti',\n mm: '%d meneti',\n h: 'te haora',\n hh: '%d haora',\n d: 'he ra',\n dd: '%d ra',\n M: 'he marama',\n MM: '%d marama',\n y: 'he tau',\n yy: '%d tau',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return mi;\n\n})));\n","//! moment.js locale configuration\n//! locale : Macedonian [mk]\n//! author : Borislav Mickov : https://github.com/B0k0\n//! author : Sashko Todorov : https://github.com/bkyceh\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var mk = moment.defineLocale('mk', {\n months: 'јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември'.split(\n '_'\n ),\n monthsShort: 'јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек'.split('_'),\n weekdays: 'недела_понеделник_вторник_среда_четврток_петок_сабота'.split(\n '_'\n ),\n weekdaysShort: 'нед_пон_вто_сре_чет_пет_саб'.split('_'),\n weekdaysMin: 'нe_пo_вт_ср_че_пе_сa'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'D.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY H:mm',\n LLLL: 'dddd, D MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[Денес во] LT',\n nextDay: '[Утре во] LT',\n nextWeek: '[Во] dddd [во] LT',\n lastDay: '[Вчера во] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 6:\n return '[Изминатата] dddd [во] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[Изминатиот] dddd [во] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'за %s',\n past: 'пред %s',\n s: 'неколку секунди',\n ss: '%d секунди',\n m: 'една минута',\n mm: '%d минути',\n h: 'еден час',\n hh: '%d часа',\n d: 'еден ден',\n dd: '%d дена',\n M: 'еден месец',\n MM: '%d месеци',\n y: 'една година',\n yy: '%d години',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ев|ен|ти|ви|ри|ми)/,\n ordinal: function (number) {\n var lastDigit = number % 10,\n last2Digits = number % 100;\n if (number === 0) {\n return number + '-ев';\n } else if (last2Digits === 0) {\n return number + '-ен';\n } else if (last2Digits > 10 && last2Digits < 20) {\n return number + '-ти';\n } else if (lastDigit === 1) {\n return number + '-ви';\n } else if (lastDigit === 2) {\n return number + '-ри';\n } else if (lastDigit === 7 || lastDigit === 8) {\n return number + '-ми';\n } else {\n return number + '-ти';\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return mk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Malayalam [ml]\n//! author : Floyd Pink : https://github.com/floydpink\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ml = moment.defineLocale('ml', {\n months: 'ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ'.split(\n '_'\n ),\n monthsShort:\n 'ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച'.split(\n '_'\n ),\n weekdaysShort: 'ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി'.split('_'),\n weekdaysMin: 'ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm -നു',\n LTS: 'A h:mm:ss -നു',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm -നു',\n LLLL: 'dddd, D MMMM YYYY, A h:mm -നു',\n },\n calendar: {\n sameDay: '[ഇന്ന്] LT',\n nextDay: '[നാളെ] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[ഇന്നലെ] LT',\n lastWeek: '[കഴിഞ്ഞ] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s കഴിഞ്ഞ്',\n past: '%s മുൻപ്',\n s: 'അൽപ നിമിഷങ്ങൾ',\n ss: '%d സെക്കൻഡ്',\n m: 'ഒരു മിനിറ്റ്',\n mm: '%d മിനിറ്റ്',\n h: 'ഒരു മണിക്കൂർ',\n hh: '%d മണിക്കൂർ',\n d: 'ഒരു ദിവസം',\n dd: '%d ദിവസം',\n M: 'ഒരു മാസം',\n MM: '%d മാസം',\n y: 'ഒരു വർഷം',\n yy: '%d വർഷം',\n },\n meridiemParse: /രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n (meridiem === 'രാത്രി' && hour >= 4) ||\n meridiem === 'ഉച്ച കഴിഞ്ഞ്' ||\n meridiem === 'വൈകുന്നേരം'\n ) {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'രാത്രി';\n } else if (hour < 12) {\n return 'രാവിലെ';\n } else if (hour < 17) {\n return 'ഉച്ച കഴിഞ്ഞ്';\n } else if (hour < 20) {\n return 'വൈകുന്നേരം';\n } else {\n return 'രാത്രി';\n }\n },\n });\n\n return ml;\n\n})));\n","//! moment.js locale configuration\n//! locale : Mongolian [mn]\n//! author : Javkhlantugs Nyamdorj : https://github.com/javkhaanj7\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function translate(number, withoutSuffix, key, isFuture) {\n switch (key) {\n case 's':\n return withoutSuffix ? 'хэдхэн секунд' : 'хэдхэн секундын';\n case 'ss':\n return number + (withoutSuffix ? ' секунд' : ' секундын');\n case 'm':\n case 'mm':\n return number + (withoutSuffix ? ' минут' : ' минутын');\n case 'h':\n case 'hh':\n return number + (withoutSuffix ? ' цаг' : ' цагийн');\n case 'd':\n case 'dd':\n return number + (withoutSuffix ? ' өдөр' : ' өдрийн');\n case 'M':\n case 'MM':\n return number + (withoutSuffix ? ' сар' : ' сарын');\n case 'y':\n case 'yy':\n return number + (withoutSuffix ? ' жил' : ' жилийн');\n default:\n return number;\n }\n }\n\n var mn = moment.defineLocale('mn', {\n months: 'Нэгдүгээр сар_Хоёрдугаар сар_Гуравдугаар сар_Дөрөвдүгээр сар_Тавдугаар сар_Зургадугаар сар_Долдугаар сар_Наймдугаар сар_Есдүгээр сар_Аравдугаар сар_Арван нэгдүгээр сар_Арван хоёрдугаар сар'.split(\n '_'\n ),\n monthsShort:\n '1 сар_2 сар_3 сар_4 сар_5 сар_6 сар_7 сар_8 сар_9 сар_10 сар_11 сар_12 сар'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'Ням_Даваа_Мягмар_Лхагва_Пүрэв_Баасан_Бямба'.split('_'),\n weekdaysShort: 'Ням_Дав_Мяг_Лха_Пүр_Баа_Бям'.split('_'),\n weekdaysMin: 'Ня_Да_Мя_Лх_Пү_Ба_Бя'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY оны MMMMын D',\n LLL: 'YYYY оны MMMMын D HH:mm',\n LLLL: 'dddd, YYYY оны MMMMын D HH:mm',\n },\n meridiemParse: /ҮӨ|ҮХ/i,\n isPM: function (input) {\n return input === 'ҮХ';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ҮӨ';\n } else {\n return 'ҮХ';\n }\n },\n calendar: {\n sameDay: '[Өнөөдөр] LT',\n nextDay: '[Маргааш] LT',\n nextWeek: '[Ирэх] dddd LT',\n lastDay: '[Өчигдөр] LT',\n lastWeek: '[Өнгөрсөн] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s дараа',\n past: '%s өмнө',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2} өдөр/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + ' өдөр';\n default:\n return number;\n }\n },\n });\n\n return mn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Marathi [mr]\n//! author : Harshad Kale : https://github.com/kalehv\n//! author : Vivek Athalye : https://github.com/vnathalye\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '१',\n 2: '२',\n 3: '३',\n 4: '४',\n 5: '५',\n 6: '६',\n 7: '७',\n 8: '८',\n 9: '९',\n 0: '०',\n },\n numberMap = {\n '१': '1',\n '२': '2',\n '३': '3',\n '४': '4',\n '५': '5',\n '६': '6',\n '७': '7',\n '८': '8',\n '९': '9',\n '०': '0',\n };\n\n function relativeTimeMr(number, withoutSuffix, string, isFuture) {\n var output = '';\n if (withoutSuffix) {\n switch (string) {\n case 's':\n output = 'काही सेकंद';\n break;\n case 'ss':\n output = '%d सेकंद';\n break;\n case 'm':\n output = 'एक मिनिट';\n break;\n case 'mm':\n output = '%d मिनिटे';\n break;\n case 'h':\n output = 'एक तास';\n break;\n case 'hh':\n output = '%d तास';\n break;\n case 'd':\n output = 'एक दिवस';\n break;\n case 'dd':\n output = '%d दिवस';\n break;\n case 'M':\n output = 'एक महिना';\n break;\n case 'MM':\n output = '%d महिने';\n break;\n case 'y':\n output = 'एक वर्ष';\n break;\n case 'yy':\n output = '%d वर्षे';\n break;\n }\n } else {\n switch (string) {\n case 's':\n output = 'काही सेकंदां';\n break;\n case 'ss':\n output = '%d सेकंदां';\n break;\n case 'm':\n output = 'एका मिनिटा';\n break;\n case 'mm':\n output = '%d मिनिटां';\n break;\n case 'h':\n output = 'एका तासा';\n break;\n case 'hh':\n output = '%d तासां';\n break;\n case 'd':\n output = 'एका दिवसा';\n break;\n case 'dd':\n output = '%d दिवसां';\n break;\n case 'M':\n output = 'एका महिन्या';\n break;\n case 'MM':\n output = '%d महिन्यां';\n break;\n case 'y':\n output = 'एका वर्षा';\n break;\n case 'yy':\n output = '%d वर्षां';\n break;\n }\n }\n return output.replace(/%d/i, number);\n }\n\n var mr = moment.defineLocale('mr', {\n months: 'जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर'.split(\n '_'\n ),\n monthsShort:\n 'जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'),\n weekdaysShort: 'रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि'.split('_'),\n weekdaysMin: 'र_सो_मं_बु_गु_शु_श'.split('_'),\n longDateFormat: {\n LT: 'A h:mm वाजता',\n LTS: 'A h:mm:ss वाजता',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm वाजता',\n LLLL: 'dddd, D MMMM YYYY, A h:mm वाजता',\n },\n calendar: {\n sameDay: '[आज] LT',\n nextDay: '[उद्या] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[काल] LT',\n lastWeek: '[मागील] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%sमध्ये',\n past: '%sपूर्वी',\n s: relativeTimeMr,\n ss: relativeTimeMr,\n m: relativeTimeMr,\n mm: relativeTimeMr,\n h: relativeTimeMr,\n hh: relativeTimeMr,\n d: relativeTimeMr,\n dd: relativeTimeMr,\n M: relativeTimeMr,\n MM: relativeTimeMr,\n y: relativeTimeMr,\n yy: relativeTimeMr,\n },\n preparse: function (string) {\n return string.replace(/[१२३४५६७८९०]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /पहाटे|सकाळी|दुपारी|सायंकाळी|रात्री/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'पहाटे' || meridiem === 'सकाळी') {\n return hour;\n } else if (\n meridiem === 'दुपारी' ||\n meridiem === 'सायंकाळी' ||\n meridiem === 'रात्री'\n ) {\n return hour >= 12 ? hour : hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour >= 0 && hour < 6) {\n return 'पहाटे';\n } else if (hour < 12) {\n return 'सकाळी';\n } else if (hour < 17) {\n return 'दुपारी';\n } else if (hour < 20) {\n return 'सायंकाळी';\n } else {\n return 'रात्री';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return mr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Malay [ms-my]\n//! note : DEPRECATED, the correct one is [ms]\n//! author : Weldan Jamili : https://github.com/weldan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var msMy = moment.defineLocale('ms-my', {\n months: 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),\n weekdays: 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),\n weekdaysShort: 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),\n weekdaysMin: 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /pagi|tengahari|petang|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'tengahari') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'petang' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'tengahari';\n } else if (hours < 19) {\n return 'petang';\n } else {\n return 'malam';\n }\n },\n calendar: {\n sameDay: '[Hari ini pukul] LT',\n nextDay: '[Esok pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kelmarin pukul] LT',\n lastWeek: 'dddd [lepas pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dalam %s',\n past: '%s yang lepas',\n s: 'beberapa saat',\n ss: '%d saat',\n m: 'seminit',\n mm: '%d minit',\n h: 'sejam',\n hh: '%d jam',\n d: 'sehari',\n dd: '%d hari',\n M: 'sebulan',\n MM: '%d bulan',\n y: 'setahun',\n yy: '%d tahun',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return msMy;\n\n})));\n","//! moment.js locale configuration\n//! locale : Malay [ms]\n//! author : Weldan Jamili : https://github.com/weldan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ms = moment.defineLocale('ms', {\n months: 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),\n weekdays: 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),\n weekdaysShort: 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),\n weekdaysMin: 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /pagi|tengahari|petang|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'tengahari') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'petang' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'tengahari';\n } else if (hours < 19) {\n return 'petang';\n } else {\n return 'malam';\n }\n },\n calendar: {\n sameDay: '[Hari ini pukul] LT',\n nextDay: '[Esok pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kelmarin pukul] LT',\n lastWeek: 'dddd [lepas pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dalam %s',\n past: '%s yang lepas',\n s: 'beberapa saat',\n ss: '%d saat',\n m: 'seminit',\n mm: '%d minit',\n h: 'sejam',\n hh: '%d jam',\n d: 'sehari',\n dd: '%d hari',\n M: 'sebulan',\n MM: '%d bulan',\n y: 'setahun',\n yy: '%d tahun',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return ms;\n\n})));\n","//! moment.js locale configuration\n//! locale : Maltese (Malta) [mt]\n//! author : Alessandro Maruccia : https://github.com/alesma\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var mt = moment.defineLocale('mt', {\n months: 'Jannar_Frar_Marzu_April_Mejju_Ġunju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Diċembru'.split(\n '_'\n ),\n monthsShort: 'Jan_Fra_Mar_Apr_Mej_Ġun_Lul_Aww_Set_Ott_Nov_Diċ'.split('_'),\n weekdays:\n 'Il-Ħadd_It-Tnejn_It-Tlieta_L-Erbgħa_Il-Ħamis_Il-Ġimgħa_Is-Sibt'.split(\n '_'\n ),\n weekdaysShort: 'Ħad_Tne_Tli_Erb_Ħam_Ġim_Sib'.split('_'),\n weekdaysMin: 'Ħa_Tn_Tl_Er_Ħa_Ġi_Si'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Illum fil-]LT',\n nextDay: '[Għada fil-]LT',\n nextWeek: 'dddd [fil-]LT',\n lastDay: '[Il-bieraħ fil-]LT',\n lastWeek: 'dddd [li għadda] [fil-]LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'f’ %s',\n past: '%s ilu',\n s: 'ftit sekondi',\n ss: '%d sekondi',\n m: 'minuta',\n mm: '%d minuti',\n h: 'siegħa',\n hh: '%d siegħat',\n d: 'ġurnata',\n dd: '%d ġranet',\n M: 'xahar',\n MM: '%d xhur',\n y: 'sena',\n yy: '%d sni',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return mt;\n\n})));\n","//! moment.js locale configuration\n//! locale : Burmese [my]\n//! author : Squar team, mysquar.com\n//! author : David Rossellat : https://github.com/gholadr\n//! author : Tin Aung Lin : https://github.com/thanyawzinmin\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '၁',\n 2: '၂',\n 3: '၃',\n 4: '၄',\n 5: '၅',\n 6: '၆',\n 7: '၇',\n 8: '၈',\n 9: '၉',\n 0: '၀',\n },\n numberMap = {\n '၁': '1',\n '၂': '2',\n '၃': '3',\n '၄': '4',\n '၅': '5',\n '၆': '6',\n '၇': '7',\n '၈': '8',\n '၉': '9',\n '၀': '0',\n };\n\n var my = moment.defineLocale('my', {\n months: 'ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ'.split(\n '_'\n ),\n monthsShort: 'ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ'.split('_'),\n weekdays: 'တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ'.split(\n '_'\n ),\n weekdaysShort: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),\n weekdaysMin: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),\n\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[ယနေ.] LT [မှာ]',\n nextDay: '[မနက်ဖြန်] LT [မှာ]',\n nextWeek: 'dddd LT [မှာ]',\n lastDay: '[မနေ.က] LT [မှာ]',\n lastWeek: '[ပြီးခဲ့သော] dddd LT [မှာ]',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'လာမည့် %s မှာ',\n past: 'လွန်ခဲ့သော %s က',\n s: 'စက္ကန်.အနည်းငယ်',\n ss: '%d စက္ကန့်',\n m: 'တစ်မိနစ်',\n mm: '%d မိနစ်',\n h: 'တစ်နာရီ',\n hh: '%d နာရီ',\n d: 'တစ်ရက်',\n dd: '%d ရက်',\n M: 'တစ်လ',\n MM: '%d လ',\n y: 'တစ်နှစ်',\n yy: '%d နှစ်',\n },\n preparse: function (string) {\n return string.replace(/[၁၂၃၄၅၆၇၈၉၀]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return my;\n\n})));\n","//! moment.js locale configuration\n//! locale : Norwegian Bokmål [nb]\n//! authors : Espen Hovlandsdal : https://github.com/rexxars\n//! Sigurd Gartmann : https://github.com/sigurdga\n//! Stephen Ramthun : https://github.com/stephenramthun\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var nb = moment.defineLocale('nb', {\n months: 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.'.split('_'),\n monthsParseExact: true,\n weekdays: 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),\n weekdaysShort: 'sø._ma._ti._on._to._fr._lø.'.split('_'),\n weekdaysMin: 'sø_ma_ti_on_to_fr_lø'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY [kl.] HH:mm',\n LLLL: 'dddd D. MMMM YYYY [kl.] HH:mm',\n },\n calendar: {\n sameDay: '[i dag kl.] LT',\n nextDay: '[i morgen kl.] LT',\n nextWeek: 'dddd [kl.] LT',\n lastDay: '[i går kl.] LT',\n lastWeek: '[forrige] dddd [kl.] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: '%s siden',\n s: 'noen sekunder',\n ss: '%d sekunder',\n m: 'ett minutt',\n mm: '%d minutter',\n h: 'en time',\n hh: '%d timer',\n d: 'en dag',\n dd: '%d dager',\n w: 'en uke',\n ww: '%d uker',\n M: 'en måned',\n MM: '%d måneder',\n y: 'ett år',\n yy: '%d år',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return nb;\n\n})));\n","//! moment.js locale configuration\n//! locale : Nepalese [ne]\n//! author : suvash : https://github.com/suvash\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '१',\n 2: '२',\n 3: '३',\n 4: '४',\n 5: '५',\n 6: '६',\n 7: '७',\n 8: '८',\n 9: '९',\n 0: '०',\n },\n numberMap = {\n '१': '1',\n '२': '2',\n '३': '3',\n '४': '4',\n '५': '5',\n '६': '6',\n '७': '7',\n '८': '8',\n '९': '9',\n '०': '0',\n };\n\n var ne = moment.defineLocale('ne', {\n months: 'जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर'.split(\n '_'\n ),\n monthsShort:\n 'जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार'.split(\n '_'\n ),\n weekdaysShort: 'आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.'.split('_'),\n weekdaysMin: 'आ._सो._मं._बु._बि._शु._श.'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'Aको h:mm बजे',\n LTS: 'Aको h:mm:ss बजे',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, Aको h:mm बजे',\n LLLL: 'dddd, D MMMM YYYY, Aको h:mm बजे',\n },\n preparse: function (string) {\n return string.replace(/[१२३४५६७८९०]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /राति|बिहान|दिउँसो|साँझ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'राति') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'बिहान') {\n return hour;\n } else if (meridiem === 'दिउँसो') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'साँझ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 3) {\n return 'राति';\n } else if (hour < 12) {\n return 'बिहान';\n } else if (hour < 16) {\n return 'दिउँसो';\n } else if (hour < 20) {\n return 'साँझ';\n } else {\n return 'राति';\n }\n },\n calendar: {\n sameDay: '[आज] LT',\n nextDay: '[भोलि] LT',\n nextWeek: '[आउँदो] dddd[,] LT',\n lastDay: '[हिजो] LT',\n lastWeek: '[गएको] dddd[,] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%sमा',\n past: '%s अगाडि',\n s: 'केही क्षण',\n ss: '%d सेकेण्ड',\n m: 'एक मिनेट',\n mm: '%d मिनेट',\n h: 'एक घण्टा',\n hh: '%d घण्टा',\n d: 'एक दिन',\n dd: '%d दिन',\n M: 'एक महिना',\n MM: '%d महिना',\n y: 'एक बर्ष',\n yy: '%d बर्ष',\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return ne;\n\n})));\n","//! moment.js locale configuration\n//! locale : Dutch (Belgium) [nl-be]\n//! author : Joris Röling : https://github.com/jorisroling\n//! author : Jacob Middag : https://github.com/middagj\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortWithDots =\n 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'),\n monthsShortWithoutDots =\n 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n monthsParse = [\n /^jan/i,\n /^feb/i,\n /^maart|mrt.?$/i,\n /^apr/i,\n /^mei$/i,\n /^jun[i.]?$/i,\n /^jul[i.]?$/i,\n /^aug/i,\n /^sep/i,\n /^okt/i,\n /^nov/i,\n /^dec/i,\n ],\n monthsRegex =\n /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\\.?|feb\\.?|mrt\\.?|apr\\.?|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i;\n\n var nlBe = moment.defineLocale('nl-be', {\n months: 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,\n monthsShortStrictRegex:\n /^(jan\\.?|feb\\.?|mrt\\.?|apr\\.?|mei|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i,\n\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n weekdays:\n 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'),\n weekdaysShort: 'zo._ma._di._wo._do._vr._za.'.split('_'),\n weekdaysMin: 'zo_ma_di_wo_do_vr_za'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[vandaag om] LT',\n nextDay: '[morgen om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[gisteren om] LT',\n lastWeek: '[afgelopen] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'over %s',\n past: '%s geleden',\n s: 'een paar seconden',\n ss: '%d seconden',\n m: 'één minuut',\n mm: '%d minuten',\n h: 'één uur',\n hh: '%d uur',\n d: 'één dag',\n dd: '%d dagen',\n M: 'één maand',\n MM: '%d maanden',\n y: 'één jaar',\n yy: '%d jaar',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n );\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return nlBe;\n\n})));\n","//! moment.js locale configuration\n//! locale : Dutch [nl]\n//! author : Joris Röling : https://github.com/jorisroling\n//! author : Jacob Middag : https://github.com/middagj\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortWithDots =\n 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'),\n monthsShortWithoutDots =\n 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n monthsParse = [\n /^jan/i,\n /^feb/i,\n /^maart|mrt.?$/i,\n /^apr/i,\n /^mei$/i,\n /^jun[i.]?$/i,\n /^jul[i.]?$/i,\n /^aug/i,\n /^sep/i,\n /^okt/i,\n /^nov/i,\n /^dec/i,\n ],\n monthsRegex =\n /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\\.?|feb\\.?|mrt\\.?|apr\\.?|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i;\n\n var nl = moment.defineLocale('nl', {\n months: 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,\n monthsShortStrictRegex:\n /^(jan\\.?|feb\\.?|mrt\\.?|apr\\.?|mei|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i,\n\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n weekdays:\n 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'),\n weekdaysShort: 'zo._ma._di._wo._do._vr._za.'.split('_'),\n weekdaysMin: 'zo_ma_di_wo_do_vr_za'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[vandaag om] LT',\n nextDay: '[morgen om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[gisteren om] LT',\n lastWeek: '[afgelopen] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'over %s',\n past: '%s geleden',\n s: 'een paar seconden',\n ss: '%d seconden',\n m: 'één minuut',\n mm: '%d minuten',\n h: 'één uur',\n hh: '%d uur',\n d: 'één dag',\n dd: '%d dagen',\n w: 'één week',\n ww: '%d weken',\n M: 'één maand',\n MM: '%d maanden',\n y: 'één jaar',\n yy: '%d jaar',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n );\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return nl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Nynorsk [nn]\n//! authors : https://github.com/mechuwind\n//! Stephen Ramthun : https://github.com/stephenramthun\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var nn = moment.defineLocale('nn', {\n months: 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.'.split('_'),\n monthsParseExact: true,\n weekdays: 'sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag'.split('_'),\n weekdaysShort: 'su._må._ty._on._to._fr._lau.'.split('_'),\n weekdaysMin: 'su_må_ty_on_to_fr_la'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY [kl.] H:mm',\n LLLL: 'dddd D. MMMM YYYY [kl.] HH:mm',\n },\n calendar: {\n sameDay: '[I dag klokka] LT',\n nextDay: '[I morgon klokka] LT',\n nextWeek: 'dddd [klokka] LT',\n lastDay: '[I går klokka] LT',\n lastWeek: '[Føregåande] dddd [klokka] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: '%s sidan',\n s: 'nokre sekund',\n ss: '%d sekund',\n m: 'eit minutt',\n mm: '%d minutt',\n h: 'ein time',\n hh: '%d timar',\n d: 'ein dag',\n dd: '%d dagar',\n w: 'ei veke',\n ww: '%d veker',\n M: 'ein månad',\n MM: '%d månader',\n y: 'eit år',\n yy: '%d år',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return nn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Occitan, lengadocian dialecte [oc-lnc]\n//! author : Quentin PAGÈS : https://github.com/Quenty31\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ocLnc = moment.defineLocale('oc-lnc', {\n months: {\n standalone:\n 'genièr_febrièr_març_abril_mai_junh_julhet_agost_setembre_octòbre_novembre_decembre'.split(\n '_'\n ),\n format: \"de genièr_de febrièr_de març_d'abril_de mai_de junh_de julhet_d'agost_de setembre_d'octòbre_de novembre_de decembre\".split(\n '_'\n ),\n isFormat: /D[oD]?(\\s)+MMMM/,\n },\n monthsShort:\n 'gen._febr._març_abr._mai_junh_julh._ago._set._oct._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'dimenge_diluns_dimars_dimècres_dijòus_divendres_dissabte'.split(\n '_'\n ),\n weekdaysShort: 'dg._dl._dm._dc._dj._dv._ds.'.split('_'),\n weekdaysMin: 'dg_dl_dm_dc_dj_dv_ds'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM [de] YYYY',\n ll: 'D MMM YYYY',\n LLL: 'D MMMM [de] YYYY [a] H:mm',\n lll: 'D MMM YYYY, H:mm',\n LLLL: 'dddd D MMMM [de] YYYY [a] H:mm',\n llll: 'ddd D MMM YYYY, H:mm',\n },\n calendar: {\n sameDay: '[uèi a] LT',\n nextDay: '[deman a] LT',\n nextWeek: 'dddd [a] LT',\n lastDay: '[ièr a] LT',\n lastWeek: 'dddd [passat a] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: \"d'aquí %s\",\n past: 'fa %s',\n s: 'unas segondas',\n ss: '%d segondas',\n m: 'una minuta',\n mm: '%d minutas',\n h: 'una ora',\n hh: '%d oras',\n d: 'un jorn',\n dd: '%d jorns',\n M: 'un mes',\n MM: '%d meses',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(r|n|t|è|a)/,\n ordinal: function (number, period) {\n var output =\n number === 1\n ? 'r'\n : number === 2\n ? 'n'\n : number === 3\n ? 'r'\n : number === 4\n ? 't'\n : 'è';\n if (period === 'w' || period === 'W') {\n output = 'a';\n }\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4,\n },\n });\n\n return ocLnc;\n\n})));\n","//! moment.js locale configuration\n//! locale : Punjabi (India) [pa-in]\n//! author : Harpreet Singh : https://github.com/harpreetkhalsagtbit\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '੧',\n 2: '੨',\n 3: '੩',\n 4: '੪',\n 5: '੫',\n 6: '੬',\n 7: '੭',\n 8: '੮',\n 9: '੯',\n 0: '੦',\n },\n numberMap = {\n '੧': '1',\n '੨': '2',\n '੩': '3',\n '੪': '4',\n '੫': '5',\n '੬': '6',\n '੭': '7',\n '੮': '8',\n '੯': '9',\n '੦': '0',\n };\n\n var paIn = moment.defineLocale('pa-in', {\n // There are months name as per Nanakshahi Calendar but they are not used as rigidly in modern Punjabi.\n months: 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split(\n '_'\n ),\n monthsShort:\n 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split(\n '_'\n ),\n weekdays: 'ਐਤਵਾਰ_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬੁਧਵਾਰ_ਵੀਰਵਾਰ_ਸ਼ੁੱਕਰਵਾਰ_ਸ਼ਨੀਚਰਵਾਰ'.split(\n '_'\n ),\n weekdaysShort: 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'),\n weekdaysMin: 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm ਵਜੇ',\n LTS: 'A h:mm:ss ਵਜੇ',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm ਵਜੇ',\n LLLL: 'dddd, D MMMM YYYY, A h:mm ਵਜੇ',\n },\n calendar: {\n sameDay: '[ਅਜ] LT',\n nextDay: '[ਕਲ] LT',\n nextWeek: '[ਅਗਲਾ] dddd, LT',\n lastDay: '[ਕਲ] LT',\n lastWeek: '[ਪਿਛਲੇ] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ਵਿੱਚ',\n past: '%s ਪਿਛਲੇ',\n s: 'ਕੁਝ ਸਕਿੰਟ',\n ss: '%d ਸਕਿੰਟ',\n m: 'ਇਕ ਮਿੰਟ',\n mm: '%d ਮਿੰਟ',\n h: 'ਇੱਕ ਘੰਟਾ',\n hh: '%d ਘੰਟੇ',\n d: 'ਇੱਕ ਦਿਨ',\n dd: '%d ਦਿਨ',\n M: 'ਇੱਕ ਮਹੀਨਾ',\n MM: '%d ਮਹੀਨੇ',\n y: 'ਇੱਕ ਸਾਲ',\n yy: '%d ਸਾਲ',\n },\n preparse: function (string) {\n return string.replace(/[੧੨੩੪੫੬੭੮੯੦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Punjabi notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Punjabi.\n meridiemParse: /ਰਾਤ|ਸਵੇਰ|ਦੁਪਹਿਰ|ਸ਼ਾਮ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ਰਾਤ') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ਸਵੇਰ') {\n return hour;\n } else if (meridiem === 'ਦੁਪਹਿਰ') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'ਸ਼ਾਮ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ਰਾਤ';\n } else if (hour < 10) {\n return 'ਸਵੇਰ';\n } else if (hour < 17) {\n return 'ਦੁਪਹਿਰ';\n } else if (hour < 20) {\n return 'ਸ਼ਾਮ';\n } else {\n return 'ਰਾਤ';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return paIn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Polish [pl]\n//! author : Rafal Hirsz : https://github.com/evoL\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsNominative =\n 'styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień'.split(\n '_'\n ),\n monthsSubjective =\n 'stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia'.split(\n '_'\n ),\n monthsParse = [\n /^sty/i,\n /^lut/i,\n /^mar/i,\n /^kwi/i,\n /^maj/i,\n /^cze/i,\n /^lip/i,\n /^sie/i,\n /^wrz/i,\n /^paź/i,\n /^lis/i,\n /^gru/i,\n ];\n function plural(n) {\n return n % 10 < 5 && n % 10 > 1 && ~~(n / 10) % 10 !== 1;\n }\n function translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n return result + (plural(number) ? 'sekundy' : 'sekund');\n case 'm':\n return withoutSuffix ? 'minuta' : 'minutę';\n case 'mm':\n return result + (plural(number) ? 'minuty' : 'minut');\n case 'h':\n return withoutSuffix ? 'godzina' : 'godzinę';\n case 'hh':\n return result + (plural(number) ? 'godziny' : 'godzin');\n case 'ww':\n return result + (plural(number) ? 'tygodnie' : 'tygodni');\n case 'MM':\n return result + (plural(number) ? 'miesiące' : 'miesięcy');\n case 'yy':\n return result + (plural(number) ? 'lata' : 'lat');\n }\n }\n\n var pl = moment.defineLocale('pl', {\n months: function (momentToFormat, format) {\n if (!momentToFormat) {\n return monthsNominative;\n } else if (/D MMMM/.test(format)) {\n return monthsSubjective[momentToFormat.month()];\n } else {\n return monthsNominative[momentToFormat.month()];\n }\n },\n monthsShort: 'sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru'.split('_'),\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays:\n 'niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota'.split('_'),\n weekdaysShort: 'ndz_pon_wt_śr_czw_pt_sob'.split('_'),\n weekdaysMin: 'Nd_Pn_Wt_Śr_Cz_Pt_So'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Dziś o] LT',\n nextDay: '[Jutro o] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[W niedzielę o] LT';\n\n case 2:\n return '[We wtorek o] LT';\n\n case 3:\n return '[W środę o] LT';\n\n case 6:\n return '[W sobotę o] LT';\n\n default:\n return '[W] dddd [o] LT';\n }\n },\n lastDay: '[Wczoraj o] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[W zeszłą niedzielę o] LT';\n case 3:\n return '[W zeszłą środę o] LT';\n case 6:\n return '[W zeszłą sobotę o] LT';\n default:\n return '[W zeszły] dddd [o] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: '%s temu',\n s: 'kilka sekund',\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: '1 dzień',\n dd: '%d dni',\n w: 'tydzień',\n ww: translate,\n M: 'miesiąc',\n MM: translate,\n y: 'rok',\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return pl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Portuguese (Brazil) [pt-br]\n//! author : Caio Ribeiro Pereira : https://github.com/caio-ribeiro-pereira\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ptBr = moment.defineLocale('pt-br', {\n months: 'janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split(\n '_'\n ),\n monthsShort: 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'),\n weekdays:\n 'domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado'.split(\n '_'\n ),\n weekdaysShort: 'dom_seg_ter_qua_qui_sex_sáb'.split('_'),\n weekdaysMin: 'do_2ª_3ª_4ª_5ª_6ª_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY [às] HH:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY [às] HH:mm',\n },\n calendar: {\n sameDay: '[Hoje às] LT',\n nextDay: '[Amanhã às] LT',\n nextWeek: 'dddd [às] LT',\n lastDay: '[Ontem às] LT',\n lastWeek: function () {\n return this.day() === 0 || this.day() === 6\n ? '[Último] dddd [às] LT' // Saturday + Sunday\n : '[Última] dddd [às] LT'; // Monday - Friday\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'em %s',\n past: 'há %s',\n s: 'poucos segundos',\n ss: '%d segundos',\n m: 'um minuto',\n mm: '%d minutos',\n h: 'uma hora',\n hh: '%d horas',\n d: 'um dia',\n dd: '%d dias',\n M: 'um mês',\n MM: '%d meses',\n y: 'um ano',\n yy: '%d anos',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n invalidDate: 'Data inválida',\n });\n\n return ptBr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Portuguese [pt]\n//! author : Jefferson : https://github.com/jalex79\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var pt = moment.defineLocale('pt', {\n months: 'janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split(\n '_'\n ),\n monthsShort: 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'),\n weekdays:\n 'Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado'.split(\n '_'\n ),\n weekdaysShort: 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'),\n weekdaysMin: 'Do_2ª_3ª_4ª_5ª_6ª_Sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY HH:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Hoje às] LT',\n nextDay: '[Amanhã às] LT',\n nextWeek: 'dddd [às] LT',\n lastDay: '[Ontem às] LT',\n lastWeek: function () {\n return this.day() === 0 || this.day() === 6\n ? '[Último] dddd [às] LT' // Saturday + Sunday\n : '[Última] dddd [às] LT'; // Monday - Friday\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'em %s',\n past: 'há %s',\n s: 'segundos',\n ss: '%d segundos',\n m: 'um minuto',\n mm: '%d minutos',\n h: 'uma hora',\n hh: '%d horas',\n d: 'um dia',\n dd: '%d dias',\n w: 'uma semana',\n ww: '%d semanas',\n M: 'um mês',\n MM: '%d meses',\n y: 'um ano',\n yy: '%d anos',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return pt;\n\n})));\n","//! moment.js locale configuration\n//! locale : Romanian [ro]\n//! author : Vlad Gurdiga : https://github.com/gurdiga\n//! author : Valentin Agachi : https://github.com/avaly\n//! author : Emanuel Cepoi : https://github.com/cepem\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: 'secunde',\n mm: 'minute',\n hh: 'ore',\n dd: 'zile',\n ww: 'săptămâni',\n MM: 'luni',\n yy: 'ani',\n },\n separator = ' ';\n if (number % 100 >= 20 || (number >= 100 && number % 100 === 0)) {\n separator = ' de ';\n }\n return number + separator + format[key];\n }\n\n var ro = moment.defineLocale('ro', {\n months: 'ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie'.split(\n '_'\n ),\n monthsShort:\n 'ian._feb._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'duminică_luni_marți_miercuri_joi_vineri_sâmbătă'.split('_'),\n weekdaysShort: 'Dum_Lun_Mar_Mie_Joi_Vin_Sâm'.split('_'),\n weekdaysMin: 'Du_Lu_Ma_Mi_Jo_Vi_Sâ'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY H:mm',\n LLLL: 'dddd, D MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[azi la] LT',\n nextDay: '[mâine la] LT',\n nextWeek: 'dddd [la] LT',\n lastDay: '[ieri la] LT',\n lastWeek: '[fosta] dddd [la] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'peste %s',\n past: '%s în urmă',\n s: 'câteva secunde',\n ss: relativeTimeWithPlural,\n m: 'un minut',\n mm: relativeTimeWithPlural,\n h: 'o oră',\n hh: relativeTimeWithPlural,\n d: 'o zi',\n dd: relativeTimeWithPlural,\n w: 'o săptămână',\n ww: relativeTimeWithPlural,\n M: 'o lună',\n MM: relativeTimeWithPlural,\n y: 'un an',\n yy: relativeTimeWithPlural,\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return ro;\n\n})));\n","//! moment.js locale configuration\n//! locale : Russian [ru]\n//! author : Viktorminator : https://github.com/Viktorminator\n//! author : Menelion Elensúle : https://github.com/Oire\n//! author : Коренберг Марк : https://github.com/socketpair\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11\n ? forms[0]\n : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20)\n ? forms[1]\n : forms[2];\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд',\n mm: withoutSuffix ? 'минута_минуты_минут' : 'минуту_минуты_минут',\n hh: 'час_часа_часов',\n dd: 'день_дня_дней',\n ww: 'неделя_недели_недель',\n MM: 'месяц_месяца_месяцев',\n yy: 'год_года_лет',\n };\n if (key === 'm') {\n return withoutSuffix ? 'минута' : 'минуту';\n } else {\n return number + ' ' + plural(format[key], +number);\n }\n }\n var monthsParse = [\n /^янв/i,\n /^фев/i,\n /^мар/i,\n /^апр/i,\n /^ма[йя]/i,\n /^июн/i,\n /^июл/i,\n /^авг/i,\n /^сен/i,\n /^окт/i,\n /^ноя/i,\n /^дек/i,\n ];\n\n // http://new.gramota.ru/spravka/rules/139-prop : § 103\n // Сокращения месяцев: http://new.gramota.ru/spravka/buro/search-answer?s=242637\n // CLDR data: http://www.unicode.org/cldr/charts/28/summary/ru.html#1753\n var ru = moment.defineLocale('ru', {\n months: {\n format: 'января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря'.split(\n '_'\n ),\n standalone:\n 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split(\n '_'\n ),\n },\n monthsShort: {\n // по CLDR именно \"июл.\" и \"июн.\", но какой смысл менять букву на точку?\n format: 'янв._февр._мар._апр._мая_июня_июля_авг._сент._окт._нояб._дек.'.split(\n '_'\n ),\n standalone:\n 'янв._февр._март_апр._май_июнь_июль_авг._сент._окт._нояб._дек.'.split(\n '_'\n ),\n },\n weekdays: {\n standalone:\n 'воскресенье_понедельник_вторник_среда_четверг_пятница_суббота'.split(\n '_'\n ),\n format: 'воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу'.split(\n '_'\n ),\n isFormat: /\\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?] ?dddd/,\n },\n weekdaysShort: 'вс_пн_вт_ср_чт_пт_сб'.split('_'),\n weekdaysMin: 'вс_пн_вт_ср_чт_пт_сб'.split('_'),\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n // полные названия с падежами, по три буквы, для некоторых, по 4 буквы, сокращения с точкой и без точки\n monthsRegex:\n /^(январ[ья]|янв\\.?|феврал[ья]|февр?\\.?|марта?|мар\\.?|апрел[ья]|апр\\.?|ма[йя]|июн[ья]|июн\\.?|июл[ья]|июл\\.?|августа?|авг\\.?|сентябр[ья]|сент?\\.?|октябр[ья]|окт\\.?|ноябр[ья]|нояб?\\.?|декабр[ья]|дек\\.?)/i,\n\n // копия предыдущего\n monthsShortRegex:\n /^(январ[ья]|янв\\.?|феврал[ья]|февр?\\.?|марта?|мар\\.?|апрел[ья]|апр\\.?|ма[йя]|июн[ья]|июн\\.?|июл[ья]|июл\\.?|августа?|авг\\.?|сентябр[ья]|сент?\\.?|октябр[ья]|окт\\.?|ноябр[ья]|нояб?\\.?|декабр[ья]|дек\\.?)/i,\n\n // полные названия с падежами\n monthsStrictRegex:\n /^(январ[яь]|феврал[яь]|марта?|апрел[яь]|ма[яй]|июн[яь]|июл[яь]|августа?|сентябр[яь]|октябр[яь]|ноябр[яь]|декабр[яь])/i,\n\n // Выражение, которое соответствует только сокращённым формам\n monthsShortStrictRegex:\n /^(янв\\.|февр?\\.|мар[т.]|апр\\.|ма[яй]|июн[ья.]|июл[ья.]|авг\\.|сент?\\.|окт\\.|нояб?\\.|дек\\.)/i,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY г.',\n LLL: 'D MMMM YYYY г., H:mm',\n LLLL: 'dddd, D MMMM YYYY г., H:mm',\n },\n calendar: {\n sameDay: '[Сегодня, в] LT',\n nextDay: '[Завтра, в] LT',\n lastDay: '[Вчера, в] LT',\n nextWeek: function (now) {\n if (now.week() !== this.week()) {\n switch (this.day()) {\n case 0:\n return '[В следующее] dddd, [в] LT';\n case 1:\n case 2:\n case 4:\n return '[В следующий] dddd, [в] LT';\n case 3:\n case 5:\n case 6:\n return '[В следующую] dddd, [в] LT';\n }\n } else {\n if (this.day() === 2) {\n return '[Во] dddd, [в] LT';\n } else {\n return '[В] dddd, [в] LT';\n }\n }\n },\n lastWeek: function (now) {\n if (now.week() !== this.week()) {\n switch (this.day()) {\n case 0:\n return '[В прошлое] dddd, [в] LT';\n case 1:\n case 2:\n case 4:\n return '[В прошлый] dddd, [в] LT';\n case 3:\n case 5:\n case 6:\n return '[В прошлую] dddd, [в] LT';\n }\n } else {\n if (this.day() === 2) {\n return '[Во] dddd, [в] LT';\n } else {\n return '[В] dddd, [в] LT';\n }\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'через %s',\n past: '%s назад',\n s: 'несколько секунд',\n ss: relativeTimeWithPlural,\n m: relativeTimeWithPlural,\n mm: relativeTimeWithPlural,\n h: 'час',\n hh: relativeTimeWithPlural,\n d: 'день',\n dd: relativeTimeWithPlural,\n w: 'неделя',\n ww: relativeTimeWithPlural,\n M: 'месяц',\n MM: relativeTimeWithPlural,\n y: 'год',\n yy: relativeTimeWithPlural,\n },\n meridiemParse: /ночи|утра|дня|вечера/i,\n isPM: function (input) {\n return /^(дня|вечера)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночи';\n } else if (hour < 12) {\n return 'утра';\n } else if (hour < 17) {\n return 'дня';\n } else {\n return 'вечера';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(й|го|я)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n return number + '-й';\n case 'D':\n return number + '-го';\n case 'w':\n case 'W':\n return number + '-я';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ru;\n\n})));\n","//! moment.js locale configuration\n//! locale : Sindhi [sd]\n//! author : Narain Sagar : https://github.com/narainsagar\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'جنوري',\n 'فيبروري',\n 'مارچ',\n 'اپريل',\n 'مئي',\n 'جون',\n 'جولاءِ',\n 'آگسٽ',\n 'سيپٽمبر',\n 'آڪٽوبر',\n 'نومبر',\n 'ڊسمبر',\n ],\n days = ['آچر', 'سومر', 'اڱارو', 'اربع', 'خميس', 'جمع', 'ڇنڇر'];\n\n var sd = moment.defineLocale('sd', {\n months: months,\n monthsShort: months,\n weekdays: days,\n weekdaysShort: days,\n weekdaysMin: days,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd، D MMMM YYYY HH:mm',\n },\n meridiemParse: /صبح|شام/,\n isPM: function (input) {\n return 'شام' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'صبح';\n }\n return 'شام';\n },\n calendar: {\n sameDay: '[اڄ] LT',\n nextDay: '[سڀاڻي] LT',\n nextWeek: 'dddd [اڳين هفتي تي] LT',\n lastDay: '[ڪالهه] LT',\n lastWeek: '[گزريل هفتي] dddd [تي] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s پوء',\n past: '%s اڳ',\n s: 'چند سيڪنڊ',\n ss: '%d سيڪنڊ',\n m: 'هڪ منٽ',\n mm: '%d منٽ',\n h: 'هڪ ڪلاڪ',\n hh: '%d ڪلاڪ',\n d: 'هڪ ڏينهن',\n dd: '%d ڏينهن',\n M: 'هڪ مهينو',\n MM: '%d مهينا',\n y: 'هڪ سال',\n yy: '%d سال',\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return sd;\n\n})));\n","//! moment.js locale configuration\n//! locale : Northern Sami [se]\n//! authors : Bård Rolstad Henriksen : https://github.com/karamell\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var se = moment.defineLocale('se', {\n months: 'ođđajagemánnu_guovvamánnu_njukčamánnu_cuoŋománnu_miessemánnu_geassemánnu_suoidnemánnu_borgemánnu_čakčamánnu_golggotmánnu_skábmamánnu_juovlamánnu'.split(\n '_'\n ),\n monthsShort:\n 'ođđj_guov_njuk_cuo_mies_geas_suoi_borg_čakč_golg_skáb_juov'.split('_'),\n weekdays:\n 'sotnabeaivi_vuossárga_maŋŋebárga_gaskavahkku_duorastat_bearjadat_lávvardat'.split(\n '_'\n ),\n weekdaysShort: 'sotn_vuos_maŋ_gask_duor_bear_láv'.split('_'),\n weekdaysMin: 's_v_m_g_d_b_L'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'MMMM D. [b.] YYYY',\n LLL: 'MMMM D. [b.] YYYY [ti.] HH:mm',\n LLLL: 'dddd, MMMM D. [b.] YYYY [ti.] HH:mm',\n },\n calendar: {\n sameDay: '[otne ti] LT',\n nextDay: '[ihttin ti] LT',\n nextWeek: 'dddd [ti] LT',\n lastDay: '[ikte ti] LT',\n lastWeek: '[ovddit] dddd [ti] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s geažes',\n past: 'maŋit %s',\n s: 'moadde sekunddat',\n ss: '%d sekunddat',\n m: 'okta minuhta',\n mm: '%d minuhtat',\n h: 'okta diimmu',\n hh: '%d diimmut',\n d: 'okta beaivi',\n dd: '%d beaivvit',\n M: 'okta mánnu',\n MM: '%d mánut',\n y: 'okta jahki',\n yy: '%d jagit',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return se;\n\n})));\n","//! moment.js locale configuration\n//! locale : Sinhalese [si]\n//! author : Sampath Sitinamaluwa : https://github.com/sampathsris\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n /*jshint -W100*/\n var si = moment.defineLocale('si', {\n months: 'ජනවාරි_පෙබරවාරි_මාර්තු_අප්‍රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්'.split(\n '_'\n ),\n monthsShort: 'ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ'.split(\n '_'\n ),\n weekdays:\n 'ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්‍රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා'.split(\n '_'\n ),\n weekdaysShort: 'ඉරි_සඳු_අඟ_බදා_බ්‍රහ_සිකු_සෙන'.split('_'),\n weekdaysMin: 'ඉ_ස_අ_බ_බ්‍ර_සි_සෙ'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'a h:mm',\n LTS: 'a h:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY MMMM D',\n LLL: 'YYYY MMMM D, a h:mm',\n LLLL: 'YYYY MMMM D [වැනි] dddd, a h:mm:ss',\n },\n calendar: {\n sameDay: '[අද] LT[ට]',\n nextDay: '[හෙට] LT[ට]',\n nextWeek: 'dddd LT[ට]',\n lastDay: '[ඊයේ] LT[ට]',\n lastWeek: '[පසුගිය] dddd LT[ට]',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%sකින්',\n past: '%sකට පෙර',\n s: 'තත්පර කිහිපය',\n ss: 'තත්පර %d',\n m: 'මිනිත්තුව',\n mm: 'මිනිත්තු %d',\n h: 'පැය',\n hh: 'පැය %d',\n d: 'දිනය',\n dd: 'දින %d',\n M: 'මාසය',\n MM: 'මාස %d',\n y: 'වසර',\n yy: 'වසර %d',\n },\n dayOfMonthOrdinalParse: /\\d{1,2} වැනි/,\n ordinal: function (number) {\n return number + ' වැනි';\n },\n meridiemParse: /පෙර වරු|පස් වරු|පෙ.ව|ප.ව./,\n isPM: function (input) {\n return input === 'ප.ව.' || input === 'පස් වරු';\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'ප.ව.' : 'පස් වරු';\n } else {\n return isLower ? 'පෙ.ව.' : 'පෙර වරු';\n }\n },\n });\n\n return si;\n\n})));\n","//! moment.js locale configuration\n//! locale : Slovak [sk]\n//! author : Martin Minka : https://github.com/k2s\n//! based on work of petrbela : https://github.com/petrbela\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months =\n 'január_február_marec_apríl_máj_jún_júl_august_september_október_november_december'.split(\n '_'\n ),\n monthsShort = 'jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec'.split('_');\n function plural(n) {\n return n > 1 && n < 5;\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's': // a few seconds / in a few seconds / a few seconds ago\n return withoutSuffix || isFuture ? 'pár sekúnd' : 'pár sekundami';\n case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'sekundy' : 'sekúnd');\n } else {\n return result + 'sekundami';\n }\n case 'm': // a minute / in a minute / a minute ago\n return withoutSuffix ? 'minúta' : isFuture ? 'minútu' : 'minútou';\n case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'minúty' : 'minút');\n } else {\n return result + 'minútami';\n }\n case 'h': // an hour / in an hour / an hour ago\n return withoutSuffix ? 'hodina' : isFuture ? 'hodinu' : 'hodinou';\n case 'hh': // 9 hours / in 9 hours / 9 hours ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'hodiny' : 'hodín');\n } else {\n return result + 'hodinami';\n }\n case 'd': // a day / in a day / a day ago\n return withoutSuffix || isFuture ? 'deň' : 'dňom';\n case 'dd': // 9 days / in 9 days / 9 days ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'dni' : 'dní');\n } else {\n return result + 'dňami';\n }\n case 'M': // a month / in a month / a month ago\n return withoutSuffix || isFuture ? 'mesiac' : 'mesiacom';\n case 'MM': // 9 months / in 9 months / 9 months ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'mesiace' : 'mesiacov');\n } else {\n return result + 'mesiacmi';\n }\n case 'y': // a year / in a year / a year ago\n return withoutSuffix || isFuture ? 'rok' : 'rokom';\n case 'yy': // 9 years / in 9 years / 9 years ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'roky' : 'rokov');\n } else {\n return result + 'rokmi';\n }\n }\n }\n\n var sk = moment.defineLocale('sk', {\n months: months,\n monthsShort: monthsShort,\n weekdays: 'nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota'.split('_'),\n weekdaysShort: 'ne_po_ut_st_št_pi_so'.split('_'),\n weekdaysMin: 'ne_po_ut_st_št_pi_so'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[dnes o] LT',\n nextDay: '[zajtra o] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[v nedeľu o] LT';\n case 1:\n case 2:\n return '[v] dddd [o] LT';\n case 3:\n return '[v stredu o] LT';\n case 4:\n return '[vo štvrtok o] LT';\n case 5:\n return '[v piatok o] LT';\n case 6:\n return '[v sobotu o] LT';\n }\n },\n lastDay: '[včera o] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[minulú nedeľu o] LT';\n case 1:\n case 2:\n return '[minulý] dddd [o] LT';\n case 3:\n return '[minulú stredu o] LT';\n case 4:\n case 5:\n return '[minulý] dddd [o] LT';\n case 6:\n return '[minulú sobotu o] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'pred %s',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return sk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Slovenian [sl]\n//! author : Robert Sedovšek : https://github.com/sedovsek\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's':\n return withoutSuffix || isFuture\n ? 'nekaj sekund'\n : 'nekaj sekundami';\n case 'ss':\n if (number === 1) {\n result += withoutSuffix ? 'sekundo' : 'sekundi';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'sekundi' : 'sekundah';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'sekunde' : 'sekundah';\n } else {\n result += 'sekund';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'ena minuta' : 'eno minuto';\n case 'mm':\n if (number === 1) {\n result += withoutSuffix ? 'minuta' : 'minuto';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'minuti' : 'minutama';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'minute' : 'minutami';\n } else {\n result += withoutSuffix || isFuture ? 'minut' : 'minutami';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'ena ura' : 'eno uro';\n case 'hh':\n if (number === 1) {\n result += withoutSuffix ? 'ura' : 'uro';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'uri' : 'urama';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'ure' : 'urami';\n } else {\n result += withoutSuffix || isFuture ? 'ur' : 'urami';\n }\n return result;\n case 'd':\n return withoutSuffix || isFuture ? 'en dan' : 'enim dnem';\n case 'dd':\n if (number === 1) {\n result += withoutSuffix || isFuture ? 'dan' : 'dnem';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'dni' : 'dnevoma';\n } else {\n result += withoutSuffix || isFuture ? 'dni' : 'dnevi';\n }\n return result;\n case 'M':\n return withoutSuffix || isFuture ? 'en mesec' : 'enim mesecem';\n case 'MM':\n if (number === 1) {\n result += withoutSuffix || isFuture ? 'mesec' : 'mesecem';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'meseca' : 'mesecema';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'mesece' : 'meseci';\n } else {\n result += withoutSuffix || isFuture ? 'mesecev' : 'meseci';\n }\n return result;\n case 'y':\n return withoutSuffix || isFuture ? 'eno leto' : 'enim letom';\n case 'yy':\n if (number === 1) {\n result += withoutSuffix || isFuture ? 'leto' : 'letom';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'leti' : 'letoma';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'leta' : 'leti';\n } else {\n result += withoutSuffix || isFuture ? 'let' : 'leti';\n }\n return result;\n }\n }\n\n var sl = moment.defineLocale('sl', {\n months: 'januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota'.split('_'),\n weekdaysShort: 'ned._pon._tor._sre._čet._pet._sob.'.split('_'),\n weekdaysMin: 'ne_po_to_sr_če_pe_so'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD. MM. YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danes ob] LT',\n nextDay: '[jutri ob] LT',\n\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[v] [nedeljo] [ob] LT';\n case 3:\n return '[v] [sredo] [ob] LT';\n case 6:\n return '[v] [soboto] [ob] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[v] dddd [ob] LT';\n }\n },\n lastDay: '[včeraj ob] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[prejšnjo] [nedeljo] [ob] LT';\n case 3:\n return '[prejšnjo] [sredo] [ob] LT';\n case 6:\n return '[prejšnjo] [soboto] [ob] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[prejšnji] dddd [ob] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'čez %s',\n past: 'pred %s',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return sl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Albanian [sq]\n//! author : Flakërim Ismani : https://github.com/flakerimi\n//! author : Menelion Elensúle : https://github.com/Oire\n//! author : Oerd Cukalla : https://github.com/oerd\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var sq = moment.defineLocale('sq', {\n months: 'Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor'.split(\n '_'\n ),\n monthsShort: 'Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj'.split('_'),\n weekdays: 'E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë'.split(\n '_'\n ),\n weekdaysShort: 'Die_Hën_Mar_Mër_Enj_Pre_Sht'.split('_'),\n weekdaysMin: 'D_H_Ma_Më_E_P_Sh'.split('_'),\n weekdaysParseExact: true,\n meridiemParse: /PD|MD/,\n isPM: function (input) {\n return input.charAt(0) === 'M';\n },\n meridiem: function (hours, minutes, isLower) {\n return hours < 12 ? 'PD' : 'MD';\n },\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Sot në] LT',\n nextDay: '[Nesër në] LT',\n nextWeek: 'dddd [në] LT',\n lastDay: '[Dje në] LT',\n lastWeek: 'dddd [e kaluar në] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'në %s',\n past: '%s më parë',\n s: 'disa sekonda',\n ss: '%d sekonda',\n m: 'një minutë',\n mm: '%d minuta',\n h: 'një orë',\n hh: '%d orë',\n d: 'një ditë',\n dd: '%d ditë',\n M: 'një muaj',\n MM: '%d muaj',\n y: 'një vit',\n yy: '%d vite',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return sq;\n\n})));\n","//! moment.js locale configuration\n//! locale : Serbian Cyrillic [sr-cyrl]\n//! author : Milan Janačković : https://github.com/milan-j\n//! author : Stefan Crnjaković : https://github.com/crnjakovic\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var translator = {\n words: {\n //Different grammatical cases\n ss: ['секунда', 'секунде', 'секунди'],\n m: ['један минут', 'једног минута'],\n mm: ['минут', 'минута', 'минута'],\n h: ['један сат', 'једног сата'],\n hh: ['сат', 'сата', 'сати'],\n d: ['један дан', 'једног дана'],\n dd: ['дан', 'дана', 'дана'],\n M: ['један месец', 'једног месеца'],\n MM: ['месец', 'месеца', 'месеци'],\n y: ['једну годину', 'једне године'],\n yy: ['годину', 'године', 'година'],\n },\n correctGrammaticalCase: function (number, wordKey) {\n if (\n number % 10 >= 1 &&\n number % 10 <= 4 &&\n (number % 100 < 10 || number % 100 >= 20)\n ) {\n return number % 10 === 1 ? wordKey[0] : wordKey[1];\n }\n return wordKey[2];\n },\n translate: function (number, withoutSuffix, key, isFuture) {\n var wordKey = translator.words[key],\n word;\n\n if (key.length === 1) {\n // Nominativ\n if (key === 'y' && withoutSuffix) return 'једна година';\n return isFuture || withoutSuffix ? wordKey[0] : wordKey[1];\n }\n\n word = translator.correctGrammaticalCase(number, wordKey);\n // Nominativ\n if (key === 'yy' && withoutSuffix && word === 'годину') {\n return number + ' година';\n }\n\n return number + ' ' + word;\n },\n };\n\n var srCyrl = moment.defineLocale('sr-cyrl', {\n months: 'јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар'.split(\n '_'\n ),\n monthsShort:\n 'јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.'.split('_'),\n monthsParseExact: true,\n weekdays: 'недеља_понедељак_уторак_среда_четвртак_петак_субота'.split('_'),\n weekdaysShort: 'нед._пон._уто._сре._чет._пет._суб.'.split('_'),\n weekdaysMin: 'не_по_ут_ср_че_пе_су'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'D. M. YYYY.',\n LL: 'D. MMMM YYYY.',\n LLL: 'D. MMMM YYYY. H:mm',\n LLLL: 'dddd, D. MMMM YYYY. H:mm',\n },\n calendar: {\n sameDay: '[данас у] LT',\n nextDay: '[сутра у] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[у] [недељу] [у] LT';\n case 3:\n return '[у] [среду] [у] LT';\n case 6:\n return '[у] [суботу] [у] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[у] dddd [у] LT';\n }\n },\n lastDay: '[јуче у] LT',\n lastWeek: function () {\n var lastWeekDays = [\n '[прошле] [недеље] [у] LT',\n '[прошлог] [понедељка] [у] LT',\n '[прошлог] [уторка] [у] LT',\n '[прошле] [среде] [у] LT',\n '[прошлог] [четвртка] [у] LT',\n '[прошлог] [петка] [у] LT',\n '[прошле] [суботе] [у] LT',\n ];\n return lastWeekDays[this.day()];\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'за %s',\n past: 'пре %s',\n s: 'неколико секунди',\n ss: translator.translate,\n m: translator.translate,\n mm: translator.translate,\n h: translator.translate,\n hh: translator.translate,\n d: translator.translate,\n dd: translator.translate,\n M: translator.translate,\n MM: translator.translate,\n y: translator.translate,\n yy: translator.translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 1st is the first week of the year.\n },\n });\n\n return srCyrl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Serbian [sr]\n//! author : Milan Janačković : https://github.com/milan-j\n//! author : Stefan Crnjaković : https://github.com/crnjakovic\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var translator = {\n words: {\n //Different grammatical cases\n ss: ['sekunda', 'sekunde', 'sekundi'],\n m: ['jedan minut', 'jednog minuta'],\n mm: ['minut', 'minuta', 'minuta'],\n h: ['jedan sat', 'jednog sata'],\n hh: ['sat', 'sata', 'sati'],\n d: ['jedan dan', 'jednog dana'],\n dd: ['dan', 'dana', 'dana'],\n M: ['jedan mesec', 'jednog meseca'],\n MM: ['mesec', 'meseca', 'meseci'],\n y: ['jednu godinu', 'jedne godine'],\n yy: ['godinu', 'godine', 'godina'],\n },\n correctGrammaticalCase: function (number, wordKey) {\n if (\n number % 10 >= 1 &&\n number % 10 <= 4 &&\n (number % 100 < 10 || number % 100 >= 20)\n ) {\n return number % 10 === 1 ? wordKey[0] : wordKey[1];\n }\n return wordKey[2];\n },\n translate: function (number, withoutSuffix, key, isFuture) {\n var wordKey = translator.words[key],\n word;\n\n if (key.length === 1) {\n // Nominativ\n if (key === 'y' && withoutSuffix) return 'jedna godina';\n return isFuture || withoutSuffix ? wordKey[0] : wordKey[1];\n }\n\n word = translator.correctGrammaticalCase(number, wordKey);\n // Nominativ\n if (key === 'yy' && withoutSuffix && word === 'godinu') {\n return number + ' godina';\n }\n\n return number + ' ' + word;\n },\n };\n\n var sr = moment.defineLocale('sr', {\n months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'),\n monthsParseExact: true,\n weekdays: 'nedelja_ponedeljak_utorak_sreda_četvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sre._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'D. M. YYYY.',\n LL: 'D. MMMM YYYY.',\n LLL: 'D. MMMM YYYY. H:mm',\n LLLL: 'dddd, D. MMMM YYYY. H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sutra u] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedelju] [u] LT';\n case 3:\n return '[u] [sredu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[juče u] LT',\n lastWeek: function () {\n var lastWeekDays = [\n '[prošle] [nedelje] [u] LT',\n '[prošlog] [ponedeljka] [u] LT',\n '[prošlog] [utorka] [u] LT',\n '[prošle] [srede] [u] LT',\n '[prošlog] [četvrtka] [u] LT',\n '[prošlog] [petka] [u] LT',\n '[prošle] [subote] [u] LT',\n ];\n return lastWeekDays[this.day()];\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'pre %s',\n s: 'nekoliko sekundi',\n ss: translator.translate,\n m: translator.translate,\n mm: translator.translate,\n h: translator.translate,\n hh: translator.translate,\n d: translator.translate,\n dd: translator.translate,\n M: translator.translate,\n MM: translator.translate,\n y: translator.translate,\n yy: translator.translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return sr;\n\n})));\n","//! moment.js locale configuration\n//! locale : siSwati [ss]\n//! author : Nicolai Davies : https://github.com/nicolaidavies\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ss = moment.defineLocale('ss', {\n months: \"Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni\".split(\n '_'\n ),\n monthsShort: 'Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo'.split('_'),\n weekdays:\n 'Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo'.split(\n '_'\n ),\n weekdaysShort: 'Lis_Umb_Lsb_Les_Lsi_Lsh_Umg'.split('_'),\n weekdaysMin: 'Li_Us_Lb_Lt_Ls_Lh_Ug'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Namuhla nga] LT',\n nextDay: '[Kusasa nga] LT',\n nextWeek: 'dddd [nga] LT',\n lastDay: '[Itolo nga] LT',\n lastWeek: 'dddd [leliphelile] [nga] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'nga %s',\n past: 'wenteka nga %s',\n s: 'emizuzwana lomcane',\n ss: '%d mzuzwana',\n m: 'umzuzu',\n mm: '%d emizuzu',\n h: 'lihora',\n hh: '%d emahora',\n d: 'lilanga',\n dd: '%d emalanga',\n M: 'inyanga',\n MM: '%d tinyanga',\n y: 'umnyaka',\n yy: '%d iminyaka',\n },\n meridiemParse: /ekuseni|emini|entsambama|ebusuku/,\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'ekuseni';\n } else if (hours < 15) {\n return 'emini';\n } else if (hours < 19) {\n return 'entsambama';\n } else {\n return 'ebusuku';\n }\n },\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ekuseni') {\n return hour;\n } else if (meridiem === 'emini') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'entsambama' || meridiem === 'ebusuku') {\n if (hour === 0) {\n return 0;\n }\n return hour + 12;\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal: '%d',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ss;\n\n})));\n","//! moment.js locale configuration\n//! locale : Swedish [sv]\n//! author : Jens Alm : https://github.com/ulmus\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var sv = moment.defineLocale('sv', {\n months: 'januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n weekdays: 'söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag'.split('_'),\n weekdaysShort: 'sön_mån_tis_ons_tor_fre_lör'.split('_'),\n weekdaysMin: 'sö_må_ti_on_to_fr_lö'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [kl.] HH:mm',\n LLLL: 'dddd D MMMM YYYY [kl.] HH:mm',\n lll: 'D MMM YYYY HH:mm',\n llll: 'ddd D MMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Idag] LT',\n nextDay: '[Imorgon] LT',\n lastDay: '[Igår] LT',\n nextWeek: '[På] dddd LT',\n lastWeek: '[I] dddd[s] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: 'för %s sedan',\n s: 'några sekunder',\n ss: '%d sekunder',\n m: 'en minut',\n mm: '%d minuter',\n h: 'en timme',\n hh: '%d timmar',\n d: 'en dag',\n dd: '%d dagar',\n M: 'en månad',\n MM: '%d månader',\n y: 'ett år',\n yy: '%d år',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(\\:e|\\:a)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? ':e'\n : b === 1\n ? ':a'\n : b === 2\n ? ':a'\n : b === 3\n ? ':e'\n : ':e';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return sv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Swahili [sw]\n//! author : Fahad Kassim : https://github.com/fadsel\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var sw = moment.defineLocale('sw', {\n months: 'Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des'.split('_'),\n weekdays:\n 'Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi'.split(\n '_'\n ),\n weekdaysShort: 'Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos'.split('_'),\n weekdaysMin: 'J2_J3_J4_J5_Al_Ij_J1'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'hh:mm A',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[leo saa] LT',\n nextDay: '[kesho saa] LT',\n nextWeek: '[wiki ijayo] dddd [saat] LT',\n lastDay: '[jana] LT',\n lastWeek: '[wiki iliyopita] dddd [saat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s baadaye',\n past: 'tokea %s',\n s: 'hivi punde',\n ss: 'sekunde %d',\n m: 'dakika moja',\n mm: 'dakika %d',\n h: 'saa limoja',\n hh: 'masaa %d',\n d: 'siku moja',\n dd: 'siku %d',\n M: 'mwezi mmoja',\n MM: 'miezi %d',\n y: 'mwaka mmoja',\n yy: 'miaka %d',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return sw;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tamil [ta]\n//! author : Arjunkumar Krishnamoorthy : https://github.com/tk120404\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '௧',\n 2: '௨',\n 3: '௩',\n 4: '௪',\n 5: '௫',\n 6: '௬',\n 7: '௭',\n 8: '௮',\n 9: '௯',\n 0: '௦',\n },\n numberMap = {\n '௧': '1',\n '௨': '2',\n '௩': '3',\n '௪': '4',\n '௫': '5',\n '௬': '6',\n '௭': '7',\n '௮': '8',\n '௯': '9',\n '௦': '0',\n };\n\n var ta = moment.defineLocale('ta', {\n months: 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split(\n '_'\n ),\n monthsShort:\n 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split(\n '_'\n ),\n weekdays:\n 'ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை'.split(\n '_'\n ),\n weekdaysShort: 'ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி'.split(\n '_'\n ),\n weekdaysMin: 'ஞா_தி_செ_பு_வி_வெ_ச'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, HH:mm',\n LLLL: 'dddd, D MMMM YYYY, HH:mm',\n },\n calendar: {\n sameDay: '[இன்று] LT',\n nextDay: '[நாளை] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[நேற்று] LT',\n lastWeek: '[கடந்த வாரம்] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s இல்',\n past: '%s முன்',\n s: 'ஒரு சில விநாடிகள்',\n ss: '%d விநாடிகள்',\n m: 'ஒரு நிமிடம்',\n mm: '%d நிமிடங்கள்',\n h: 'ஒரு மணி நேரம்',\n hh: '%d மணி நேரம்',\n d: 'ஒரு நாள்',\n dd: '%d நாட்கள்',\n M: 'ஒரு மாதம்',\n MM: '%d மாதங்கள்',\n y: 'ஒரு வருடம்',\n yy: '%d ஆண்டுகள்',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}வது/,\n ordinal: function (number) {\n return number + 'வது';\n },\n preparse: function (string) {\n return string.replace(/[௧௨௩௪௫௬௭௮௯௦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // refer http://ta.wikipedia.org/s/1er1\n meridiemParse: /யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,\n meridiem: function (hour, minute, isLower) {\n if (hour < 2) {\n return ' யாமம்';\n } else if (hour < 6) {\n return ' வைகறை'; // வைகறை\n } else if (hour < 10) {\n return ' காலை'; // காலை\n } else if (hour < 14) {\n return ' நண்பகல்'; // நண்பகல்\n } else if (hour < 18) {\n return ' எற்பாடு'; // எற்பாடு\n } else if (hour < 22) {\n return ' மாலை'; // மாலை\n } else {\n return ' யாமம்';\n }\n },\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'யாமம்') {\n return hour < 2 ? hour : hour + 12;\n } else if (meridiem === 'வைகறை' || meridiem === 'காலை') {\n return hour;\n } else if (meridiem === 'நண்பகல்') {\n return hour >= 10 ? hour : hour + 12;\n } else {\n return hour + 12;\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return ta;\n\n})));\n","//! moment.js locale configuration\n//! locale : Telugu [te]\n//! author : Krishna Chaitanya Thota : https://github.com/kcthota\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var te = moment.defineLocale('te', {\n months: 'జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జులై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్'.split(\n '_'\n ),\n monthsShort:\n 'జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జులై_ఆగ._సెప్._అక్టో._నవ._డిసె.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం'.split(\n '_'\n ),\n weekdaysShort: 'ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని'.split('_'),\n weekdaysMin: 'ఆ_సో_మం_బు_గు_శు_శ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm',\n LTS: 'A h:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm',\n LLLL: 'dddd, D MMMM YYYY, A h:mm',\n },\n calendar: {\n sameDay: '[నేడు] LT',\n nextDay: '[రేపు] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[నిన్న] LT',\n lastWeek: '[గత] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s లో',\n past: '%s క్రితం',\n s: 'కొన్ని క్షణాలు',\n ss: '%d సెకన్లు',\n m: 'ఒక నిమిషం',\n mm: '%d నిమిషాలు',\n h: 'ఒక గంట',\n hh: '%d గంటలు',\n d: 'ఒక రోజు',\n dd: '%d రోజులు',\n M: 'ఒక నెల',\n MM: '%d నెలలు',\n y: 'ఒక సంవత్సరం',\n yy: '%d సంవత్సరాలు',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}వ/,\n ordinal: '%dవ',\n meridiemParse: /రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'రాత్రి') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ఉదయం') {\n return hour;\n } else if (meridiem === 'మధ్యాహ్నం') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'సాయంత్రం') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'రాత్రి';\n } else if (hour < 10) {\n return 'ఉదయం';\n } else if (hour < 17) {\n return 'మధ్యాహ్నం';\n } else if (hour < 20) {\n return 'సాయంత్రం';\n } else {\n return 'రాత్రి';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return te;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tetun Dili (East Timor) [tet]\n//! author : Joshua Brooks : https://github.com/joshbrooks\n//! author : Onorio De J. Afonso : https://github.com/marobo\n//! author : Sonia Simoes : https://github.com/soniasimoes\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var tet = moment.defineLocale('tet', {\n months: 'Janeiru_Fevereiru_Marsu_Abril_Maiu_Juñu_Jullu_Agustu_Setembru_Outubru_Novembru_Dezembru'.split(\n '_'\n ),\n monthsShort: 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'),\n weekdays: 'Domingu_Segunda_Tersa_Kuarta_Kinta_Sesta_Sabadu'.split('_'),\n weekdaysShort: 'Dom_Seg_Ters_Kua_Kint_Sest_Sab'.split('_'),\n weekdaysMin: 'Do_Seg_Te_Ku_Ki_Ses_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Ohin iha] LT',\n nextDay: '[Aban iha] LT',\n nextWeek: 'dddd [iha] LT',\n lastDay: '[Horiseik iha] LT',\n lastWeek: 'dddd [semana kotuk] [iha] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'iha %s',\n past: '%s liuba',\n s: 'segundu balun',\n ss: 'segundu %d',\n m: 'minutu ida',\n mm: 'minutu %d',\n h: 'oras ida',\n hh: 'oras %d',\n d: 'loron ida',\n dd: 'loron %d',\n M: 'fulan ida',\n MM: 'fulan %d',\n y: 'tinan ida',\n yy: 'tinan %d',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return tet;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tajik [tg]\n//! author : Orif N. Jr. : https://github.com/orif-jr\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 0: '-ум',\n 1: '-ум',\n 2: '-юм',\n 3: '-юм',\n 4: '-ум',\n 5: '-ум',\n 6: '-ум',\n 7: '-ум',\n 8: '-ум',\n 9: '-ум',\n 10: '-ум',\n 12: '-ум',\n 13: '-ум',\n 20: '-ум',\n 30: '-юм',\n 40: '-ум',\n 50: '-ум',\n 60: '-ум',\n 70: '-ум',\n 80: '-ум',\n 90: '-ум',\n 100: '-ум',\n };\n\n var tg = moment.defineLocale('tg', {\n months: {\n format: 'январи_феврали_марти_апрели_майи_июни_июли_августи_сентябри_октябри_ноябри_декабри'.split(\n '_'\n ),\n standalone:\n 'январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр'.split(\n '_'\n ),\n },\n monthsShort: 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'),\n weekdays: 'якшанбе_душанбе_сешанбе_чоршанбе_панҷшанбе_ҷумъа_шанбе'.split(\n '_'\n ),\n weekdaysShort: 'яшб_дшб_сшб_чшб_пшб_ҷум_шнб'.split('_'),\n weekdaysMin: 'яш_дш_сш_чш_пш_ҷм_шб'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Имрӯз соати] LT',\n nextDay: '[Фардо соати] LT',\n lastDay: '[Дирӯз соати] LT',\n nextWeek: 'dddd[и] [ҳафтаи оянда соати] LT',\n lastWeek: 'dddd[и] [ҳафтаи гузашта соати] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'баъди %s',\n past: '%s пеш',\n s: 'якчанд сония',\n m: 'як дақиқа',\n mm: '%d дақиқа',\n h: 'як соат',\n hh: '%d соат',\n d: 'як рӯз',\n dd: '%d рӯз',\n M: 'як моҳ',\n MM: '%d моҳ',\n y: 'як сол',\n yy: '%d сол',\n },\n meridiemParse: /шаб|субҳ|рӯз|бегоҳ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'шаб') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'субҳ') {\n return hour;\n } else if (meridiem === 'рӯз') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'бегоҳ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'шаб';\n } else if (hour < 11) {\n return 'субҳ';\n } else if (hour < 16) {\n return 'рӯз';\n } else if (hour < 19) {\n return 'бегоҳ';\n } else {\n return 'шаб';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ум|юм)/,\n ordinal: function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 1th is the first week of the year.\n },\n });\n\n return tg;\n\n})));\n","//! moment.js locale configuration\n//! locale : Thai [th]\n//! author : Kridsada Thanabulpong : https://github.com/sirn\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var th = moment.defineLocale('th', {\n months: 'มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม'.split(\n '_'\n ),\n monthsShort:\n 'ม.ค._ก.พ._มี.ค._เม.ย._พ.ค._มิ.ย._ก.ค._ส.ค._ก.ย._ต.ค._พ.ย._ธ.ค.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์'.split('_'),\n weekdaysShort: 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์'.split('_'), // yes, three characters difference\n weekdaysMin: 'อา._จ._อ._พ._พฤ._ศ._ส.'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY เวลา H:mm',\n LLLL: 'วันddddที่ D MMMM YYYY เวลา H:mm',\n },\n meridiemParse: /ก่อนเที่ยง|หลังเที่ยง/,\n isPM: function (input) {\n return input === 'หลังเที่ยง';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ก่อนเที่ยง';\n } else {\n return 'หลังเที่ยง';\n }\n },\n calendar: {\n sameDay: '[วันนี้ เวลา] LT',\n nextDay: '[พรุ่งนี้ เวลา] LT',\n nextWeek: 'dddd[หน้า เวลา] LT',\n lastDay: '[เมื่อวานนี้ เวลา] LT',\n lastWeek: '[วัน]dddd[ที่แล้ว เวลา] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'อีก %s',\n past: '%sที่แล้ว',\n s: 'ไม่กี่วินาที',\n ss: '%d วินาที',\n m: '1 นาที',\n mm: '%d นาที',\n h: '1 ชั่วโมง',\n hh: '%d ชั่วโมง',\n d: '1 วัน',\n dd: '%d วัน',\n w: '1 สัปดาห์',\n ww: '%d สัปดาห์',\n M: '1 เดือน',\n MM: '%d เดือน',\n y: '1 ปี',\n yy: '%d ปี',\n },\n });\n\n return th;\n\n})));\n","//! moment.js locale configuration\n//! locale : Turkmen [tk]\n//! author : Atamyrat Abdyrahmanov : https://github.com/atamyratabdy\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 1: \"'inji\",\n 5: \"'inji\",\n 8: \"'inji\",\n 70: \"'inji\",\n 80: \"'inji\",\n 2: \"'nji\",\n 7: \"'nji\",\n 20: \"'nji\",\n 50: \"'nji\",\n 3: \"'ünji\",\n 4: \"'ünji\",\n 100: \"'ünji\",\n 6: \"'njy\",\n 9: \"'unjy\",\n 10: \"'unjy\",\n 30: \"'unjy\",\n 60: \"'ynjy\",\n 90: \"'ynjy\",\n };\n\n var tk = moment.defineLocale('tk', {\n months: 'Ýanwar_Fewral_Mart_Aprel_Maý_Iýun_Iýul_Awgust_Sentýabr_Oktýabr_Noýabr_Dekabr'.split(\n '_'\n ),\n monthsShort: 'Ýan_Few_Mar_Apr_Maý_Iýn_Iýl_Awg_Sen_Okt_Noý_Dek'.split('_'),\n weekdays: 'Ýekşenbe_Duşenbe_Sişenbe_Çarşenbe_Penşenbe_Anna_Şenbe'.split(\n '_'\n ),\n weekdaysShort: 'Ýek_Duş_Siş_Çar_Pen_Ann_Şen'.split('_'),\n weekdaysMin: 'Ýk_Dş_Sş_Çr_Pn_An_Şn'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[bugün sagat] LT',\n nextDay: '[ertir sagat] LT',\n nextWeek: '[indiki] dddd [sagat] LT',\n lastDay: '[düýn] LT',\n lastWeek: '[geçen] dddd [sagat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s soň',\n past: '%s öň',\n s: 'birnäçe sekunt',\n m: 'bir minut',\n mm: '%d minut',\n h: 'bir sagat',\n hh: '%d sagat',\n d: 'bir gün',\n dd: '%d gün',\n M: 'bir aý',\n MM: '%d aý',\n y: 'bir ýyl',\n yy: '%d ýyl',\n },\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'Do':\n case 'DD':\n return number;\n default:\n if (number === 0) {\n // special case for zero\n return number + \"'unjy\";\n }\n var a = number % 10,\n b = (number % 100) - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return tk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tagalog (Philippines) [tl-ph]\n//! author : Dan Hagman : https://github.com/hagmandan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var tlPh = moment.defineLocale('tl-ph', {\n months: 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split(\n '_'\n ),\n monthsShort: 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'),\n weekdays: 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split(\n '_'\n ),\n weekdaysShort: 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'),\n weekdaysMin: 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'MM/D/YYYY',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY HH:mm',\n LLLL: 'dddd, MMMM DD, YYYY HH:mm',\n },\n calendar: {\n sameDay: 'LT [ngayong araw]',\n nextDay: '[Bukas ng] LT',\n nextWeek: 'LT [sa susunod na] dddd',\n lastDay: 'LT [kahapon]',\n lastWeek: 'LT [noong nakaraang] dddd',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'sa loob ng %s',\n past: '%s ang nakalipas',\n s: 'ilang segundo',\n ss: '%d segundo',\n m: 'isang minuto',\n mm: '%d minuto',\n h: 'isang oras',\n hh: '%d oras',\n d: 'isang araw',\n dd: '%d araw',\n M: 'isang buwan',\n MM: '%d buwan',\n y: 'isang taon',\n yy: '%d taon',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal: function (number) {\n return number;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return tlPh;\n\n})));\n","//! moment.js locale configuration\n//! locale : Klingon [tlh]\n//! author : Dominika Kruk : https://github.com/amaranthrose\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var numbersNouns = 'pagh_wa’_cha’_wej_loS_vagh_jav_Soch_chorgh_Hut'.split('_');\n\n function translateFuture(output) {\n var time = output;\n time =\n output.indexOf('jaj') !== -1\n ? time.slice(0, -3) + 'leS'\n : output.indexOf('jar') !== -1\n ? time.slice(0, -3) + 'waQ'\n : output.indexOf('DIS') !== -1\n ? time.slice(0, -3) + 'nem'\n : time + ' pIq';\n return time;\n }\n\n function translatePast(output) {\n var time = output;\n time =\n output.indexOf('jaj') !== -1\n ? time.slice(0, -3) + 'Hu’'\n : output.indexOf('jar') !== -1\n ? time.slice(0, -3) + 'wen'\n : output.indexOf('DIS') !== -1\n ? time.slice(0, -3) + 'ben'\n : time + ' ret';\n return time;\n }\n\n function translate(number, withoutSuffix, string, isFuture) {\n var numberNoun = numberAsNoun(number);\n switch (string) {\n case 'ss':\n return numberNoun + ' lup';\n case 'mm':\n return numberNoun + ' tup';\n case 'hh':\n return numberNoun + ' rep';\n case 'dd':\n return numberNoun + ' jaj';\n case 'MM':\n return numberNoun + ' jar';\n case 'yy':\n return numberNoun + ' DIS';\n }\n }\n\n function numberAsNoun(number) {\n var hundred = Math.floor((number % 1000) / 100),\n ten = Math.floor((number % 100) / 10),\n one = number % 10,\n word = '';\n if (hundred > 0) {\n word += numbersNouns[hundred] + 'vatlh';\n }\n if (ten > 0) {\n word += (word !== '' ? ' ' : '') + numbersNouns[ten] + 'maH';\n }\n if (one > 0) {\n word += (word !== '' ? ' ' : '') + numbersNouns[one];\n }\n return word === '' ? 'pagh' : word;\n }\n\n var tlh = moment.defineLocale('tlh', {\n months: 'tera’ jar wa’_tera’ jar cha’_tera’ jar wej_tera’ jar loS_tera’ jar vagh_tera’ jar jav_tera’ jar Soch_tera’ jar chorgh_tera’ jar Hut_tera’ jar wa’maH_tera’ jar wa’maH wa’_tera’ jar wa’maH cha’'.split(\n '_'\n ),\n monthsShort:\n 'jar wa’_jar cha’_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa’maH_jar wa’maH wa’_jar wa’maH cha’'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split(\n '_'\n ),\n weekdaysShort:\n 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'),\n weekdaysMin:\n 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[DaHjaj] LT',\n nextDay: '[wa’leS] LT',\n nextWeek: 'LLL',\n lastDay: '[wa’Hu’] LT',\n lastWeek: 'LLL',\n sameElse: 'L',\n },\n relativeTime: {\n future: translateFuture,\n past: translatePast,\n s: 'puS lup',\n ss: translate,\n m: 'wa’ tup',\n mm: translate,\n h: 'wa’ rep',\n hh: translate,\n d: 'wa’ jaj',\n dd: translate,\n M: 'wa’ jar',\n MM: translate,\n y: 'wa’ DIS',\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return tlh;\n\n})));\n","//! moment.js locale configuration\n//! locale : Turkish [tr]\n//! authors : Erhan Gundogan : https://github.com/erhangundogan,\n//! Burak Yiğit Kaya: https://github.com/BYK\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 1: \"'inci\",\n 5: \"'inci\",\n 8: \"'inci\",\n 70: \"'inci\",\n 80: \"'inci\",\n 2: \"'nci\",\n 7: \"'nci\",\n 20: \"'nci\",\n 50: \"'nci\",\n 3: \"'üncü\",\n 4: \"'üncü\",\n 100: \"'üncü\",\n 6: \"'ncı\",\n 9: \"'uncu\",\n 10: \"'uncu\",\n 30: \"'uncu\",\n 60: \"'ıncı\",\n 90: \"'ıncı\",\n };\n\n var tr = moment.defineLocale('tr', {\n months: 'Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık'.split(\n '_'\n ),\n monthsShort: 'Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara'.split('_'),\n weekdays: 'Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi'.split(\n '_'\n ),\n weekdaysShort: 'Paz_Pzt_Sal_Çar_Per_Cum_Cmt'.split('_'),\n weekdaysMin: 'Pz_Pt_Sa_Ça_Pe_Cu_Ct'.split('_'),\n meridiem: function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower ? 'öö' : 'ÖÖ';\n } else {\n return isLower ? 'ös' : 'ÖS';\n }\n },\n meridiemParse: /öö|ÖÖ|ös|ÖS/,\n isPM: function (input) {\n return input === 'ös' || input === 'ÖS';\n },\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[bugün saat] LT',\n nextDay: '[yarın saat] LT',\n nextWeek: '[gelecek] dddd [saat] LT',\n lastDay: '[dün] LT',\n lastWeek: '[geçen] dddd [saat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s sonra',\n past: '%s önce',\n s: 'birkaç saniye',\n ss: '%d saniye',\n m: 'bir dakika',\n mm: '%d dakika',\n h: 'bir saat',\n hh: '%d saat',\n d: 'bir gün',\n dd: '%d gün',\n w: 'bir hafta',\n ww: '%d hafta',\n M: 'bir ay',\n MM: '%d ay',\n y: 'bir yıl',\n yy: '%d yıl',\n },\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'Do':\n case 'DD':\n return number;\n default:\n if (number === 0) {\n // special case for zero\n return number + \"'ıncı\";\n }\n var a = number % 10,\n b = (number % 100) - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return tr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Talossan [tzl]\n//! author : Robin van der Vliet : https://github.com/robin0van0der0v\n//! author : Iustì Canun\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n // After the year there should be a slash and the amount of years since December 26, 1979 in Roman numerals.\n // This is currently too difficult (maybe even impossible) to add.\n var tzl = moment.defineLocale('tzl', {\n months: 'Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar'.split(\n '_'\n ),\n monthsShort: 'Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec'.split('_'),\n weekdays: 'Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi'.split('_'),\n weekdaysShort: 'Súl_Lún_Mai_Már_Xhú_Vié_Sát'.split('_'),\n weekdaysMin: 'Sú_Lú_Ma_Má_Xh_Vi_Sá'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM [dallas] YYYY',\n LLL: 'D. MMMM [dallas] YYYY HH.mm',\n LLLL: 'dddd, [li] D. MMMM [dallas] YYYY HH.mm',\n },\n meridiemParse: /d\\'o|d\\'a/i,\n isPM: function (input) {\n return \"d'o\" === input.toLowerCase();\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? \"d'o\" : \"D'O\";\n } else {\n return isLower ? \"d'a\" : \"D'A\";\n }\n },\n calendar: {\n sameDay: '[oxhi à] LT',\n nextDay: '[demà à] LT',\n nextWeek: 'dddd [à] LT',\n lastDay: '[ieiri à] LT',\n lastWeek: '[sür el] dddd [lasteu à] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'osprei %s',\n past: 'ja%s',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['viensas secunds', \"'iensas secunds\"],\n ss: [number + ' secunds', '' + number + ' secunds'],\n m: [\"'n míut\", \"'iens míut\"],\n mm: [number + ' míuts', '' + number + ' míuts'],\n h: [\"'n þora\", \"'iensa þora\"],\n hh: [number + ' þoras', '' + number + ' þoras'],\n d: [\"'n ziua\", \"'iensa ziua\"],\n dd: [number + ' ziuas', '' + number + ' ziuas'],\n M: [\"'n mes\", \"'iens mes\"],\n MM: [number + ' mesen', '' + number + ' mesen'],\n y: [\"'n ar\", \"'iens ar\"],\n yy: [number + ' ars', '' + number + ' ars'],\n };\n return isFuture\n ? format[key][0]\n : withoutSuffix\n ? format[key][0]\n : format[key][1];\n }\n\n return tzl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Central Atlas Tamazight Latin [tzm-latn]\n//! author : Abdel Said : https://github.com/abdelsaid\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var tzmLatn = moment.defineLocale('tzm-latn', {\n months: 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split(\n '_'\n ),\n monthsShort:\n 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split(\n '_'\n ),\n weekdays: 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),\n weekdaysShort: 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),\n weekdaysMin: 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[asdkh g] LT',\n nextDay: '[aska g] LT',\n nextWeek: 'dddd [g] LT',\n lastDay: '[assant g] LT',\n lastWeek: 'dddd [g] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dadkh s yan %s',\n past: 'yan %s',\n s: 'imik',\n ss: '%d imik',\n m: 'minuḍ',\n mm: '%d minuḍ',\n h: 'saɛa',\n hh: '%d tassaɛin',\n d: 'ass',\n dd: '%d ossan',\n M: 'ayowr',\n MM: '%d iyyirn',\n y: 'asgas',\n yy: '%d isgasn',\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return tzmLatn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Central Atlas Tamazight [tzm]\n//! author : Abdel Said : https://github.com/abdelsaid\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var tzm = moment.defineLocale('tzm', {\n months: 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split(\n '_'\n ),\n monthsShort:\n 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split(\n '_'\n ),\n weekdays: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n weekdaysShort: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n weekdaysMin: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[ⴰⵙⴷⵅ ⴴ] LT',\n nextDay: '[ⴰⵙⴽⴰ ⴴ] LT',\n nextWeek: 'dddd [ⴴ] LT',\n lastDay: '[ⴰⵚⴰⵏⵜ ⴴ] LT',\n lastWeek: 'dddd [ⴴ] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s',\n past: 'ⵢⴰⵏ %s',\n s: 'ⵉⵎⵉⴽ',\n ss: '%d ⵉⵎⵉⴽ',\n m: 'ⵎⵉⵏⵓⴺ',\n mm: '%d ⵎⵉⵏⵓⴺ',\n h: 'ⵙⴰⵄⴰ',\n hh: '%d ⵜⴰⵙⵙⴰⵄⵉⵏ',\n d: 'ⴰⵙⵙ',\n dd: '%d oⵙⵙⴰⵏ',\n M: 'ⴰⵢoⵓⵔ',\n MM: '%d ⵉⵢⵢⵉⵔⵏ',\n y: 'ⴰⵙⴳⴰⵙ',\n yy: '%d ⵉⵙⴳⴰⵙⵏ',\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return tzm;\n\n})));\n","//! moment.js locale configuration\n//! locale : Uyghur (China) [ug-cn]\n//! author: boyaq : https://github.com/boyaq\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ugCn = moment.defineLocale('ug-cn', {\n months: 'يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر'.split(\n '_'\n ),\n monthsShort:\n 'يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر'.split(\n '_'\n ),\n weekdays: 'يەكشەنبە_دۈشەنبە_سەيشەنبە_چارشەنبە_پەيشەنبە_جۈمە_شەنبە'.split(\n '_'\n ),\n weekdaysShort: 'يە_دۈ_سە_چا_پە_جۈ_شە'.split('_'),\n weekdaysMin: 'يە_دۈ_سە_چا_پە_جۈ_شە'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY-يىلىM-ئاينىڭD-كۈنى',\n LLL: 'YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm',\n LLLL: 'dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm',\n },\n meridiemParse: /يېرىم كېچە|سەھەر|چۈشتىن بۇرۇن|چۈش|چۈشتىن كېيىن|كەچ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n meridiem === 'يېرىم كېچە' ||\n meridiem === 'سەھەر' ||\n meridiem === 'چۈشتىن بۇرۇن'\n ) {\n return hour;\n } else if (meridiem === 'چۈشتىن كېيىن' || meridiem === 'كەچ') {\n return hour + 12;\n } else {\n return hour >= 11 ? hour : hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return 'يېرىم كېچە';\n } else if (hm < 900) {\n return 'سەھەر';\n } else if (hm < 1130) {\n return 'چۈشتىن بۇرۇن';\n } else if (hm < 1230) {\n return 'چۈش';\n } else if (hm < 1800) {\n return 'چۈشتىن كېيىن';\n } else {\n return 'كەچ';\n }\n },\n calendar: {\n sameDay: '[بۈگۈن سائەت] LT',\n nextDay: '[ئەتە سائەت] LT',\n nextWeek: '[كېلەركى] dddd [سائەت] LT',\n lastDay: '[تۆنۈگۈن] LT',\n lastWeek: '[ئالدىنقى] dddd [سائەت] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s كېيىن',\n past: '%s بۇرۇن',\n s: 'نەچچە سېكونت',\n ss: '%d سېكونت',\n m: 'بىر مىنۇت',\n mm: '%d مىنۇت',\n h: 'بىر سائەت',\n hh: '%d سائەت',\n d: 'بىر كۈن',\n dd: '%d كۈن',\n M: 'بىر ئاي',\n MM: '%d ئاي',\n y: 'بىر يىل',\n yy: '%d يىل',\n },\n\n dayOfMonthOrdinalParse: /\\d{1,2}(-كۈنى|-ئاي|-ھەپتە)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '-كۈنى';\n case 'w':\n case 'W':\n return number + '-ھەپتە';\n default:\n return number;\n }\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 1st is the first week of the year.\n },\n });\n\n return ugCn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Ukrainian [uk]\n//! author : zemlanin : https://github.com/zemlanin\n//! Author : Menelion Elensúle : https://github.com/Oire\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11\n ? forms[0]\n : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20)\n ? forms[1]\n : forms[2];\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: withoutSuffix ? 'секунда_секунди_секунд' : 'секунду_секунди_секунд',\n mm: withoutSuffix ? 'хвилина_хвилини_хвилин' : 'хвилину_хвилини_хвилин',\n hh: withoutSuffix ? 'година_години_годин' : 'годину_години_годин',\n dd: 'день_дні_днів',\n MM: 'місяць_місяці_місяців',\n yy: 'рік_роки_років',\n };\n if (key === 'm') {\n return withoutSuffix ? 'хвилина' : 'хвилину';\n } else if (key === 'h') {\n return withoutSuffix ? 'година' : 'годину';\n } else {\n return number + ' ' + plural(format[key], +number);\n }\n }\n function weekdaysCaseReplace(m, format) {\n var weekdays = {\n nominative:\n 'неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота'.split(\n '_'\n ),\n accusative:\n 'неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу'.split(\n '_'\n ),\n genitive:\n 'неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи'.split(\n '_'\n ),\n },\n nounCase;\n\n if (m === true) {\n return weekdays['nominative']\n .slice(1, 7)\n .concat(weekdays['nominative'].slice(0, 1));\n }\n if (!m) {\n return weekdays['nominative'];\n }\n\n nounCase = /(\\[[ВвУу]\\]) ?dddd/.test(format)\n ? 'accusative'\n : /\\[?(?:минулої|наступної)? ?\\] ?dddd/.test(format)\n ? 'genitive'\n : 'nominative';\n return weekdays[nounCase][m.day()];\n }\n function processHoursFunction(str) {\n return function () {\n return str + 'о' + (this.hours() === 11 ? 'б' : '') + '] LT';\n };\n }\n\n var uk = moment.defineLocale('uk', {\n months: {\n format: 'січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня'.split(\n '_'\n ),\n standalone:\n 'січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень'.split(\n '_'\n ),\n },\n monthsShort: 'січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд'.split(\n '_'\n ),\n weekdays: weekdaysCaseReplace,\n weekdaysShort: 'нд_пн_вт_ср_чт_пт_сб'.split('_'),\n weekdaysMin: 'нд_пн_вт_ср_чт_пт_сб'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY р.',\n LLL: 'D MMMM YYYY р., HH:mm',\n LLLL: 'dddd, D MMMM YYYY р., HH:mm',\n },\n calendar: {\n sameDay: processHoursFunction('[Сьогодні '),\n nextDay: processHoursFunction('[Завтра '),\n lastDay: processHoursFunction('[Вчора '),\n nextWeek: processHoursFunction('[У] dddd ['),\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 5:\n case 6:\n return processHoursFunction('[Минулої] dddd [').call(this);\n case 1:\n case 2:\n case 4:\n return processHoursFunction('[Минулого] dddd [').call(this);\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'за %s',\n past: '%s тому',\n s: 'декілька секунд',\n ss: relativeTimeWithPlural,\n m: relativeTimeWithPlural,\n mm: relativeTimeWithPlural,\n h: 'годину',\n hh: relativeTimeWithPlural,\n d: 'день',\n dd: relativeTimeWithPlural,\n M: 'місяць',\n MM: relativeTimeWithPlural,\n y: 'рік',\n yy: relativeTimeWithPlural,\n },\n // M. E.: those two are virtually unused but a user might want to implement them for his/her website for some reason\n meridiemParse: /ночі|ранку|дня|вечора/,\n isPM: function (input) {\n return /^(дня|вечора)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночі';\n } else if (hour < 12) {\n return 'ранку';\n } else if (hour < 17) {\n return 'дня';\n } else {\n return 'вечора';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(й|го)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n case 'w':\n case 'W':\n return number + '-й';\n case 'D':\n return number + '-го';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return uk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Urdu [ur]\n//! author : Sawood Alam : https://github.com/ibnesayeed\n//! author : Zack : https://github.com/ZackVision\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'جنوری',\n 'فروری',\n 'مارچ',\n 'اپریل',\n 'مئی',\n 'جون',\n 'جولائی',\n 'اگست',\n 'ستمبر',\n 'اکتوبر',\n 'نومبر',\n 'دسمبر',\n ],\n days = ['اتوار', 'پیر', 'منگل', 'بدھ', 'جمعرات', 'جمعہ', 'ہفتہ'];\n\n var ur = moment.defineLocale('ur', {\n months: months,\n monthsShort: months,\n weekdays: days,\n weekdaysShort: days,\n weekdaysMin: days,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd، D MMMM YYYY HH:mm',\n },\n meridiemParse: /صبح|شام/,\n isPM: function (input) {\n return 'شام' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'صبح';\n }\n return 'شام';\n },\n calendar: {\n sameDay: '[آج بوقت] LT',\n nextDay: '[کل بوقت] LT',\n nextWeek: 'dddd [بوقت] LT',\n lastDay: '[گذشتہ روز بوقت] LT',\n lastWeek: '[گذشتہ] dddd [بوقت] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s بعد',\n past: '%s قبل',\n s: 'چند سیکنڈ',\n ss: '%d سیکنڈ',\n m: 'ایک منٹ',\n mm: '%d منٹ',\n h: 'ایک گھنٹہ',\n hh: '%d گھنٹے',\n d: 'ایک دن',\n dd: '%d دن',\n M: 'ایک ماہ',\n MM: '%d ماہ',\n y: 'ایک سال',\n yy: '%d سال',\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ur;\n\n})));\n","//! moment.js locale configuration\n//! locale : Uzbek Latin [uz-latn]\n//! author : Rasulbek Mirzayev : github.com/Rasulbeeek\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var uzLatn = moment.defineLocale('uz-latn', {\n months: 'Yanvar_Fevral_Mart_Aprel_May_Iyun_Iyul_Avgust_Sentabr_Oktabr_Noyabr_Dekabr'.split(\n '_'\n ),\n monthsShort: 'Yan_Fev_Mar_Apr_May_Iyun_Iyul_Avg_Sen_Okt_Noy_Dek'.split('_'),\n weekdays:\n 'Yakshanba_Dushanba_Seshanba_Chorshanba_Payshanba_Juma_Shanba'.split(\n '_'\n ),\n weekdaysShort: 'Yak_Dush_Sesh_Chor_Pay_Jum_Shan'.split('_'),\n weekdaysMin: 'Ya_Du_Se_Cho_Pa_Ju_Sha'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'D MMMM YYYY, dddd HH:mm',\n },\n calendar: {\n sameDay: '[Bugun soat] LT [da]',\n nextDay: '[Ertaga] LT [da]',\n nextWeek: 'dddd [kuni soat] LT [da]',\n lastDay: '[Kecha soat] LT [da]',\n lastWeek: \"[O'tgan] dddd [kuni soat] LT [da]\",\n sameElse: 'L',\n },\n relativeTime: {\n future: 'Yaqin %s ichida',\n past: 'Bir necha %s oldin',\n s: 'soniya',\n ss: '%d soniya',\n m: 'bir daqiqa',\n mm: '%d daqiqa',\n h: 'bir soat',\n hh: '%d soat',\n d: 'bir kun',\n dd: '%d kun',\n M: 'bir oy',\n MM: '%d oy',\n y: 'bir yil',\n yy: '%d yil',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return uzLatn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Uzbek [uz]\n//! author : Sardor Muminov : https://github.com/muminoff\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var uz = moment.defineLocale('uz', {\n months: 'январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр'.split(\n '_'\n ),\n monthsShort: 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'),\n weekdays: 'Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба'.split('_'),\n weekdaysShort: 'Якш_Душ_Сеш_Чор_Пай_Жум_Шан'.split('_'),\n weekdaysMin: 'Як_Ду_Се_Чо_Па_Жу_Ша'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'D MMMM YYYY, dddd HH:mm',\n },\n calendar: {\n sameDay: '[Бугун соат] LT [да]',\n nextDay: '[Эртага] LT [да]',\n nextWeek: 'dddd [куни соат] LT [да]',\n lastDay: '[Кеча соат] LT [да]',\n lastWeek: '[Утган] dddd [куни соат] LT [да]',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'Якин %s ичида',\n past: 'Бир неча %s олдин',\n s: 'фурсат',\n ss: '%d фурсат',\n m: 'бир дакика',\n mm: '%d дакика',\n h: 'бир соат',\n hh: '%d соат',\n d: 'бир кун',\n dd: '%d кун',\n M: 'бир ой',\n MM: '%d ой',\n y: 'бир йил',\n yy: '%d йил',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return uz;\n\n})));\n","//! moment.js locale configuration\n//! locale : Vietnamese [vi]\n//! author : Bang Nguyen : https://github.com/bangnk\n//! author : Chien Kira : https://github.com/chienkira\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var vi = moment.defineLocale('vi', {\n months: 'tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12'.split(\n '_'\n ),\n monthsShort:\n 'Thg 01_Thg 02_Thg 03_Thg 04_Thg 05_Thg 06_Thg 07_Thg 08_Thg 09_Thg 10_Thg 11_Thg 12'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy'.split(\n '_'\n ),\n weekdaysShort: 'CN_T2_T3_T4_T5_T6_T7'.split('_'),\n weekdaysMin: 'CN_T2_T3_T4_T5_T6_T7'.split('_'),\n weekdaysParseExact: true,\n meridiemParse: /sa|ch/i,\n isPM: function (input) {\n return /^ch$/i.test(input);\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower ? 'sa' : 'SA';\n } else {\n return isLower ? 'ch' : 'CH';\n }\n },\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM [năm] YYYY',\n LLL: 'D MMMM [năm] YYYY HH:mm',\n LLLL: 'dddd, D MMMM [năm] YYYY HH:mm',\n l: 'DD/M/YYYY',\n ll: 'D MMM YYYY',\n lll: 'D MMM YYYY HH:mm',\n llll: 'ddd, D MMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Hôm nay lúc] LT',\n nextDay: '[Ngày mai lúc] LT',\n nextWeek: 'dddd [tuần tới lúc] LT',\n lastDay: '[Hôm qua lúc] LT',\n lastWeek: 'dddd [tuần trước lúc] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s tới',\n past: '%s trước',\n s: 'vài giây',\n ss: '%d giây',\n m: 'một phút',\n mm: '%d phút',\n h: 'một giờ',\n hh: '%d giờ',\n d: 'một ngày',\n dd: '%d ngày',\n w: 'một tuần',\n ww: '%d tuần',\n M: 'một tháng',\n MM: '%d tháng',\n y: 'một năm',\n yy: '%d năm',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal: function (number) {\n return number;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return vi;\n\n})));\n","//! moment.js locale configuration\n//! locale : Pseudo [x-pseudo]\n//! author : Andrew Hood : https://github.com/andrewhood125\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var xPseudo = moment.defineLocale('x-pseudo', {\n months: 'J~áñúá~rý_F~ébrú~árý_~Márc~h_Áp~ríl_~Máý_~Júñé~_Júl~ý_Áú~gúst~_Sép~témb~ér_Ó~ctób~ér_Ñ~óvém~bér_~Décé~mbér'.split(\n '_'\n ),\n monthsShort:\n 'J~áñ_~Féb_~Már_~Ápr_~Máý_~Júñ_~Júl_~Áúg_~Sép_~Óct_~Ñóv_~Déc'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'S~úñdá~ý_Mó~ñdáý~_Túé~sdáý~_Wéd~ñésd~áý_T~húrs~dáý_~Fríd~áý_S~átúr~dáý'.split(\n '_'\n ),\n weekdaysShort: 'S~úñ_~Móñ_~Túé_~Wéd_~Thú_~Frí_~Sát'.split('_'),\n weekdaysMin: 'S~ú_Mó~_Tú_~Wé_T~h_Fr~_Sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[T~ódá~ý át] LT',\n nextDay: '[T~ómó~rró~w át] LT',\n nextWeek: 'dddd [át] LT',\n lastDay: '[Ý~ést~érdá~ý át] LT',\n lastWeek: '[L~ást] dddd [át] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'í~ñ %s',\n past: '%s á~gó',\n s: 'á ~féw ~sécó~ñds',\n ss: '%d s~écóñ~ds',\n m: 'á ~míñ~úté',\n mm: '%d m~íñú~tés',\n h: 'á~ñ hó~úr',\n hh: '%d h~óúrs',\n d: 'á ~dáý',\n dd: '%d d~áýs',\n M: 'á ~móñ~th',\n MM: '%d m~óñt~hs',\n y: 'á ~ýéár',\n yy: '%d ý~éárs',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return xPseudo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Yoruba Nigeria [yo]\n//! author : Atolagbe Abisoye : https://github.com/andela-batolagbe\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var yo = moment.defineLocale('yo', {\n months: 'Sẹ́rẹ́_Èrèlè_Ẹrẹ̀nà_Ìgbé_Èbibi_Òkùdu_Agẹmo_Ògún_Owewe_Ọ̀wàrà_Bélú_Ọ̀pẹ̀̀'.split(\n '_'\n ),\n monthsShort: 'Sẹ́r_Èrl_Ẹrn_Ìgb_Èbi_Òkù_Agẹ_Ògú_Owe_Ọ̀wà_Bél_Ọ̀pẹ̀̀'.split('_'),\n weekdays: 'Àìkú_Ajé_Ìsẹ́gun_Ọjọ́rú_Ọjọ́bọ_Ẹtì_Àbámẹ́ta'.split('_'),\n weekdaysShort: 'Àìk_Ajé_Ìsẹ́_Ọjr_Ọjb_Ẹtì_Àbá'.split('_'),\n weekdaysMin: 'Àì_Aj_Ìs_Ọr_Ọb_Ẹt_Àb'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Ònì ni] LT',\n nextDay: '[Ọ̀la ni] LT',\n nextWeek: \"dddd [Ọsẹ̀ tón'bọ] [ni] LT\",\n lastDay: '[Àna ni] LT',\n lastWeek: 'dddd [Ọsẹ̀ tólọ́] [ni] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ní %s',\n past: '%s kọjá',\n s: 'ìsẹjú aayá die',\n ss: 'aayá %d',\n m: 'ìsẹjú kan',\n mm: 'ìsẹjú %d',\n h: 'wákati kan',\n hh: 'wákati %d',\n d: 'ọjọ́ kan',\n dd: 'ọjọ́ %d',\n M: 'osù kan',\n MM: 'osù %d',\n y: 'ọdún kan',\n yy: 'ọdún %d',\n },\n dayOfMonthOrdinalParse: /ọjọ́\\s\\d{1,2}/,\n ordinal: 'ọjọ́ %d',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return yo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chinese (China) [zh-cn]\n//! author : suupic : https://github.com/suupic\n//! author : Zeno Zeng : https://github.com/zenozeng\n//! author : uu109 : https://github.com/uu109\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var zhCn = moment.defineLocale('zh-cn', {\n months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort: '周日_周一_周二_周三_周四_周五_周六'.split('_'),\n weekdaysMin: '日_一_二_三_四_五_六'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日Ah点mm分',\n LLLL: 'YYYY年M月D日ddddAh点mm分',\n l: 'YYYY/M/D',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n } else {\n // '中午'\n return hour >= 11 ? hour : hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上午';\n } else if (hm < 1230) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天]LT',\n nextDay: '[明天]LT',\n nextWeek: function (now) {\n if (now.week() !== this.week()) {\n return '[下]dddLT';\n } else {\n return '[本]dddLT';\n }\n },\n lastDay: '[昨天]LT',\n lastWeek: function (now) {\n if (this.week() !== now.week()) {\n return '[上]dddLT';\n } else {\n return '[本]dddLT';\n }\n },\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|周)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '周';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s后',\n past: '%s前',\n s: '几秒',\n ss: '%d 秒',\n m: '1 分钟',\n mm: '%d 分钟',\n h: '1 小时',\n hh: '%d 小时',\n d: '1 天',\n dd: '%d 天',\n w: '1 周',\n ww: '%d 周',\n M: '1 个月',\n MM: '%d 个月',\n y: '1 年',\n yy: '%d 年',\n },\n week: {\n // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return zhCn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chinese (Hong Kong) [zh-hk]\n//! author : Ben : https://github.com/ben-lin\n//! author : Chris Lam : https://github.com/hehachris\n//! author : Konstantin : https://github.com/skfd\n//! author : Anthony : https://github.com/anthonylau\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var zhHk = moment.defineLocale('zh-hk', {\n months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'),\n weekdaysMin: '日_一_二_三_四_五_六'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日 HH:mm',\n LLLL: 'YYYY年M月D日dddd HH:mm',\n l: 'YYYY/M/D',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '中午') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1200) {\n return '上午';\n } else if (hm === 1200) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天]LT',\n nextDay: '[明天]LT',\n nextWeek: '[下]ddddLT',\n lastDay: '[昨天]LT',\n lastWeek: '[上]ddddLT',\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|週)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '週';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s後',\n past: '%s前',\n s: '幾秒',\n ss: '%d 秒',\n m: '1 分鐘',\n mm: '%d 分鐘',\n h: '1 小時',\n hh: '%d 小時',\n d: '1 天',\n dd: '%d 天',\n M: '1 個月',\n MM: '%d 個月',\n y: '1 年',\n yy: '%d 年',\n },\n });\n\n return zhHk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chinese (Macau) [zh-mo]\n//! author : Ben : https://github.com/ben-lin\n//! author : Chris Lam : https://github.com/hehachris\n//! author : Tan Yuanhong : https://github.com/le0tan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var zhMo = moment.defineLocale('zh-mo', {\n months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'),\n weekdaysMin: '日_一_二_三_四_五_六'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日 HH:mm',\n LLLL: 'YYYY年M月D日dddd HH:mm',\n l: 'D/M/YYYY',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '中午') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上午';\n } else if (hm < 1230) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天] LT',\n nextDay: '[明天] LT',\n nextWeek: '[下]dddd LT',\n lastDay: '[昨天] LT',\n lastWeek: '[上]dddd LT',\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|週)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '週';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s內',\n past: '%s前',\n s: '幾秒',\n ss: '%d 秒',\n m: '1 分鐘',\n mm: '%d 分鐘',\n h: '1 小時',\n hh: '%d 小時',\n d: '1 天',\n dd: '%d 天',\n M: '1 個月',\n MM: '%d 個月',\n y: '1 年',\n yy: '%d 年',\n },\n });\n\n return zhMo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chinese (Taiwan) [zh-tw]\n//! author : Ben : https://github.com/ben-lin\n//! author : Chris Lam : https://github.com/hehachris\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var zhTw = moment.defineLocale('zh-tw', {\n months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'),\n weekdaysMin: '日_一_二_三_四_五_六'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日 HH:mm',\n LLLL: 'YYYY年M月D日dddd HH:mm',\n l: 'YYYY/M/D',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '中午') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上午';\n } else if (hm < 1230) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天] LT',\n nextDay: '[明天] LT',\n nextWeek: '[下]dddd LT',\n lastDay: '[昨天] LT',\n lastWeek: '[上]dddd LT',\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|週)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '週';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s後',\n past: '%s前',\n s: '幾秒',\n ss: '%d 秒',\n m: '1 分鐘',\n mm: '%d 分鐘',\n h: '1 小時',\n hh: '%d 小時',\n d: '1 天',\n dd: '%d 天',\n M: '1 個月',\n MM: '%d 個月',\n y: '1 年',\n yy: '%d 年',\n },\n });\n\n return zhTw;\n\n})));\n","var map = {\n\t\"./af\": 42786,\n\t\"./af.js\": 42786,\n\t\"./ar\": 30867,\n\t\"./ar-dz\": 14130,\n\t\"./ar-dz.js\": 14130,\n\t\"./ar-kw\": 96135,\n\t\"./ar-kw.js\": 96135,\n\t\"./ar-ly\": 56440,\n\t\"./ar-ly.js\": 56440,\n\t\"./ar-ma\": 47702,\n\t\"./ar-ma.js\": 47702,\n\t\"./ar-sa\": 16040,\n\t\"./ar-sa.js\": 16040,\n\t\"./ar-tn\": 37100,\n\t\"./ar-tn.js\": 37100,\n\t\"./ar.js\": 30867,\n\t\"./az\": 31083,\n\t\"./az.js\": 31083,\n\t\"./be\": 9808,\n\t\"./be.js\": 9808,\n\t\"./bg\": 68338,\n\t\"./bg.js\": 68338,\n\t\"./bm\": 67438,\n\t\"./bm.js\": 67438,\n\t\"./bn\": 8905,\n\t\"./bn-bd\": 76225,\n\t\"./bn-bd.js\": 76225,\n\t\"./bn.js\": 8905,\n\t\"./bo\": 11560,\n\t\"./bo.js\": 11560,\n\t\"./br\": 1278,\n\t\"./br.js\": 1278,\n\t\"./bs\": 80622,\n\t\"./bs.js\": 80622,\n\t\"./ca\": 2468,\n\t\"./ca.js\": 2468,\n\t\"./cs\": 5822,\n\t\"./cs.js\": 5822,\n\t\"./cv\": 50877,\n\t\"./cv.js\": 50877,\n\t\"./cy\": 47373,\n\t\"./cy.js\": 47373,\n\t\"./da\": 24780,\n\t\"./da.js\": 24780,\n\t\"./de\": 59740,\n\t\"./de-at\": 60217,\n\t\"./de-at.js\": 60217,\n\t\"./de-ch\": 60894,\n\t\"./de-ch.js\": 60894,\n\t\"./de.js\": 59740,\n\t\"./dv\": 5300,\n\t\"./dv.js\": 5300,\n\t\"./el\": 50837,\n\t\"./el.js\": 50837,\n\t\"./en-au\": 78348,\n\t\"./en-au.js\": 78348,\n\t\"./en-ca\": 77925,\n\t\"./en-ca.js\": 77925,\n\t\"./en-gb\": 22243,\n\t\"./en-gb.js\": 22243,\n\t\"./en-ie\": 46436,\n\t\"./en-ie.js\": 46436,\n\t\"./en-il\": 47207,\n\t\"./en-il.js\": 47207,\n\t\"./en-in\": 44175,\n\t\"./en-in.js\": 44175,\n\t\"./en-nz\": 76319,\n\t\"./en-nz.js\": 76319,\n\t\"./en-sg\": 31662,\n\t\"./en-sg.js\": 31662,\n\t\"./eo\": 92915,\n\t\"./eo.js\": 92915,\n\t\"./es\": 55655,\n\t\"./es-do\": 55251,\n\t\"./es-do.js\": 55251,\n\t\"./es-mx\": 96112,\n\t\"./es-mx.js\": 96112,\n\t\"./es-us\": 71146,\n\t\"./es-us.js\": 71146,\n\t\"./es.js\": 55655,\n\t\"./et\": 5603,\n\t\"./et.js\": 5603,\n\t\"./eu\": 77763,\n\t\"./eu.js\": 77763,\n\t\"./fa\": 76959,\n\t\"./fa.js\": 76959,\n\t\"./fi\": 11897,\n\t\"./fi.js\": 11897,\n\t\"./fil\": 42549,\n\t\"./fil.js\": 42549,\n\t\"./fo\": 94694,\n\t\"./fo.js\": 94694,\n\t\"./fr\": 94470,\n\t\"./fr-ca\": 63049,\n\t\"./fr-ca.js\": 63049,\n\t\"./fr-ch\": 52330,\n\t\"./fr-ch.js\": 52330,\n\t\"./fr.js\": 94470,\n\t\"./fy\": 5044,\n\t\"./fy.js\": 5044,\n\t\"./ga\": 29295,\n\t\"./ga.js\": 29295,\n\t\"./gd\": 2101,\n\t\"./gd.js\": 2101,\n\t\"./gl\": 38794,\n\t\"./gl.js\": 38794,\n\t\"./gom-deva\": 27884,\n\t\"./gom-deva.js\": 27884,\n\t\"./gom-latn\": 23168,\n\t\"./gom-latn.js\": 23168,\n\t\"./gu\": 95349,\n\t\"./gu.js\": 95349,\n\t\"./he\": 24206,\n\t\"./he.js\": 24206,\n\t\"./hi\": 30094,\n\t\"./hi.js\": 30094,\n\t\"./hr\": 30316,\n\t\"./hr.js\": 30316,\n\t\"./hu\": 22138,\n\t\"./hu.js\": 22138,\n\t\"./hy-am\": 11423,\n\t\"./hy-am.js\": 11423,\n\t\"./id\": 29218,\n\t\"./id.js\": 29218,\n\t\"./is\": 90135,\n\t\"./is.js\": 90135,\n\t\"./it\": 90626,\n\t\"./it-ch\": 10150,\n\t\"./it-ch.js\": 10150,\n\t\"./it.js\": 90626,\n\t\"./ja\": 39183,\n\t\"./ja.js\": 39183,\n\t\"./jv\": 24286,\n\t\"./jv.js\": 24286,\n\t\"./ka\": 12105,\n\t\"./ka.js\": 12105,\n\t\"./kk\": 47772,\n\t\"./kk.js\": 47772,\n\t\"./km\": 18758,\n\t\"./km.js\": 18758,\n\t\"./kn\": 79282,\n\t\"./kn.js\": 79282,\n\t\"./ko\": 33730,\n\t\"./ko.js\": 33730,\n\t\"./ku\": 1408,\n\t\"./ku.js\": 1408,\n\t\"./ky\": 33291,\n\t\"./ky.js\": 33291,\n\t\"./lb\": 36841,\n\t\"./lb.js\": 36841,\n\t\"./lo\": 55466,\n\t\"./lo.js\": 55466,\n\t\"./lt\": 57010,\n\t\"./lt.js\": 57010,\n\t\"./lv\": 37595,\n\t\"./lv.js\": 37595,\n\t\"./me\": 39861,\n\t\"./me.js\": 39861,\n\t\"./mi\": 35493,\n\t\"./mi.js\": 35493,\n\t\"./mk\": 95966,\n\t\"./mk.js\": 95966,\n\t\"./ml\": 87341,\n\t\"./ml.js\": 87341,\n\t\"./mn\": 5115,\n\t\"./mn.js\": 5115,\n\t\"./mr\": 10370,\n\t\"./mr.js\": 10370,\n\t\"./ms\": 9847,\n\t\"./ms-my\": 41237,\n\t\"./ms-my.js\": 41237,\n\t\"./ms.js\": 9847,\n\t\"./mt\": 72126,\n\t\"./mt.js\": 72126,\n\t\"./my\": 56165,\n\t\"./my.js\": 56165,\n\t\"./nb\": 64924,\n\t\"./nb.js\": 64924,\n\t\"./ne\": 16744,\n\t\"./ne.js\": 16744,\n\t\"./nl\": 93901,\n\t\"./nl-be\": 59814,\n\t\"./nl-be.js\": 59814,\n\t\"./nl.js\": 93901,\n\t\"./nn\": 83877,\n\t\"./nn.js\": 83877,\n\t\"./oc-lnc\": 92135,\n\t\"./oc-lnc.js\": 92135,\n\t\"./pa-in\": 15858,\n\t\"./pa-in.js\": 15858,\n\t\"./pl\": 64495,\n\t\"./pl.js\": 64495,\n\t\"./pt\": 89520,\n\t\"./pt-br\": 57971,\n\t\"./pt-br.js\": 57971,\n\t\"./pt.js\": 89520,\n\t\"./ro\": 96459,\n\t\"./ro.js\": 96459,\n\t\"./ru\": 21793,\n\t\"./ru.js\": 21793,\n\t\"./sd\": 40950,\n\t\"./sd.js\": 40950,\n\t\"./se\": 10490,\n\t\"./se.js\": 10490,\n\t\"./si\": 90124,\n\t\"./si.js\": 90124,\n\t\"./sk\": 64249,\n\t\"./sk.js\": 64249,\n\t\"./sl\": 14985,\n\t\"./sl.js\": 14985,\n\t\"./sq\": 51104,\n\t\"./sq.js\": 51104,\n\t\"./sr\": 49131,\n\t\"./sr-cyrl\": 79915,\n\t\"./sr-cyrl.js\": 79915,\n\t\"./sr.js\": 49131,\n\t\"./ss\": 85893,\n\t\"./ss.js\": 85893,\n\t\"./sv\": 98760,\n\t\"./sv.js\": 98760,\n\t\"./sw\": 91172,\n\t\"./sw.js\": 91172,\n\t\"./ta\": 27333,\n\t\"./ta.js\": 27333,\n\t\"./te\": 23110,\n\t\"./te.js\": 23110,\n\t\"./tet\": 52095,\n\t\"./tet.js\": 52095,\n\t\"./tg\": 27321,\n\t\"./tg.js\": 27321,\n\t\"./th\": 9041,\n\t\"./th.js\": 9041,\n\t\"./tk\": 19005,\n\t\"./tk.js\": 19005,\n\t\"./tl-ph\": 75768,\n\t\"./tl-ph.js\": 75768,\n\t\"./tlh\": 89444,\n\t\"./tlh.js\": 89444,\n\t\"./tr\": 72397,\n\t\"./tr.js\": 72397,\n\t\"./tzl\": 28254,\n\t\"./tzl.js\": 28254,\n\t\"./tzm\": 51106,\n\t\"./tzm-latn\": 30699,\n\t\"./tzm-latn.js\": 30699,\n\t\"./tzm.js\": 51106,\n\t\"./ug-cn\": 9288,\n\t\"./ug-cn.js\": 9288,\n\t\"./uk\": 67691,\n\t\"./uk.js\": 67691,\n\t\"./ur\": 13795,\n\t\"./ur.js\": 13795,\n\t\"./uz\": 6791,\n\t\"./uz-latn\": 60588,\n\t\"./uz-latn.js\": 60588,\n\t\"./uz.js\": 6791,\n\t\"./vi\": 65666,\n\t\"./vi.js\": 65666,\n\t\"./x-pseudo\": 14378,\n\t\"./x-pseudo.js\": 14378,\n\t\"./yo\": 75805,\n\t\"./yo.js\": 75805,\n\t\"./zh-cn\": 83839,\n\t\"./zh-cn.js\": 83839,\n\t\"./zh-hk\": 55726,\n\t\"./zh-hk.js\": 55726,\n\t\"./zh-mo\": 99807,\n\t\"./zh-mo.js\": 99807,\n\t\"./zh-tw\": 74152,\n\t\"./zh-tw.js\": 74152\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 46700;","//! moment.js\n//! version : 2.29.4\n//! authors : Tim Wood, Iskren Chernev, Moment.js contributors\n//! license : MIT\n//! momentjs.com\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n global.moment = factory()\n}(this, (function () { 'use strict';\n\n var hookCallback;\n\n function hooks() {\n return hookCallback.apply(null, arguments);\n }\n\n // This is done to register the method called with moment()\n // without creating circular dependencies.\n function setHookCallback(callback) {\n hookCallback = callback;\n }\n\n function isArray(input) {\n return (\n input instanceof Array ||\n Object.prototype.toString.call(input) === '[object Array]'\n );\n }\n\n function isObject(input) {\n // IE8 will treat undefined and null as object if it wasn't for\n // input != null\n return (\n input != null &&\n Object.prototype.toString.call(input) === '[object Object]'\n );\n }\n\n function hasOwnProp(a, b) {\n return Object.prototype.hasOwnProperty.call(a, b);\n }\n\n function isObjectEmpty(obj) {\n if (Object.getOwnPropertyNames) {\n return Object.getOwnPropertyNames(obj).length === 0;\n } else {\n var k;\n for (k in obj) {\n if (hasOwnProp(obj, k)) {\n return false;\n }\n }\n return true;\n }\n }\n\n function isUndefined(input) {\n return input === void 0;\n }\n\n function isNumber(input) {\n return (\n typeof input === 'number' ||\n Object.prototype.toString.call(input) === '[object Number]'\n );\n }\n\n function isDate(input) {\n return (\n input instanceof Date ||\n Object.prototype.toString.call(input) === '[object Date]'\n );\n }\n\n function map(arr, fn) {\n var res = [],\n i,\n arrLen = arr.length;\n for (i = 0; i < arrLen; ++i) {\n res.push(fn(arr[i], i));\n }\n return res;\n }\n\n function extend(a, b) {\n for (var i in b) {\n if (hasOwnProp(b, i)) {\n a[i] = b[i];\n }\n }\n\n if (hasOwnProp(b, 'toString')) {\n a.toString = b.toString;\n }\n\n if (hasOwnProp(b, 'valueOf')) {\n a.valueOf = b.valueOf;\n }\n\n return a;\n }\n\n function createUTC(input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, true).utc();\n }\n\n function defaultParsingFlags() {\n // We need to deep clone this object.\n return {\n empty: false,\n unusedTokens: [],\n unusedInput: [],\n overflow: -2,\n charsLeftOver: 0,\n nullInput: false,\n invalidEra: null,\n invalidMonth: null,\n invalidFormat: false,\n userInvalidated: false,\n iso: false,\n parsedDateParts: [],\n era: null,\n meridiem: null,\n rfc2822: false,\n weekdayMismatch: false,\n };\n }\n\n function getParsingFlags(m) {\n if (m._pf == null) {\n m._pf = defaultParsingFlags();\n }\n return m._pf;\n }\n\n var some;\n if (Array.prototype.some) {\n some = Array.prototype.some;\n } else {\n some = function (fun) {\n var t = Object(this),\n len = t.length >>> 0,\n i;\n\n for (i = 0; i < len; i++) {\n if (i in t && fun.call(this, t[i], i, t)) {\n return true;\n }\n }\n\n return false;\n };\n }\n\n function isValid(m) {\n if (m._isValid == null) {\n var flags = getParsingFlags(m),\n parsedParts = some.call(flags.parsedDateParts, function (i) {\n return i != null;\n }),\n isNowValid =\n !isNaN(m._d.getTime()) &&\n flags.overflow < 0 &&\n !flags.empty &&\n !flags.invalidEra &&\n !flags.invalidMonth &&\n !flags.invalidWeekday &&\n !flags.weekdayMismatch &&\n !flags.nullInput &&\n !flags.invalidFormat &&\n !flags.userInvalidated &&\n (!flags.meridiem || (flags.meridiem && parsedParts));\n\n if (m._strict) {\n isNowValid =\n isNowValid &&\n flags.charsLeftOver === 0 &&\n flags.unusedTokens.length === 0 &&\n flags.bigHour === undefined;\n }\n\n if (Object.isFrozen == null || !Object.isFrozen(m)) {\n m._isValid = isNowValid;\n } else {\n return isNowValid;\n }\n }\n return m._isValid;\n }\n\n function createInvalid(flags) {\n var m = createUTC(NaN);\n if (flags != null) {\n extend(getParsingFlags(m), flags);\n } else {\n getParsingFlags(m).userInvalidated = true;\n }\n\n return m;\n }\n\n // Plugins that add properties should also add the key here (null value),\n // so we can properly clone ourselves.\n var momentProperties = (hooks.momentProperties = []),\n updateInProgress = false;\n\n function copyConfig(to, from) {\n var i,\n prop,\n val,\n momentPropertiesLen = momentProperties.length;\n\n if (!isUndefined(from._isAMomentObject)) {\n to._isAMomentObject = from._isAMomentObject;\n }\n if (!isUndefined(from._i)) {\n to._i = from._i;\n }\n if (!isUndefined(from._f)) {\n to._f = from._f;\n }\n if (!isUndefined(from._l)) {\n to._l = from._l;\n }\n if (!isUndefined(from._strict)) {\n to._strict = from._strict;\n }\n if (!isUndefined(from._tzm)) {\n to._tzm = from._tzm;\n }\n if (!isUndefined(from._isUTC)) {\n to._isUTC = from._isUTC;\n }\n if (!isUndefined(from._offset)) {\n to._offset = from._offset;\n }\n if (!isUndefined(from._pf)) {\n to._pf = getParsingFlags(from);\n }\n if (!isUndefined(from._locale)) {\n to._locale = from._locale;\n }\n\n if (momentPropertiesLen > 0) {\n for (i = 0; i < momentPropertiesLen; i++) {\n prop = momentProperties[i];\n val = from[prop];\n if (!isUndefined(val)) {\n to[prop] = val;\n }\n }\n }\n\n return to;\n }\n\n // Moment prototype object\n function Moment(config) {\n copyConfig(this, config);\n this._d = new Date(config._d != null ? config._d.getTime() : NaN);\n if (!this.isValid()) {\n this._d = new Date(NaN);\n }\n // Prevent infinite loop in case updateOffset creates new moment\n // objects.\n if (updateInProgress === false) {\n updateInProgress = true;\n hooks.updateOffset(this);\n updateInProgress = false;\n }\n }\n\n function isMoment(obj) {\n return (\n obj instanceof Moment || (obj != null && obj._isAMomentObject != null)\n );\n }\n\n function warn(msg) {\n if (\n hooks.suppressDeprecationWarnings === false &&\n typeof console !== 'undefined' &&\n console.warn\n ) {\n console.warn('Deprecation warning: ' + msg);\n }\n }\n\n function deprecate(msg, fn) {\n var firstTime = true;\n\n return extend(function () {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(null, msg);\n }\n if (firstTime) {\n var args = [],\n arg,\n i,\n key,\n argLen = arguments.length;\n for (i = 0; i < argLen; i++) {\n arg = '';\n if (typeof arguments[i] === 'object') {\n arg += '\\n[' + i + '] ';\n for (key in arguments[0]) {\n if (hasOwnProp(arguments[0], key)) {\n arg += key + ': ' + arguments[0][key] + ', ';\n }\n }\n arg = arg.slice(0, -2); // Remove trailing comma and space\n } else {\n arg = arguments[i];\n }\n args.push(arg);\n }\n warn(\n msg +\n '\\nArguments: ' +\n Array.prototype.slice.call(args).join('') +\n '\\n' +\n new Error().stack\n );\n firstTime = false;\n }\n return fn.apply(this, arguments);\n }, fn);\n }\n\n var deprecations = {};\n\n function deprecateSimple(name, msg) {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(name, msg);\n }\n if (!deprecations[name]) {\n warn(msg);\n deprecations[name] = true;\n }\n }\n\n hooks.suppressDeprecationWarnings = false;\n hooks.deprecationHandler = null;\n\n function isFunction(input) {\n return (\n (typeof Function !== 'undefined' && input instanceof Function) ||\n Object.prototype.toString.call(input) === '[object Function]'\n );\n }\n\n function set(config) {\n var prop, i;\n for (i in config) {\n if (hasOwnProp(config, i)) {\n prop = config[i];\n if (isFunction(prop)) {\n this[i] = prop;\n } else {\n this['_' + i] = prop;\n }\n }\n }\n this._config = config;\n // Lenient ordinal parsing accepts just a number in addition to\n // number + (possibly) stuff coming from _dayOfMonthOrdinalParse.\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n this._dayOfMonthOrdinalParseLenient = new RegExp(\n (this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) +\n '|' +\n /\\d{1,2}/.source\n );\n }\n\n function mergeConfigs(parentConfig, childConfig) {\n var res = extend({}, parentConfig),\n prop;\n for (prop in childConfig) {\n if (hasOwnProp(childConfig, prop)) {\n if (isObject(parentConfig[prop]) && isObject(childConfig[prop])) {\n res[prop] = {};\n extend(res[prop], parentConfig[prop]);\n extend(res[prop], childConfig[prop]);\n } else if (childConfig[prop] != null) {\n res[prop] = childConfig[prop];\n } else {\n delete res[prop];\n }\n }\n }\n for (prop in parentConfig) {\n if (\n hasOwnProp(parentConfig, prop) &&\n !hasOwnProp(childConfig, prop) &&\n isObject(parentConfig[prop])\n ) {\n // make sure changes to properties don't modify parent config\n res[prop] = extend({}, res[prop]);\n }\n }\n return res;\n }\n\n function Locale(config) {\n if (config != null) {\n this.set(config);\n }\n }\n\n var keys;\n\n if (Object.keys) {\n keys = Object.keys;\n } else {\n keys = function (obj) {\n var i,\n res = [];\n for (i in obj) {\n if (hasOwnProp(obj, i)) {\n res.push(i);\n }\n }\n return res;\n };\n }\n\n var defaultCalendar = {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n };\n\n function calendar(key, mom, now) {\n var output = this._calendar[key] || this._calendar['sameElse'];\n return isFunction(output) ? output.call(mom, now) : output;\n }\n\n function zeroFill(number, targetLength, forceSign) {\n var absNumber = '' + Math.abs(number),\n zerosToFill = targetLength - absNumber.length,\n sign = number >= 0;\n return (\n (sign ? (forceSign ? '+' : '') : '-') +\n Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) +\n absNumber\n );\n }\n\n var formattingTokens =\n /(\\[[^\\[]*\\])|(\\\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,\n localFormattingTokens = /(\\[[^\\[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g,\n formatFunctions = {},\n formatTokenFunctions = {};\n\n // token: 'M'\n // padded: ['MM', 2]\n // ordinal: 'Mo'\n // callback: function () { this.month() + 1 }\n function addFormatToken(token, padded, ordinal, callback) {\n var func = callback;\n if (typeof callback === 'string') {\n func = function () {\n return this[callback]();\n };\n }\n if (token) {\n formatTokenFunctions[token] = func;\n }\n if (padded) {\n formatTokenFunctions[padded[0]] = function () {\n return zeroFill(func.apply(this, arguments), padded[1], padded[2]);\n };\n }\n if (ordinal) {\n formatTokenFunctions[ordinal] = function () {\n return this.localeData().ordinal(\n func.apply(this, arguments),\n token\n );\n };\n }\n }\n\n function removeFormattingTokens(input) {\n if (input.match(/\\[[\\s\\S]/)) {\n return input.replace(/^\\[|\\]$/g, '');\n }\n return input.replace(/\\\\/g, '');\n }\n\n function makeFormatFunction(format) {\n var array = format.match(formattingTokens),\n i,\n length;\n\n for (i = 0, length = array.length; i < length; i++) {\n if (formatTokenFunctions[array[i]]) {\n array[i] = formatTokenFunctions[array[i]];\n } else {\n array[i] = removeFormattingTokens(array[i]);\n }\n }\n\n return function (mom) {\n var output = '',\n i;\n for (i = 0; i < length; i++) {\n output += isFunction(array[i])\n ? array[i].call(mom, format)\n : array[i];\n }\n return output;\n };\n }\n\n // format date using native date object\n function formatMoment(m, format) {\n if (!m.isValid()) {\n return m.localeData().invalidDate();\n }\n\n format = expandFormat(format, m.localeData());\n formatFunctions[format] =\n formatFunctions[format] || makeFormatFunction(format);\n\n return formatFunctions[format](m);\n }\n\n function expandFormat(format, locale) {\n var i = 5;\n\n function replaceLongDateFormatTokens(input) {\n return locale.longDateFormat(input) || input;\n }\n\n localFormattingTokens.lastIndex = 0;\n while (i >= 0 && localFormattingTokens.test(format)) {\n format = format.replace(\n localFormattingTokens,\n replaceLongDateFormatTokens\n );\n localFormattingTokens.lastIndex = 0;\n i -= 1;\n }\n\n return format;\n }\n\n var defaultLongDateFormat = {\n LTS: 'h:mm:ss A',\n LT: 'h:mm A',\n L: 'MM/DD/YYYY',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY h:mm A',\n LLLL: 'dddd, MMMM D, YYYY h:mm A',\n };\n\n function longDateFormat(key) {\n var format = this._longDateFormat[key],\n formatUpper = this._longDateFormat[key.toUpperCase()];\n\n if (format || !formatUpper) {\n return format;\n }\n\n this._longDateFormat[key] = formatUpper\n .match(formattingTokens)\n .map(function (tok) {\n if (\n tok === 'MMMM' ||\n tok === 'MM' ||\n tok === 'DD' ||\n tok === 'dddd'\n ) {\n return tok.slice(1);\n }\n return tok;\n })\n .join('');\n\n return this._longDateFormat[key];\n }\n\n var defaultInvalidDate = 'Invalid date';\n\n function invalidDate() {\n return this._invalidDate;\n }\n\n var defaultOrdinal = '%d',\n defaultDayOfMonthOrdinalParse = /\\d{1,2}/;\n\n function ordinal(number) {\n return this._ordinal.replace('%d', number);\n }\n\n var defaultRelativeTime = {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n w: 'a week',\n ww: '%d weeks',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n };\n\n function relativeTime(number, withoutSuffix, string, isFuture) {\n var output = this._relativeTime[string];\n return isFunction(output)\n ? output(number, withoutSuffix, string, isFuture)\n : output.replace(/%d/i, number);\n }\n\n function pastFuture(diff, output) {\n var format = this._relativeTime[diff > 0 ? 'future' : 'past'];\n return isFunction(format) ? format(output) : format.replace(/%s/i, output);\n }\n\n var aliases = {};\n\n function addUnitAlias(unit, shorthand) {\n var lowerCase = unit.toLowerCase();\n aliases[lowerCase] = aliases[lowerCase + 's'] = aliases[shorthand] = unit;\n }\n\n function normalizeUnits(units) {\n return typeof units === 'string'\n ? aliases[units] || aliases[units.toLowerCase()]\n : undefined;\n }\n\n function normalizeObjectUnits(inputObject) {\n var normalizedInput = {},\n normalizedProp,\n prop;\n\n for (prop in inputObject) {\n if (hasOwnProp(inputObject, prop)) {\n normalizedProp = normalizeUnits(prop);\n if (normalizedProp) {\n normalizedInput[normalizedProp] = inputObject[prop];\n }\n }\n }\n\n return normalizedInput;\n }\n\n var priorities = {};\n\n function addUnitPriority(unit, priority) {\n priorities[unit] = priority;\n }\n\n function getPrioritizedUnits(unitsObj) {\n var units = [],\n u;\n for (u in unitsObj) {\n if (hasOwnProp(unitsObj, u)) {\n units.push({ unit: u, priority: priorities[u] });\n }\n }\n units.sort(function (a, b) {\n return a.priority - b.priority;\n });\n return units;\n }\n\n function isLeapYear(year) {\n return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;\n }\n\n function absFloor(number) {\n if (number < 0) {\n // -0 -> 0\n return Math.ceil(number) || 0;\n } else {\n return Math.floor(number);\n }\n }\n\n function toInt(argumentForCoercion) {\n var coercedNumber = +argumentForCoercion,\n value = 0;\n\n if (coercedNumber !== 0 && isFinite(coercedNumber)) {\n value = absFloor(coercedNumber);\n }\n\n return value;\n }\n\n function makeGetSet(unit, keepTime) {\n return function (value) {\n if (value != null) {\n set$1(this, unit, value);\n hooks.updateOffset(this, keepTime);\n return this;\n } else {\n return get(this, unit);\n }\n };\n }\n\n function get(mom, unit) {\n return mom.isValid()\n ? mom._d['get' + (mom._isUTC ? 'UTC' : '') + unit]()\n : NaN;\n }\n\n function set$1(mom, unit, value) {\n if (mom.isValid() && !isNaN(value)) {\n if (\n unit === 'FullYear' &&\n isLeapYear(mom.year()) &&\n mom.month() === 1 &&\n mom.date() === 29\n ) {\n value = toInt(value);\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](\n value,\n mom.month(),\n daysInMonth(value, mom.month())\n );\n } else {\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value);\n }\n }\n }\n\n // MOMENTS\n\n function stringGet(units) {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units]();\n }\n return this;\n }\n\n function stringSet(units, value) {\n if (typeof units === 'object') {\n units = normalizeObjectUnits(units);\n var prioritized = getPrioritizedUnits(units),\n i,\n prioritizedLen = prioritized.length;\n for (i = 0; i < prioritizedLen; i++) {\n this[prioritized[i].unit](units[prioritized[i].unit]);\n }\n } else {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units](value);\n }\n }\n return this;\n }\n\n var match1 = /\\d/, // 0 - 9\n match2 = /\\d\\d/, // 00 - 99\n match3 = /\\d{3}/, // 000 - 999\n match4 = /\\d{4}/, // 0000 - 9999\n match6 = /[+-]?\\d{6}/, // -999999 - 999999\n match1to2 = /\\d\\d?/, // 0 - 99\n match3to4 = /\\d\\d\\d\\d?/, // 999 - 9999\n match5to6 = /\\d\\d\\d\\d\\d\\d?/, // 99999 - 999999\n match1to3 = /\\d{1,3}/, // 0 - 999\n match1to4 = /\\d{1,4}/, // 0 - 9999\n match1to6 = /[+-]?\\d{1,6}/, // -999999 - 999999\n matchUnsigned = /\\d+/, // 0 - inf\n matchSigned = /[+-]?\\d+/, // -inf - inf\n matchOffset = /Z|[+-]\\d\\d:?\\d\\d/gi, // +00:00 -00:00 +0000 -0000 or Z\n matchShortOffset = /Z|[+-]\\d\\d(?::?\\d\\d)?/gi, // +00 -00 +00:00 -00:00 +0000 -0000 or Z\n matchTimestamp = /[+-]?\\d+(\\.\\d{1,3})?/, // 123456789 123456789.123\n // any word (or two) characters or numbers including two/three word month in arabic.\n // includes scottish gaelic two word and hyphenated months\n matchWord =\n /[0-9]{0,256}['a-z\\u00A0-\\u05FF\\u0700-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFF07\\uFF10-\\uFFEF]{1,256}|[\\u0600-\\u06FF\\/]{1,256}(\\s*?[\\u0600-\\u06FF]{1,256}){1,2}/i,\n regexes;\n\n regexes = {};\n\n function addRegexToken(token, regex, strictRegex) {\n regexes[token] = isFunction(regex)\n ? regex\n : function (isStrict, localeData) {\n return isStrict && strictRegex ? strictRegex : regex;\n };\n }\n\n function getParseRegexForToken(token, config) {\n if (!hasOwnProp(regexes, token)) {\n return new RegExp(unescapeFormat(token));\n }\n\n return regexes[token](config._strict, config._locale);\n }\n\n // Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript\n function unescapeFormat(s) {\n return regexEscape(\n s\n .replace('\\\\', '')\n .replace(\n /\\\\(\\[)|\\\\(\\])|\\[([^\\]\\[]*)\\]|\\\\(.)/g,\n function (matched, p1, p2, p3, p4) {\n return p1 || p2 || p3 || p4;\n }\n )\n );\n }\n\n function regexEscape(s) {\n return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n }\n\n var tokens = {};\n\n function addParseToken(token, callback) {\n var i,\n func = callback,\n tokenLen;\n if (typeof token === 'string') {\n token = [token];\n }\n if (isNumber(callback)) {\n func = function (input, array) {\n array[callback] = toInt(input);\n };\n }\n tokenLen = token.length;\n for (i = 0; i < tokenLen; i++) {\n tokens[token[i]] = func;\n }\n }\n\n function addWeekParseToken(token, callback) {\n addParseToken(token, function (input, array, config, token) {\n config._w = config._w || {};\n callback(input, config._w, config, token);\n });\n }\n\n function addTimeToArrayFromToken(token, input, config) {\n if (input != null && hasOwnProp(tokens, token)) {\n tokens[token](input, config._a, config, token);\n }\n }\n\n var YEAR = 0,\n MONTH = 1,\n DATE = 2,\n HOUR = 3,\n MINUTE = 4,\n SECOND = 5,\n MILLISECOND = 6,\n WEEK = 7,\n WEEKDAY = 8;\n\n function mod(n, x) {\n return ((n % x) + x) % x;\n }\n\n var indexOf;\n\n if (Array.prototype.indexOf) {\n indexOf = Array.prototype.indexOf;\n } else {\n indexOf = function (o) {\n // I know\n var i;\n for (i = 0; i < this.length; ++i) {\n if (this[i] === o) {\n return i;\n }\n }\n return -1;\n };\n }\n\n function daysInMonth(year, month) {\n if (isNaN(year) || isNaN(month)) {\n return NaN;\n }\n var modMonth = mod(month, 12);\n year += (month - modMonth) / 12;\n return modMonth === 1\n ? isLeapYear(year)\n ? 29\n : 28\n : 31 - ((modMonth % 7) % 2);\n }\n\n // FORMATTING\n\n addFormatToken('M', ['MM', 2], 'Mo', function () {\n return this.month() + 1;\n });\n\n addFormatToken('MMM', 0, 0, function (format) {\n return this.localeData().monthsShort(this, format);\n });\n\n addFormatToken('MMMM', 0, 0, function (format) {\n return this.localeData().months(this, format);\n });\n\n // ALIASES\n\n addUnitAlias('month', 'M');\n\n // PRIORITY\n\n addUnitPriority('month', 8);\n\n // PARSING\n\n addRegexToken('M', match1to2);\n addRegexToken('MM', match1to2, match2);\n addRegexToken('MMM', function (isStrict, locale) {\n return locale.monthsShortRegex(isStrict);\n });\n addRegexToken('MMMM', function (isStrict, locale) {\n return locale.monthsRegex(isStrict);\n });\n\n addParseToken(['M', 'MM'], function (input, array) {\n array[MONTH] = toInt(input) - 1;\n });\n\n addParseToken(['MMM', 'MMMM'], function (input, array, config, token) {\n var month = config._locale.monthsParse(input, token, config._strict);\n // if we didn't find a month name, mark the date as invalid.\n if (month != null) {\n array[MONTH] = month;\n } else {\n getParsingFlags(config).invalidMonth = input;\n }\n });\n\n // LOCALES\n\n var defaultLocaleMonths =\n 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n defaultLocaleMonthsShort =\n 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n MONTHS_IN_FORMAT = /D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?/,\n defaultMonthsShortRegex = matchWord,\n defaultMonthsRegex = matchWord;\n\n function localeMonths(m, format) {\n if (!m) {\n return isArray(this._months)\n ? this._months\n : this._months['standalone'];\n }\n return isArray(this._months)\n ? this._months[m.month()]\n : this._months[\n (this._months.isFormat || MONTHS_IN_FORMAT).test(format)\n ? 'format'\n : 'standalone'\n ][m.month()];\n }\n\n function localeMonthsShort(m, format) {\n if (!m) {\n return isArray(this._monthsShort)\n ? this._monthsShort\n : this._monthsShort['standalone'];\n }\n return isArray(this._monthsShort)\n ? this._monthsShort[m.month()]\n : this._monthsShort[\n MONTHS_IN_FORMAT.test(format) ? 'format' : 'standalone'\n ][m.month()];\n }\n\n function handleStrictParse(monthName, format, strict) {\n var i,\n ii,\n mom,\n llc = monthName.toLocaleLowerCase();\n if (!this._monthsParse) {\n // this is not used\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n for (i = 0; i < 12; ++i) {\n mom = createUTC([2000, i]);\n this._shortMonthsParse[i] = this.monthsShort(\n mom,\n ''\n ).toLocaleLowerCase();\n this._longMonthsParse[i] = this.months(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'MMM') {\n ii = indexOf.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'MMM') {\n ii = indexOf.call(this._shortMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._longMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n }\n\n function localeMonthsParse(monthName, format, strict) {\n var i, mom, regex;\n\n if (this._monthsParseExact) {\n return handleStrictParse.call(this, monthName, format, strict);\n }\n\n if (!this._monthsParse) {\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n }\n\n // TODO: add sorting\n // Sorting makes sure if one month (or abbr) is a prefix of another\n // see sorting in computeMonthsParse\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n if (strict && !this._longMonthsParse[i]) {\n this._longMonthsParse[i] = new RegExp(\n '^' + this.months(mom, '').replace('.', '') + '$',\n 'i'\n );\n this._shortMonthsParse[i] = new RegExp(\n '^' + this.monthsShort(mom, '').replace('.', '') + '$',\n 'i'\n );\n }\n if (!strict && !this._monthsParse[i]) {\n regex =\n '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, '');\n this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (\n strict &&\n format === 'MMMM' &&\n this._longMonthsParse[i].test(monthName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'MMM' &&\n this._shortMonthsParse[i].test(monthName)\n ) {\n return i;\n } else if (!strict && this._monthsParse[i].test(monthName)) {\n return i;\n }\n }\n }\n\n // MOMENTS\n\n function setMonth(mom, value) {\n var dayOfMonth;\n\n if (!mom.isValid()) {\n // No op\n return mom;\n }\n\n if (typeof value === 'string') {\n if (/^\\d+$/.test(value)) {\n value = toInt(value);\n } else {\n value = mom.localeData().monthsParse(value);\n // TODO: Another silent failure?\n if (!isNumber(value)) {\n return mom;\n }\n }\n }\n\n dayOfMonth = Math.min(mom.date(), daysInMonth(mom.year(), value));\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + 'Month'](value, dayOfMonth);\n return mom;\n }\n\n function getSetMonth(value) {\n if (value != null) {\n setMonth(this, value);\n hooks.updateOffset(this, true);\n return this;\n } else {\n return get(this, 'Month');\n }\n }\n\n function getDaysInMonth() {\n return daysInMonth(this.year(), this.month());\n }\n\n function monthsShortRegex(isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsShortStrictRegex;\n } else {\n return this._monthsShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsShortRegex')) {\n this._monthsShortRegex = defaultMonthsShortRegex;\n }\n return this._monthsShortStrictRegex && isStrict\n ? this._monthsShortStrictRegex\n : this._monthsShortRegex;\n }\n }\n\n function monthsRegex(isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsStrictRegex;\n } else {\n return this._monthsRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsRegex')) {\n this._monthsRegex = defaultMonthsRegex;\n }\n return this._monthsStrictRegex && isStrict\n ? this._monthsStrictRegex\n : this._monthsRegex;\n }\n }\n\n function computeMonthsParse() {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var shortPieces = [],\n longPieces = [],\n mixedPieces = [],\n i,\n mom;\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n shortPieces.push(this.monthsShort(mom, ''));\n longPieces.push(this.months(mom, ''));\n mixedPieces.push(this.months(mom, ''));\n mixedPieces.push(this.monthsShort(mom, ''));\n }\n // Sorting makes sure if one month (or abbr) is a prefix of another it\n // will match the longer piece.\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n for (i = 0; i < 12; i++) {\n shortPieces[i] = regexEscape(shortPieces[i]);\n longPieces[i] = regexEscape(longPieces[i]);\n }\n for (i = 0; i < 24; i++) {\n mixedPieces[i] = regexEscape(mixedPieces[i]);\n }\n\n this._monthsRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._monthsShortRegex = this._monthsRegex;\n this._monthsStrictRegex = new RegExp(\n '^(' + longPieces.join('|') + ')',\n 'i'\n );\n this._monthsShortStrictRegex = new RegExp(\n '^(' + shortPieces.join('|') + ')',\n 'i'\n );\n }\n\n // FORMATTING\n\n addFormatToken('Y', 0, 0, function () {\n var y = this.year();\n return y <= 9999 ? zeroFill(y, 4) : '+' + y;\n });\n\n addFormatToken(0, ['YY', 2], 0, function () {\n return this.year() % 100;\n });\n\n addFormatToken(0, ['YYYY', 4], 0, 'year');\n addFormatToken(0, ['YYYYY', 5], 0, 'year');\n addFormatToken(0, ['YYYYYY', 6, true], 0, 'year');\n\n // ALIASES\n\n addUnitAlias('year', 'y');\n\n // PRIORITIES\n\n addUnitPriority('year', 1);\n\n // PARSING\n\n addRegexToken('Y', matchSigned);\n addRegexToken('YY', match1to2, match2);\n addRegexToken('YYYY', match1to4, match4);\n addRegexToken('YYYYY', match1to6, match6);\n addRegexToken('YYYYYY', match1to6, match6);\n\n addParseToken(['YYYYY', 'YYYYYY'], YEAR);\n addParseToken('YYYY', function (input, array) {\n array[YEAR] =\n input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input);\n });\n addParseToken('YY', function (input, array) {\n array[YEAR] = hooks.parseTwoDigitYear(input);\n });\n addParseToken('Y', function (input, array) {\n array[YEAR] = parseInt(input, 10);\n });\n\n // HELPERS\n\n function daysInYear(year) {\n return isLeapYear(year) ? 366 : 365;\n }\n\n // HOOKS\n\n hooks.parseTwoDigitYear = function (input) {\n return toInt(input) + (toInt(input) > 68 ? 1900 : 2000);\n };\n\n // MOMENTS\n\n var getSetYear = makeGetSet('FullYear', true);\n\n function getIsLeapYear() {\n return isLeapYear(this.year());\n }\n\n function createDate(y, m, d, h, M, s, ms) {\n // can't just apply() to create a date:\n // https://stackoverflow.com/q/181348\n var date;\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n date = new Date(y + 400, m, d, h, M, s, ms);\n if (isFinite(date.getFullYear())) {\n date.setFullYear(y);\n }\n } else {\n date = new Date(y, m, d, h, M, s, ms);\n }\n\n return date;\n }\n\n function createUTCDate(y) {\n var date, args;\n // the Date.UTC function remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n args = Array.prototype.slice.call(arguments);\n // preserve leap years using a full 400 year cycle, then reset\n args[0] = y + 400;\n date = new Date(Date.UTC.apply(null, args));\n if (isFinite(date.getUTCFullYear())) {\n date.setUTCFullYear(y);\n }\n } else {\n date = new Date(Date.UTC.apply(null, arguments));\n }\n\n return date;\n }\n\n // start-of-first-week - start-of-year\n function firstWeekOffset(year, dow, doy) {\n var // first-week day -- which january is always in the first week (4 for iso, 1 for other)\n fwd = 7 + dow - doy,\n // first-week day local weekday -- which local weekday is fwd\n fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7;\n\n return -fwdlw + fwd - 1;\n }\n\n // https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday\n function dayOfYearFromWeeks(year, week, weekday, dow, doy) {\n var localWeekday = (7 + weekday - dow) % 7,\n weekOffset = firstWeekOffset(year, dow, doy),\n dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset,\n resYear,\n resDayOfYear;\n\n if (dayOfYear <= 0) {\n resYear = year - 1;\n resDayOfYear = daysInYear(resYear) + dayOfYear;\n } else if (dayOfYear > daysInYear(year)) {\n resYear = year + 1;\n resDayOfYear = dayOfYear - daysInYear(year);\n } else {\n resYear = year;\n resDayOfYear = dayOfYear;\n }\n\n return {\n year: resYear,\n dayOfYear: resDayOfYear,\n };\n }\n\n function weekOfYear(mom, dow, doy) {\n var weekOffset = firstWeekOffset(mom.year(), dow, doy),\n week = Math.floor((mom.dayOfYear() - weekOffset - 1) / 7) + 1,\n resWeek,\n resYear;\n\n if (week < 1) {\n resYear = mom.year() - 1;\n resWeek = week + weeksInYear(resYear, dow, doy);\n } else if (week > weeksInYear(mom.year(), dow, doy)) {\n resWeek = week - weeksInYear(mom.year(), dow, doy);\n resYear = mom.year() + 1;\n } else {\n resYear = mom.year();\n resWeek = week;\n }\n\n return {\n week: resWeek,\n year: resYear,\n };\n }\n\n function weeksInYear(year, dow, doy) {\n var weekOffset = firstWeekOffset(year, dow, doy),\n weekOffsetNext = firstWeekOffset(year + 1, dow, doy);\n return (daysInYear(year) - weekOffset + weekOffsetNext) / 7;\n }\n\n // FORMATTING\n\n addFormatToken('w', ['ww', 2], 'wo', 'week');\n addFormatToken('W', ['WW', 2], 'Wo', 'isoWeek');\n\n // ALIASES\n\n addUnitAlias('week', 'w');\n addUnitAlias('isoWeek', 'W');\n\n // PRIORITIES\n\n addUnitPriority('week', 5);\n addUnitPriority('isoWeek', 5);\n\n // PARSING\n\n addRegexToken('w', match1to2);\n addRegexToken('ww', match1to2, match2);\n addRegexToken('W', match1to2);\n addRegexToken('WW', match1to2, match2);\n\n addWeekParseToken(\n ['w', 'ww', 'W', 'WW'],\n function (input, week, config, token) {\n week[token.substr(0, 1)] = toInt(input);\n }\n );\n\n // HELPERS\n\n // LOCALES\n\n function localeWeek(mom) {\n return weekOfYear(mom, this._week.dow, this._week.doy).week;\n }\n\n var defaultLocaleWeek = {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n };\n\n function localeFirstDayOfWeek() {\n return this._week.dow;\n }\n\n function localeFirstDayOfYear() {\n return this._week.doy;\n }\n\n // MOMENTS\n\n function getSetWeek(input) {\n var week = this.localeData().week(this);\n return input == null ? week : this.add((input - week) * 7, 'd');\n }\n\n function getSetISOWeek(input) {\n var week = weekOfYear(this, 1, 4).week;\n return input == null ? week : this.add((input - week) * 7, 'd');\n }\n\n // FORMATTING\n\n addFormatToken('d', 0, 'do', 'day');\n\n addFormatToken('dd', 0, 0, function (format) {\n return this.localeData().weekdaysMin(this, format);\n });\n\n addFormatToken('ddd', 0, 0, function (format) {\n return this.localeData().weekdaysShort(this, format);\n });\n\n addFormatToken('dddd', 0, 0, function (format) {\n return this.localeData().weekdays(this, format);\n });\n\n addFormatToken('e', 0, 0, 'weekday');\n addFormatToken('E', 0, 0, 'isoWeekday');\n\n // ALIASES\n\n addUnitAlias('day', 'd');\n addUnitAlias('weekday', 'e');\n addUnitAlias('isoWeekday', 'E');\n\n // PRIORITY\n addUnitPriority('day', 11);\n addUnitPriority('weekday', 11);\n addUnitPriority('isoWeekday', 11);\n\n // PARSING\n\n addRegexToken('d', match1to2);\n addRegexToken('e', match1to2);\n addRegexToken('E', match1to2);\n addRegexToken('dd', function (isStrict, locale) {\n return locale.weekdaysMinRegex(isStrict);\n });\n addRegexToken('ddd', function (isStrict, locale) {\n return locale.weekdaysShortRegex(isStrict);\n });\n addRegexToken('dddd', function (isStrict, locale) {\n return locale.weekdaysRegex(isStrict);\n });\n\n addWeekParseToken(['dd', 'ddd', 'dddd'], function (input, week, config, token) {\n var weekday = config._locale.weekdaysParse(input, token, config._strict);\n // if we didn't get a weekday name, mark the date as invalid\n if (weekday != null) {\n week.d = weekday;\n } else {\n getParsingFlags(config).invalidWeekday = input;\n }\n });\n\n addWeekParseToken(['d', 'e', 'E'], function (input, week, config, token) {\n week[token] = toInt(input);\n });\n\n // HELPERS\n\n function parseWeekday(input, locale) {\n if (typeof input !== 'string') {\n return input;\n }\n\n if (!isNaN(input)) {\n return parseInt(input, 10);\n }\n\n input = locale.weekdaysParse(input);\n if (typeof input === 'number') {\n return input;\n }\n\n return null;\n }\n\n function parseIsoWeekday(input, locale) {\n if (typeof input === 'string') {\n return locale.weekdaysParse(input) % 7 || 7;\n }\n return isNaN(input) ? null : input;\n }\n\n // LOCALES\n function shiftWeekdays(ws, n) {\n return ws.slice(n, 7).concat(ws.slice(0, n));\n }\n\n var defaultLocaleWeekdays =\n 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n defaultWeekdaysRegex = matchWord,\n defaultWeekdaysShortRegex = matchWord,\n defaultWeekdaysMinRegex = matchWord;\n\n function localeWeekdays(m, format) {\n var weekdays = isArray(this._weekdays)\n ? this._weekdays\n : this._weekdays[\n m && m !== true && this._weekdays.isFormat.test(format)\n ? 'format'\n : 'standalone'\n ];\n return m === true\n ? shiftWeekdays(weekdays, this._week.dow)\n : m\n ? weekdays[m.day()]\n : weekdays;\n }\n\n function localeWeekdaysShort(m) {\n return m === true\n ? shiftWeekdays(this._weekdaysShort, this._week.dow)\n : m\n ? this._weekdaysShort[m.day()]\n : this._weekdaysShort;\n }\n\n function localeWeekdaysMin(m) {\n return m === true\n ? shiftWeekdays(this._weekdaysMin, this._week.dow)\n : m\n ? this._weekdaysMin[m.day()]\n : this._weekdaysMin;\n }\n\n function handleStrictParse$1(weekdayName, format, strict) {\n var i,\n ii,\n mom,\n llc = weekdayName.toLocaleLowerCase();\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._minWeekdaysParse = [];\n\n for (i = 0; i < 7; ++i) {\n mom = createUTC([2000, 1]).day(i);\n this._minWeekdaysParse[i] = this.weekdaysMin(\n mom,\n ''\n ).toLocaleLowerCase();\n this._shortWeekdaysParse[i] = this.weekdaysShort(\n mom,\n ''\n ).toLocaleLowerCase();\n this._weekdaysParse[i] = this.weekdays(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'dddd') {\n ii = indexOf.call(this._weekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'dddd') {\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._minWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n }\n\n function localeWeekdaysParse(weekdayName, format, strict) {\n var i, mom, regex;\n\n if (this._weekdaysParseExact) {\n return handleStrictParse$1.call(this, weekdayName, format, strict);\n }\n\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._minWeekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._fullWeekdaysParse = [];\n }\n\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n\n mom = createUTC([2000, 1]).day(i);\n if (strict && !this._fullWeekdaysParse[i]) {\n this._fullWeekdaysParse[i] = new RegExp(\n '^' + this.weekdays(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n this._shortWeekdaysParse[i] = new RegExp(\n '^' + this.weekdaysShort(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n this._minWeekdaysParse[i] = new RegExp(\n '^' + this.weekdaysMin(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n }\n if (!this._weekdaysParse[i]) {\n regex =\n '^' +\n this.weekdays(mom, '') +\n '|^' +\n this.weekdaysShort(mom, '') +\n '|^' +\n this.weekdaysMin(mom, '');\n this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (\n strict &&\n format === 'dddd' &&\n this._fullWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'ddd' &&\n this._shortWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'dd' &&\n this._minWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (!strict && this._weekdaysParse[i].test(weekdayName)) {\n return i;\n }\n }\n }\n\n // MOMENTS\n\n function getSetDayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay();\n if (input != null) {\n input = parseWeekday(input, this.localeData());\n return this.add(input - day, 'd');\n } else {\n return day;\n }\n }\n\n function getSetLocaleDayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7;\n return input == null ? weekday : this.add(input - weekday, 'd');\n }\n\n function getSetISODayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n\n // behaves the same as moment#day except\n // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6)\n // as a setter, sunday should belong to the previous week.\n\n if (input != null) {\n var weekday = parseIsoWeekday(input, this.localeData());\n return this.day(this.day() % 7 ? weekday : weekday - 7);\n } else {\n return this.day() || 7;\n }\n }\n\n function weekdaysRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysStrictRegex;\n } else {\n return this._weekdaysRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n this._weekdaysRegex = defaultWeekdaysRegex;\n }\n return this._weekdaysStrictRegex && isStrict\n ? this._weekdaysStrictRegex\n : this._weekdaysRegex;\n }\n }\n\n function weekdaysShortRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysShortStrictRegex;\n } else {\n return this._weekdaysShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysShortRegex')) {\n this._weekdaysShortRegex = defaultWeekdaysShortRegex;\n }\n return this._weekdaysShortStrictRegex && isStrict\n ? this._weekdaysShortStrictRegex\n : this._weekdaysShortRegex;\n }\n }\n\n function weekdaysMinRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysMinStrictRegex;\n } else {\n return this._weekdaysMinRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysMinRegex')) {\n this._weekdaysMinRegex = defaultWeekdaysMinRegex;\n }\n return this._weekdaysMinStrictRegex && isStrict\n ? this._weekdaysMinStrictRegex\n : this._weekdaysMinRegex;\n }\n }\n\n function computeWeekdaysParse() {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var minPieces = [],\n shortPieces = [],\n longPieces = [],\n mixedPieces = [],\n i,\n mom,\n minp,\n shortp,\n longp;\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, 1]).day(i);\n minp = regexEscape(this.weekdaysMin(mom, ''));\n shortp = regexEscape(this.weekdaysShort(mom, ''));\n longp = regexEscape(this.weekdays(mom, ''));\n minPieces.push(minp);\n shortPieces.push(shortp);\n longPieces.push(longp);\n mixedPieces.push(minp);\n mixedPieces.push(shortp);\n mixedPieces.push(longp);\n }\n // Sorting makes sure if one weekday (or abbr) is a prefix of another it\n // will match the longer piece.\n minPieces.sort(cmpLenRev);\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n\n this._weekdaysRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._weekdaysShortRegex = this._weekdaysRegex;\n this._weekdaysMinRegex = this._weekdaysRegex;\n\n this._weekdaysStrictRegex = new RegExp(\n '^(' + longPieces.join('|') + ')',\n 'i'\n );\n this._weekdaysShortStrictRegex = new RegExp(\n '^(' + shortPieces.join('|') + ')',\n 'i'\n );\n this._weekdaysMinStrictRegex = new RegExp(\n '^(' + minPieces.join('|') + ')',\n 'i'\n );\n }\n\n // FORMATTING\n\n function hFormat() {\n return this.hours() % 12 || 12;\n }\n\n function kFormat() {\n return this.hours() || 24;\n }\n\n addFormatToken('H', ['HH', 2], 0, 'hour');\n addFormatToken('h', ['hh', 2], 0, hFormat);\n addFormatToken('k', ['kk', 2], 0, kFormat);\n\n addFormatToken('hmm', 0, 0, function () {\n return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2);\n });\n\n addFormatToken('hmmss', 0, 0, function () {\n return (\n '' +\n hFormat.apply(this) +\n zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2)\n );\n });\n\n addFormatToken('Hmm', 0, 0, function () {\n return '' + this.hours() + zeroFill(this.minutes(), 2);\n });\n\n addFormatToken('Hmmss', 0, 0, function () {\n return (\n '' +\n this.hours() +\n zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2)\n );\n });\n\n function meridiem(token, lowercase) {\n addFormatToken(token, 0, 0, function () {\n return this.localeData().meridiem(\n this.hours(),\n this.minutes(),\n lowercase\n );\n });\n }\n\n meridiem('a', true);\n meridiem('A', false);\n\n // ALIASES\n\n addUnitAlias('hour', 'h');\n\n // PRIORITY\n addUnitPriority('hour', 13);\n\n // PARSING\n\n function matchMeridiem(isStrict, locale) {\n return locale._meridiemParse;\n }\n\n addRegexToken('a', matchMeridiem);\n addRegexToken('A', matchMeridiem);\n addRegexToken('H', match1to2);\n addRegexToken('h', match1to2);\n addRegexToken('k', match1to2);\n addRegexToken('HH', match1to2, match2);\n addRegexToken('hh', match1to2, match2);\n addRegexToken('kk', match1to2, match2);\n\n addRegexToken('hmm', match3to4);\n addRegexToken('hmmss', match5to6);\n addRegexToken('Hmm', match3to4);\n addRegexToken('Hmmss', match5to6);\n\n addParseToken(['H', 'HH'], HOUR);\n addParseToken(['k', 'kk'], function (input, array, config) {\n var kInput = toInt(input);\n array[HOUR] = kInput === 24 ? 0 : kInput;\n });\n addParseToken(['a', 'A'], function (input, array, config) {\n config._isPm = config._locale.isPM(input);\n config._meridiem = input;\n });\n addParseToken(['h', 'hh'], function (input, array, config) {\n array[HOUR] = toInt(input);\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('hmmss', function (input, array, config) {\n var pos1 = input.length - 4,\n pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('Hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n });\n addParseToken('Hmmss', function (input, array, config) {\n var pos1 = input.length - 4,\n pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n });\n\n // LOCALES\n\n function localeIsPM(input) {\n // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays\n // Using charAt should be more compatible.\n return (input + '').toLowerCase().charAt(0) === 'p';\n }\n\n var defaultLocaleMeridiemParse = /[ap]\\.?m?\\.?/i,\n // Setting the hour should keep the time, because the user explicitly\n // specified which hour they want. So trying to maintain the same hour (in\n // a new timezone) makes sense. Adding/subtracting hours does not follow\n // this rule.\n getSetHour = makeGetSet('Hours', true);\n\n function localeMeridiem(hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'pm' : 'PM';\n } else {\n return isLower ? 'am' : 'AM';\n }\n }\n\n var baseConfig = {\n calendar: defaultCalendar,\n longDateFormat: defaultLongDateFormat,\n invalidDate: defaultInvalidDate,\n ordinal: defaultOrdinal,\n dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse,\n relativeTime: defaultRelativeTime,\n\n months: defaultLocaleMonths,\n monthsShort: defaultLocaleMonthsShort,\n\n week: defaultLocaleWeek,\n\n weekdays: defaultLocaleWeekdays,\n weekdaysMin: defaultLocaleWeekdaysMin,\n weekdaysShort: defaultLocaleWeekdaysShort,\n\n meridiemParse: defaultLocaleMeridiemParse,\n };\n\n // internal storage for locale config files\n var locales = {},\n localeFamilies = {},\n globalLocale;\n\n function commonPrefix(arr1, arr2) {\n var i,\n minl = Math.min(arr1.length, arr2.length);\n for (i = 0; i < minl; i += 1) {\n if (arr1[i] !== arr2[i]) {\n return i;\n }\n }\n return minl;\n }\n\n function normalizeLocale(key) {\n return key ? key.toLowerCase().replace('_', '-') : key;\n }\n\n // pick the locale from the array\n // try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each\n // substring from most specific to least, but move to the next array item if it's a more specific variant than the current root\n function chooseLocale(names) {\n var i = 0,\n j,\n next,\n locale,\n split;\n\n while (i < names.length) {\n split = normalizeLocale(names[i]).split('-');\n j = split.length;\n next = normalizeLocale(names[i + 1]);\n next = next ? next.split('-') : null;\n while (j > 0) {\n locale = loadLocale(split.slice(0, j).join('-'));\n if (locale) {\n return locale;\n }\n if (\n next &&\n next.length >= j &&\n commonPrefix(split, next) >= j - 1\n ) {\n //the next array item is better than a shallower substring of this one\n break;\n }\n j--;\n }\n i++;\n }\n return globalLocale;\n }\n\n function isLocaleNameSane(name) {\n // Prevent names that look like filesystem paths, i.e contain '/' or '\\'\n return name.match('^[^/\\\\\\\\]*$') != null;\n }\n\n function loadLocale(name) {\n var oldLocale = null,\n aliasedRequire;\n // TODO: Find a better way to register and load all the locales in Node\n if (\n locales[name] === undefined &&\n typeof module !== 'undefined' &&\n module &&\n module.exports &&\n isLocaleNameSane(name)\n ) {\n try {\n oldLocale = globalLocale._abbr;\n aliasedRequire = require;\n aliasedRequire('./locale/' + name);\n getSetGlobalLocale(oldLocale);\n } catch (e) {\n // mark as not found to avoid repeating expensive file require call causing high CPU\n // when trying to find en-US, en_US, en-us for every format call\n locales[name] = null; // null means not found\n }\n }\n return locales[name];\n }\n\n // This function will load locale and then set the global locale. If\n // no arguments are passed in, it will simply return the current global\n // locale key.\n function getSetGlobalLocale(key, values) {\n var data;\n if (key) {\n if (isUndefined(values)) {\n data = getLocale(key);\n } else {\n data = defineLocale(key, values);\n }\n\n if (data) {\n // moment.duration._locale = moment._locale = data;\n globalLocale = data;\n } else {\n if (typeof console !== 'undefined' && console.warn) {\n //warn user if arguments are passed but the locale could not be set\n console.warn(\n 'Locale ' + key + ' not found. Did you forget to load it?'\n );\n }\n }\n }\n\n return globalLocale._abbr;\n }\n\n function defineLocale(name, config) {\n if (config !== null) {\n var locale,\n parentConfig = baseConfig;\n config.abbr = name;\n if (locales[name] != null) {\n deprecateSimple(\n 'defineLocaleOverride',\n 'use moment.updateLocale(localeName, config) to change ' +\n 'an existing locale. moment.defineLocale(localeName, ' +\n 'config) should only be used for creating a new locale ' +\n 'See http://momentjs.com/guides/#/warnings/define-locale/ for more info.'\n );\n parentConfig = locales[name]._config;\n } else if (config.parentLocale != null) {\n if (locales[config.parentLocale] != null) {\n parentConfig = locales[config.parentLocale]._config;\n } else {\n locale = loadLocale(config.parentLocale);\n if (locale != null) {\n parentConfig = locale._config;\n } else {\n if (!localeFamilies[config.parentLocale]) {\n localeFamilies[config.parentLocale] = [];\n }\n localeFamilies[config.parentLocale].push({\n name: name,\n config: config,\n });\n return null;\n }\n }\n }\n locales[name] = new Locale(mergeConfigs(parentConfig, config));\n\n if (localeFamilies[name]) {\n localeFamilies[name].forEach(function (x) {\n defineLocale(x.name, x.config);\n });\n }\n\n // backwards compat for now: also set the locale\n // make sure we set the locale AFTER all child locales have been\n // created, so we won't end up with the child locale set.\n getSetGlobalLocale(name);\n\n return locales[name];\n } else {\n // useful for testing\n delete locales[name];\n return null;\n }\n }\n\n function updateLocale(name, config) {\n if (config != null) {\n var locale,\n tmpLocale,\n parentConfig = baseConfig;\n\n if (locales[name] != null && locales[name].parentLocale != null) {\n // Update existing child locale in-place to avoid memory-leaks\n locales[name].set(mergeConfigs(locales[name]._config, config));\n } else {\n // MERGE\n tmpLocale = loadLocale(name);\n if (tmpLocale != null) {\n parentConfig = tmpLocale._config;\n }\n config = mergeConfigs(parentConfig, config);\n if (tmpLocale == null) {\n // updateLocale is called for creating a new locale\n // Set abbr so it will have a name (getters return\n // undefined otherwise).\n config.abbr = name;\n }\n locale = new Locale(config);\n locale.parentLocale = locales[name];\n locales[name] = locale;\n }\n\n // backwards compat for now: also set the locale\n getSetGlobalLocale(name);\n } else {\n // pass null for config to unupdate, useful for tests\n if (locales[name] != null) {\n if (locales[name].parentLocale != null) {\n locales[name] = locales[name].parentLocale;\n if (name === getSetGlobalLocale()) {\n getSetGlobalLocale(name);\n }\n } else if (locales[name] != null) {\n delete locales[name];\n }\n }\n }\n return locales[name];\n }\n\n // returns locale data\n function getLocale(key) {\n var locale;\n\n if (key && key._locale && key._locale._abbr) {\n key = key._locale._abbr;\n }\n\n if (!key) {\n return globalLocale;\n }\n\n if (!isArray(key)) {\n //short-circuit everything else\n locale = loadLocale(key);\n if (locale) {\n return locale;\n }\n key = [key];\n }\n\n return chooseLocale(key);\n }\n\n function listLocales() {\n return keys(locales);\n }\n\n function checkOverflow(m) {\n var overflow,\n a = m._a;\n\n if (a && getParsingFlags(m).overflow === -2) {\n overflow =\n a[MONTH] < 0 || a[MONTH] > 11\n ? MONTH\n : a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH])\n ? DATE\n : a[HOUR] < 0 ||\n a[HOUR] > 24 ||\n (a[HOUR] === 24 &&\n (a[MINUTE] !== 0 ||\n a[SECOND] !== 0 ||\n a[MILLISECOND] !== 0))\n ? HOUR\n : a[MINUTE] < 0 || a[MINUTE] > 59\n ? MINUTE\n : a[SECOND] < 0 || a[SECOND] > 59\n ? SECOND\n : a[MILLISECOND] < 0 || a[MILLISECOND] > 999\n ? MILLISECOND\n : -1;\n\n if (\n getParsingFlags(m)._overflowDayOfYear &&\n (overflow < YEAR || overflow > DATE)\n ) {\n overflow = DATE;\n }\n if (getParsingFlags(m)._overflowWeeks && overflow === -1) {\n overflow = WEEK;\n }\n if (getParsingFlags(m)._overflowWeekday && overflow === -1) {\n overflow = WEEKDAY;\n }\n\n getParsingFlags(m).overflow = overflow;\n }\n\n return m;\n }\n\n // iso 8601 regex\n // 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00)\n var extendedIsoRegex =\n /^\\s*((?:[+-]\\d{6}|\\d{4})-(?:\\d\\d-\\d\\d|W\\d\\d-\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?::\\d\\d(?::\\d\\d(?:[.,]\\d+)?)?)?)([+-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,\n basicIsoRegex =\n /^\\s*((?:[+-]\\d{6}|\\d{4})(?:\\d\\d\\d\\d|W\\d\\d\\d|W\\d\\d|\\d\\d\\d|\\d\\d|))(?:(T| )(\\d\\d(?:\\d\\d(?:\\d\\d(?:[.,]\\d+)?)?)?)([+-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,\n tzRegex = /Z|[+-]\\d\\d(?::?\\d\\d)?/,\n isoDates = [\n ['YYYYYY-MM-DD', /[+-]\\d{6}-\\d\\d-\\d\\d/],\n ['YYYY-MM-DD', /\\d{4}-\\d\\d-\\d\\d/],\n ['GGGG-[W]WW-E', /\\d{4}-W\\d\\d-\\d/],\n ['GGGG-[W]WW', /\\d{4}-W\\d\\d/, false],\n ['YYYY-DDD', /\\d{4}-\\d{3}/],\n ['YYYY-MM', /\\d{4}-\\d\\d/, false],\n ['YYYYYYMMDD', /[+-]\\d{10}/],\n ['YYYYMMDD', /\\d{8}/],\n ['GGGG[W]WWE', /\\d{4}W\\d{3}/],\n ['GGGG[W]WW', /\\d{4}W\\d{2}/, false],\n ['YYYYDDD', /\\d{7}/],\n ['YYYYMM', /\\d{6}/, false],\n ['YYYY', /\\d{4}/, false],\n ],\n // iso time formats and regexes\n isoTimes = [\n ['HH:mm:ss.SSSS', /\\d\\d:\\d\\d:\\d\\d\\.\\d+/],\n ['HH:mm:ss,SSSS', /\\d\\d:\\d\\d:\\d\\d,\\d+/],\n ['HH:mm:ss', /\\d\\d:\\d\\d:\\d\\d/],\n ['HH:mm', /\\d\\d:\\d\\d/],\n ['HHmmss.SSSS', /\\d\\d\\d\\d\\d\\d\\.\\d+/],\n ['HHmmss,SSSS', /\\d\\d\\d\\d\\d\\d,\\d+/],\n ['HHmmss', /\\d\\d\\d\\d\\d\\d/],\n ['HHmm', /\\d\\d\\d\\d/],\n ['HH', /\\d\\d/],\n ],\n aspNetJsonRegex = /^\\/?Date\\((-?\\d+)/i,\n // RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3\n rfc2822 =\n /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\\s)?(\\d{1,2})\\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\s(\\d{2,4})\\s(\\d\\d):(\\d\\d)(?::(\\d\\d))?\\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\\d{4}))$/,\n obsOffsets = {\n UT: 0,\n GMT: 0,\n EDT: -4 * 60,\n EST: -5 * 60,\n CDT: -5 * 60,\n CST: -6 * 60,\n MDT: -6 * 60,\n MST: -7 * 60,\n PDT: -7 * 60,\n PST: -8 * 60,\n };\n\n // date from iso format\n function configFromISO(config) {\n var i,\n l,\n string = config._i,\n match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string),\n allowTime,\n dateFormat,\n timeFormat,\n tzFormat,\n isoDatesLen = isoDates.length,\n isoTimesLen = isoTimes.length;\n\n if (match) {\n getParsingFlags(config).iso = true;\n for (i = 0, l = isoDatesLen; i < l; i++) {\n if (isoDates[i][1].exec(match[1])) {\n dateFormat = isoDates[i][0];\n allowTime = isoDates[i][2] !== false;\n break;\n }\n }\n if (dateFormat == null) {\n config._isValid = false;\n return;\n }\n if (match[3]) {\n for (i = 0, l = isoTimesLen; i < l; i++) {\n if (isoTimes[i][1].exec(match[3])) {\n // match[2] should be 'T' or space\n timeFormat = (match[2] || ' ') + isoTimes[i][0];\n break;\n }\n }\n if (timeFormat == null) {\n config._isValid = false;\n return;\n }\n }\n if (!allowTime && timeFormat != null) {\n config._isValid = false;\n return;\n }\n if (match[4]) {\n if (tzRegex.exec(match[4])) {\n tzFormat = 'Z';\n } else {\n config._isValid = false;\n return;\n }\n }\n config._f = dateFormat + (timeFormat || '') + (tzFormat || '');\n configFromStringAndFormat(config);\n } else {\n config._isValid = false;\n }\n }\n\n function extractFromRFC2822Strings(\n yearStr,\n monthStr,\n dayStr,\n hourStr,\n minuteStr,\n secondStr\n ) {\n var result = [\n untruncateYear(yearStr),\n defaultLocaleMonthsShort.indexOf(monthStr),\n parseInt(dayStr, 10),\n parseInt(hourStr, 10),\n parseInt(minuteStr, 10),\n ];\n\n if (secondStr) {\n result.push(parseInt(secondStr, 10));\n }\n\n return result;\n }\n\n function untruncateYear(yearStr) {\n var year = parseInt(yearStr, 10);\n if (year <= 49) {\n return 2000 + year;\n } else if (year <= 999) {\n return 1900 + year;\n }\n return year;\n }\n\n function preprocessRFC2822(s) {\n // Remove comments and folding whitespace and replace multiple-spaces with a single space\n return s\n .replace(/\\([^()]*\\)|[\\n\\t]/g, ' ')\n .replace(/(\\s\\s+)/g, ' ')\n .replace(/^\\s\\s*/, '')\n .replace(/\\s\\s*$/, '');\n }\n\n function checkWeekday(weekdayStr, parsedInput, config) {\n if (weekdayStr) {\n // TODO: Replace the vanilla JS Date object with an independent day-of-week check.\n var weekdayProvided = defaultLocaleWeekdaysShort.indexOf(weekdayStr),\n weekdayActual = new Date(\n parsedInput[0],\n parsedInput[1],\n parsedInput[2]\n ).getDay();\n if (weekdayProvided !== weekdayActual) {\n getParsingFlags(config).weekdayMismatch = true;\n config._isValid = false;\n return false;\n }\n }\n return true;\n }\n\n function calculateOffset(obsOffset, militaryOffset, numOffset) {\n if (obsOffset) {\n return obsOffsets[obsOffset];\n } else if (militaryOffset) {\n // the only allowed military tz is Z\n return 0;\n } else {\n var hm = parseInt(numOffset, 10),\n m = hm % 100,\n h = (hm - m) / 100;\n return h * 60 + m;\n }\n }\n\n // date and time from ref 2822 format\n function configFromRFC2822(config) {\n var match = rfc2822.exec(preprocessRFC2822(config._i)),\n parsedArray;\n if (match) {\n parsedArray = extractFromRFC2822Strings(\n match[4],\n match[3],\n match[2],\n match[5],\n match[6],\n match[7]\n );\n if (!checkWeekday(match[1], parsedArray, config)) {\n return;\n }\n\n config._a = parsedArray;\n config._tzm = calculateOffset(match[8], match[9], match[10]);\n\n config._d = createUTCDate.apply(null, config._a);\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n\n getParsingFlags(config).rfc2822 = true;\n } else {\n config._isValid = false;\n }\n }\n\n // date from 1) ASP.NET, 2) ISO, 3) RFC 2822 formats, or 4) optional fallback if parsing isn't strict\n function configFromString(config) {\n var matched = aspNetJsonRegex.exec(config._i);\n if (matched !== null) {\n config._d = new Date(+matched[1]);\n return;\n }\n\n configFromISO(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n configFromRFC2822(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n if (config._strict) {\n config._isValid = false;\n } else {\n // Final attempt, use Input Fallback\n hooks.createFromInputFallback(config);\n }\n }\n\n hooks.createFromInputFallback = deprecate(\n 'value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' +\n 'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' +\n 'discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.',\n function (config) {\n config._d = new Date(config._i + (config._useUTC ? ' UTC' : ''));\n }\n );\n\n // Pick the first defined of two or three arguments.\n function defaults(a, b, c) {\n if (a != null) {\n return a;\n }\n if (b != null) {\n return b;\n }\n return c;\n }\n\n function currentDateArray(config) {\n // hooks is actually the exported moment object\n var nowValue = new Date(hooks.now());\n if (config._useUTC) {\n return [\n nowValue.getUTCFullYear(),\n nowValue.getUTCMonth(),\n nowValue.getUTCDate(),\n ];\n }\n return [nowValue.getFullYear(), nowValue.getMonth(), nowValue.getDate()];\n }\n\n // convert an array to a date.\n // the array should mirror the parameters below\n // note: all values past the year are optional and will default to the lowest possible value.\n // [year, month, day , hour, minute, second, millisecond]\n function configFromArray(config) {\n var i,\n date,\n input = [],\n currentDate,\n expectedWeekday,\n yearToUse;\n\n if (config._d) {\n return;\n }\n\n currentDate = currentDateArray(config);\n\n //compute day of the year from weeks and weekdays\n if (config._w && config._a[DATE] == null && config._a[MONTH] == null) {\n dayOfYearFromWeekInfo(config);\n }\n\n //if the day of the year is set, figure out what it is\n if (config._dayOfYear != null) {\n yearToUse = defaults(config._a[YEAR], currentDate[YEAR]);\n\n if (\n config._dayOfYear > daysInYear(yearToUse) ||\n config._dayOfYear === 0\n ) {\n getParsingFlags(config)._overflowDayOfYear = true;\n }\n\n date = createUTCDate(yearToUse, 0, config._dayOfYear);\n config._a[MONTH] = date.getUTCMonth();\n config._a[DATE] = date.getUTCDate();\n }\n\n // Default to current date.\n // * if no year, month, day of month are given, default to today\n // * if day of month is given, default month and year\n // * if month is given, default only year\n // * if year is given, don't default anything\n for (i = 0; i < 3 && config._a[i] == null; ++i) {\n config._a[i] = input[i] = currentDate[i];\n }\n\n // Zero out whatever was not defaulted, including time\n for (; i < 7; i++) {\n config._a[i] = input[i] =\n config._a[i] == null ? (i === 2 ? 1 : 0) : config._a[i];\n }\n\n // Check for 24:00:00.000\n if (\n config._a[HOUR] === 24 &&\n config._a[MINUTE] === 0 &&\n config._a[SECOND] === 0 &&\n config._a[MILLISECOND] === 0\n ) {\n config._nextDay = true;\n config._a[HOUR] = 0;\n }\n\n config._d = (config._useUTC ? createUTCDate : createDate).apply(\n null,\n input\n );\n expectedWeekday = config._useUTC\n ? config._d.getUTCDay()\n : config._d.getDay();\n\n // Apply timezone offset from input. The actual utcOffset can be changed\n // with parseZone.\n if (config._tzm != null) {\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n }\n\n if (config._nextDay) {\n config._a[HOUR] = 24;\n }\n\n // check for mismatching day of week\n if (\n config._w &&\n typeof config._w.d !== 'undefined' &&\n config._w.d !== expectedWeekday\n ) {\n getParsingFlags(config).weekdayMismatch = true;\n }\n }\n\n function dayOfYearFromWeekInfo(config) {\n var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow, curWeek;\n\n w = config._w;\n if (w.GG != null || w.W != null || w.E != null) {\n dow = 1;\n doy = 4;\n\n // TODO: We need to take the current isoWeekYear, but that depends on\n // how we interpret now (local, utc, fixed offset). So create\n // a now version of current config (take local/utc/offset flags, and\n // create now).\n weekYear = defaults(\n w.GG,\n config._a[YEAR],\n weekOfYear(createLocal(), 1, 4).year\n );\n week = defaults(w.W, 1);\n weekday = defaults(w.E, 1);\n if (weekday < 1 || weekday > 7) {\n weekdayOverflow = true;\n }\n } else {\n dow = config._locale._week.dow;\n doy = config._locale._week.doy;\n\n curWeek = weekOfYear(createLocal(), dow, doy);\n\n weekYear = defaults(w.gg, config._a[YEAR], curWeek.year);\n\n // Default to current week.\n week = defaults(w.w, curWeek.week);\n\n if (w.d != null) {\n // weekday -- low day numbers are considered next week\n weekday = w.d;\n if (weekday < 0 || weekday > 6) {\n weekdayOverflow = true;\n }\n } else if (w.e != null) {\n // local weekday -- counting starts from beginning of week\n weekday = w.e + dow;\n if (w.e < 0 || w.e > 6) {\n weekdayOverflow = true;\n }\n } else {\n // default to beginning of week\n weekday = dow;\n }\n }\n if (week < 1 || week > weeksInYear(weekYear, dow, doy)) {\n getParsingFlags(config)._overflowWeeks = true;\n } else if (weekdayOverflow != null) {\n getParsingFlags(config)._overflowWeekday = true;\n } else {\n temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy);\n config._a[YEAR] = temp.year;\n config._dayOfYear = temp.dayOfYear;\n }\n }\n\n // constant that refers to the ISO standard\n hooks.ISO_8601 = function () {};\n\n // constant that refers to the RFC 2822 form\n hooks.RFC_2822 = function () {};\n\n // date from string and format string\n function configFromStringAndFormat(config) {\n // TODO: Move this to another part of the creation flow to prevent circular deps\n if (config._f === hooks.ISO_8601) {\n configFromISO(config);\n return;\n }\n if (config._f === hooks.RFC_2822) {\n configFromRFC2822(config);\n return;\n }\n config._a = [];\n getParsingFlags(config).empty = true;\n\n // This array is used to make a Date, either with `new Date` or `Date.UTC`\n var string = '' + config._i,\n i,\n parsedInput,\n tokens,\n token,\n skipped,\n stringLength = string.length,\n totalParsedInputLength = 0,\n era,\n tokenLen;\n\n tokens =\n expandFormat(config._f, config._locale).match(formattingTokens) || [];\n tokenLen = tokens.length;\n for (i = 0; i < tokenLen; i++) {\n token = tokens[i];\n parsedInput = (string.match(getParseRegexForToken(token, config)) ||\n [])[0];\n if (parsedInput) {\n skipped = string.substr(0, string.indexOf(parsedInput));\n if (skipped.length > 0) {\n getParsingFlags(config).unusedInput.push(skipped);\n }\n string = string.slice(\n string.indexOf(parsedInput) + parsedInput.length\n );\n totalParsedInputLength += parsedInput.length;\n }\n // don't parse if it's not a known token\n if (formatTokenFunctions[token]) {\n if (parsedInput) {\n getParsingFlags(config).empty = false;\n } else {\n getParsingFlags(config).unusedTokens.push(token);\n }\n addTimeToArrayFromToken(token, parsedInput, config);\n } else if (config._strict && !parsedInput) {\n getParsingFlags(config).unusedTokens.push(token);\n }\n }\n\n // add remaining unparsed input length to the string\n getParsingFlags(config).charsLeftOver =\n stringLength - totalParsedInputLength;\n if (string.length > 0) {\n getParsingFlags(config).unusedInput.push(string);\n }\n\n // clear _12h flag if hour is <= 12\n if (\n config._a[HOUR] <= 12 &&\n getParsingFlags(config).bigHour === true &&\n config._a[HOUR] > 0\n ) {\n getParsingFlags(config).bigHour = undefined;\n }\n\n getParsingFlags(config).parsedDateParts = config._a.slice(0);\n getParsingFlags(config).meridiem = config._meridiem;\n // handle meridiem\n config._a[HOUR] = meridiemFixWrap(\n config._locale,\n config._a[HOUR],\n config._meridiem\n );\n\n // handle era\n era = getParsingFlags(config).era;\n if (era !== null) {\n config._a[YEAR] = config._locale.erasConvertYear(era, config._a[YEAR]);\n }\n\n configFromArray(config);\n checkOverflow(config);\n }\n\n function meridiemFixWrap(locale, hour, meridiem) {\n var isPm;\n\n if (meridiem == null) {\n // nothing to do\n return hour;\n }\n if (locale.meridiemHour != null) {\n return locale.meridiemHour(hour, meridiem);\n } else if (locale.isPM != null) {\n // Fallback\n isPm = locale.isPM(meridiem);\n if (isPm && hour < 12) {\n hour += 12;\n }\n if (!isPm && hour === 12) {\n hour = 0;\n }\n return hour;\n } else {\n // this is not supposed to happen\n return hour;\n }\n }\n\n // date from string and array of format strings\n function configFromStringAndArray(config) {\n var tempConfig,\n bestMoment,\n scoreToBeat,\n i,\n currentScore,\n validFormatFound,\n bestFormatIsValid = false,\n configfLen = config._f.length;\n\n if (configfLen === 0) {\n getParsingFlags(config).invalidFormat = true;\n config._d = new Date(NaN);\n return;\n }\n\n for (i = 0; i < configfLen; i++) {\n currentScore = 0;\n validFormatFound = false;\n tempConfig = copyConfig({}, config);\n if (config._useUTC != null) {\n tempConfig._useUTC = config._useUTC;\n }\n tempConfig._f = config._f[i];\n configFromStringAndFormat(tempConfig);\n\n if (isValid(tempConfig)) {\n validFormatFound = true;\n }\n\n // if there is any input that was not parsed add a penalty for that format\n currentScore += getParsingFlags(tempConfig).charsLeftOver;\n\n //or tokens\n currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10;\n\n getParsingFlags(tempConfig).score = currentScore;\n\n if (!bestFormatIsValid) {\n if (\n scoreToBeat == null ||\n currentScore < scoreToBeat ||\n validFormatFound\n ) {\n scoreToBeat = currentScore;\n bestMoment = tempConfig;\n if (validFormatFound) {\n bestFormatIsValid = true;\n }\n }\n } else {\n if (currentScore < scoreToBeat) {\n scoreToBeat = currentScore;\n bestMoment = tempConfig;\n }\n }\n }\n\n extend(config, bestMoment || tempConfig);\n }\n\n function configFromObject(config) {\n if (config._d) {\n return;\n }\n\n var i = normalizeObjectUnits(config._i),\n dayOrDate = i.day === undefined ? i.date : i.day;\n config._a = map(\n [i.year, i.month, dayOrDate, i.hour, i.minute, i.second, i.millisecond],\n function (obj) {\n return obj && parseInt(obj, 10);\n }\n );\n\n configFromArray(config);\n }\n\n function createFromConfig(config) {\n var res = new Moment(checkOverflow(prepareConfig(config)));\n if (res._nextDay) {\n // Adding is smart enough around DST\n res.add(1, 'd');\n res._nextDay = undefined;\n }\n\n return res;\n }\n\n function prepareConfig(config) {\n var input = config._i,\n format = config._f;\n\n config._locale = config._locale || getLocale(config._l);\n\n if (input === null || (format === undefined && input === '')) {\n return createInvalid({ nullInput: true });\n }\n\n if (typeof input === 'string') {\n config._i = input = config._locale.preparse(input);\n }\n\n if (isMoment(input)) {\n return new Moment(checkOverflow(input));\n } else if (isDate(input)) {\n config._d = input;\n } else if (isArray(format)) {\n configFromStringAndArray(config);\n } else if (format) {\n configFromStringAndFormat(config);\n } else {\n configFromInput(config);\n }\n\n if (!isValid(config)) {\n config._d = null;\n }\n\n return config;\n }\n\n function configFromInput(config) {\n var input = config._i;\n if (isUndefined(input)) {\n config._d = new Date(hooks.now());\n } else if (isDate(input)) {\n config._d = new Date(input.valueOf());\n } else if (typeof input === 'string') {\n configFromString(config);\n } else if (isArray(input)) {\n config._a = map(input.slice(0), function (obj) {\n return parseInt(obj, 10);\n });\n configFromArray(config);\n } else if (isObject(input)) {\n configFromObject(config);\n } else if (isNumber(input)) {\n // from milliseconds\n config._d = new Date(input);\n } else {\n hooks.createFromInputFallback(config);\n }\n }\n\n function createLocalOrUTC(input, format, locale, strict, isUTC) {\n var c = {};\n\n if (format === true || format === false) {\n strict = format;\n format = undefined;\n }\n\n if (locale === true || locale === false) {\n strict = locale;\n locale = undefined;\n }\n\n if (\n (isObject(input) && isObjectEmpty(input)) ||\n (isArray(input) && input.length === 0)\n ) {\n input = undefined;\n }\n // object construction must be done this way.\n // https://github.com/moment/moment/issues/1423\n c._isAMomentObject = true;\n c._useUTC = c._isUTC = isUTC;\n c._l = locale;\n c._i = input;\n c._f = format;\n c._strict = strict;\n\n return createFromConfig(c);\n }\n\n function createLocal(input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, false);\n }\n\n var prototypeMin = deprecate(\n 'moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other < this ? this : other;\n } else {\n return createInvalid();\n }\n }\n ),\n prototypeMax = deprecate(\n 'moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other > this ? this : other;\n } else {\n return createInvalid();\n }\n }\n );\n\n // Pick a moment m from moments so that m[fn](other) is true for all\n // other. This relies on the function fn to be transitive.\n //\n // moments should either be an array of moment objects or an array, whose\n // first element is an array of moment objects.\n function pickBy(fn, moments) {\n var res, i;\n if (moments.length === 1 && isArray(moments[0])) {\n moments = moments[0];\n }\n if (!moments.length) {\n return createLocal();\n }\n res = moments[0];\n for (i = 1; i < moments.length; ++i) {\n if (!moments[i].isValid() || moments[i][fn](res)) {\n res = moments[i];\n }\n }\n return res;\n }\n\n // TODO: Use [].sort instead?\n function min() {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isBefore', args);\n }\n\n function max() {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isAfter', args);\n }\n\n var now = function () {\n return Date.now ? Date.now() : +new Date();\n };\n\n var ordering = [\n 'year',\n 'quarter',\n 'month',\n 'week',\n 'day',\n 'hour',\n 'minute',\n 'second',\n 'millisecond',\n ];\n\n function isDurationValid(m) {\n var key,\n unitHasDecimal = false,\n i,\n orderLen = ordering.length;\n for (key in m) {\n if (\n hasOwnProp(m, key) &&\n !(\n indexOf.call(ordering, key) !== -1 &&\n (m[key] == null || !isNaN(m[key]))\n )\n ) {\n return false;\n }\n }\n\n for (i = 0; i < orderLen; ++i) {\n if (m[ordering[i]]) {\n if (unitHasDecimal) {\n return false; // only allow non-integers for smallest unit\n }\n if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) {\n unitHasDecimal = true;\n }\n }\n }\n\n return true;\n }\n\n function isValid$1() {\n return this._isValid;\n }\n\n function createInvalid$1() {\n return createDuration(NaN);\n }\n\n function Duration(duration) {\n var normalizedInput = normalizeObjectUnits(duration),\n years = normalizedInput.year || 0,\n quarters = normalizedInput.quarter || 0,\n months = normalizedInput.month || 0,\n weeks = normalizedInput.week || normalizedInput.isoWeek || 0,\n days = normalizedInput.day || 0,\n hours = normalizedInput.hour || 0,\n minutes = normalizedInput.minute || 0,\n seconds = normalizedInput.second || 0,\n milliseconds = normalizedInput.millisecond || 0;\n\n this._isValid = isDurationValid(normalizedInput);\n\n // representation for dateAddRemove\n this._milliseconds =\n +milliseconds +\n seconds * 1e3 + // 1000\n minutes * 6e4 + // 1000 * 60\n hours * 1000 * 60 * 60; //using 1000 * 60 * 60 instead of 36e5 to avoid floating point rounding errors https://github.com/moment/moment/issues/2978\n // Because of dateAddRemove treats 24 hours as different from a\n // day when working around DST, we need to store them separately\n this._days = +days + weeks * 7;\n // It is impossible to translate months into days without knowing\n // which months you are are talking about, so we have to store\n // it separately.\n this._months = +months + quarters * 3 + years * 12;\n\n this._data = {};\n\n this._locale = getLocale();\n\n this._bubble();\n }\n\n function isDuration(obj) {\n return obj instanceof Duration;\n }\n\n function absRound(number) {\n if (number < 0) {\n return Math.round(-1 * number) * -1;\n } else {\n return Math.round(number);\n }\n }\n\n // compare two arrays, return the number of differences\n function compareArrays(array1, array2, dontConvert) {\n var len = Math.min(array1.length, array2.length),\n lengthDiff = Math.abs(array1.length - array2.length),\n diffs = 0,\n i;\n for (i = 0; i < len; i++) {\n if (\n (dontConvert && array1[i] !== array2[i]) ||\n (!dontConvert && toInt(array1[i]) !== toInt(array2[i]))\n ) {\n diffs++;\n }\n }\n return diffs + lengthDiff;\n }\n\n // FORMATTING\n\n function offset(token, separator) {\n addFormatToken(token, 0, 0, function () {\n var offset = this.utcOffset(),\n sign = '+';\n if (offset < 0) {\n offset = -offset;\n sign = '-';\n }\n return (\n sign +\n zeroFill(~~(offset / 60), 2) +\n separator +\n zeroFill(~~offset % 60, 2)\n );\n });\n }\n\n offset('Z', ':');\n offset('ZZ', '');\n\n // PARSING\n\n addRegexToken('Z', matchShortOffset);\n addRegexToken('ZZ', matchShortOffset);\n addParseToken(['Z', 'ZZ'], function (input, array, config) {\n config._useUTC = true;\n config._tzm = offsetFromString(matchShortOffset, input);\n });\n\n // HELPERS\n\n // timezone chunker\n // '+10:00' > ['10', '00']\n // '-1530' > ['-15', '30']\n var chunkOffset = /([\\+\\-]|\\d\\d)/gi;\n\n function offsetFromString(matcher, string) {\n var matches = (string || '').match(matcher),\n chunk,\n parts,\n minutes;\n\n if (matches === null) {\n return null;\n }\n\n chunk = matches[matches.length - 1] || [];\n parts = (chunk + '').match(chunkOffset) || ['-', 0, 0];\n minutes = +(parts[1] * 60) + toInt(parts[2]);\n\n return minutes === 0 ? 0 : parts[0] === '+' ? minutes : -minutes;\n }\n\n // Return a moment from input, that is local/utc/zone equivalent to model.\n function cloneWithOffset(input, model) {\n var res, diff;\n if (model._isUTC) {\n res = model.clone();\n diff =\n (isMoment(input) || isDate(input)\n ? input.valueOf()\n : createLocal(input).valueOf()) - res.valueOf();\n // Use low-level api, because this fn is low-level api.\n res._d.setTime(res._d.valueOf() + diff);\n hooks.updateOffset(res, false);\n return res;\n } else {\n return createLocal(input).local();\n }\n }\n\n function getDateOffset(m) {\n // On Firefox.24 Date#getTimezoneOffset returns a floating point.\n // https://github.com/moment/moment/pull/1871\n return -Math.round(m._d.getTimezoneOffset());\n }\n\n // HOOKS\n\n // This function will be called whenever a moment is mutated.\n // It is intended to keep the offset in sync with the timezone.\n hooks.updateOffset = function () {};\n\n // MOMENTS\n\n // keepLocalTime = true means only change the timezone, without\n // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]-->\n // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset\n // +0200, so we adjust the time as needed, to be valid.\n //\n // Keeping the time actually adds/subtracts (one hour)\n // from the actual represented time. That is why we call updateOffset\n // a second time. In case it wants us to change the offset again\n // _changeInProgress == true case, then we have to adjust, because\n // there is no such time in the given timezone.\n function getSetOffset(input, keepLocalTime, keepMinutes) {\n var offset = this._offset || 0,\n localAdjust;\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n if (input != null) {\n if (typeof input === 'string') {\n input = offsetFromString(matchShortOffset, input);\n if (input === null) {\n return this;\n }\n } else if (Math.abs(input) < 16 && !keepMinutes) {\n input = input * 60;\n }\n if (!this._isUTC && keepLocalTime) {\n localAdjust = getDateOffset(this);\n }\n this._offset = input;\n this._isUTC = true;\n if (localAdjust != null) {\n this.add(localAdjust, 'm');\n }\n if (offset !== input) {\n if (!keepLocalTime || this._changeInProgress) {\n addSubtract(\n this,\n createDuration(input - offset, 'm'),\n 1,\n false\n );\n } else if (!this._changeInProgress) {\n this._changeInProgress = true;\n hooks.updateOffset(this, true);\n this._changeInProgress = null;\n }\n }\n return this;\n } else {\n return this._isUTC ? offset : getDateOffset(this);\n }\n }\n\n function getSetZone(input, keepLocalTime) {\n if (input != null) {\n if (typeof input !== 'string') {\n input = -input;\n }\n\n this.utcOffset(input, keepLocalTime);\n\n return this;\n } else {\n return -this.utcOffset();\n }\n }\n\n function setOffsetToUTC(keepLocalTime) {\n return this.utcOffset(0, keepLocalTime);\n }\n\n function setOffsetToLocal(keepLocalTime) {\n if (this._isUTC) {\n this.utcOffset(0, keepLocalTime);\n this._isUTC = false;\n\n if (keepLocalTime) {\n this.subtract(getDateOffset(this), 'm');\n }\n }\n return this;\n }\n\n function setOffsetToParsedOffset() {\n if (this._tzm != null) {\n this.utcOffset(this._tzm, false, true);\n } else if (typeof this._i === 'string') {\n var tZone = offsetFromString(matchOffset, this._i);\n if (tZone != null) {\n this.utcOffset(tZone);\n } else {\n this.utcOffset(0, true);\n }\n }\n return this;\n }\n\n function hasAlignedHourOffset(input) {\n if (!this.isValid()) {\n return false;\n }\n input = input ? createLocal(input).utcOffset() : 0;\n\n return (this.utcOffset() - input) % 60 === 0;\n }\n\n function isDaylightSavingTime() {\n return (\n this.utcOffset() > this.clone().month(0).utcOffset() ||\n this.utcOffset() > this.clone().month(5).utcOffset()\n );\n }\n\n function isDaylightSavingTimeShifted() {\n if (!isUndefined(this._isDSTShifted)) {\n return this._isDSTShifted;\n }\n\n var c = {},\n other;\n\n copyConfig(c, this);\n c = prepareConfig(c);\n\n if (c._a) {\n other = c._isUTC ? createUTC(c._a) : createLocal(c._a);\n this._isDSTShifted =\n this.isValid() && compareArrays(c._a, other.toArray()) > 0;\n } else {\n this._isDSTShifted = false;\n }\n\n return this._isDSTShifted;\n }\n\n function isLocal() {\n return this.isValid() ? !this._isUTC : false;\n }\n\n function isUtcOffset() {\n return this.isValid() ? this._isUTC : false;\n }\n\n function isUtc() {\n return this.isValid() ? this._isUTC && this._offset === 0 : false;\n }\n\n // ASP.NET json date format regex\n var aspNetRegex = /^(-|\\+)?(?:(\\d*)[. ])?(\\d+):(\\d+)(?::(\\d+)(\\.\\d*)?)?$/,\n // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html\n // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere\n // and further modified to allow for strings containing both week and day\n isoRegex =\n /^(-|\\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;\n\n function createDuration(input, key) {\n var duration = input,\n // matching against regexp is expensive, do it on demand\n match = null,\n sign,\n ret,\n diffRes;\n\n if (isDuration(input)) {\n duration = {\n ms: input._milliseconds,\n d: input._days,\n M: input._months,\n };\n } else if (isNumber(input) || !isNaN(+input)) {\n duration = {};\n if (key) {\n duration[key] = +input;\n } else {\n duration.milliseconds = +input;\n }\n } else if ((match = aspNetRegex.exec(input))) {\n sign = match[1] === '-' ? -1 : 1;\n duration = {\n y: 0,\n d: toInt(match[DATE]) * sign,\n h: toInt(match[HOUR]) * sign,\n m: toInt(match[MINUTE]) * sign,\n s: toInt(match[SECOND]) * sign,\n ms: toInt(absRound(match[MILLISECOND] * 1000)) * sign, // the millisecond decimal point is included in the match\n };\n } else if ((match = isoRegex.exec(input))) {\n sign = match[1] === '-' ? -1 : 1;\n duration = {\n y: parseIso(match[2], sign),\n M: parseIso(match[3], sign),\n w: parseIso(match[4], sign),\n d: parseIso(match[5], sign),\n h: parseIso(match[6], sign),\n m: parseIso(match[7], sign),\n s: parseIso(match[8], sign),\n };\n } else if (duration == null) {\n // checks for null or undefined\n duration = {};\n } else if (\n typeof duration === 'object' &&\n ('from' in duration || 'to' in duration)\n ) {\n diffRes = momentsDifference(\n createLocal(duration.from),\n createLocal(duration.to)\n );\n\n duration = {};\n duration.ms = diffRes.milliseconds;\n duration.M = diffRes.months;\n }\n\n ret = new Duration(duration);\n\n if (isDuration(input) && hasOwnProp(input, '_locale')) {\n ret._locale = input._locale;\n }\n\n if (isDuration(input) && hasOwnProp(input, '_isValid')) {\n ret._isValid = input._isValid;\n }\n\n return ret;\n }\n\n createDuration.fn = Duration.prototype;\n createDuration.invalid = createInvalid$1;\n\n function parseIso(inp, sign) {\n // We'd normally use ~~inp for this, but unfortunately it also\n // converts floats to ints.\n // inp may be undefined, so careful calling replace on it.\n var res = inp && parseFloat(inp.replace(',', '.'));\n // apply sign while we're at it\n return (isNaN(res) ? 0 : res) * sign;\n }\n\n function positiveMomentsDifference(base, other) {\n var res = {};\n\n res.months =\n other.month() - base.month() + (other.year() - base.year()) * 12;\n if (base.clone().add(res.months, 'M').isAfter(other)) {\n --res.months;\n }\n\n res.milliseconds = +other - +base.clone().add(res.months, 'M');\n\n return res;\n }\n\n function momentsDifference(base, other) {\n var res;\n if (!(base.isValid() && other.isValid())) {\n return { milliseconds: 0, months: 0 };\n }\n\n other = cloneWithOffset(other, base);\n if (base.isBefore(other)) {\n res = positiveMomentsDifference(base, other);\n } else {\n res = positiveMomentsDifference(other, base);\n res.milliseconds = -res.milliseconds;\n res.months = -res.months;\n }\n\n return res;\n }\n\n // TODO: remove 'name' arg after deprecation is removed\n function createAdder(direction, name) {\n return function (val, period) {\n var dur, tmp;\n //invert the arguments, but complain about it\n if (period !== null && !isNaN(+period)) {\n deprecateSimple(\n name,\n 'moment().' +\n name +\n '(period, number) is deprecated. Please use moment().' +\n name +\n '(number, period). ' +\n 'See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.'\n );\n tmp = val;\n val = period;\n period = tmp;\n }\n\n dur = createDuration(val, period);\n addSubtract(this, dur, direction);\n return this;\n };\n }\n\n function addSubtract(mom, duration, isAdding, updateOffset) {\n var milliseconds = duration._milliseconds,\n days = absRound(duration._days),\n months = absRound(duration._months);\n\n if (!mom.isValid()) {\n // No op\n return;\n }\n\n updateOffset = updateOffset == null ? true : updateOffset;\n\n if (months) {\n setMonth(mom, get(mom, 'Month') + months * isAdding);\n }\n if (days) {\n set$1(mom, 'Date', get(mom, 'Date') + days * isAdding);\n }\n if (milliseconds) {\n mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding);\n }\n if (updateOffset) {\n hooks.updateOffset(mom, days || months);\n }\n }\n\n var add = createAdder(1, 'add'),\n subtract = createAdder(-1, 'subtract');\n\n function isString(input) {\n return typeof input === 'string' || input instanceof String;\n }\n\n // type MomentInput = Moment | Date | string | number | (number | string)[] | MomentInputObject | void; // null | undefined\n function isMomentInput(input) {\n return (\n isMoment(input) ||\n isDate(input) ||\n isString(input) ||\n isNumber(input) ||\n isNumberOrStringArray(input) ||\n isMomentInputObject(input) ||\n input === null ||\n input === undefined\n );\n }\n\n function isMomentInputObject(input) {\n var objectTest = isObject(input) && !isObjectEmpty(input),\n propertyTest = false,\n properties = [\n 'years',\n 'year',\n 'y',\n 'months',\n 'month',\n 'M',\n 'days',\n 'day',\n 'd',\n 'dates',\n 'date',\n 'D',\n 'hours',\n 'hour',\n 'h',\n 'minutes',\n 'minute',\n 'm',\n 'seconds',\n 'second',\n 's',\n 'milliseconds',\n 'millisecond',\n 'ms',\n ],\n i,\n property,\n propertyLen = properties.length;\n\n for (i = 0; i < propertyLen; i += 1) {\n property = properties[i];\n propertyTest = propertyTest || hasOwnProp(input, property);\n }\n\n return objectTest && propertyTest;\n }\n\n function isNumberOrStringArray(input) {\n var arrayTest = isArray(input),\n dataTypeTest = false;\n if (arrayTest) {\n dataTypeTest =\n input.filter(function (item) {\n return !isNumber(item) && isString(input);\n }).length === 0;\n }\n return arrayTest && dataTypeTest;\n }\n\n function isCalendarSpec(input) {\n var objectTest = isObject(input) && !isObjectEmpty(input),\n propertyTest = false,\n properties = [\n 'sameDay',\n 'nextDay',\n 'lastDay',\n 'nextWeek',\n 'lastWeek',\n 'sameElse',\n ],\n i,\n property;\n\n for (i = 0; i < properties.length; i += 1) {\n property = properties[i];\n propertyTest = propertyTest || hasOwnProp(input, property);\n }\n\n return objectTest && propertyTest;\n }\n\n function getCalendarFormat(myMoment, now) {\n var diff = myMoment.diff(now, 'days', true);\n return diff < -6\n ? 'sameElse'\n : diff < -1\n ? 'lastWeek'\n : diff < 0\n ? 'lastDay'\n : diff < 1\n ? 'sameDay'\n : diff < 2\n ? 'nextDay'\n : diff < 7\n ? 'nextWeek'\n : 'sameElse';\n }\n\n function calendar$1(time, formats) {\n // Support for single parameter, formats only overload to the calendar function\n if (arguments.length === 1) {\n if (!arguments[0]) {\n time = undefined;\n formats = undefined;\n } else if (isMomentInput(arguments[0])) {\n time = arguments[0];\n formats = undefined;\n } else if (isCalendarSpec(arguments[0])) {\n formats = arguments[0];\n time = undefined;\n }\n }\n // We want to compare the start of today, vs this.\n // Getting start-of-today depends on whether we're local/utc/offset or not.\n var now = time || createLocal(),\n sod = cloneWithOffset(now, this).startOf('day'),\n format = hooks.calendarFormat(this, sod) || 'sameElse',\n output =\n formats &&\n (isFunction(formats[format])\n ? formats[format].call(this, now)\n : formats[format]);\n\n return this.format(\n output || this.localeData().calendar(format, this, createLocal(now))\n );\n }\n\n function clone() {\n return new Moment(this);\n }\n\n function isAfter(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() > localInput.valueOf();\n } else {\n return localInput.valueOf() < this.clone().startOf(units).valueOf();\n }\n }\n\n function isBefore(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() < localInput.valueOf();\n } else {\n return this.clone().endOf(units).valueOf() < localInput.valueOf();\n }\n }\n\n function isBetween(from, to, units, inclusivity) {\n var localFrom = isMoment(from) ? from : createLocal(from),\n localTo = isMoment(to) ? to : createLocal(to);\n if (!(this.isValid() && localFrom.isValid() && localTo.isValid())) {\n return false;\n }\n inclusivity = inclusivity || '()';\n return (\n (inclusivity[0] === '('\n ? this.isAfter(localFrom, units)\n : !this.isBefore(localFrom, units)) &&\n (inclusivity[1] === ')'\n ? this.isBefore(localTo, units)\n : !this.isAfter(localTo, units))\n );\n }\n\n function isSame(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input),\n inputMs;\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() === localInput.valueOf();\n } else {\n inputMs = localInput.valueOf();\n return (\n this.clone().startOf(units).valueOf() <= inputMs &&\n inputMs <= this.clone().endOf(units).valueOf()\n );\n }\n }\n\n function isSameOrAfter(input, units) {\n return this.isSame(input, units) || this.isAfter(input, units);\n }\n\n function isSameOrBefore(input, units) {\n return this.isSame(input, units) || this.isBefore(input, units);\n }\n\n function diff(input, units, asFloat) {\n var that, zoneDelta, output;\n\n if (!this.isValid()) {\n return NaN;\n }\n\n that = cloneWithOffset(input, this);\n\n if (!that.isValid()) {\n return NaN;\n }\n\n zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4;\n\n units = normalizeUnits(units);\n\n switch (units) {\n case 'year':\n output = monthDiff(this, that) / 12;\n break;\n case 'month':\n output = monthDiff(this, that);\n break;\n case 'quarter':\n output = monthDiff(this, that) / 3;\n break;\n case 'second':\n output = (this - that) / 1e3;\n break; // 1000\n case 'minute':\n output = (this - that) / 6e4;\n break; // 1000 * 60\n case 'hour':\n output = (this - that) / 36e5;\n break; // 1000 * 60 * 60\n case 'day':\n output = (this - that - zoneDelta) / 864e5;\n break; // 1000 * 60 * 60 * 24, negate dst\n case 'week':\n output = (this - that - zoneDelta) / 6048e5;\n break; // 1000 * 60 * 60 * 24 * 7, negate dst\n default:\n output = this - that;\n }\n\n return asFloat ? output : absFloor(output);\n }\n\n function monthDiff(a, b) {\n if (a.date() < b.date()) {\n // end-of-month calculations work correct when the start month has more\n // days than the end month.\n return -monthDiff(b, a);\n }\n // difference in months\n var wholeMonthDiff = (b.year() - a.year()) * 12 + (b.month() - a.month()),\n // b is in (anchor - 1 month, anchor + 1 month)\n anchor = a.clone().add(wholeMonthDiff, 'months'),\n anchor2,\n adjust;\n\n if (b - anchor < 0) {\n anchor2 = a.clone().add(wholeMonthDiff - 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor - anchor2);\n } else {\n anchor2 = a.clone().add(wholeMonthDiff + 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor2 - anchor);\n }\n\n //check for negative zero, return zero if negative zero\n return -(wholeMonthDiff + adjust) || 0;\n }\n\n hooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ';\n hooks.defaultFormatUtc = 'YYYY-MM-DDTHH:mm:ss[Z]';\n\n function toString() {\n return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');\n }\n\n function toISOString(keepOffset) {\n if (!this.isValid()) {\n return null;\n }\n var utc = keepOffset !== true,\n m = utc ? this.clone().utc() : this;\n if (m.year() < 0 || m.year() > 9999) {\n return formatMoment(\n m,\n utc\n ? 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]'\n : 'YYYYYY-MM-DD[T]HH:mm:ss.SSSZ'\n );\n }\n if (isFunction(Date.prototype.toISOString)) {\n // native implementation is ~50x faster, use it when we can\n if (utc) {\n return this.toDate().toISOString();\n } else {\n return new Date(this.valueOf() + this.utcOffset() * 60 * 1000)\n .toISOString()\n .replace('Z', formatMoment(m, 'Z'));\n }\n }\n return formatMoment(\n m,\n utc ? 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYY-MM-DD[T]HH:mm:ss.SSSZ'\n );\n }\n\n /**\n * Return a human readable representation of a moment that can\n * also be evaluated to get a new moment which is the same\n *\n * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects\n */\n function inspect() {\n if (!this.isValid()) {\n return 'moment.invalid(/* ' + this._i + ' */)';\n }\n var func = 'moment',\n zone = '',\n prefix,\n year,\n datetime,\n suffix;\n if (!this.isLocal()) {\n func = this.utcOffset() === 0 ? 'moment.utc' : 'moment.parseZone';\n zone = 'Z';\n }\n prefix = '[' + func + '(\"]';\n year = 0 <= this.year() && this.year() <= 9999 ? 'YYYY' : 'YYYYYY';\n datetime = '-MM-DD[T]HH:mm:ss.SSS';\n suffix = zone + '[\")]';\n\n return this.format(prefix + year + datetime + suffix);\n }\n\n function format(inputString) {\n if (!inputString) {\n inputString = this.isUtc()\n ? hooks.defaultFormatUtc\n : hooks.defaultFormat;\n }\n var output = formatMoment(this, inputString);\n return this.localeData().postformat(output);\n }\n\n function from(time, withoutSuffix) {\n if (\n this.isValid() &&\n ((isMoment(time) && time.isValid()) || createLocal(time).isValid())\n ) {\n return createDuration({ to: this, from: time })\n .locale(this.locale())\n .humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n }\n\n function fromNow(withoutSuffix) {\n return this.from(createLocal(), withoutSuffix);\n }\n\n function to(time, withoutSuffix) {\n if (\n this.isValid() &&\n ((isMoment(time) && time.isValid()) || createLocal(time).isValid())\n ) {\n return createDuration({ from: this, to: time })\n .locale(this.locale())\n .humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n }\n\n function toNow(withoutSuffix) {\n return this.to(createLocal(), withoutSuffix);\n }\n\n // If passed a locale key, it will set the locale for this\n // instance. Otherwise, it will return the locale configuration\n // variables for this instance.\n function locale(key) {\n var newLocaleData;\n\n if (key === undefined) {\n return this._locale._abbr;\n } else {\n newLocaleData = getLocale(key);\n if (newLocaleData != null) {\n this._locale = newLocaleData;\n }\n return this;\n }\n }\n\n var lang = deprecate(\n 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.',\n function (key) {\n if (key === undefined) {\n return this.localeData();\n } else {\n return this.locale(key);\n }\n }\n );\n\n function localeData() {\n return this._locale;\n }\n\n var MS_PER_SECOND = 1000,\n MS_PER_MINUTE = 60 * MS_PER_SECOND,\n MS_PER_HOUR = 60 * MS_PER_MINUTE,\n MS_PER_400_YEARS = (365 * 400 + 97) * 24 * MS_PER_HOUR;\n\n // actual modulo - handles negative numbers (for dates before 1970):\n function mod$1(dividend, divisor) {\n return ((dividend % divisor) + divisor) % divisor;\n }\n\n function localStartOfDate(y, m, d) {\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n return new Date(y + 400, m, d) - MS_PER_400_YEARS;\n } else {\n return new Date(y, m, d).valueOf();\n }\n }\n\n function utcStartOfDate(y, m, d) {\n // Date.UTC remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n return Date.UTC(y + 400, m, d) - MS_PER_400_YEARS;\n } else {\n return Date.UTC(y, m, d);\n }\n }\n\n function startOf(units) {\n var time, startOfDate;\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond' || !this.isValid()) {\n return this;\n }\n\n startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;\n\n switch (units) {\n case 'year':\n time = startOfDate(this.year(), 0, 1);\n break;\n case 'quarter':\n time = startOfDate(\n this.year(),\n this.month() - (this.month() % 3),\n 1\n );\n break;\n case 'month':\n time = startOfDate(this.year(), this.month(), 1);\n break;\n case 'week':\n time = startOfDate(\n this.year(),\n this.month(),\n this.date() - this.weekday()\n );\n break;\n case 'isoWeek':\n time = startOfDate(\n this.year(),\n this.month(),\n this.date() - (this.isoWeekday() - 1)\n );\n break;\n case 'day':\n case 'date':\n time = startOfDate(this.year(), this.month(), this.date());\n break;\n case 'hour':\n time = this._d.valueOf();\n time -= mod$1(\n time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE),\n MS_PER_HOUR\n );\n break;\n case 'minute':\n time = this._d.valueOf();\n time -= mod$1(time, MS_PER_MINUTE);\n break;\n case 'second':\n time = this._d.valueOf();\n time -= mod$1(time, MS_PER_SECOND);\n break;\n }\n\n this._d.setTime(time);\n hooks.updateOffset(this, true);\n return this;\n }\n\n function endOf(units) {\n var time, startOfDate;\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond' || !this.isValid()) {\n return this;\n }\n\n startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;\n\n switch (units) {\n case 'year':\n time = startOfDate(this.year() + 1, 0, 1) - 1;\n break;\n case 'quarter':\n time =\n startOfDate(\n this.year(),\n this.month() - (this.month() % 3) + 3,\n 1\n ) - 1;\n break;\n case 'month':\n time = startOfDate(this.year(), this.month() + 1, 1) - 1;\n break;\n case 'week':\n time =\n startOfDate(\n this.year(),\n this.month(),\n this.date() - this.weekday() + 7\n ) - 1;\n break;\n case 'isoWeek':\n time =\n startOfDate(\n this.year(),\n this.month(),\n this.date() - (this.isoWeekday() - 1) + 7\n ) - 1;\n break;\n case 'day':\n case 'date':\n time = startOfDate(this.year(), this.month(), this.date() + 1) - 1;\n break;\n case 'hour':\n time = this._d.valueOf();\n time +=\n MS_PER_HOUR -\n mod$1(\n time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE),\n MS_PER_HOUR\n ) -\n 1;\n break;\n case 'minute':\n time = this._d.valueOf();\n time += MS_PER_MINUTE - mod$1(time, MS_PER_MINUTE) - 1;\n break;\n case 'second':\n time = this._d.valueOf();\n time += MS_PER_SECOND - mod$1(time, MS_PER_SECOND) - 1;\n break;\n }\n\n this._d.setTime(time);\n hooks.updateOffset(this, true);\n return this;\n }\n\n function valueOf() {\n return this._d.valueOf() - (this._offset || 0) * 60000;\n }\n\n function unix() {\n return Math.floor(this.valueOf() / 1000);\n }\n\n function toDate() {\n return new Date(this.valueOf());\n }\n\n function toArray() {\n var m = this;\n return [\n m.year(),\n m.month(),\n m.date(),\n m.hour(),\n m.minute(),\n m.second(),\n m.millisecond(),\n ];\n }\n\n function toObject() {\n var m = this;\n return {\n years: m.year(),\n months: m.month(),\n date: m.date(),\n hours: m.hours(),\n minutes: m.minutes(),\n seconds: m.seconds(),\n milliseconds: m.milliseconds(),\n };\n }\n\n function toJSON() {\n // new Date(NaN).toJSON() === null\n return this.isValid() ? this.toISOString() : null;\n }\n\n function isValid$2() {\n return isValid(this);\n }\n\n function parsingFlags() {\n return extend({}, getParsingFlags(this));\n }\n\n function invalidAt() {\n return getParsingFlags(this).overflow;\n }\n\n function creationData() {\n return {\n input: this._i,\n format: this._f,\n locale: this._locale,\n isUTC: this._isUTC,\n strict: this._strict,\n };\n }\n\n addFormatToken('N', 0, 0, 'eraAbbr');\n addFormatToken('NN', 0, 0, 'eraAbbr');\n addFormatToken('NNN', 0, 0, 'eraAbbr');\n addFormatToken('NNNN', 0, 0, 'eraName');\n addFormatToken('NNNNN', 0, 0, 'eraNarrow');\n\n addFormatToken('y', ['y', 1], 'yo', 'eraYear');\n addFormatToken('y', ['yy', 2], 0, 'eraYear');\n addFormatToken('y', ['yyy', 3], 0, 'eraYear');\n addFormatToken('y', ['yyyy', 4], 0, 'eraYear');\n\n addRegexToken('N', matchEraAbbr);\n addRegexToken('NN', matchEraAbbr);\n addRegexToken('NNN', matchEraAbbr);\n addRegexToken('NNNN', matchEraName);\n addRegexToken('NNNNN', matchEraNarrow);\n\n addParseToken(\n ['N', 'NN', 'NNN', 'NNNN', 'NNNNN'],\n function (input, array, config, token) {\n var era = config._locale.erasParse(input, token, config._strict);\n if (era) {\n getParsingFlags(config).era = era;\n } else {\n getParsingFlags(config).invalidEra = input;\n }\n }\n );\n\n addRegexToken('y', matchUnsigned);\n addRegexToken('yy', matchUnsigned);\n addRegexToken('yyy', matchUnsigned);\n addRegexToken('yyyy', matchUnsigned);\n addRegexToken('yo', matchEraYearOrdinal);\n\n addParseToken(['y', 'yy', 'yyy', 'yyyy'], YEAR);\n addParseToken(['yo'], function (input, array, config, token) {\n var match;\n if (config._locale._eraYearOrdinalRegex) {\n match = input.match(config._locale._eraYearOrdinalRegex);\n }\n\n if (config._locale.eraYearOrdinalParse) {\n array[YEAR] = config._locale.eraYearOrdinalParse(input, match);\n } else {\n array[YEAR] = parseInt(input, 10);\n }\n });\n\n function localeEras(m, format) {\n var i,\n l,\n date,\n eras = this._eras || getLocale('en')._eras;\n for (i = 0, l = eras.length; i < l; ++i) {\n switch (typeof eras[i].since) {\n case 'string':\n // truncate time\n date = hooks(eras[i].since).startOf('day');\n eras[i].since = date.valueOf();\n break;\n }\n\n switch (typeof eras[i].until) {\n case 'undefined':\n eras[i].until = +Infinity;\n break;\n case 'string':\n // truncate time\n date = hooks(eras[i].until).startOf('day').valueOf();\n eras[i].until = date.valueOf();\n break;\n }\n }\n return eras;\n }\n\n function localeErasParse(eraName, format, strict) {\n var i,\n l,\n eras = this.eras(),\n name,\n abbr,\n narrow;\n eraName = eraName.toUpperCase();\n\n for (i = 0, l = eras.length; i < l; ++i) {\n name = eras[i].name.toUpperCase();\n abbr = eras[i].abbr.toUpperCase();\n narrow = eras[i].narrow.toUpperCase();\n\n if (strict) {\n switch (format) {\n case 'N':\n case 'NN':\n case 'NNN':\n if (abbr === eraName) {\n return eras[i];\n }\n break;\n\n case 'NNNN':\n if (name === eraName) {\n return eras[i];\n }\n break;\n\n case 'NNNNN':\n if (narrow === eraName) {\n return eras[i];\n }\n break;\n }\n } else if ([name, abbr, narrow].indexOf(eraName) >= 0) {\n return eras[i];\n }\n }\n }\n\n function localeErasConvertYear(era, year) {\n var dir = era.since <= era.until ? +1 : -1;\n if (year === undefined) {\n return hooks(era.since).year();\n } else {\n return hooks(era.since).year() + (year - era.offset) * dir;\n }\n }\n\n function getEraName() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].name;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].name;\n }\n }\n\n return '';\n }\n\n function getEraNarrow() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].narrow;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].narrow;\n }\n }\n\n return '';\n }\n\n function getEraAbbr() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].abbr;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].abbr;\n }\n }\n\n return '';\n }\n\n function getEraYear() {\n var i,\n l,\n dir,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n dir = eras[i].since <= eras[i].until ? +1 : -1;\n\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (\n (eras[i].since <= val && val <= eras[i].until) ||\n (eras[i].until <= val && val <= eras[i].since)\n ) {\n return (\n (this.year() - hooks(eras[i].since).year()) * dir +\n eras[i].offset\n );\n }\n }\n\n return this.year();\n }\n\n function erasNameRegex(isStrict) {\n if (!hasOwnProp(this, '_erasNameRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasNameRegex : this._erasRegex;\n }\n\n function erasAbbrRegex(isStrict) {\n if (!hasOwnProp(this, '_erasAbbrRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasAbbrRegex : this._erasRegex;\n }\n\n function erasNarrowRegex(isStrict) {\n if (!hasOwnProp(this, '_erasNarrowRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasNarrowRegex : this._erasRegex;\n }\n\n function matchEraAbbr(isStrict, locale) {\n return locale.erasAbbrRegex(isStrict);\n }\n\n function matchEraName(isStrict, locale) {\n return locale.erasNameRegex(isStrict);\n }\n\n function matchEraNarrow(isStrict, locale) {\n return locale.erasNarrowRegex(isStrict);\n }\n\n function matchEraYearOrdinal(isStrict, locale) {\n return locale._eraYearOrdinalRegex || matchUnsigned;\n }\n\n function computeErasParse() {\n var abbrPieces = [],\n namePieces = [],\n narrowPieces = [],\n mixedPieces = [],\n i,\n l,\n eras = this.eras();\n\n for (i = 0, l = eras.length; i < l; ++i) {\n namePieces.push(regexEscape(eras[i].name));\n abbrPieces.push(regexEscape(eras[i].abbr));\n narrowPieces.push(regexEscape(eras[i].narrow));\n\n mixedPieces.push(regexEscape(eras[i].name));\n mixedPieces.push(regexEscape(eras[i].abbr));\n mixedPieces.push(regexEscape(eras[i].narrow));\n }\n\n this._erasRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._erasNameRegex = new RegExp('^(' + namePieces.join('|') + ')', 'i');\n this._erasAbbrRegex = new RegExp('^(' + abbrPieces.join('|') + ')', 'i');\n this._erasNarrowRegex = new RegExp(\n '^(' + narrowPieces.join('|') + ')',\n 'i'\n );\n }\n\n // FORMATTING\n\n addFormatToken(0, ['gg', 2], 0, function () {\n return this.weekYear() % 100;\n });\n\n addFormatToken(0, ['GG', 2], 0, function () {\n return this.isoWeekYear() % 100;\n });\n\n function addWeekYearFormatToken(token, getter) {\n addFormatToken(0, [token, token.length], 0, getter);\n }\n\n addWeekYearFormatToken('gggg', 'weekYear');\n addWeekYearFormatToken('ggggg', 'weekYear');\n addWeekYearFormatToken('GGGG', 'isoWeekYear');\n addWeekYearFormatToken('GGGGG', 'isoWeekYear');\n\n // ALIASES\n\n addUnitAlias('weekYear', 'gg');\n addUnitAlias('isoWeekYear', 'GG');\n\n // PRIORITY\n\n addUnitPriority('weekYear', 1);\n addUnitPriority('isoWeekYear', 1);\n\n // PARSING\n\n addRegexToken('G', matchSigned);\n addRegexToken('g', matchSigned);\n addRegexToken('GG', match1to2, match2);\n addRegexToken('gg', match1to2, match2);\n addRegexToken('GGGG', match1to4, match4);\n addRegexToken('gggg', match1to4, match4);\n addRegexToken('GGGGG', match1to6, match6);\n addRegexToken('ggggg', match1to6, match6);\n\n addWeekParseToken(\n ['gggg', 'ggggg', 'GGGG', 'GGGGG'],\n function (input, week, config, token) {\n week[token.substr(0, 2)] = toInt(input);\n }\n );\n\n addWeekParseToken(['gg', 'GG'], function (input, week, config, token) {\n week[token] = hooks.parseTwoDigitYear(input);\n });\n\n // MOMENTS\n\n function getSetWeekYear(input) {\n return getSetWeekYearHelper.call(\n this,\n input,\n this.week(),\n this.weekday(),\n this.localeData()._week.dow,\n this.localeData()._week.doy\n );\n }\n\n function getSetISOWeekYear(input) {\n return getSetWeekYearHelper.call(\n this,\n input,\n this.isoWeek(),\n this.isoWeekday(),\n 1,\n 4\n );\n }\n\n function getISOWeeksInYear() {\n return weeksInYear(this.year(), 1, 4);\n }\n\n function getISOWeeksInISOWeekYear() {\n return weeksInYear(this.isoWeekYear(), 1, 4);\n }\n\n function getWeeksInYear() {\n var weekInfo = this.localeData()._week;\n return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy);\n }\n\n function getWeeksInWeekYear() {\n var weekInfo = this.localeData()._week;\n return weeksInYear(this.weekYear(), weekInfo.dow, weekInfo.doy);\n }\n\n function getSetWeekYearHelper(input, week, weekday, dow, doy) {\n var weeksTarget;\n if (input == null) {\n return weekOfYear(this, dow, doy).year;\n } else {\n weeksTarget = weeksInYear(input, dow, doy);\n if (week > weeksTarget) {\n week = weeksTarget;\n }\n return setWeekAll.call(this, input, week, weekday, dow, doy);\n }\n }\n\n function setWeekAll(weekYear, week, weekday, dow, doy) {\n var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy),\n date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear);\n\n this.year(date.getUTCFullYear());\n this.month(date.getUTCMonth());\n this.date(date.getUTCDate());\n return this;\n }\n\n // FORMATTING\n\n addFormatToken('Q', 0, 'Qo', 'quarter');\n\n // ALIASES\n\n addUnitAlias('quarter', 'Q');\n\n // PRIORITY\n\n addUnitPriority('quarter', 7);\n\n // PARSING\n\n addRegexToken('Q', match1);\n addParseToken('Q', function (input, array) {\n array[MONTH] = (toInt(input) - 1) * 3;\n });\n\n // MOMENTS\n\n function getSetQuarter(input) {\n return input == null\n ? Math.ceil((this.month() + 1) / 3)\n : this.month((input - 1) * 3 + (this.month() % 3));\n }\n\n // FORMATTING\n\n addFormatToken('D', ['DD', 2], 'Do', 'date');\n\n // ALIASES\n\n addUnitAlias('date', 'D');\n\n // PRIORITY\n addUnitPriority('date', 9);\n\n // PARSING\n\n addRegexToken('D', match1to2);\n addRegexToken('DD', match1to2, match2);\n addRegexToken('Do', function (isStrict, locale) {\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n return isStrict\n ? locale._dayOfMonthOrdinalParse || locale._ordinalParse\n : locale._dayOfMonthOrdinalParseLenient;\n });\n\n addParseToken(['D', 'DD'], DATE);\n addParseToken('Do', function (input, array) {\n array[DATE] = toInt(input.match(match1to2)[0]);\n });\n\n // MOMENTS\n\n var getSetDayOfMonth = makeGetSet('Date', true);\n\n // FORMATTING\n\n addFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear');\n\n // ALIASES\n\n addUnitAlias('dayOfYear', 'DDD');\n\n // PRIORITY\n addUnitPriority('dayOfYear', 4);\n\n // PARSING\n\n addRegexToken('DDD', match1to3);\n addRegexToken('DDDD', match3);\n addParseToken(['DDD', 'DDDD'], function (input, array, config) {\n config._dayOfYear = toInt(input);\n });\n\n // HELPERS\n\n // MOMENTS\n\n function getSetDayOfYear(input) {\n var dayOfYear =\n Math.round(\n (this.clone().startOf('day') - this.clone().startOf('year')) / 864e5\n ) + 1;\n return input == null ? dayOfYear : this.add(input - dayOfYear, 'd');\n }\n\n // FORMATTING\n\n addFormatToken('m', ['mm', 2], 0, 'minute');\n\n // ALIASES\n\n addUnitAlias('minute', 'm');\n\n // PRIORITY\n\n addUnitPriority('minute', 14);\n\n // PARSING\n\n addRegexToken('m', match1to2);\n addRegexToken('mm', match1to2, match2);\n addParseToken(['m', 'mm'], MINUTE);\n\n // MOMENTS\n\n var getSetMinute = makeGetSet('Minutes', false);\n\n // FORMATTING\n\n addFormatToken('s', ['ss', 2], 0, 'second');\n\n // ALIASES\n\n addUnitAlias('second', 's');\n\n // PRIORITY\n\n addUnitPriority('second', 15);\n\n // PARSING\n\n addRegexToken('s', match1to2);\n addRegexToken('ss', match1to2, match2);\n addParseToken(['s', 'ss'], SECOND);\n\n // MOMENTS\n\n var getSetSecond = makeGetSet('Seconds', false);\n\n // FORMATTING\n\n addFormatToken('S', 0, 0, function () {\n return ~~(this.millisecond() / 100);\n });\n\n addFormatToken(0, ['SS', 2], 0, function () {\n return ~~(this.millisecond() / 10);\n });\n\n addFormatToken(0, ['SSS', 3], 0, 'millisecond');\n addFormatToken(0, ['SSSS', 4], 0, function () {\n return this.millisecond() * 10;\n });\n addFormatToken(0, ['SSSSS', 5], 0, function () {\n return this.millisecond() * 100;\n });\n addFormatToken(0, ['SSSSSS', 6], 0, function () {\n return this.millisecond() * 1000;\n });\n addFormatToken(0, ['SSSSSSS', 7], 0, function () {\n return this.millisecond() * 10000;\n });\n addFormatToken(0, ['SSSSSSSS', 8], 0, function () {\n return this.millisecond() * 100000;\n });\n addFormatToken(0, ['SSSSSSSSS', 9], 0, function () {\n return this.millisecond() * 1000000;\n });\n\n // ALIASES\n\n addUnitAlias('millisecond', 'ms');\n\n // PRIORITY\n\n addUnitPriority('millisecond', 16);\n\n // PARSING\n\n addRegexToken('S', match1to3, match1);\n addRegexToken('SS', match1to3, match2);\n addRegexToken('SSS', match1to3, match3);\n\n var token, getSetMillisecond;\n for (token = 'SSSS'; token.length <= 9; token += 'S') {\n addRegexToken(token, matchUnsigned);\n }\n\n function parseMs(input, array) {\n array[MILLISECOND] = toInt(('0.' + input) * 1000);\n }\n\n for (token = 'S'; token.length <= 9; token += 'S') {\n addParseToken(token, parseMs);\n }\n\n getSetMillisecond = makeGetSet('Milliseconds', false);\n\n // FORMATTING\n\n addFormatToken('z', 0, 0, 'zoneAbbr');\n addFormatToken('zz', 0, 0, 'zoneName');\n\n // MOMENTS\n\n function getZoneAbbr() {\n return this._isUTC ? 'UTC' : '';\n }\n\n function getZoneName() {\n return this._isUTC ? 'Coordinated Universal Time' : '';\n }\n\n var proto = Moment.prototype;\n\n proto.add = add;\n proto.calendar = calendar$1;\n proto.clone = clone;\n proto.diff = diff;\n proto.endOf = endOf;\n proto.format = format;\n proto.from = from;\n proto.fromNow = fromNow;\n proto.to = to;\n proto.toNow = toNow;\n proto.get = stringGet;\n proto.invalidAt = invalidAt;\n proto.isAfter = isAfter;\n proto.isBefore = isBefore;\n proto.isBetween = isBetween;\n proto.isSame = isSame;\n proto.isSameOrAfter = isSameOrAfter;\n proto.isSameOrBefore = isSameOrBefore;\n proto.isValid = isValid$2;\n proto.lang = lang;\n proto.locale = locale;\n proto.localeData = localeData;\n proto.max = prototypeMax;\n proto.min = prototypeMin;\n proto.parsingFlags = parsingFlags;\n proto.set = stringSet;\n proto.startOf = startOf;\n proto.subtract = subtract;\n proto.toArray = toArray;\n proto.toObject = toObject;\n proto.toDate = toDate;\n proto.toISOString = toISOString;\n proto.inspect = inspect;\n if (typeof Symbol !== 'undefined' && Symbol.for != null) {\n proto[Symbol.for('nodejs.util.inspect.custom')] = function () {\n return 'Moment<' + this.format() + '>';\n };\n }\n proto.toJSON = toJSON;\n proto.toString = toString;\n proto.unix = unix;\n proto.valueOf = valueOf;\n proto.creationData = creationData;\n proto.eraName = getEraName;\n proto.eraNarrow = getEraNarrow;\n proto.eraAbbr = getEraAbbr;\n proto.eraYear = getEraYear;\n proto.year = getSetYear;\n proto.isLeapYear = getIsLeapYear;\n proto.weekYear = getSetWeekYear;\n proto.isoWeekYear = getSetISOWeekYear;\n proto.quarter = proto.quarters = getSetQuarter;\n proto.month = getSetMonth;\n proto.daysInMonth = getDaysInMonth;\n proto.week = proto.weeks = getSetWeek;\n proto.isoWeek = proto.isoWeeks = getSetISOWeek;\n proto.weeksInYear = getWeeksInYear;\n proto.weeksInWeekYear = getWeeksInWeekYear;\n proto.isoWeeksInYear = getISOWeeksInYear;\n proto.isoWeeksInISOWeekYear = getISOWeeksInISOWeekYear;\n proto.date = getSetDayOfMonth;\n proto.day = proto.days = getSetDayOfWeek;\n proto.weekday = getSetLocaleDayOfWeek;\n proto.isoWeekday = getSetISODayOfWeek;\n proto.dayOfYear = getSetDayOfYear;\n proto.hour = proto.hours = getSetHour;\n proto.minute = proto.minutes = getSetMinute;\n proto.second = proto.seconds = getSetSecond;\n proto.millisecond = proto.milliseconds = getSetMillisecond;\n proto.utcOffset = getSetOffset;\n proto.utc = setOffsetToUTC;\n proto.local = setOffsetToLocal;\n proto.parseZone = setOffsetToParsedOffset;\n proto.hasAlignedHourOffset = hasAlignedHourOffset;\n proto.isDST = isDaylightSavingTime;\n proto.isLocal = isLocal;\n proto.isUtcOffset = isUtcOffset;\n proto.isUtc = isUtc;\n proto.isUTC = isUtc;\n proto.zoneAbbr = getZoneAbbr;\n proto.zoneName = getZoneName;\n proto.dates = deprecate(\n 'dates accessor is deprecated. Use date instead.',\n getSetDayOfMonth\n );\n proto.months = deprecate(\n 'months accessor is deprecated. Use month instead',\n getSetMonth\n );\n proto.years = deprecate(\n 'years accessor is deprecated. Use year instead',\n getSetYear\n );\n proto.zone = deprecate(\n 'moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/',\n getSetZone\n );\n proto.isDSTShifted = deprecate(\n 'isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information',\n isDaylightSavingTimeShifted\n );\n\n function createUnix(input) {\n return createLocal(input * 1000);\n }\n\n function createInZone() {\n return createLocal.apply(null, arguments).parseZone();\n }\n\n function preParsePostFormat(string) {\n return string;\n }\n\n var proto$1 = Locale.prototype;\n\n proto$1.calendar = calendar;\n proto$1.longDateFormat = longDateFormat;\n proto$1.invalidDate = invalidDate;\n proto$1.ordinal = ordinal;\n proto$1.preparse = preParsePostFormat;\n proto$1.postformat = preParsePostFormat;\n proto$1.relativeTime = relativeTime;\n proto$1.pastFuture = pastFuture;\n proto$1.set = set;\n proto$1.eras = localeEras;\n proto$1.erasParse = localeErasParse;\n proto$1.erasConvertYear = localeErasConvertYear;\n proto$1.erasAbbrRegex = erasAbbrRegex;\n proto$1.erasNameRegex = erasNameRegex;\n proto$1.erasNarrowRegex = erasNarrowRegex;\n\n proto$1.months = localeMonths;\n proto$1.monthsShort = localeMonthsShort;\n proto$1.monthsParse = localeMonthsParse;\n proto$1.monthsRegex = monthsRegex;\n proto$1.monthsShortRegex = monthsShortRegex;\n proto$1.week = localeWeek;\n proto$1.firstDayOfYear = localeFirstDayOfYear;\n proto$1.firstDayOfWeek = localeFirstDayOfWeek;\n\n proto$1.weekdays = localeWeekdays;\n proto$1.weekdaysMin = localeWeekdaysMin;\n proto$1.weekdaysShort = localeWeekdaysShort;\n proto$1.weekdaysParse = localeWeekdaysParse;\n\n proto$1.weekdaysRegex = weekdaysRegex;\n proto$1.weekdaysShortRegex = weekdaysShortRegex;\n proto$1.weekdaysMinRegex = weekdaysMinRegex;\n\n proto$1.isPM = localeIsPM;\n proto$1.meridiem = localeMeridiem;\n\n function get$1(format, index, field, setter) {\n var locale = getLocale(),\n utc = createUTC().set(setter, index);\n return locale[field](utc, format);\n }\n\n function listMonthsImpl(format, index, field) {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n\n if (index != null) {\n return get$1(format, index, field, 'month');\n }\n\n var i,\n out = [];\n for (i = 0; i < 12; i++) {\n out[i] = get$1(format, i, field, 'month');\n }\n return out;\n }\n\n // ()\n // (5)\n // (fmt, 5)\n // (fmt)\n // (true)\n // (true, 5)\n // (true, fmt, 5)\n // (true, fmt)\n function listWeekdaysImpl(localeSorted, format, index, field) {\n if (typeof localeSorted === 'boolean') {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n } else {\n format = localeSorted;\n index = format;\n localeSorted = false;\n\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n }\n\n var locale = getLocale(),\n shift = localeSorted ? locale._week.dow : 0,\n i,\n out = [];\n\n if (index != null) {\n return get$1(format, (index + shift) % 7, field, 'day');\n }\n\n for (i = 0; i < 7; i++) {\n out[i] = get$1(format, (i + shift) % 7, field, 'day');\n }\n return out;\n }\n\n function listMonths(format, index) {\n return listMonthsImpl(format, index, 'months');\n }\n\n function listMonthsShort(format, index) {\n return listMonthsImpl(format, index, 'monthsShort');\n }\n\n function listWeekdays(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdays');\n }\n\n function listWeekdaysShort(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysShort');\n }\n\n function listWeekdaysMin(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysMin');\n }\n\n getSetGlobalLocale('en', {\n eras: [\n {\n since: '0001-01-01',\n until: +Infinity,\n offset: 1,\n name: 'Anno Domini',\n narrow: 'AD',\n abbr: 'AD',\n },\n {\n since: '0000-12-31',\n until: -Infinity,\n offset: 1,\n name: 'Before Christ',\n narrow: 'BC',\n abbr: 'BC',\n },\n ],\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n toInt((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n });\n\n // Side effect imports\n\n hooks.lang = deprecate(\n 'moment.lang is deprecated. Use moment.locale instead.',\n getSetGlobalLocale\n );\n hooks.langData = deprecate(\n 'moment.langData is deprecated. Use moment.localeData instead.',\n getLocale\n );\n\n var mathAbs = Math.abs;\n\n function abs() {\n var data = this._data;\n\n this._milliseconds = mathAbs(this._milliseconds);\n this._days = mathAbs(this._days);\n this._months = mathAbs(this._months);\n\n data.milliseconds = mathAbs(data.milliseconds);\n data.seconds = mathAbs(data.seconds);\n data.minutes = mathAbs(data.minutes);\n data.hours = mathAbs(data.hours);\n data.months = mathAbs(data.months);\n data.years = mathAbs(data.years);\n\n return this;\n }\n\n function addSubtract$1(duration, input, value, direction) {\n var other = createDuration(input, value);\n\n duration._milliseconds += direction * other._milliseconds;\n duration._days += direction * other._days;\n duration._months += direction * other._months;\n\n return duration._bubble();\n }\n\n // supports only 2.0-style add(1, 's') or add(duration)\n function add$1(input, value) {\n return addSubtract$1(this, input, value, 1);\n }\n\n // supports only 2.0-style subtract(1, 's') or subtract(duration)\n function subtract$1(input, value) {\n return addSubtract$1(this, input, value, -1);\n }\n\n function absCeil(number) {\n if (number < 0) {\n return Math.floor(number);\n } else {\n return Math.ceil(number);\n }\n }\n\n function bubble() {\n var milliseconds = this._milliseconds,\n days = this._days,\n months = this._months,\n data = this._data,\n seconds,\n minutes,\n hours,\n years,\n monthsFromDays;\n\n // if we have a mix of positive and negative values, bubble down first\n // check: https://github.com/moment/moment/issues/2166\n if (\n !(\n (milliseconds >= 0 && days >= 0 && months >= 0) ||\n (milliseconds <= 0 && days <= 0 && months <= 0)\n )\n ) {\n milliseconds += absCeil(monthsToDays(months) + days) * 864e5;\n days = 0;\n months = 0;\n }\n\n // The following code bubbles up values, see the tests for\n // examples of what that means.\n data.milliseconds = milliseconds % 1000;\n\n seconds = absFloor(milliseconds / 1000);\n data.seconds = seconds % 60;\n\n minutes = absFloor(seconds / 60);\n data.minutes = minutes % 60;\n\n hours = absFloor(minutes / 60);\n data.hours = hours % 24;\n\n days += absFloor(hours / 24);\n\n // convert days to months\n monthsFromDays = absFloor(daysToMonths(days));\n months += monthsFromDays;\n days -= absCeil(monthsToDays(monthsFromDays));\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n data.days = days;\n data.months = months;\n data.years = years;\n\n return this;\n }\n\n function daysToMonths(days) {\n // 400 years have 146097 days (taking into account leap year rules)\n // 400 years have 12 months === 4800\n return (days * 4800) / 146097;\n }\n\n function monthsToDays(months) {\n // the reverse of daysToMonths\n return (months * 146097) / 4800;\n }\n\n function as(units) {\n if (!this.isValid()) {\n return NaN;\n }\n var days,\n months,\n milliseconds = this._milliseconds;\n\n units = normalizeUnits(units);\n\n if (units === 'month' || units === 'quarter' || units === 'year') {\n days = this._days + milliseconds / 864e5;\n months = this._months + daysToMonths(days);\n switch (units) {\n case 'month':\n return months;\n case 'quarter':\n return months / 3;\n case 'year':\n return months / 12;\n }\n } else {\n // handle milliseconds separately because of floating point math errors (issue #1867)\n days = this._days + Math.round(monthsToDays(this._months));\n switch (units) {\n case 'week':\n return days / 7 + milliseconds / 6048e5;\n case 'day':\n return days + milliseconds / 864e5;\n case 'hour':\n return days * 24 + milliseconds / 36e5;\n case 'minute':\n return days * 1440 + milliseconds / 6e4;\n case 'second':\n return days * 86400 + milliseconds / 1000;\n // Math.floor prevents floating point math errors here\n case 'millisecond':\n return Math.floor(days * 864e5) + milliseconds;\n default:\n throw new Error('Unknown unit ' + units);\n }\n }\n }\n\n // TODO: Use this.as('ms')?\n function valueOf$1() {\n if (!this.isValid()) {\n return NaN;\n }\n return (\n this._milliseconds +\n this._days * 864e5 +\n (this._months % 12) * 2592e6 +\n toInt(this._months / 12) * 31536e6\n );\n }\n\n function makeAs(alias) {\n return function () {\n return this.as(alias);\n };\n }\n\n var asMilliseconds = makeAs('ms'),\n asSeconds = makeAs('s'),\n asMinutes = makeAs('m'),\n asHours = makeAs('h'),\n asDays = makeAs('d'),\n asWeeks = makeAs('w'),\n asMonths = makeAs('M'),\n asQuarters = makeAs('Q'),\n asYears = makeAs('y');\n\n function clone$1() {\n return createDuration(this);\n }\n\n function get$2(units) {\n units = normalizeUnits(units);\n return this.isValid() ? this[units + 's']() : NaN;\n }\n\n function makeGetter(name) {\n return function () {\n return this.isValid() ? this._data[name] : NaN;\n };\n }\n\n var milliseconds = makeGetter('milliseconds'),\n seconds = makeGetter('seconds'),\n minutes = makeGetter('minutes'),\n hours = makeGetter('hours'),\n days = makeGetter('days'),\n months = makeGetter('months'),\n years = makeGetter('years');\n\n function weeks() {\n return absFloor(this.days() / 7);\n }\n\n var round = Math.round,\n thresholds = {\n ss: 44, // a few seconds to seconds\n s: 45, // seconds to minute\n m: 45, // minutes to hour\n h: 22, // hours to day\n d: 26, // days to month/week\n w: null, // weeks to month\n M: 11, // months to year\n };\n\n // helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize\n function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) {\n return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture);\n }\n\n function relativeTime$1(posNegDuration, withoutSuffix, thresholds, locale) {\n var duration = createDuration(posNegDuration).abs(),\n seconds = round(duration.as('s')),\n minutes = round(duration.as('m')),\n hours = round(duration.as('h')),\n days = round(duration.as('d')),\n months = round(duration.as('M')),\n weeks = round(duration.as('w')),\n years = round(duration.as('y')),\n a =\n (seconds <= thresholds.ss && ['s', seconds]) ||\n (seconds < thresholds.s && ['ss', seconds]) ||\n (minutes <= 1 && ['m']) ||\n (minutes < thresholds.m && ['mm', minutes]) ||\n (hours <= 1 && ['h']) ||\n (hours < thresholds.h && ['hh', hours]) ||\n (days <= 1 && ['d']) ||\n (days < thresholds.d && ['dd', days]);\n\n if (thresholds.w != null) {\n a =\n a ||\n (weeks <= 1 && ['w']) ||\n (weeks < thresholds.w && ['ww', weeks]);\n }\n a = a ||\n (months <= 1 && ['M']) ||\n (months < thresholds.M && ['MM', months]) ||\n (years <= 1 && ['y']) || ['yy', years];\n\n a[2] = withoutSuffix;\n a[3] = +posNegDuration > 0;\n a[4] = locale;\n return substituteTimeAgo.apply(null, a);\n }\n\n // This function allows you to set the rounding function for relative time strings\n function getSetRelativeTimeRounding(roundingFunction) {\n if (roundingFunction === undefined) {\n return round;\n }\n if (typeof roundingFunction === 'function') {\n round = roundingFunction;\n return true;\n }\n return false;\n }\n\n // This function allows you to set a threshold for relative time strings\n function getSetRelativeTimeThreshold(threshold, limit) {\n if (thresholds[threshold] === undefined) {\n return false;\n }\n if (limit === undefined) {\n return thresholds[threshold];\n }\n thresholds[threshold] = limit;\n if (threshold === 's') {\n thresholds.ss = limit - 1;\n }\n return true;\n }\n\n function humanize(argWithSuffix, argThresholds) {\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var withSuffix = false,\n th = thresholds,\n locale,\n output;\n\n if (typeof argWithSuffix === 'object') {\n argThresholds = argWithSuffix;\n argWithSuffix = false;\n }\n if (typeof argWithSuffix === 'boolean') {\n withSuffix = argWithSuffix;\n }\n if (typeof argThresholds === 'object') {\n th = Object.assign({}, thresholds, argThresholds);\n if (argThresholds.s != null && argThresholds.ss == null) {\n th.ss = argThresholds.s - 1;\n }\n }\n\n locale = this.localeData();\n output = relativeTime$1(this, !withSuffix, th, locale);\n\n if (withSuffix) {\n output = locale.pastFuture(+this, output);\n }\n\n return locale.postformat(output);\n }\n\n var abs$1 = Math.abs;\n\n function sign(x) {\n return (x > 0) - (x < 0) || +x;\n }\n\n function toISOString$1() {\n // for ISO strings we do not use the normal bubbling rules:\n // * milliseconds bubble up until they become hours\n // * days do not bubble at all\n // * months bubble up until they become years\n // This is because there is no context-free conversion between hours and days\n // (think of clock changes)\n // and also not between days and months (28-31 days per month)\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var seconds = abs$1(this._milliseconds) / 1000,\n days = abs$1(this._days),\n months = abs$1(this._months),\n minutes,\n hours,\n years,\n s,\n total = this.asSeconds(),\n totalSign,\n ymSign,\n daysSign,\n hmsSign;\n\n if (!total) {\n // this is the same as C#'s (Noda) and python (isodate)...\n // but not other JS (goog.date)\n return 'P0D';\n }\n\n // 3600 seconds -> 60 minutes -> 1 hour\n minutes = absFloor(seconds / 60);\n hours = absFloor(minutes / 60);\n seconds %= 60;\n minutes %= 60;\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js\n s = seconds ? seconds.toFixed(3).replace(/\\.?0+$/, '') : '';\n\n totalSign = total < 0 ? '-' : '';\n ymSign = sign(this._months) !== sign(total) ? '-' : '';\n daysSign = sign(this._days) !== sign(total) ? '-' : '';\n hmsSign = sign(this._milliseconds) !== sign(total) ? '-' : '';\n\n return (\n totalSign +\n 'P' +\n (years ? ymSign + years + 'Y' : '') +\n (months ? ymSign + months + 'M' : '') +\n (days ? daysSign + days + 'D' : '') +\n (hours || minutes || seconds ? 'T' : '') +\n (hours ? hmsSign + hours + 'H' : '') +\n (minutes ? hmsSign + minutes + 'M' : '') +\n (seconds ? hmsSign + s + 'S' : '')\n );\n }\n\n var proto$2 = Duration.prototype;\n\n proto$2.isValid = isValid$1;\n proto$2.abs = abs;\n proto$2.add = add$1;\n proto$2.subtract = subtract$1;\n proto$2.as = as;\n proto$2.asMilliseconds = asMilliseconds;\n proto$2.asSeconds = asSeconds;\n proto$2.asMinutes = asMinutes;\n proto$2.asHours = asHours;\n proto$2.asDays = asDays;\n proto$2.asWeeks = asWeeks;\n proto$2.asMonths = asMonths;\n proto$2.asQuarters = asQuarters;\n proto$2.asYears = asYears;\n proto$2.valueOf = valueOf$1;\n proto$2._bubble = bubble;\n proto$2.clone = clone$1;\n proto$2.get = get$2;\n proto$2.milliseconds = milliseconds;\n proto$2.seconds = seconds;\n proto$2.minutes = minutes;\n proto$2.hours = hours;\n proto$2.days = days;\n proto$2.weeks = weeks;\n proto$2.months = months;\n proto$2.years = years;\n proto$2.humanize = humanize;\n proto$2.toISOString = toISOString$1;\n proto$2.toString = toISOString$1;\n proto$2.toJSON = toISOString$1;\n proto$2.locale = locale;\n proto$2.localeData = localeData;\n\n proto$2.toIsoString = deprecate(\n 'toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)',\n toISOString$1\n );\n proto$2.lang = lang;\n\n // FORMATTING\n\n addFormatToken('X', 0, 0, 'unix');\n addFormatToken('x', 0, 0, 'valueOf');\n\n // PARSING\n\n addRegexToken('x', matchSigned);\n addRegexToken('X', matchTimestamp);\n addParseToken('X', function (input, array, config) {\n config._d = new Date(parseFloat(input) * 1000);\n });\n addParseToken('x', function (input, array, config) {\n config._d = new Date(toInt(input));\n });\n\n //! moment.js\n\n hooks.version = '2.29.4';\n\n setHookCallback(createLocal);\n\n hooks.fn = proto;\n hooks.min = min;\n hooks.max = max;\n hooks.now = now;\n hooks.utc = createUTC;\n hooks.unix = createUnix;\n hooks.months = listMonths;\n hooks.isDate = isDate;\n hooks.locale = getSetGlobalLocale;\n hooks.invalid = createInvalid;\n hooks.duration = createDuration;\n hooks.isMoment = isMoment;\n hooks.weekdays = listWeekdays;\n hooks.parseZone = createInZone;\n hooks.localeData = getLocale;\n hooks.isDuration = isDuration;\n hooks.monthsShort = listMonthsShort;\n hooks.weekdaysMin = listWeekdaysMin;\n hooks.defineLocale = defineLocale;\n hooks.updateLocale = updateLocale;\n hooks.locales = listLocales;\n hooks.weekdaysShort = listWeekdaysShort;\n hooks.normalizeUnits = normalizeUnits;\n hooks.relativeTimeRounding = getSetRelativeTimeRounding;\n hooks.relativeTimeThreshold = getSetRelativeTimeThreshold;\n hooks.calendarFormat = getCalendarFormat;\n hooks.prototype = proto;\n\n // currently HTML5 input type only supports 24-hour formats\n hooks.HTML5_FMT = {\n DATETIME_LOCAL: 'YYYY-MM-DDTHH:mm', // \n DATETIME_LOCAL_SECONDS: 'YYYY-MM-DDTHH:mm:ss', // \n DATETIME_LOCAL_MS: 'YYYY-MM-DDTHH:mm:ss.SSS', // \n DATE: 'YYYY-MM-DD', // \n TIME: 'HH:mm', // \n TIME_SECONDS: 'HH:mm:ss', // \n TIME_MS: 'HH:mm:ss.SSS', // \n WEEK: 'GGGG-[W]WW', // \n MONTH: 'YYYY-MM', // \n };\n\n return hooks;\n\n})));\n","'use strict';\n\nvar get = require('lodash.get');\nvar plurals = require('./plurals');\n\nmodule.exports = Gettext;\n\n/**\n * Creates and returns a new Gettext instance.\n *\n * @constructor\n * @param {Object} [options] A set of options\n * @param {String} options.sourceLocale The locale that the source code and its\n * texts are written in. Translations for\n * this locale is not necessary.\n * @param {Boolean} options.debug Whether to output debug info into the\n * console.\n * @return {Object} A Gettext instance\n */\nfunction Gettext(options) {\n options = options || {};\n\n this.catalogs = {};\n this.locale = '';\n this.domain = 'messages';\n\n this.listeners = [];\n\n // Set source locale\n this.sourceLocale = '';\n if (options.sourceLocale) {\n if (typeof options.sourceLocale === 'string') {\n this.sourceLocale = options.sourceLocale;\n }\n else {\n this.warn('The `sourceLocale` option should be a string');\n }\n }\n\n // Set debug flag\n this.debug = 'debug' in options && options.debug === true;\n}\n\n/**\n * Adds an event listener.\n *\n * @param {String} eventName An event name\n * @param {Function} callback An event handler function\n */\nGettext.prototype.on = function(eventName, callback) {\n this.listeners.push({\n eventName: eventName,\n callback: callback\n });\n};\n\n/**\n * Removes an event listener.\n *\n * @param {String} eventName An event name\n * @param {Function} callback A previously registered event handler function\n */\nGettext.prototype.off = function(eventName, callback) {\n this.listeners = this.listeners.filter(function(listener) {\n return (\n listener.eventName === eventName &&\n listener.callback === callback\n ) === false;\n });\n};\n\n/**\n * Emits an event to all registered event listener.\n *\n * @private\n * @param {String} eventName An event name\n * @param {any} eventData Data to pass to event listeners\n */\nGettext.prototype.emit = function(eventName, eventData) {\n for (var i = 0; i < this.listeners.length; i++) {\n var listener = this.listeners[i];\n if (listener.eventName === eventName) {\n listener.callback(eventData);\n }\n }\n};\n\n/**\n * Logs a warning to the console if debug mode is enabled.\n *\n * @ignore\n * @param {String} message A warning message\n */\nGettext.prototype.warn = function(message) {\n if (this.debug) {\n console.warn(message);\n }\n\n this.emit('error', new Error(message));\n};\n\n/**\n * Stores a set of translations in the set of gettext\n * catalogs.\n *\n * @example\n * gt.addTranslations('sv-SE', 'messages', translationsObject)\n *\n * @param {String} locale A locale string\n * @param {String} domain A domain name\n * @param {Object} translations An object of gettext-parser JSON shape\n */\nGettext.prototype.addTranslations = function(locale, domain, translations) {\n if (!this.catalogs[locale]) {\n this.catalogs[locale] = {};\n }\n\n this.catalogs[locale][domain] = translations;\n};\n\n/**\n * Sets the locale to get translated messages for.\n *\n * @example\n * gt.setLocale('sv-SE')\n *\n * @param {String} locale A locale\n */\nGettext.prototype.setLocale = function(locale) {\n if (typeof locale !== 'string') {\n this.warn(\n 'You called setLocale() with an argument of type ' + (typeof locale) + '. ' +\n 'The locale must be a string.'\n );\n return;\n }\n\n if (locale.trim() === '') {\n this.warn('You called setLocale() with an empty value, which makes little sense.');\n }\n\n if (locale !== this.sourceLocale && !this.catalogs[locale]) {\n this.warn('You called setLocale() with \"' + locale + '\", but no translations for that locale has been added.');\n }\n\n this.locale = locale;\n};\n\n/**\n * Sets the default gettext domain.\n *\n * @example\n * gt.setTextDomain('domainname')\n *\n * @param {String} domain A gettext domain name\n */\nGettext.prototype.setTextDomain = function(domain) {\n if (typeof domain !== 'string') {\n this.warn(\n 'You called setTextDomain() with an argument of type ' + (typeof domain) + '. ' +\n 'The domain must be a string.'\n );\n return;\n }\n\n if (domain.trim() === '') {\n this.warn('You called setTextDomain() with an empty `domain` value.');\n }\n\n this.domain = domain;\n};\n\n/**\n * Translates a string using the default textdomain\n *\n * @example\n * gt.gettext('Some text')\n *\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.gettext = function(msgid) {\n return this.dnpgettext(this.domain, '', msgid);\n};\n\n/**\n * Translates a string using a specific domain\n *\n * @example\n * gt.dgettext('domainname', 'Some text')\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dgettext = function(domain, msgid) {\n return this.dnpgettext(domain, '', msgid);\n};\n\n/**\n * Translates a plural string using the default textdomain\n *\n * @example\n * gt.ngettext('One thing', 'Many things', numberOfThings)\n *\n * @param {String} msgid String to be translated when count is not plural\n * @param {String} msgidPlural String to be translated when count is plural\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.ngettext = function(msgid, msgidPlural, count) {\n return this.dnpgettext(this.domain, '', msgid, msgidPlural, count);\n};\n\n/**\n * Translates a plural string using a specific textdomain\n *\n * @example\n * gt.dngettext('domainname', 'One thing', 'Many things', numberOfThings)\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgid String to be translated when count is not plural\n * @param {String} msgidPlural String to be translated when count is plural\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dngettext = function(domain, msgid, msgidPlural, count) {\n return this.dnpgettext(domain, '', msgid, msgidPlural, count);\n};\n\n/**\n * Translates a string from a specific context using the default textdomain\n *\n * @example\n * gt.pgettext('sports', 'Back')\n *\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.pgettext = function(msgctxt, msgid) {\n return this.dnpgettext(this.domain, msgctxt, msgid);\n};\n\n/**\n * Translates a string from a specific context using s specific textdomain\n *\n * @example\n * gt.dpgettext('domainname', 'sports', 'Back')\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dpgettext = function(domain, msgctxt, msgid) {\n return this.dnpgettext(domain, msgctxt, msgid);\n};\n\n/**\n * Translates a plural string from a specific context using the default textdomain\n *\n * @example\n * gt.npgettext('sports', 'Back', '%d backs', numberOfBacks)\n *\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated when count is not plural\n * @param {String} msgidPlural String to be translated when count is plural\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.npgettext = function(msgctxt, msgid, msgidPlural, count) {\n return this.dnpgettext(this.domain, msgctxt, msgid, msgidPlural, count);\n};\n\n/**\n * Translates a plural string from a specifi context using a specific textdomain\n *\n * @example\n * gt.dnpgettext('domainname', 'sports', 'Back', '%d backs', numberOfBacks)\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @param {String} msgidPlural If no translation was found, return this on count!=1\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dnpgettext = function(domain, msgctxt, msgid, msgidPlural, count) {\n var defaultTranslation = msgid;\n var translation;\n var index;\n\n msgctxt = msgctxt || '';\n\n if (!isNaN(count) && count !== 1) {\n defaultTranslation = msgidPlural || msgid;\n }\n\n translation = this._getTranslation(domain, msgctxt, msgid);\n\n if (translation) {\n if (typeof count === 'number') {\n var pluralsFunc = plurals[Gettext.getLanguageCode(this.locale)].pluralsFunc;\n index = pluralsFunc(count);\n if (typeof index === 'boolean') {\n index = index ? 1 : 0;\n }\n } else {\n index = 0;\n }\n\n return translation.msgstr[index] || defaultTranslation;\n }\n else if (!this.sourceLocale || this.locale !== this.sourceLocale) {\n this.warn('No translation was found for msgid \"' + msgid + '\" in msgctxt \"' + msgctxt + '\" and domain \"' + domain + '\"');\n }\n\n return defaultTranslation;\n};\n\n/**\n * Retrieves comments object for a translation. The comments object\n * has the shape `{ translator, extracted, reference, flag, previous }`.\n *\n * @example\n * const comment = gt.getComment('domainname', 'sports', 'Backs')\n *\n * @private\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {Object} Comments object or false if not found\n */\nGettext.prototype.getComment = function(domain, msgctxt, msgid) {\n var translation;\n\n translation = this._getTranslation(domain, msgctxt, msgid);\n if (translation) {\n return translation.comments || {};\n }\n\n return {};\n};\n\n/**\n * Retrieves translation object from the domain and context\n *\n * @private\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {Object} Translation object or false if not found\n */\nGettext.prototype._getTranslation = function(domain, msgctxt, msgid) {\n msgctxt = msgctxt || '';\n\n return get(this.catalogs, [this.locale, domain, 'translations', msgctxt, msgid]);\n};\n\n/**\n * Returns the language code part of a locale\n *\n * @example\n * Gettext.getLanguageCode('sv-SE')\n * // -> \"sv\"\n *\n * @private\n * @param {String} locale A case-insensitive locale string\n * @returns {String} A language code\n */\nGettext.getLanguageCode = function(locale) {\n return locale.split(/[\\-_]/)[0].toLowerCase();\n};\n\n/* C-style aliases */\n\n/**\n * C-style alias for [setTextDomain](#gettextsettextdomaindomain)\n *\n * @see Gettext#setTextDomain\n */\nGettext.prototype.textdomain = function(domain) {\n if (this.debug) {\n console.warn('textdomain(domain) was used to set locales in node-gettext v1. ' +\n 'Make sure you are using it for domains, and switch to setLocale(locale) if you are not.\\n\\n ' +\n 'To read more about the migration from node-gettext v1 to v2, ' +\n 'see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x\\n\\n' +\n 'This warning will be removed in the final 2.0.0');\n }\n\n this.setTextDomain(domain);\n};\n\n/**\n * C-style alias for [setLocale](#gettextsetlocalelocale)\n *\n * @see Gettext#setLocale\n */\nGettext.prototype.setlocale = function(locale) {\n this.setLocale(locale);\n};\n\n/* Deprecated functions */\n\n/**\n * This function will be removed in the final 2.0.0 release.\n *\n * @deprecated\n */\nGettext.prototype.addTextdomain = function() {\n console.error('addTextdomain() is deprecated.\\n\\n' +\n '* To add translations, use addTranslations()\\n' +\n '* To set the default domain, use setTextDomain() (or its alias textdomain())\\n' +\n '\\n' +\n 'To read more about the migration from node-gettext v1 to v2, ' +\n 'see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x');\n};\n","'use strict';\n\nmodule.exports = {\n ach: {\n name: 'Acholi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n af: {\n name: 'Afrikaans',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ak: {\n name: 'Akan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n am: {\n name: 'Amharic',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n an: {\n name: 'Aragonese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ar: {\n name: 'Arabic',\n examples: [{\n plural: 0,\n sample: 0\n }, {\n plural: 1,\n sample: 1\n }, {\n plural: 2,\n sample: 2\n }, {\n plural: 3,\n sample: 3\n }, {\n plural: 4,\n sample: 11\n }, {\n plural: 5,\n sample: 100\n }],\n nplurals: 6,\n pluralsText: 'nplurals = 6; plural = (n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5)',\n pluralsFunc: function(n) {\n return (n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5);\n }\n },\n arn: {\n name: 'Mapudungun',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n ast: {\n name: 'Asturian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ay: {\n name: 'Aymará',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n az: {\n name: 'Azerbaijani',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n be: {\n name: 'Belarusian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n bg: {\n name: 'Bulgarian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n bn: {\n name: 'Bengali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n bo: {\n name: 'Tibetan',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n br: {\n name: 'Breton',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n brx: {\n name: 'Bodo',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n bs: {\n name: 'Bosnian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n ca: {\n name: 'Catalan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n cgg: {\n name: 'Chiga',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n cs: {\n name: 'Czech',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2);\n }\n },\n csb: {\n name: 'Kashubian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n cy: {\n name: 'Welsh',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 8\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : (n !== 8 && n !== 11) ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 2 ? 1 : (n !== 8 && n !== 11) ? 2 : 3);\n }\n },\n da: {\n name: 'Danish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n de: {\n name: 'German',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n doi: {\n name: 'Dogri',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n dz: {\n name: 'Dzongkha',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n el: {\n name: 'Greek',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n en: {\n name: 'English',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n eo: {\n name: 'Esperanto',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n es: {\n name: 'Spanish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n et: {\n name: 'Estonian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n eu: {\n name: 'Basque',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fa: {\n name: 'Persian',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ff: {\n name: 'Fulah',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fi: {\n name: 'Finnish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fil: {\n name: 'Filipino',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n fo: {\n name: 'Faroese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fr: {\n name: 'French',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n fur: {\n name: 'Friulian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fy: {\n name: 'Frisian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ga: {\n name: 'Irish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 7\n }, {\n plural: 4,\n sample: 11\n }],\n nplurals: 5,\n pluralsText: 'nplurals = 5; plural = (n === 1 ? 0 : n === 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4);\n }\n },\n gd: {\n name: 'Scottish Gaelic',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 20\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = ((n === 1 || n === 11) ? 0 : (n === 2 || n === 12) ? 1 : (n > 2 && n < 20) ? 2 : 3)',\n pluralsFunc: function(n) {\n return ((n === 1 || n === 11) ? 0 : (n === 2 || n === 12) ? 1 : (n > 2 && n < 20) ? 2 : 3);\n }\n },\n gl: {\n name: 'Galician',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n gu: {\n name: 'Gujarati',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n gun: {\n name: 'Gun',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n ha: {\n name: 'Hausa',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n he: {\n name: 'Hebrew',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hi: {\n name: 'Hindi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hne: {\n name: 'Chhattisgarhi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hr: {\n name: 'Croatian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n hu: {\n name: 'Hungarian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hy: {\n name: 'Armenian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n id: {\n name: 'Indonesian',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n is: {\n name: 'Icelandic',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n % 10 !== 1 || n % 100 === 11)',\n pluralsFunc: function(n) {\n return (n % 10 !== 1 || n % 100 === 11);\n }\n },\n it: {\n name: 'Italian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ja: {\n name: 'Japanese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n jbo: {\n name: 'Lojban',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n jv: {\n name: 'Javanese',\n examples: [{\n plural: 0,\n sample: 0\n }, {\n plural: 1,\n sample: 1\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 0)',\n pluralsFunc: function(n) {\n return (n !== 0);\n }\n },\n ka: {\n name: 'Georgian',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n kk: {\n name: 'Kazakh',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n km: {\n name: 'Khmer',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n kn: {\n name: 'Kannada',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ko: {\n name: 'Korean',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ku: {\n name: 'Kurdish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n kw: {\n name: 'Cornish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 4\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : n === 3 ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 2 ? 1 : n === 3 ? 2 : 3);\n }\n },\n ky: {\n name: 'Kyrgyz',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n lb: {\n name: 'Letzeburgesch',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ln: {\n name: 'Lingala',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n lo: {\n name: 'Lao',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n lt: {\n name: 'Lithuanian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 10\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n lv: {\n name: 'Latvian',\n examples: [{\n plural: 2,\n sample: 0\n }, {\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n !== 0 ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n !== 0 ? 1 : 2);\n }\n },\n mai: {\n name: 'Maithili',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mfe: {\n name: 'Mauritian Creole',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n mg: {\n name: 'Malagasy',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n mi: {\n name: 'Maori',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n mk: {\n name: 'Macedonian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n === 1 || n % 10 === 1 ? 0 : 1)',\n pluralsFunc: function(n) {\n return (n === 1 || n % 10 === 1 ? 0 : 1);\n }\n },\n ml: {\n name: 'Malayalam',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mn: {\n name: 'Mongolian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mni: {\n name: 'Manipuri',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mnk: {\n name: 'Mandinka',\n examples: [{\n plural: 0,\n sample: 0\n }, {\n plural: 1,\n sample: 1\n }, {\n plural: 2,\n sample: 2\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 0 ? 0 : n === 1 ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 0 ? 0 : n === 1 ? 1 : 2);\n }\n },\n mr: {\n name: 'Marathi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ms: {\n name: 'Malay',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n mt: {\n name: 'Maltese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 11\n }, {\n plural: 3,\n sample: 20\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n === 1 ? 0 : n === 0 || ( n % 100 > 1 && n % 100 < 11) ? 1 : (n % 100 > 10 && n % 100 < 20 ) ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 0 || (n % 100 > 1 && n % 100 < 11) ? 1 : (n % 100 > 10 && n % 100 < 20) ? 2 : 3);\n }\n },\n my: {\n name: 'Burmese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n nah: {\n name: 'Nahuatl',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nap: {\n name: 'Neapolitan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nb: {\n name: 'Norwegian Bokmal',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ne: {\n name: 'Nepali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nl: {\n name: 'Dutch',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nn: {\n name: 'Norwegian Nynorsk',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n no: {\n name: 'Norwegian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nso: {\n name: 'Northern Sotho',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n oc: {\n name: 'Occitan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n or: {\n name: 'Oriya',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pa: {\n name: 'Punjabi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pap: {\n name: 'Papiamento',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pl: {\n name: 'Polish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n pms: {\n name: 'Piemontese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ps: {\n name: 'Pashto',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pt: {\n name: 'Portuguese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n rm: {\n name: 'Romansh',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ro: {\n name: 'Romanian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 20\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : (n === 0 || (n % 100 > 0 && n % 100 < 20)) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : (n === 0 || (n % 100 > 0 && n % 100 < 20)) ? 1 : 2);\n }\n },\n ru: {\n name: 'Russian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n rw: {\n name: 'Kinyarwanda',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sah: {\n name: 'Yakut',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n sat: {\n name: 'Santali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sco: {\n name: 'Scots',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sd: {\n name: 'Sindhi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n se: {\n name: 'Northern Sami',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n si: {\n name: 'Sinhala',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sk: {\n name: 'Slovak',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2);\n }\n },\n sl: {\n name: 'Slovenian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 5\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n % 100 === 1 ? 0 : n % 100 === 2 ? 1 : n % 100 === 3 || n % 100 === 4 ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n % 100 === 1 ? 0 : n % 100 === 2 ? 1 : n % 100 === 3 || n % 100 === 4 ? 2 : 3);\n }\n },\n so: {\n name: 'Somali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n son: {\n name: 'Songhay',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sq: {\n name: 'Albanian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sr: {\n name: 'Serbian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n su: {\n name: 'Sundanese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n sv: {\n name: 'Swedish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sw: {\n name: 'Swahili',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ta: {\n name: 'Tamil',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n te: {\n name: 'Telugu',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n tg: {\n name: 'Tajik',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n th: {\n name: 'Thai',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ti: {\n name: 'Tigrinya',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n tk: {\n name: 'Turkmen',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n tr: {\n name: 'Turkish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n tt: {\n name: 'Tatar',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ug: {\n name: 'Uyghur',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n uk: {\n name: 'Ukrainian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n ur: {\n name: 'Urdu',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n uz: {\n name: 'Uzbek',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n vi: {\n name: 'Vietnamese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n wa: {\n name: 'Walloon',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n wo: {\n name: 'Wolof',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n yo: {\n name: 'Yoruba',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n zh: {\n name: 'Chinese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n }\n};\n","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nconst base64 = require('base64-js')\nconst ieee754 = require('ieee754')\nconst customInspectSymbol =\n (typeof Symbol === 'function' && typeof Symbol['for'] === 'function') // eslint-disable-line dot-notation\n ? Symbol['for']('nodejs.util.inspect.custom') // eslint-disable-line dot-notation\n : null\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\nconst K_MAX_LENGTH = 0x7fffffff\nexports.kMaxLength = K_MAX_LENGTH\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Print warning and recommend using `buffer` v4.x which has an Object\n * implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * We report that the browser does not support typed arrays if the are not subclassable\n * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n * for __proto__ and has a buggy typed array implementation.\n */\nBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport()\n\nif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n typeof console.error === 'function') {\n console.error(\n 'This browser lacks typed array (Uint8Array) support which is required by ' +\n '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n )\n}\n\nfunction typedArraySupport () {\n // Can typed array instances can be augmented?\n try {\n const arr = new Uint8Array(1)\n const proto = { foo: function () { return 42 } }\n Object.setPrototypeOf(proto, Uint8Array.prototype)\n Object.setPrototypeOf(arr, proto)\n return arr.foo() === 42\n } catch (e) {\n return false\n }\n}\n\nObject.defineProperty(Buffer.prototype, 'parent', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.buffer\n }\n})\n\nObject.defineProperty(Buffer.prototype, 'offset', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.byteOffset\n }\n})\n\nfunction createBuffer (length) {\n if (length > K_MAX_LENGTH) {\n throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n }\n // Return an augmented `Uint8Array` instance\n const buf = new Uint8Array(length)\n Object.setPrototypeOf(buf, Buffer.prototype)\n return buf\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new TypeError(\n 'The \"string\" argument must be of type string. Received type number'\n )\n }\n return allocUnsafe(arg)\n }\n return from(arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\nfunction from (value, encodingOrOffset, length) {\n if (typeof value === 'string') {\n return fromString(value, encodingOrOffset)\n }\n\n if (ArrayBuffer.isView(value)) {\n return fromArrayView(value)\n }\n\n if (value == null) {\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n }\n\n if (isInstance(value, ArrayBuffer) ||\n (value && isInstance(value.buffer, ArrayBuffer))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof SharedArrayBuffer !== 'undefined' &&\n (isInstance(value, SharedArrayBuffer) ||\n (value && isInstance(value.buffer, SharedArrayBuffer)))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof value === 'number') {\n throw new TypeError(\n 'The \"value\" argument must not be of type number. Received type number'\n )\n }\n\n const valueOf = value.valueOf && value.valueOf()\n if (valueOf != null && valueOf !== value) {\n return Buffer.from(valueOf, encodingOrOffset, length)\n }\n\n const b = fromObject(value)\n if (b) return b\n\n if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n typeof value[Symbol.toPrimitive] === 'function') {\n return Buffer.from(value[Symbol.toPrimitive]('string'), encodingOrOffset, length)\n }\n\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(value, encodingOrOffset, length)\n}\n\n// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n// https://github.com/feross/buffer/pull/148\nObject.setPrototypeOf(Buffer.prototype, Uint8Array.prototype)\nObject.setPrototypeOf(Buffer, Uint8Array)\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be of type number')\n } else if (size < 0) {\n throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n }\n}\n\nfunction alloc (size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpreted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(size).fill(fill, encoding)\n : createBuffer(size).fill(fill)\n }\n return createBuffer(size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(size, fill, encoding)\n}\n\nfunction allocUnsafe (size) {\n assertSize(size)\n return createBuffer(size < 0 ? 0 : checked(size) | 0)\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(size)\n}\n\nfunction fromString (string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n\n const length = byteLength(string, encoding) | 0\n let buf = createBuffer(length)\n\n const actual = buf.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n buf = buf.slice(0, actual)\n }\n\n return buf\n}\n\nfunction fromArrayLike (array) {\n const length = array.length < 0 ? 0 : checked(array.length) | 0\n const buf = createBuffer(length)\n for (let i = 0; i < length; i += 1) {\n buf[i] = array[i] & 255\n }\n return buf\n}\n\nfunction fromArrayView (arrayView) {\n if (isInstance(arrayView, Uint8Array)) {\n const copy = new Uint8Array(arrayView)\n return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength)\n }\n return fromArrayLike(arrayView)\n}\n\nfunction fromArrayBuffer (array, byteOffset, length) {\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\"offset\" is outside of buffer bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\"length\" is outside of buffer bounds')\n }\n\n let buf\n if (byteOffset === undefined && length === undefined) {\n buf = new Uint8Array(array)\n } else if (length === undefined) {\n buf = new Uint8Array(array, byteOffset)\n } else {\n buf = new Uint8Array(array, byteOffset, length)\n }\n\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(buf, Buffer.prototype)\n\n return buf\n}\n\nfunction fromObject (obj) {\n if (Buffer.isBuffer(obj)) {\n const len = checked(obj.length) | 0\n const buf = createBuffer(len)\n\n if (buf.length === 0) {\n return buf\n }\n\n obj.copy(buf, 0, 0, len)\n return buf\n }\n\n if (obj.length !== undefined) {\n if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n return createBuffer(0)\n }\n return fromArrayLike(obj)\n }\n\n if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n return fromArrayLike(obj.data)\n }\n}\n\nfunction checked (length) {\n // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= K_MAX_LENGTH) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return b != null && b._isBuffer === true &&\n b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n}\n\nBuffer.compare = function compare (a, b) {\n if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength)\n if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength)\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError(\n 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n )\n }\n\n if (a === b) return 0\n\n let x = a.length\n let y = b.length\n\n for (let i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!Array.isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n let i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n const buffer = Buffer.allocUnsafe(length)\n let pos = 0\n for (i = 0; i < list.length; ++i) {\n let buf = list[i]\n if (isInstance(buf, Uint8Array)) {\n if (pos + buf.length > buffer.length) {\n if (!Buffer.isBuffer(buf)) buf = Buffer.from(buf)\n buf.copy(buffer, pos)\n } else {\n Uint8Array.prototype.set.call(\n buffer,\n buf,\n pos\n )\n }\n } else if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n } else {\n buf.copy(buffer, pos)\n }\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n throw new TypeError(\n 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n 'Received type ' + typeof string\n )\n }\n\n const len = string.length\n const mustMatch = (arguments.length > 2 && arguments[2] === true)\n if (!mustMatch && len === 0) return 0\n\n // Use a for loop to avoid recursion\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) {\n return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n }\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n let loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coercion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n// reliably in a browserify context because there could be multiple different\n// copies of the 'buffer' package in use. This method works even for Buffer\n// instances that were created from another copy of the `buffer` package.\n// See: https://github.com/feross/buffer/issues/154\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n const i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n const len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (let i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n const len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (let i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n const len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (let i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n const length = this.length\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.toLocaleString = Buffer.prototype.toString\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n let str = ''\n const max = exports.INSPECT_MAX_BYTES\n str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim()\n if (this.length > max) str += ' ... '\n return ''\n}\nif (customInspectSymbol) {\n Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (isInstance(target, Uint8Array)) {\n target = Buffer.from(target, target.offset, target.byteLength)\n }\n if (!Buffer.isBuffer(target)) {\n throw new TypeError(\n 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n 'Received type ' + (typeof target)\n )\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n let x = thisEnd - thisStart\n let y = end - start\n const len = Math.min(x, y)\n\n const thisCopy = this.slice(thisStart, thisEnd)\n const targetCopy = target.slice(start, end)\n\n for (let i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (numberIsNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [val], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n let indexSize = 1\n let arrLength = arr.length\n let valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n let i\n if (dir) {\n let foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n let found = true\n for (let j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n const remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n const strLen = string.length\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n let i\n for (i = 0; i < length; ++i) {\n const parsed = parseInt(string.substr(i * 2, 2), 16)\n if (numberIsNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset >>> 0\n if (isFinite(length)) {\n length = length >>> 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n const remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n case 'latin1':\n case 'binary':\n return asciiWrite(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n const res = []\n\n let i = start\n while (i < end) {\n const firstByte = buf[i]\n let codePoint = null\n let bytesPerSequence = (firstByte > 0xEF)\n ? 4\n : (firstByte > 0xDF)\n ? 3\n : (firstByte > 0xBF)\n ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n let secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nconst MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n const len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n let res = ''\n let i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n const len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n let out = ''\n for (let i = start; i < end; ++i) {\n out += hexSliceLookupTable[buf[i]]\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n const bytes = buf.slice(start, end)\n let res = ''\n // If bytes.length is odd, the last 8 bits must be ignored (same as node.js)\n for (let i = 0; i < bytes.length - 1; i += 2) {\n res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256))\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n const len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n const newBuf = this.subarray(start, end)\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(newBuf, Buffer.prototype)\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUintLE =\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUintBE =\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n let val = this[offset + --byteLength]\n let mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUint8 =\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUint16LE =\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUint16BE =\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUint32LE =\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUint32BE =\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const lo = first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24\n\n const hi = this[++offset] +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n last * 2 ** 24\n\n return BigInt(lo) + (BigInt(hi) << BigInt(32))\n})\n\nBuffer.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const hi = first * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n const lo = this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last\n\n return (BigInt(hi) << BigInt(32)) + BigInt(lo)\n})\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let i = byteLength\n let mul = 1\n let val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = this[offset + 4] +\n this[offset + 5] * 2 ** 8 +\n this[offset + 6] * 2 ** 16 +\n (last << 24) // Overflow\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24)\n})\n\nBuffer.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = (first << 24) + // Overflow\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last)\n})\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUintLE =\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let mul = 1\n let i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUintBE =\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let i = byteLength - 1\n let mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUint8 =\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeUint16LE =\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeUint16BE =\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeUint32LE =\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeUint32BE =\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nfunction wrtBigUInt64LE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n return offset\n}\n\nfunction wrtBigUInt64BE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset + 7] = lo\n lo = lo >> 8\n buf[offset + 6] = lo\n lo = lo >> 8\n buf[offset + 5] = lo\n lo = lo >> 8\n buf[offset + 4] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset + 3] = hi\n hi = hi >> 8\n buf[offset + 2] = hi\n hi = hi >> 8\n buf[offset + 1] = hi\n hi = hi >> 8\n buf[offset] = hi\n return offset + 8\n}\n\nBuffer.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = 0\n let mul = 1\n let sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = byteLength - 1\n let mul = 1\n let sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nBuffer.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n const len = end - start\n\n if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') {\n // Use built-in when available, missing from IE11\n this.copyWithin(targetStart, start, end)\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, end),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n if (val.length === 1) {\n const code = val.charCodeAt(0)\n if ((encoding === 'utf8' && code < 128) ||\n encoding === 'latin1') {\n // Fast path: If `val` fits into a single byte, use that numeric value.\n val = code\n }\n }\n } else if (typeof val === 'number') {\n val = val & 255\n } else if (typeof val === 'boolean') {\n val = Number(val)\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n let i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n const bytes = Buffer.isBuffer(val)\n ? val\n : Buffer.from(val, encoding)\n const len = bytes.length\n if (len === 0) {\n throw new TypeError('The value \"' + val +\n '\" is invalid for argument \"value\"')\n }\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// CUSTOM ERRORS\n// =============\n\n// Simplified versions from Node, changed for Buffer-only usage\nconst errors = {}\nfunction E (sym, getMessage, Base) {\n errors[sym] = class NodeError extends Base {\n constructor () {\n super()\n\n Object.defineProperty(this, 'message', {\n value: getMessage.apply(this, arguments),\n writable: true,\n configurable: true\n })\n\n // Add the error code to the name to include it in the stack trace.\n this.name = `${this.name} [${sym}]`\n // Access the stack to generate the error message including the error code\n // from the name.\n this.stack // eslint-disable-line no-unused-expressions\n // Reset the name to the actual name.\n delete this.name\n }\n\n get code () {\n return sym\n }\n\n set code (value) {\n Object.defineProperty(this, 'code', {\n configurable: true,\n enumerable: true,\n value,\n writable: true\n })\n }\n\n toString () {\n return `${this.name} [${sym}]: ${this.message}`\n }\n }\n}\n\nE('ERR_BUFFER_OUT_OF_BOUNDS',\n function (name) {\n if (name) {\n return `${name} is outside of buffer bounds`\n }\n\n return 'Attempt to access memory outside buffer bounds'\n }, RangeError)\nE('ERR_INVALID_ARG_TYPE',\n function (name, actual) {\n return `The \"${name}\" argument must be of type number. Received type ${typeof actual}`\n }, TypeError)\nE('ERR_OUT_OF_RANGE',\n function (str, range, input) {\n let msg = `The value of \"${str}\" is out of range.`\n let received = input\n if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) {\n received = addNumericalSeparator(String(input))\n } else if (typeof input === 'bigint') {\n received = String(input)\n if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) {\n received = addNumericalSeparator(received)\n }\n received += 'n'\n }\n msg += ` It must be ${range}. Received ${received}`\n return msg\n }, RangeError)\n\nfunction addNumericalSeparator (val) {\n let res = ''\n let i = val.length\n const start = val[0] === '-' ? 1 : 0\n for (; i >= start + 4; i -= 3) {\n res = `_${val.slice(i - 3, i)}${res}`\n }\n return `${val.slice(0, i)}${res}`\n}\n\n// CHECK FUNCTIONS\n// ===============\n\nfunction checkBounds (buf, offset, byteLength) {\n validateNumber(offset, 'offset')\n if (buf[offset] === undefined || buf[offset + byteLength] === undefined) {\n boundsError(offset, buf.length - (byteLength + 1))\n }\n}\n\nfunction checkIntBI (value, min, max, buf, offset, byteLength) {\n if (value > max || value < min) {\n const n = typeof min === 'bigint' ? 'n' : ''\n let range\n if (byteLength > 3) {\n if (min === 0 || min === BigInt(0)) {\n range = `>= 0${n} and < 2${n} ** ${(byteLength + 1) * 8}${n}`\n } else {\n range = `>= -(2${n} ** ${(byteLength + 1) * 8 - 1}${n}) and < 2 ** ` +\n `${(byteLength + 1) * 8 - 1}${n}`\n }\n } else {\n range = `>= ${min}${n} and <= ${max}${n}`\n }\n throw new errors.ERR_OUT_OF_RANGE('value', range, value)\n }\n checkBounds(buf, offset, byteLength)\n}\n\nfunction validateNumber (value, name) {\n if (typeof value !== 'number') {\n throw new errors.ERR_INVALID_ARG_TYPE(name, 'number', value)\n }\n}\n\nfunction boundsError (value, length, type) {\n if (Math.floor(value) !== value) {\n validateNumber(value, type)\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset', 'an integer', value)\n }\n\n if (length < 0) {\n throw new errors.ERR_BUFFER_OUT_OF_BOUNDS()\n }\n\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset',\n `>= ${type ? 1 : 0} and <= ${length}`,\n value)\n}\n\n// HELPER FUNCTIONS\n// ================\n\nconst INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node takes equal signs as end of the Base64 encoding\n str = str.split('=')[0]\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = str.trim().replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n let codePoint\n const length = string.length\n let leadSurrogate = null\n const bytes = []\n\n for (let i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n let c, hi, lo\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n let i\n for (i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\n// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n// the `instanceof` check but they should be treated as of that type.\n// See: https://github.com/feross/buffer/issues/166\nfunction isInstance (obj, type) {\n return obj instanceof type ||\n (obj != null && obj.constructor != null && obj.constructor.name != null &&\n obj.constructor.name === type.name)\n}\nfunction numberIsNaN (obj) {\n // For IE11 support\n return obj !== obj // eslint-disable-line no-self-compare\n}\n\n// Create lookup table for `toString('hex')`\n// See: https://github.com/feross/buffer/issues/219\nconst hexSliceLookupTable = (function () {\n const alphabet = '0123456789abcdef'\n const table = new Array(256)\n for (let i = 0; i < 16; ++i) {\n const i16 = i * 16\n for (let j = 0; j < 16; ++j) {\n table[i16 + j] = alphabet[i] + alphabet[j]\n }\n }\n return table\n})()\n\n// Return not function with Error if BigInt not supported\nfunction defineBigIntMethod (fn) {\n return typeof BigInt === 'undefined' ? BufferBigIntNotDefined : fn\n}\n\nfunction BufferBigIntNotDefined () {\n throw new Error('BigInt not supported')\n}\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","\"use strict\";\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};","\"use strict\";\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;","\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{class:{ 'icon-loading': _vm.loading }},[(_vm.error)?_c('NcEmptyContent',{attrs:{\"title\":_vm.error},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('span',{staticClass:\"icon-error\"})]},proxy:true}],null,false,3191801335)}):[_c('ul',_vm._l((_vm.activities),function(activity){return _c('Activity',{key:activity.id,attrs:{\"activity\":activity}})}),1),_vm._v(\" \"),(_vm.activities.length === 0 && !_vm.loading)?_c('NcEmptyContent',{attrs:{\"title\":_vm.t('activity', 'No activity yet')},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('span',{staticClass:\"icon-activity\"})]},proxy:true}],null,false,999709570)}):_vm._e()]],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","'use strict';\n\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n","'use strict';\n\nimport bind from './helpers/bind.js';\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst {toString} = Object.prototype;\nconst {getPrototypeOf} = Object;\n\nconst kindOf = (cache => thing => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type\n}\n\nconst typeOfTest = type => thing => typeof thing === type;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst {isArray} = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = thing => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nconst isFormData = (thing) => {\n let kind;\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) || (\n isFunction(thing.append) && (\n (kind = kindOf(thing)) === 'formdata' ||\n // detect form-data instance\n (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')\n )\n )\n )\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => str.trim ?\n str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Boolean} [allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, {allOwnKeys = false} = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== \"undefined\") return globalThis;\n return typeof self !== \"undefined\" ? self : (typeof window !== 'undefined' ? window : global)\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n const {caseless} = isContextDefined(this) && this || {};\n const result = {};\n const assignValue = (val, key) => {\n const targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n }\n\n for (let i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Boolean} [allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, {allOwnKeys}= {}) => {\n forEach(b, (val, key) => {\n if (thisArg && isFunction(val)) {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n }, {allOwnKeys});\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', {\n value: superConstructor.prototype\n });\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = (TypedArray => {\n // eslint-disable-next-line func-names\n return thing => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[Symbol.iterator];\n\n const iterator = generator.call(obj);\n\n let result;\n\n while ((result = iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n}\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n}\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = str => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g,\n function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n }\n );\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n if (reducer(descriptor, name, obj) !== false) {\n reducedDescriptors[name] = descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n}\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n}\n\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach(value => {\n obj[value] = true;\n });\n }\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n}\n\nconst noop = () => {}\n\nconst toFiniteNumber = (value, defaultValue) => {\n value = +value;\n return Number.isFinite(value) ? value : defaultValue;\n}\n\nconst ALPHA = 'abcdefghijklmnopqrstuvwxyz'\n\nconst DIGIT = '0123456789';\n\nconst ALPHABET = {\n DIGIT,\n ALPHA,\n ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT\n}\n\nconst generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {\n let str = '';\n const {length} = alphabet;\n while (size--) {\n str += alphabet[Math.random() * length|0]\n }\n\n return str;\n}\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\n}\n\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n if(!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n }\n\n return visit(obj, 0);\n}\n\nconst isAsyncFn = kindOfTest('AsyncFunction');\n\nconst isThenable = (thing) =>\n thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);\n\nexport default {\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isUndefined,\n isDate,\n isFile,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n ALPHABET,\n generateString,\n isSpecCompliantForm,\n toJSONObject,\n isAsyncFn,\n isThenable\n};\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = (new Error()).stack;\n }\n\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n response && (this.response = response);\n}\n\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: utils.toJSONObject(this.config),\n code: this.code,\n status: this.response && this.response.status ? this.response.status : null\n };\n }\n});\n\nconst prototype = AxiosError.prototype;\nconst descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n// eslint-disable-next-line func-names\n].forEach(code => {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = (error, code, config, request, response, customProps) => {\n const axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, prop => {\n return prop !== 'isAxiosError';\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.cause = error;\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nexport default AxiosError;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\nimport PlatformFormData from '../platform/node/classes/FormData.js';\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path.concat(key).map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (PlatformFormData || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = utils.toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !utils.isUndefined(source[option]);\n });\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n const useBlob = _Blob && utils.isSpecCompliantForm(formData);\n\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (value && !path && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (utils.isArray(value) && isFlatArray(value)) ||\n ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))\n )) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) && formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable\n });\n\n function build(value, path) {\n if (utils.isUndefined(value)) return;\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n utils.forEach(value, function each(el, key) {\n const result = !(utils.isUndefined(el) || el === null) && visitor.call(\n formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers\n );\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n\n stack.pop();\n }\n\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\nexport default toFormData;\n","'use strict';\n\nimport toFormData from './toFormData.js';\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object} params - The parameters to be converted to a FormData object.\n * @param {Object} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && toFormData(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder ? function(value) {\n return encoder.call(this, value, encode);\n } : encode;\n\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\n\nexport default AxiosURLSearchParams;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\n\n/**\n * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their\n * URI encoded counterparts\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?object} options\n *\n * @returns {string} The formatted url\n */\nexport default function buildURL(url, params, options) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n \n const _encode = options && options.encode || encode;\n\n const serializeFn = options && options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = utils.isURLSearchParams(params) ?\n params.toString() :\n new AxiosURLSearchParams(params, options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf(\"#\");\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\nexport default InterceptorManager;\n","'use strict';\n\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n","import URLSearchParams from './classes/URLSearchParams.js'\nimport FormData from './classes/FormData.js'\nimport Blob from './classes/Blob.js'\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst isStandardBrowserEnv = (() => {\n let product;\n if (typeof navigator !== 'undefined' && (\n (product = navigator.product) === 'ReactNative' ||\n product === 'NativeScript' ||\n product === 'NS')\n ) {\n return false;\n }\n\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n})();\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\n const isStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\n\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams,\n FormData,\n Blob\n },\n isStandardBrowserEnv,\n isStandardBrowserWebWorkerEnv,\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data']\n};\n","'use strict';\n\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;\n","'use strict';\n\nexport default typeof FormData !== 'undefined' ? FormData : null;\n","'use strict'\n\nexport default typeof Blob !== 'undefined' ? Blob : null\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map(match => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n const obj = {};\n\n utils.forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\nexport default formDataToJSON;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\n\nconst DEFAULT_CONTENT_TYPE = {\n 'Content-Type': undefined\n};\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n\n transitional: transitionalDefaults,\n\n adapter: ['xhr', 'http'],\n\n transformRequest: [function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = utils.isObject(data);\n\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = utils.isFormData(data);\n\n if (isFormData) {\n if (!hasJSONContentType) {\n return data;\n }\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n\n if (utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, this.formSerializer).toString();\n }\n\n if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n const _FormData = this.env && this.env.FormData;\n\n return toFormData(\n isFileList ? {'files[]': data} : data,\n _FormData && new _FormData(),\n this.formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType ) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n const transitional = this.transitional || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const JSONRequested = this.responseType === 'json';\n\n if (data && utils.isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nexport default defaults;\n","'use strict';\n\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\n\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\n visitor: function(value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = utils.toObjectSet([\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\nexport default rawHeaders => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\n\nconst $internals = Symbol('internals');\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!utils.isString(value)) return;\n\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header.trim()\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = utils.toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach(methodName => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = utils.findKey(self, lHeader);\n\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite)\n } else if(utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = utils.findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n utils.forEach(this, (value, header) => {\n const key = utils.findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n utils.forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals = this[$internals] = (this[$internals] = {\n accessors: {}\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\n\nutils.freezeMethods(AxiosHeaders.prototype);\nutils.freezeMethods(AxiosHeaders);\n\nexport default AxiosHeaders;\n","'use strict';\n\nimport utils from './../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nexport default function transformData(fns, response) {\n const config = this || defaults;\n const context = response || config;\n const headers = AxiosHeaders.from(context.headers);\n let data = context.data;\n\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n","'use strict';\n\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n","'use strict';\n\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\nfunction CanceledError(message, config, request) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nexport default CanceledError;\n","'use strict';\n\nimport utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.isStandardBrowserEnv ?\n\n// Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n const cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n const match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n// Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })();\n","'use strict';\n\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nexport default function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nexport default function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n","'use strict';\n\nimport utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.isStandardBrowserEnv ?\n\n// Standard browser envs have full support of the APIs needed to test\n// whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n const msie = /(msie|trident)/i.test(navigator.userAgent);\n const urlParsingNode = document.createElement('a');\n let originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n let href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n const parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })();\n","'use strict';\n\nimport utils from './../utils.js';\nimport settle from './../core/settle.js';\nimport cookies from './../helpers/cookies.js';\nimport buildURL from './../helpers/buildURL.js';\nimport buildFullPath from '../core/buildFullPath.js';\nimport isURLSameOrigin from './../helpers/isURLSameOrigin.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport speedometer from '../helpers/speedometer.js';\n\nfunction progressEventReducer(listener, isDownloadStream) {\n let bytesNotified = 0;\n const _speedometer = speedometer(50, 250);\n\n return e => {\n const loaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const progressBytes = loaded - bytesNotified;\n const rate = _speedometer(progressBytes);\n const inRange = loaded <= total;\n\n bytesNotified = loaded;\n\n const data = {\n loaded,\n total,\n progress: total ? (loaded / total) : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e\n };\n\n data[isDownloadStream ? 'download' : 'upload'] = true;\n\n listener(data);\n };\n}\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\nexport default isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n let requestData = config.data;\n const requestHeaders = AxiosHeaders.from(config.headers).normalize();\n const responseType = config.responseType;\n let onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n\n if (utils.isFormData(requestData)) {\n if (platform.isStandardBrowserEnv || platform.isStandardBrowserWebWorkerEnv) {\n requestHeaders.setContentType(false); // Let the browser set it\n } else {\n requestHeaders.setContentType('multipart/form-data;', false); // mobile/desktop app frameworks\n }\n }\n\n let request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n const username = config.auth.username || '';\n const password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.set('Authorization', 'Basic ' + btoa(username + ':' + password));\n }\n\n const fullPath = buildFullPath(config.baseURL, config.url);\n\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = AxiosHeaders.from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';\n const transitional = config.transitional || transitionalDefaults;\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (platform.isStandardBrowserEnv) {\n // Add xsrf header\n const xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath))\n && config.xsrfCookieName && cookies.read(config.xsrfCookieName);\n\n if (xsrfValue) {\n requestHeaders.set(config.xsrfHeaderName, xsrfValue);\n }\n }\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', progressEventReducer(config.onDownloadProgress, true));\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', progressEventReducer(config.onUploadProgress));\n }\n\n if (config.cancelToken || config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = cancel => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n request = null;\n };\n\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = parseProtocol(fullPath);\n\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData || null);\n });\n}\n","'use strict';\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\n\nexport default speedometer;\n","import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport AxiosError from \"../core/AxiosError.js\";\n\nconst knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter\n}\n\nutils.forEach(knownAdapters, (fn, value) => {\n if(fn) {\n try {\n Object.defineProperty(fn, 'name', {value});\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', {value});\n }\n});\n\nexport default {\n getAdapter: (adapters) => {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n\n const {length} = adapters;\n let nameOrAdapter;\n let adapter;\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n if((adapter = utils.isString(nameOrAdapter) ? knownAdapters[nameOrAdapter.toLowerCase()] : nameOrAdapter)) {\n break;\n }\n }\n\n if (!adapter) {\n if (adapter === false) {\n throw new AxiosError(\n `Adapter ${nameOrAdapter} is not supported by the environment`,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n throw new Error(\n utils.hasOwnProp(knownAdapters, nameOrAdapter) ?\n `Adapter '${nameOrAdapter}' is not available in the build` :\n `Unknown adapter '${nameOrAdapter}'`\n );\n }\n\n if (!utils.isFunction(adapter)) {\n throw new TypeError('adapter is not a function');\n }\n\n return adapter;\n },\n adapters: knownAdapters\n}\n","// eslint-disable-next-line strict\nexport default null;\n","'use strict';\n\nimport AxiosError from './AxiosError.js';\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nexport default function settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n}\n","'use strict';\n\nexport default function parseProtocol(url) {\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}\n","'use strict';\n\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from \"../adapters/adapters.js\";\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = AxiosHeaders.from(config.headers);\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.transformRequest\n );\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter);\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n config.transformResponse,\n response\n );\n\n response.headers = AxiosHeaders.from(response.headers);\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n config.transformResponse,\n reason.response\n );\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n });\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from \"./AxiosHeaders.js\";\n\nconst headersToObject = (thing) => thing instanceof AxiosHeaders ? thing.toJSON() : thing;\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nexport default function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n const config = {};\n\n function getMergedValue(target, source, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({caseless}, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(a, b, caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b) => mergeDeepProperties(headersToObject(a), headersToObject(b), true)\n };\n\n utils.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\n const merge = mergeMap[prop] || mergeDeepProperties;\n const configValue = merge(config1[prop], config2[prop], prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n","export const VERSION = \"1.4.0\";","'use strict';\n\nimport {VERSION} from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n const validator = schema[opt];\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nexport default {\n assertOptions,\n validators\n};\n","'use strict';\n\nimport utils from './../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst validators = validator.validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n const {transitional, paramsSerializer, headers} = config;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n if (paramsSerializer != null) {\n if (utils.isFunction(paramsSerializer)) {\n config.paramsSerializer = {\n serialize: paramsSerializer\n }\n } else {\n validator.assertOptions(paramsSerializer, {\n encode: validators.function,\n serialize: validators.function\n }, true);\n }\n }\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n let contextHeaders;\n\n // Flatten headers\n contextHeaders = headers && utils.merge(\n headers.common,\n headers[config.method]\n );\n\n contextHeaders && utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n (method) => {\n delete headers[method];\n }\n );\n\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [dispatchRequest.bind(this), undefined];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n i = 0;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = mergeConfig(this.defaults, config);\n const fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url,\n data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nexport default Axios;\n","'use strict';\n\nimport CanceledError from './CanceledError.js';\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(cancel => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = onfulfilled => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise(resolve => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel\n };\n }\n}\n\nexport default CancelToken;\n","const HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\nexport default HttpStatusCode;\n","'use strict';\n\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport {VERSION} from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from \"./core/AxiosHeaders.js\";\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new Axios(defaultConfig);\n const instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context, {allOwnKeys: true});\n\n // Copy context to instance\n utils.extend(instance, context, null, {allOwnKeys: true});\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\n\n// Expose AxiosError class\naxios.AxiosError = AxiosError;\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = spread;\n\n// Expose isAxiosError\naxios.isAxiosError = isAxiosError;\n\n// Expose mergeConfig\naxios.mergeConfig = mergeConfig;\n\naxios.AxiosHeaders = AxiosHeaders;\n\naxios.formToJSON = thing => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.HttpStatusCode = HttpStatusCode;\n\naxios.default = axios;\n\n// this module should only have a default export\nexport default axios\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && (payload.isAxiosError === true);\n}\n","import valid from 'semver/functions/valid.js';\nimport major from 'semver/functions/major.js';\n\nclass ProxyBus {\n bus;\n constructor(bus) {\n if (typeof bus.getVersion !== 'function' || !valid(bus.getVersion())) {\n console.warn('Proxying an event bus with an unknown or invalid version');\n }\n else if (major(bus.getVersion()) !== major(this.getVersion())) {\n console.warn('Proxying an event bus of version ' + bus.getVersion() + ' with ' + this.getVersion());\n }\n this.bus = bus;\n }\n getVersion() {\n return \"3.1.0\";\n }\n subscribe(name, handler) {\n this.bus.subscribe(name, handler);\n }\n unsubscribe(name, handler) {\n this.bus.unsubscribe(name, handler);\n }\n emit(name, event) {\n this.bus.emit(name, event);\n }\n}\n\nclass SimpleBus {\n handlers = new Map();\n getVersion() {\n return \"3.1.0\";\n }\n subscribe(name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).concat(handler));\n }\n unsubscribe(name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).filter(h => h != handler));\n }\n emit(name, event) {\n (this.handlers.get(name) || []).forEach(h => {\n try {\n h(event);\n }\n catch (e) {\n console.error('could not invoke event listener', e);\n }\n });\n }\n}\n\nlet bus = null;\nfunction getBus() {\n if (bus !== null) {\n return bus;\n }\n if (typeof window === 'undefined') {\n // testing or SSR\n return new Proxy({}, {\n get: () => {\n return () => console.error('Window not available, EventBus can not be established!');\n }\n });\n }\n if (typeof window.OC !== 'undefined' && window.OC._eventBus && typeof window._nc_event_bus === 'undefined') {\n console.warn('found old event bus instance at OC._eventBus. Update your version!');\n window._nc_event_bus = window.OC._eventBus;\n }\n // Either use an existing event bus instance or create one\n if (typeof window?._nc_event_bus !== 'undefined') {\n bus = new ProxyBus(window._nc_event_bus);\n }\n else {\n bus = window._nc_event_bus = new SimpleBus();\n }\n return bus;\n}\n/**\n * Register an event listener\n *\n * @param name name of the event\n * @param handler callback invoked for every matching event emitted on the bus\n */\nfunction subscribe(name, handler) {\n getBus().subscribe(name, handler);\n}\n/**\n * Unregister a previously registered event listener\n *\n * Note: doesn't work with anonymous functions (closures). Use method of an object or store listener function in variable.\n *\n * @param name name of the event\n * @param handler callback passed to `subscribed`\n */\nfunction unsubscribe(name, handler) {\n getBus().unsubscribe(name, handler);\n}\n/**\n * Emit an event\n *\n * @param name name of the event\n * @param event event payload\n */\nfunction emit(name, event) {\n getBus().emit(name, event);\n}\n\nexport { ProxyBus, SimpleBus, emit, subscribe, unsubscribe };\n//# sourceMappingURL=index.mjs.map\n","import { subscribe } from '@nextcloud/event-bus';\n\nlet token = undefined;\nconst observers = [];\n/**\n * Get current request token\n *\n * @return {string|null} Current request token or null if not set\n */\nfunction getRequestToken() {\n if (token === undefined) {\n // Only on first load, try to get token from document\n const tokenElement = document?.getElementsByTagName('head')[0];\n token = tokenElement ? tokenElement.getAttribute('data-requesttoken') : null;\n }\n return token;\n}\n/**\n * Add an observer which is called when the CSRF token changes\n *\n * @param observer The observer\n */\nfunction onRequestTokenUpdate(observer) {\n observers.push(observer);\n}\n// Listen to server event and keep token in sync\nsubscribe('csrf-token-update', e => {\n token = e.token;\n observers.forEach(observer => {\n try {\n observer(e.token);\n }\n catch (e) {\n console.error('error updating CSRF token observer', e);\n }\n });\n});\n\n/// \nconst getAttribute = (el, attribute) => {\n if (el) {\n return el.getAttribute(attribute);\n }\n return null;\n};\nlet currentUser = undefined;\nfunction getCurrentUser() {\n if (currentUser !== undefined) {\n return currentUser;\n }\n const head = document?.getElementsByTagName('head')[0];\n if (!head) {\n return null;\n }\n // No user logged in so cache and return null\n const uid = getAttribute(head, 'data-user');\n if (uid === null) {\n currentUser = null;\n return currentUser;\n }\n currentUser = {\n uid,\n displayName: getAttribute(head, 'data-user-displayname'),\n isAdmin: (typeof OC === 'undefined') ? false : OC.isUserAdmin(),\n };\n return currentUser;\n}\n\nexport { getCurrentUser, getRequestToken, onRequestTokenUpdate };\n//# sourceMappingURL=index.es.mjs.map\n","import Axios from 'axios';\nimport { getRequestToken, onRequestTokenUpdate } from '@nextcloud/auth';\nimport { generateUrl } from '@nextcloud/router';\n\n/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\n\r\nvar __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\r\n\r\nfunction __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nfunction __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\ntypeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\n\nvar RETRY_KEY = Symbol('csrf-retry');\nvar onError$2 = function (axios) { return function (error) { return __awaiter(void 0, void 0, void 0, function () {\n var config, response, request, responseURL, status, token;\n var _a;\n var _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n config = error.config, response = error.response, request = error.request;\n responseURL = request === null || request === void 0 ? void 0 : request.responseURL;\n status = response === null || response === void 0 ? void 0 : response.status;\n if (!(status === 412\n && ((_b = response === null || response === void 0 ? void 0 : response.data) === null || _b === void 0 ? void 0 : _b.message) === 'CSRF check failed'\n && config[RETRY_KEY] === undefined)) return [3 /*break*/, 2];\n console.warn(\"Request to \".concat(responseURL, \" failed because of a CSRF mismatch. Fetching a new token\"));\n return [4 /*yield*/, axios.get(generateUrl('/csrftoken'))];\n case 1:\n token = (_c.sent()).data.token;\n console.debug(\"New request token \".concat(token, \" fetched\"));\n axios.defaults.headers.requesttoken = token;\n return [2 /*return*/, axios(__assign(__assign({}, config), (_a = { headers: __assign(__assign({}, config.headers), { requesttoken: token }) }, _a[RETRY_KEY] = true, _a)))];\n case 2: return [2 /*return*/, Promise.reject(error)];\n }\n });\n}); }; };\n\nvar RETRY_DELAY_KEY = Symbol('retryDelay');\nvar onError$1 = function (axios) { return function (error) { return __awaiter(void 0, void 0, void 0, function () {\n var config, response, request, responseURL, status, headers, retryDelay_1;\n var _a;\n var _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n config = error.config, response = error.response, request = error.request;\n responseURL = request === null || request === void 0 ? void 0 : request.responseURL;\n status = response === null || response === void 0 ? void 0 : response.status;\n headers = response === null || response === void 0 ? void 0 : response.headers;\n if (!(status === 503\n && headers['x-nextcloud-maintenance-mode'] === '1'\n && config.retryIfMaintenanceMode\n && (!config[RETRY_DELAY_KEY] || config[RETRY_DELAY_KEY] <= 32))) return [3 /*break*/, 2];\n retryDelay_1 = ((_b = config[RETRY_DELAY_KEY]) !== null && _b !== void 0 ? _b : 1) * 2;\n console.warn(\"Request to \".concat(responseURL, \" failed because of maintenance mode. Retrying in \").concat(retryDelay_1, \"s\"));\n return [4 /*yield*/, new Promise(function (resolve) {\n setTimeout(resolve, retryDelay_1 * 1000);\n })];\n case 1:\n _c.sent();\n return [2 /*return*/, axios(__assign(__assign({}, config), (_a = {}, _a[RETRY_DELAY_KEY] = retryDelay_1, _a)))];\n case 2: return [2 /*return*/, Promise.reject(error)];\n }\n });\n}); }; };\n\nvar onError = function (error) { return __awaiter(void 0, void 0, void 0, function () {\n var config, response, request, responseURL, status;\n var _a;\n return __generator(this, function (_b) {\n config = error.config, response = error.response, request = error.request;\n responseURL = request === null || request === void 0 ? void 0 : request.responseURL;\n status = response === null || response === void 0 ? void 0 : response.status;\n if (status === 401\n && ((_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.message) === 'Current user is not logged in'\n && config.reloadExpiredSession\n && (window === null || window === void 0 ? void 0 : window.location)) {\n console.error(\"Request to \".concat(responseURL, \" failed because the user session expired. Reloading the page \\u2026\"));\n window.location.reload();\n }\n return [2 /*return*/, Promise.reject(error)];\n });\n}); };\n\nvar _a;\nvar client = Axios.create({\n headers: {\n requesttoken: (_a = getRequestToken()) !== null && _a !== void 0 ? _a : '',\n },\n});\nvar cancelableClient = Object.assign(client, {\n CancelToken: Axios.CancelToken,\n isCancel: Axios.isCancel,\n});\ncancelableClient.interceptors.response.use(function (r) { return r; }, onError$2(cancelableClient));\ncancelableClient.interceptors.response.use(function (r) { return r; }, onError$1(cancelableClient));\ncancelableClient.interceptors.response.use(function (r) { return r; }, onError);\nonRequestTokenUpdate(function (token) { client.defaults.headers.requesttoken = token; });\n\nexport { cancelableClient as default };\n//# sourceMappingURL=index.es.mjs.map\n","import axios from \"@nextcloud/axios\";\nimport { generateOcsUrl } from \"@nextcloud/router\";\nfunction bail(error) {\n if (error) {\n throw error;\n }\n}\n/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\nvar isBuffer$1 = function isBuffer(obj) {\n return obj != null && obj.constructor != null && typeof obj.constructor.isBuffer === \"function\" && obj.constructor.isBuffer(obj);\n};\nvar hasOwn = Object.prototype.hasOwnProperty;\nvar toStr = Object.prototype.toString;\nvar defineProperty = Object.defineProperty;\nvar gOPD = Object.getOwnPropertyDescriptor;\nvar isArray = function isArray2(arr) {\n if (typeof Array.isArray === \"function\") {\n return Array.isArray(arr);\n }\n return toStr.call(arr) === \"[object Array]\";\n};\nvar isPlainObject$1 = function isPlainObject(obj) {\n if (!obj || toStr.call(obj) !== \"[object Object]\") {\n return false;\n }\n var hasOwnConstructor = hasOwn.call(obj, \"constructor\");\n var hasIsPrototypeOf = obj.constructor && obj.constructor.prototype && hasOwn.call(obj.constructor.prototype, \"isPrototypeOf\");\n if (obj.constructor && !hasOwnConstructor && !hasIsPrototypeOf) {\n return false;\n }\n var key;\n for (key in obj) {\n }\n return typeof key === \"undefined\" || hasOwn.call(obj, key);\n};\nvar setProperty = function setProperty2(target, options) {\n if (defineProperty && options.name === \"__proto__\") {\n defineProperty(target, options.name, {\n enumerable: true,\n configurable: true,\n value: options.newValue,\n writable: true\n });\n } else {\n target[options.name] = options.newValue;\n }\n};\nvar getProperty = function getProperty2(obj, name) {\n if (name === \"__proto__\") {\n if (!hasOwn.call(obj, name)) {\n return void 0;\n } else if (gOPD) {\n return gOPD(obj, name).value;\n }\n }\n return obj[name];\n};\nvar extend = function extend2() {\n var options, name, src, copy, copyIsArray, clone;\n var target = arguments[0];\n var i = 1;\n var length = arguments.length;\n var deep = false;\n if (typeof target === \"boolean\") {\n deep = target;\n target = arguments[1] || {};\n i = 2;\n }\n if (target == null || typeof target !== \"object\" && typeof target !== \"function\") {\n target = {};\n }\n for (; i < length; ++i) {\n options = arguments[i];\n if (options != null) {\n for (name in options) {\n src = getProperty(target, name);\n copy = getProperty(options, name);\n if (target !== copy) {\n if (deep && copy && (isPlainObject$1(copy) || (copyIsArray = isArray(copy)))) {\n if (copyIsArray) {\n copyIsArray = false;\n clone = src && isArray(src) ? src : [];\n } else {\n clone = src && isPlainObject$1(src) ? src : {};\n }\n setProperty(target, { name, newValue: extend2(deep, clone, copy) });\n } else if (typeof copy !== \"undefined\") {\n setProperty(target, { name, newValue: copy });\n }\n }\n }\n }\n }\n return target;\n};\nfunction isPlainObject2(value) {\n if (typeof value !== \"object\" || value === null) {\n return false;\n }\n const prototype = Object.getPrototypeOf(value);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in value) && !(Symbol.iterator in value);\n}\nfunction trough() {\n const fns = [];\n const pipeline = { run, use };\n return pipeline;\n function run(...values) {\n let middlewareIndex = -1;\n const callback = values.pop();\n if (typeof callback !== \"function\") {\n throw new TypeError(\"Expected function as last argument, not \" + callback);\n }\n next(null, ...values);\n function next(error, ...output) {\n const fn = fns[++middlewareIndex];\n let index2 = -1;\n if (error) {\n callback(error);\n return;\n }\n while (++index2 < values.length) {\n if (output[index2] === null || output[index2] === void 0) {\n output[index2] = values[index2];\n }\n }\n values = output;\n if (fn) {\n wrap$1(fn, next)(...output);\n } else {\n callback(null, ...output);\n }\n }\n }\n function use(middelware) {\n if (typeof middelware !== \"function\") {\n throw new TypeError(\n \"Expected `middelware` to be a function, not \" + middelware\n );\n }\n fns.push(middelware);\n return pipeline;\n }\n}\nfunction wrap$1(middleware, callback) {\n let called;\n return wrapped;\n function wrapped(...parameters) {\n const fnExpectsCallback = middleware.length > parameters.length;\n let result;\n if (fnExpectsCallback) {\n parameters.push(done);\n }\n try {\n result = middleware.apply(this, parameters);\n } catch (error) {\n const exception = error;\n if (fnExpectsCallback && called) {\n throw exception;\n }\n return done(exception);\n }\n if (!fnExpectsCallback) {\n if (result instanceof Promise) {\n result.then(then, done);\n } else if (result instanceof Error) {\n done(result);\n } else {\n then(result);\n }\n }\n }\n function done(error, ...output) {\n if (!called) {\n called = true;\n callback(error, ...output);\n }\n }\n function then(value) {\n done(null, value);\n }\n}\n/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\nvar isBuffer2 = function isBuffer3(obj) {\n return obj != null && obj.constructor != null && typeof obj.constructor.isBuffer === \"function\" && obj.constructor.isBuffer(obj);\n};\nfunction stringifyPosition(value) {\n if (!value || typeof value !== \"object\") {\n return \"\";\n }\n if (\"position\" in value || \"type\" in value) {\n return position(value.position);\n }\n if (\"start\" in value || \"end\" in value) {\n return position(value);\n }\n if (\"line\" in value || \"column\" in value) {\n return point$1(value);\n }\n return \"\";\n}\nfunction point$1(point2) {\n return index(point2 && point2.line) + \":\" + index(point2 && point2.column);\n}\nfunction position(pos) {\n return point$1(pos && pos.start) + \"-\" + point$1(pos && pos.end);\n}\nfunction index(value) {\n return value && typeof value === \"number\" ? value : 1;\n}\nclass VFileMessage extends Error {\n constructor(reason, place, origin) {\n const parts = [null, null];\n let position2 = {\n start: { line: null, column: null },\n end: { line: null, column: null }\n };\n super();\n if (typeof place === \"string\") {\n origin = place;\n place = void 0;\n }\n if (typeof origin === \"string\") {\n const index2 = origin.indexOf(\":\");\n if (index2 === -1) {\n parts[1] = origin;\n } else {\n parts[0] = origin.slice(0, index2);\n parts[1] = origin.slice(index2 + 1);\n }\n }\n if (place) {\n if (\"type\" in place || \"position\" in place) {\n if (place.position) {\n position2 = place.position;\n }\n } else if (\"start\" in place || \"end\" in place) {\n position2 = place;\n } else if (\"line\" in place || \"column\" in place) {\n position2.start = place;\n }\n }\n this.name = stringifyPosition(place) || \"1:1\";\n this.message = typeof reason === \"object\" ? reason.message : reason;\n this.stack = typeof reason === \"object\" ? reason.stack : \"\";\n this.reason = this.message;\n this.fatal;\n this.line = position2.start.line;\n this.column = position2.start.column;\n this.source = parts[0];\n this.ruleId = parts[1];\n this.position = position2;\n this.actual;\n this.expected;\n this.file;\n this.url;\n this.note;\n }\n}\nVFileMessage.prototype.file = \"\";\nVFileMessage.prototype.name = \"\";\nVFileMessage.prototype.reason = \"\";\nVFileMessage.prototype.message = \"\";\nVFileMessage.prototype.stack = \"\";\nVFileMessage.prototype.fatal = null;\nVFileMessage.prototype.column = null;\nVFileMessage.prototype.line = null;\nVFileMessage.prototype.source = null;\nVFileMessage.prototype.ruleId = null;\nVFileMessage.prototype.position = null;\nconst path = { basename, dirname, extname, join, sep: \"/\" };\nfunction basename(path2, ext) {\n if (ext !== void 0 && typeof ext !== \"string\") {\n throw new TypeError('\"ext\" argument must be a string');\n }\n assertPath$1(path2);\n let start = 0;\n let end = -1;\n let index2 = path2.length;\n let seenNonSlash;\n if (ext === void 0 || ext.length === 0 || ext.length > path2.length) {\n while (index2--) {\n if (path2.charCodeAt(index2) === 47) {\n if (seenNonSlash) {\n start = index2 + 1;\n break;\n }\n } else if (end < 0) {\n seenNonSlash = true;\n end = index2 + 1;\n }\n }\n return end < 0 ? \"\" : path2.slice(start, end);\n }\n if (ext === path2) {\n return \"\";\n }\n let firstNonSlashEnd = -1;\n let extIndex = ext.length - 1;\n while (index2--) {\n if (path2.charCodeAt(index2) === 47) {\n if (seenNonSlash) {\n start = index2 + 1;\n break;\n }\n } else {\n if (firstNonSlashEnd < 0) {\n seenNonSlash = true;\n firstNonSlashEnd = index2 + 1;\n }\n if (extIndex > -1) {\n if (path2.charCodeAt(index2) === ext.charCodeAt(extIndex--)) {\n if (extIndex < 0) {\n end = index2;\n }\n } else {\n extIndex = -1;\n end = firstNonSlashEnd;\n }\n }\n }\n }\n if (start === end) {\n end = firstNonSlashEnd;\n } else if (end < 0) {\n end = path2.length;\n }\n return path2.slice(start, end);\n}\nfunction dirname(path2) {\n assertPath$1(path2);\n if (path2.length === 0) {\n return \".\";\n }\n let end = -1;\n let index2 = path2.length;\n let unmatchedSlash;\n while (--index2) {\n if (path2.charCodeAt(index2) === 47) {\n if (unmatchedSlash) {\n end = index2;\n break;\n }\n } else if (!unmatchedSlash) {\n unmatchedSlash = true;\n }\n }\n return end < 0 ? path2.charCodeAt(0) === 47 ? \"/\" : \".\" : end === 1 && path2.charCodeAt(0) === 47 ? \"//\" : path2.slice(0, end);\n}\nfunction extname(path2) {\n assertPath$1(path2);\n let index2 = path2.length;\n let end = -1;\n let startPart = 0;\n let startDot = -1;\n let preDotState = 0;\n let unmatchedSlash;\n while (index2--) {\n const code2 = path2.charCodeAt(index2);\n if (code2 === 47) {\n if (unmatchedSlash) {\n startPart = index2 + 1;\n break;\n }\n continue;\n }\n if (end < 0) {\n unmatchedSlash = true;\n end = index2 + 1;\n }\n if (code2 === 46) {\n if (startDot < 0) {\n startDot = index2;\n } else if (preDotState !== 1) {\n preDotState = 1;\n }\n } else if (startDot > -1) {\n preDotState = -1;\n }\n }\n if (startDot < 0 || end < 0 || preDotState === 0 || preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {\n return \"\";\n }\n return path2.slice(startDot, end);\n}\nfunction join(...segments) {\n let index2 = -1;\n let joined;\n while (++index2 < segments.length) {\n assertPath$1(segments[index2]);\n if (segments[index2]) {\n joined = joined === void 0 ? segments[index2] : joined + \"/\" + segments[index2];\n }\n }\n return joined === void 0 ? \".\" : normalize$1(joined);\n}\nfunction normalize$1(path2) {\n assertPath$1(path2);\n const absolute = path2.charCodeAt(0) === 47;\n let value = normalizeString(path2, !absolute);\n if (value.length === 0 && !absolute) {\n value = \".\";\n }\n if (value.length > 0 && path2.charCodeAt(path2.length - 1) === 47) {\n value += \"/\";\n }\n return absolute ? \"/\" + value : value;\n}\nfunction normalizeString(path2, allowAboveRoot) {\n let result = \"\";\n let lastSegmentLength = 0;\n let lastSlash = -1;\n let dots = 0;\n let index2 = -1;\n let code2;\n let lastSlashIndex;\n while (++index2 <= path2.length) {\n if (index2 < path2.length) {\n code2 = path2.charCodeAt(index2);\n } else if (code2 === 47) {\n break;\n } else {\n code2 = 47;\n }\n if (code2 === 47) {\n if (lastSlash === index2 - 1 || dots === 1)\n ;\n else if (lastSlash !== index2 - 1 && dots === 2) {\n if (result.length < 2 || lastSegmentLength !== 2 || result.charCodeAt(result.length - 1) !== 46 || result.charCodeAt(result.length - 2) !== 46) {\n if (result.length > 2) {\n lastSlashIndex = result.lastIndexOf(\"/\");\n if (lastSlashIndex !== result.length - 1) {\n if (lastSlashIndex < 0) {\n result = \"\";\n lastSegmentLength = 0;\n } else {\n result = result.slice(0, lastSlashIndex);\n lastSegmentLength = result.length - 1 - result.lastIndexOf(\"/\");\n }\n lastSlash = index2;\n dots = 0;\n continue;\n }\n } else if (result.length > 0) {\n result = \"\";\n lastSegmentLength = 0;\n lastSlash = index2;\n dots = 0;\n continue;\n }\n }\n if (allowAboveRoot) {\n result = result.length > 0 ? result + \"/..\" : \"..\";\n lastSegmentLength = 2;\n }\n } else {\n if (result.length > 0) {\n result += \"/\" + path2.slice(lastSlash + 1, index2);\n } else {\n result = path2.slice(lastSlash + 1, index2);\n }\n lastSegmentLength = index2 - lastSlash - 1;\n }\n lastSlash = index2;\n dots = 0;\n } else if (code2 === 46 && dots > -1) {\n dots++;\n } else {\n dots = -1;\n }\n }\n return result;\n}\nfunction assertPath$1(path2) {\n if (typeof path2 !== \"string\") {\n throw new TypeError(\n \"Path must be a string. Received \" + JSON.stringify(path2)\n );\n }\n}\nconst proc = { cwd };\nfunction cwd() {\n return \"/\";\n}\nfunction isUrl(fileURLOrPath) {\n return fileURLOrPath !== null && typeof fileURLOrPath === \"object\" && fileURLOrPath.href && fileURLOrPath.origin;\n}\nfunction urlToPath(path2) {\n if (typeof path2 === \"string\") {\n path2 = new URL(path2);\n } else if (!isUrl(path2)) {\n const error = new TypeError(\n 'The \"path\" argument must be of type string or an instance of URL. Received `' + path2 + \"`\"\n );\n error.code = \"ERR_INVALID_ARG_TYPE\";\n throw error;\n }\n if (path2.protocol !== \"file:\") {\n const error = new TypeError(\"The URL must be of scheme file\");\n error.code = \"ERR_INVALID_URL_SCHEME\";\n throw error;\n }\n return getPathFromURLPosix(path2);\n}\nfunction getPathFromURLPosix(url) {\n if (url.hostname !== \"\") {\n const error = new TypeError(\n 'File URL host must be \"localhost\" or empty on darwin'\n );\n error.code = \"ERR_INVALID_FILE_URL_HOST\";\n throw error;\n }\n const pathname = url.pathname;\n let index2 = -1;\n while (++index2 < pathname.length) {\n if (pathname.charCodeAt(index2) === 37 && pathname.charCodeAt(index2 + 1) === 50) {\n const third = pathname.charCodeAt(index2 + 2);\n if (third === 70 || third === 102) {\n const error = new TypeError(\n \"File URL path must not include encoded / characters\"\n );\n error.code = \"ERR_INVALID_FILE_URL_PATH\";\n throw error;\n }\n }\n }\n return decodeURIComponent(pathname);\n}\nconst order = [\"history\", \"path\", \"basename\", \"stem\", \"extname\", \"dirname\"];\nclass VFile {\n constructor(value) {\n let options;\n if (!value) {\n options = {};\n } else if (typeof value === \"string\" || isBuffer2(value)) {\n options = { value };\n } else if (isUrl(value)) {\n options = { path: value };\n } else {\n options = value;\n }\n this.data = {};\n this.messages = [];\n this.history = [];\n this.cwd = proc.cwd();\n this.value;\n this.stored;\n this.result;\n this.map;\n let index2 = -1;\n while (++index2 < order.length) {\n const prop2 = order[index2];\n if (prop2 in options && options[prop2] !== void 0) {\n this[prop2] = prop2 === \"history\" ? [...options[prop2]] : options[prop2];\n }\n }\n let prop;\n for (prop in options) {\n if (!order.includes(prop))\n this[prop] = options[prop];\n }\n }\n get path() {\n return this.history[this.history.length - 1];\n }\n set path(path2) {\n if (isUrl(path2)) {\n path2 = urlToPath(path2);\n }\n assertNonEmpty(path2, \"path\");\n if (this.path !== path2) {\n this.history.push(path2);\n }\n }\n get dirname() {\n return typeof this.path === \"string\" ? path.dirname(this.path) : void 0;\n }\n set dirname(dirname2) {\n assertPath(this.basename, \"dirname\");\n this.path = path.join(dirname2 || \"\", this.basename);\n }\n get basename() {\n return typeof this.path === \"string\" ? path.basename(this.path) : void 0;\n }\n set basename(basename2) {\n assertNonEmpty(basename2, \"basename\");\n assertPart(basename2, \"basename\");\n this.path = path.join(this.dirname || \"\", basename2);\n }\n get extname() {\n return typeof this.path === \"string\" ? path.extname(this.path) : void 0;\n }\n set extname(extname2) {\n assertPart(extname2, \"extname\");\n assertPath(this.dirname, \"extname\");\n if (extname2) {\n if (extname2.charCodeAt(0) !== 46) {\n throw new Error(\"`extname` must start with `.`\");\n }\n if (extname2.includes(\".\", 1)) {\n throw new Error(\"`extname` cannot contain multiple dots\");\n }\n }\n this.path = path.join(this.dirname, this.stem + (extname2 || \"\"));\n }\n get stem() {\n return typeof this.path === \"string\" ? path.basename(this.path, this.extname) : void 0;\n }\n set stem(stem) {\n assertNonEmpty(stem, \"stem\");\n assertPart(stem, \"stem\");\n this.path = path.join(this.dirname || \"\", stem + (this.extname || \"\"));\n }\n toString(encoding) {\n return (this.value || \"\").toString(encoding);\n }\n message(reason, place, origin) {\n const message = new VFileMessage(reason, place, origin);\n if (this.path) {\n message.name = this.path + \":\" + message.name;\n message.file = this.path;\n }\n message.fatal = false;\n this.messages.push(message);\n return message;\n }\n info(reason, place, origin) {\n const message = this.message(reason, place, origin);\n message.fatal = null;\n return message;\n }\n fail(reason, place, origin) {\n const message = this.message(reason, place, origin);\n message.fatal = true;\n throw message;\n }\n}\nfunction assertPart(part, name) {\n if (part && part.includes(path.sep)) {\n throw new Error(\n \"`\" + name + \"` cannot be a path: did not expect `\" + path.sep + \"`\"\n );\n }\n}\nfunction assertNonEmpty(part, name) {\n if (!part) {\n throw new Error(\"`\" + name + \"` cannot be empty\");\n }\n}\nfunction assertPath(path2, name) {\n if (!path2) {\n throw new Error(\"Setting `\" + name + \"` requires `path` to be set too\");\n }\n}\nconst unified = base().freeze();\nconst own$7 = {}.hasOwnProperty;\nfunction base() {\n const transformers = trough();\n const attachers = [];\n let namespace = {};\n let frozen;\n let freezeIndex = -1;\n processor.data = data;\n processor.Parser = void 0;\n processor.Compiler = void 0;\n processor.freeze = freeze;\n processor.attachers = attachers;\n processor.use = use;\n processor.parse = parse2;\n processor.stringify = stringify2;\n processor.run = run;\n processor.runSync = runSync;\n processor.process = process;\n processor.processSync = processSync;\n return processor;\n function processor() {\n const destination = base();\n let index2 = -1;\n while (++index2 < attachers.length) {\n destination.use(...attachers[index2]);\n }\n destination.data(extend(true, {}, namespace));\n return destination;\n }\n function data(key, value) {\n if (typeof key === \"string\") {\n if (arguments.length === 2) {\n assertUnfrozen(\"data\", frozen);\n namespace[key] = value;\n return processor;\n }\n return own$7.call(namespace, key) && namespace[key] || null;\n }\n if (key) {\n assertUnfrozen(\"data\", frozen);\n namespace = key;\n return processor;\n }\n return namespace;\n }\n function freeze() {\n if (frozen) {\n return processor;\n }\n while (++freezeIndex < attachers.length) {\n const [attacher, ...options] = attachers[freezeIndex];\n if (options[0] === false) {\n continue;\n }\n if (options[0] === true) {\n options[0] = void 0;\n }\n const transformer = attacher.call(processor, ...options);\n if (typeof transformer === \"function\") {\n transformers.use(transformer);\n }\n }\n frozen = true;\n freezeIndex = Number.POSITIVE_INFINITY;\n return processor;\n }\n function use(value, ...options) {\n let settings;\n assertUnfrozen(\"use\", frozen);\n if (value === null || value === void 0)\n ;\n else if (typeof value === \"function\") {\n addPlugin(value, ...options);\n } else if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n addList(value);\n } else {\n addPreset(value);\n }\n } else {\n throw new TypeError(\"Expected usable value, not `\" + value + \"`\");\n }\n if (settings) {\n namespace.settings = Object.assign(namespace.settings || {}, settings);\n }\n return processor;\n function add(value2) {\n if (typeof value2 === \"function\") {\n addPlugin(value2);\n } else if (typeof value2 === \"object\") {\n if (Array.isArray(value2)) {\n const [plugin, ...options2] = value2;\n addPlugin(plugin, ...options2);\n } else {\n addPreset(value2);\n }\n } else {\n throw new TypeError(\"Expected usable value, not `\" + value2 + \"`\");\n }\n }\n function addPreset(result) {\n addList(result.plugins);\n if (result.settings) {\n settings = Object.assign(settings || {}, result.settings);\n }\n }\n function addList(plugins) {\n let index2 = -1;\n if (plugins === null || plugins === void 0)\n ;\n else if (Array.isArray(plugins)) {\n while (++index2 < plugins.length) {\n const thing = plugins[index2];\n add(thing);\n }\n } else {\n throw new TypeError(\"Expected a list of plugins, not `\" + plugins + \"`\");\n }\n }\n function addPlugin(plugin, value2) {\n let index2 = -1;\n let entry;\n while (++index2 < attachers.length) {\n if (attachers[index2][0] === plugin) {\n entry = attachers[index2];\n break;\n }\n }\n if (entry) {\n if (isPlainObject2(entry[1]) && isPlainObject2(value2)) {\n value2 = extend(true, entry[1], value2);\n }\n entry[1] = value2;\n } else {\n attachers.push([...arguments]);\n }\n }\n }\n function parse2(doc) {\n processor.freeze();\n const file = vfile(doc);\n const Parser = processor.Parser;\n assertParser(\"parse\", Parser);\n if (newable(Parser, \"parse\")) {\n return new Parser(String(file), file).parse();\n }\n return Parser(String(file), file);\n }\n function stringify2(node, doc) {\n processor.freeze();\n const file = vfile(doc);\n const Compiler = processor.Compiler;\n assertCompiler(\"stringify\", Compiler);\n assertNode(node);\n if (newable(Compiler, \"compile\")) {\n return new Compiler(node, file).compile();\n }\n return Compiler(node, file);\n }\n function run(node, doc, callback) {\n assertNode(node);\n processor.freeze();\n if (!callback && typeof doc === \"function\") {\n callback = doc;\n doc = void 0;\n }\n if (!callback) {\n return new Promise(executor);\n }\n executor(null, callback);\n function executor(resolve, reject) {\n transformers.run(node, vfile(doc), done);\n function done(error, tree, file) {\n tree = tree || node;\n if (error) {\n reject(error);\n } else if (resolve) {\n resolve(tree);\n } else {\n callback(null, tree, file);\n }\n }\n }\n }\n function runSync(node, file) {\n let result;\n let complete;\n processor.run(node, file, done);\n assertDone(\"runSync\", \"run\", complete);\n return result;\n function done(error, tree) {\n bail(error);\n result = tree;\n complete = true;\n }\n }\n function process(doc, callback) {\n processor.freeze();\n assertParser(\"process\", processor.Parser);\n assertCompiler(\"process\", processor.Compiler);\n if (!callback) {\n return new Promise(executor);\n }\n executor(null, callback);\n function executor(resolve, reject) {\n const file = vfile(doc);\n processor.run(processor.parse(file), file, (error, tree, file2) => {\n if (error || !tree || !file2) {\n done(error);\n } else {\n const result = processor.stringify(tree, file2);\n if (result === void 0 || result === null)\n ;\n else if (looksLikeAVFileValue(result)) {\n file2.value = result;\n } else {\n file2.result = result;\n }\n done(error, file2);\n }\n });\n function done(error, file2) {\n if (error || !file2) {\n reject(error);\n } else if (resolve) {\n resolve(file2);\n } else {\n callback(null, file2);\n }\n }\n }\n }\n function processSync(doc) {\n let complete;\n processor.freeze();\n assertParser(\"processSync\", processor.Parser);\n assertCompiler(\"processSync\", processor.Compiler);\n const file = vfile(doc);\n processor.process(file, done);\n assertDone(\"processSync\", \"process\", complete);\n return file;\n function done(error) {\n complete = true;\n bail(error);\n }\n }\n}\nfunction newable(value, name) {\n return typeof value === \"function\" && value.prototype && (keys(value.prototype) || name in value.prototype);\n}\nfunction keys(value) {\n let key;\n for (key in value) {\n if (own$7.call(value, key)) {\n return true;\n }\n }\n return false;\n}\nfunction assertParser(name, value) {\n if (typeof value !== \"function\") {\n throw new TypeError(\"Cannot `\" + name + \"` without `Parser`\");\n }\n}\nfunction assertCompiler(name, value) {\n if (typeof value !== \"function\") {\n throw new TypeError(\"Cannot `\" + name + \"` without `Compiler`\");\n }\n}\nfunction assertUnfrozen(name, frozen) {\n if (frozen) {\n throw new Error(\n \"Cannot call `\" + name + \"` on a frozen processor.\\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.\"\n );\n }\n}\nfunction assertNode(node) {\n if (!isPlainObject2(node) || typeof node.type !== \"string\") {\n throw new TypeError(\"Expected node, got `\" + node + \"`\");\n }\n}\nfunction assertDone(name, asyncName, complete) {\n if (!complete) {\n throw new Error(\n \"`\" + name + \"` finished async. Use `\" + asyncName + \"` instead\"\n );\n }\n}\nfunction vfile(value) {\n return looksLikeAVFile(value) ? value : new VFile(value);\n}\nfunction looksLikeAVFile(value) {\n return Boolean(\n value && typeof value === \"object\" && \"message\" in value && \"messages\" in value\n );\n}\nfunction looksLikeAVFileValue(value) {\n return typeof value === \"string\" || isBuffer$1(value);\n}\nif (!window._vue_richtext_widgets) {\n window._vue_richtext_widgets = {};\n}\nconst isWidgetRegistered = (id) => {\n return !!window._vue_richtext_widgets[id];\n};\nconst registerWidget = (id, callback, onDestroy = (el) => {\n}) => {\n if (window._vue_richtext_widgets[id]) {\n console.error(\"Widget for id \" + id + \" already registered\");\n return;\n }\n window._vue_richtext_widgets[id] = {\n id,\n callback,\n onDestroy\n };\n};\nconst renderWidget = (el, { richObjectType, richObject, accessible }) => {\n if (richObjectType === \"open-graph\") {\n return;\n }\n if (!window._vue_richtext_widgets[richObjectType]) {\n console.error(\"Widget for rich object type \" + richObjectType + \" not registered\");\n return;\n }\n window._vue_richtext_widgets[richObjectType].callback(el, { richObjectType, richObject, accessible });\n};\nconst destroyWidget = (richObjectType, el) => {\n if (richObjectType === \"open-graph\") {\n return;\n }\n if (!window._vue_richtext_widgets[richObjectType]) {\n return;\n }\n window._vue_richtext_widgets[richObjectType].onDestroy(el);\n};\nwindow._registerWidget = registerWidget;\nconst ReferenceWidget_vue_vue_type_style_index_0_scoped_de8147ea_lang = \"\";\nfunction normalizeComponent(scriptExports, render3, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {\n var options = typeof scriptExports === \"function\" ? scriptExports.options : scriptExports;\n if (render3) {\n options.render = render3;\n options.staticRenderFns = staticRenderFns;\n options._compiled = true;\n }\n if (functionalTemplate) {\n options.functional = true;\n }\n if (scopeId) {\n options._scopeId = \"data-v-\" + scopeId;\n }\n var hook;\n if (moduleIdentifier) {\n hook = function(context) {\n context = context || this.$vnode && this.$vnode.ssrContext || this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext;\n if (!context && typeof __VUE_SSR_CONTEXT__ !== \"undefined\") {\n context = __VUE_SSR_CONTEXT__;\n }\n if (injectStyles) {\n injectStyles.call(this, context);\n }\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n };\n options._ssrRegister = hook;\n } else if (injectStyles) {\n hook = shadowMode ? function() {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n );\n } : injectStyles;\n }\n if (hook) {\n if (options.functional) {\n options._injectStyles = hook;\n var originalRender = options.render;\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n return {\n exports: scriptExports,\n options\n };\n}\nconst _sfc_main$2 = {\n name: \"ReferenceWidget\",\n props: {\n reference: {\n type: Object,\n required: true\n }\n },\n data() {\n return {\n compact: 3\n };\n },\n computed: {\n hasCustomWidget() {\n return isWidgetRegistered(this.reference.richObjectType);\n },\n noAccess() {\n return this.reference && !this.reference.accessible;\n },\n descriptionStyle() {\n if (this.compact === 0) {\n return {\n display: \"none\"\n };\n }\n const lineClamp = this.compact < 4 ? this.compact : 3;\n return {\n lineClamp,\n webkitLineClamp: lineClamp\n };\n },\n compactLink() {\n const link2 = this.reference.openGraphObject.link;\n if (!link2) {\n return \"\";\n }\n if (link2.startsWith(\"https://\")) {\n return link2.substring(8);\n }\n if (link2.startsWith(\"http://\")) {\n return link2.substring(7);\n }\n return link2;\n }\n },\n mounted() {\n this.renderWidget();\n this.observer = new ResizeObserver((entries) => {\n if (entries[0].contentRect.width < 450) {\n this.compact = 0;\n } else if (entries[0].contentRect.width < 550) {\n this.compact = 1;\n } else if (entries[0].contentRect.width < 650) {\n this.compact = 2;\n } else {\n this.compact = 3;\n }\n });\n this.observer.observe(this.$el);\n },\n beforeDestroy() {\n this.observer.disconnect();\n destroyWidget(this.reference.richObjectType, this.$el);\n },\n methods: {\n renderWidget() {\n var _a;\n if (this.$refs.customWidget) {\n this.$refs.customWidget.innerHTML = \"\";\n }\n if (((_a = this == null ? void 0 : this.reference) == null ? void 0 : _a.richObjectType) === \"open-graph\") {\n return;\n }\n this.$nextTick(() => {\n renderWidget(this.$refs.customWidget, this.reference);\n });\n }\n }\n};\nvar _sfc_render$2 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", [_vm.reference && _vm.hasCustomWidget ? _c(\"div\", { staticClass: \"widget-custom\" }, [_c(\"div\", { ref: \"customWidget\" })]) : !_vm.noAccess && _vm.reference && _vm.reference.openGraphObject && !_vm.hasCustomWidget ? _c(\"a\", { staticClass: \"widget-default\", attrs: { \"href\": _vm.reference.openGraphObject.link, \"rel\": \"noopener noreferrer\", \"target\": \"_blank\" } }, [_vm.reference.openGraphObject.thumb ? _c(\"img\", { staticClass: \"widget-default--image\", attrs: { \"src\": _vm.reference.openGraphObject.thumb } }) : _vm._e(), _c(\"div\", { staticClass: \"widget-default--details\" }, [_c(\"p\", { staticClass: \"widget-default--title\" }, [_vm._v(_vm._s(_vm.reference.openGraphObject.name))]), _c(\"p\", { staticClass: \"widget-default--description\", style: _vm.descriptionStyle }, [_vm._v(_vm._s(_vm.reference.openGraphObject.description))]), _c(\"p\", { staticClass: \"widget-default--link\" }, [_vm._v(_vm._s(_vm.compactLink))])])]) : _vm._e()]);\n};\nvar _sfc_staticRenderFns$2 = [];\nvar __component__$2 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$2,\n _sfc_render$2,\n _sfc_staticRenderFns$2,\n false,\n null,\n \"de8147ea\",\n null,\n null\n);\nconst ReferenceWidget = __component__$2.exports;\nconst URL_PATTERN = /(\\s|^)(https?:\\/\\/)((?:[-A-Z0-9+_]+\\.)+[-A-Z]+(?:\\/[-A-Z0-9+&@#%?=~_|!:,.;()]*)*)(\\s|$)/ig;\nconst URL_PATTERN_AUTOLINK = /(\\s|\\(|^)((https?:\\/\\/)((?:[-A-Z0-9+_]+\\.)+[-A-Z]+(?::[0-9]+)?(?:\\/[-A-Z0-9+&@#%?=~_|!:,.;()]*)*))(?=\\s|\\)|$)/ig;\nconst ReferenceList_vue_vue_type_style_index_0_scoped_5a4fd40e_lang = \"\";\nconst _sfc_main$1 = {\n name: \"ReferenceList\",\n components: { ReferenceWidget },\n props: {\n text: {\n type: String,\n default: \"\"\n },\n referenceData: {\n type: Object,\n default: null\n },\n limit: {\n type: Number,\n default: 1\n }\n },\n data() {\n return {\n references: null,\n loading: true\n };\n },\n computed: {\n values() {\n return this.referenceData ? this.referenceData : this.references ? Object.values(this.references) : [];\n },\n firstReference() {\n var _a;\n return (_a = this.values[0]) != null ? _a : null;\n },\n displayedReferences() {\n return this.values.slice(0, this.limit);\n }\n },\n watch: {\n text: \"fetch\"\n },\n mounted() {\n this.fetch();\n },\n methods: {\n fetch() {\n this.loading = true;\n if (this.referenceData) {\n this.loading = false;\n return;\n }\n if (!new RegExp(URL_PATTERN).exec(this.text)) {\n this.loading = false;\n return;\n }\n this.resolve().then((response) => {\n this.references = response.data.ocs.data.references;\n this.loading = false;\n }).catch((error) => {\n console.error(\"Failed to extract references\", error);\n this.loading = false;\n });\n },\n resolve() {\n const match = new RegExp(URL_PATTERN).exec(this.text.trim());\n if (this.limit === 1 && match) {\n return axios.get(generateOcsUrl(\"references/resolve\", 2) + `?reference=${encodeURIComponent(match[0])}`);\n }\n return axios.post(generateOcsUrl(\"references/extract\", 2), {\n text: this.text,\n resolve: true,\n limit: this.limit\n });\n }\n }\n};\nvar _sfc_render$1 = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { staticClass: \"widgets--list\", class: { \"icon-loading\": _vm.loading } }, _vm._l(_vm.displayedReferences, function(reference) {\n return _c(\"div\", { key: reference.openGraphObject.id }, [_c(\"ReferenceWidget\", { attrs: { \"reference\": reference } })], 1);\n }), 0);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n \"5a4fd40e\",\n null,\n null\n);\nconst ReferenceList = __component__$1.exports;\nfunction toString(node, options) {\n var { includeImageAlt = true } = options || {};\n return one$1(node, includeImageAlt);\n}\nfunction one$1(node, includeImageAlt) {\n return node && typeof node === \"object\" && (node.value || (includeImageAlt ? node.alt : \"\") || \"children\" in node && all$1(node.children, includeImageAlt) || Array.isArray(node) && all$1(node, includeImageAlt)) || \"\";\n}\nfunction all$1(values, includeImageAlt) {\n var result = [];\n var index2 = -1;\n while (++index2 < values.length) {\n result[index2] = one$1(values[index2], includeImageAlt);\n }\n return result.join(\"\");\n}\nfunction splice(list2, start, remove, items) {\n const end = list2.length;\n let chunkStart = 0;\n let parameters;\n if (start < 0) {\n start = -start > end ? 0 : end + start;\n } else {\n start = start > end ? end : start;\n }\n remove = remove > 0 ? remove : 0;\n if (items.length < 1e4) {\n parameters = Array.from(items);\n parameters.unshift(start, remove);\n [].splice.apply(list2, parameters);\n } else {\n if (remove)\n [].splice.apply(list2, [start, remove]);\n while (chunkStart < items.length) {\n parameters = items.slice(chunkStart, chunkStart + 1e4);\n parameters.unshift(start, 0);\n [].splice.apply(list2, parameters);\n chunkStart += 1e4;\n start += 1e4;\n }\n }\n}\nfunction push(list2, items) {\n if (list2.length > 0) {\n splice(list2, list2.length, 0, items);\n return list2;\n }\n return items;\n}\nconst hasOwnProperty$1 = {}.hasOwnProperty;\nfunction combineExtensions(extensions) {\n const all2 = {};\n let index2 = -1;\n while (++index2 < extensions.length) {\n syntaxExtension(all2, extensions[index2]);\n }\n return all2;\n}\nfunction syntaxExtension(all2, extension2) {\n let hook;\n for (hook in extension2) {\n const maybe = hasOwnProperty$1.call(all2, hook) ? all2[hook] : void 0;\n const left = maybe || (all2[hook] = {});\n const right = extension2[hook];\n let code2;\n for (code2 in right) {\n if (!hasOwnProperty$1.call(left, code2))\n left[code2] = [];\n const value = right[code2];\n constructs(\n left[code2],\n Array.isArray(value) ? value : value ? [value] : []\n );\n }\n }\n}\nfunction constructs(existing, list2) {\n let index2 = -1;\n const before = [];\n while (++index2 < list2.length) {\n (list2[index2].add === \"after\" ? existing : before).push(list2[index2]);\n }\n splice(existing, 0, 0, before);\n}\nconst unicodePunctuationRegex = /[!-/:-@[-`{-~\\u00A1\\u00A7\\u00AB\\u00B6\\u00B7\\u00BB\\u00BF\\u037E\\u0387\\u055A-\\u055F\\u0589\\u058A\\u05BE\\u05C0\\u05C3\\u05C6\\u05F3\\u05F4\\u0609\\u060A\\u060C\\u060D\\u061B\\u061E\\u061F\\u066A-\\u066D\\u06D4\\u0700-\\u070D\\u07F7-\\u07F9\\u0830-\\u083E\\u085E\\u0964\\u0965\\u0970\\u09FD\\u0A76\\u0AF0\\u0C77\\u0C84\\u0DF4\\u0E4F\\u0E5A\\u0E5B\\u0F04-\\u0F12\\u0F14\\u0F3A-\\u0F3D\\u0F85\\u0FD0-\\u0FD4\\u0FD9\\u0FDA\\u104A-\\u104F\\u10FB\\u1360-\\u1368\\u1400\\u166E\\u169B\\u169C\\u16EB-\\u16ED\\u1735\\u1736\\u17D4-\\u17D6\\u17D8-\\u17DA\\u1800-\\u180A\\u1944\\u1945\\u1A1E\\u1A1F\\u1AA0-\\u1AA6\\u1AA8-\\u1AAD\\u1B5A-\\u1B60\\u1BFC-\\u1BFF\\u1C3B-\\u1C3F\\u1C7E\\u1C7F\\u1CC0-\\u1CC7\\u1CD3\\u2010-\\u2027\\u2030-\\u2043\\u2045-\\u2051\\u2053-\\u205E\\u207D\\u207E\\u208D\\u208E\\u2308-\\u230B\\u2329\\u232A\\u2768-\\u2775\\u27C5\\u27C6\\u27E6-\\u27EF\\u2983-\\u2998\\u29D8-\\u29DB\\u29FC\\u29FD\\u2CF9-\\u2CFC\\u2CFE\\u2CFF\\u2D70\\u2E00-\\u2E2E\\u2E30-\\u2E4F\\u2E52\\u3001-\\u3003\\u3008-\\u3011\\u3014-\\u301F\\u3030\\u303D\\u30A0\\u30FB\\uA4FE\\uA4FF\\uA60D-\\uA60F\\uA673\\uA67E\\uA6F2-\\uA6F7\\uA874-\\uA877\\uA8CE\\uA8CF\\uA8F8-\\uA8FA\\uA8FC\\uA92E\\uA92F\\uA95F\\uA9C1-\\uA9CD\\uA9DE\\uA9DF\\uAA5C-\\uAA5F\\uAADE\\uAADF\\uAAF0\\uAAF1\\uABEB\\uFD3E\\uFD3F\\uFE10-\\uFE19\\uFE30-\\uFE52\\uFE54-\\uFE61\\uFE63\\uFE68\\uFE6A\\uFE6B\\uFF01-\\uFF03\\uFF05-\\uFF0A\\uFF0C-\\uFF0F\\uFF1A\\uFF1B\\uFF1F\\uFF20\\uFF3B-\\uFF3D\\uFF3F\\uFF5B\\uFF5D\\uFF5F-\\uFF65]/;\nconst asciiAlpha = regexCheck(/[A-Za-z]/);\nconst asciiDigit = regexCheck(/\\d/);\nconst asciiHexDigit = regexCheck(/[\\dA-Fa-f]/);\nconst asciiAlphanumeric = regexCheck(/[\\dA-Za-z]/);\nconst asciiPunctuation = regexCheck(/[!-/:-@[-`{-~]/);\nconst asciiAtext = regexCheck(/[#-'*+\\--9=?A-Z^-~]/);\nfunction asciiControl(code2) {\n return code2 !== null && (code2 < 32 || code2 === 127);\n}\nfunction markdownLineEndingOrSpace(code2) {\n return code2 !== null && (code2 < 0 || code2 === 32);\n}\nfunction markdownLineEnding(code2) {\n return code2 !== null && code2 < -2;\n}\nfunction markdownSpace(code2) {\n return code2 === -2 || code2 === -1 || code2 === 32;\n}\nconst unicodeWhitespace = regexCheck(/\\s/);\nconst unicodePunctuation = regexCheck(unicodePunctuationRegex);\nfunction regexCheck(regex) {\n return check;\n function check(code2) {\n return code2 !== null && regex.test(String.fromCharCode(code2));\n }\n}\nfunction factorySpace(effects, ok2, type, max) {\n const limit = max ? max - 1 : Number.POSITIVE_INFINITY;\n let size = 0;\n return start;\n function start(code2) {\n if (markdownSpace(code2)) {\n effects.enter(type);\n return prefix(code2);\n }\n return ok2(code2);\n }\n function prefix(code2) {\n if (markdownSpace(code2) && size++ < limit) {\n effects.consume(code2);\n return prefix;\n }\n effects.exit(type);\n return ok2(code2);\n }\n}\nconst content$1 = {\n tokenize: initializeContent\n};\nfunction initializeContent(effects) {\n const contentStart = effects.attempt(\n this.parser.constructs.contentInitial,\n afterContentStartConstruct,\n paragraphInitial\n );\n let previous2;\n return contentStart;\n function afterContentStartConstruct(code2) {\n if (code2 === null) {\n effects.consume(code2);\n return;\n }\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n return factorySpace(effects, contentStart, \"linePrefix\");\n }\n function paragraphInitial(code2) {\n effects.enter(\"paragraph\");\n return lineStart(code2);\n }\n function lineStart(code2) {\n const token = effects.enter(\"chunkText\", {\n contentType: \"text\",\n previous: previous2\n });\n if (previous2) {\n previous2.next = token;\n }\n previous2 = token;\n return data(code2);\n }\n function data(code2) {\n if (code2 === null) {\n effects.exit(\"chunkText\");\n effects.exit(\"paragraph\");\n effects.consume(code2);\n return;\n }\n if (markdownLineEnding(code2)) {\n effects.consume(code2);\n effects.exit(\"chunkText\");\n return lineStart;\n }\n effects.consume(code2);\n return data;\n }\n}\nconst document$2 = {\n tokenize: initializeDocument\n};\nconst containerConstruct = {\n tokenize: tokenizeContainer\n};\nfunction initializeDocument(effects) {\n const self = this;\n const stack = [];\n let continued = 0;\n let childFlow;\n let childToken;\n let lineStartOffset;\n return start;\n function start(code2) {\n if (continued < stack.length) {\n const item = stack[continued];\n self.containerState = item[1];\n return effects.attempt(\n item[0].continuation,\n documentContinue,\n checkNewContainers\n )(code2);\n }\n return checkNewContainers(code2);\n }\n function documentContinue(code2) {\n continued++;\n if (self.containerState._closeFlow) {\n self.containerState._closeFlow = void 0;\n if (childFlow) {\n closeFlow();\n }\n const indexBeforeExits = self.events.length;\n let indexBeforeFlow = indexBeforeExits;\n let point2;\n while (indexBeforeFlow--) {\n if (self.events[indexBeforeFlow][0] === \"exit\" && self.events[indexBeforeFlow][1].type === \"chunkFlow\") {\n point2 = self.events[indexBeforeFlow][1].end;\n break;\n }\n }\n exitContainers(continued);\n let index2 = indexBeforeExits;\n while (index2 < self.events.length) {\n self.events[index2][1].end = Object.assign({}, point2);\n index2++;\n }\n splice(\n self.events,\n indexBeforeFlow + 1,\n 0,\n self.events.slice(indexBeforeExits)\n );\n self.events.length = index2;\n return checkNewContainers(code2);\n }\n return start(code2);\n }\n function checkNewContainers(code2) {\n if (continued === stack.length) {\n if (!childFlow) {\n return documentContinued(code2);\n }\n if (childFlow.currentConstruct && childFlow.currentConstruct.concrete) {\n return flowStart(code2);\n }\n self.interrupt = Boolean(\n childFlow.currentConstruct && !childFlow._gfmTableDynamicInterruptHack\n );\n }\n self.containerState = {};\n return effects.check(\n containerConstruct,\n thereIsANewContainer,\n thereIsNoNewContainer\n )(code2);\n }\n function thereIsANewContainer(code2) {\n if (childFlow)\n closeFlow();\n exitContainers(continued);\n return documentContinued(code2);\n }\n function thereIsNoNewContainer(code2) {\n self.parser.lazy[self.now().line] = continued !== stack.length;\n lineStartOffset = self.now().offset;\n return flowStart(code2);\n }\n function documentContinued(code2) {\n self.containerState = {};\n return effects.attempt(\n containerConstruct,\n containerContinue,\n flowStart\n )(code2);\n }\n function containerContinue(code2) {\n continued++;\n stack.push([self.currentConstruct, self.containerState]);\n return documentContinued(code2);\n }\n function flowStart(code2) {\n if (code2 === null) {\n if (childFlow)\n closeFlow();\n exitContainers(0);\n effects.consume(code2);\n return;\n }\n childFlow = childFlow || self.parser.flow(self.now());\n effects.enter(\"chunkFlow\", {\n contentType: \"flow\",\n previous: childToken,\n _tokenizer: childFlow\n });\n return flowContinue(code2);\n }\n function flowContinue(code2) {\n if (code2 === null) {\n writeToChild(effects.exit(\"chunkFlow\"), true);\n exitContainers(0);\n effects.consume(code2);\n return;\n }\n if (markdownLineEnding(code2)) {\n effects.consume(code2);\n writeToChild(effects.exit(\"chunkFlow\"));\n continued = 0;\n self.interrupt = void 0;\n return start;\n }\n effects.consume(code2);\n return flowContinue;\n }\n function writeToChild(token, eof) {\n const stream = self.sliceStream(token);\n if (eof)\n stream.push(null);\n token.previous = childToken;\n if (childToken)\n childToken.next = token;\n childToken = token;\n childFlow.defineSkip(token.start);\n childFlow.write(stream);\n if (self.parser.lazy[token.start.line]) {\n let index2 = childFlow.events.length;\n while (index2--) {\n if (childFlow.events[index2][1].start.offset < lineStartOffset && (!childFlow.events[index2][1].end || childFlow.events[index2][1].end.offset > lineStartOffset)) {\n return;\n }\n }\n const indexBeforeExits = self.events.length;\n let indexBeforeFlow = indexBeforeExits;\n let seen;\n let point2;\n while (indexBeforeFlow--) {\n if (self.events[indexBeforeFlow][0] === \"exit\" && self.events[indexBeforeFlow][1].type === \"chunkFlow\") {\n if (seen) {\n point2 = self.events[indexBeforeFlow][1].end;\n break;\n }\n seen = true;\n }\n }\n exitContainers(continued);\n index2 = indexBeforeExits;\n while (index2 < self.events.length) {\n self.events[index2][1].end = Object.assign({}, point2);\n index2++;\n }\n splice(\n self.events,\n indexBeforeFlow + 1,\n 0,\n self.events.slice(indexBeforeExits)\n );\n self.events.length = index2;\n }\n }\n function exitContainers(size) {\n let index2 = stack.length;\n while (index2-- > size) {\n const entry = stack[index2];\n self.containerState = entry[1];\n entry[0].exit.call(self, effects);\n }\n stack.length = size;\n }\n function closeFlow() {\n childFlow.write([null]);\n childToken = void 0;\n childFlow = void 0;\n self.containerState._closeFlow = void 0;\n }\n}\nfunction tokenizeContainer(effects, ok2, nok) {\n return factorySpace(\n effects,\n effects.attempt(this.parser.constructs.document, ok2, nok),\n \"linePrefix\",\n this.parser.constructs.disable.null.includes(\"codeIndented\") ? void 0 : 4\n );\n}\nfunction classifyCharacter(code2) {\n if (code2 === null || markdownLineEndingOrSpace(code2) || unicodeWhitespace(code2)) {\n return 1;\n }\n if (unicodePunctuation(code2)) {\n return 2;\n }\n}\nfunction resolveAll(constructs2, events, context) {\n const called = [];\n let index2 = -1;\n while (++index2 < constructs2.length) {\n const resolve = constructs2[index2].resolveAll;\n if (resolve && !called.includes(resolve)) {\n events = resolve(events, context);\n called.push(resolve);\n }\n }\n return events;\n}\nconst attention = {\n name: \"attention\",\n tokenize: tokenizeAttention,\n resolveAll: resolveAllAttention\n};\nfunction resolveAllAttention(events, context) {\n let index2 = -1;\n let open;\n let group;\n let text2;\n let openingSequence;\n let closingSequence;\n let use;\n let nextEvents;\n let offset;\n while (++index2 < events.length) {\n if (events[index2][0] === \"enter\" && events[index2][1].type === \"attentionSequence\" && events[index2][1]._close) {\n open = index2;\n while (open--) {\n if (events[open][0] === \"exit\" && events[open][1].type === \"attentionSequence\" && events[open][1]._open && context.sliceSerialize(events[open][1]).charCodeAt(0) === context.sliceSerialize(events[index2][1]).charCodeAt(0)) {\n if ((events[open][1]._close || events[index2][1]._open) && (events[index2][1].end.offset - events[index2][1].start.offset) % 3 && !((events[open][1].end.offset - events[open][1].start.offset + events[index2][1].end.offset - events[index2][1].start.offset) % 3)) {\n continue;\n }\n use = events[open][1].end.offset - events[open][1].start.offset > 1 && events[index2][1].end.offset - events[index2][1].start.offset > 1 ? 2 : 1;\n const start = Object.assign({}, events[open][1].end);\n const end = Object.assign({}, events[index2][1].start);\n movePoint(start, -use);\n movePoint(end, use);\n openingSequence = {\n type: use > 1 ? \"strongSequence\" : \"emphasisSequence\",\n start,\n end: Object.assign({}, events[open][1].end)\n };\n closingSequence = {\n type: use > 1 ? \"strongSequence\" : \"emphasisSequence\",\n start: Object.assign({}, events[index2][1].start),\n end\n };\n text2 = {\n type: use > 1 ? \"strongText\" : \"emphasisText\",\n start: Object.assign({}, events[open][1].end),\n end: Object.assign({}, events[index2][1].start)\n };\n group = {\n type: use > 1 ? \"strong\" : \"emphasis\",\n start: Object.assign({}, openingSequence.start),\n end: Object.assign({}, closingSequence.end)\n };\n events[open][1].end = Object.assign({}, openingSequence.start);\n events[index2][1].start = Object.assign({}, closingSequence.end);\n nextEvents = [];\n if (events[open][1].end.offset - events[open][1].start.offset) {\n nextEvents = push(nextEvents, [\n [\"enter\", events[open][1], context],\n [\"exit\", events[open][1], context]\n ]);\n }\n nextEvents = push(nextEvents, [\n [\"enter\", group, context],\n [\"enter\", openingSequence, context],\n [\"exit\", openingSequence, context],\n [\"enter\", text2, context]\n ]);\n nextEvents = push(\n nextEvents,\n resolveAll(\n context.parser.constructs.insideSpan.null,\n events.slice(open + 1, index2),\n context\n )\n );\n nextEvents = push(nextEvents, [\n [\"exit\", text2, context],\n [\"enter\", closingSequence, context],\n [\"exit\", closingSequence, context],\n [\"exit\", group, context]\n ]);\n if (events[index2][1].end.offset - events[index2][1].start.offset) {\n offset = 2;\n nextEvents = push(nextEvents, [\n [\"enter\", events[index2][1], context],\n [\"exit\", events[index2][1], context]\n ]);\n } else {\n offset = 0;\n }\n splice(events, open - 1, index2 - open + 3, nextEvents);\n index2 = open + nextEvents.length - offset - 2;\n break;\n }\n }\n }\n }\n index2 = -1;\n while (++index2 < events.length) {\n if (events[index2][1].type === \"attentionSequence\") {\n events[index2][1].type = \"data\";\n }\n }\n return events;\n}\nfunction tokenizeAttention(effects, ok2) {\n const attentionMarkers2 = this.parser.constructs.attentionMarkers.null;\n const previous2 = this.previous;\n const before = classifyCharacter(previous2);\n let marker;\n return start;\n function start(code2) {\n effects.enter(\"attentionSequence\");\n marker = code2;\n return sequence(code2);\n }\n function sequence(code2) {\n if (code2 === marker) {\n effects.consume(code2);\n return sequence;\n }\n const token = effects.exit(\"attentionSequence\");\n const after = classifyCharacter(code2);\n const open = !after || after === 2 && before || attentionMarkers2.includes(code2);\n const close = !before || before === 2 && after || attentionMarkers2.includes(previous2);\n token._open = Boolean(marker === 42 ? open : open && (before || !close));\n token._close = Boolean(marker === 42 ? close : close && (after || !open));\n return ok2(code2);\n }\n}\nfunction movePoint(point2, offset) {\n point2.column += offset;\n point2.offset += offset;\n point2._bufferIndex += offset;\n}\nconst autolink = {\n name: \"autolink\",\n tokenize: tokenizeAutolink\n};\nfunction tokenizeAutolink(effects, ok2, nok) {\n let size = 1;\n return start;\n function start(code2) {\n effects.enter(\"autolink\");\n effects.enter(\"autolinkMarker\");\n effects.consume(code2);\n effects.exit(\"autolinkMarker\");\n effects.enter(\"autolinkProtocol\");\n return open;\n }\n function open(code2) {\n if (asciiAlpha(code2)) {\n effects.consume(code2);\n return schemeOrEmailAtext;\n }\n return asciiAtext(code2) ? emailAtext(code2) : nok(code2);\n }\n function schemeOrEmailAtext(code2) {\n return code2 === 43 || code2 === 45 || code2 === 46 || asciiAlphanumeric(code2) ? schemeInsideOrEmailAtext(code2) : emailAtext(code2);\n }\n function schemeInsideOrEmailAtext(code2) {\n if (code2 === 58) {\n effects.consume(code2);\n return urlInside;\n }\n if ((code2 === 43 || code2 === 45 || code2 === 46 || asciiAlphanumeric(code2)) && size++ < 32) {\n effects.consume(code2);\n return schemeInsideOrEmailAtext;\n }\n return emailAtext(code2);\n }\n function urlInside(code2) {\n if (code2 === 62) {\n effects.exit(\"autolinkProtocol\");\n return end(code2);\n }\n if (code2 === null || code2 === 32 || code2 === 60 || asciiControl(code2)) {\n return nok(code2);\n }\n effects.consume(code2);\n return urlInside;\n }\n function emailAtext(code2) {\n if (code2 === 64) {\n effects.consume(code2);\n size = 0;\n return emailAtSignOrDot;\n }\n if (asciiAtext(code2)) {\n effects.consume(code2);\n return emailAtext;\n }\n return nok(code2);\n }\n function emailAtSignOrDot(code2) {\n return asciiAlphanumeric(code2) ? emailLabel(code2) : nok(code2);\n }\n function emailLabel(code2) {\n if (code2 === 46) {\n effects.consume(code2);\n size = 0;\n return emailAtSignOrDot;\n }\n if (code2 === 62) {\n effects.exit(\"autolinkProtocol\").type = \"autolinkEmail\";\n return end(code2);\n }\n return emailValue(code2);\n }\n function emailValue(code2) {\n if ((code2 === 45 || asciiAlphanumeric(code2)) && size++ < 63) {\n effects.consume(code2);\n return code2 === 45 ? emailValue : emailLabel;\n }\n return nok(code2);\n }\n function end(code2) {\n effects.enter(\"autolinkMarker\");\n effects.consume(code2);\n effects.exit(\"autolinkMarker\");\n effects.exit(\"autolink\");\n return ok2;\n }\n}\nconst blankLine = {\n tokenize: tokenizeBlankLine,\n partial: true\n};\nfunction tokenizeBlankLine(effects, ok2, nok) {\n return factorySpace(effects, afterWhitespace, \"linePrefix\");\n function afterWhitespace(code2) {\n return code2 === null || markdownLineEnding(code2) ? ok2(code2) : nok(code2);\n }\n}\nconst blockQuote = {\n name: \"blockQuote\",\n tokenize: tokenizeBlockQuoteStart,\n continuation: {\n tokenize: tokenizeBlockQuoteContinuation\n },\n exit\n};\nfunction tokenizeBlockQuoteStart(effects, ok2, nok) {\n const self = this;\n return start;\n function start(code2) {\n if (code2 === 62) {\n const state = self.containerState;\n if (!state.open) {\n effects.enter(\"blockQuote\", {\n _container: true\n });\n state.open = true;\n }\n effects.enter(\"blockQuotePrefix\");\n effects.enter(\"blockQuoteMarker\");\n effects.consume(code2);\n effects.exit(\"blockQuoteMarker\");\n return after;\n }\n return nok(code2);\n }\n function after(code2) {\n if (markdownSpace(code2)) {\n effects.enter(\"blockQuotePrefixWhitespace\");\n effects.consume(code2);\n effects.exit(\"blockQuotePrefixWhitespace\");\n effects.exit(\"blockQuotePrefix\");\n return ok2;\n }\n effects.exit(\"blockQuotePrefix\");\n return ok2(code2);\n }\n}\nfunction tokenizeBlockQuoteContinuation(effects, ok2, nok) {\n return factorySpace(\n effects,\n effects.attempt(blockQuote, ok2, nok),\n \"linePrefix\",\n this.parser.constructs.disable.null.includes(\"codeIndented\") ? void 0 : 4\n );\n}\nfunction exit(effects) {\n effects.exit(\"blockQuote\");\n}\nconst characterEscape = {\n name: \"characterEscape\",\n tokenize: tokenizeCharacterEscape\n};\nfunction tokenizeCharacterEscape(effects, ok2, nok) {\n return start;\n function start(code2) {\n effects.enter(\"characterEscape\");\n effects.enter(\"escapeMarker\");\n effects.consume(code2);\n effects.exit(\"escapeMarker\");\n return open;\n }\n function open(code2) {\n if (asciiPunctuation(code2)) {\n effects.enter(\"characterEscapeValue\");\n effects.consume(code2);\n effects.exit(\"characterEscapeValue\");\n effects.exit(\"characterEscape\");\n return ok2;\n }\n return nok(code2);\n }\n}\nconst element$1 = document.createElement(\"i\");\nfunction decodeNamedCharacterReference(value) {\n const characterReference2 = \"&\" + value + \";\";\n element$1.innerHTML = characterReference2;\n const char = element$1.textContent;\n if (char.charCodeAt(char.length - 1) === 59 && value !== \"semi\") {\n return false;\n }\n return char === characterReference2 ? false : char;\n}\nconst characterReference = {\n name: \"characterReference\",\n tokenize: tokenizeCharacterReference\n};\nfunction tokenizeCharacterReference(effects, ok2, nok) {\n const self = this;\n let size = 0;\n let max;\n let test;\n return start;\n function start(code2) {\n effects.enter(\"characterReference\");\n effects.enter(\"characterReferenceMarker\");\n effects.consume(code2);\n effects.exit(\"characterReferenceMarker\");\n return open;\n }\n function open(code2) {\n if (code2 === 35) {\n effects.enter(\"characterReferenceMarkerNumeric\");\n effects.consume(code2);\n effects.exit(\"characterReferenceMarkerNumeric\");\n return numeric;\n }\n effects.enter(\"characterReferenceValue\");\n max = 31;\n test = asciiAlphanumeric;\n return value(code2);\n }\n function numeric(code2) {\n if (code2 === 88 || code2 === 120) {\n effects.enter(\"characterReferenceMarkerHexadecimal\");\n effects.consume(code2);\n effects.exit(\"characterReferenceMarkerHexadecimal\");\n effects.enter(\"characterReferenceValue\");\n max = 6;\n test = asciiHexDigit;\n return value;\n }\n effects.enter(\"characterReferenceValue\");\n max = 7;\n test = asciiDigit;\n return value(code2);\n }\n function value(code2) {\n let token;\n if (code2 === 59 && size) {\n token = effects.exit(\"characterReferenceValue\");\n if (test === asciiAlphanumeric && !decodeNamedCharacterReference(self.sliceSerialize(token))) {\n return nok(code2);\n }\n effects.enter(\"characterReferenceMarker\");\n effects.consume(code2);\n effects.exit(\"characterReferenceMarker\");\n effects.exit(\"characterReference\");\n return ok2;\n }\n if (test(code2) && size++ < max) {\n effects.consume(code2);\n return value;\n }\n return nok(code2);\n }\n}\nconst codeFenced = {\n name: \"codeFenced\",\n tokenize: tokenizeCodeFenced,\n concrete: true\n};\nfunction tokenizeCodeFenced(effects, ok2, nok) {\n const self = this;\n const closingFenceConstruct = {\n tokenize: tokenizeClosingFence,\n partial: true\n };\n const nonLazyLine = {\n tokenize: tokenizeNonLazyLine,\n partial: true\n };\n const tail = this.events[this.events.length - 1];\n const initialPrefix = tail && tail[1].type === \"linePrefix\" ? tail[2].sliceSerialize(tail[1], true).length : 0;\n let sizeOpen = 0;\n let marker;\n return start;\n function start(code2) {\n effects.enter(\"codeFenced\");\n effects.enter(\"codeFencedFence\");\n effects.enter(\"codeFencedFenceSequence\");\n marker = code2;\n return sequenceOpen(code2);\n }\n function sequenceOpen(code2) {\n if (code2 === marker) {\n effects.consume(code2);\n sizeOpen++;\n return sequenceOpen;\n }\n effects.exit(\"codeFencedFenceSequence\");\n return sizeOpen < 3 ? nok(code2) : factorySpace(effects, infoOpen, \"whitespace\")(code2);\n }\n function infoOpen(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n return openAfter(code2);\n }\n effects.enter(\"codeFencedFenceInfo\");\n effects.enter(\"chunkString\", {\n contentType: \"string\"\n });\n return info(code2);\n }\n function info(code2) {\n if (code2 === null || markdownLineEndingOrSpace(code2)) {\n effects.exit(\"chunkString\");\n effects.exit(\"codeFencedFenceInfo\");\n return factorySpace(effects, infoAfter, \"whitespace\")(code2);\n }\n if (code2 === 96 && code2 === marker)\n return nok(code2);\n effects.consume(code2);\n return info;\n }\n function infoAfter(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n return openAfter(code2);\n }\n effects.enter(\"codeFencedFenceMeta\");\n effects.enter(\"chunkString\", {\n contentType: \"string\"\n });\n return meta(code2);\n }\n function meta(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n effects.exit(\"chunkString\");\n effects.exit(\"codeFencedFenceMeta\");\n return openAfter(code2);\n }\n if (code2 === 96 && code2 === marker)\n return nok(code2);\n effects.consume(code2);\n return meta;\n }\n function openAfter(code2) {\n effects.exit(\"codeFencedFence\");\n return self.interrupt ? ok2(code2) : contentStart(code2);\n }\n function contentStart(code2) {\n if (code2 === null) {\n return after(code2);\n }\n if (markdownLineEnding(code2)) {\n return effects.attempt(\n nonLazyLine,\n effects.attempt(\n closingFenceConstruct,\n after,\n initialPrefix ? factorySpace(\n effects,\n contentStart,\n \"linePrefix\",\n initialPrefix + 1\n ) : contentStart\n ),\n after\n )(code2);\n }\n effects.enter(\"codeFlowValue\");\n return contentContinue(code2);\n }\n function contentContinue(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n effects.exit(\"codeFlowValue\");\n return contentStart(code2);\n }\n effects.consume(code2);\n return contentContinue;\n }\n function after(code2) {\n effects.exit(\"codeFenced\");\n return ok2(code2);\n }\n function tokenizeNonLazyLine(effects2, ok3, nok2) {\n const self2 = this;\n return start2;\n function start2(code2) {\n effects2.enter(\"lineEnding\");\n effects2.consume(code2);\n effects2.exit(\"lineEnding\");\n return lineStart;\n }\n function lineStart(code2) {\n return self2.parser.lazy[self2.now().line] ? nok2(code2) : ok3(code2);\n }\n }\n function tokenizeClosingFence(effects2, ok3, nok2) {\n let size = 0;\n return factorySpace(\n effects2,\n closingSequenceStart,\n \"linePrefix\",\n this.parser.constructs.disable.null.includes(\"codeIndented\") ? void 0 : 4\n );\n function closingSequenceStart(code2) {\n effects2.enter(\"codeFencedFence\");\n effects2.enter(\"codeFencedFenceSequence\");\n return closingSequence(code2);\n }\n function closingSequence(code2) {\n if (code2 === marker) {\n effects2.consume(code2);\n size++;\n return closingSequence;\n }\n if (size < sizeOpen)\n return nok2(code2);\n effects2.exit(\"codeFencedFenceSequence\");\n return factorySpace(effects2, closingSequenceEnd, \"whitespace\")(code2);\n }\n function closingSequenceEnd(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n effects2.exit(\"codeFencedFence\");\n return ok3(code2);\n }\n return nok2(code2);\n }\n }\n}\nconst codeIndented = {\n name: \"codeIndented\",\n tokenize: tokenizeCodeIndented\n};\nconst indentedContent = {\n tokenize: tokenizeIndentedContent,\n partial: true\n};\nfunction tokenizeCodeIndented(effects, ok2, nok) {\n const self = this;\n return start;\n function start(code2) {\n effects.enter(\"codeIndented\");\n return factorySpace(effects, afterStartPrefix, \"linePrefix\", 4 + 1)(code2);\n }\n function afterStartPrefix(code2) {\n const tail = self.events[self.events.length - 1];\n return tail && tail[1].type === \"linePrefix\" && tail[2].sliceSerialize(tail[1], true).length >= 4 ? afterPrefix(code2) : nok(code2);\n }\n function afterPrefix(code2) {\n if (code2 === null) {\n return after(code2);\n }\n if (markdownLineEnding(code2)) {\n return effects.attempt(indentedContent, afterPrefix, after)(code2);\n }\n effects.enter(\"codeFlowValue\");\n return content2(code2);\n }\n function content2(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n effects.exit(\"codeFlowValue\");\n return afterPrefix(code2);\n }\n effects.consume(code2);\n return content2;\n }\n function after(code2) {\n effects.exit(\"codeIndented\");\n return ok2(code2);\n }\n}\nfunction tokenizeIndentedContent(effects, ok2, nok) {\n const self = this;\n return start;\n function start(code2) {\n if (self.parser.lazy[self.now().line]) {\n return nok(code2);\n }\n if (markdownLineEnding(code2)) {\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n return start;\n }\n return factorySpace(effects, afterPrefix, \"linePrefix\", 4 + 1)(code2);\n }\n function afterPrefix(code2) {\n const tail = self.events[self.events.length - 1];\n return tail && tail[1].type === \"linePrefix\" && tail[2].sliceSerialize(tail[1], true).length >= 4 ? ok2(code2) : markdownLineEnding(code2) ? start(code2) : nok(code2);\n }\n}\nconst codeText = {\n name: \"codeText\",\n tokenize: tokenizeCodeText,\n resolve: resolveCodeText,\n previous\n};\nfunction resolveCodeText(events) {\n let tailExitIndex = events.length - 4;\n let headEnterIndex = 3;\n let index2;\n let enter;\n if ((events[headEnterIndex][1].type === \"lineEnding\" || events[headEnterIndex][1].type === \"space\") && (events[tailExitIndex][1].type === \"lineEnding\" || events[tailExitIndex][1].type === \"space\")) {\n index2 = headEnterIndex;\n while (++index2 < tailExitIndex) {\n if (events[index2][1].type === \"codeTextData\") {\n events[headEnterIndex][1].type = \"codeTextPadding\";\n events[tailExitIndex][1].type = \"codeTextPadding\";\n headEnterIndex += 2;\n tailExitIndex -= 2;\n break;\n }\n }\n }\n index2 = headEnterIndex - 1;\n tailExitIndex++;\n while (++index2 <= tailExitIndex) {\n if (enter === void 0) {\n if (index2 !== tailExitIndex && events[index2][1].type !== \"lineEnding\") {\n enter = index2;\n }\n } else if (index2 === tailExitIndex || events[index2][1].type === \"lineEnding\") {\n events[enter][1].type = \"codeTextData\";\n if (index2 !== enter + 2) {\n events[enter][1].end = events[index2 - 1][1].end;\n events.splice(enter + 2, index2 - enter - 2);\n tailExitIndex -= index2 - enter - 2;\n index2 = enter + 2;\n }\n enter = void 0;\n }\n }\n return events;\n}\nfunction previous(code2) {\n return code2 !== 96 || this.events[this.events.length - 1][1].type === \"characterEscape\";\n}\nfunction tokenizeCodeText(effects, ok2, nok) {\n let sizeOpen = 0;\n let size;\n let token;\n return start;\n function start(code2) {\n effects.enter(\"codeText\");\n effects.enter(\"codeTextSequence\");\n return openingSequence(code2);\n }\n function openingSequence(code2) {\n if (code2 === 96) {\n effects.consume(code2);\n sizeOpen++;\n return openingSequence;\n }\n effects.exit(\"codeTextSequence\");\n return gap(code2);\n }\n function gap(code2) {\n if (code2 === null) {\n return nok(code2);\n }\n if (code2 === 96) {\n token = effects.enter(\"codeTextSequence\");\n size = 0;\n return closingSequence(code2);\n }\n if (code2 === 32) {\n effects.enter(\"space\");\n effects.consume(code2);\n effects.exit(\"space\");\n return gap;\n }\n if (markdownLineEnding(code2)) {\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n return gap;\n }\n effects.enter(\"codeTextData\");\n return data(code2);\n }\n function data(code2) {\n if (code2 === null || code2 === 32 || code2 === 96 || markdownLineEnding(code2)) {\n effects.exit(\"codeTextData\");\n return gap(code2);\n }\n effects.consume(code2);\n return data;\n }\n function closingSequence(code2) {\n if (code2 === 96) {\n effects.consume(code2);\n size++;\n return closingSequence;\n }\n if (size === sizeOpen) {\n effects.exit(\"codeTextSequence\");\n effects.exit(\"codeText\");\n return ok2(code2);\n }\n token.type = \"codeTextData\";\n return data(code2);\n }\n}\nfunction subtokenize(events) {\n const jumps = {};\n let index2 = -1;\n let event;\n let lineIndex;\n let otherIndex;\n let otherEvent;\n let parameters;\n let subevents;\n let more;\n while (++index2 < events.length) {\n while (index2 in jumps) {\n index2 = jumps[index2];\n }\n event = events[index2];\n if (index2 && event[1].type === \"chunkFlow\" && events[index2 - 1][1].type === \"listItemPrefix\") {\n subevents = event[1]._tokenizer.events;\n otherIndex = 0;\n if (otherIndex < subevents.length && subevents[otherIndex][1].type === \"lineEndingBlank\") {\n otherIndex += 2;\n }\n if (otherIndex < subevents.length && subevents[otherIndex][1].type === \"content\") {\n while (++otherIndex < subevents.length) {\n if (subevents[otherIndex][1].type === \"content\") {\n break;\n }\n if (subevents[otherIndex][1].type === \"chunkText\") {\n subevents[otherIndex][1]._isInFirstContentOfListItem = true;\n otherIndex++;\n }\n }\n }\n }\n if (event[0] === \"enter\") {\n if (event[1].contentType) {\n Object.assign(jumps, subcontent(events, index2));\n index2 = jumps[index2];\n more = true;\n }\n } else if (event[1]._container) {\n otherIndex = index2;\n lineIndex = void 0;\n while (otherIndex--) {\n otherEvent = events[otherIndex];\n if (otherEvent[1].type === \"lineEnding\" || otherEvent[1].type === \"lineEndingBlank\") {\n if (otherEvent[0] === \"enter\") {\n if (lineIndex) {\n events[lineIndex][1].type = \"lineEndingBlank\";\n }\n otherEvent[1].type = \"lineEnding\";\n lineIndex = otherIndex;\n }\n } else {\n break;\n }\n }\n if (lineIndex) {\n event[1].end = Object.assign({}, events[lineIndex][1].start);\n parameters = events.slice(lineIndex, index2);\n parameters.unshift(event);\n splice(events, lineIndex, index2 - lineIndex + 1, parameters);\n }\n }\n }\n return !more;\n}\nfunction subcontent(events, eventIndex) {\n const token = events[eventIndex][1];\n const context = events[eventIndex][2];\n let startPosition = eventIndex - 1;\n const startPositions = [];\n const tokenizer = token._tokenizer || context.parser[token.contentType](token.start);\n const childEvents = tokenizer.events;\n const jumps = [];\n const gaps = {};\n let stream;\n let previous2;\n let index2 = -1;\n let current = token;\n let adjust = 0;\n let start = 0;\n const breaks = [start];\n while (current) {\n while (events[++startPosition][1] !== current) {\n }\n startPositions.push(startPosition);\n if (!current._tokenizer) {\n stream = context.sliceStream(current);\n if (!current.next) {\n stream.push(null);\n }\n if (previous2) {\n tokenizer.defineSkip(current.start);\n }\n if (current._isInFirstContentOfListItem) {\n tokenizer._gfmTasklistFirstContentOfListItem = true;\n }\n tokenizer.write(stream);\n if (current._isInFirstContentOfListItem) {\n tokenizer._gfmTasklistFirstContentOfListItem = void 0;\n }\n }\n previous2 = current;\n current = current.next;\n }\n current = token;\n while (++index2 < childEvents.length) {\n if (childEvents[index2][0] === \"exit\" && childEvents[index2 - 1][0] === \"enter\" && childEvents[index2][1].type === childEvents[index2 - 1][1].type && childEvents[index2][1].start.line !== childEvents[index2][1].end.line) {\n start = index2 + 1;\n breaks.push(start);\n current._tokenizer = void 0;\n current.previous = void 0;\n current = current.next;\n }\n }\n tokenizer.events = [];\n if (current) {\n current._tokenizer = void 0;\n current.previous = void 0;\n } else {\n breaks.pop();\n }\n index2 = breaks.length;\n while (index2--) {\n const slice = childEvents.slice(breaks[index2], breaks[index2 + 1]);\n const start2 = startPositions.pop();\n jumps.unshift([start2, start2 + slice.length - 1]);\n splice(events, start2, 2, slice);\n }\n index2 = -1;\n while (++index2 < jumps.length) {\n gaps[adjust + jumps[index2][0]] = adjust + jumps[index2][1];\n adjust += jumps[index2][1] - jumps[index2][0] - 1;\n }\n return gaps;\n}\nconst content = {\n tokenize: tokenizeContent,\n resolve: resolveContent\n};\nconst continuationConstruct = {\n tokenize: tokenizeContinuation,\n partial: true\n};\nfunction resolveContent(events) {\n subtokenize(events);\n return events;\n}\nfunction tokenizeContent(effects, ok2) {\n let previous2;\n return start;\n function start(code2) {\n effects.enter(\"content\");\n previous2 = effects.enter(\"chunkContent\", {\n contentType: \"content\"\n });\n return data(code2);\n }\n function data(code2) {\n if (code2 === null) {\n return contentEnd(code2);\n }\n if (markdownLineEnding(code2)) {\n return effects.check(\n continuationConstruct,\n contentContinue,\n contentEnd\n )(code2);\n }\n effects.consume(code2);\n return data;\n }\n function contentEnd(code2) {\n effects.exit(\"chunkContent\");\n effects.exit(\"content\");\n return ok2(code2);\n }\n function contentContinue(code2) {\n effects.consume(code2);\n effects.exit(\"chunkContent\");\n previous2.next = effects.enter(\"chunkContent\", {\n contentType: \"content\",\n previous: previous2\n });\n previous2 = previous2.next;\n return data;\n }\n}\nfunction tokenizeContinuation(effects, ok2, nok) {\n const self = this;\n return startLookahead;\n function startLookahead(code2) {\n effects.exit(\"chunkContent\");\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n return factorySpace(effects, prefixed, \"linePrefix\");\n }\n function prefixed(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n return nok(code2);\n }\n const tail = self.events[self.events.length - 1];\n if (!self.parser.constructs.disable.null.includes(\"codeIndented\") && tail && tail[1].type === \"linePrefix\" && tail[2].sliceSerialize(tail[1], true).length >= 4) {\n return ok2(code2);\n }\n return effects.interrupt(self.parser.constructs.flow, nok, ok2)(code2);\n }\n}\nfunction factoryDestination(effects, ok2, nok, type, literalType, literalMarkerType, rawType, stringType, max) {\n const limit = max || Number.POSITIVE_INFINITY;\n let balance = 0;\n return start;\n function start(code2) {\n if (code2 === 60) {\n effects.enter(type);\n effects.enter(literalType);\n effects.enter(literalMarkerType);\n effects.consume(code2);\n effects.exit(literalMarkerType);\n return destinationEnclosedBefore;\n }\n if (code2 === null || code2 === 41 || asciiControl(code2)) {\n return nok(code2);\n }\n effects.enter(type);\n effects.enter(rawType);\n effects.enter(stringType);\n effects.enter(\"chunkString\", {\n contentType: \"string\"\n });\n return destinationRaw(code2);\n }\n function destinationEnclosedBefore(code2) {\n if (code2 === 62) {\n effects.enter(literalMarkerType);\n effects.consume(code2);\n effects.exit(literalMarkerType);\n effects.exit(literalType);\n effects.exit(type);\n return ok2;\n }\n effects.enter(stringType);\n effects.enter(\"chunkString\", {\n contentType: \"string\"\n });\n return destinationEnclosed(code2);\n }\n function destinationEnclosed(code2) {\n if (code2 === 62) {\n effects.exit(\"chunkString\");\n effects.exit(stringType);\n return destinationEnclosedBefore(code2);\n }\n if (code2 === null || code2 === 60 || markdownLineEnding(code2)) {\n return nok(code2);\n }\n effects.consume(code2);\n return code2 === 92 ? destinationEnclosedEscape : destinationEnclosed;\n }\n function destinationEnclosedEscape(code2) {\n if (code2 === 60 || code2 === 62 || code2 === 92) {\n effects.consume(code2);\n return destinationEnclosed;\n }\n return destinationEnclosed(code2);\n }\n function destinationRaw(code2) {\n if (code2 === 40) {\n if (++balance > limit)\n return nok(code2);\n effects.consume(code2);\n return destinationRaw;\n }\n if (code2 === 41) {\n if (!balance--) {\n effects.exit(\"chunkString\");\n effects.exit(stringType);\n effects.exit(rawType);\n effects.exit(type);\n return ok2(code2);\n }\n effects.consume(code2);\n return destinationRaw;\n }\n if (code2 === null || markdownLineEndingOrSpace(code2)) {\n if (balance)\n return nok(code2);\n effects.exit(\"chunkString\");\n effects.exit(stringType);\n effects.exit(rawType);\n effects.exit(type);\n return ok2(code2);\n }\n if (asciiControl(code2))\n return nok(code2);\n effects.consume(code2);\n return code2 === 92 ? destinationRawEscape : destinationRaw;\n }\n function destinationRawEscape(code2) {\n if (code2 === 40 || code2 === 41 || code2 === 92) {\n effects.consume(code2);\n return destinationRaw;\n }\n return destinationRaw(code2);\n }\n}\nfunction factoryLabel(effects, ok2, nok, type, markerType, stringType) {\n const self = this;\n let size = 0;\n let data;\n return start;\n function start(code2) {\n effects.enter(type);\n effects.enter(markerType);\n effects.consume(code2);\n effects.exit(markerType);\n effects.enter(stringType);\n return atBreak;\n }\n function atBreak(code2) {\n if (code2 === null || code2 === 91 || code2 === 93 && !data || code2 === 94 && !size && \"_hiddenFootnoteSupport\" in self.parser.constructs || size > 999) {\n return nok(code2);\n }\n if (code2 === 93) {\n effects.exit(stringType);\n effects.enter(markerType);\n effects.consume(code2);\n effects.exit(markerType);\n effects.exit(type);\n return ok2;\n }\n if (markdownLineEnding(code2)) {\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n return atBreak;\n }\n effects.enter(\"chunkString\", {\n contentType: \"string\"\n });\n return label(code2);\n }\n function label(code2) {\n if (code2 === null || code2 === 91 || code2 === 93 || markdownLineEnding(code2) || size++ > 999) {\n effects.exit(\"chunkString\");\n return atBreak(code2);\n }\n effects.consume(code2);\n data = data || !markdownSpace(code2);\n return code2 === 92 ? labelEscape : label;\n }\n function labelEscape(code2) {\n if (code2 === 91 || code2 === 92 || code2 === 93) {\n effects.consume(code2);\n size++;\n return label;\n }\n return label(code2);\n }\n}\nfunction factoryTitle(effects, ok2, nok, type, markerType, stringType) {\n let marker;\n return start;\n function start(code2) {\n effects.enter(type);\n effects.enter(markerType);\n effects.consume(code2);\n effects.exit(markerType);\n marker = code2 === 40 ? 41 : code2;\n return atFirstTitleBreak;\n }\n function atFirstTitleBreak(code2) {\n if (code2 === marker) {\n effects.enter(markerType);\n effects.consume(code2);\n effects.exit(markerType);\n effects.exit(type);\n return ok2;\n }\n effects.enter(stringType);\n return atTitleBreak(code2);\n }\n function atTitleBreak(code2) {\n if (code2 === marker) {\n effects.exit(stringType);\n return atFirstTitleBreak(marker);\n }\n if (code2 === null) {\n return nok(code2);\n }\n if (markdownLineEnding(code2)) {\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n return factorySpace(effects, atTitleBreak, \"linePrefix\");\n }\n effects.enter(\"chunkString\", {\n contentType: \"string\"\n });\n return title(code2);\n }\n function title(code2) {\n if (code2 === marker || code2 === null || markdownLineEnding(code2)) {\n effects.exit(\"chunkString\");\n return atTitleBreak(code2);\n }\n effects.consume(code2);\n return code2 === 92 ? titleEscape : title;\n }\n function titleEscape(code2) {\n if (code2 === marker || code2 === 92) {\n effects.consume(code2);\n return title;\n }\n return title(code2);\n }\n}\nfunction factoryWhitespace(effects, ok2) {\n let seen;\n return start;\n function start(code2) {\n if (markdownLineEnding(code2)) {\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n seen = true;\n return start;\n }\n if (markdownSpace(code2)) {\n return factorySpace(\n effects,\n start,\n seen ? \"linePrefix\" : \"lineSuffix\"\n )(code2);\n }\n return ok2(code2);\n }\n}\nfunction normalizeIdentifier(value) {\n return value.replace(/[\\t\\n\\r ]+/g, \" \").replace(/^ | $/g, \"\").toLowerCase().toUpperCase();\n}\nconst definition = {\n name: \"definition\",\n tokenize: tokenizeDefinition\n};\nconst titleConstruct = {\n tokenize: tokenizeTitle,\n partial: true\n};\nfunction tokenizeDefinition(effects, ok2, nok) {\n const self = this;\n let identifier;\n return start;\n function start(code2) {\n effects.enter(\"definition\");\n return factoryLabel.call(\n self,\n effects,\n labelAfter,\n nok,\n \"definitionLabel\",\n \"definitionLabelMarker\",\n \"definitionLabelString\"\n )(code2);\n }\n function labelAfter(code2) {\n identifier = normalizeIdentifier(\n self.sliceSerialize(self.events[self.events.length - 1][1]).slice(1, -1)\n );\n if (code2 === 58) {\n effects.enter(\"definitionMarker\");\n effects.consume(code2);\n effects.exit(\"definitionMarker\");\n return factoryWhitespace(\n effects,\n factoryDestination(\n effects,\n effects.attempt(\n titleConstruct,\n factorySpace(effects, after, \"whitespace\"),\n factorySpace(effects, after, \"whitespace\")\n ),\n nok,\n \"definitionDestination\",\n \"definitionDestinationLiteral\",\n \"definitionDestinationLiteralMarker\",\n \"definitionDestinationRaw\",\n \"definitionDestinationString\"\n )\n );\n }\n return nok(code2);\n }\n function after(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n effects.exit(\"definition\");\n if (!self.parser.defined.includes(identifier)) {\n self.parser.defined.push(identifier);\n }\n return ok2(code2);\n }\n return nok(code2);\n }\n}\nfunction tokenizeTitle(effects, ok2, nok) {\n return start;\n function start(code2) {\n return markdownLineEndingOrSpace(code2) ? factoryWhitespace(effects, before)(code2) : nok(code2);\n }\n function before(code2) {\n if (code2 === 34 || code2 === 39 || code2 === 40) {\n return factoryTitle(\n effects,\n factorySpace(effects, after, \"whitespace\"),\n nok,\n \"definitionTitle\",\n \"definitionTitleMarker\",\n \"definitionTitleString\"\n )(code2);\n }\n return nok(code2);\n }\n function after(code2) {\n return code2 === null || markdownLineEnding(code2) ? ok2(code2) : nok(code2);\n }\n}\nconst hardBreakEscape = {\n name: \"hardBreakEscape\",\n tokenize: tokenizeHardBreakEscape\n};\nfunction tokenizeHardBreakEscape(effects, ok2, nok) {\n return start;\n function start(code2) {\n effects.enter(\"hardBreakEscape\");\n effects.enter(\"escapeMarker\");\n effects.consume(code2);\n return open;\n }\n function open(code2) {\n if (markdownLineEnding(code2)) {\n effects.exit(\"escapeMarker\");\n effects.exit(\"hardBreakEscape\");\n return ok2(code2);\n }\n return nok(code2);\n }\n}\nconst headingAtx = {\n name: \"headingAtx\",\n tokenize: tokenizeHeadingAtx,\n resolve: resolveHeadingAtx\n};\nfunction resolveHeadingAtx(events, context) {\n let contentEnd = events.length - 2;\n let contentStart = 3;\n let content2;\n let text2;\n if (events[contentStart][1].type === \"whitespace\") {\n contentStart += 2;\n }\n if (contentEnd - 2 > contentStart && events[contentEnd][1].type === \"whitespace\") {\n contentEnd -= 2;\n }\n if (events[contentEnd][1].type === \"atxHeadingSequence\" && (contentStart === contentEnd - 1 || contentEnd - 4 > contentStart && events[contentEnd - 2][1].type === \"whitespace\")) {\n contentEnd -= contentStart + 1 === contentEnd ? 2 : 4;\n }\n if (contentEnd > contentStart) {\n content2 = {\n type: \"atxHeadingText\",\n start: events[contentStart][1].start,\n end: events[contentEnd][1].end\n };\n text2 = {\n type: \"chunkText\",\n start: events[contentStart][1].start,\n end: events[contentEnd][1].end,\n contentType: \"text\"\n };\n splice(events, contentStart, contentEnd - contentStart + 1, [\n [\"enter\", content2, context],\n [\"enter\", text2, context],\n [\"exit\", text2, context],\n [\"exit\", content2, context]\n ]);\n }\n return events;\n}\nfunction tokenizeHeadingAtx(effects, ok2, nok) {\n const self = this;\n let size = 0;\n return start;\n function start(code2) {\n effects.enter(\"atxHeading\");\n effects.enter(\"atxHeadingSequence\");\n return fenceOpenInside(code2);\n }\n function fenceOpenInside(code2) {\n if (code2 === 35 && size++ < 6) {\n effects.consume(code2);\n return fenceOpenInside;\n }\n if (code2 === null || markdownLineEndingOrSpace(code2)) {\n effects.exit(\"atxHeadingSequence\");\n return self.interrupt ? ok2(code2) : headingBreak(code2);\n }\n return nok(code2);\n }\n function headingBreak(code2) {\n if (code2 === 35) {\n effects.enter(\"atxHeadingSequence\");\n return sequence(code2);\n }\n if (code2 === null || markdownLineEnding(code2)) {\n effects.exit(\"atxHeading\");\n return ok2(code2);\n }\n if (markdownSpace(code2)) {\n return factorySpace(effects, headingBreak, \"whitespace\")(code2);\n }\n effects.enter(\"atxHeadingText\");\n return data(code2);\n }\n function sequence(code2) {\n if (code2 === 35) {\n effects.consume(code2);\n return sequence;\n }\n effects.exit(\"atxHeadingSequence\");\n return headingBreak(code2);\n }\n function data(code2) {\n if (code2 === null || code2 === 35 || markdownLineEndingOrSpace(code2)) {\n effects.exit(\"atxHeadingText\");\n return headingBreak(code2);\n }\n effects.consume(code2);\n return data;\n }\n}\nconst htmlBlockNames = [\n \"address\",\n \"article\",\n \"aside\",\n \"base\",\n \"basefont\",\n \"blockquote\",\n \"body\",\n \"caption\",\n \"center\",\n \"col\",\n \"colgroup\",\n \"dd\",\n \"details\",\n \"dialog\",\n \"dir\",\n \"div\",\n \"dl\",\n \"dt\",\n \"fieldset\",\n \"figcaption\",\n \"figure\",\n \"footer\",\n \"form\",\n \"frame\",\n \"frameset\",\n \"h1\",\n \"h2\",\n \"h3\",\n \"h4\",\n \"h5\",\n \"h6\",\n \"head\",\n \"header\",\n \"hr\",\n \"html\",\n \"iframe\",\n \"legend\",\n \"li\",\n \"link\",\n \"main\",\n \"menu\",\n \"menuitem\",\n \"nav\",\n \"noframes\",\n \"ol\",\n \"optgroup\",\n \"option\",\n \"p\",\n \"param\",\n \"section\",\n \"summary\",\n \"table\",\n \"tbody\",\n \"td\",\n \"tfoot\",\n \"th\",\n \"thead\",\n \"title\",\n \"tr\",\n \"track\",\n \"ul\"\n];\nconst htmlRawNames = [\"pre\", \"script\", \"style\", \"textarea\"];\nconst htmlFlow = {\n name: \"htmlFlow\",\n tokenize: tokenizeHtmlFlow,\n resolveTo: resolveToHtmlFlow,\n concrete: true\n};\nconst nextBlankConstruct = {\n tokenize: tokenizeNextBlank,\n partial: true\n};\nfunction resolveToHtmlFlow(events) {\n let index2 = events.length;\n while (index2--) {\n if (events[index2][0] === \"enter\" && events[index2][1].type === \"htmlFlow\") {\n break;\n }\n }\n if (index2 > 1 && events[index2 - 2][1].type === \"linePrefix\") {\n events[index2][1].start = events[index2 - 2][1].start;\n events[index2 + 1][1].start = events[index2 - 2][1].start;\n events.splice(index2 - 2, 2);\n }\n return events;\n}\nfunction tokenizeHtmlFlow(effects, ok2, nok) {\n const self = this;\n let kind;\n let startTag;\n let buffer;\n let index2;\n let marker;\n return start;\n function start(code2) {\n effects.enter(\"htmlFlow\");\n effects.enter(\"htmlFlowData\");\n effects.consume(code2);\n return open;\n }\n function open(code2) {\n if (code2 === 33) {\n effects.consume(code2);\n return declarationStart;\n }\n if (code2 === 47) {\n effects.consume(code2);\n return tagCloseStart;\n }\n if (code2 === 63) {\n effects.consume(code2);\n kind = 3;\n return self.interrupt ? ok2 : continuationDeclarationInside;\n }\n if (asciiAlpha(code2)) {\n effects.consume(code2);\n buffer = String.fromCharCode(code2);\n startTag = true;\n return tagName;\n }\n return nok(code2);\n }\n function declarationStart(code2) {\n if (code2 === 45) {\n effects.consume(code2);\n kind = 2;\n return commentOpenInside;\n }\n if (code2 === 91) {\n effects.consume(code2);\n kind = 5;\n buffer = \"CDATA[\";\n index2 = 0;\n return cdataOpenInside;\n }\n if (asciiAlpha(code2)) {\n effects.consume(code2);\n kind = 4;\n return self.interrupt ? ok2 : continuationDeclarationInside;\n }\n return nok(code2);\n }\n function commentOpenInside(code2) {\n if (code2 === 45) {\n effects.consume(code2);\n return self.interrupt ? ok2 : continuationDeclarationInside;\n }\n return nok(code2);\n }\n function cdataOpenInside(code2) {\n if (code2 === buffer.charCodeAt(index2++)) {\n effects.consume(code2);\n return index2 === buffer.length ? self.interrupt ? ok2 : continuation : cdataOpenInside;\n }\n return nok(code2);\n }\n function tagCloseStart(code2) {\n if (asciiAlpha(code2)) {\n effects.consume(code2);\n buffer = String.fromCharCode(code2);\n return tagName;\n }\n return nok(code2);\n }\n function tagName(code2) {\n if (code2 === null || code2 === 47 || code2 === 62 || markdownLineEndingOrSpace(code2)) {\n if (code2 !== 47 && startTag && htmlRawNames.includes(buffer.toLowerCase())) {\n kind = 1;\n return self.interrupt ? ok2(code2) : continuation(code2);\n }\n if (htmlBlockNames.includes(buffer.toLowerCase())) {\n kind = 6;\n if (code2 === 47) {\n effects.consume(code2);\n return basicSelfClosing;\n }\n return self.interrupt ? ok2(code2) : continuation(code2);\n }\n kind = 7;\n return self.interrupt && !self.parser.lazy[self.now().line] ? nok(code2) : startTag ? completeAttributeNameBefore(code2) : completeClosingTagAfter(code2);\n }\n if (code2 === 45 || asciiAlphanumeric(code2)) {\n effects.consume(code2);\n buffer += String.fromCharCode(code2);\n return tagName;\n }\n return nok(code2);\n }\n function basicSelfClosing(code2) {\n if (code2 === 62) {\n effects.consume(code2);\n return self.interrupt ? ok2 : continuation;\n }\n return nok(code2);\n }\n function completeClosingTagAfter(code2) {\n if (markdownSpace(code2)) {\n effects.consume(code2);\n return completeClosingTagAfter;\n }\n return completeEnd(code2);\n }\n function completeAttributeNameBefore(code2) {\n if (code2 === 47) {\n effects.consume(code2);\n return completeEnd;\n }\n if (code2 === 58 || code2 === 95 || asciiAlpha(code2)) {\n effects.consume(code2);\n return completeAttributeName;\n }\n if (markdownSpace(code2)) {\n effects.consume(code2);\n return completeAttributeNameBefore;\n }\n return completeEnd(code2);\n }\n function completeAttributeName(code2) {\n if (code2 === 45 || code2 === 46 || code2 === 58 || code2 === 95 || asciiAlphanumeric(code2)) {\n effects.consume(code2);\n return completeAttributeName;\n }\n return completeAttributeNameAfter(code2);\n }\n function completeAttributeNameAfter(code2) {\n if (code2 === 61) {\n effects.consume(code2);\n return completeAttributeValueBefore;\n }\n if (markdownSpace(code2)) {\n effects.consume(code2);\n return completeAttributeNameAfter;\n }\n return completeAttributeNameBefore(code2);\n }\n function completeAttributeValueBefore(code2) {\n if (code2 === null || code2 === 60 || code2 === 61 || code2 === 62 || code2 === 96) {\n return nok(code2);\n }\n if (code2 === 34 || code2 === 39) {\n effects.consume(code2);\n marker = code2;\n return completeAttributeValueQuoted;\n }\n if (markdownSpace(code2)) {\n effects.consume(code2);\n return completeAttributeValueBefore;\n }\n marker = null;\n return completeAttributeValueUnquoted(code2);\n }\n function completeAttributeValueQuoted(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n return nok(code2);\n }\n if (code2 === marker) {\n effects.consume(code2);\n return completeAttributeValueQuotedAfter;\n }\n effects.consume(code2);\n return completeAttributeValueQuoted;\n }\n function completeAttributeValueUnquoted(code2) {\n if (code2 === null || code2 === 34 || code2 === 39 || code2 === 60 || code2 === 61 || code2 === 62 || code2 === 96 || markdownLineEndingOrSpace(code2)) {\n return completeAttributeNameAfter(code2);\n }\n effects.consume(code2);\n return completeAttributeValueUnquoted;\n }\n function completeAttributeValueQuotedAfter(code2) {\n if (code2 === 47 || code2 === 62 || markdownSpace(code2)) {\n return completeAttributeNameBefore(code2);\n }\n return nok(code2);\n }\n function completeEnd(code2) {\n if (code2 === 62) {\n effects.consume(code2);\n return completeAfter;\n }\n return nok(code2);\n }\n function completeAfter(code2) {\n if (markdownSpace(code2)) {\n effects.consume(code2);\n return completeAfter;\n }\n return code2 === null || markdownLineEnding(code2) ? continuation(code2) : nok(code2);\n }\n function continuation(code2) {\n if (code2 === 45 && kind === 2) {\n effects.consume(code2);\n return continuationCommentInside;\n }\n if (code2 === 60 && kind === 1) {\n effects.consume(code2);\n return continuationRawTagOpen;\n }\n if (code2 === 62 && kind === 4) {\n effects.consume(code2);\n return continuationClose;\n }\n if (code2 === 63 && kind === 3) {\n effects.consume(code2);\n return continuationDeclarationInside;\n }\n if (code2 === 93 && kind === 5) {\n effects.consume(code2);\n return continuationCharacterDataInside;\n }\n if (markdownLineEnding(code2) && (kind === 6 || kind === 7)) {\n return effects.check(\n nextBlankConstruct,\n continuationClose,\n continuationAtLineEnding\n )(code2);\n }\n if (code2 === null || markdownLineEnding(code2)) {\n return continuationAtLineEnding(code2);\n }\n effects.consume(code2);\n return continuation;\n }\n function continuationAtLineEnding(code2) {\n effects.exit(\"htmlFlowData\");\n return htmlContinueStart(code2);\n }\n function htmlContinueStart(code2) {\n if (code2 === null) {\n return done(code2);\n }\n if (markdownLineEnding(code2)) {\n return effects.attempt(\n {\n tokenize: htmlLineEnd,\n partial: true\n },\n htmlContinueStart,\n done\n )(code2);\n }\n effects.enter(\"htmlFlowData\");\n return continuation(code2);\n }\n function htmlLineEnd(effects2, ok3, nok2) {\n return start2;\n function start2(code2) {\n effects2.enter(\"lineEnding\");\n effects2.consume(code2);\n effects2.exit(\"lineEnding\");\n return lineStart;\n }\n function lineStart(code2) {\n return self.parser.lazy[self.now().line] ? nok2(code2) : ok3(code2);\n }\n }\n function continuationCommentInside(code2) {\n if (code2 === 45) {\n effects.consume(code2);\n return continuationDeclarationInside;\n }\n return continuation(code2);\n }\n function continuationRawTagOpen(code2) {\n if (code2 === 47) {\n effects.consume(code2);\n buffer = \"\";\n return continuationRawEndTag;\n }\n return continuation(code2);\n }\n function continuationRawEndTag(code2) {\n if (code2 === 62 && htmlRawNames.includes(buffer.toLowerCase())) {\n effects.consume(code2);\n return continuationClose;\n }\n if (asciiAlpha(code2) && buffer.length < 8) {\n effects.consume(code2);\n buffer += String.fromCharCode(code2);\n return continuationRawEndTag;\n }\n return continuation(code2);\n }\n function continuationCharacterDataInside(code2) {\n if (code2 === 93) {\n effects.consume(code2);\n return continuationDeclarationInside;\n }\n return continuation(code2);\n }\n function continuationDeclarationInside(code2) {\n if (code2 === 62) {\n effects.consume(code2);\n return continuationClose;\n }\n if (code2 === 45 && kind === 2) {\n effects.consume(code2);\n return continuationDeclarationInside;\n }\n return continuation(code2);\n }\n function continuationClose(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n effects.exit(\"htmlFlowData\");\n return done(code2);\n }\n effects.consume(code2);\n return continuationClose;\n }\n function done(code2) {\n effects.exit(\"htmlFlow\");\n return ok2(code2);\n }\n}\nfunction tokenizeNextBlank(effects, ok2, nok) {\n return start;\n function start(code2) {\n effects.exit(\"htmlFlowData\");\n effects.enter(\"lineEndingBlank\");\n effects.consume(code2);\n effects.exit(\"lineEndingBlank\");\n return effects.attempt(blankLine, ok2, nok);\n }\n}\nconst htmlText = {\n name: \"htmlText\",\n tokenize: tokenizeHtmlText\n};\nfunction tokenizeHtmlText(effects, ok2, nok) {\n const self = this;\n let marker;\n let buffer;\n let index2;\n let returnState;\n return start;\n function start(code2) {\n effects.enter(\"htmlText\");\n effects.enter(\"htmlTextData\");\n effects.consume(code2);\n return open;\n }\n function open(code2) {\n if (code2 === 33) {\n effects.consume(code2);\n return declarationOpen;\n }\n if (code2 === 47) {\n effects.consume(code2);\n return tagCloseStart;\n }\n if (code2 === 63) {\n effects.consume(code2);\n return instruction;\n }\n if (asciiAlpha(code2)) {\n effects.consume(code2);\n return tagOpen;\n }\n return nok(code2);\n }\n function declarationOpen(code2) {\n if (code2 === 45) {\n effects.consume(code2);\n return commentOpen;\n }\n if (code2 === 91) {\n effects.consume(code2);\n buffer = \"CDATA[\";\n index2 = 0;\n return cdataOpen;\n }\n if (asciiAlpha(code2)) {\n effects.consume(code2);\n return declaration;\n }\n return nok(code2);\n }\n function commentOpen(code2) {\n if (code2 === 45) {\n effects.consume(code2);\n return commentStart;\n }\n return nok(code2);\n }\n function commentStart(code2) {\n if (code2 === null || code2 === 62) {\n return nok(code2);\n }\n if (code2 === 45) {\n effects.consume(code2);\n return commentStartDash;\n }\n return comment(code2);\n }\n function commentStartDash(code2) {\n if (code2 === null || code2 === 62) {\n return nok(code2);\n }\n return comment(code2);\n }\n function comment(code2) {\n if (code2 === null) {\n return nok(code2);\n }\n if (code2 === 45) {\n effects.consume(code2);\n return commentClose;\n }\n if (markdownLineEnding(code2)) {\n returnState = comment;\n return atLineEnding(code2);\n }\n effects.consume(code2);\n return comment;\n }\n function commentClose(code2) {\n if (code2 === 45) {\n effects.consume(code2);\n return end;\n }\n return comment(code2);\n }\n function cdataOpen(code2) {\n if (code2 === buffer.charCodeAt(index2++)) {\n effects.consume(code2);\n return index2 === buffer.length ? cdata : cdataOpen;\n }\n return nok(code2);\n }\n function cdata(code2) {\n if (code2 === null) {\n return nok(code2);\n }\n if (code2 === 93) {\n effects.consume(code2);\n return cdataClose;\n }\n if (markdownLineEnding(code2)) {\n returnState = cdata;\n return atLineEnding(code2);\n }\n effects.consume(code2);\n return cdata;\n }\n function cdataClose(code2) {\n if (code2 === 93) {\n effects.consume(code2);\n return cdataEnd;\n }\n return cdata(code2);\n }\n function cdataEnd(code2) {\n if (code2 === 62) {\n return end(code2);\n }\n if (code2 === 93) {\n effects.consume(code2);\n return cdataEnd;\n }\n return cdata(code2);\n }\n function declaration(code2) {\n if (code2 === null || code2 === 62) {\n return end(code2);\n }\n if (markdownLineEnding(code2)) {\n returnState = declaration;\n return atLineEnding(code2);\n }\n effects.consume(code2);\n return declaration;\n }\n function instruction(code2) {\n if (code2 === null) {\n return nok(code2);\n }\n if (code2 === 63) {\n effects.consume(code2);\n return instructionClose;\n }\n if (markdownLineEnding(code2)) {\n returnState = instruction;\n return atLineEnding(code2);\n }\n effects.consume(code2);\n return instruction;\n }\n function instructionClose(code2) {\n return code2 === 62 ? end(code2) : instruction(code2);\n }\n function tagCloseStart(code2) {\n if (asciiAlpha(code2)) {\n effects.consume(code2);\n return tagClose;\n }\n return nok(code2);\n }\n function tagClose(code2) {\n if (code2 === 45 || asciiAlphanumeric(code2)) {\n effects.consume(code2);\n return tagClose;\n }\n return tagCloseBetween(code2);\n }\n function tagCloseBetween(code2) {\n if (markdownLineEnding(code2)) {\n returnState = tagCloseBetween;\n return atLineEnding(code2);\n }\n if (markdownSpace(code2)) {\n effects.consume(code2);\n return tagCloseBetween;\n }\n return end(code2);\n }\n function tagOpen(code2) {\n if (code2 === 45 || asciiAlphanumeric(code2)) {\n effects.consume(code2);\n return tagOpen;\n }\n if (code2 === 47 || code2 === 62 || markdownLineEndingOrSpace(code2)) {\n return tagOpenBetween(code2);\n }\n return nok(code2);\n }\n function tagOpenBetween(code2) {\n if (code2 === 47) {\n effects.consume(code2);\n return end;\n }\n if (code2 === 58 || code2 === 95 || asciiAlpha(code2)) {\n effects.consume(code2);\n return tagOpenAttributeName;\n }\n if (markdownLineEnding(code2)) {\n returnState = tagOpenBetween;\n return atLineEnding(code2);\n }\n if (markdownSpace(code2)) {\n effects.consume(code2);\n return tagOpenBetween;\n }\n return end(code2);\n }\n function tagOpenAttributeName(code2) {\n if (code2 === 45 || code2 === 46 || code2 === 58 || code2 === 95 || asciiAlphanumeric(code2)) {\n effects.consume(code2);\n return tagOpenAttributeName;\n }\n return tagOpenAttributeNameAfter(code2);\n }\n function tagOpenAttributeNameAfter(code2) {\n if (code2 === 61) {\n effects.consume(code2);\n return tagOpenAttributeValueBefore;\n }\n if (markdownLineEnding(code2)) {\n returnState = tagOpenAttributeNameAfter;\n return atLineEnding(code2);\n }\n if (markdownSpace(code2)) {\n effects.consume(code2);\n return tagOpenAttributeNameAfter;\n }\n return tagOpenBetween(code2);\n }\n function tagOpenAttributeValueBefore(code2) {\n if (code2 === null || code2 === 60 || code2 === 61 || code2 === 62 || code2 === 96) {\n return nok(code2);\n }\n if (code2 === 34 || code2 === 39) {\n effects.consume(code2);\n marker = code2;\n return tagOpenAttributeValueQuoted;\n }\n if (markdownLineEnding(code2)) {\n returnState = tagOpenAttributeValueBefore;\n return atLineEnding(code2);\n }\n if (markdownSpace(code2)) {\n effects.consume(code2);\n return tagOpenAttributeValueBefore;\n }\n effects.consume(code2);\n marker = void 0;\n return tagOpenAttributeValueUnquoted;\n }\n function tagOpenAttributeValueQuoted(code2) {\n if (code2 === marker) {\n effects.consume(code2);\n return tagOpenAttributeValueQuotedAfter;\n }\n if (code2 === null) {\n return nok(code2);\n }\n if (markdownLineEnding(code2)) {\n returnState = tagOpenAttributeValueQuoted;\n return atLineEnding(code2);\n }\n effects.consume(code2);\n return tagOpenAttributeValueQuoted;\n }\n function tagOpenAttributeValueQuotedAfter(code2) {\n if (code2 === 62 || code2 === 47 || markdownLineEndingOrSpace(code2)) {\n return tagOpenBetween(code2);\n }\n return nok(code2);\n }\n function tagOpenAttributeValueUnquoted(code2) {\n if (code2 === null || code2 === 34 || code2 === 39 || code2 === 60 || code2 === 61 || code2 === 96) {\n return nok(code2);\n }\n if (code2 === 62 || markdownLineEndingOrSpace(code2)) {\n return tagOpenBetween(code2);\n }\n effects.consume(code2);\n return tagOpenAttributeValueUnquoted;\n }\n function atLineEnding(code2) {\n effects.exit(\"htmlTextData\");\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n return factorySpace(\n effects,\n afterPrefix,\n \"linePrefix\",\n self.parser.constructs.disable.null.includes(\"codeIndented\") ? void 0 : 4\n );\n }\n function afterPrefix(code2) {\n effects.enter(\"htmlTextData\");\n return returnState(code2);\n }\n function end(code2) {\n if (code2 === 62) {\n effects.consume(code2);\n effects.exit(\"htmlTextData\");\n effects.exit(\"htmlText\");\n return ok2;\n }\n return nok(code2);\n }\n}\nconst labelEnd = {\n name: \"labelEnd\",\n tokenize: tokenizeLabelEnd,\n resolveTo: resolveToLabelEnd,\n resolveAll: resolveAllLabelEnd\n};\nconst resourceConstruct = {\n tokenize: tokenizeResource\n};\nconst fullReferenceConstruct = {\n tokenize: tokenizeFullReference\n};\nconst collapsedReferenceConstruct = {\n tokenize: tokenizeCollapsedReference\n};\nfunction resolveAllLabelEnd(events) {\n let index2 = -1;\n let token;\n while (++index2 < events.length) {\n token = events[index2][1];\n if (token.type === \"labelImage\" || token.type === \"labelLink\" || token.type === \"labelEnd\") {\n events.splice(index2 + 1, token.type === \"labelImage\" ? 4 : 2);\n token.type = \"data\";\n index2++;\n }\n }\n return events;\n}\nfunction resolveToLabelEnd(events, context) {\n let index2 = events.length;\n let offset = 0;\n let token;\n let open;\n let close;\n let media;\n while (index2--) {\n token = events[index2][1];\n if (open) {\n if (token.type === \"link\" || token.type === \"labelLink\" && token._inactive) {\n break;\n }\n if (events[index2][0] === \"enter\" && token.type === \"labelLink\") {\n token._inactive = true;\n }\n } else if (close) {\n if (events[index2][0] === \"enter\" && (token.type === \"labelImage\" || token.type === \"labelLink\") && !token._balanced) {\n open = index2;\n if (token.type !== \"labelLink\") {\n offset = 2;\n break;\n }\n }\n } else if (token.type === \"labelEnd\") {\n close = index2;\n }\n }\n const group = {\n type: events[open][1].type === \"labelLink\" ? \"link\" : \"image\",\n start: Object.assign({}, events[open][1].start),\n end: Object.assign({}, events[events.length - 1][1].end)\n };\n const label = {\n type: \"label\",\n start: Object.assign({}, events[open][1].start),\n end: Object.assign({}, events[close][1].end)\n };\n const text2 = {\n type: \"labelText\",\n start: Object.assign({}, events[open + offset + 2][1].end),\n end: Object.assign({}, events[close - 2][1].start)\n };\n media = [\n [\"enter\", group, context],\n [\"enter\", label, context]\n ];\n media = push(media, events.slice(open + 1, open + offset + 3));\n media = push(media, [[\"enter\", text2, context]]);\n media = push(\n media,\n resolveAll(\n context.parser.constructs.insideSpan.null,\n events.slice(open + offset + 4, close - 3),\n context\n )\n );\n media = push(media, [\n [\"exit\", text2, context],\n events[close - 2],\n events[close - 1],\n [\"exit\", label, context]\n ]);\n media = push(media, events.slice(close + 1));\n media = push(media, [[\"exit\", group, context]]);\n splice(events, open, events.length, media);\n return events;\n}\nfunction tokenizeLabelEnd(effects, ok2, nok) {\n const self = this;\n let index2 = self.events.length;\n let labelStart;\n let defined;\n while (index2--) {\n if ((self.events[index2][1].type === \"labelImage\" || self.events[index2][1].type === \"labelLink\") && !self.events[index2][1]._balanced) {\n labelStart = self.events[index2][1];\n break;\n }\n }\n return start;\n function start(code2) {\n if (!labelStart) {\n return nok(code2);\n }\n if (labelStart._inactive)\n return balanced(code2);\n defined = self.parser.defined.includes(\n normalizeIdentifier(\n self.sliceSerialize({\n start: labelStart.end,\n end: self.now()\n })\n )\n );\n effects.enter(\"labelEnd\");\n effects.enter(\"labelMarker\");\n effects.consume(code2);\n effects.exit(\"labelMarker\");\n effects.exit(\"labelEnd\");\n return afterLabelEnd;\n }\n function afterLabelEnd(code2) {\n if (code2 === 40) {\n return effects.attempt(\n resourceConstruct,\n ok2,\n defined ? ok2 : balanced\n )(code2);\n }\n if (code2 === 91) {\n return effects.attempt(\n fullReferenceConstruct,\n ok2,\n defined ? effects.attempt(collapsedReferenceConstruct, ok2, balanced) : balanced\n )(code2);\n }\n return defined ? ok2(code2) : balanced(code2);\n }\n function balanced(code2) {\n labelStart._balanced = true;\n return nok(code2);\n }\n}\nfunction tokenizeResource(effects, ok2, nok) {\n return start;\n function start(code2) {\n effects.enter(\"resource\");\n effects.enter(\"resourceMarker\");\n effects.consume(code2);\n effects.exit(\"resourceMarker\");\n return factoryWhitespace(effects, open);\n }\n function open(code2) {\n if (code2 === 41) {\n return end(code2);\n }\n return factoryDestination(\n effects,\n destinationAfter,\n nok,\n \"resourceDestination\",\n \"resourceDestinationLiteral\",\n \"resourceDestinationLiteralMarker\",\n \"resourceDestinationRaw\",\n \"resourceDestinationString\",\n 32\n )(code2);\n }\n function destinationAfter(code2) {\n return markdownLineEndingOrSpace(code2) ? factoryWhitespace(effects, between)(code2) : end(code2);\n }\n function between(code2) {\n if (code2 === 34 || code2 === 39 || code2 === 40) {\n return factoryTitle(\n effects,\n factoryWhitespace(effects, end),\n nok,\n \"resourceTitle\",\n \"resourceTitleMarker\",\n \"resourceTitleString\"\n )(code2);\n }\n return end(code2);\n }\n function end(code2) {\n if (code2 === 41) {\n effects.enter(\"resourceMarker\");\n effects.consume(code2);\n effects.exit(\"resourceMarker\");\n effects.exit(\"resource\");\n return ok2;\n }\n return nok(code2);\n }\n}\nfunction tokenizeFullReference(effects, ok2, nok) {\n const self = this;\n return start;\n function start(code2) {\n return factoryLabel.call(\n self,\n effects,\n afterLabel,\n nok,\n \"reference\",\n \"referenceMarker\",\n \"referenceString\"\n )(code2);\n }\n function afterLabel(code2) {\n return self.parser.defined.includes(\n normalizeIdentifier(\n self.sliceSerialize(self.events[self.events.length - 1][1]).slice(1, -1)\n )\n ) ? ok2(code2) : nok(code2);\n }\n}\nfunction tokenizeCollapsedReference(effects, ok2, nok) {\n return start;\n function start(code2) {\n effects.enter(\"reference\");\n effects.enter(\"referenceMarker\");\n effects.consume(code2);\n effects.exit(\"referenceMarker\");\n return open;\n }\n function open(code2) {\n if (code2 === 93) {\n effects.enter(\"referenceMarker\");\n effects.consume(code2);\n effects.exit(\"referenceMarker\");\n effects.exit(\"reference\");\n return ok2;\n }\n return nok(code2);\n }\n}\nconst labelStartImage = {\n name: \"labelStartImage\",\n tokenize: tokenizeLabelStartImage,\n resolveAll: labelEnd.resolveAll\n};\nfunction tokenizeLabelStartImage(effects, ok2, nok) {\n const self = this;\n return start;\n function start(code2) {\n effects.enter(\"labelImage\");\n effects.enter(\"labelImageMarker\");\n effects.consume(code2);\n effects.exit(\"labelImageMarker\");\n return open;\n }\n function open(code2) {\n if (code2 === 91) {\n effects.enter(\"labelMarker\");\n effects.consume(code2);\n effects.exit(\"labelMarker\");\n effects.exit(\"labelImage\");\n return after;\n }\n return nok(code2);\n }\n function after(code2) {\n return code2 === 94 && \"_hiddenFootnoteSupport\" in self.parser.constructs ? nok(code2) : ok2(code2);\n }\n}\nconst labelStartLink = {\n name: \"labelStartLink\",\n tokenize: tokenizeLabelStartLink,\n resolveAll: labelEnd.resolveAll\n};\nfunction tokenizeLabelStartLink(effects, ok2, nok) {\n const self = this;\n return start;\n function start(code2) {\n effects.enter(\"labelLink\");\n effects.enter(\"labelMarker\");\n effects.consume(code2);\n effects.exit(\"labelMarker\");\n effects.exit(\"labelLink\");\n return after;\n }\n function after(code2) {\n return code2 === 94 && \"_hiddenFootnoteSupport\" in self.parser.constructs ? nok(code2) : ok2(code2);\n }\n}\nconst lineEnding = {\n name: \"lineEnding\",\n tokenize: tokenizeLineEnding\n};\nfunction tokenizeLineEnding(effects, ok2) {\n return start;\n function start(code2) {\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n return factorySpace(effects, ok2, \"linePrefix\");\n }\n}\nconst thematicBreak$1 = {\n name: \"thematicBreak\",\n tokenize: tokenizeThematicBreak\n};\nfunction tokenizeThematicBreak(effects, ok2, nok) {\n let size = 0;\n let marker;\n return start;\n function start(code2) {\n effects.enter(\"thematicBreak\");\n marker = code2;\n return atBreak(code2);\n }\n function atBreak(code2) {\n if (code2 === marker) {\n effects.enter(\"thematicBreakSequence\");\n return sequence(code2);\n }\n if (markdownSpace(code2)) {\n return factorySpace(effects, atBreak, \"whitespace\")(code2);\n }\n if (size < 3 || code2 !== null && !markdownLineEnding(code2)) {\n return nok(code2);\n }\n effects.exit(\"thematicBreak\");\n return ok2(code2);\n }\n function sequence(code2) {\n if (code2 === marker) {\n effects.consume(code2);\n size++;\n return sequence;\n }\n effects.exit(\"thematicBreakSequence\");\n return atBreak(code2);\n }\n}\nconst list$1 = {\n name: \"list\",\n tokenize: tokenizeListStart,\n continuation: {\n tokenize: tokenizeListContinuation\n },\n exit: tokenizeListEnd\n};\nconst listItemPrefixWhitespaceConstruct = {\n tokenize: tokenizeListItemPrefixWhitespace,\n partial: true\n};\nconst indentConstruct = {\n tokenize: tokenizeIndent,\n partial: true\n};\nfunction tokenizeListStart(effects, ok2, nok) {\n const self = this;\n const tail = self.events[self.events.length - 1];\n let initialSize = tail && tail[1].type === \"linePrefix\" ? tail[2].sliceSerialize(tail[1], true).length : 0;\n let size = 0;\n return start;\n function start(code2) {\n const kind = self.containerState.type || (code2 === 42 || code2 === 43 || code2 === 45 ? \"listUnordered\" : \"listOrdered\");\n if (kind === \"listUnordered\" ? !self.containerState.marker || code2 === self.containerState.marker : asciiDigit(code2)) {\n if (!self.containerState.type) {\n self.containerState.type = kind;\n effects.enter(kind, {\n _container: true\n });\n }\n if (kind === \"listUnordered\") {\n effects.enter(\"listItemPrefix\");\n return code2 === 42 || code2 === 45 ? effects.check(thematicBreak$1, nok, atMarker)(code2) : atMarker(code2);\n }\n if (!self.interrupt || code2 === 49) {\n effects.enter(\"listItemPrefix\");\n effects.enter(\"listItemValue\");\n return inside(code2);\n }\n }\n return nok(code2);\n }\n function inside(code2) {\n if (asciiDigit(code2) && ++size < 10) {\n effects.consume(code2);\n return inside;\n }\n if ((!self.interrupt || size < 2) && (self.containerState.marker ? code2 === self.containerState.marker : code2 === 41 || code2 === 46)) {\n effects.exit(\"listItemValue\");\n return atMarker(code2);\n }\n return nok(code2);\n }\n function atMarker(code2) {\n effects.enter(\"listItemMarker\");\n effects.consume(code2);\n effects.exit(\"listItemMarker\");\n self.containerState.marker = self.containerState.marker || code2;\n return effects.check(\n blankLine,\n self.interrupt ? nok : onBlank,\n effects.attempt(\n listItemPrefixWhitespaceConstruct,\n endOfPrefix,\n otherPrefix\n )\n );\n }\n function onBlank(code2) {\n self.containerState.initialBlankLine = true;\n initialSize++;\n return endOfPrefix(code2);\n }\n function otherPrefix(code2) {\n if (markdownSpace(code2)) {\n effects.enter(\"listItemPrefixWhitespace\");\n effects.consume(code2);\n effects.exit(\"listItemPrefixWhitespace\");\n return endOfPrefix;\n }\n return nok(code2);\n }\n function endOfPrefix(code2) {\n self.containerState.size = initialSize + self.sliceSerialize(effects.exit(\"listItemPrefix\"), true).length;\n return ok2(code2);\n }\n}\nfunction tokenizeListContinuation(effects, ok2, nok) {\n const self = this;\n self.containerState._closeFlow = void 0;\n return effects.check(blankLine, onBlank, notBlank);\n function onBlank(code2) {\n self.containerState.furtherBlankLines = self.containerState.furtherBlankLines || self.containerState.initialBlankLine;\n return factorySpace(\n effects,\n ok2,\n \"listItemIndent\",\n self.containerState.size + 1\n )(code2);\n }\n function notBlank(code2) {\n if (self.containerState.furtherBlankLines || !markdownSpace(code2)) {\n self.containerState.furtherBlankLines = void 0;\n self.containerState.initialBlankLine = void 0;\n return notInCurrentItem(code2);\n }\n self.containerState.furtherBlankLines = void 0;\n self.containerState.initialBlankLine = void 0;\n return effects.attempt(indentConstruct, ok2, notInCurrentItem)(code2);\n }\n function notInCurrentItem(code2) {\n self.containerState._closeFlow = true;\n self.interrupt = void 0;\n return factorySpace(\n effects,\n effects.attempt(list$1, ok2, nok),\n \"linePrefix\",\n self.parser.constructs.disable.null.includes(\"codeIndented\") ? void 0 : 4\n )(code2);\n }\n}\nfunction tokenizeIndent(effects, ok2, nok) {\n const self = this;\n return factorySpace(\n effects,\n afterPrefix,\n \"listItemIndent\",\n self.containerState.size + 1\n );\n function afterPrefix(code2) {\n const tail = self.events[self.events.length - 1];\n return tail && tail[1].type === \"listItemIndent\" && tail[2].sliceSerialize(tail[1], true).length === self.containerState.size ? ok2(code2) : nok(code2);\n }\n}\nfunction tokenizeListEnd(effects) {\n effects.exit(this.containerState.type);\n}\nfunction tokenizeListItemPrefixWhitespace(effects, ok2, nok) {\n const self = this;\n return factorySpace(\n effects,\n afterPrefix,\n \"listItemPrefixWhitespace\",\n self.parser.constructs.disable.null.includes(\"codeIndented\") ? void 0 : 4 + 1\n );\n function afterPrefix(code2) {\n const tail = self.events[self.events.length - 1];\n return !markdownSpace(code2) && tail && tail[1].type === \"listItemPrefixWhitespace\" ? ok2(code2) : nok(code2);\n }\n}\nconst setextUnderline = {\n name: \"setextUnderline\",\n tokenize: tokenizeSetextUnderline,\n resolveTo: resolveToSetextUnderline\n};\nfunction resolveToSetextUnderline(events, context) {\n let index2 = events.length;\n let content2;\n let text2;\n let definition2;\n while (index2--) {\n if (events[index2][0] === \"enter\") {\n if (events[index2][1].type === \"content\") {\n content2 = index2;\n break;\n }\n if (events[index2][1].type === \"paragraph\") {\n text2 = index2;\n }\n } else {\n if (events[index2][1].type === \"content\") {\n events.splice(index2, 1);\n }\n if (!definition2 && events[index2][1].type === \"definition\") {\n definition2 = index2;\n }\n }\n }\n const heading2 = {\n type: \"setextHeading\",\n start: Object.assign({}, events[text2][1].start),\n end: Object.assign({}, events[events.length - 1][1].end)\n };\n events[text2][1].type = \"setextHeadingText\";\n if (definition2) {\n events.splice(text2, 0, [\"enter\", heading2, context]);\n events.splice(definition2 + 1, 0, [\"exit\", events[content2][1], context]);\n events[content2][1].end = Object.assign({}, events[definition2][1].end);\n } else {\n events[content2][1] = heading2;\n }\n events.push([\"exit\", heading2, context]);\n return events;\n}\nfunction tokenizeSetextUnderline(effects, ok2, nok) {\n const self = this;\n let index2 = self.events.length;\n let marker;\n let paragraph2;\n while (index2--) {\n if (self.events[index2][1].type !== \"lineEnding\" && self.events[index2][1].type !== \"linePrefix\" && self.events[index2][1].type !== \"content\") {\n paragraph2 = self.events[index2][1].type === \"paragraph\";\n break;\n }\n }\n return start;\n function start(code2) {\n if (!self.parser.lazy[self.now().line] && (self.interrupt || paragraph2)) {\n effects.enter(\"setextHeadingLine\");\n effects.enter(\"setextHeadingLineSequence\");\n marker = code2;\n return closingSequence(code2);\n }\n return nok(code2);\n }\n function closingSequence(code2) {\n if (code2 === marker) {\n effects.consume(code2);\n return closingSequence;\n }\n effects.exit(\"setextHeadingLineSequence\");\n return factorySpace(effects, closingSequenceEnd, \"lineSuffix\")(code2);\n }\n function closingSequenceEnd(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n effects.exit(\"setextHeadingLine\");\n return ok2(code2);\n }\n return nok(code2);\n }\n}\nconst flow$1 = {\n tokenize: initializeFlow\n};\nfunction initializeFlow(effects) {\n const self = this;\n const initial = effects.attempt(\n blankLine,\n atBlankEnding,\n effects.attempt(\n this.parser.constructs.flowInitial,\n afterConstruct,\n factorySpace(\n effects,\n effects.attempt(\n this.parser.constructs.flow,\n afterConstruct,\n effects.attempt(content, afterConstruct)\n ),\n \"linePrefix\"\n )\n )\n );\n return initial;\n function atBlankEnding(code2) {\n if (code2 === null) {\n effects.consume(code2);\n return;\n }\n effects.enter(\"lineEndingBlank\");\n effects.consume(code2);\n effects.exit(\"lineEndingBlank\");\n self.currentConstruct = void 0;\n return initial;\n }\n function afterConstruct(code2) {\n if (code2 === null) {\n effects.consume(code2);\n return;\n }\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n self.currentConstruct = void 0;\n return initial;\n }\n}\nconst resolver = {\n resolveAll: createResolver()\n};\nconst string$1 = initializeFactory(\"string\");\nconst text$3 = initializeFactory(\"text\");\nfunction initializeFactory(field) {\n return {\n tokenize: initializeText,\n resolveAll: createResolver(\n field === \"text\" ? resolveAllLineSuffixes : void 0\n )\n };\n function initializeText(effects) {\n const self = this;\n const constructs2 = this.parser.constructs[field];\n const text2 = effects.attempt(constructs2, start, notText);\n return start;\n function start(code2) {\n return atBreak(code2) ? text2(code2) : notText(code2);\n }\n function notText(code2) {\n if (code2 === null) {\n effects.consume(code2);\n return;\n }\n effects.enter(\"data\");\n effects.consume(code2);\n return data;\n }\n function data(code2) {\n if (atBreak(code2)) {\n effects.exit(\"data\");\n return text2(code2);\n }\n effects.consume(code2);\n return data;\n }\n function atBreak(code2) {\n if (code2 === null) {\n return true;\n }\n const list2 = constructs2[code2];\n let index2 = -1;\n if (list2) {\n while (++index2 < list2.length) {\n const item = list2[index2];\n if (!item.previous || item.previous.call(self, self.previous)) {\n return true;\n }\n }\n }\n return false;\n }\n }\n}\nfunction createResolver(extraResolver) {\n return resolveAllText;\n function resolveAllText(events, context) {\n let index2 = -1;\n let enter;\n while (++index2 <= events.length) {\n if (enter === void 0) {\n if (events[index2] && events[index2][1].type === \"data\") {\n enter = index2;\n index2++;\n }\n } else if (!events[index2] || events[index2][1].type !== \"data\") {\n if (index2 !== enter + 2) {\n events[enter][1].end = events[index2 - 1][1].end;\n events.splice(enter + 2, index2 - enter - 2);\n index2 = enter + 2;\n }\n enter = void 0;\n }\n }\n return extraResolver ? extraResolver(events, context) : events;\n }\n}\nfunction resolveAllLineSuffixes(events, context) {\n let eventIndex = 0;\n while (++eventIndex <= events.length) {\n if ((eventIndex === events.length || events[eventIndex][1].type === \"lineEnding\") && events[eventIndex - 1][1].type === \"data\") {\n const data = events[eventIndex - 1][1];\n const chunks = context.sliceStream(data);\n let index2 = chunks.length;\n let bufferIndex = -1;\n let size = 0;\n let tabs;\n while (index2--) {\n const chunk = chunks[index2];\n if (typeof chunk === \"string\") {\n bufferIndex = chunk.length;\n while (chunk.charCodeAt(bufferIndex - 1) === 32) {\n size++;\n bufferIndex--;\n }\n if (bufferIndex)\n break;\n bufferIndex = -1;\n } else if (chunk === -2) {\n tabs = true;\n size++;\n } else if (chunk === -1)\n ;\n else {\n index2++;\n break;\n }\n }\n if (size) {\n const token = {\n type: eventIndex === events.length || tabs || size < 2 ? \"lineSuffix\" : \"hardBreakTrailing\",\n start: {\n line: data.end.line,\n column: data.end.column - size,\n offset: data.end.offset - size,\n _index: data.start._index + index2,\n _bufferIndex: index2 ? bufferIndex : data.start._bufferIndex + bufferIndex\n },\n end: Object.assign({}, data.end)\n };\n data.end = Object.assign({}, token.start);\n if (data.start.offset === data.end.offset) {\n Object.assign(data, token);\n } else {\n events.splice(\n eventIndex,\n 0,\n [\"enter\", token, context],\n [\"exit\", token, context]\n );\n eventIndex += 2;\n }\n }\n eventIndex++;\n }\n }\n return events;\n}\nfunction createTokenizer(parser, initialize, from) {\n let point2 = Object.assign(\n from ? Object.assign({}, from) : {\n line: 1,\n column: 1,\n offset: 0\n },\n {\n _index: 0,\n _bufferIndex: -1\n }\n );\n const columnStart = {};\n const resolveAllConstructs = [];\n let chunks = [];\n let stack = [];\n const effects = {\n consume,\n enter,\n exit: exit2,\n attempt: constructFactory(onsuccessfulconstruct),\n check: constructFactory(onsuccessfulcheck),\n interrupt: constructFactory(onsuccessfulcheck, {\n interrupt: true\n })\n };\n const context = {\n previous: null,\n code: null,\n containerState: {},\n events: [],\n parser,\n sliceStream,\n sliceSerialize,\n now,\n defineSkip,\n write\n };\n let state = initialize.tokenize.call(context, effects);\n if (initialize.resolveAll) {\n resolveAllConstructs.push(initialize);\n }\n return context;\n function write(slice) {\n chunks = push(chunks, slice);\n main();\n if (chunks[chunks.length - 1] !== null) {\n return [];\n }\n addResult(initialize, 0);\n context.events = resolveAll(resolveAllConstructs, context.events, context);\n return context.events;\n }\n function sliceSerialize(token, expandTabs) {\n return serializeChunks(sliceStream(token), expandTabs);\n }\n function sliceStream(token) {\n return sliceChunks(chunks, token);\n }\n function now() {\n return Object.assign({}, point2);\n }\n function defineSkip(value) {\n columnStart[value.line] = value.column;\n accountForPotentialSkip();\n }\n function main() {\n let chunkIndex;\n while (point2._index < chunks.length) {\n const chunk = chunks[point2._index];\n if (typeof chunk === \"string\") {\n chunkIndex = point2._index;\n if (point2._bufferIndex < 0) {\n point2._bufferIndex = 0;\n }\n while (point2._index === chunkIndex && point2._bufferIndex < chunk.length) {\n go(chunk.charCodeAt(point2._bufferIndex));\n }\n } else {\n go(chunk);\n }\n }\n }\n function go(code2) {\n state = state(code2);\n }\n function consume(code2) {\n if (markdownLineEnding(code2)) {\n point2.line++;\n point2.column = 1;\n point2.offset += code2 === -3 ? 2 : 1;\n accountForPotentialSkip();\n } else if (code2 !== -1) {\n point2.column++;\n point2.offset++;\n }\n if (point2._bufferIndex < 0) {\n point2._index++;\n } else {\n point2._bufferIndex++;\n if (point2._bufferIndex === chunks[point2._index].length) {\n point2._bufferIndex = -1;\n point2._index++;\n }\n }\n context.previous = code2;\n }\n function enter(type, fields) {\n const token = fields || {};\n token.type = type;\n token.start = now();\n context.events.push([\"enter\", token, context]);\n stack.push(token);\n return token;\n }\n function exit2(type) {\n const token = stack.pop();\n token.end = now();\n context.events.push([\"exit\", token, context]);\n return token;\n }\n function onsuccessfulconstruct(construct, info) {\n addResult(construct, info.from);\n }\n function onsuccessfulcheck(_, info) {\n info.restore();\n }\n function constructFactory(onreturn, fields) {\n return hook;\n function hook(constructs2, returnState, bogusState) {\n let listOfConstructs;\n let constructIndex;\n let currentConstruct;\n let info;\n return Array.isArray(constructs2) ? handleListOfConstructs(constructs2) : \"tokenize\" in constructs2 ? handleListOfConstructs([constructs2]) : handleMapOfConstructs(constructs2);\n function handleMapOfConstructs(map) {\n return start;\n function start(code2) {\n const def = code2 !== null && map[code2];\n const all2 = code2 !== null && map.null;\n const list2 = [\n ...Array.isArray(def) ? def : def ? [def] : [],\n ...Array.isArray(all2) ? all2 : all2 ? [all2] : []\n ];\n return handleListOfConstructs(list2)(code2);\n }\n }\n function handleListOfConstructs(list2) {\n listOfConstructs = list2;\n constructIndex = 0;\n if (list2.length === 0) {\n return bogusState;\n }\n return handleConstruct(list2[constructIndex]);\n }\n function handleConstruct(construct) {\n return start;\n function start(code2) {\n info = store();\n currentConstruct = construct;\n if (!construct.partial) {\n context.currentConstruct = construct;\n }\n if (construct.name && context.parser.constructs.disable.null.includes(construct.name)) {\n return nok();\n }\n return construct.tokenize.call(\n fields ? Object.assign(Object.create(context), fields) : context,\n effects,\n ok2,\n nok\n )(code2);\n }\n }\n function ok2(code2) {\n onreturn(currentConstruct, info);\n return returnState;\n }\n function nok(code2) {\n info.restore();\n if (++constructIndex < listOfConstructs.length) {\n return handleConstruct(listOfConstructs[constructIndex]);\n }\n return bogusState;\n }\n }\n }\n function addResult(construct, from2) {\n if (construct.resolveAll && !resolveAllConstructs.includes(construct)) {\n resolveAllConstructs.push(construct);\n }\n if (construct.resolve) {\n splice(\n context.events,\n from2,\n context.events.length - from2,\n construct.resolve(context.events.slice(from2), context)\n );\n }\n if (construct.resolveTo) {\n context.events = construct.resolveTo(context.events, context);\n }\n }\n function store() {\n const startPoint = now();\n const startPrevious = context.previous;\n const startCurrentConstruct = context.currentConstruct;\n const startEventsIndex = context.events.length;\n const startStack = Array.from(stack);\n return {\n restore,\n from: startEventsIndex\n };\n function restore() {\n point2 = startPoint;\n context.previous = startPrevious;\n context.currentConstruct = startCurrentConstruct;\n context.events.length = startEventsIndex;\n stack = startStack;\n accountForPotentialSkip();\n }\n }\n function accountForPotentialSkip() {\n if (point2.line in columnStart && point2.column < 2) {\n point2.column = columnStart[point2.line];\n point2.offset += columnStart[point2.line] - 1;\n }\n }\n}\nfunction sliceChunks(chunks, token) {\n const startIndex = token.start._index;\n const startBufferIndex = token.start._bufferIndex;\n const endIndex = token.end._index;\n const endBufferIndex = token.end._bufferIndex;\n let view;\n if (startIndex === endIndex) {\n view = [chunks[startIndex].slice(startBufferIndex, endBufferIndex)];\n } else {\n view = chunks.slice(startIndex, endIndex);\n if (startBufferIndex > -1) {\n view[0] = view[0].slice(startBufferIndex);\n }\n if (endBufferIndex > 0) {\n view.push(chunks[endIndex].slice(0, endBufferIndex));\n }\n }\n return view;\n}\nfunction serializeChunks(chunks, expandTabs) {\n let index2 = -1;\n const result = [];\n let atTab;\n while (++index2 < chunks.length) {\n const chunk = chunks[index2];\n let value;\n if (typeof chunk === \"string\") {\n value = chunk;\n } else\n switch (chunk) {\n case -5: {\n value = \"\\r\";\n break;\n }\n case -4: {\n value = \"\\n\";\n break;\n }\n case -3: {\n value = \"\\r\\n\";\n break;\n }\n case -2: {\n value = expandTabs ? \" \" : \"\t\";\n break;\n }\n case -1: {\n if (!expandTabs && atTab)\n continue;\n value = \" \";\n break;\n }\n default: {\n value = String.fromCharCode(chunk);\n }\n }\n atTab = chunk === -2;\n result.push(value);\n }\n return result.join(\"\");\n}\nconst document$1 = {\n [42]: list$1,\n [43]: list$1,\n [45]: list$1,\n [48]: list$1,\n [49]: list$1,\n [50]: list$1,\n [51]: list$1,\n [52]: list$1,\n [53]: list$1,\n [54]: list$1,\n [55]: list$1,\n [56]: list$1,\n [57]: list$1,\n [62]: blockQuote\n};\nconst contentInitial = {\n [91]: definition\n};\nconst flowInitial = {\n [-2]: codeIndented,\n [-1]: codeIndented,\n [32]: codeIndented\n};\nconst flow = {\n [35]: headingAtx,\n [42]: thematicBreak$1,\n [45]: [setextUnderline, thematicBreak$1],\n [60]: htmlFlow,\n [61]: setextUnderline,\n [95]: thematicBreak$1,\n [96]: codeFenced,\n [126]: codeFenced\n};\nconst string = {\n [38]: characterReference,\n [92]: characterEscape\n};\nconst text$2 = {\n [-5]: lineEnding,\n [-4]: lineEnding,\n [-3]: lineEnding,\n [33]: labelStartImage,\n [38]: characterReference,\n [42]: attention,\n [60]: [autolink, htmlText],\n [91]: labelStartLink,\n [92]: [hardBreakEscape, characterEscape],\n [93]: labelEnd,\n [95]: attention,\n [96]: codeText\n};\nconst insideSpan = {\n null: [attention, resolver]\n};\nconst attentionMarkers = {\n null: [42, 95]\n};\nconst disable = {\n null: []\n};\nconst defaultConstructs = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n __proto__: null,\n document: document$1,\n contentInitial,\n flowInitial,\n flow,\n string,\n text: text$2,\n insideSpan,\n attentionMarkers,\n disable\n}, Symbol.toStringTag, { value: \"Module\" }));\nfunction parse$2(options = {}) {\n const constructs2 = combineExtensions(\n [defaultConstructs].concat(options.extensions || [])\n );\n const parser = {\n defined: [],\n lazy: {},\n constructs: constructs2,\n content: create2(content$1),\n document: create2(document$2),\n flow: create2(flow$1),\n string: create2(string$1),\n text: create2(text$3)\n };\n return parser;\n function create2(initial) {\n return creator;\n function creator(from) {\n return createTokenizer(parser, initial, from);\n }\n }\n}\nconst search = /[\\0\\t\\n\\r]/g;\nfunction preprocess() {\n let column = 1;\n let buffer = \"\";\n let start = true;\n let atCarriageReturn;\n return preprocessor;\n function preprocessor(value, encoding, end) {\n const chunks = [];\n let match;\n let next;\n let startPosition;\n let endPosition;\n let code2;\n value = buffer + value.toString(encoding);\n startPosition = 0;\n buffer = \"\";\n if (start) {\n if (value.charCodeAt(0) === 65279) {\n startPosition++;\n }\n start = void 0;\n }\n while (startPosition < value.length) {\n search.lastIndex = startPosition;\n match = search.exec(value);\n endPosition = match && match.index !== void 0 ? match.index : value.length;\n code2 = value.charCodeAt(endPosition);\n if (!match) {\n buffer = value.slice(startPosition);\n break;\n }\n if (code2 === 10 && startPosition === endPosition && atCarriageReturn) {\n chunks.push(-3);\n atCarriageReturn = void 0;\n } else {\n if (atCarriageReturn) {\n chunks.push(-5);\n atCarriageReturn = void 0;\n }\n if (startPosition < endPosition) {\n chunks.push(value.slice(startPosition, endPosition));\n column += endPosition - startPosition;\n }\n switch (code2) {\n case 0: {\n chunks.push(65533);\n column++;\n break;\n }\n case 9: {\n next = Math.ceil(column / 4) * 4;\n chunks.push(-2);\n while (column++ < next)\n chunks.push(-1);\n break;\n }\n case 10: {\n chunks.push(-4);\n column = 1;\n break;\n }\n default: {\n atCarriageReturn = true;\n column = 1;\n }\n }\n }\n startPosition = endPosition + 1;\n }\n if (end) {\n if (atCarriageReturn)\n chunks.push(-5);\n if (buffer)\n chunks.push(buffer);\n chunks.push(null);\n }\n return chunks;\n }\n}\nfunction postprocess(events) {\n while (!subtokenize(events)) {\n }\n return events;\n}\nfunction decodeNumericCharacterReference(value, base2) {\n const code2 = Number.parseInt(value, base2);\n if (code2 < 9 || code2 === 11 || code2 > 13 && code2 < 32 || code2 > 126 && code2 < 160 || code2 > 55295 && code2 < 57344 || code2 > 64975 && code2 < 65008 || (code2 & 65535) === 65535 || (code2 & 65535) === 65534 || code2 > 1114111) {\n return \"\\uFFFD\";\n }\n return String.fromCharCode(code2);\n}\nconst characterEscapeOrReference = /\\\\([!-/:-@[-`{-~])|&(#(?:\\d{1,7}|x[\\da-f]{1,6})|[\\da-z]{1,31});/gi;\nfunction decodeString(value) {\n return value.replace(characterEscapeOrReference, decode);\n}\nfunction decode($0, $1, $2) {\n if ($1) {\n return $1;\n }\n const head = $2.charCodeAt(0);\n if (head === 35) {\n const head2 = $2.charCodeAt(1);\n const hex = head2 === 120 || head2 === 88;\n return decodeNumericCharacterReference($2.slice(hex ? 2 : 1), hex ? 16 : 10);\n }\n return decodeNamedCharacterReference($2) || $0;\n}\nconst own$6 = {}.hasOwnProperty;\nconst fromMarkdown = function(value, encoding, options) {\n if (typeof encoding !== \"string\") {\n options = encoding;\n encoding = void 0;\n }\n return compiler(options)(\n postprocess(\n parse$2(options).document().write(preprocess()(value, encoding, true))\n )\n );\n};\nfunction compiler(options = {}) {\n const config = configure(\n {\n transforms: [],\n canContainEols: [\n \"emphasis\",\n \"fragment\",\n \"heading\",\n \"paragraph\",\n \"strong\"\n ],\n enter: {\n autolink: opener(link2),\n autolinkProtocol: onenterdata,\n autolinkEmail: onenterdata,\n atxHeading: opener(heading2),\n blockQuote: opener(blockQuote2),\n characterEscape: onenterdata,\n characterReference: onenterdata,\n codeFenced: opener(codeFlow),\n codeFencedFenceInfo: buffer,\n codeFencedFenceMeta: buffer,\n codeIndented: opener(codeFlow, buffer),\n codeText: opener(codeText2, buffer),\n codeTextData: onenterdata,\n data: onenterdata,\n codeFlowValue: onenterdata,\n definition: opener(definition2),\n definitionDestinationString: buffer,\n definitionLabelString: buffer,\n definitionTitleString: buffer,\n emphasis: opener(emphasis2),\n hardBreakEscape: opener(hardBreak2),\n hardBreakTrailing: opener(hardBreak2),\n htmlFlow: opener(html2, buffer),\n htmlFlowData: onenterdata,\n htmlText: opener(html2, buffer),\n htmlTextData: onenterdata,\n image: opener(image2),\n label: buffer,\n link: opener(link2),\n listItem: opener(listItem2),\n listItemValue: onenterlistitemvalue,\n listOrdered: opener(list2, onenterlistordered),\n listUnordered: opener(list2),\n paragraph: opener(paragraph2),\n reference: onenterreference,\n referenceString: buffer,\n resourceDestinationString: buffer,\n resourceTitleString: buffer,\n setextHeading: opener(heading2),\n strong: opener(strong2),\n thematicBreak: opener(thematicBreak2)\n },\n exit: {\n atxHeading: closer(),\n atxHeadingSequence: onexitatxheadingsequence,\n autolink: closer(),\n autolinkEmail: onexitautolinkemail,\n autolinkProtocol: onexitautolinkprotocol,\n blockQuote: closer(),\n characterEscapeValue: onexitdata,\n characterReferenceMarkerHexadecimal: onexitcharacterreferencemarker,\n characterReferenceMarkerNumeric: onexitcharacterreferencemarker,\n characterReferenceValue: onexitcharacterreferencevalue,\n codeFenced: closer(onexitcodefenced),\n codeFencedFence: onexitcodefencedfence,\n codeFencedFenceInfo: onexitcodefencedfenceinfo,\n codeFencedFenceMeta: onexitcodefencedfencemeta,\n codeFlowValue: onexitdata,\n codeIndented: closer(onexitcodeindented),\n codeText: closer(onexitcodetext),\n codeTextData: onexitdata,\n data: onexitdata,\n definition: closer(),\n definitionDestinationString: onexitdefinitiondestinationstring,\n definitionLabelString: onexitdefinitionlabelstring,\n definitionTitleString: onexitdefinitiontitlestring,\n emphasis: closer(),\n hardBreakEscape: closer(onexithardbreak),\n hardBreakTrailing: closer(onexithardbreak),\n htmlFlow: closer(onexithtmlflow),\n htmlFlowData: onexitdata,\n htmlText: closer(onexithtmltext),\n htmlTextData: onexitdata,\n image: closer(onexitimage),\n label: onexitlabel,\n labelText: onexitlabeltext,\n lineEnding: onexitlineending,\n link: closer(onexitlink),\n listItem: closer(),\n listOrdered: closer(),\n listUnordered: closer(),\n paragraph: closer(),\n referenceString: onexitreferencestring,\n resourceDestinationString: onexitresourcedestinationstring,\n resourceTitleString: onexitresourcetitlestring,\n resource: onexitresource,\n setextHeading: closer(onexitsetextheading),\n setextHeadingLineSequence: onexitsetextheadinglinesequence,\n setextHeadingText: onexitsetextheadingtext,\n strong: closer(),\n thematicBreak: closer()\n }\n },\n options.mdastExtensions || []\n );\n const data = {};\n return compile;\n function compile(events) {\n let tree = {\n type: \"root\",\n children: []\n };\n const stack = [tree];\n const tokenStack = [];\n const listStack = [];\n const context = {\n stack,\n tokenStack,\n config,\n enter,\n exit: exit2,\n buffer,\n resume,\n setData,\n getData\n };\n let index2 = -1;\n while (++index2 < events.length) {\n if (events[index2][1].type === \"listOrdered\" || events[index2][1].type === \"listUnordered\") {\n if (events[index2][0] === \"enter\") {\n listStack.push(index2);\n } else {\n const tail = listStack.pop();\n index2 = prepareList(events, tail, index2);\n }\n }\n }\n index2 = -1;\n while (++index2 < events.length) {\n const handler = config[events[index2][0]];\n if (own$6.call(handler, events[index2][1].type)) {\n handler[events[index2][1].type].call(\n Object.assign(\n {\n sliceSerialize: events[index2][2].sliceSerialize\n },\n context\n ),\n events[index2][1]\n );\n }\n }\n if (tokenStack.length > 0) {\n const tail = tokenStack[tokenStack.length - 1];\n const handler = tail[1] || defaultOnError;\n handler.call(context, void 0, tail[0]);\n }\n tree.position = {\n start: point2(\n events.length > 0 ? events[0][1].start : {\n line: 1,\n column: 1,\n offset: 0\n }\n ),\n end: point2(\n events.length > 0 ? events[events.length - 2][1].end : {\n line: 1,\n column: 1,\n offset: 0\n }\n )\n };\n index2 = -1;\n while (++index2 < config.transforms.length) {\n tree = config.transforms[index2](tree) || tree;\n }\n return tree;\n }\n function prepareList(events, start, length) {\n let index2 = start - 1;\n let containerBalance = -1;\n let listSpread = false;\n let listItem3;\n let lineIndex;\n let firstBlankLineIndex;\n let atMarker;\n while (++index2 <= length) {\n const event = events[index2];\n if (event[1].type === \"listUnordered\" || event[1].type === \"listOrdered\" || event[1].type === \"blockQuote\") {\n if (event[0] === \"enter\") {\n containerBalance++;\n } else {\n containerBalance--;\n }\n atMarker = void 0;\n } else if (event[1].type === \"lineEndingBlank\") {\n if (event[0] === \"enter\") {\n if (listItem3 && !atMarker && !containerBalance && !firstBlankLineIndex) {\n firstBlankLineIndex = index2;\n }\n atMarker = void 0;\n }\n } else if (event[1].type === \"linePrefix\" || event[1].type === \"listItemValue\" || event[1].type === \"listItemMarker\" || event[1].type === \"listItemPrefix\" || event[1].type === \"listItemPrefixWhitespace\")\n ;\n else {\n atMarker = void 0;\n }\n if (!containerBalance && event[0] === \"enter\" && event[1].type === \"listItemPrefix\" || containerBalance === -1 && event[0] === \"exit\" && (event[1].type === \"listUnordered\" || event[1].type === \"listOrdered\")) {\n if (listItem3) {\n let tailIndex = index2;\n lineIndex = void 0;\n while (tailIndex--) {\n const tailEvent = events[tailIndex];\n if (tailEvent[1].type === \"lineEnding\" || tailEvent[1].type === \"lineEndingBlank\") {\n if (tailEvent[0] === \"exit\")\n continue;\n if (lineIndex) {\n events[lineIndex][1].type = \"lineEndingBlank\";\n listSpread = true;\n }\n tailEvent[1].type = \"lineEnding\";\n lineIndex = tailIndex;\n } else if (tailEvent[1].type === \"linePrefix\" || tailEvent[1].type === \"blockQuotePrefix\" || tailEvent[1].type === \"blockQuotePrefixWhitespace\" || tailEvent[1].type === \"blockQuoteMarker\" || tailEvent[1].type === \"listItemIndent\")\n ;\n else {\n break;\n }\n }\n if (firstBlankLineIndex && (!lineIndex || firstBlankLineIndex < lineIndex)) {\n listItem3._spread = true;\n }\n listItem3.end = Object.assign(\n {},\n lineIndex ? events[lineIndex][1].start : event[1].end\n );\n events.splice(lineIndex || index2, 0, [\"exit\", listItem3, event[2]]);\n index2++;\n length++;\n }\n if (event[1].type === \"listItemPrefix\") {\n listItem3 = {\n type: \"listItem\",\n _spread: false,\n start: Object.assign({}, event[1].start)\n };\n events.splice(index2, 0, [\"enter\", listItem3, event[2]]);\n index2++;\n length++;\n firstBlankLineIndex = void 0;\n atMarker = true;\n }\n }\n }\n events[start][1]._spread = listSpread;\n return length;\n }\n function setData(key, value) {\n data[key] = value;\n }\n function getData(key) {\n return data[key];\n }\n function point2(d) {\n return {\n line: d.line,\n column: d.column,\n offset: d.offset\n };\n }\n function opener(create2, and) {\n return open;\n function open(token) {\n enter.call(this, create2(token), token);\n if (and)\n and.call(this, token);\n }\n }\n function buffer() {\n this.stack.push({\n type: \"fragment\",\n children: []\n });\n }\n function enter(node, token, errorHandler) {\n const parent = this.stack[this.stack.length - 1];\n parent.children.push(node);\n this.stack.push(node);\n this.tokenStack.push([token, errorHandler]);\n node.position = {\n start: point2(token.start)\n };\n return node;\n }\n function closer(and) {\n return close;\n function close(token) {\n if (and)\n and.call(this, token);\n exit2.call(this, token);\n }\n }\n function exit2(token, onExitError) {\n const node = this.stack.pop();\n const open = this.tokenStack.pop();\n if (!open) {\n throw new Error(\n \"Cannot close `\" + token.type + \"` (\" + stringifyPosition({\n start: token.start,\n end: token.end\n }) + \"): it\\u2019s not open\"\n );\n } else if (open[0].type !== token.type) {\n if (onExitError) {\n onExitError.call(this, token, open[0]);\n } else {\n const handler = open[1] || defaultOnError;\n handler.call(this, token, open[0]);\n }\n }\n node.position.end = point2(token.end);\n return node;\n }\n function resume() {\n return toString(this.stack.pop());\n }\n function onenterlistordered() {\n setData(\"expectingFirstListItemValue\", true);\n }\n function onenterlistitemvalue(token) {\n if (getData(\"expectingFirstListItemValue\")) {\n const ancestor = this.stack[this.stack.length - 2];\n ancestor.start = Number.parseInt(this.sliceSerialize(token), 10);\n setData(\"expectingFirstListItemValue\");\n }\n }\n function onexitcodefencedfenceinfo() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.lang = data2;\n }\n function onexitcodefencedfencemeta() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.meta = data2;\n }\n function onexitcodefencedfence() {\n if (getData(\"flowCodeInside\"))\n return;\n this.buffer();\n setData(\"flowCodeInside\", true);\n }\n function onexitcodefenced() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.value = data2.replace(/^(\\r?\\n|\\r)|(\\r?\\n|\\r)$/g, \"\");\n setData(\"flowCodeInside\");\n }\n function onexitcodeindented() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.value = data2.replace(/(\\r?\\n|\\r)$/g, \"\");\n }\n function onexitdefinitionlabelstring(token) {\n const label = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.label = label;\n node.identifier = normalizeIdentifier(\n this.sliceSerialize(token)\n ).toLowerCase();\n }\n function onexitdefinitiontitlestring() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.title = data2;\n }\n function onexitdefinitiondestinationstring() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.url = data2;\n }\n function onexitatxheadingsequence(token) {\n const node = this.stack[this.stack.length - 1];\n if (!node.depth) {\n const depth = this.sliceSerialize(token).length;\n node.depth = depth;\n }\n }\n function onexitsetextheadingtext() {\n setData(\"setextHeadingSlurpLineEnding\", true);\n }\n function onexitsetextheadinglinesequence(token) {\n const node = this.stack[this.stack.length - 1];\n node.depth = this.sliceSerialize(token).charCodeAt(0) === 61 ? 1 : 2;\n }\n function onexitsetextheading() {\n setData(\"setextHeadingSlurpLineEnding\");\n }\n function onenterdata(token) {\n const parent = this.stack[this.stack.length - 1];\n let tail = parent.children[parent.children.length - 1];\n if (!tail || tail.type !== \"text\") {\n tail = text2();\n tail.position = {\n start: point2(token.start)\n };\n parent.children.push(tail);\n }\n this.stack.push(tail);\n }\n function onexitdata(token) {\n const tail = this.stack.pop();\n tail.value += this.sliceSerialize(token);\n tail.position.end = point2(token.end);\n }\n function onexitlineending(token) {\n const context = this.stack[this.stack.length - 1];\n if (getData(\"atHardBreak\")) {\n const tail = context.children[context.children.length - 1];\n tail.position.end = point2(token.end);\n setData(\"atHardBreak\");\n return;\n }\n if (!getData(\"setextHeadingSlurpLineEnding\") && config.canContainEols.includes(context.type)) {\n onenterdata.call(this, token);\n onexitdata.call(this, token);\n }\n }\n function onexithardbreak() {\n setData(\"atHardBreak\", true);\n }\n function onexithtmlflow() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.value = data2;\n }\n function onexithtmltext() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.value = data2;\n }\n function onexitcodetext() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.value = data2;\n }\n function onexitlink() {\n const context = this.stack[this.stack.length - 1];\n if (getData(\"inReference\")) {\n context.type += \"Reference\";\n context.referenceType = getData(\"referenceType\") || \"shortcut\";\n delete context.url;\n delete context.title;\n } else {\n delete context.identifier;\n delete context.label;\n }\n setData(\"referenceType\");\n }\n function onexitimage() {\n const context = this.stack[this.stack.length - 1];\n if (getData(\"inReference\")) {\n context.type += \"Reference\";\n context.referenceType = getData(\"referenceType\") || \"shortcut\";\n delete context.url;\n delete context.title;\n } else {\n delete context.identifier;\n delete context.label;\n }\n setData(\"referenceType\");\n }\n function onexitlabeltext(token) {\n const ancestor = this.stack[this.stack.length - 2];\n const string2 = this.sliceSerialize(token);\n ancestor.label = decodeString(string2);\n ancestor.identifier = normalizeIdentifier(string2).toLowerCase();\n }\n function onexitlabel() {\n const fragment = this.stack[this.stack.length - 1];\n const value = this.resume();\n const node = this.stack[this.stack.length - 1];\n setData(\"inReference\", true);\n if (node.type === \"link\") {\n node.children = fragment.children;\n } else {\n node.alt = value;\n }\n }\n function onexitresourcedestinationstring() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.url = data2;\n }\n function onexitresourcetitlestring() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.title = data2;\n }\n function onexitresource() {\n setData(\"inReference\");\n }\n function onenterreference() {\n setData(\"referenceType\", \"collapsed\");\n }\n function onexitreferencestring(token) {\n const label = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.label = label;\n node.identifier = normalizeIdentifier(\n this.sliceSerialize(token)\n ).toLowerCase();\n setData(\"referenceType\", \"full\");\n }\n function onexitcharacterreferencemarker(token) {\n setData(\"characterReferenceType\", token.type);\n }\n function onexitcharacterreferencevalue(token) {\n const data2 = this.sliceSerialize(token);\n const type = getData(\"characterReferenceType\");\n let value;\n if (type) {\n value = decodeNumericCharacterReference(\n data2,\n type === \"characterReferenceMarkerNumeric\" ? 10 : 16\n );\n setData(\"characterReferenceType\");\n } else {\n value = decodeNamedCharacterReference(data2);\n }\n const tail = this.stack.pop();\n tail.value += value;\n tail.position.end = point2(token.end);\n }\n function onexitautolinkprotocol(token) {\n onexitdata.call(this, token);\n const node = this.stack[this.stack.length - 1];\n node.url = this.sliceSerialize(token);\n }\n function onexitautolinkemail(token) {\n onexitdata.call(this, token);\n const node = this.stack[this.stack.length - 1];\n node.url = \"mailto:\" + this.sliceSerialize(token);\n }\n function blockQuote2() {\n return {\n type: \"blockquote\",\n children: []\n };\n }\n function codeFlow() {\n return {\n type: \"code\",\n lang: null,\n meta: null,\n value: \"\"\n };\n }\n function codeText2() {\n return {\n type: \"inlineCode\",\n value: \"\"\n };\n }\n function definition2() {\n return {\n type: \"definition\",\n identifier: \"\",\n label: null,\n title: null,\n url: \"\"\n };\n }\n function emphasis2() {\n return {\n type: \"emphasis\",\n children: []\n };\n }\n function heading2() {\n return {\n type: \"heading\",\n depth: void 0,\n children: []\n };\n }\n function hardBreak2() {\n return {\n type: \"break\"\n };\n }\n function html2() {\n return {\n type: \"html\",\n value: \"\"\n };\n }\n function image2() {\n return {\n type: \"image\",\n title: null,\n url: \"\",\n alt: null\n };\n }\n function link2() {\n return {\n type: \"link\",\n title: null,\n url: \"\",\n children: []\n };\n }\n function list2(token) {\n return {\n type: \"list\",\n ordered: token.type === \"listOrdered\",\n start: null,\n spread: token._spread,\n children: []\n };\n }\n function listItem2(token) {\n return {\n type: \"listItem\",\n spread: token._spread,\n checked: null,\n children: []\n };\n }\n function paragraph2() {\n return {\n type: \"paragraph\",\n children: []\n };\n }\n function strong2() {\n return {\n type: \"strong\",\n children: []\n };\n }\n function text2() {\n return {\n type: \"text\",\n value: \"\"\n };\n }\n function thematicBreak2() {\n return {\n type: \"thematicBreak\"\n };\n }\n}\nfunction configure(combined, extensions) {\n let index2 = -1;\n while (++index2 < extensions.length) {\n const value = extensions[index2];\n if (Array.isArray(value)) {\n configure(combined, value);\n } else {\n extension(combined, value);\n }\n }\n return combined;\n}\nfunction extension(combined, extension2) {\n let key;\n for (key in extension2) {\n if (own$6.call(extension2, key)) {\n const list2 = key === \"canContainEols\" || key === \"transforms\";\n const maybe = own$6.call(combined, key) ? combined[key] : void 0;\n const left = maybe || (combined[key] = list2 ? [] : {});\n const right = extension2[key];\n if (right) {\n if (list2) {\n combined[key] = [...left, ...right];\n } else {\n Object.assign(left, right);\n }\n }\n }\n }\n}\nfunction defaultOnError(left, right) {\n if (left) {\n throw new Error(\n \"Cannot close `\" + left.type + \"` (\" + stringifyPosition({\n start: left.start,\n end: left.end\n }) + \"): a different token (`\" + right.type + \"`, \" + stringifyPosition({\n start: right.start,\n end: right.end\n }) + \") is open\"\n );\n } else {\n throw new Error(\n \"Cannot close document, a token (`\" + right.type + \"`, \" + stringifyPosition({\n start: right.start,\n end: right.end\n }) + \") is still open\"\n );\n }\n}\nfunction remarkParse(options) {\n const parser = (doc) => {\n const settings = this.data(\"settings\");\n return fromMarkdown(\n doc,\n Object.assign({}, settings, options, {\n extensions: this.data(\"micromarkExtensions\") || [],\n mdastExtensions: this.data(\"fromMarkdownExtensions\") || []\n })\n );\n };\n Object.assign(this, { Parser: parser });\n}\nconst convert$2 = function(test) {\n if (test === void 0 || test === null) {\n return ok$1;\n }\n if (typeof test === \"string\") {\n return typeFactory$1(test);\n }\n if (typeof test === \"object\") {\n return Array.isArray(test) ? anyFactory$1(test) : propsFactory(test);\n }\n if (typeof test === \"function\") {\n return castFactory(test);\n }\n throw new Error(\"Expected function, string, or object as test\");\n};\nfunction anyFactory$1(tests) {\n const checks2 = [];\n let index2 = -1;\n while (++index2 < tests.length) {\n checks2[index2] = convert$2(tests[index2]);\n }\n return castFactory(any);\n function any(...parameters) {\n let index3 = -1;\n while (++index3 < checks2.length) {\n if (checks2[index3].call(this, ...parameters))\n return true;\n }\n return false;\n }\n}\nfunction propsFactory(check) {\n return castFactory(all2);\n function all2(node) {\n let key;\n for (key in check) {\n if (node[key] !== check[key])\n return false;\n }\n return true;\n }\n}\nfunction typeFactory$1(check) {\n return castFactory(type);\n function type(node) {\n return node && node.type === check;\n }\n}\nfunction castFactory(check) {\n return assertion;\n function assertion(...parameters) {\n return Boolean(check.call(this, ...parameters));\n }\n}\nfunction ok$1() {\n return true;\n}\nfunction color(d) {\n return d;\n}\nconst CONTINUE$2 = true;\nconst SKIP$2 = \"skip\";\nconst EXIT$2 = false;\nconst visitParents$2 = function(tree, test, visitor2, reverse) {\n if (typeof test === \"function\" && typeof visitor2 !== \"function\") {\n reverse = visitor2;\n visitor2 = test;\n test = null;\n }\n const is = convert$2(test);\n const step = reverse ? -1 : 1;\n factory2(tree, null, [])();\n function factory2(node, index2, parents) {\n const value = typeof node === \"object\" && node !== null ? node : {};\n let name;\n if (typeof value.type === \"string\") {\n name = typeof value.tagName === \"string\" ? value.tagName : typeof value.name === \"string\" ? value.name : void 0;\n Object.defineProperty(visit2, \"name\", {\n value: \"node (\" + color(value.type + (name ? \"<\" + name + \">\" : \"\")) + \")\"\n });\n }\n return visit2;\n function visit2() {\n let result = [];\n let subresult;\n let offset;\n let grandparents;\n if (!test || is(node, index2, parents[parents.length - 1] || null)) {\n result = toResult$1(visitor2(node, parents));\n if (result[0] === EXIT$2) {\n return result;\n }\n }\n if (node.children && result[0] !== SKIP$2) {\n offset = (reverse ? node.children.length : -1) + step;\n grandparents = parents.concat(node);\n while (offset > -1 && offset < node.children.length) {\n subresult = factory2(node.children[offset], offset, grandparents)();\n if (subresult[0] === EXIT$2) {\n return subresult;\n }\n offset = typeof subresult[1] === \"number\" ? subresult[1] : offset + step;\n }\n }\n return result;\n }\n }\n};\nfunction toResult$1(value) {\n if (Array.isArray(value)) {\n return value;\n }\n if (typeof value === \"number\") {\n return [CONTINUE$2, value];\n }\n return [value];\n}\nconst visit$2 = function(tree, test, visitor2, reverse) {\n if (typeof test === \"function\" && typeof visitor2 !== \"function\") {\n reverse = visitor2;\n visitor2 = test;\n test = null;\n }\n visitParents$2(tree, test, overload, reverse);\n function overload(node, parents) {\n const parent = parents[parents.length - 1];\n return visitor2(\n node,\n parent ? parent.children.indexOf(node) : null,\n parent\n );\n }\n};\nconst find$1 = /[\\t ]*(?:\\r?\\n|\\r)/g;\nfunction remarkBreaks() {\n return (tree) => {\n visit$2(tree, \"text\", (node, index2, parent) => {\n const result = [];\n let start = 0;\n find$1.lastIndex = 0;\n let match = find$1.exec(node.value);\n while (match) {\n const position2 = match.index;\n if (start !== position2) {\n result.push({ type: \"text\", value: node.value.slice(start, position2) });\n }\n result.push({ type: \"break\" });\n start = position2 + match[0].length;\n match = find$1.exec(node.value);\n }\n if (result.length > 0 && parent && typeof index2 === \"number\") {\n if (start < node.value.length) {\n result.push({ type: \"text\", value: node.value.slice(start) });\n }\n parent.children.splice(index2, 1, ...result);\n return index2 + result.length;\n }\n });\n };\n}\nvar u = function(type, props, value) {\n var node = { type: String(type) };\n if ((value === void 0 || value === null) && (typeof props === \"string\" || Array.isArray(props))) {\n value = props;\n } else {\n Object.assign(node, props);\n }\n if (Array.isArray(value)) {\n node.children = value;\n } else if (value !== void 0 && value !== null) {\n node.value = String(value);\n }\n return node;\n};\nconst own$5 = {}.hasOwnProperty;\nfunction unknown(h, node) {\n const data = node.data || {};\n if (\"value\" in node && !(own$5.call(data, \"hName\") || own$5.call(data, \"hProperties\") || own$5.call(data, \"hChildren\"))) {\n return h.augment(node, u(\"text\", node.value));\n }\n return h(node, \"div\", all(h, node));\n}\nfunction one(h, node, parent) {\n const type = node && node.type;\n let fn;\n if (!type) {\n throw new Error(\"Expected node, got `\" + node + \"`\");\n }\n if (own$5.call(h.handlers, type)) {\n fn = h.handlers[type];\n } else if (h.passThrough && h.passThrough.includes(type)) {\n fn = returnNode;\n } else {\n fn = h.unknownHandler;\n }\n return (typeof fn === \"function\" ? fn : unknown)(h, node, parent);\n}\nfunction returnNode(h, node) {\n return \"children\" in node ? { ...node, children: all(h, node) } : node;\n}\nfunction all(h, parent) {\n const values = [];\n if (\"children\" in parent) {\n const nodes = parent.children;\n let index2 = -1;\n while (++index2 < nodes.length) {\n const result = one(h, nodes[index2], parent);\n if (result) {\n if (index2 && nodes[index2 - 1].type === \"break\") {\n if (!Array.isArray(result) && result.type === \"text\") {\n result.value = result.value.replace(/^\\s+/, \"\");\n }\n if (!Array.isArray(result) && result.type === \"element\") {\n const head = result.children[0];\n if (head && head.type === \"text\") {\n head.value = head.value.replace(/^\\s+/, \"\");\n }\n }\n }\n if (Array.isArray(result)) {\n values.push(...result);\n } else {\n values.push(result);\n }\n }\n }\n }\n return values;\n}\nconst pointStart = point(\"start\");\nconst pointEnd = point(\"end\");\nfunction point(type) {\n return point2;\n function point2(node) {\n const point3 = node && node.position && node.position[type] || {};\n return {\n line: point3.line || null,\n column: point3.column || null,\n offset: point3.offset > -1 ? point3.offset : null\n };\n }\n}\nfunction generated(node) {\n return !node || !node.position || !node.position.start || !node.position.start.line || !node.position.start.column || !node.position.end || !node.position.end.line || !node.position.end.column;\n}\nconst own$4 = {}.hasOwnProperty;\nfunction definitions(node) {\n const cache = /* @__PURE__ */ Object.create(null);\n if (!node || !node.type) {\n throw new Error(\"mdast-util-definitions expected node\");\n }\n visit$2(node, \"definition\", (definition3) => {\n const id = clean(definition3.identifier);\n if (id && !own$4.call(cache, id)) {\n cache[id] = definition3;\n }\n });\n return definition2;\n function definition2(identifier) {\n const id = clean(identifier);\n return id && own$4.call(cache, id) ? cache[id] : null;\n }\n}\nfunction clean(value) {\n return String(value || \"\").toUpperCase();\n}\nconst characterReferences = { '\"': \"quot\", \"&\": \"amp\", \"<\": \"lt\", \">\": \"gt\" };\nfunction encode$1(value) {\n return value.replace(/[\"&<>]/g, replace);\n function replace(value2) {\n return \"&\" + characterReferences[value2] + \";\";\n }\n}\nfunction sanitizeUri(url, protocol) {\n const value = encode$1(normalizeUri(url || \"\"));\n if (!protocol) {\n return value;\n }\n const colon = value.indexOf(\":\");\n const questionMark = value.indexOf(\"?\");\n const numberSign = value.indexOf(\"#\");\n const slash = value.indexOf(\"/\");\n if (colon < 0 || slash > -1 && colon > slash || questionMark > -1 && colon > questionMark || numberSign > -1 && colon > numberSign || protocol.test(value.slice(0, colon))) {\n return value;\n }\n return \"\";\n}\nfunction normalizeUri(value) {\n const result = [];\n let index2 = -1;\n let start = 0;\n let skip = 0;\n while (++index2 < value.length) {\n const code2 = value.charCodeAt(index2);\n let replace = \"\";\n if (code2 === 37 && asciiAlphanumeric(value.charCodeAt(index2 + 1)) && asciiAlphanumeric(value.charCodeAt(index2 + 2))) {\n skip = 2;\n } else if (code2 < 128) {\n if (!/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(code2))) {\n replace = String.fromCharCode(code2);\n }\n } else if (code2 > 55295 && code2 < 57344) {\n const next = value.charCodeAt(index2 + 1);\n if (code2 < 56320 && next > 56319 && next < 57344) {\n replace = String.fromCharCode(code2, next);\n skip = 1;\n } else {\n replace = \"\\uFFFD\";\n }\n } else {\n replace = String.fromCharCode(code2);\n }\n if (replace) {\n result.push(value.slice(start, index2), encodeURIComponent(replace));\n start = index2 + skip + 1;\n replace = \"\";\n }\n if (skip) {\n index2 += skip;\n skip = 0;\n }\n }\n return result.join(\"\") + value.slice(start);\n}\nfunction wrap(nodes, loose) {\n const result = [];\n let index2 = -1;\n if (loose) {\n result.push(u(\"text\", \"\\n\"));\n }\n while (++index2 < nodes.length) {\n if (index2)\n result.push(u(\"text\", \"\\n\"));\n result.push(nodes[index2]);\n }\n if (loose && nodes.length > 0) {\n result.push(u(\"text\", \"\\n\"));\n }\n return result;\n}\nfunction footer(h) {\n let index2 = -1;\n const listItems = [];\n while (++index2 < h.footnoteOrder.length) {\n const def = h.footnoteById[h.footnoteOrder[index2].toUpperCase()];\n if (!def) {\n continue;\n }\n const content2 = all(h, def);\n const id = String(def.identifier);\n const safeId = sanitizeUri(id.toLowerCase());\n let referenceIndex = 0;\n const backReferences = [];\n while (++referenceIndex <= h.footnoteCounts[id]) {\n const backReference = {\n type: \"element\",\n tagName: \"a\",\n properties: {\n href: \"#\" + h.clobberPrefix + \"fnref-\" + safeId + (referenceIndex > 1 ? \"-\" + referenceIndex : \"\"),\n dataFootnoteBackref: true,\n className: [\"data-footnote-backref\"],\n ariaLabel: h.footnoteBackLabel\n },\n children: [{ type: \"text\", value: \"\\u21A9\" }]\n };\n if (referenceIndex > 1) {\n backReference.children.push({\n type: \"element\",\n tagName: \"sup\",\n children: [{ type: \"text\", value: String(referenceIndex) }]\n });\n }\n if (backReferences.length > 0) {\n backReferences.push({ type: \"text\", value: \" \" });\n }\n backReferences.push(backReference);\n }\n const tail = content2[content2.length - 1];\n if (tail && tail.type === \"element\" && tail.tagName === \"p\") {\n const tailTail = tail.children[tail.children.length - 1];\n if (tailTail && tailTail.type === \"text\") {\n tailTail.value += \" \";\n } else {\n tail.children.push({ type: \"text\", value: \" \" });\n }\n tail.children.push(...backReferences);\n } else {\n content2.push(...backReferences);\n }\n const listItem2 = {\n type: \"element\",\n tagName: \"li\",\n properties: { id: h.clobberPrefix + \"fn-\" + safeId },\n children: wrap(content2, true)\n };\n if (def.position) {\n listItem2.position = def.position;\n }\n listItems.push(listItem2);\n }\n if (listItems.length === 0) {\n return null;\n }\n return {\n type: \"element\",\n tagName: \"section\",\n properties: { dataFootnotes: true, className: [\"footnotes\"] },\n children: [\n {\n type: \"element\",\n tagName: h.footnoteLabelTagName,\n properties: JSON.parse(JSON.stringify(h.footnoteLabelProperties)),\n children: [u(\"text\", h.footnoteLabel)]\n },\n { type: \"text\", value: \"\\n\" },\n {\n type: \"element\",\n tagName: \"ol\",\n properties: {},\n children: wrap(listItems, true)\n },\n { type: \"text\", value: \"\\n\" }\n ]\n };\n}\nfunction blockquote(h, node) {\n return h(node, \"blockquote\", wrap(all(h, node), true));\n}\nfunction hardBreak(h, node) {\n return [h(node, \"br\"), u(\"text\", \"\\n\")];\n}\nfunction code(h, node) {\n const value = node.value ? node.value + \"\\n\" : \"\";\n const lang = node.lang && node.lang.match(/^[^ \\t]+(?=[ \\t]|$)/);\n const props = {};\n if (lang) {\n props.className = [\"language-\" + lang];\n }\n const code2 = h(node, \"code\", props, [u(\"text\", value)]);\n if (node.meta) {\n code2.data = { meta: node.meta };\n }\n return h(node.position, \"pre\", [code2]);\n}\nfunction strikethrough(h, node) {\n return h(node, \"del\", all(h, node));\n}\nfunction emphasis(h, node) {\n return h(node, \"em\", all(h, node));\n}\nfunction footnoteReference(h, node) {\n const id = String(node.identifier);\n const safeId = sanitizeUri(id.toLowerCase());\n const index2 = h.footnoteOrder.indexOf(id);\n let counter;\n if (index2 === -1) {\n h.footnoteOrder.push(id);\n h.footnoteCounts[id] = 1;\n counter = h.footnoteOrder.length;\n } else {\n h.footnoteCounts[id]++;\n counter = index2 + 1;\n }\n const reuseCounter = h.footnoteCounts[id];\n return h(node, \"sup\", [\n h(\n node.position,\n \"a\",\n {\n href: \"#\" + h.clobberPrefix + \"fn-\" + safeId,\n id: h.clobberPrefix + \"fnref-\" + safeId + (reuseCounter > 1 ? \"-\" + reuseCounter : \"\"),\n dataFootnoteRef: true,\n ariaDescribedBy: \"footnote-label\"\n },\n [u(\"text\", String(counter))]\n )\n ]);\n}\nfunction footnote(h, node) {\n const footnoteById = h.footnoteById;\n let no = 1;\n while (no in footnoteById)\n no++;\n const identifier = String(no);\n footnoteById[identifier] = {\n type: \"footnoteDefinition\",\n identifier,\n children: [{ type: \"paragraph\", children: node.children }],\n position: node.position\n };\n return footnoteReference(h, {\n type: \"footnoteReference\",\n identifier,\n position: node.position\n });\n}\nfunction heading(h, node) {\n return h(node, \"h\" + node.depth, all(h, node));\n}\nfunction html$2(h, node) {\n return h.dangerous ? h.augment(node, u(\"raw\", node.value)) : null;\n}\nvar encodeCache = {};\nfunction getEncodeCache(exclude) {\n var i, ch, cache = encodeCache[exclude];\n if (cache) {\n return cache;\n }\n cache = encodeCache[exclude] = [];\n for (i = 0; i < 128; i++) {\n ch = String.fromCharCode(i);\n if (/^[0-9a-z]$/i.test(ch)) {\n cache.push(ch);\n } else {\n cache.push(\"%\" + (\"0\" + i.toString(16).toUpperCase()).slice(-2));\n }\n }\n for (i = 0; i < exclude.length; i++) {\n cache[exclude.charCodeAt(i)] = exclude[i];\n }\n return cache;\n}\nfunction encode(string2, exclude, keepEscaped) {\n var i, l, code2, nextCode, cache, result = \"\";\n if (typeof exclude !== \"string\") {\n keepEscaped = exclude;\n exclude = encode.defaultChars;\n }\n if (typeof keepEscaped === \"undefined\") {\n keepEscaped = true;\n }\n cache = getEncodeCache(exclude);\n for (i = 0, l = string2.length; i < l; i++) {\n code2 = string2.charCodeAt(i);\n if (keepEscaped && code2 === 37 && i + 2 < l) {\n if (/^[0-9a-f]{2}$/i.test(string2.slice(i + 1, i + 3))) {\n result += string2.slice(i, i + 3);\n i += 2;\n continue;\n }\n }\n if (code2 < 128) {\n result += cache[code2];\n continue;\n }\n if (code2 >= 55296 && code2 <= 57343) {\n if (code2 >= 55296 && code2 <= 56319 && i + 1 < l) {\n nextCode = string2.charCodeAt(i + 1);\n if (nextCode >= 56320 && nextCode <= 57343) {\n result += encodeURIComponent(string2[i] + string2[i + 1]);\n i++;\n continue;\n }\n }\n result += \"%EF%BF%BD\";\n continue;\n }\n result += encodeURIComponent(string2[i]);\n }\n return result;\n}\nencode.defaultChars = \";/?:@&=+$,-_.!~*'()#\";\nencode.componentChars = \"-_.!~*'()\";\nvar encode_1 = encode;\nfunction revert(h, node) {\n const subtype = node.referenceType;\n let suffix = \"]\";\n if (subtype === \"collapsed\") {\n suffix += \"[]\";\n } else if (subtype === \"full\") {\n suffix += \"[\" + (node.label || node.identifier) + \"]\";\n }\n if (node.type === \"imageReference\") {\n return u(\"text\", \"![\" + node.alt + suffix);\n }\n const contents = all(h, node);\n const head = contents[0];\n if (head && head.type === \"text\") {\n head.value = \"[\" + head.value;\n } else {\n contents.unshift(u(\"text\", \"[\"));\n }\n const tail = contents[contents.length - 1];\n if (tail && tail.type === \"text\") {\n tail.value += suffix;\n } else {\n contents.push(u(\"text\", suffix));\n }\n return contents;\n}\nfunction imageReference(h, node) {\n const def = h.definition(node.identifier);\n if (!def) {\n return revert(h, node);\n }\n const props = { src: encode_1(def.url || \"\"), alt: node.alt };\n if (def.title !== null && def.title !== void 0) {\n props.title = def.title;\n }\n return h(node, \"img\", props);\n}\nfunction image(h, node) {\n const props = { src: encode_1(node.url), alt: node.alt };\n if (node.title !== null && node.title !== void 0) {\n props.title = node.title;\n }\n return h(node, \"img\", props);\n}\nfunction inlineCode(h, node) {\n return h(node, \"code\", [u(\"text\", node.value.replace(/\\r?\\n|\\r/g, \" \"))]);\n}\nfunction linkReference(h, node) {\n const def = h.definition(node.identifier);\n if (!def) {\n return revert(h, node);\n }\n const props = { href: encode_1(def.url || \"\") };\n if (def.title !== null && def.title !== void 0) {\n props.title = def.title;\n }\n return h(node, \"a\", props, all(h, node));\n}\nfunction link(h, node) {\n const props = { href: encode_1(node.url) };\n if (node.title !== null && node.title !== void 0) {\n props.title = node.title;\n }\n return h(node, \"a\", props, all(h, node));\n}\nfunction listItem(h, node, parent) {\n const result = all(h, node);\n const loose = parent ? listLoose(parent) : listItemLoose(node);\n const props = {};\n const wrapped = [];\n if (typeof node.checked === \"boolean\") {\n let paragraph2;\n if (result[0] && result[0].type === \"element\" && result[0].tagName === \"p\") {\n paragraph2 = result[0];\n } else {\n paragraph2 = h(null, \"p\", []);\n result.unshift(paragraph2);\n }\n if (paragraph2.children.length > 0) {\n paragraph2.children.unshift(u(\"text\", \" \"));\n }\n paragraph2.children.unshift(\n h(null, \"input\", {\n type: \"checkbox\",\n checked: node.checked,\n disabled: true\n })\n );\n props.className = [\"task-list-item\"];\n }\n let index2 = -1;\n while (++index2 < result.length) {\n const child = result[index2];\n if (loose || index2 !== 0 || child.type !== \"element\" || child.tagName !== \"p\") {\n wrapped.push(u(\"text\", \"\\n\"));\n }\n if (child.type === \"element\" && child.tagName === \"p\" && !loose) {\n wrapped.push(...child.children);\n } else {\n wrapped.push(child);\n }\n }\n const tail = result[result.length - 1];\n if (tail && (loose || !(\"tagName\" in tail) || tail.tagName !== \"p\")) {\n wrapped.push(u(\"text\", \"\\n\"));\n }\n return h(node, \"li\", props, wrapped);\n}\nfunction listLoose(node) {\n let loose = node.spread;\n const children = node.children;\n let index2 = -1;\n while (!loose && ++index2 < children.length) {\n loose = listItemLoose(children[index2]);\n }\n return Boolean(loose);\n}\nfunction listItemLoose(node) {\n const spread = node.spread;\n return spread === void 0 || spread === null ? node.children.length > 1 : spread;\n}\nfunction list(h, node) {\n const props = {};\n const name = node.ordered ? \"ol\" : \"ul\";\n const items = all(h, node);\n let index2 = -1;\n if (typeof node.start === \"number\" && node.start !== 1) {\n props.start = node.start;\n }\n while (++index2 < items.length) {\n const item = items[index2];\n if (item.type === \"element\" && item.tagName === \"li\" && item.properties && Array.isArray(item.properties.className) && item.properties.className.includes(\"task-list-item\")) {\n props.className = [\"contains-task-list\"];\n break;\n }\n }\n return h(node, name, props, wrap(items, true));\n}\nfunction paragraph(h, node) {\n return h(node, \"p\", all(h, node));\n}\nfunction root$1(h, node) {\n return h.augment(node, u(\"root\", wrap(all(h, node))));\n}\nfunction strong(h, node) {\n return h(node, \"strong\", all(h, node));\n}\nfunction table(h, node) {\n const rows = node.children;\n let index2 = -1;\n const align = node.align || [];\n const result = [];\n while (++index2 < rows.length) {\n const row = rows[index2].children;\n const name = index2 === 0 ? \"th\" : \"td\";\n const out = [];\n let cellIndex = -1;\n const length = node.align ? align.length : row.length;\n while (++cellIndex < length) {\n const cell = row[cellIndex];\n out.push(\n h(cell, name, { align: align[cellIndex] }, cell ? all(h, cell) : [])\n );\n }\n result[index2] = h(rows[index2], \"tr\", wrap(out, true));\n }\n return h(\n node,\n \"table\",\n wrap(\n [h(result[0].position, \"thead\", wrap([result[0]], true))].concat(\n result[1] ? h(\n {\n start: pointStart(result[1]),\n end: pointEnd(result[result.length - 1])\n },\n \"tbody\",\n wrap(result.slice(1), true)\n ) : []\n ),\n true\n )\n );\n}\nconst tab = 9;\nconst space = 32;\nfunction trimLines(value) {\n const source = String(value);\n const search2 = /\\r?\\n|\\r/g;\n let match = search2.exec(source);\n let last = 0;\n const lines = [];\n while (match) {\n lines.push(\n trimLine(source.slice(last, match.index), last > 0, true),\n match[0]\n );\n last = match.index + match[0].length;\n match = search2.exec(source);\n }\n lines.push(trimLine(source.slice(last), last > 0, false));\n return lines.join(\"\");\n}\nfunction trimLine(value, start, end) {\n let startIndex = 0;\n let endIndex = value.length;\n if (start) {\n let code2 = value.codePointAt(startIndex);\n while (code2 === tab || code2 === space) {\n startIndex++;\n code2 = value.codePointAt(startIndex);\n }\n }\n if (end) {\n let code2 = value.codePointAt(endIndex - 1);\n while (code2 === tab || code2 === space) {\n endIndex--;\n code2 = value.codePointAt(endIndex - 1);\n }\n }\n return endIndex > startIndex ? value.slice(startIndex, endIndex) : \"\";\n}\nfunction text$1(h, node) {\n return h.augment(node, u(\"text\", trimLines(String(node.value))));\n}\nfunction thematicBreak(h, node) {\n return h(node, \"hr\");\n}\nconst handlers = {\n blockquote,\n break: hardBreak,\n code,\n delete: strikethrough,\n emphasis,\n footnoteReference,\n footnote,\n heading,\n html: html$2,\n imageReference,\n image,\n inlineCode,\n linkReference,\n link,\n listItem,\n list,\n paragraph,\n root: root$1,\n strong,\n table,\n text: text$1,\n thematicBreak,\n toml: ignore,\n yaml: ignore,\n definition: ignore,\n footnoteDefinition: ignore\n};\nfunction ignore() {\n return null;\n}\nconst own$3 = {}.hasOwnProperty;\nfunction factory(tree, options) {\n const settings = options || {};\n const dangerous = settings.allowDangerousHtml || false;\n const footnoteById = {};\n h.dangerous = dangerous;\n h.clobberPrefix = settings.clobberPrefix === void 0 || settings.clobberPrefix === null ? \"user-content-\" : settings.clobberPrefix;\n h.footnoteLabel = settings.footnoteLabel || \"Footnotes\";\n h.footnoteLabelTagName = settings.footnoteLabelTagName || \"h2\";\n h.footnoteLabelProperties = settings.footnoteLabelProperties || {\n id: \"footnote-label\",\n className: [\"sr-only\"]\n };\n h.footnoteBackLabel = settings.footnoteBackLabel || \"Back to content\";\n h.definition = definitions(tree);\n h.footnoteById = footnoteById;\n h.footnoteOrder = [];\n h.footnoteCounts = {};\n h.augment = augment;\n h.handlers = { ...handlers, ...settings.handlers };\n h.unknownHandler = settings.unknownHandler;\n h.passThrough = settings.passThrough;\n visit$2(tree, \"footnoteDefinition\", (definition2) => {\n const id = String(definition2.identifier).toUpperCase();\n if (!own$3.call(footnoteById, id)) {\n footnoteById[id] = definition2;\n }\n });\n return h;\n function augment(left, right) {\n if (left && \"data\" in left && left.data) {\n const data = left.data;\n if (data.hName) {\n if (right.type !== \"element\") {\n right = {\n type: \"element\",\n tagName: \"\",\n properties: {},\n children: []\n };\n }\n right.tagName = data.hName;\n }\n if (right.type === \"element\" && data.hProperties) {\n right.properties = { ...right.properties, ...data.hProperties };\n }\n if (\"children\" in right && right.children && data.hChildren) {\n right.children = data.hChildren;\n }\n }\n if (left) {\n const ctx = \"type\" in left ? left : { position: left };\n if (!generated(ctx)) {\n right.position = { start: pointStart(ctx), end: pointEnd(ctx) };\n }\n }\n return right;\n }\n function h(node, tagName, props, children) {\n if (Array.isArray(props)) {\n children = props;\n props = {};\n }\n return augment(node, {\n type: \"element\",\n tagName,\n properties: props || {},\n children: children || []\n });\n }\n}\nfunction toHast(tree, options) {\n const h = factory(tree, options);\n const node = one(h, tree, null);\n const foot = footer(h);\n if (foot) {\n node.children.push(u(\"text\", \"\\n\"), foot);\n }\n return Array.isArray(node) ? { type: \"root\", children: node } : node;\n}\nconst remarkRehype = function(destination, options) {\n return destination && \"run\" in destination ? bridge(destination, options) : mutate(destination || options);\n};\nconst remark2rehype = remarkRehype;\nfunction bridge(destination, options) {\n return (node, file, next) => {\n destination.run(toHast(node, options), file, (error) => {\n next(error);\n });\n };\n}\nfunction mutate(options) {\n return (node) => toHast(node, options);\n}\nclass Schema {\n constructor(property, normal, space2) {\n this.property = property;\n this.normal = normal;\n if (space2) {\n this.space = space2;\n }\n }\n}\nSchema.prototype.property = {};\nSchema.prototype.normal = {};\nSchema.prototype.space = null;\nfunction merge(definitions2, space2) {\n const property = {};\n const normal = {};\n let index2 = -1;\n while (++index2 < definitions2.length) {\n Object.assign(property, definitions2[index2].property);\n Object.assign(normal, definitions2[index2].normal);\n }\n return new Schema(property, normal, space2);\n}\nfunction normalize(value) {\n return value.toLowerCase();\n}\nclass Info {\n constructor(property, attribute) {\n this.property = property;\n this.attribute = attribute;\n }\n}\nInfo.prototype.space = null;\nInfo.prototype.boolean = false;\nInfo.prototype.booleanish = false;\nInfo.prototype.overloadedBoolean = false;\nInfo.prototype.number = false;\nInfo.prototype.commaSeparated = false;\nInfo.prototype.spaceSeparated = false;\nInfo.prototype.commaOrSpaceSeparated = false;\nInfo.prototype.mustUseProperty = false;\nInfo.prototype.defined = false;\nlet powers = 0;\nconst boolean = increment();\nconst booleanish = increment();\nconst overloadedBoolean = increment();\nconst number = increment();\nconst spaceSeparated = increment();\nconst commaSeparated = increment();\nconst commaOrSpaceSeparated = increment();\nfunction increment() {\n return 2 ** ++powers;\n}\nconst types = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n __proto__: null,\n boolean,\n booleanish,\n overloadedBoolean,\n number,\n spaceSeparated,\n commaSeparated,\n commaOrSpaceSeparated\n}, Symbol.toStringTag, { value: \"Module\" }));\nconst checks = Object.keys(types);\nclass DefinedInfo extends Info {\n constructor(property, attribute, mask, space2) {\n let index2 = -1;\n super(property, attribute);\n mark(this, \"space\", space2);\n if (typeof mask === \"number\") {\n while (++index2 < checks.length) {\n const check = checks[index2];\n mark(this, checks[index2], (mask & types[check]) === types[check]);\n }\n }\n }\n}\nDefinedInfo.prototype.defined = true;\nfunction mark(values, key, value) {\n if (value) {\n values[key] = value;\n }\n}\nconst own$2 = {}.hasOwnProperty;\nfunction create(definition2) {\n const property = {};\n const normal = {};\n let prop;\n for (prop in definition2.properties) {\n if (own$2.call(definition2.properties, prop)) {\n const value = definition2.properties[prop];\n const info = new DefinedInfo(\n prop,\n definition2.transform(definition2.attributes || {}, prop),\n value,\n definition2.space\n );\n if (definition2.mustUseProperty && definition2.mustUseProperty.includes(prop)) {\n info.mustUseProperty = true;\n }\n property[prop] = info;\n normal[normalize(prop)] = prop;\n normal[normalize(info.attribute)] = prop;\n }\n }\n return new Schema(property, normal, definition2.space);\n}\nconst xlink = create({\n space: \"xlink\",\n transform(_, prop) {\n return \"xlink:\" + prop.slice(5).toLowerCase();\n },\n properties: {\n xLinkActuate: null,\n xLinkArcRole: null,\n xLinkHref: null,\n xLinkRole: null,\n xLinkShow: null,\n xLinkTitle: null,\n xLinkType: null\n }\n});\nconst xml = create({\n space: \"xml\",\n transform(_, prop) {\n return \"xml:\" + prop.slice(3).toLowerCase();\n },\n properties: { xmlLang: null, xmlBase: null, xmlSpace: null }\n});\nfunction caseSensitiveTransform(attributes, attribute) {\n return attribute in attributes ? attributes[attribute] : attribute;\n}\nfunction caseInsensitiveTransform(attributes, property) {\n return caseSensitiveTransform(attributes, property.toLowerCase());\n}\nconst xmlns = create({\n space: \"xmlns\",\n attributes: { xmlnsxlink: \"xmlns:xlink\" },\n transform: caseInsensitiveTransform,\n properties: { xmlns: null, xmlnsXLink: null }\n});\nconst aria = create({\n transform(_, prop) {\n return prop === \"role\" ? prop : \"aria-\" + prop.slice(4).toLowerCase();\n },\n properties: {\n ariaActiveDescendant: null,\n ariaAtomic: booleanish,\n ariaAutoComplete: null,\n ariaBusy: booleanish,\n ariaChecked: booleanish,\n ariaColCount: number,\n ariaColIndex: number,\n ariaColSpan: number,\n ariaControls: spaceSeparated,\n ariaCurrent: null,\n ariaDescribedBy: spaceSeparated,\n ariaDetails: null,\n ariaDisabled: booleanish,\n ariaDropEffect: spaceSeparated,\n ariaErrorMessage: null,\n ariaExpanded: booleanish,\n ariaFlowTo: spaceSeparated,\n ariaGrabbed: booleanish,\n ariaHasPopup: null,\n ariaHidden: booleanish,\n ariaInvalid: null,\n ariaKeyShortcuts: null,\n ariaLabel: null,\n ariaLabelledBy: spaceSeparated,\n ariaLevel: number,\n ariaLive: null,\n ariaModal: booleanish,\n ariaMultiLine: booleanish,\n ariaMultiSelectable: booleanish,\n ariaOrientation: null,\n ariaOwns: spaceSeparated,\n ariaPlaceholder: null,\n ariaPosInSet: number,\n ariaPressed: booleanish,\n ariaReadOnly: booleanish,\n ariaRelevant: null,\n ariaRequired: booleanish,\n ariaRoleDescription: spaceSeparated,\n ariaRowCount: number,\n ariaRowIndex: number,\n ariaRowSpan: number,\n ariaSelected: booleanish,\n ariaSetSize: number,\n ariaSort: null,\n ariaValueMax: number,\n ariaValueMin: number,\n ariaValueNow: number,\n ariaValueText: null,\n role: null\n }\n});\nconst html$1 = create({\n space: \"html\",\n attributes: {\n acceptcharset: \"accept-charset\",\n classname: \"class\",\n htmlfor: \"for\",\n httpequiv: \"http-equiv\"\n },\n transform: caseInsensitiveTransform,\n mustUseProperty: [\"checked\", \"multiple\", \"muted\", \"selected\"],\n properties: {\n abbr: null,\n accept: commaSeparated,\n acceptCharset: spaceSeparated,\n accessKey: spaceSeparated,\n action: null,\n allow: null,\n allowFullScreen: boolean,\n allowPaymentRequest: boolean,\n allowUserMedia: boolean,\n alt: null,\n as: null,\n async: boolean,\n autoCapitalize: null,\n autoComplete: spaceSeparated,\n autoFocus: boolean,\n autoPlay: boolean,\n capture: boolean,\n charSet: null,\n checked: boolean,\n cite: null,\n className: spaceSeparated,\n cols: number,\n colSpan: null,\n content: null,\n contentEditable: booleanish,\n controls: boolean,\n controlsList: spaceSeparated,\n coords: number | commaSeparated,\n crossOrigin: null,\n data: null,\n dateTime: null,\n decoding: null,\n default: boolean,\n defer: boolean,\n dir: null,\n dirName: null,\n disabled: boolean,\n download: overloadedBoolean,\n draggable: booleanish,\n encType: null,\n enterKeyHint: null,\n form: null,\n formAction: null,\n formEncType: null,\n formMethod: null,\n formNoValidate: boolean,\n formTarget: null,\n headers: spaceSeparated,\n height: number,\n hidden: boolean,\n high: number,\n href: null,\n hrefLang: null,\n htmlFor: spaceSeparated,\n httpEquiv: spaceSeparated,\n id: null,\n imageSizes: null,\n imageSrcSet: null,\n inputMode: null,\n integrity: null,\n is: null,\n isMap: boolean,\n itemId: null,\n itemProp: spaceSeparated,\n itemRef: spaceSeparated,\n itemScope: boolean,\n itemType: spaceSeparated,\n kind: null,\n label: null,\n lang: null,\n language: null,\n list: null,\n loading: null,\n loop: boolean,\n low: number,\n manifest: null,\n max: null,\n maxLength: number,\n media: null,\n method: null,\n min: null,\n minLength: number,\n multiple: boolean,\n muted: boolean,\n name: null,\n nonce: null,\n noModule: boolean,\n noValidate: boolean,\n onAbort: null,\n onAfterPrint: null,\n onAuxClick: null,\n onBeforePrint: null,\n onBeforeUnload: null,\n onBlur: null,\n onCancel: null,\n onCanPlay: null,\n onCanPlayThrough: null,\n onChange: null,\n onClick: null,\n onClose: null,\n onContextLost: null,\n onContextMenu: null,\n onContextRestored: null,\n onCopy: null,\n onCueChange: null,\n onCut: null,\n onDblClick: null,\n onDrag: null,\n onDragEnd: null,\n onDragEnter: null,\n onDragExit: null,\n onDragLeave: null,\n onDragOver: null,\n onDragStart: null,\n onDrop: null,\n onDurationChange: null,\n onEmptied: null,\n onEnded: null,\n onError: null,\n onFocus: null,\n onFormData: null,\n onHashChange: null,\n onInput: null,\n onInvalid: null,\n onKeyDown: null,\n onKeyPress: null,\n onKeyUp: null,\n onLanguageChange: null,\n onLoad: null,\n onLoadedData: null,\n onLoadedMetadata: null,\n onLoadEnd: null,\n onLoadStart: null,\n onMessage: null,\n onMessageError: null,\n onMouseDown: null,\n onMouseEnter: null,\n onMouseLeave: null,\n onMouseMove: null,\n onMouseOut: null,\n onMouseOver: null,\n onMouseUp: null,\n onOffline: null,\n onOnline: null,\n onPageHide: null,\n onPageShow: null,\n onPaste: null,\n onPause: null,\n onPlay: null,\n onPlaying: null,\n onPopState: null,\n onProgress: null,\n onRateChange: null,\n onRejectionHandled: null,\n onReset: null,\n onResize: null,\n onScroll: null,\n onSecurityPolicyViolation: null,\n onSeeked: null,\n onSeeking: null,\n onSelect: null,\n onSlotChange: null,\n onStalled: null,\n onStorage: null,\n onSubmit: null,\n onSuspend: null,\n onTimeUpdate: null,\n onToggle: null,\n onUnhandledRejection: null,\n onUnload: null,\n onVolumeChange: null,\n onWaiting: null,\n onWheel: null,\n open: boolean,\n optimum: number,\n pattern: null,\n ping: spaceSeparated,\n placeholder: null,\n playsInline: boolean,\n poster: null,\n preload: null,\n readOnly: boolean,\n referrerPolicy: null,\n rel: spaceSeparated,\n required: boolean,\n reversed: boolean,\n rows: number,\n rowSpan: number,\n sandbox: spaceSeparated,\n scope: null,\n scoped: boolean,\n seamless: boolean,\n selected: boolean,\n shape: null,\n size: number,\n sizes: null,\n slot: null,\n span: number,\n spellCheck: booleanish,\n src: null,\n srcDoc: null,\n srcLang: null,\n srcSet: null,\n start: number,\n step: null,\n style: null,\n tabIndex: number,\n target: null,\n title: null,\n translate: null,\n type: null,\n typeMustMatch: boolean,\n useMap: null,\n value: booleanish,\n width: number,\n wrap: null,\n align: null,\n aLink: null,\n archive: spaceSeparated,\n axis: null,\n background: null,\n bgColor: null,\n border: number,\n borderColor: null,\n bottomMargin: number,\n cellPadding: null,\n cellSpacing: null,\n char: null,\n charOff: null,\n classId: null,\n clear: null,\n code: null,\n codeBase: null,\n codeType: null,\n color: null,\n compact: boolean,\n declare: boolean,\n event: null,\n face: null,\n frame: null,\n frameBorder: null,\n hSpace: number,\n leftMargin: number,\n link: null,\n longDesc: null,\n lowSrc: null,\n marginHeight: number,\n marginWidth: number,\n noResize: boolean,\n noHref: boolean,\n noShade: boolean,\n noWrap: boolean,\n object: null,\n profile: null,\n prompt: null,\n rev: null,\n rightMargin: number,\n rules: null,\n scheme: null,\n scrolling: booleanish,\n standby: null,\n summary: null,\n text: null,\n topMargin: number,\n valueType: null,\n version: null,\n vAlign: null,\n vLink: null,\n vSpace: number,\n allowTransparency: null,\n autoCorrect: null,\n autoSave: null,\n disablePictureInPicture: boolean,\n disableRemotePlayback: boolean,\n prefix: null,\n property: null,\n results: number,\n security: null,\n unselectable: null\n }\n});\nconst svg$1 = create({\n space: \"svg\",\n attributes: {\n accentHeight: \"accent-height\",\n alignmentBaseline: \"alignment-baseline\",\n arabicForm: \"arabic-form\",\n baselineShift: \"baseline-shift\",\n capHeight: \"cap-height\",\n className: \"class\",\n clipPath: \"clip-path\",\n clipRule: \"clip-rule\",\n colorInterpolation: \"color-interpolation\",\n colorInterpolationFilters: \"color-interpolation-filters\",\n colorProfile: \"color-profile\",\n colorRendering: \"color-rendering\",\n crossOrigin: \"crossorigin\",\n dataType: \"datatype\",\n dominantBaseline: \"dominant-baseline\",\n enableBackground: \"enable-background\",\n fillOpacity: \"fill-opacity\",\n fillRule: \"fill-rule\",\n floodColor: \"flood-color\",\n floodOpacity: \"flood-opacity\",\n fontFamily: \"font-family\",\n fontSize: \"font-size\",\n fontSizeAdjust: \"font-size-adjust\",\n fontStretch: \"font-stretch\",\n fontStyle: \"font-style\",\n fontVariant: \"font-variant\",\n fontWeight: \"font-weight\",\n glyphName: \"glyph-name\",\n glyphOrientationHorizontal: \"glyph-orientation-horizontal\",\n glyphOrientationVertical: \"glyph-orientation-vertical\",\n hrefLang: \"hreflang\",\n horizAdvX: \"horiz-adv-x\",\n horizOriginX: \"horiz-origin-x\",\n horizOriginY: \"horiz-origin-y\",\n imageRendering: \"image-rendering\",\n letterSpacing: \"letter-spacing\",\n lightingColor: \"lighting-color\",\n markerEnd: \"marker-end\",\n markerMid: \"marker-mid\",\n markerStart: \"marker-start\",\n navDown: \"nav-down\",\n navDownLeft: \"nav-down-left\",\n navDownRight: \"nav-down-right\",\n navLeft: \"nav-left\",\n navNext: \"nav-next\",\n navPrev: \"nav-prev\",\n navRight: \"nav-right\",\n navUp: \"nav-up\",\n navUpLeft: \"nav-up-left\",\n navUpRight: \"nav-up-right\",\n onAbort: \"onabort\",\n onActivate: \"onactivate\",\n onAfterPrint: \"onafterprint\",\n onBeforePrint: \"onbeforeprint\",\n onBegin: \"onbegin\",\n onCancel: \"oncancel\",\n onCanPlay: \"oncanplay\",\n onCanPlayThrough: \"oncanplaythrough\",\n onChange: \"onchange\",\n onClick: \"onclick\",\n onClose: \"onclose\",\n onCopy: \"oncopy\",\n onCueChange: \"oncuechange\",\n onCut: \"oncut\",\n onDblClick: \"ondblclick\",\n onDrag: \"ondrag\",\n onDragEnd: \"ondragend\",\n onDragEnter: \"ondragenter\",\n onDragExit: \"ondragexit\",\n onDragLeave: \"ondragleave\",\n onDragOver: \"ondragover\",\n onDragStart: \"ondragstart\",\n onDrop: \"ondrop\",\n onDurationChange: \"ondurationchange\",\n onEmptied: \"onemptied\",\n onEnd: \"onend\",\n onEnded: \"onended\",\n onError: \"onerror\",\n onFocus: \"onfocus\",\n onFocusIn: \"onfocusin\",\n onFocusOut: \"onfocusout\",\n onHashChange: \"onhashchange\",\n onInput: \"oninput\",\n onInvalid: \"oninvalid\",\n onKeyDown: \"onkeydown\",\n onKeyPress: \"onkeypress\",\n onKeyUp: \"onkeyup\",\n onLoad: \"onload\",\n onLoadedData: \"onloadeddata\",\n onLoadedMetadata: \"onloadedmetadata\",\n onLoadStart: \"onloadstart\",\n onMessage: \"onmessage\",\n onMouseDown: \"onmousedown\",\n onMouseEnter: \"onmouseenter\",\n onMouseLeave: \"onmouseleave\",\n onMouseMove: \"onmousemove\",\n onMouseOut: \"onmouseout\",\n onMouseOver: \"onmouseover\",\n onMouseUp: \"onmouseup\",\n onMouseWheel: \"onmousewheel\",\n onOffline: \"onoffline\",\n onOnline: \"ononline\",\n onPageHide: \"onpagehide\",\n onPageShow: \"onpageshow\",\n onPaste: \"onpaste\",\n onPause: \"onpause\",\n onPlay: \"onplay\",\n onPlaying: \"onplaying\",\n onPopState: \"onpopstate\",\n onProgress: \"onprogress\",\n onRateChange: \"onratechange\",\n onRepeat: \"onrepeat\",\n onReset: \"onreset\",\n onResize: \"onresize\",\n onScroll: \"onscroll\",\n onSeeked: \"onseeked\",\n onSeeking: \"onseeking\",\n onSelect: \"onselect\",\n onShow: \"onshow\",\n onStalled: \"onstalled\",\n onStorage: \"onstorage\",\n onSubmit: \"onsubmit\",\n onSuspend: \"onsuspend\",\n onTimeUpdate: \"ontimeupdate\",\n onToggle: \"ontoggle\",\n onUnload: \"onunload\",\n onVolumeChange: \"onvolumechange\",\n onWaiting: \"onwaiting\",\n onZoom: \"onzoom\",\n overlinePosition: \"overline-position\",\n overlineThickness: \"overline-thickness\",\n paintOrder: \"paint-order\",\n panose1: \"panose-1\",\n pointerEvents: \"pointer-events\",\n referrerPolicy: \"referrerpolicy\",\n renderingIntent: \"rendering-intent\",\n shapeRendering: \"shape-rendering\",\n stopColor: \"stop-color\",\n stopOpacity: \"stop-opacity\",\n strikethroughPosition: \"strikethrough-position\",\n strikethroughThickness: \"strikethrough-thickness\",\n strokeDashArray: \"stroke-dasharray\",\n strokeDashOffset: \"stroke-dashoffset\",\n strokeLineCap: \"stroke-linecap\",\n strokeLineJoin: \"stroke-linejoin\",\n strokeMiterLimit: \"stroke-miterlimit\",\n strokeOpacity: \"stroke-opacity\",\n strokeWidth: \"stroke-width\",\n tabIndex: \"tabindex\",\n textAnchor: \"text-anchor\",\n textDecoration: \"text-decoration\",\n textRendering: \"text-rendering\",\n typeOf: \"typeof\",\n underlinePosition: \"underline-position\",\n underlineThickness: \"underline-thickness\",\n unicodeBidi: \"unicode-bidi\",\n unicodeRange: \"unicode-range\",\n unitsPerEm: \"units-per-em\",\n vAlphabetic: \"v-alphabetic\",\n vHanging: \"v-hanging\",\n vIdeographic: \"v-ideographic\",\n vMathematical: \"v-mathematical\",\n vectorEffect: \"vector-effect\",\n vertAdvY: \"vert-adv-y\",\n vertOriginX: \"vert-origin-x\",\n vertOriginY: \"vert-origin-y\",\n wordSpacing: \"word-spacing\",\n writingMode: \"writing-mode\",\n xHeight: \"x-height\",\n playbackOrder: \"playbackorder\",\n timelineBegin: \"timelinebegin\"\n },\n transform: caseSensitiveTransform,\n properties: {\n about: commaOrSpaceSeparated,\n accentHeight: number,\n accumulate: null,\n additive: null,\n alignmentBaseline: null,\n alphabetic: number,\n amplitude: number,\n arabicForm: null,\n ascent: number,\n attributeName: null,\n attributeType: null,\n azimuth: number,\n bandwidth: null,\n baselineShift: null,\n baseFrequency: null,\n baseProfile: null,\n bbox: null,\n begin: null,\n bias: number,\n by: null,\n calcMode: null,\n capHeight: number,\n className: spaceSeparated,\n clip: null,\n clipPath: null,\n clipPathUnits: null,\n clipRule: null,\n color: null,\n colorInterpolation: null,\n colorInterpolationFilters: null,\n colorProfile: null,\n colorRendering: null,\n content: null,\n contentScriptType: null,\n contentStyleType: null,\n crossOrigin: null,\n cursor: null,\n cx: null,\n cy: null,\n d: null,\n dataType: null,\n defaultAction: null,\n descent: number,\n diffuseConstant: number,\n direction: null,\n display: null,\n dur: null,\n divisor: number,\n dominantBaseline: null,\n download: boolean,\n dx: null,\n dy: null,\n edgeMode: null,\n editable: null,\n elevation: number,\n enableBackground: null,\n end: null,\n event: null,\n exponent: number,\n externalResourcesRequired: null,\n fill: null,\n fillOpacity: number,\n fillRule: null,\n filter: null,\n filterRes: null,\n filterUnits: null,\n floodColor: null,\n floodOpacity: null,\n focusable: null,\n focusHighlight: null,\n fontFamily: null,\n fontSize: null,\n fontSizeAdjust: null,\n fontStretch: null,\n fontStyle: null,\n fontVariant: null,\n fontWeight: null,\n format: null,\n fr: null,\n from: null,\n fx: null,\n fy: null,\n g1: commaSeparated,\n g2: commaSeparated,\n glyphName: commaSeparated,\n glyphOrientationHorizontal: null,\n glyphOrientationVertical: null,\n glyphRef: null,\n gradientTransform: null,\n gradientUnits: null,\n handler: null,\n hanging: number,\n hatchContentUnits: null,\n hatchUnits: null,\n height: null,\n href: null,\n hrefLang: null,\n horizAdvX: number,\n horizOriginX: number,\n horizOriginY: number,\n id: null,\n ideographic: number,\n imageRendering: null,\n initialVisibility: null,\n in: null,\n in2: null,\n intercept: number,\n k: number,\n k1: number,\n k2: number,\n k3: number,\n k4: number,\n kernelMatrix: commaOrSpaceSeparated,\n kernelUnitLength: null,\n keyPoints: null,\n keySplines: null,\n keyTimes: null,\n kerning: null,\n lang: null,\n lengthAdjust: null,\n letterSpacing: null,\n lightingColor: null,\n limitingConeAngle: number,\n local: null,\n markerEnd: null,\n markerMid: null,\n markerStart: null,\n markerHeight: null,\n markerUnits: null,\n markerWidth: null,\n mask: null,\n maskContentUnits: null,\n maskUnits: null,\n mathematical: null,\n max: null,\n media: null,\n mediaCharacterEncoding: null,\n mediaContentEncodings: null,\n mediaSize: number,\n mediaTime: null,\n method: null,\n min: null,\n mode: null,\n name: null,\n navDown: null,\n navDownLeft: null,\n navDownRight: null,\n navLeft: null,\n navNext: null,\n navPrev: null,\n navRight: null,\n navUp: null,\n navUpLeft: null,\n navUpRight: null,\n numOctaves: null,\n observer: null,\n offset: null,\n onAbort: null,\n onActivate: null,\n onAfterPrint: null,\n onBeforePrint: null,\n onBegin: null,\n onCancel: null,\n onCanPlay: null,\n onCanPlayThrough: null,\n onChange: null,\n onClick: null,\n onClose: null,\n onCopy: null,\n onCueChange: null,\n onCut: null,\n onDblClick: null,\n onDrag: null,\n onDragEnd: null,\n onDragEnter: null,\n onDragExit: null,\n onDragLeave: null,\n onDragOver: null,\n onDragStart: null,\n onDrop: null,\n onDurationChange: null,\n onEmptied: null,\n onEnd: null,\n onEnded: null,\n onError: null,\n onFocus: null,\n onFocusIn: null,\n onFocusOut: null,\n onHashChange: null,\n onInput: null,\n onInvalid: null,\n onKeyDown: null,\n onKeyPress: null,\n onKeyUp: null,\n onLoad: null,\n onLoadedData: null,\n onLoadedMetadata: null,\n onLoadStart: null,\n onMessage: null,\n onMouseDown: null,\n onMouseEnter: null,\n onMouseLeave: null,\n onMouseMove: null,\n onMouseOut: null,\n onMouseOver: null,\n onMouseUp: null,\n onMouseWheel: null,\n onOffline: null,\n onOnline: null,\n onPageHide: null,\n onPageShow: null,\n onPaste: null,\n onPause: null,\n onPlay: null,\n onPlaying: null,\n onPopState: null,\n onProgress: null,\n onRateChange: null,\n onRepeat: null,\n onReset: null,\n onResize: null,\n onScroll: null,\n onSeeked: null,\n onSeeking: null,\n onSelect: null,\n onShow: null,\n onStalled: null,\n onStorage: null,\n onSubmit: null,\n onSuspend: null,\n onTimeUpdate: null,\n onToggle: null,\n onUnload: null,\n onVolumeChange: null,\n onWaiting: null,\n onZoom: null,\n opacity: null,\n operator: null,\n order: null,\n orient: null,\n orientation: null,\n origin: null,\n overflow: null,\n overlay: null,\n overlinePosition: number,\n overlineThickness: number,\n paintOrder: null,\n panose1: null,\n path: null,\n pathLength: number,\n patternContentUnits: null,\n patternTransform: null,\n patternUnits: null,\n phase: null,\n ping: spaceSeparated,\n pitch: null,\n playbackOrder: null,\n pointerEvents: null,\n points: null,\n pointsAtX: number,\n pointsAtY: number,\n pointsAtZ: number,\n preserveAlpha: null,\n preserveAspectRatio: null,\n primitiveUnits: null,\n propagate: null,\n property: commaOrSpaceSeparated,\n r: null,\n radius: null,\n referrerPolicy: null,\n refX: null,\n refY: null,\n rel: commaOrSpaceSeparated,\n rev: commaOrSpaceSeparated,\n renderingIntent: null,\n repeatCount: null,\n repeatDur: null,\n requiredExtensions: commaOrSpaceSeparated,\n requiredFeatures: commaOrSpaceSeparated,\n requiredFonts: commaOrSpaceSeparated,\n requiredFormats: commaOrSpaceSeparated,\n resource: null,\n restart: null,\n result: null,\n rotate: null,\n rx: null,\n ry: null,\n scale: null,\n seed: null,\n shapeRendering: null,\n side: null,\n slope: null,\n snapshotTime: null,\n specularConstant: number,\n specularExponent: number,\n spreadMethod: null,\n spacing: null,\n startOffset: null,\n stdDeviation: null,\n stemh: null,\n stemv: null,\n stitchTiles: null,\n stopColor: null,\n stopOpacity: null,\n strikethroughPosition: number,\n strikethroughThickness: number,\n string: null,\n stroke: null,\n strokeDashArray: commaOrSpaceSeparated,\n strokeDashOffset: null,\n strokeLineCap: null,\n strokeLineJoin: null,\n strokeMiterLimit: number,\n strokeOpacity: number,\n strokeWidth: null,\n style: null,\n surfaceScale: number,\n syncBehavior: null,\n syncBehaviorDefault: null,\n syncMaster: null,\n syncTolerance: null,\n syncToleranceDefault: null,\n systemLanguage: commaOrSpaceSeparated,\n tabIndex: number,\n tableValues: null,\n target: null,\n targetX: number,\n targetY: number,\n textAnchor: null,\n textDecoration: null,\n textRendering: null,\n textLength: null,\n timelineBegin: null,\n title: null,\n transformBehavior: null,\n type: null,\n typeOf: commaOrSpaceSeparated,\n to: null,\n transform: null,\n u1: null,\n u2: null,\n underlinePosition: number,\n underlineThickness: number,\n unicode: null,\n unicodeBidi: null,\n unicodeRange: null,\n unitsPerEm: number,\n values: null,\n vAlphabetic: number,\n vMathematical: number,\n vectorEffect: null,\n vHanging: number,\n vIdeographic: number,\n version: null,\n vertAdvY: number,\n vertOriginX: number,\n vertOriginY: number,\n viewBox: null,\n viewTarget: null,\n visibility: null,\n width: null,\n widths: null,\n wordSpacing: null,\n writingMode: null,\n x: null,\n x1: null,\n x2: null,\n xChannelSelector: null,\n xHeight: number,\n y: null,\n y1: null,\n y2: null,\n yChannelSelector: null,\n z: null,\n zoomAndPan: null\n }\n});\nconst valid = /^data[-\\w.:]+$/i;\nconst dash = /-[a-z]/g;\nconst cap = /[A-Z]/g;\nfunction find(schema, value) {\n const normal = normalize(value);\n let prop = value;\n let Type = Info;\n if (normal in schema.normal) {\n return schema.property[schema.normal[normal]];\n }\n if (normal.length > 4 && normal.slice(0, 4) === \"data\" && valid.test(value)) {\n if (value.charAt(4) === \"-\") {\n const rest = value.slice(5).replace(dash, camelcase);\n prop = \"data\" + rest.charAt(0).toUpperCase() + rest.slice(1);\n } else {\n const rest = value.slice(4);\n if (!dash.test(rest)) {\n let dashes = rest.replace(cap, kebab);\n if (dashes.charAt(0) !== \"-\") {\n dashes = \"-\" + dashes;\n }\n value = \"data\" + dashes;\n }\n }\n Type = DefinedInfo;\n }\n return new Type(prop, value);\n}\nfunction kebab($0) {\n return \"-\" + $0.toLowerCase();\n}\nfunction camelcase($0) {\n return $0.charAt(1).toUpperCase();\n}\nconst hastToReact = {\n classId: \"classID\",\n dataType: \"datatype\",\n itemId: \"itemID\",\n strokeDashArray: \"strokeDasharray\",\n strokeDashOffset: \"strokeDashoffset\",\n strokeLineCap: \"strokeLinecap\",\n strokeLineJoin: \"strokeLinejoin\",\n strokeMiterLimit: \"strokeMiterlimit\",\n typeOf: \"typeof\",\n xLinkActuate: \"xlinkActuate\",\n xLinkArcRole: \"xlinkArcrole\",\n xLinkHref: \"xlinkHref\",\n xLinkRole: \"xlinkRole\",\n xLinkShow: \"xlinkShow\",\n xLinkTitle: \"xlinkTitle\",\n xLinkType: \"xlinkType\",\n xmlnsXLink: \"xmlnsXlink\"\n};\nconst html = merge([xml, xlink, xmlns, aria, html$1], \"html\");\nconst svg = merge([xml, xlink, xmlns, aria, svg$1], \"svg\");\nfunction stringify$1(values) {\n return values.join(\" \").trim();\n}\nfunction stringify(values, options) {\n var settings = options || {};\n if (values[values.length - 1] === \"\") {\n values = values.concat(\"\");\n }\n return values.join(\n (settings.padRight ? \" \" : \"\") + \",\" + (settings.padLeft === false ? \"\" : \" \")\n ).trim();\n}\nvar COMMENT_REGEX = /\\/\\*[^*]*\\*+([^/*][^*]*\\*+)*\\//g;\nvar NEWLINE_REGEX = /\\n/g;\nvar WHITESPACE_REGEX = /^\\s*/;\nvar PROPERTY_REGEX = /^(\\*?[-#/*\\\\\\w]+(\\[[0-9a-z_-]+\\])?)\\s*/;\nvar COLON_REGEX = /^:\\s*/;\nvar VALUE_REGEX = /^((?:'(?:\\\\'|.)*?'|\"(?:\\\\\"|.)*?\"|\\([^)]*?\\)|[^};])+)/;\nvar SEMICOLON_REGEX = /^[;\\s]*/;\nvar TRIM_REGEX = /^\\s+|\\s+$/g;\nvar NEWLINE = \"\\n\";\nvar FORWARD_SLASH = \"/\";\nvar ASTERISK = \"*\";\nvar EMPTY_STRING = \"\";\nvar TYPE_COMMENT = \"comment\";\nvar TYPE_DECLARATION = \"declaration\";\nvar inlineStyleParser = function(style, options) {\n if (typeof style !== \"string\") {\n throw new TypeError(\"First argument must be a string\");\n }\n if (!style)\n return [];\n options = options || {};\n var lineno = 1;\n var column = 1;\n function updatePosition(str) {\n var lines = str.match(NEWLINE_REGEX);\n if (lines)\n lineno += lines.length;\n var i = str.lastIndexOf(NEWLINE);\n column = ~i ? str.length - i : column + str.length;\n }\n function position2() {\n var start = { line: lineno, column };\n return function(node) {\n node.position = new Position(start);\n whitespace2();\n return node;\n };\n }\n function Position(start) {\n this.start = start;\n this.end = { line: lineno, column };\n this.source = options.source;\n }\n Position.prototype.content = style;\n function error(msg) {\n var err = new Error(\n options.source + \":\" + lineno + \":\" + column + \": \" + msg\n );\n err.reason = msg;\n err.filename = options.source;\n err.line = lineno;\n err.column = column;\n err.source = style;\n if (options.silent)\n ;\n else {\n throw err;\n }\n }\n function match(re) {\n var m = re.exec(style);\n if (!m)\n return;\n var str = m[0];\n updatePosition(str);\n style = style.slice(str.length);\n return m;\n }\n function whitespace2() {\n match(WHITESPACE_REGEX);\n }\n function comments(rules) {\n var c;\n rules = rules || [];\n while (c = comment()) {\n if (c !== false) {\n rules.push(c);\n }\n }\n return rules;\n }\n function comment() {\n var pos = position2();\n if (FORWARD_SLASH != style.charAt(0) || ASTERISK != style.charAt(1))\n return;\n var i = 2;\n while (EMPTY_STRING != style.charAt(i) && (ASTERISK != style.charAt(i) || FORWARD_SLASH != style.charAt(i + 1))) {\n ++i;\n }\n i += 2;\n if (EMPTY_STRING === style.charAt(i - 1)) {\n return error(\"End of comment missing\");\n }\n var str = style.slice(2, i - 2);\n column += 2;\n updatePosition(str);\n style = style.slice(i);\n column += 2;\n return pos({\n type: TYPE_COMMENT,\n comment: str\n });\n }\n function declaration() {\n var pos = position2();\n var prop = match(PROPERTY_REGEX);\n if (!prop)\n return;\n comment();\n if (!match(COLON_REGEX))\n return error(\"property missing ':'\");\n var val = match(VALUE_REGEX);\n var ret = pos({\n type: TYPE_DECLARATION,\n property: trim(prop[0].replace(COMMENT_REGEX, EMPTY_STRING)),\n value: val ? trim(val[0].replace(COMMENT_REGEX, EMPTY_STRING)) : EMPTY_STRING\n });\n match(SEMICOLON_REGEX);\n return ret;\n }\n function declarations() {\n var decls = [];\n comments(decls);\n var decl;\n while (decl = declaration()) {\n if (decl !== false) {\n decls.push(decl);\n comments(decls);\n }\n }\n return decls;\n }\n whitespace2();\n return declarations();\n};\nfunction trim(str) {\n return str ? str.replace(TRIM_REGEX, EMPTY_STRING) : EMPTY_STRING;\n}\nvar parse$1 = inlineStyleParser;\nfunction StyleToObject(style, iterator) {\n var output = null;\n if (!style || typeof style !== \"string\") {\n return output;\n }\n var declaration;\n var declarations = parse$1(style);\n var hasIterator = typeof iterator === \"function\";\n var property;\n var value;\n for (var i = 0, len = declarations.length; i < len; i++) {\n declaration = declarations[i];\n property = declaration.property;\n value = declaration.value;\n if (hasIterator) {\n iterator(property, value, declaration);\n } else if (value) {\n output || (output = {});\n output[property] = value;\n }\n }\n return output;\n}\nvar styleToObject = StyleToObject;\nconst webNamespaces = {\n html: \"http://www.w3.org/1999/xhtml\",\n mathml: \"http://www.w3.org/1998/Math/MathML\",\n svg: \"http://www.w3.org/2000/svg\",\n xlink: \"http://www.w3.org/1999/xlink\",\n xml: \"http://www.w3.org/XML/1998/namespace\",\n xmlns: \"http://www.w3.org/2000/xmlns/\"\n};\nconst ns = webNamespaces;\nconst toReact = hastToReact;\nconst own$1 = {}.hasOwnProperty;\nconst root = convert$2(\"root\");\nconst element = convert$2(\"element\");\nconst text = convert$2(\"text\");\nfunction toH(h, tree, options) {\n if (typeof h !== \"function\") {\n throw new TypeError(\"h is not a function\");\n }\n const r = react(h);\n const v = vue(h);\n const vd = vdom(h);\n let prefix;\n let node;\n if (typeof options === \"string\" || typeof options === \"boolean\") {\n prefix = options;\n options = {};\n } else {\n if (!options)\n options = {};\n prefix = options.prefix;\n }\n if (root(tree)) {\n node = tree.children.length === 1 && element(tree.children[0]) ? tree.children[0] : {\n type: \"element\",\n tagName: \"div\",\n properties: {},\n children: tree.children\n };\n } else if (element(tree)) {\n node = tree;\n } else {\n throw new Error(\n \"Expected root or element, not `\" + (tree && tree.type || tree) + \"`\"\n );\n }\n return transform(h, node, {\n schema: options.space === \"svg\" ? svg : html,\n prefix: prefix === void 0 || prefix === null ? r || v || vd ? \"h-\" : null : typeof prefix === \"string\" ? prefix : prefix ? \"h-\" : null,\n key: 0,\n react: r,\n vue: v,\n vdom: vd,\n hyperscript: hyperscript(h)\n });\n}\nfunction transform(h, node, ctx) {\n const parentSchema = ctx.schema;\n let schema = parentSchema;\n let name = node.tagName;\n const attributes = {};\n const nodes = [];\n let index2 = -1;\n let key;\n if (parentSchema.space === \"html\" && name.toLowerCase() === \"svg\") {\n schema = svg;\n ctx.schema = schema;\n }\n for (key in node.properties) {\n if (node.properties && own$1.call(node.properties, key)) {\n addAttribute(attributes, key, node.properties[key], ctx, name);\n }\n }\n if (ctx.vdom) {\n if (schema.space === \"html\") {\n name = name.toUpperCase();\n } else if (schema.space) {\n attributes.namespace = ns[schema.space];\n }\n }\n if (ctx.prefix) {\n ctx.key++;\n attributes.key = ctx.prefix + ctx.key;\n }\n if (node.children) {\n while (++index2 < node.children.length) {\n const value = node.children[index2];\n if (element(value)) {\n nodes.push(transform(h, value, ctx));\n } else if (text(value)) {\n nodes.push(value.value);\n }\n }\n }\n ctx.schema = parentSchema;\n return nodes.length > 0 ? h.call(node, name, attributes, nodes) : h.call(node, name, attributes);\n}\nfunction addAttribute(props, prop, value, ctx, name) {\n const info = find(ctx.schema, prop);\n let subprop;\n if (value === void 0 || value === null || typeof value === \"number\" && Number.isNaN(value) || value === false && (ctx.vue || ctx.vdom || ctx.hyperscript) || !value && info.boolean && (ctx.vue || ctx.vdom || ctx.hyperscript)) {\n return;\n }\n if (Array.isArray(value)) {\n value = info.commaSeparated ? stringify(value) : stringify$1(value);\n }\n if (info.boolean && ctx.hyperscript) {\n value = \"\";\n }\n if (info.property === \"style\" && typeof value === \"string\" && (ctx.react || ctx.vue || ctx.vdom)) {\n value = parseStyle(value, name);\n }\n if (ctx.vue) {\n if (info.property !== \"style\")\n subprop = \"attrs\";\n } else if (!info.mustUseProperty) {\n if (ctx.vdom) {\n if (info.property !== \"style\")\n subprop = \"attributes\";\n } else if (ctx.hyperscript) {\n subprop = \"attrs\";\n }\n }\n if (subprop) {\n props[subprop] = Object.assign(props[subprop] || {}, {\n [info.attribute]: value\n });\n } else if (info.space && ctx.react) {\n props[toReact[info.property] || info.property] = value;\n } else {\n props[info.attribute] = value;\n }\n}\nfunction react(h) {\n const node = h(\"div\", {});\n return Boolean(\n node && (\"_owner\" in node || \"_store\" in node) && (node.key === void 0 || node.key === null)\n );\n}\nfunction hyperscript(h) {\n return \"context\" in h && \"cleanup\" in h;\n}\nfunction vdom(h) {\n const node = h(\"div\", {});\n return node.type === \"VirtualNode\";\n}\nfunction vue(h) {\n const node = h(\"div\", {});\n return Boolean(node && node.context && node.context._isVue);\n}\nfunction parseStyle(value, tagName) {\n const result = {};\n try {\n styleToObject(value, (name, value2) => {\n if (name.slice(0, 4) === \"-ms-\")\n name = \"ms-\" + name.slice(4);\n result[name.replace(\n /-([a-z])/g,\n (_, $1) => $1.toUpperCase()\n )] = value2;\n });\n } catch (error) {\n error.message = tagName + \"[style]\" + error.message.slice(\"undefined\".length);\n throw error;\n }\n return result;\n}\nvar convert_1 = convert$1;\nfunction convert$1(test) {\n if (typeof test === \"string\") {\n return typeFactory(test);\n }\n if (test === null || test === void 0) {\n return ok;\n }\n if (typeof test === \"object\") {\n return (\"length\" in test ? anyFactory : matchesFactory)(test);\n }\n if (typeof test === \"function\") {\n return test;\n }\n throw new Error(\"Expected function, string, or object as test\");\n}\nfunction convertAll(tests) {\n var results = [];\n var length = tests.length;\n var index2 = -1;\n while (++index2 < length) {\n results[index2] = convert$1(tests[index2]);\n }\n return results;\n}\nfunction matchesFactory(test) {\n return matches;\n function matches(node) {\n var key;\n for (key in test) {\n if (node[key] !== test[key]) {\n return false;\n }\n }\n return true;\n }\n}\nfunction anyFactory(tests) {\n var checks2 = convertAll(tests);\n var length = checks2.length;\n return matches;\n function matches() {\n var index2 = -1;\n while (++index2 < length) {\n if (checks2[index2].apply(this, arguments)) {\n return true;\n }\n }\n return false;\n }\n}\nfunction typeFactory(test) {\n return type;\n function type(node) {\n return Boolean(node && node.type === test);\n }\n}\nfunction ok() {\n return true;\n}\nvar unistUtilVisitParents = visitParents$1;\nvar convert = convert_1;\nvar CONTINUE$1 = true;\nvar SKIP$1 = \"skip\";\nvar EXIT$1 = false;\nvisitParents$1.CONTINUE = CONTINUE$1;\nvisitParents$1.SKIP = SKIP$1;\nvisitParents$1.EXIT = EXIT$1;\nfunction visitParents$1(tree, test, visitor2, reverse) {\n var is;\n if (typeof test === \"function\" && typeof visitor2 !== \"function\") {\n reverse = visitor2;\n visitor2 = test;\n test = null;\n }\n is = convert(test);\n one2(tree, null, []);\n function one2(node, index2, parents) {\n var result = [];\n var subresult;\n if (!test || is(node, index2, parents[parents.length - 1] || null)) {\n result = toResult(visitor2(node, parents));\n if (result[0] === EXIT$1) {\n return result;\n }\n }\n if (node.children && result[0] !== SKIP$1) {\n subresult = toResult(all2(node.children, parents.concat(node)));\n return subresult[0] === EXIT$1 ? subresult : result;\n }\n return result;\n }\n function all2(children, parents) {\n var min = -1;\n var step = reverse ? -1 : 1;\n var index2 = (reverse ? children.length : min) + step;\n var result;\n while (index2 > min && index2 < children.length) {\n result = one2(children[index2], index2, parents);\n if (result[0] === EXIT$1) {\n return result;\n }\n index2 = typeof result[1] === \"number\" ? result[1] : index2 + step;\n }\n }\n}\nfunction toResult(value) {\n if (value !== null && typeof value === \"object\" && \"length\" in value) {\n return value;\n }\n if (typeof value === \"number\") {\n return [CONTINUE$1, value];\n }\n return [value];\n}\nvar unistUtilVisit = visit$1;\nvar visitParents = unistUtilVisitParents;\nvar CONTINUE = visitParents.CONTINUE;\nvar SKIP = visitParents.SKIP;\nvar EXIT = visitParents.EXIT;\nvisit$1.CONTINUE = CONTINUE;\nvisit$1.SKIP = SKIP;\nvisit$1.EXIT = EXIT;\nfunction visit$1(tree, test, visitor2, reverse) {\n if (typeof test === \"function\" && typeof visitor2 !== \"function\") {\n reverse = visitor2;\n visitor2 = test;\n test = null;\n }\n visitParents(tree, test, overload, reverse);\n function overload(node, parents) {\n var parent = parents[parents.length - 1];\n var index2 = parent ? parent.children.indexOf(node) : null;\n return visitor2(node, index2, parent);\n }\n}\nvar visit = unistUtilVisit;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar hastCssPropertyMap = {\n align: \"text-align\",\n valign: \"vertical-align\",\n height: \"height\",\n width: \"width\"\n};\nvar hastUtilTableCellStyle = function tableCellStyle(node) {\n visit(node, \"element\", visitor);\n return node;\n};\nfunction visitor(node) {\n if (node.tagName !== \"tr\" && node.tagName !== \"td\" && node.tagName !== \"th\") {\n return;\n }\n var hastName;\n var cssName;\n for (hastName in hastCssPropertyMap) {\n if (!hasOwnProperty.call(hastCssPropertyMap, hastName) || node.properties[hastName] === void 0) {\n continue;\n }\n cssName = hastCssPropertyMap[hastName];\n appendStyle(node, cssName, node.properties[hastName]);\n delete node.properties[hastName];\n }\n}\nfunction appendStyle(node, property, value) {\n var prevStyle = (node.properties.style || \"\").trim();\n if (prevStyle && !/;\\s*/.test(prevStyle)) {\n prevStyle += \";\";\n }\n if (prevStyle) {\n prevStyle += \" \";\n }\n var nextStyle = prevStyle + property + \": \" + value + \";\";\n node.properties.style = nextStyle;\n}\nconst tableCellStyle2 = hastUtilTableCellStyle;\nfunction whitespace(thing) {\n var value = thing && typeof thing === \"object\" && thing.type === \"text\" ? thing.value || \"\" : thing;\n return typeof value === \"string\" && value.replace(/[ \\t\\n\\f\\r]/g, \"\") === \"\";\n}\nconst own = {}.hasOwnProperty;\nconst tableElements = /* @__PURE__ */ new Set([\n \"table\",\n \"thead\",\n \"tbody\",\n \"tfoot\",\n \"tr\",\n \"th\",\n \"td\"\n]);\nfunction rehypeReact(options) {\n if (!options || typeof options.createElement !== \"function\") {\n throw new TypeError(\"createElement is not a function\");\n }\n const createElement = options.createElement;\n Object.assign(this, { Compiler: compiler2 });\n function compiler2(node) {\n let result = toH(h, tableCellStyle2(node), options.prefix);\n if (node.type === \"root\") {\n result = result && typeof result === \"object\" && \"type\" in result && \"props\" in result && result.type === \"div\" && (node.children.length !== 1 || node.children[0].type !== \"element\") ? result.props.children : [result];\n return createElement(options.Fragment || \"div\", {}, result);\n }\n return result;\n }\n function h(name, props, children) {\n if (children && tableElements.has(name)) {\n children = children.filter((child) => !whitespace(child));\n }\n if (options.components && own.call(options.components, name)) {\n const component = options.components[name];\n if (options.passNode && typeof component === \"function\") {\n props = Object.assign({ node: this }, props);\n }\n return createElement(component, props, children);\n }\n return createElement(name, props, children);\n }\n}\nfunction parse(value) {\n const input = String(value || \"\").trim();\n return input ? input.split(/[ \\t\\n\\r\\f]+/g) : [];\n}\nconst ABSOLUTE_URL_REGEX = /^[a-zA-Z][a-zA-Z\\d+\\-.]*?:/;\nconst WINDOWS_PATH_REGEX = /^[a-zA-Z]:\\\\/;\nfunction isAbsoluteUrl(url) {\n if (typeof url !== \"string\") {\n throw new TypeError(`Expected a \\`string\\`, got \\`${typeof url}\\``);\n }\n if (WINDOWS_PATH_REGEX.test(url)) {\n return false;\n }\n return ABSOLUTE_URL_REGEX.test(url);\n}\nconst defaultTarget = \"_blank\";\nconst defaultRel = [\"nofollow\", \"noopener\", \"noreferrer\"];\nconst defaultProtocols = [\"http\", \"https\"];\nfunction remarkExternalLinks(options = {}) {\n const target = options.target;\n const rel = typeof options.rel === \"string\" ? parse(options.rel) : options.rel;\n const protocols = options.protocols || defaultProtocols;\n const content2 = options.content && !Array.isArray(options.content) ? [options.content] : options.content;\n const contentProperties = options.contentProperties || {};\n return (tree) => {\n const definition2 = definitions(tree);\n visit$2(tree, (node) => {\n if (node.type === \"link\" || node.type === \"linkReference\") {\n const ctx = node.type === \"link\" ? node : definition2(node.identifier);\n if (!ctx)\n return;\n const protocol = ctx.url.slice(0, ctx.url.indexOf(\":\"));\n if (isAbsoluteUrl(ctx.url) && protocols.includes(protocol)) {\n const data = node.data || (node.data = {});\n const props = data.hProperties || (data.hProperties = {});\n if (target !== false) {\n props.target = target || defaultTarget;\n }\n if (rel !== false) {\n props.rel = (rel || defaultRel).concat();\n }\n if (content2) {\n node.children.push({\n type: \"fragment\",\n children: [],\n data: {\n hName: \"span\",\n hProperties: extend(true, contentProperties),\n hChildren: extend(true, content2)\n }\n });\n }\n }\n }\n });\n };\n}\nconst Link = {\n name: \"Link\",\n functional: true,\n props: {\n href: {\n type: String,\n required: true\n }\n },\n render(h, { data, props }) {\n return h(\"a\", {\n attrs: {\n href: props.href,\n rel: \"noopener noreferrer\",\n target: \"_blank\",\n class: \"rich-text--external-link\"\n }\n }, [props.href.trim()]);\n }\n};\nconst remarkAutolink = function({ autolink: autolink2, useMarkdown }) {\n return function(tree) {\n if (!useMarkdown || !autolink2) {\n return;\n }\n visit$2(tree, (node) => node.type === \"text\", (node, index2, parent) => {\n let parsed = parseUrl(node.value);\n parsed = parsed.map((n) => {\n if (typeof n === \"string\") {\n return u(\"text\", n);\n }\n return u(\"link\", {\n url: n.props.href\n }, [u(\"text\", n.props.href)]);\n }).filter((x) => x);\n parent.children.splice(index2, 1, ...parsed.flat());\n return [SKIP$2, index2 + parsed.flat().length];\n });\n };\n};\nconst parseUrl = (text2, linkComponent) => {\n let match = URL_PATTERN_AUTOLINK.exec(text2);\n const list2 = [];\n let start = 0;\n while (match !== null) {\n let href = match[2];\n let textAfter;\n let textBefore = text2.substring(start, match.index + match[1].length);\n if (href[0] === \" \") {\n textBefore += href[0];\n href = href.substring(1).trim();\n }\n const lastChar = href[href.length - 1];\n if (lastChar === \".\" || lastChar === \",\" || lastChar === \";\" || match[0][0] === \"(\" && lastChar === \")\") {\n href = href.substring(0, href.length - 1);\n textAfter = lastChar;\n }\n list2.push(textBefore);\n list2.push({ component: Link, props: { href } });\n if (textAfter) {\n list2.push(textAfter);\n }\n start = match.index + match[0].length;\n match = URL_PATTERN_AUTOLINK.exec(text2);\n }\n list2.push(text2.substring(start));\n const joinedText = list2.map((item) => typeof item === \"string\" ? item : item.props.href).join(\"\");\n if (text2 === joinedText) {\n return list2;\n }\n console.error(\"Failed to reassemble the chunked text: \" + text2);\n return text2;\n};\nconst remarkPlaceholder = function() {\n return function(ast) {\n visit$2(ast, (node) => node.type === \"text\", visitor2);\n function visitor2(node, index2, parent) {\n const placeholders = node.value.split(/(\\{[a-z\\-_.0-9]+\\})/ig).map((entry, index3, list2) => {\n const matches = entry.match(/^\\{([a-z\\-_.0-9]+)\\}$/i);\n if (!matches) {\n return u(\"text\", entry);\n }\n const [, component] = matches;\n return u(\"element\", {\n tagName: `#${component}`\n });\n });\n node = u(\"element\", { tagName: \"span\" }, [\n ...placeholders\n ]);\n parent.children[index2] = node;\n }\n };\n};\nconst prepareTextNode = ({ h, context }, text2) => {\n if (context.autolink) {\n text2 = parseUrl(text2);\n }\n if (Array.isArray(text2)) {\n return text2.map((entry) => {\n if (typeof entry === \"string\") {\n return entry;\n }\n const { component, props } = entry;\n return h(component, {\n props,\n class: \"rich-text--component\"\n });\n });\n }\n return text2;\n};\nconst RichText_vue_vue_type_style_index_0_scoped_a8ade67f_lang = \"\";\nconst _sfc_main = {\n name: \"RichText\",\n components: {\n ReferenceList\n },\n props: {\n text: {\n type: String,\n default: \"\"\n },\n arguments: {\n type: Object,\n default: () => {\n return {};\n }\n },\n referenceLimit: {\n type: Number,\n default: 0\n },\n references: {\n type: Object,\n default: null\n },\n markdownCssClasses: {\n type: Object,\n default: () => {\n return {\n a: \"rich-text--external-link\",\n ol: \"rich-text--ordered-list\",\n ul: \"rich-text--un-ordered-list\",\n li: \"rich-text--list-item\",\n strong: \"rich-text--strong\",\n em: \"rich-text--italic\",\n h1: \"rich-text--heading rich-text--heading-1\",\n h2: \"rich-text--heading rich-text--heading-2\",\n h3: \"rich-text--heading rich-text--heading-3\",\n h4: \"rich-text--heading rich-text--heading-4\",\n h5: \"rich-text--heading rich-text--heading-5\",\n h6: \"rich-text--heading rich-text--heading-6\",\n hr: \"rich-text--hr\",\n table: \"rich-text--table\",\n pre: \"rich-text--pre\",\n code: \"rich-text--code\",\n blockquote: \"rich-text--blockquote\"\n };\n }\n },\n useMarkdown: {\n type: Boolean,\n default: false\n },\n autolink: {\n type: Boolean,\n default: true\n }\n },\n methods: {\n renderPlaintext(h) {\n const context = this;\n const placeholders = this.text.split(/(\\{[a-z\\-_.0-9]+\\})/ig).map(function(entry, index2, list2) {\n const matches = entry.match(/^\\{([a-z\\-_.0-9]+)\\}$/i);\n if (!matches) {\n return prepareTextNode({ h, context }, entry);\n }\n const argumentId = matches[1];\n const argument = context.arguments[argumentId];\n if (typeof argument === \"object\") {\n const { component, props } = argument;\n return h(component, {\n props,\n class: \"rich-text--component\"\n });\n }\n if (argument) {\n return h(\"span\", { class: \"rich-text--fallback\" }, argument);\n }\n return entry;\n });\n return h(\"div\", { class: \"rich-text--wrapper\" }, [\n h(\"div\", {}, placeholders.flat()),\n this.referenceLimit > 0 ? h(\"div\", { class: \"rich-text--reference-widget\" }, [\n h(ReferenceList, { props: { text: this.text, referenceData: this.references } })\n ]) : null\n ]);\n },\n renderMarkdown(h) {\n const renderedMarkdown = unified().use(remarkParse).use(remarkAutolink, {\n autolink: this.autolink,\n useMarkdown: this.useMarkdown\n }).use(remarkExternalLinks, {\n target: \"_blank\",\n rel: [\"noopener noreferrer\"]\n }).use(remarkBreaks).use(remark2rehype, {\n handlers: {\n component(toHast2, node) {\n return toHast2(node, node.component, { value: node.value });\n }\n }\n }).use(remarkPlaceholder).use(rehypeReact, {\n createElement: (tag, attrs, children) => {\n if (!tag.startsWith(\"#\")) {\n return h(tag, attrs, children);\n }\n const placeholder = this.arguments[tag.slice(1)];\n if (!placeholder) {\n return h(\"span\", { ...{ attrs }, ...{ class: \"rich-text--fallback\" } }, [`{${tag.slice(1)}}`]);\n }\n if (!placeholder.component) {\n return h(\"span\", attrs, [placeholder]);\n }\n return h(\n placeholder.component,\n {\n attrs,\n props: placeholder.props,\n class: \"rich-text--component\"\n },\n children\n );\n },\n prefix: false\n }).processSync(this.text).result;\n return h(\"div\", { class: \"rich-text--wrapper\" }, [\n renderedMarkdown,\n this.referenceLimit > 0 ? h(\"div\", { class: \"rich-text--reference-widget\" }, [\n h(ReferenceList, { props: { text: this.text, referenceData: this.references } })\n ]) : null\n ]);\n }\n },\n render(h) {\n if (!this.useMarkdown) {\n return this.renderPlaintext(h);\n }\n return this.renderMarkdown(h);\n }\n};\nconst _sfc_render = null;\nconst _sfc_staticRenderFns = null;\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"a8ade67f\",\n null,\n null\n);\nconst RichText = __component__.exports;\nexport {\n ReferenceList,\n ReferenceWidget,\n RichText,\n RichText as default,\n isWidgetRegistered,\n registerWidget,\n renderWidget\n};\n","/**\n * @copyright Copyright (c) 2021 Louis Chemineau \n *\n * @author Louis Chemineau \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\nimport moment from '@nextcloud/moment'\n\nexport default class ActivityModel {\n\n\t_activity\n\n\t/**\n\t * Create the activity object\n\t *\n\t * @param {object} rawActivity the activity object from the ocs response\n\t */\n\tconstructor(rawActivity) {\n\t\tif (typeof rawActivity !== 'object') {\n\t\t\tthrow new Error('Received activity data is not an object.')\n\t\t}\n\n\t\t// Sanity checks\n\t\tif (typeof rawActivity.activity_id !== 'number') {\n\t\t\tthrow new Error('The activity_id argument is not a valid string')\n\t\t}\n\t\tif (typeof rawActivity.type !== 'string' || rawActivity.type.trim() === '') {\n\t\t\tthrow new Error('The activity_id argument is not a valid string')\n\t\t}\n\t\tif (typeof rawActivity.subject !== 'string' || rawActivity.subject.trim() === '') {\n\t\t\tthrow new Error('The activity_id argument is not a valid string')\n\t\t}\n\t\tif (typeof rawActivity.icon !== 'string' || rawActivity.icon.trim() === '') {\n\t\t\tthrow new Error('The activity_id argument is not a valid string')\n\t\t}\n\t\tif (typeof rawActivity.datetime !== 'string' || rawActivity.datetime.trim() === '') {\n\t\t\tthrow new Error('The activity_id argument is not a valid string')\n\t\t}\n\n\t\t// store state\n\t\tthis._activity = rawActivity\n\t}\n\n\t/**\n\t * get the activity id\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget id() {\n\t\treturn this._activity.id\n\t}\n\n\t/**\n\t * Get the activity app\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget app() {\n\t\treturn this._activity.app\n\t}\n\n\t/**\n\t * Get the activity type\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget type() {\n\t\treturn this._activity.type\n\t}\n\n\t/**\n\t * Get the activity user\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget user() {\n\t\treturn this._activity.user\n\t}\n\n\t/**\n\t * Get the activity subject\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget subject() {\n\t\treturn this._activity.subject\n\t}\n\n\t/**\n\t * Get the activity subject_rich template\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget subjectRichTemplate() {\n\t\treturn this._activity.subject_rich[0]\n\t}\n\n\t/**\n\t * Get the activity subject_rich objects\n\t *\n\t * @return {Object}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget subjectRichObjects() {\n\t\tif (Array.isArray(this._activity.subject_rich[1])) {\n\t\t\treturn {}\n\t\t}\n\n\t\treturn this._activity.subject_rich[1]\n\t}\n\n\t/**\n\t * Get the activity message\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget message() {\n\t\treturn this._activity.message\n\t}\n\n\t/**\n\t * Get the activity message_rich template\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget messageRichTemplate() {\n\t\treturn this._activity.message_rich[0]\n\t}\n\n\t/**\n\t * Get the activity message_rich objects\n\t *\n\t * @return {Object}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget messageRichObjects() {\n\t\tif (Array.isArray(this._activity.message_rich[1])) {\n\t\t\treturn {}\n\t\t}\n\n\t\treturn this._activity.message_rich[1]\n\t}\n\n\t/**\n\t * Get the object_type\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget objectType() {\n\t\treturn this._activity.object_type\n\t}\n\n\t/**\n\t * Get the activity object_id\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget objectId() {\n\t\treturn this._activity.object_id\n\t}\n\n\t/**\n\t * Get the activity object_name\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget objectName() {\n\t\treturn this._activity.object_name\n\t}\n\n\t/**\n\t * Get the activity link\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget link() {\n\t\treturn this._activity.link\n\t}\n\n\t/**\n\t * Get the activity icon\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget icon() {\n\t\treturn this._activity.icon\n\t}\n\n\t/**\n\t * Get the activity datetime\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget datetime() {\n\t\treturn this._activity.datetime\n\t}\n\n\t/**\n\t * Get the activity formatted date from the current date\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget dateFromNow() {\n\t\treturn moment(this._activity.datetime).fromNow()\n\t}\n\n\t/**\n\t * Get the activity formatted datetime\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget formattedDate() {\n\t\treturn moment(this._activity.datetime).format('LLL')\n\t}\n\n\t/**\n\t * Get the activity timestamp\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof ActivityModel\n\t */\n\tget timestamp() {\n\t\treturn moment(this._activity.datetime).unix()\n\t}\n\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',{staticClass:\"rich-text-file\"},[(!_vm.isRoot && _vm.parentPathIsRoot)?_c('a',{attrs:{\"href\":_vm.link}},[_vm._v(_vm._s(_vm.name))]):_vm._e(),_vm._v(\" \"),(!_vm.isRoot && !_vm.parentPathIsRoot)?_c('a',{attrs:{\"title\":_vm.t('activity', 'in {path}', {path: _vm.parentFolder}),\"aria-label\":_vm.t('activity', 'in {path}', {path: _vm.parentFolder}),\"href\":_vm.link}},[_vm._v(_vm._s(_vm.name))]):_vm._e(),_vm._v(\" \"),(_vm.isRoot)?_c('span',{staticClass:\"icon-home\",attrs:{\"title\":_vm.t('activity', 'Home'),\"aria-label\":\"t('activity', 'Home')\"}}):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileRichArgument.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileRichArgument.vue?vue&type=script&lang=js\"","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileRichArgument.vue?vue&type=style&index=0&id=8696f7f0&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileRichArgument.vue?vue&type=style&index=0&id=8696f7f0&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FileRichArgument.vue?vue&type=template&id=8696f7f0&scoped=true\"\nimport script from \"./FileRichArgument.vue?vue&type=script&lang=js\"\nexport * from \"./FileRichArgument.vue?vue&type=script&lang=js\"\nimport style0 from \"./FileRichArgument.vue?vue&type=style&index=0&id=8696f7f0&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8696f7f0\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmailRichArgument.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmailRichArgument.vue?vue&type=script&lang=js\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./EmailRichArgument.vue?vue&type=template&id=42f46e36\"\nimport script from \"./EmailRichArgument.vue?vue&type=script&lang=js\"\nexport * from \"./EmailRichArgument.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('a',{attrs:{\"href\":`mailto:${_vm.id}`}},[_vm._v(_vm._s(_vm.name))])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SystemTagRichArgument.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SystemTagRichArgument.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SystemTagRichArgument.vue?vue&type=style&index=0&id=7e2ba972&prod&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SystemTagRichArgument.vue?vue&type=style&index=0&id=7e2ba972&prod&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SystemTagRichArgument.vue?vue&type=template&id=7e2ba972&scoped=true\"\nimport script from \"./SystemTagRichArgument.vue?vue&type=script&lang=js\"\nexport * from \"./SystemTagRichArgument.vue?vue&type=script&lang=js\"\nimport style0 from \"./SystemTagRichArgument.vue?vue&type=style&index=0&id=7e2ba972&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7e2ba972\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('strong',[_vm._v(_vm._s(_vm.name))])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CalendarEventRichArgument.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CalendarEventRichArgument.vue?vue&type=script&lang=js\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./CalendarEventRichArgument.vue?vue&type=template&id=7c75a1c2\"\nimport script from \"./CalendarEventRichArgument.vue?vue&type=script&lang=js\"\nexport * from \"./CalendarEventRichArgument.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('a',{attrs:{\"href\":_vm.link,\"title\":_vm.title}},[_c('strong',[_vm._v(_vm._s(_vm.name))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OpenGraphRichArgument.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OpenGraphRichArgument.vue?vue&type=script&lang=js\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./OpenGraphRichArgument.vue?vue&type=template&id=6961e357\"\nimport script from \"./OpenGraphRichArgument.vue?vue&type=script&lang=js\"\nexport * from \"./OpenGraphRichArgument.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('a',{attrs:{\"href\":_vm.link}},[_c('div',{staticClass:\"opengraph\",attrs:{\"id\":`opengraph-${_vm.id}`}},[(_vm.thumbIsDefined)?_c('div',{staticClass:\"opengraph-thumb\",style:(`background-image: url('${_vm.thumb}')`)}):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"opengraph-name\",class:{'opengraph-with-thumb': _vm.thumbIsDefined}},[_vm._v(_vm._s(_vm.name))]),_vm._v(\" \"),_c('div',{staticClass:\"opengraph-description\",class:{'opengraph-with-thumb': _vm.thumbIsDefined}},[_vm._v(_vm._s(_vm.description))]),_vm._v(\" \"),_c('span',{staticClass:\"opengraph-website\"},[_vm._v(_vm._s(_vm.website))])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Activity.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Activity.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/dist/cjs.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Activity.vue?vue&type=style&index=0&id=35ab5901&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/dist/cjs.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Activity.vue?vue&type=style&index=0&id=35ab5901&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Activity.vue?vue&type=template&id=35ab5901&scoped=true\"\nimport script from \"./Activity.vue?vue&type=script&lang=js\"\nexport * from \"./Activity.vue?vue&type=script&lang=js\"\nimport style0 from \"./Activity.vue?vue&type=style&index=0&id=35ab5901&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"35ab5901\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('li',{staticClass:\"activity-entry\"},[_c('NcAvatar',{class:[_vm.applyMonochromeIconColor, 'activity-entry__icon', 'activity-icon'],attrs:{\"disable-menu\":true,\"disable-tooltip\":true,\"url\":_vm.activity.icon,\"size\":15}}),_vm._v(\" \"),_c('div',{staticClass:\"activity-entry__content\"},[_c('RichText',{staticClass:\"activity-entry__content__subject\",attrs:{\"text\":_vm.subjectText,\"arguments\":_vm.subjectArguments}}),_vm._v(\" \"),_c('RichText',{staticClass:\"activity-entry__content__message\",attrs:{\"text\":_vm.messageText,\"arguments\":_vm.messageArguments}})],1),_vm._v(\" \"),_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.activity.formattedDate))]),_vm._v(\" \"),_c('span',{staticClass:\"activity-entry__date\",attrs:{\"title\":_vm.activity.formattedDate}},[_vm._v(_vm._s(_vm.dateFromNow))])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2021 Louis Chemineau \n *\n * @author Louis Chemineau \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('activity')\n\t.detectUser()\n\t.build()\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivityTab.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivityTab.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/dist/cjs.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivityTab.vue?vue&type=style&index=0&id=030d4a40&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/dist/cjs.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivityTab.vue?vue&type=style&index=0&id=030d4a40&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ActivityTab.vue?vue&type=template&id=030d4a40&scoped=true\"\nimport script from \"./ActivityTab.vue?vue&type=script&lang=js\"\nexport * from \"./ActivityTab.vue?vue&type=script&lang=js\"\nimport style0 from \"./ActivityTab.vue?vue&type=style&index=0&id=030d4a40&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"030d4a40\",\n null\n \n)\n\nexport default component.exports","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent(\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier /* server only */,\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options =\n typeof scriptExports === 'function' ? scriptExports.options : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) {\n // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar valid = require('semver/functions/valid.js');\nvar major = require('semver/functions/major.js');\n\nfunction _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }\n\nvar valid__default = /*#__PURE__*/_interopDefaultLegacy(valid);\nvar major__default = /*#__PURE__*/_interopDefaultLegacy(major);\n\nvar ProxyBus = /** @class */ (function () {\n function ProxyBus(bus) {\n if (typeof bus.getVersion !== 'function' || !valid__default[\"default\"](bus.getVersion())) {\n console.warn('Proxying an event bus with an unknown or invalid version');\n }\n else if (major__default[\"default\"](bus.getVersion()) !== major__default[\"default\"](this.getVersion())) {\n console.warn('Proxying an event bus of version ' + bus.getVersion() + ' with ' + this.getVersion());\n }\n this.bus = bus;\n }\n ProxyBus.prototype.getVersion = function () {\n return \"3.1.0\";\n };\n ProxyBus.prototype.subscribe = function (name, handler) {\n this.bus.subscribe(name, handler);\n };\n ProxyBus.prototype.unsubscribe = function (name, handler) {\n this.bus.unsubscribe(name, handler);\n };\n ProxyBus.prototype.emit = function (name, event) {\n this.bus.emit(name, event);\n };\n return ProxyBus;\n}());\n\nvar SimpleBus = /** @class */ (function () {\n function SimpleBus() {\n this.handlers = new Map();\n }\n SimpleBus.prototype.getVersion = function () {\n return \"3.1.0\";\n };\n SimpleBus.prototype.subscribe = function (name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).concat(handler));\n };\n SimpleBus.prototype.unsubscribe = function (name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).filter(function (h) { return h != handler; }));\n };\n SimpleBus.prototype.emit = function (name, event) {\n (this.handlers.get(name) || []).forEach(function (h) {\n try {\n h(event);\n }\n catch (e) {\n console.error('could not invoke event listener', e);\n }\n });\n };\n return SimpleBus;\n}());\n\nvar bus = null;\nfunction getBus() {\n if (bus !== null) {\n return bus;\n }\n if (typeof window === 'undefined') {\n // testing or SSR\n return new Proxy({}, {\n get: function () {\n return function () { return console.error('Window not available, EventBus can not be established!'); };\n }\n });\n }\n if (typeof window.OC !== 'undefined' && window.OC._eventBus && typeof window._nc_event_bus === 'undefined') {\n console.warn('found old event bus instance at OC._eventBus. Update your version!');\n window._nc_event_bus = window.OC._eventBus;\n }\n // Either use an existing event bus instance or create one\n if (typeof (window === null || window === void 0 ? void 0 : window._nc_event_bus) !== 'undefined') {\n bus = new ProxyBus(window._nc_event_bus);\n }\n else {\n bus = window._nc_event_bus = new SimpleBus();\n }\n return bus;\n}\n/**\n * Register an event listener\n *\n * @param name name of the event\n * @param handler callback invoked for every matching event emitted on the bus\n */\nfunction subscribe(name, handler) {\n getBus().subscribe(name, handler);\n}\n/**\n * Unregister a previously registered event listener\n *\n * Note: doesn't work with anonymous functions (closures). Use method of an object or store listener function in variable.\n *\n * @param name name of the event\n * @param handler callback passed to `subscribed`\n */\nfunction unsubscribe(name, handler) {\n getBus().unsubscribe(name, handler);\n}\n/**\n * Emit an event\n *\n * @param name name of the event\n * @param event event payload\n */\nfunction emit(name, event) {\n getBus().emit(name, event);\n}\n\nexports.ProxyBus = ProxyBus;\nexports.SimpleBus = SimpleBus;\nexports.emit = emit;\nexports.subscribe = subscribe;\nexports.unsubscribe = unsubscribe;\n//# sourceMappingURL=index.cjs.map\n"],"names":["eventBus","token","undefined","observers","subscribe","e","forEach","observer","console","error","getAttribute","el","attribute","currentUser","exports","getCurrentUser","head","document","getElementsByTagName","uid","displayName","isAdmin","OC","isUserAdmin","getRequestToken","tokenElement","onRequestTokenUpdate","push","debug","MAX_LENGTH","MAX_SAFE_INTEGER","safeRe","re","t","parseOptions","compareIdentifiers","SemVer","constructor","version","options","loose","includePrerelease","TypeError","length","this","m","trim","match","LOOSE","FULL","raw","major","minor","patch","prerelease","split","map","id","test","num","build","format","join","toString","compare","other","compareMain","comparePre","i","a","b","compareBuild","inc","release","identifier","identifierBase","base","Number","Error","isNaN","module","throwErrors","er","parse","v","MAX_SAFE_COMPONENT_LENGTH","MAX_SAFE_BUILD_LENGTH","RELEASE_TYPES","SEMVER_SPEC_VERSION","FLAG_INCLUDE_PRERELEASE","FLAG_LOOSE","process","env","NODE_DEBUG","args","numeric","anum","bnum","rcompareIdentifiers","looseOption","Object","freeze","emptyOpts","src","R","LETTERDASHNUMBER","safeRegexReplacements","createToken","name","value","isGlobal","safe","max","makeSafeRegex","index","RegExp","NUMERICIDENTIFIER","NUMERICIDENTIFIERLOOSE","NONNUMERICIDENTIFIER","PRERELEASEIDENTIFIER","PRERELEASEIDENTIFIERLOOSE","BUILDIDENTIFIER","MAINVERSION","PRERELEASE","BUILD","FULLPLAIN","MAINVERSIONLOOSE","PRERELEASELOOSE","LOOSEPLAIN","XRANGEIDENTIFIER","XRANGEIDENTIFIERLOOSE","GTLT","XRANGEPLAIN","XRANGEPLAINLOOSE","COERCE","LONETILDE","tildeTrimReplace","LONECARET","caretTrimReplace","comparatorTrimReplace","GetText","GettextBuilder","translations","setLanguage","language","locale","detectLocale","documentElement","lang","replace","addTranslation","data","enableDebugMode","GettextWrapper","gt","sourceLocale","key","addTranslations","setLocale","subtitudePlaceholders","translated","vars","r","gettext","original","placeholders","ngettext","singular","plural","count","getGettextBuilder","defineProperty","ConsoleLogger","buildConsoleLogger","context","_contracts","_typeof","o","Symbol","iterator","prototype","_defineProperties","target","props","descriptor","enumerable","configurable","writable","_toPropertyKey","arg","input","hint","prim","toPrimitive","res","call","String","_toPrimitive","obj","instance","Constructor","_classCallCheck","protoProps","message","level","msg","LogLevel","toUpperCase","app","concat","Debug","stack","_this$context","_this$context2","formatMessage","Info","info","Warn","warn","Fatal","log","assign","LoggerBuilder","_auth","_defineProperty","factory","appId","user","self","onLoaded","_window$_oc_config$lo","_window$_oc_config","readyState","window","_oc_config","loglevel","_oc_debug","removeEventListener","addEventListener","detectLogLevel","_LoggerBuilder","_ConsoleLogger","n","s","__esModule","default","d","get","hasOwnProperty","toStringTag","u","l","getLocale","json","charset","headers","Language","msgid","comments","translator","msgstr","seconds","reference","updateLocale","parentLocale","relativeTime","localeData","_relativeTime","dataset","getCanonicalLocale","getDayNames","dayNames","getDayNamesMin","dayNamesMin","getDayNamesShort","dayNamesShort","getFirstDay","firstDay","getLanguage","getMonthNames","monthNames","getMonthNamesShort","monthNamesShort","translate","text","L10N","translatePlural","textSingular","textPlural","joinPaths","_len","arguments","Array","_key","nonEmptyArgs","filter","lastArg","leadingSlash","charAt","trailingSlash","sections","reduce","acc","section","first","path","path1","path2","pathSections1","p","pathSections2","apply","k","size","type","appearance","validator","includes","title","computed","colors","reverse","c","g","h","A","styleTagTransform","setAttributes","insert","bind","domAPI","insertStyleElement","Z","locals","C","f","y","_self","_c","staticClass","attrs","role","width","height","viewBox","fill","_v","_s","_e","z","components","Dropdown","inheritAttrs","popoverBaseClass","focusTrap","Boolean","setReturnFocus","HTMLElement","SVGElement","emits","beforeDestroy","clearFocusTrap","methods","async","$nextTick","$refs","popover","popperContent","$el","$focusTrap","createFocusTrap","escapeDeactivates","allowOutsideClick","trapStack","L","activate","deactivate","afterShow","$emit","useFocusTrap","afterHide","S","w","x","_g","_b","ref","distance","on","scopedSlots","_u","fn","_t","proxy","$attrs","$listeners","N","item","required","href","icon","indexOf","Math","round","random","iconIsUrl","URL","action","NcPopoverMenuItem","download","rel","click","class","longtext","active","submit","preventDefault","placeholder","domProps","directives","rawName","model","expression","checked","isArray","_i","change","$set","slice","_q","composing","for","stopPropagation","disabled","menu","_l","toLowerCase","parseInt","Actions","Activities","Choose","Close","Custom","Favorite","Flags","Global","Next","Objects","Open","Previous","Search","Settings","Submit","Symbols","items","pluralId","msgid_plural","iQ","hasStatus","userStatus","status","getCapabilities","user_status","enabled","generateOcsUrl","userId","ocs","response","isMobile","watch","created","handleWindowResize","clientWidth","defaultProtocol","className","attributes","_nc_focus_trap","sources","names","mappings","sourcesContent","sourceRoot","hash","needQuotes","btoa","unescape","encodeURIComponent","JSON","stringify","css","media","sourceMap","supports","layer","references","updater","byIndex","splice","update","remove","querySelector","HTMLIFrameElement","contentDocument","appendChild","createElement","nc","setAttribute","parentNode","removeChild","styleSheet","cssText","firstChild","createTextNode","label","iconUrl","source","primary","avatarUrl","getAvatarUrl","mentionText","generateUrl","contenteditable","style","backgroundImage","render","staticRenderFns","_compiled","functional","_scopeId","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","add","_ssrRegister","$root","$options","shadowRoot","_injectStyles","beforeCreate","baseURI","location","U","getBuilder","persist","setItem","ClickOutside","vOnClickOutside","DotsHorizontal","NcLoadingIcon","NcPopover","NcPopoverMenu","mixins","url","iconClass","showUserStatus","showUserStatusCompact","preloadedUserStatus","isGuest","allowPlaceholder","disableTooltip","disableMenu","tooltipMessage","isNoUser","menuPosition","menuContainer","Element","avatarUrlLoaded","avatarSrcSetLoaded","userDoesNotExist","isAvatarLoaded","isMenuLoaded","contactsMenuLoading","contactsMenuActions","contactsMenuOpenState","avatarAriaLabel","hasMenu","canDisplayUserStatus","showUserStatusIconOnAvatar","getUserIdentifier","isDisplayNameDefined","isUserDefined","isUrlDefined","shouldShowPlaceholder","avatarStyle","lineHeight","fontSize","initialsWrapperStyle","backgroundColor","initialsStyle","color","tooltip","initials","fromCodePoint","codePointAt","hyperlink","innerHTML","loadAvatarUrl","mounted","fetchUserStatus","handleUserStatusUpdated","unsubscribe","handlePopoverAfterShow","popoverMenu","focus","handlePopoverAfterHide","main","fetchContactsMenu","closeMenu","post","topAction","actions","updateImageIfValid","avatarUrlGenerator","getComputedStyle","body","getPropertyValue","oc_userconfig","avatar","getItem","Image","onload","onerror","srcset","j","P","E","T","_","B","O","D","M","F","tabindex","keydown","_k","keyCode","toggleMenu","alt","placement","container","shown","$slots","description","hasTitle","hasDescription","I","NcAvatar","NcUserBubbleDiv","avatarImage","open","margin","isPopoverComponent","popoverEmpty","isAvatarUrl","isCustomAvatar","hasUrl","isLinkComponent","styles","content","borderRadius","marginLeft","onOpenChange","onClick","tag","trigger","$props","byteLength","b64","lens","getLens","validLen","placeHoldersLen","toByteArray","tmp","arr","Arr","_byteLength","curByte","len","revLookup","charCodeAt","fromByteArray","uint8","extraBytes","parts","maxChunkLength","len2","encodeChunk","lookup","Uint8Array","code","start","end","output","isConstructor","tryToString","$TypeError","argument","isCallable","$String","wellKnownSymbol","create","UNSCOPABLES","ArrayPrototype","uncurryThis","IndexedObject","toObject","lengthOfArrayLike","arraySpeciesCreate","createMethod","TYPE","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","$this","callbackfn","that","specificCreate","result","boundFunction","some","every","find","findIndex","filterReject","aCallable","IS_RIGHT","argumentsLength","memo","left","right","toAbsoluteIndex","createProperty","$Array","fin","isObject","SPECIES","originalArray","arraySpeciesConstructor","fails","getPrototypeOf","done","toPropertyKey","definePropertyModule","createPropertyDescriptor","object","propertyKey","anObject","ordinaryToPrimitive","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","classList","documentCreateElement","DOMTokenListPrototype","classof","global","NATIVE_BIND","setPrototypeOf","dummy","Wrapper","NewTarget","NewTargetPrototype","getBuiltIn","inspectSource","noop","empty","construct","constructorRegExp","exec","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","sham","called","IteratorPrototype","setToStringTag","Iterators","returnThis","IteratorConstructor","NAME","next","ENUMERABLE_NEXT","TO_STRING_TAG","$","IS_PURE","FunctionName","createIteratorConstructor","createNonEnumerableProperty","defineBuiltIn","IteratorsCore","PROPER_FUNCTION_NAME","PROPER","CONFIGURABLE_FUNCTION_NAME","CONFIGURABLE","BUGGY_SAFARI_ITERATORS","ITERATOR","KEYS","VALUES","ENTRIES","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","values","keys","proto","forced","PrototypeOfArrayIteratorPrototype","arrayIterator","toIndexedObject","$getOwnPropertyNames","arraySlice","windowNames","getOwnPropertyNames","it","getWindowNames","hasOwn","sharedKey","CORRECT_PROTOTYPE_GETTER","IE_PROTO","$Object","ObjectPrototype","aPossiblePrototype","setter","CORRECT_SETTER","getOwnPropertyDescriptor","set","__proto__","TAG","STATIC","aConstructor","isNullOrUndefined","defaultConstructor","requireObjectCoercible","whitespaces","whitespace","ltrim","rtrim","string","SymbolPrototype","valueOf","TO_PRIMITIVE","arity","NATIVE_SYMBOL","keyFor","wrappedWellKnownSymbolModule","addToUnscopables","InternalStateModule","defineIterator","createIterResultObject","DESCRIPTORS","ARRAY_ITERATOR","setInternalState","getInternalState","getterFor","iterated","kind","state","Arguments","$reduce","arrayMethodIsStrict","CHROME_VERSION","IS_NODE","dateToPrimitive","DatePrototype","Date","isSymbol","$stringify","numberToString","tester","low","hi","WRONG_SYMBOLS_CONVERSION","symbol","ILL_FORMED_UNICODE","stringifyWithSymbolsFix","replacer","$replacer","fixIllFormed","offset","prev","stat","space","isForced","inheritIfRequired","isPrototypeOf","thisNumberValue","NUMBER","NativeNumber","NumberPrototype","NumberWrapper","primValue","third","radix","maxCode","digits","NaN","toNumber","toNumeric","getOwnPropertySymbolsModule","getOwnPropertySymbols","$getOwnPropertySymbols","STRING_ITERATOR","point","fixRegExpWellKnownSymbolLogic","isRegExp","speciesConstructor","advanceStringIndex","toLength","getMethod","callRegExpExec","regexpExec","stickyHelpers","UNSUPPORTED_Y","MAX_UINT32","min","$push","stringSlice","SPLIT","nativeSplit","maybeCallNative","internalSplit","separator","limit","lim","lastIndex","lastLength","flags","ignoreCase","multiline","unicode","sticky","lastLastIndex","separatorCopy","splitter","rx","unicodeMatching","q","originalExec","$toString","nativeObjectCreate","objectKeys","getOwnPropertyNamesModule","getOwnPropertyNamesExternal","getOwnPropertyDescriptorModule","definePropertiesModule","propertyIsEnumerableModule","shared","hiddenKeys","defineWellKnownSymbol","defineSymbolToPrimitive","$forEach","HIDDEN","SYMBOL","PROTOTYPE","$Symbol","QObject","nativeGetOwnPropertyDescriptor","nativeDefineProperty","nativeGetOwnPropertyNames","nativePropertyIsEnumerable","AllSymbols","ObjectPrototypeSymbols","WellKnownSymbolsStore","USE_SETTER","findChild","setSymbolDescriptor","Attributes","ObjectPrototypeDescriptor","wrap","$defineProperty","$defineProperties","Properties","properties","$propertyIsEnumerable","V","$getOwnPropertyDescriptor","IS_OBJECT_PROTOTYPE","unsafe","useSetter","useSimple","defineProperties","copyConstructorProperties","NativeSymbol","EmptyStringDescriptionStore","SymbolWrapper","thisSymbolValue","symbolDescriptiveString","regexp","desc","NATIVE_SYMBOL_REGISTRY","StringToSymbolRegistry","SymbolToStringRegistry","sym","DOMIterables","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","METHOD_NAME","___CSS_LOADER_EXPORT___","cssWithMappingToString","list","needLayer","modules","dedupe","alreadyImportedModules","cssMapping","base64","sourceMapping","read","buffer","isLE","mLen","nBytes","eLen","eMax","eBias","nBits","Infinity","pow","write","rt","abs","floor","LN2","HASH_UNDEFINED","INFINITY","funcTag","genTag","symbolTag","reIsDeepProp","reIsPlainProp","reLeadingDot","rePropName","reEscapeChar","reIsHostCtor","freeGlobal","freeSelf","root","Function","arrayProto","funcProto","objectProto","coreJsData","maskSrcKey","funcToString","objectToString","reIsNative","Map","getNative","nativeCreate","symbolProto","symbolToString","Hash","clear","entry","ListCache","MapCache","assocIndexOf","array","getMapData","__data__","getValue","pattern","isFunction","isHostObject","func","toSource","baseIsNative","has","pop","stringToPath","memoize","baseToString","number","quote","toKey","resolver","memoized","cache","Cache","isObjectLike","defaultValue","isKey","baseGet","moment","defineLocale","months","monthsShort","weekdays","weekdaysShort","weekdaysMin","meridiemParse","isPM","meridiem","hours","minutes","isLower","longDateFormat","LT","LTS","LL","LLL","LLLL","calendar","sameDay","nextDay","nextWeek","lastDay","lastWeek","sameElse","future","past","ss","mm","hh","dd","MM","yy","dayOfMonthOrdinalParse","ordinal","week","dow","doy","pluralForm","plurals","pluralize","withoutSuffix","isFuture","str","weekdaysParseExact","hour","minute","postformat","symbolMap","preparse","numberMap","suffixes","relativeTimeWithPlural","forms","standalone","isFormat","day","period","ww","lastDigit","last2Digits","meridiemHour","monthsShortRegex","monthsParseExact","relativeTimeWithMutation","mutationTable","substring","softMutation","mutation","lastNumber","monthsParse","monthsRegex","minWeekdaysParse","weekdaysParse","fullWeekdaysParse","shortWeekdaysParse","monthsStrictRegex","monthsShortStrictRegex","longMonthsParse","shortMonthsParse","ll","lll","llll","processRelativeTime","monthsNominativeEl","monthsGenitiveEl","momentToFormat","_monthsGenitiveEl","month","_monthsNominativeEl","calendarEl","mom","_calendarEl","monthsShortDot","invalidDate","numbersPast","numbersFuture","verbalNumber","monthsShortWithDots","monthsShortWithoutDots","weekEndings","eras","since","narrow","abbr","until","eraYearOrdinalRegex","eraYearOrdinalParse","now","$0","$1","$2","isUpper","eifelerRegelAppliesToNumber","substr","units","translateSingular","special","relativeTimeWithSingular","words","correctGrammaticalCase","wordKey","relativeTimeMr","monthsNominative","monthsSubjective","days","word","numbersNouns","numberNoun","hundred","ten","one","numberAsNoun","time","hm","processHoursFunction","nominative","accusative","genitive","webpackContext","req","webpackContextResolve","__webpack_require__","resolve","hookCallback","hooks","hasOwnProp","isObjectEmpty","isUndefined","isNumber","isDate","arrLen","extend","createUTC","strict","createLocalOrUTC","utc","getParsingFlags","_pf","unusedTokens","unusedInput","overflow","charsLeftOver","nullInput","invalidEra","invalidMonth","invalidFormat","userInvalidated","iso","parsedDateParts","era","rfc2822","weekdayMismatch","isValid","_isValid","parsedParts","isNowValid","_d","getTime","invalidWeekday","_strict","bigHour","isFrozen","createInvalid","fun","momentProperties","updateInProgress","copyConfig","to","from","prop","val","momentPropertiesLen","_isAMomentObject","_f","_tzm","_isUTC","_offset","_locale","Moment","config","updateOffset","isMoment","suppressDeprecationWarnings","deprecate","firstTime","deprecationHandler","argLen","deprecations","deprecateSimple","mergeConfigs","parentConfig","childConfig","Locale","zeroFill","targetLength","forceSign","absNumber","zerosToFill","formattingTokens","localFormattingTokens","formatFunctions","formatTokenFunctions","addFormatToken","padded","callback","formatMoment","expandFormat","makeFormatFunction","replaceLongDateFormatTokens","aliases","addUnitAlias","unit","shorthand","lowerCase","normalizeUnits","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","priorities","addUnitPriority","priority","isLeapYear","year","absFloor","ceil","toInt","argumentForCoercion","coercedNumber","isFinite","makeGetSet","keepTime","set$1","date","daysInMonth","regexes","match1","match2","match3","match4","match6","match1to2","match3to4","match5to6","match1to3","match1to4","match1to6","matchUnsigned","matchSigned","matchOffset","matchShortOffset","matchWord","addRegexToken","regex","strictRegex","isStrict","getParseRegexForToken","regexEscape","matched","p1","p2","p3","p4","tokens","addParseToken","tokenLen","addWeekParseToken","_w","addTimeToArrayFromToken","_a","YEAR","MONTH","DATE","HOUR","MINUTE","SECOND","MILLISECOND","WEEK","WEEKDAY","modMonth","defaultLocaleMonths","defaultLocaleMonthsShort","MONTHS_IN_FORMAT","defaultMonthsShortRegex","defaultMonthsRegex","handleStrictParse","monthName","ii","llc","toLocaleLowerCase","_monthsParse","_longMonthsParse","_shortMonthsParse","setMonth","dayOfMonth","getSetMonth","computeMonthsParse","cmpLenRev","shortPieces","longPieces","mixedPieces","sort","_monthsRegex","_monthsShortRegex","_monthsStrictRegex","_monthsShortStrictRegex","daysInYear","parseTwoDigitYear","getSetYear","createDate","ms","getFullYear","setFullYear","createUTCDate","UTC","getUTCFullYear","setUTCFullYear","firstWeekOffset","fwd","getUTCDay","dayOfYearFromWeeks","weekday","resYear","resDayOfYear","dayOfYear","weekOfYear","resWeek","weekOffset","weeksInYear","weekOffsetNext","shiftWeekdays","ws","weekdaysMinRegex","weekdaysShortRegex","weekdaysRegex","defaultLocaleWeekdays","defaultLocaleWeekdaysShort","defaultLocaleWeekdaysMin","defaultWeekdaysRegex","defaultWeekdaysShortRegex","defaultWeekdaysMinRegex","handleStrictParse$1","weekdayName","_weekdaysParse","_shortWeekdaysParse","_minWeekdaysParse","computeWeekdaysParse","minp","shortp","longp","minPieces","_weekdaysRegex","_weekdaysShortRegex","_weekdaysMinRegex","_weekdaysStrictRegex","_weekdaysShortStrictRegex","_weekdaysMinStrictRegex","hFormat","lowercase","matchMeridiem","_meridiemParse","kInput","_isPm","_meridiem","pos","pos1","pos2","getSetHour","globalLocale","baseConfig","locales","localeFamilies","commonPrefix","arr1","arr2","minl","normalizeLocale","loadLocale","oldLocale","isLocaleNameSane","_abbr","getSetGlobalLocale","_config","chooseLocale","checkOverflow","_overflowDayOfYear","_overflowWeeks","_overflowWeekday","extendedIsoRegex","basicIsoRegex","tzRegex","isoDates","isoTimes","aspNetJsonRegex","obsOffsets","UT","GMT","EDT","EST","CDT","CST","MDT","MST","PDT","PST","configFromISO","allowTime","dateFormat","timeFormat","tzFormat","isoDatesLen","isoTimesLen","configFromStringAndFormat","untruncateYear","yearStr","configFromRFC2822","parsedArray","monthStr","dayStr","hourStr","minuteStr","secondStr","weekdayStr","parsedInput","getDay","checkWeekday","obsOffset","militaryOffset","numOffset","calculateOffset","setUTCMinutes","getUTCMinutes","defaults","configFromArray","currentDate","expectedWeekday","yearToUse","nowValue","_useUTC","getUTCMonth","getUTCDate","getMonth","getDate","currentDateArray","weekYear","temp","weekdayOverflow","curWeek","GG","W","createLocal","_week","gg","_dayOfYear","dayOfYearFromWeekInfo","_nextDay","ISO_8601","RFC_2822","skipped","stringLength","totalParsedInputLength","isPm","meridiemFixWrap","erasConvertYear","prepareConfig","tempConfig","bestMoment","scoreToBeat","currentScore","validFormatFound","bestFormatIsValid","configfLen","score","configFromStringAndArray","createFromInputFallback","configFromString","dayOrDate","second","millisecond","configFromObject","configFromInput","isUTC","prototypeMin","prototypeMax","pickBy","moments","ordering","Duration","duration","years","quarters","quarter","weeks","isoWeek","milliseconds","unitHasDecimal","orderLen","parseFloat","isDurationValid","_milliseconds","_days","_months","_data","_bubble","isDuration","absRound","utcOffset","sign","offsetFromString","chunkOffset","matcher","matches","cloneWithOffset","diff","clone","setTime","local","getDateOffset","getTimezoneOffset","isUtc","aspNetRegex","isoRegex","createDuration","ret","diffRes","parseIso","isBefore","positiveMomentsDifference","inp","isAfter","createAdder","direction","addSubtract","isAdding","invalid","subtract","isString","isMomentInput","arrayTest","dataTypeTest","isNumberOrStringArray","property","objectTest","propertyTest","propertyLen","isMomentInputObject","monthDiff","wholeMonthDiff","anchor","newLocaleData","defaultFormat","defaultFormatUtc","MS_PER_SECOND","MS_PER_MINUTE","MS_PER_HOUR","MS_PER_400_YEARS","mod$1","dividend","divisor","localStartOfDate","utcStartOfDate","matchEraAbbr","erasAbbrRegex","computeErasParse","abbrPieces","namePieces","narrowPieces","_erasRegex","_erasNameRegex","_erasAbbrRegex","_erasNarrowRegex","addWeekYearFormatToken","getter","getSetWeekYearHelper","weeksTarget","setWeekAll","dayOfYearData","erasNameRegex","erasNarrowRegex","erasParse","_eraYearOrdinalRegex","isoWeekYear","_dayOfMonthOrdinalParse","_ordinalParse","_dayOfMonthOrdinalParseLenient","getSetDayOfMonth","getSetMinute","getSetMillisecond","getSetSecond","parseMs","preParsePostFormat","formats","isCalendarSpec","sod","startOf","calendarFormat","asFloat","zoneDelta","endOf","startOfDate","isoWeekday","inputString","humanize","fromNow","toNow","invalidAt","localInput","isBetween","inclusivity","localFrom","localTo","isSame","inputMs","isSameOrAfter","isSameOrBefore","parsingFlags","prioritized","unitsObj","getPrioritizedUnits","prioritizedLen","toArray","toDate","toISOString","keepOffset","inspect","prefix","suffix","zone","isLocal","toJSON","unix","creationData","eraName","eraNarrow","eraAbbr","eraYear","dir","isoWeeks","weekInfo","weeksInWeekYear","isoWeeksInYear","isoWeeksInISOWeekYear","parseWeekday","parseIsoWeekday","keepLocalTime","keepMinutes","localAdjust","_changeInProgress","parseZone","tZone","hasAlignedHourOffset","isDST","isUtcOffset","zoneAbbr","zoneName","dates","isDSTShifted","_isDSTShifted","array1","array2","dontConvert","lengthDiff","diffs","compareArrays","proto$1","get$1","field","listMonthsImpl","out","listWeekdaysImpl","localeSorted","shift","_calendar","_longDateFormat","formatUpper","tok","_invalidDate","_ordinal","pastFuture","_eras","_monthsShort","_monthsParseExact","firstDayOfYear","firstDayOfWeek","_weekdays","_weekdaysMin","_weekdaysShort","_weekdaysParseExact","_fullWeekdaysParse","langData","mathAbs","addSubtract$1","absCeil","daysToMonths","monthsToDays","makeAs","alias","as","asMilliseconds","asSeconds","asMinutes","asHours","asDays","asWeeks","asMonths","asQuarters","asYears","makeGetter","thresholds","substituteTimeAgo","abs$1","toISOString$1","totalSign","ymSign","daysSign","hmsSign","total","toFixed","proto$2","monthsFromDays","argWithSuffix","argThresholds","withSuffix","th","posNegDuration","relativeTime$1","toIsoString","tmpLocale","relativeTimeRounding","roundingFunction","relativeTimeThreshold","threshold","myMoment","HTML5_FMT","DATETIME_LOCAL","DATETIME_LOCAL_SECONDS","DATETIME_LOCAL_MS","TIME","TIME_SECONDS","TIME_MS","Gettext","catalogs","domain","listeners","eventName","off","listener","emit","eventData","setTextDomain","dnpgettext","dgettext","msgidPlural","dngettext","pgettext","msgctxt","dpgettext","npgettext","translation","defaultTranslation","_getTranslation","pluralsFunc","getLanguageCode","getComment","textdomain","setlocale","addTextdomain","ach","examples","sample","nplurals","pluralsText","af","ak","am","an","ar","arn","ast","ay","az","be","bg","bn","bo","br","brx","bs","ca","cgg","cs","csb","cy","da","de","doi","dz","en","eo","es","et","eu","fa","ff","fi","fil","fo","fr","fur","fy","ga","gd","gl","gu","gun","ha","he","hne","hr","hu","hy","is","ja","jbo","jv","ka","kk","km","kn","ko","ku","kw","ky","lb","ln","lo","lt","lv","mai","mfe","mg","mi","mk","ml","mn","mni","mnk","mr","mt","my","nah","nap","nb","ne","nl","nn","no","nso","oc","or","pa","pap","pl","pms","ps","pt","rm","ro","ru","rw","sah","sat","sco","sd","se","si","sk","sl","so","son","sq","sr","su","sv","sw","ta","te","tg","ti","tk","tr","tt","ug","uk","ur","uz","vi","wa","wo","yo","zh","ieee754","customInspectSymbol","Buffer","INSPECT_MAX_BYTES","K_MAX_LENGTH","createBuffer","RangeError","buf","encodingOrOffset","allocUnsafe","encoding","isEncoding","actual","fromString","ArrayBuffer","isView","arrayView","isInstance","copy","fromArrayBuffer","byteOffset","fromArrayLike","fromArrayView","SharedArrayBuffer","isBuffer","numberIsNaN","fromObject","assertSize","mustMatch","loweredCase","utf8ToBytes","base64ToBytes","slowToString","hexSlice","utf8Slice","asciiSlice","latin1Slice","base64Slice","utf16leSlice","swap","bidirectionalIndexOf","arrayIndexOf","lastIndexOf","indexSize","arrLength","valLength","readUInt16BE","foundIndex","found","hexWrite","remaining","strLen","parsed","utf8Write","blitBuffer","asciiWrite","byteArray","asciiToBytes","base64Write","ucs2Write","utf16leToBytes","firstByte","codePoint","bytesPerSequence","secondByte","thirdByte","fourthByte","tempCodePoint","codePoints","MAX_ARGUMENTS_LENGTH","fromCharCode","decodeCodePointsArray","TYPED_ARRAY_SUPPORT","foo","typedArraySupport","poolSize","alloc","allocUnsafeSlow","_isBuffer","swap16","swap32","swap64","toLocaleString","equals","thisStart","thisEnd","thisCopy","targetCopy","_arr","hexSliceLookupTable","bytes","checkOffset","ext","checkInt","wrtBigUInt64LE","checkIntBI","BigInt","wrtBigUInt64BE","checkIEEE754","writeFloat","littleEndian","noAssert","writeDouble","newBuf","subarray","readUintLE","readUIntLE","mul","readUintBE","readUIntBE","readUint8","readUInt8","readUint16LE","readUInt16LE","readUint16BE","readUint32LE","readUInt32LE","readUint32BE","readUInt32BE","readBigUInt64LE","defineBigIntMethod","validateNumber","last","boundsError","readBigUInt64BE","readIntLE","readIntBE","readInt8","readInt16LE","readInt16BE","readInt32LE","readInt32BE","readBigInt64LE","readBigInt64BE","readFloatLE","readFloatBE","readDoubleLE","readDoubleBE","writeUintLE","writeUIntLE","writeUintBE","writeUIntBE","writeUint8","writeUInt8","writeUint16LE","writeUInt16LE","writeUint16BE","writeUInt16BE","writeUint32LE","writeUInt32LE","writeUint32BE","writeUInt32BE","writeBigUInt64LE","writeBigUInt64BE","writeIntLE","sub","writeIntBE","writeInt8","writeInt16LE","writeInt16BE","writeInt32LE","writeInt32BE","writeBigInt64LE","writeBigInt64BE","writeFloatLE","writeFloatBE","writeDoubleLE","writeDoubleBE","targetStart","copyWithin","errors","getMessage","Base","super","addNumericalSeparator","range","ERR_OUT_OF_RANGE","checkBounds","ERR_INVALID_ARG_TYPE","ERR_BUFFER_OUT_OF_BOUNDS","received","isInteger","INVALID_BASE64_RE","leadSurrogate","base64clean","dst","alphabet","table","i16","BufferBigIntNotDefined","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","defaultClearTimeout","runTimeout","setTimeout","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","drainQueue","timeout","run","marker","runClearTimeout","Item","nextTick","browser","argv","versions","addListener","once","removeListener","removeAllListeners","prependListener","prependOnceListener","binding","cwd","chdir","umask","stylesInDOM","getIndexByIdentifier","modulesToDom","idCountMap","identifiers","indexByIdentifier","addElementStyle","api","newObj","lastIdentifiers","newList","newLastIdentifiers","_index","styleTarget","getTarget","element","styleElement","nonce","removeStyleElement","thisArg","kindOf","thing","kindOfTest","typeOfTest","isArrayBuffer","isPlainObject","isFile","isBlob","isFileList","isURLSearchParams","allOwnKeys","findKey","_global","globalThis","isContextDefined","isTypedArray","TypedArray","isHTMLForm","reduceDescriptors","reducer","descriptors","getOwnPropertyDescriptors","reducedDescriptors","ALPHA","DIGIT","ALPHABET","ALPHA_DIGIT","isAsyncFn","isFormData","FormData","append","isArrayBufferView","isBoolean","isStream","pipe","merge","caseless","assignValue","targetKey","stripBOM","inherits","superConstructor","toFlatObject","sourceObj","destObj","propFilter","merged","endsWith","searchString","position","forEachEntry","pair","matchAll","regExp","freezeMethods","toObjectSet","arrayOrString","delimiter","define","toCamelCase","toFiniteNumber","generateString","isSpecCompliantForm","toJSONObject","visit","reducedValue","isThenable","then","catch","AxiosError","request","captureStackTrace","utils","fileName","lineNumber","columnNumber","customProps","axiosError","cause","isVisitable","removeBrackets","renderKey","dots","predicates","formData","metaTokens","indexes","option","visitor","defaultVisitor","useBlob","Blob","convertValue","isFlatArray","exposedHelpers","encode","charMap","AxiosURLSearchParams","params","_pairs","encoder","_encode","buildURL","serializeFn","serialize","serializedParams","hashmarkIndex","handlers","use","fulfilled","rejected","synchronous","runWhen","eject","silentJSONParsing","forcedJSONParsing","clarifyTimeoutError","isBrowser","classes","URLSearchParams","isStandardBrowserEnv","product","navigator","isStandardBrowserWebWorkerEnv","WorkerGlobalScope","importScripts","protocols","buildPath","isNumericKey","isLast","arrayToObject","parsePropPath","DEFAULT_CONTENT_TYPE","transitional","adapter","transformRequest","contentType","getContentType","hasJSONContentType","isObjectPayload","setContentType","helpers","isNode","toURLEncodedForm","formSerializer","_FormData","rawValue","parser","stringifySafely","transformResponse","JSONRequested","responseType","strictJSONParsing","ERR_BAD_RESPONSE","xsrfCookieName","xsrfHeaderName","maxContentLength","maxBodyLength","validateStatus","common","method","ignoreDuplicateOf","$internals","normalizeHeader","header","normalizeValue","matchHeaderValue","isHeaderNameFilter","AxiosHeaders","valueOrRewrite","rewrite","setHeader","_value","_header","_rewrite","lHeader","setHeaders","rawHeaders","line","parseHeaders","tokensRE","parseTokens","delete","deleted","deleteHeader","normalize","normalized","char","formatHeader","targets","asStrings","static","accessors","defineAccessor","accessorName","methodName","arg1","arg2","arg3","buildAccessors","accessor","transformData","fns","isCancel","__CANCEL__","CanceledError","ERR_CANCELED","expires","secure","cookie","toGMTString","decodeURIComponent","buildFullPath","baseURL","requestedURL","relativeURL","combineURLs","msie","userAgent","urlParsingNode","originURL","resolveURL","protocol","host","search","hostname","port","pathname","requestURL","progressEventReducer","isDownloadStream","bytesNotified","_speedometer","samplesCount","timestamps","firstSampleTS","tail","chunkLength","startedAt","bytesCount","passed","loaded","lengthComputable","progressBytes","rate","progress","estimated","event","knownAdapters","http","xhr","XMLHttpRequest","Promise","reject","requestData","requestHeaders","onCanceled","cancelToken","signal","auth","username","password","fullPath","onloadend","responseHeaders","getAllResponseHeaders","ERR_BAD_REQUEST","settle","err","responseText","statusText","paramsSerializer","onreadystatechange","responseURL","onabort","ECONNABORTED","ERR_NETWORK","ontimeout","timeoutErrorMessage","ETIMEDOUT","xsrfValue","withCredentials","isURLSameOrigin","cookies","setRequestHeader","onDownloadProgress","onUploadProgress","upload","cancel","abort","aborted","parseProtocol","send","throwIfCancellationRequested","throwIfRequested","dispatchRequest","adapters","nameOrAdapter","reason","headersToObject","mergeConfig","config1","config2","getMergedValue","mergeDeepProperties","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","timeoutMessage","decompress","beforeRedirect","transport","httpAgent","httpsAgent","socketPath","responseEncoding","configValue","validators","deprecatedWarnings","opt","opts","ERR_DEPRECATED","assertOptions","schema","allowUnknown","ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","Axios","instanceConfig","interceptors","configOrUrl","contextHeaders","boolean","function","requestInterceptorChain","synchronousRequestInterceptors","interceptor","unshift","responseInterceptorChain","promise","chain","newConfig","onFulfilled","onRejected","getUri","generateHTTPMethod","isForm","CancelToken","executor","resolvePromise","_listeners","onfulfilled","_resolve","HttpStatusCode","Continue","SwitchingProtocols","Processing","EarlyHints","Ok","Created","Accepted","NonAuthoritativeInformation","NoContent","ResetContent","PartialContent","MultiStatus","AlreadyReported","ImUsed","MultipleChoices","MovedPermanently","Found","SeeOther","NotModified","UseProxy","Unused","TemporaryRedirect","PermanentRedirect","BadRequest","Unauthorized","PaymentRequired","Forbidden","NotFound","MethodNotAllowed","NotAcceptable","ProxyAuthenticationRequired","RequestTimeout","Conflict","Gone","LengthRequired","PreconditionFailed","PayloadTooLarge","UriTooLong","UnsupportedMediaType","RangeNotSatisfiable","ExpectationFailed","ImATeapot","MisdirectedRequest","UnprocessableEntity","Locked","FailedDependency","TooEarly","UpgradeRequired","PreconditionRequired","TooManyRequests","RequestHeaderFieldsTooLarge","UnavailableForLegalReasons","InternalServerError","NotImplemented","BadGateway","ServiceUnavailable","GatewayTimeout","HttpVersionNotSupported","VariantAlsoNegotiates","InsufficientStorage","LoopDetected","NotExtended","NetworkAuthenticationRequired","axios","createInstance","defaultConfig","VERSION","toFormData","Cancel","all","promises","spread","isAxiosError","payload","formToJSON","ProxyBus","bus","getVersion","valid","handler","SimpleBus","Proxy","_eventBus","_nc_event_bus","__assign","__awaiter","_arguments","generator","step","__generator","sent","trys","ops","verb","op","SuppressedError","RETRY_KEY","RETRY_DELAY_KEY","client","requesttoken","cancelableClient","onError$2","retryDelay_1","retryIfMaintenanceMode","onError$1","reloadExpiredSession","reload","bail","toStr","gOPD","isPlainObject$1","hasOwnConstructor","hasIsPrototypeOf","setProperty","newValue","getProperty","extend2","copyIsArray","deep","isPlainObject2","stringifyPosition","point$1","point2","column","VFileMessage","place","origin","position2","index2","fatal","ruleId","expected","file","note","assertPath$1","seenNonSlash","firstNonSlashEnd","extIndex","unmatchedSlash","startPart","startDot","preDotState","code2","segments","joined","absolute","allowAboveRoot","lastSlashIndex","lastSegmentLength","lastSlash","normalizeString","normalize$1","proc","isUrl","fileURLOrPath","order","VFile","messages","history","stored","prop2","getPathFromURLPosix","urlToPath","assertNonEmpty","dirname","dirname2","assertPath","basename","basename2","assertPart","extname","extname2","stem","fail","part","unified","transformers","pipeline","middlewareIndex","middleware","parameters","fnExpectsCallback","wrap$1","middelware","trough","attachers","frozen","namespace","freezeIndex","processor","assertUnfrozen","own$7","Parser","Compiler","attacher","transformer","POSITIVE_INFINITY","settings","addPlugin","addList","addPreset","value2","plugin","options2","plugins","doc","vfile","assertParser","newable","node","assertCompiler","assertNode","compile","tree","runSync","complete","assertDone","file2","processSync","destination","asyncName","looksLikeAVFile","normalizeComponent","scriptExports","render3","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","originalRender","existing","_vue_richtext_widgets","_registerWidget","onDestroy","_sfc_main$2","compact","hasCustomWidget","richObjectType","noAccess","accessible","descriptionStyle","display","lineClamp","webkitLineClamp","compactLink","link2","openGraphObject","link","startsWith","renderWidget","ResizeObserver","contentRect","observe","disconnect","customWidget","richObject","ReferenceWidget","_vm","thumb","URL_PATTERN","URL_PATTERN_AUTOLINK","_sfc_main$1","referenceData","loading","firstReference","displayedReferences","fetch","ReferenceList","one$1","includeImageAlt","all$1","children","list2","chunkStart","hasOwnProperty$1","syntaxExtension","all2","extension2","constructs","before","asciiAlpha","regexCheck","asciiDigit","asciiHexDigit","asciiAlphanumeric","asciiPunctuation","asciiAtext","asciiControl","markdownLineEndingOrSpace","markdownLineEnding","markdownSpace","unicodeWhitespace","unicodePunctuation","factorySpace","effects","ok2","enter","consume","exit","content$1","tokenize","contentStart","attempt","contentInitial","lineStart","previous2","previous","document$2","childFlow","childToken","lineStartOffset","continued","containerState","continuation","documentContinue","checkNewContainers","_closeFlow","closeFlow","indexBeforeExits","events","indexBeforeFlow","exitContainers","documentContinued","currentConstruct","concrete","flowStart","interrupt","_gfmTableDynamicInterruptHack","check","containerConstruct","thereIsANewContainer","thereIsNoNewContainer","lazy","containerContinue","flow","_tokenizer","flowContinue","writeToChild","eof","stream","sliceStream","defineSkip","seen","nok","disable","null","classifyCharacter","resolveAll","constructs2","attention","attentionMarkers2","attentionMarkers","sequence","after","close","_open","_close","group","text2","openingSequence","closingSequence","nextEvents","sliceSerialize","movePoint","insideSpan","_bufferIndex","autolink","schemeOrEmailAtext","emailAtext","schemeInsideOrEmailAtext","urlInside","emailAtSignOrDot","emailLabel","emailValue","blankLine","partial","blockQuote","_container","characterEscape","element$1","decodeNamedCharacterReference","characterReference2","textContent","characterReference","codeFenced","closingFenceConstruct","effects2","ok3","nok2","sizeOpen","closingSequenceEnd","nonLazyLine","self2","initialPrefix","sequenceOpen","infoOpen","openAfter","infoAfter","meta","contentContinue","codeIndented","afterStartPrefix","afterPrefix","indentedContent","content2","codeText","gap","tailExitIndex","headEnterIndex","subtokenize","jumps","lineIndex","otherIndex","otherEvent","subevents","more","_isInFirstContentOfListItem","subcontent","eventIndex","startPosition","startPositions","tokenizer","childEvents","gaps","current","adjust","breaks","_gfmTasklistFirstContentOfListItem","start2","contentEnd","continuationConstruct","prefixed","factoryDestination","literalType","literalMarkerType","rawType","stringType","balance","destinationEnclosedBefore","destinationRaw","destinationEnclosed","destinationEnclosedEscape","destinationRawEscape","factoryLabel","markerType","atBreak","labelEscape","factoryTitle","atFirstTitleBreak","atTitleBreak","titleEscape","factoryWhitespace","normalizeIdentifier","definition","labelAfter","titleConstruct","defined","hardBreakEscape","headingAtx","fenceOpenInside","headingBreak","htmlBlockNames","htmlRawNames","htmlFlow","startTag","declarationStart","tagCloseStart","continuationDeclarationInside","tagName","commentOpenInside","cdataOpenInside","basicSelfClosing","completeAttributeNameBefore","completeClosingTagAfter","completeEnd","completeAttributeName","completeAttributeNameAfter","completeAttributeValueBefore","completeAttributeValueQuoted","completeAttributeValueUnquoted","completeAttributeValueQuotedAfter","completeAfter","continuationCommentInside","continuationRawTagOpen","continuationClose","continuationCharacterDataInside","continuationAtLineEnding","nextBlankConstruct","htmlContinueStart","htmlLineEnd","continuationRawEndTag","resolveTo","htmlText","returnState","declarationOpen","instruction","tagOpen","commentOpen","cdataOpen","declaration","commentStart","commentStartDash","comment","commentClose","atLineEnding","cdata","cdataClose","cdataEnd","instructionClose","tagClose","tagCloseBetween","tagOpenBetween","tagOpenAttributeName","tagOpenAttributeNameAfter","tagOpenAttributeValueBefore","tagOpenAttributeValueQuoted","tagOpenAttributeValueUnquoted","tagOpenAttributeValueQuotedAfter","labelEnd","labelStart","_balanced","_inactive","balanced","afterLabelEnd","resourceConstruct","fullReferenceConstruct","collapsedReferenceConstruct","destinationAfter","between","afterLabel","labelStartImage","labelStartLink","lineEnding","thematicBreak$1","list$1","initialSize","atMarker","inside","onBlank","listItemPrefixWhitespaceConstruct","endOfPrefix","otherPrefix","initialBlankLine","furtherBlankLines","notInCurrentItem","indentConstruct","setextUnderline","paragraph2","definition2","heading2","flow$1","initial","flowInitial","afterConstruct","createResolver","string$1","initializeFactory","text$3","notText","resolveAllLineSuffixes","extraResolver","chunks","tabs","bufferIndex","chunk","createTokenizer","initialize","columnStart","resolveAllConstructs","accountForPotentialSkip","fields","constructFactory","addResult","onsuccessfulcheck","expandTabs","atTab","serializeChunks","chunkIndex","go","startIndex","startBufferIndex","endIndex","endBufferIndex","view","sliceChunks","restore","onreturn","bogusState","listOfConstructs","constructIndex","handleListOfConstructs","def","handleConstruct","startPoint","startPrevious","startCurrentConstruct","startEventsIndex","startStack","store","from2","document$1","text$2","defaultConstructs","decodeNumericCharacterReference","base2","characterEscapeOrReference","decode","head2","hex","own$6","fromMarkdown","configure","transforms","canContainEols","opener","autolinkProtocol","onenterdata","autolinkEmail","atxHeading","codeFlow","codeFencedFenceInfo","codeFencedFenceMeta","codeTextData","codeFlowValue","definitionDestinationString","definitionLabelString","definitionTitleString","emphasis","hardBreak2","hardBreakTrailing","html2","htmlFlowData","htmlTextData","image","listItem","_spread","listItemValue","getData","setData","listOrdered","listUnordered","paragraph","referenceString","resourceDestinationString","resourceTitleString","setextHeading","strong","thematicBreak","closer","atxHeadingSequence","depth","onexitdata","characterEscapeValue","characterReferenceMarkerHexadecimal","onexitcharacterreferencemarker","characterReferenceMarkerNumeric","characterReferenceValue","data2","resume","codeFencedFence","onexithardbreak","referenceType","fragment","labelText","ancestor","string2","decodeString","resource","setextHeadingLineSequence","setextHeadingText","mdastExtensions","tokenStack","listStack","exit2","prepareList","defaultOnError","listItem3","firstBlankLineIndex","containerBalance","listSpread","tailIndex","tailEvent","create2","and","errorHandler","onExitError","ordered","compiler","postprocess","extensions","combineExtensions","parse$2","atCarriageReturn","endPosition","preprocess","combined","extension","remarkParse","convert$2","ok$1","castFactory","tests","checks2","index3","anyFactory$1","propsFactory","SKIP$2","visit$2","visitor2","factory2","parents","visit2","subresult","grandparents","toResult$1","visitParents$2","find$1","remarkBreaks","own$5","unknown","augment","passThrough","returnNode","unknownHandler","nodes","pointStart","pointEnd","point3","own$4","definitions","definition3","clean","characterReferences","sanitizeUri","encode$1","skip","normalizeUri","colon","questionMark","numberSign","slash","footnoteReference","safeId","footnoteOrder","counter","footnoteCounts","reuseCounter","clobberPrefix","dataFootnoteRef","ariaDescribedBy","encodeCache","exclude","keepEscaped","nextCode","defaultChars","ch","getEncodeCache","componentChars","encode_1","revert","subtype","contents","listItemLoose","trimLine","blockquote","break","footnote","footnoteById","heading","html","dangerous","imageReference","inlineCode","linkReference","listLoose","wrapped","child","rows","align","row","cellIndex","cell","search2","lines","trimLines","toml","ignore","yaml","footnoteDefinition","own$3","toHast","allowDangerousHtml","footnoteLabel","footnoteLabelTagName","footnoteLabelProperties","footnoteBackLabel","hName","hProperties","hChildren","ctx","foot","listItems","referenceIndex","backReferences","backReference","dataFootnoteBackref","ariaLabel","tailTail","listItem2","dataFootnotes","footer","remark2rehype","bridge","mutate","Schema","normal","space2","definitions2","booleanish","overloadedBoolean","commaSeparated","spaceSeparated","commaOrSpaceSeparated","mustUseProperty","powers","increment","types","checks","DefinedInfo","mask","mark","own$2","transform","xlink","xLinkActuate","xLinkArcRole","xLinkHref","xLinkRole","xLinkShow","xLinkTitle","xLinkType","xml","xmlLang","xmlBase","xmlSpace","caseSensitiveTransform","caseInsensitiveTransform","xmlns","xmlnsxlink","xmlnsXLink","aria","ariaActiveDescendant","ariaAtomic","ariaAutoComplete","ariaBusy","ariaChecked","ariaColCount","ariaColIndex","ariaColSpan","ariaControls","ariaCurrent","ariaDetails","ariaDisabled","ariaDropEffect","ariaErrorMessage","ariaExpanded","ariaFlowTo","ariaGrabbed","ariaHasPopup","ariaHidden","ariaInvalid","ariaKeyShortcuts","ariaLabelledBy","ariaLevel","ariaLive","ariaModal","ariaMultiLine","ariaMultiSelectable","ariaOrientation","ariaOwns","ariaPlaceholder","ariaPosInSet","ariaPressed","ariaReadOnly","ariaRelevant","ariaRequired","ariaRoleDescription","ariaRowCount","ariaRowIndex","ariaRowSpan","ariaSelected","ariaSetSize","ariaSort","ariaValueMax","ariaValueMin","ariaValueNow","ariaValueText","html$1","acceptcharset","classname","htmlfor","httpequiv","accept","acceptCharset","accessKey","allow","allowFullScreen","allowPaymentRequest","allowUserMedia","autoCapitalize","autoComplete","autoFocus","autoPlay","capture","charSet","cite","cols","colSpan","contentEditable","controls","controlsList","coords","crossOrigin","dateTime","decoding","defer","dirName","draggable","encType","enterKeyHint","form","formAction","formEncType","formMethod","formNoValidate","formTarget","hidden","high","hrefLang","htmlFor","httpEquiv","imageSizes","imageSrcSet","inputMode","integrity","isMap","itemId","itemProp","itemRef","itemScope","itemType","loop","manifest","maxLength","minLength","multiple","muted","noModule","noValidate","onAbort","onAfterPrint","onAuxClick","onBeforePrint","onBeforeUnload","onBlur","onCancel","onCanPlay","onCanPlayThrough","onChange","onClose","onContextLost","onContextMenu","onContextRestored","onCopy","onCueChange","onCut","onDblClick","onDrag","onDragEnd","onDragEnter","onDragExit","onDragLeave","onDragOver","onDragStart","onDrop","onDurationChange","onEmptied","onEnded","onError","onFocus","onFormData","onHashChange","onInput","onInvalid","onKeyDown","onKeyPress","onKeyUp","onLanguageChange","onLoad","onLoadedData","onLoadedMetadata","onLoadEnd","onLoadStart","onMessage","onMessageError","onMouseDown","onMouseEnter","onMouseLeave","onMouseMove","onMouseOut","onMouseOver","onMouseUp","onOffline","onOnline","onPageHide","onPageShow","onPaste","onPause","onPlay","onPlaying","onPopState","onProgress","onRateChange","onRejectionHandled","onReset","onResize","onScroll","onSecurityPolicyViolation","onSeeked","onSeeking","onSelect","onSlotChange","onStalled","onStorage","onSubmit","onSuspend","onTimeUpdate","onToggle","onUnhandledRejection","onUnload","onVolumeChange","onWaiting","onWheel","optimum","ping","playsInline","poster","preload","readOnly","referrerPolicy","reversed","rowSpan","sandbox","scope","scoped","seamless","selected","shape","sizes","slot","span","spellCheck","srcDoc","srcLang","srcSet","tabIndex","typeMustMatch","useMap","aLink","archive","axis","background","bgColor","border","borderColor","bottomMargin","cellPadding","cellSpacing","charOff","classId","codeBase","codeType","declare","face","frame","frameBorder","hSpace","leftMargin","longDesc","lowSrc","marginHeight","marginWidth","noResize","noHref","noShade","noWrap","profile","prompt","rev","rightMargin","rules","scheme","scrolling","standby","summary","topMargin","valueType","vAlign","vLink","vSpace","allowTransparency","autoCorrect","autoSave","disablePictureInPicture","disableRemotePlayback","results","security","unselectable","svg$1","accentHeight","alignmentBaseline","arabicForm","baselineShift","capHeight","clipPath","clipRule","colorInterpolation","colorInterpolationFilters","colorProfile","colorRendering","dataType","dominantBaseline","enableBackground","fillOpacity","fillRule","floodColor","floodOpacity","fontFamily","fontSizeAdjust","fontStretch","fontStyle","fontVariant","fontWeight","glyphName","glyphOrientationHorizontal","glyphOrientationVertical","horizAdvX","horizOriginX","horizOriginY","imageRendering","letterSpacing","lightingColor","markerEnd","markerMid","markerStart","navDown","navDownLeft","navDownRight","navLeft","navNext","navPrev","navRight","navUp","navUpLeft","navUpRight","onActivate","onBegin","onEnd","onFocusIn","onFocusOut","onMouseWheel","onRepeat","onShow","onZoom","overlinePosition","overlineThickness","paintOrder","panose1","pointerEvents","renderingIntent","shapeRendering","stopColor","stopOpacity","strikethroughPosition","strikethroughThickness","strokeDashArray","strokeDashOffset","strokeLineCap","strokeLineJoin","strokeMiterLimit","strokeOpacity","strokeWidth","textAnchor","textDecoration","textRendering","typeOf","underlinePosition","underlineThickness","unicodeBidi","unicodeRange","unitsPerEm","vAlphabetic","vHanging","vIdeographic","vMathematical","vectorEffect","vertAdvY","vertOriginX","vertOriginY","wordSpacing","writingMode","xHeight","playbackOrder","timelineBegin","about","accumulate","additive","alphabetic","amplitude","ascent","attributeName","attributeType","azimuth","bandwidth","baseFrequency","baseProfile","bbox","begin","bias","by","calcMode","clip","clipPathUnits","contentScriptType","contentStyleType","cursor","cx","defaultAction","descent","diffuseConstant","dur","dx","dy","edgeMode","editable","elevation","exponent","externalResourcesRequired","filterRes","filterUnits","focusable","focusHighlight","fx","g1","g2","glyphRef","gradientTransform","gradientUnits","hanging","hatchContentUnits","hatchUnits","ideographic","initialVisibility","in","in2","intercept","k1","k2","k3","k4","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","kerning","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","mathematical","mediaCharacterEncoding","mediaContentEncodings","mediaSize","mediaTime","mode","numOctaves","opacity","operator","orient","orientation","overlay","pathLength","patternContentUnits","patternTransform","patternUnits","phase","pitch","points","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","propagate","radius","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","requiredFonts","requiredFormats","restart","rotate","ry","scale","seed","side","slope","snapshotTime","specularConstant","specularExponent","spreadMethod","spacing","startOffset","stdDeviation","stemh","stemv","stitchTiles","stroke","surfaceScale","syncBehavior","syncBehaviorDefault","syncMaster","syncTolerance","syncToleranceDefault","systemLanguage","tableValues","targetX","targetY","textLength","transformBehavior","u1","u2","viewTarget","visibility","widths","x1","x2","xChannelSelector","y1","y2","yChannelSelector","zoomAndPan","dash","cap","kebab","camelcase","svg","COMMENT_REGEX","NEWLINE_REGEX","WHITESPACE_REGEX","PROPERTY_REGEX","COLON_REGEX","VALUE_REGEX","SEMICOLON_REGEX","TRIM_REGEX","EMPTY_STRING","styleToObject","declarations","lineno","updatePosition","Position","whitespace2","filename","silent","decl","decls","parse$1","hasIterator","ns","mathml","toReact","own$1","toH","react","_isVue","vue","vd","vdom","hyperscript","parentSchema","addAttribute","Type","rest","dashes","subprop","padRight","padLeft","parseStyle","convert$1","typeFactory","ok","anyFactory","matchesFactory","convertAll","unistUtilVisitParents","visitParents$1","convert","CONTINUE$1","SKIP$1","EXIT$1","one2","toResult","CONTINUE","SKIP","EXIT","unistUtilVisit","visit$1","visitParents","hastCssPropertyMap","valign","hastName","appendStyle","prevStyle","nextStyle","own","tableElements","Set","rehypeReact","component","passNode","tableCellStyle2","Fragment","ABSOLUTE_URL_REGEX","WINDOWS_PATH_REGEX","defaultRel","defaultProtocols","remarkExternalLinks","contentProperties","isAbsoluteUrl","Link","remarkAutolink","autolink2","useMarkdown","parseUrl","flat","linkComponent","textAfter","textBefore","lastChar","remarkPlaceholder","RichText","referenceLimit","markdownCssClasses","ol","ul","li","em","h1","h2","h3","h4","h5","h6","pre","renderPlaintext","prepareTextNode","argumentId","renderMarkdown","renderedMarkdown","toHast2","ActivityModel","rawActivity","activity_id","subject","datetime","_activity","subjectRichTemplate","subject_rich","subjectRichObjects","messageRichTemplate","message_rich","messageRichObjects","objectType","object_type","objectId","object_id","objectName","object_name","dateFromNow","formattedDate","timestamp","isRoot","isSamePath","parentPathIsRoot","parentFolder","website","thumbIsDefined","activity","dateInterval","messageText","messageArguments","mapRichObjectsToRichArguments","subjectText","subjectArguments","applyMonochromeIconColor","updateDateFromNow","setInterval","destroyed","clearInterval","richObjects","richObjectName","mapRichObjectToRichArgument","FileRichArgument","NcUserBubble","EmailRichArgument","SystemTagRichArgument","OpenGraphRichArgument","CalendarEventRichArgument","getLoggerBuilder","setApp","detectUser","Activity","NcEmptyContent","fileInfo","activities","resetState","getActivities","processActivities","_ref","logger","_interopDefaultLegacy","valid__default","major__default","getBus"],"sourceRoot":""} \ No newline at end of file diff --git a/js/activity-389.js b/js/activity-629.js similarity index 98% rename from js/activity-389.js rename to js/activity-629.js index 97f8d0f8b..4ed7bd2ec 100644 --- a/js/activity-389.js +++ b/js/activity-629.js @@ -1,3 +1,3 @@ -/*! For license information please see activity-389.js.LICENSE.txt */ -(self.webpackChunkactivity=self.webpackChunkactivity||[]).push([[389],{22200:(e,t,n)=>{"use strict";var a=n(57888),r=void 0,s=[];a.subscribe("csrf-token-update",(function(e){r=e.token,s.forEach((function(t){try{t(e.token)}catch(e){console.error("error updating CSRF token observer",e)}}))}));var i=function(e,t){return e?e.getAttribute(t):null},o=void 0;t.getCurrentUser=function(){if(void 0!==o)return o;var e=null===document||void 0===document?void 0:document.getElementsByTagName("head")[0];if(!e)return null;var t=i(e,"data-user");return o=null===t?null:{uid:t,displayName:i(e,"data-user-displayname"),isAdmin:"undefined"!=typeof OC&&OC.isUserAdmin()}},t.getRequestToken=function(){if(void 0===r){var e=null===document||void 0===document?void 0:document.getElementsByTagName("head")[0];r=e?e.getAttribute("data-requesttoken"):null}return r},t.onRequestTokenUpdate=function(e){s.push(e)}},67737:(e,t,n)=>{const a=n(85503),{MAX_LENGTH:r,MAX_SAFE_INTEGER:s}=n(35519),{safeRe:i,t:o}=n(88238),l=n(74433),{compareIdentifiers:u}=n(63242);class c{constructor(e,t){if(t=l(t),e instanceof c){if(e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease)return e;e=e.version}else if("string"!=typeof e)throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>r)throw new TypeError(`version is longer than ${r} characters`);a("SemVer",e,t),this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease;const n=e.trim().match(t.loose?i[o.LOOSE]:i[o.FULL]);if(!n)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>s||this.major<0)throw new TypeError("Invalid major version");if(this.minor>s||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>s||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map((e=>{if(/^[0-9]+$/.test(e)){const t=+e;if(t>=0&&t=0;)"number"==typeof this.prerelease[a]&&(this.prerelease[a]++,a=-2);if(-1===a){if(t===this.prerelease.join(".")&&!1===n)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(e)}}if(t){let a=[t,e];!1===n&&(a=[t]),0===u(this.prerelease[0],t)?isNaN(this.prerelease[1])&&(this.prerelease=a):this.prerelease=a}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}}e.exports=c},92426:(e,t,n)=>{const a=n(67737);e.exports=(e,t)=>new a(e,t).major},67488:(e,t,n)=>{const a=n(67737);e.exports=(e,t,n=!1)=>{if(e instanceof a)return e;try{return new a(e,t)}catch(e){if(!n)return null;throw e}}},77907:(e,t,n)=>{const a=n(67488);e.exports=(e,t)=>{const n=a(e,t);return n?n.version:null}},35519:e=>{const t=Number.MAX_SAFE_INTEGER||9007199254740991;e.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:t,RELEASE_TYPES:["major","premajor","minor","preminor","patch","prepatch","prerelease"],SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}},85503:(e,t,n)=>{var a=n(34155);const r="object"==typeof a&&a.env&&a.env.NODE_DEBUG&&/\bsemver\b/i.test(a.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};e.exports=r},63242:e=>{const t=/^[0-9]+$/,n=(e,n)=>{const a=t.test(e),r=t.test(n);return a&&r&&(e=+e,n=+n),e===n?0:a&&!r?-1:r&&!a?1:en(t,e)}},74433:e=>{const t=Object.freeze({loose:!0}),n=Object.freeze({});e.exports=e=>e?"object"!=typeof e?t:e:n},88238:(e,t,n)=>{const{MAX_SAFE_COMPONENT_LENGTH:a,MAX_SAFE_BUILD_LENGTH:r}=n(35519),s=n(85503),i=(t=e.exports={}).re=[],o=t.safeRe=[],l=t.src=[],u=t.t={};let c=0;const d="[a-zA-Z0-9-]",m=[["\\s",1],["\\d",a],[d,r]],p=(e,t,n)=>{const a=(e=>{for(const[t,n]of m)e=e.split(`${t}*`).join(`${t}{0,${n}}`).split(`${t}+`).join(`${t}{1,${n}}`);return e})(t),r=c++;s(e,r,t),u[e]=r,l[r]=t,i[r]=new RegExp(t,n?"g":void 0),o[r]=new RegExp(a,n?"g":void 0)};p("NUMERICIDENTIFIER","0|[1-9]\\d*"),p("NUMERICIDENTIFIERLOOSE","\\d+"),p("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${d}*`),p("MAINVERSION",`(${l[u.NUMERICIDENTIFIER]})\\.(${l[u.NUMERICIDENTIFIER]})\\.(${l[u.NUMERICIDENTIFIER]})`),p("MAINVERSIONLOOSE",`(${l[u.NUMERICIDENTIFIERLOOSE]})\\.(${l[u.NUMERICIDENTIFIERLOOSE]})\\.(${l[u.NUMERICIDENTIFIERLOOSE]})`),p("PRERELEASEIDENTIFIER",`(?:${l[u.NUMERICIDENTIFIER]}|${l[u.NONNUMERICIDENTIFIER]})`),p("PRERELEASEIDENTIFIERLOOSE",`(?:${l[u.NUMERICIDENTIFIERLOOSE]}|${l[u.NONNUMERICIDENTIFIER]})`),p("PRERELEASE",`(?:-(${l[u.PRERELEASEIDENTIFIER]}(?:\\.${l[u.PRERELEASEIDENTIFIER]})*))`),p("PRERELEASELOOSE",`(?:-?(${l[u.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${l[u.PRERELEASEIDENTIFIERLOOSE]})*))`),p("BUILDIDENTIFIER",`${d}+`),p("BUILD",`(?:\\+(${l[u.BUILDIDENTIFIER]}(?:\\.${l[u.BUILDIDENTIFIER]})*))`),p("FULLPLAIN",`v?${l[u.MAINVERSION]}${l[u.PRERELEASE]}?${l[u.BUILD]}?`),p("FULL",`^${l[u.FULLPLAIN]}$`),p("LOOSEPLAIN",`[v=\\s]*${l[u.MAINVERSIONLOOSE]}${l[u.PRERELEASELOOSE]}?${l[u.BUILD]}?`),p("LOOSE",`^${l[u.LOOSEPLAIN]}$`),p("GTLT","((?:<|>)?=?)"),p("XRANGEIDENTIFIERLOOSE",`${l[u.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),p("XRANGEIDENTIFIER",`${l[u.NUMERICIDENTIFIER]}|x|X|\\*`),p("XRANGEPLAIN",`[v=\\s]*(${l[u.XRANGEIDENTIFIER]})(?:\\.(${l[u.XRANGEIDENTIFIER]})(?:\\.(${l[u.XRANGEIDENTIFIER]})(?:${l[u.PRERELEASE]})?${l[u.BUILD]}?)?)?`),p("XRANGEPLAINLOOSE",`[v=\\s]*(${l[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${l[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${l[u.XRANGEIDENTIFIERLOOSE]})(?:${l[u.PRERELEASELOOSE]})?${l[u.BUILD]}?)?)?`),p("XRANGE",`^${l[u.GTLT]}\\s*${l[u.XRANGEPLAIN]}$`),p("XRANGELOOSE",`^${l[u.GTLT]}\\s*${l[u.XRANGEPLAINLOOSE]}$`),p("COERCE",`(^|[^\\d])(\\d{1,${a}})(?:\\.(\\d{1,${a}}))?(?:\\.(\\d{1,${a}}))?(?:$|[^\\d])`),p("COERCERTL",l[u.COERCE],!0),p("LONETILDE","(?:~>?)"),p("TILDETRIM",`(\\s*)${l[u.LONETILDE]}\\s+`,!0),t.tildeTrimReplace="$1~",p("TILDE",`^${l[u.LONETILDE]}${l[u.XRANGEPLAIN]}$`),p("TILDELOOSE",`^${l[u.LONETILDE]}${l[u.XRANGEPLAINLOOSE]}$`),p("LONECARET","(?:\\^)"),p("CARETTRIM",`(\\s*)${l[u.LONECARET]}\\s+`,!0),t.caretTrimReplace="$1^",p("CARET",`^${l[u.LONECARET]}${l[u.XRANGEPLAIN]}$`),p("CARETLOOSE",`^${l[u.LONECARET]}${l[u.XRANGEPLAINLOOSE]}$`),p("COMPARATORLOOSE",`^${l[u.GTLT]}\\s*(${l[u.LOOSEPLAIN]})$|^$`),p("COMPARATOR",`^${l[u.GTLT]}\\s*(${l[u.FULLPLAIN]})$|^$`),p("COMPARATORTRIM",`(\\s*)${l[u.GTLT]}\\s*(${l[u.LOOSEPLAIN]}|${l[u.XRANGEPLAIN]})`,!0),t.comparatorTrimReplace="$1$2$3",p("HYPHENRANGE",`^\\s*(${l[u.XRANGEPLAIN]})\\s+-\\s+(${l[u.XRANGEPLAIN]})\\s*$`),p("HYPHENRANGELOOSE",`^\\s*(${l[u.XRANGEPLAINLOOSE]})\\s+-\\s+(${l[u.XRANGEPLAINLOOSE]})\\s*$`),p("STAR","(<|>)?=?\\s*\\*"),p("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),p("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")},23955:(e,t,n)=>{"use strict";var a=n(57699);n(79753),n(27856),n(95573);class r{constructor(){this.translations={},this.debug=!1}setLanguage(e){return this.locale=e,this}detectLocale(){return this.setLanguage((document.documentElement.lang||"en").replace("-","_"))}addTranslation(e,t){return this.translations[e]=t,this}enableDebugMode(){return this.debug=!0,this}build(){return new s(this.locale||"en",this.translations,this.debug)}}class s{constructor(e,t,n){this.gt=new a({debug:n,sourceLocale:"en"});for(const e in t)this.gt.addTranslations(e,"messages",t[e]);this.gt.setLocale(e)}subtitudePlaceholders(e,t){return e.replace(/{([^{}]*)}/g,((e,n)=>{const a=t[n];return"string"==typeof a||"number"==typeof a?a.toString():e}))}gettext(e,t={}){return this.subtitudePlaceholders(this.gt.gettext(e),t)}ngettext(e,t,n,a={}){return this.subtitudePlaceholders(this.gt.ngettext(e,t,n).replace(/%n/g,n.toString()),a)}}t.getGettextBuilder=function(){return new r}},71356:(e,t,n)=>{"use strict";n(69070),n(32165),n(66992),n(78783),n(33948),Object.defineProperty(t,"__esModule",{value:!0}),t.ConsoleLogger=void 0,t.buildConsoleLogger=function(e){return new o(e)},n(19601),n(96649),n(96078),n(82526),n(41817),n(41539),n(9653);var a=n(20006);function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function s(e,t){for(var n=0;n{"use strict";n(69070),n(32165),n(66992),n(78783),n(33948),Object.defineProperty(t,"__esModule",{value:!0}),t.LoggerBuilder=void 0,n(96649),n(96078),n(82526),n(41817),n(41539),n(9653);var a=n(22200),r=n(20006);function s(e){return s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},s(e)}function i(e,t){for(var n=0;n{"use strict";n(69070),Object.defineProperty(t,"__esModule",{value:!0}),t.LogLevel=void 0;var a=function(e){return e[e.Debug=0]="Debug",e[e.Info=1]="Info",e[e.Warn=2]="Warn",e[e.Error=3]="Error",e[e.Fatal=4]="Fatal",e}({});t.LogLevel=a},17499:(e,t,n)=>{"use strict";n(69070),t.IY=function(){return new r.LoggerBuilder(a.buildConsoleLogger)};var a=n(71356),r=n(55058);n(20006)},80351:(e,t,n)=>{self,e.exports=function(){"use strict";var e={n:function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,{a:n}),n},d:function(t,n){for(var a in n)e.o(n,a)&&!e.o(t,a)&&Object.defineProperty(t,a,{enumerable:!0,get:n[a]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r:function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{default:function(){return c}});var a=n(30381),r=e.n(a),s=n(57699),i=e.n(s),o=n(57953),l=new(i()),u=(0,o.getLocale)();[{locale:"ar",json:{charset:"utf-8",headers:{"Last-Translator":"S1 SYSTEMS | BP , 2020","Language-Team":"Arabic (https://www.transifex.com/nextcloud/teams/64236/ar/)","Content-Type":"text/plain; charset=UTF-8",Language:"ar","Plural-Forms":"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nS1 SYSTEMS | BP , 2020\n"},msgstr:["Last-Translator: S1 SYSTEMS | BP , 2020\nLanguage-Team: Arabic (https://www.transifex.com/nextcloud/teams/64236/ar/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["ثواني"]}}}}},{locale:"ast",json:{charset:"utf-8",headers:{"Last-Translator":"enolp , 2020","Language-Team":"Asturian (https://www.transifex.com/nextcloud/teams/64236/ast/)","Content-Type":"text/plain; charset=UTF-8",Language:"ast","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nenolp , 2020\n"},msgstr:["Last-Translator: enolp , 2020\nLanguage-Team: Asturian (https://www.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segundos"]}}}}},{locale:"br",json:{charset:"utf-8",headers:{"Last-Translator":"Kervoas-Le Nabat Ewen , 2020","Language-Team":"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)","Content-Type":"text/plain; charset=UTF-8",Language:"br","Plural-Forms":"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nKervoas-Le Nabat Ewen , 2020\n"},msgstr:["Last-Translator: Kervoas-Le Nabat Ewen , 2020\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: br\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["eilennoù"]}}}}},{locale:"ca",json:{charset:"utf-8",headers:{"Last-Translator":"Marc Riera , 2020","Language-Team":"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)","Content-Type":"text/plain; charset=UTF-8",Language:"ca","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMarc Riera , 2020\n"},msgstr:["Last-Translator: Marc Riera , 2020\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ca\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segons"]}}}}},{locale:"cs_CZ",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki , 2021","Language-Team":"Czech (Czech Republic) (https://www.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPavel Borecki , 2021\n"},msgstr:["Last-Translator: Pavel Borecki , 2021\nLanguage-Team: Czech (Czech Republic) (https://www.transifex.com/nextcloud/teams/64236/cs_CZ/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs_CZ\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekund(y)"]}}}}},{locale:"da",json:{charset:"utf-8",headers:{"Last-Translator":"Henrik Troels-Hansen , 2020","Language-Team":"Danish (https://www.transifex.com/nextcloud/teams/64236/da/)","Content-Type":"text/plain; charset=UTF-8",Language:"da","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nHenrik Troels-Hansen , 2020\n"},msgstr:["Last-Translator: Henrik Troels-Hansen , 2020\nLanguage-Team: Danish (https://www.transifex.com/nextcloud/teams/64236/da/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: da\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekunder"]}}}}},{locale:"de_DE",json:{charset:"utf-8",headers:{"Last-Translator":"Christoph Wurst , 2020","Language-Team":"German (Germany) (https://www.transifex.com/nextcloud/teams/64236/de_DE/)","Content-Type":"text/plain; charset=UTF-8",Language:"de_DE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nChristoph Wurst , 2020\n"},msgstr:["Last-Translator: Christoph Wurst , 2020\nLanguage-Team: German (Germany) (https://www.transifex.com/nextcloud/teams/64236/de_DE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de_DE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["Sekunden"]}}}}},{locale:"el",json:{charset:"utf-8",headers:{"Last-Translator":"GRMarksman , 2020","Language-Team":"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)","Content-Type":"text/plain; charset=UTF-8",Language:"el","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nGRMarksman , 2020\n"},msgstr:["Last-Translator: GRMarksman , 2020\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["δευτερόλεπτα"]}}}}},{locale:"en_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Oleksa Stasevych , 2020","Language-Team":"English (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/en_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"en_GB","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nOleksa Stasevych , 2020\n"},msgstr:["Last-Translator: Oleksa Stasevych , 2020\nLanguage-Team: English (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/en_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: en_GB\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["seconds"]}}}}},{locale:"eo",json:{charset:"utf-8",headers:{"Last-Translator":"Va Milushnikov , 2020","Language-Team":"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)","Content-Type":"text/plain; charset=UTF-8",Language:"eo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nVa Milushnikov , 2020\n"},msgstr:["Last-Translator: Va Milushnikov , 2020\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekundoj"]}}}}},{locale:"es",json:{charset:"utf-8",headers:{"Last-Translator":"Javier San Juan , 2020","Language-Team":"Spanish (https://www.transifex.com/nextcloud/teams/64236/es/)","Content-Type":"text/plain; charset=UTF-8",Language:"es","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nJavier San Juan , 2020\n"},msgstr:["Last-Translator: Javier San Juan , 2020\nLanguage-Team: Spanish (https://www.transifex.com/nextcloud/teams/64236/es/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segundos"]}}}}},{locale:"eu",json:{charset:"utf-8",headers:{"Last-Translator":"Asier Iturralde Sarasola , 2020","Language-Team":"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8",Language:"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nAsier Iturralde Sarasola , 2020\n"},msgstr:["Last-Translator: Asier Iturralde Sarasola , 2020\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segundo"]}}}}},{locale:"fa",json:{charset:"utf-8",headers:{"Last-Translator":"Amirreza Kolivand , 2021","Language-Team":"Persian (https://www.transifex.com/nextcloud/teams/64236/fa/)","Content-Type":"text/plain; charset=UTF-8",Language:"fa","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nAmirreza Kolivand , 2021\n"},msgstr:["Last-Translator: Amirreza Kolivand , 2021\nLanguage-Team: Persian (https://www.transifex.com/nextcloud/teams/64236/fa/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fa\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["ثانیه"]}}}}},{locale:"fi_FI",json:{charset:"utf-8",headers:{"Last-Translator":"Robin Lahtinen , 2020","Language-Team":"Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)","Content-Type":"text/plain; charset=UTF-8",Language:"fi_FI","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRobin Lahtinen , 2020\n"},msgstr:["Last-Translator: Robin Lahtinen , 2020\nLanguage-Team: Finnish (Finland) (https://www.transifex.com/nextcloud/teams/64236/fi_FI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fi_FI\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekuntia"]}}}}},{locale:"fr",json:{charset:"utf-8",headers:{"Last-Translator":"Yoplala , 2020","Language-Team":"French (https://www.transifex.com/nextcloud/teams/64236/fr/)","Content-Type":"text/plain; charset=UTF-8",Language:"fr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nYoplala , 2020\n"},msgstr:["Last-Translator: Yoplala , 2020\nLanguage-Team: French (https://www.transifex.com/nextcloud/teams/64236/fr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["secondes"]}}}}},{locale:"gl",json:{charset:"utf-8",headers:{"Last-Translator":"Miguel Anxo Bouzada , 2020","Language-Team":"Galician (https://www.transifex.com/nextcloud/teams/64236/gl/)","Content-Type":"text/plain; charset=UTF-8",Language:"gl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nMiguel Anxo Bouzada , 2020\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada , 2020\nLanguage-Team: Galician (https://www.transifex.com/nextcloud/teams/64236/gl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segundos"]}}}}},{locale:"he",json:{charset:"utf-8",headers:{"Last-Translator":"Yaron Shahrabani , 2020","Language-Team":"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)","Content-Type":"text/plain; charset=UTF-8",Language:"he","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nYaron Shahrabani , 2020\n"},msgstr:["Last-Translator: Yaron Shahrabani , 2020\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: he\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["שניות"]}}}}},{locale:"hu_HU",json:{charset:"utf-8",headers:{"Last-Translator":"Balázs Meskó , 2020","Language-Team":"Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu_HU","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nBalázs Meskó , 2020\n"},msgstr:["Last-Translator: Balázs Meskó , 2020\nLanguage-Team: Hungarian (Hungary) (https://www.transifex.com/nextcloud/teams/64236/hu_HU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu_HU\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["másodperc"]}}}}},{locale:"id",json:{charset:"utf-8",headers:{"Last-Translator":"Marcus Pierce, 2021","Language-Team":"Indonesian (https://www.transifex.com/nextcloud/teams/64236/id/)","Content-Type":"text/plain; charset=UTF-8",Language:"id","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMarcus Pierce, 2021\n"},msgstr:["Last-Translator: Marcus Pierce, 2021\nLanguage-Team: Indonesian (https://www.transifex.com/nextcloud/teams/64236/id/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: id\nPlural-Forms: nplurals=1; plural=0;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["detik"]}}}}},{locale:"is",json:{charset:"utf-8",headers:{"Last-Translator":"Sveinn í Felli , 2020","Language-Team":"Icelandic (https://www.transifex.com/nextcloud/teams/64236/is/)","Content-Type":"text/plain; charset=UTF-8",Language:"is","Plural-Forms":"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nSveinn í Felli , 2020\n"},msgstr:["Last-Translator: Sveinn í Felli , 2020\nLanguage-Team: Icelandic (https://www.transifex.com/nextcloud/teams/64236/is/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: is\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekúndur"]}}}}},{locale:"it",json:{charset:"utf-8",headers:{"Last-Translator":"Random_R, 2020","Language-Team":"Italian (https://www.transifex.com/nextcloud/teams/64236/it/)","Content-Type":"text/plain; charset=UTF-8",Language:"it","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nRandom_R, 2020\n"},msgstr:["Last-Translator: Random_R, 2020\nLanguage-Team: Italian (https://www.transifex.com/nextcloud/teams/64236/it/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["secondi"]}}}}},{locale:"ja_JP",json:{charset:"utf-8",headers:{"Last-Translator":"YANO Tetsu , 2020","Language-Team":"Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)","Content-Type":"text/plain; charset=UTF-8",Language:"ja_JP","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nYANO Tetsu , 2020\n"},msgstr:["Last-Translator: YANO Tetsu , 2020\nLanguage-Team: Japanese (Japan) (https://www.transifex.com/nextcloud/teams/64236/ja_JP/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ja_JP\nPlural-Forms: nplurals=1; plural=0;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["秒"]}}}}},{locale:"ko",json:{charset:"utf-8",headers:{"Last-Translator":"Brandon Han, 2021","Language-Team":"Korean (https://www.transifex.com/nextcloud/teams/64236/ko/)","Content-Type":"text/plain; charset=UTF-8",Language:"ko","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nBrandon Han, 2021\n"},msgstr:["Last-Translator: Brandon Han, 2021\nLanguage-Team: Korean (https://www.transifex.com/nextcloud/teams/64236/ko/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ko\nPlural-Forms: nplurals=1; plural=0;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["초"]}}}}},{locale:"lt_LT",json:{charset:"utf-8",headers:{"Last-Translator":"Moo, 2020","Language-Team":"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)","Content-Type":"text/plain; charset=UTF-8",Language:"lt_LT","Plural-Forms":"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nMoo, 2020\n"},msgstr:["Last-Translator: Moo, 2020\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lt_LT\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sek."]}}}}},{locale:"lv",json:{charset:"utf-8",headers:{"Last-Translator":"stendec , 2020","Language-Team":"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)","Content-Type":"text/plain; charset=UTF-8",Language:"lv","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nstendec , 2020\n"},msgstr:["Last-Translator: stendec , 2020\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lv\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekundes"]}}}}},{locale:"mk",json:{charset:"utf-8",headers:{"Last-Translator":"Сашко Тодоров, 2020","Language-Team":"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)","Content-Type":"text/plain; charset=UTF-8",Language:"mk","Plural-Forms":"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nСашко Тодоров, 2020\n"},msgstr:["Last-Translator: Сашко Тодоров, 2020\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mk\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["секунди"]}}}}},{locale:"my",json:{charset:"utf-8",headers:{"Last-Translator":"Htike Aung Kyaw , 2021","Language-Team":"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)","Content-Type":"text/plain; charset=UTF-8",Language:"my","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nHtike Aung Kyaw , 2021\n"},msgstr:["Last-Translator: Htike Aung Kyaw , 2021\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: my\nPlural-Forms: nplurals=1; plural=0;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["စက္ကန့်"]}}}}},{locale:"nb_NO",json:{charset:"utf-8",headers:{"Last-Translator":"Ole Jakob Brustad , 2020","Language-Team":"Norwegian Bokmål (Norway) (https://www.transifex.com/nextcloud/teams/64236/nb_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nb_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nOle Jakob Brustad , 2020\n"},msgstr:["Last-Translator: Ole Jakob Brustad , 2020\nLanguage-Team: Norwegian Bokmål (Norway) (https://www.transifex.com/nextcloud/teams/64236/nb_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nb_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekunder"]}}}}},{locale:"nl",json:{charset:"utf-8",headers:{"Last-Translator":"Roeland Jago Douma , 2020","Language-Team":"Dutch (https://www.transifex.com/nextcloud/teams/64236/nl/)","Content-Type":"text/plain; charset=UTF-8",Language:"nl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRoeland Jago Douma , 2020\n"},msgstr:["Last-Translator: Roeland Jago Douma , 2020\nLanguage-Team: Dutch (https://www.transifex.com/nextcloud/teams/64236/nl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["seconden"]}}}}},{locale:"oc",json:{charset:"utf-8",headers:{"Last-Translator":"Quentin PAGÈS, 2020","Language-Team":"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)","Content-Type":"text/plain; charset=UTF-8",Language:"oc","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nQuentin PAGÈS, 2020\n"},msgstr:["Last-Translator: Quentin PAGÈS, 2020\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: oc\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segondas"]}}}}},{locale:"pl",json:{charset:"utf-8",headers:{"Last-Translator":"Janusz Gwiazda , 2020","Language-Team":"Polish (https://www.transifex.com/nextcloud/teams/64236/pl/)","Content-Type":"text/plain; charset=UTF-8",Language:"pl","Plural-Forms":"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nJanusz Gwiazda , 2020\n"},msgstr:["Last-Translator: Janusz Gwiazda , 2020\nLanguage-Team: Polish (https://www.transifex.com/nextcloud/teams/64236/pl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pl\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekundy"]}}}}},{locale:"pt_BR",json:{charset:"utf-8",headers:{"Last-Translator":"André Marcelo Alvarenga , 2020","Language-Team":"Portuguese (Brazil) (https://www.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_BR","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nAndré Marcelo Alvarenga , 2020\n"},msgstr:["Last-Translator: André Marcelo Alvarenga , 2020\nLanguage-Team: Portuguese (Brazil) (https://www.transifex.com/nextcloud/teams/64236/pt_BR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_BR\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segundos"]}}}}},{locale:"pt_PT",json:{charset:"utf-8",headers:{"Last-Translator":"fpapoila , 2020","Language-Team":"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_PT","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nfpapoila , 2020\n"},msgstr:["Last-Translator: fpapoila , 2020\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_PT\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["segundos"]}}}}},{locale:"ru",json:{charset:"utf-8",headers:{"Last-Translator":"Игорь Бондаренко , 2020","Language-Team":"Russian (https://www.transifex.com/nextcloud/teams/64236/ru/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nИгорь Бондаренко , 2020\n"},msgstr:["Last-Translator: Игорь Бондаренко , 2020\nLanguage-Team: Russian (https://www.transifex.com/nextcloud/teams/64236/ru/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["секунды"]}}}}},{locale:"si",json:{charset:"utf-8",headers:{"Last-Translator":"Hela Basa, 2021","Language-Team":"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)","Content-Type":"text/plain; charset=UTF-8",Language:"si","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nHela Basa, 2021\n"},msgstr:["Last-Translator: Hela Basa, 2021\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["තත්පර"]}}}}},{locale:"sk_SK",json:{charset:"utf-8",headers:{"Last-Translator":"Anton Kuchár , 2020","Language-Team":"Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)","Content-Type":"text/plain; charset=UTF-8",Language:"sk_SK","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nAnton Kuchár , 2020\n"},msgstr:["Last-Translator: Anton Kuchár , 2020\nLanguage-Team: Slovak (Slovakia) (https://www.transifex.com/nextcloud/teams/64236/sk_SK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sk_SK\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekundy"]}}}}},{locale:"sl",json:{charset:"utf-8",headers:{"Last-Translator":"Matej Urbančič <>, 2020","Language-Team":"Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)","Content-Type":"text/plain; charset=UTF-8",Language:"sl","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMatej Urbančič <>, 2020\n"},msgstr:["Last-Translator: Matej Urbančič <>, 2020\nLanguage-Team: Slovenian (https://www.transifex.com/nextcloud/teams/64236/sl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekunde"]}}}}},{locale:"sq",json:{charset:"utf-8",headers:{"Last-Translator":"Greta, 2020","Language-Team":"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)","Content-Type":"text/plain; charset=UTF-8",Language:"sq","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nGreta, 2020\n"},msgstr:["Last-Translator: Greta, 2020\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sq\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekonda"]}}}}},{locale:"sr",json:{charset:"utf-8",headers:{"Last-Translator":"Slobodan Simić , 2020","Language-Team":"Serbian (https://www.transifex.com/nextcloud/teams/64236/sr/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nSlobodan Simić , 2020\n"},msgstr:["Last-Translator: Slobodan Simić , 2020\nLanguage-Team: Serbian (https://www.transifex.com/nextcloud/teams/64236/sr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["секунде"]}}}}},{locale:"sv",json:{charset:"utf-8",headers:{"Last-Translator":"Magnus Höglund, 2020","Language-Team":"Swedish (https://www.transifex.com/nextcloud/teams/64236/sv/)","Content-Type":"text/plain; charset=UTF-8",Language:"sv","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nMagnus Höglund, 2020\n"},msgstr:["Last-Translator: Magnus Höglund, 2020\nLanguage-Team: Swedish (https://www.transifex.com/nextcloud/teams/64236/sv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sv\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["sekunder"]}}}}},{locale:"th_TH",json:{charset:"utf-8",headers:{"Last-Translator":"Phongpanot Phairat , 2021","Language-Team":"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)","Content-Type":"text/plain; charset=UTF-8",Language:"th_TH","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPhongpanot Phairat , 2021\n"},msgstr:["Last-Translator: Phongpanot Phairat , 2021\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th_TH\nPlural-Forms: nplurals=1; plural=0;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["วินาที"]}}}}},{locale:"tr",json:{charset:"utf-8",headers:{"Last-Translator":"Hüseyin Fahri Uzun , 2020","Language-Team":"Turkish (https://www.transifex.com/nextcloud/teams/64236/tr/)","Content-Type":"text/plain; charset=UTF-8",Language:"tr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nHüseyin Fahri Uzun , 2020\n"},msgstr:["Last-Translator: Hüseyin Fahri Uzun , 2020\nLanguage-Team: Turkish (https://www.transifex.com/nextcloud/teams/64236/tr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["saniye"]}}}}},{locale:"uk",json:{charset:"utf-8",headers:{"Last-Translator":"Oleksa Stasevych , 2020","Language-Team":"Ukrainian (https://www.transifex.com/nextcloud/teams/64236/uk/)","Content-Type":"text/plain; charset=UTF-8",Language:"uk","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nOleksa Stasevych , 2020\n"},msgstr:["Last-Translator: Oleksa Stasevych , 2020\nLanguage-Team: Ukrainian (https://www.transifex.com/nextcloud/teams/64236/uk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uk\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["секунд"]}}}}},{locale:"vi",json:{charset:"utf-8",headers:{"Last-Translator":"Luu Thang , 2021","Language-Team":"Vietnamese (https://www.transifex.com/nextcloud/teams/64236/vi/)","Content-Type":"text/plain; charset=UTF-8",Language:"vi","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nLuu Thang , 2021\n"},msgstr:["Last-Translator: Luu Thang , 2021\nLanguage-Team: Vietnamese (https://www.transifex.com/nextcloud/teams/64236/vi/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: vi\nPlural-Forms: nplurals=1; plural=0;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["giây"]}}}}},{locale:"zh_CN",json:{charset:"utf-8",headers:{"Last-Translator":"Jay Guo , 2020","Language-Team":"Chinese (China) (https://www.transifex.com/nextcloud/teams/64236/zh_CN/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_CN","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nJay Guo , 2020\n"},msgstr:["Last-Translator: Jay Guo , 2020\nLanguage-Team: Chinese (China) (https://www.transifex.com/nextcloud/teams/64236/zh_CN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_CN\nPlural-Forms: nplurals=1; plural=0;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["秒"]}}}}},{locale:"zh_HK",json:{charset:"utf-8",headers:{"Last-Translator":"Cha Wong , 2021","Language-Team":"Chinese (Hong Kong) (https://www.transifex.com/nextcloud/teams/64236/zh_HK/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_HK","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nCha Wong , 2021\n"},msgstr:["Last-Translator: Cha Wong , 2021\nLanguage-Team: Chinese (Hong Kong) (https://www.transifex.com/nextcloud/teams/64236/zh_HK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_HK\nPlural-Forms: nplurals=1; plural=0;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["秒"]}}}}},{locale:"zh_TW",json:{charset:"utf-8",headers:{"Last-Translator":"Jim Tsai , 2020","Language-Team":"Chinese (Taiwan) (https://www.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"Translators:\nJim Tsai , 2020\n"},msgstr:["Last-Translator: Jim Tsai , 2020\nLanguage-Team: Chinese (Taiwan) (https://www.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},seconds:{msgid:"seconds",comments:{reference:"lib/index.ts:22"},msgstr:["秒"]}}}}}].map((function(e){l.addTranslations(e.locale,"messages",e.json)})),l.setLocale(u),r().locale(u),r().updateLocale(r().locale(),{parentLocale:r().locale(),relativeTime:Object.assign(r().localeData(r().locale())._relativeTime,{s:l.gettext("seconds")})});var c=r();return t}()},57953:(e,t,n)=>{"use strict";function a(){return document.documentElement.dataset.locale||"en"}n(69070),Object.defineProperty(t,"__esModule",{value:!0}),t.getCanonicalLocale=function(){return a().replace(/_/g,"-")},t.getDayNames=function(){return void 0===window.dayNames?(console.warn("No dayNames found"),["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]):window.dayNames},t.getDayNamesMin=function(){return void 0===window.dayNamesMin?(console.warn("No dayNamesMin found"),["Su","Mo","Tu","We","Th","Fr","Sa"]):window.dayNamesMin},t.getDayNamesShort=function(){return void 0===window.dayNamesShort?(console.warn("No dayNamesShort found"),["Sun.","Mon.","Tue.","Wed.","Thu.","Fri.","Sat."]):window.dayNamesShort},t.getFirstDay=function(){return void 0===window.firstDay?(console.warn("No firstDay found"),1):window.firstDay},t.getLanguage=function(){return document.documentElement.lang||"en"},t.getLocale=a,t.getMonthNames=function(){return void 0===window.monthNames?(console.warn("No monthNames found"),["January","February","March","April","May","June","July","August","September","October","November","December"]):window.monthNames},t.getMonthNamesShort=function(){return void 0===window.monthNamesShort?(console.warn("No monthNamesShort found"),["Jan.","Feb.","Mar.","Apr.","May.","Jun.","Jul.","Aug.","Sep.","Oct.","Nov.","Dec."]):window.monthNamesShort},t.translate=function(e,t,n,a,r){return"undefined"==typeof OC?(console.warn("No OC found"),t):OC.L10N.translate(e,t,n,a,r)},t.translatePlural=function(e,t,n,a,r,s){return"undefined"==typeof OC?(console.warn("No OC found"),t):OC.L10N.translatePlural(e,t,n,a,r,s)},n(74916),n(15306)},65358:(e,t,n)=>{"use strict";function a(){for(var e=arguments.length,t=new Array(e),n=0;n0}));if(a.length<1)return"";var r=a[a.length-1],s="/"===a[0].charAt(0),i="/"===r.charAt(r.length-1),o=a.reduce((function(e,t){return e.concat(t.split("/"))}),[]),l=!s,u=o.reduce((function(e,t){return""===t?e:l?(l=!1,e+t):e+"/"+t}),"");return i?u+"/":u}t.XX=function(e){return e.replace(/\\/g,"/").replace(/\/[^\/]*$/,"")},t.Mg=function(e,t){var n=(e||"").split("/").filter((function(e){return"."!==e})),r=(t||"").split("/").filter((function(e){return"."!==e}));return(e=a.apply(void 0,n))===(t=a.apply(void 0,r))},n(21249),n(74916),n(23123),n(15306),n(57327),n(85827),n(92222)},75925:(e,t,n)=>{var a;self,a=()=>(()=>{var e={5378:(e,t,n)=>{"use strict";n.d(t,{default:()=>k});const a={name:"NcLoadingIcon",props:{size:{type:Number,default:20},appearance:{type:String,validator:e=>["auto","light","dark"].includes(e),default:"auto"},title:{type:String,default:""}},computed:{colors(){const e=["#777","#CCC"];return"light"===this.appearance?e:"dark"===this.appearance?e.reverse():["var(--color-loading-light)","var(--color-loading-dark)"]}}};var r=n(3379),s=n.n(r),i=n(7795),o=n.n(i),l=n(569),u=n.n(l),c=n(3565),d=n.n(c),m=n(9216),p=n.n(m),h=n(4589),f=n.n(h),g=n(5030),_={};_.styleTagTransform=f(),_.setAttributes=d(),_.insert=u().bind(null,"head"),_.domAPI=o(),_.insertStyleElement=p(),s()(g.Z,_),g.Z&&g.Z.locals&&g.Z.locals;var y=n(1900),v=n(9280),b=n.n(v),A=(0,y.Z)(a,(function(){var e=this,t=e._self._c;return t("span",{staticClass:"material-design-icon loading-icon",attrs:{"aria-label":e.title,role:"img"}},[t("svg",{attrs:{width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{fill:e.colors[0],d:"M12,4V2A10,10 0 1,0 22,12H20A8,8 0 1,1 12,4Z"}}),e._v(" "),t("path",{attrs:{fill:e.colors[1],d:"M12,4V2A10,10 0 0,1 22,12H20A8,8 0 0,0 12,4Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,"c4a9cada",null);"function"==typeof b()&&b()(A);const k=A.exports},2297:(e,t,n)=>{"use strict";n.d(t,{default:()=>x});var a=n(9454),r=n(4505),s=n(1206);const i={name:"NcPopover",components:{Dropdown:a.Dropdown},inheritAttrs:!1,props:{popoverBaseClass:{type:String,default:""},focusTrap:{type:Boolean,default:!0},setReturnFocus:{default:void 0,type:[HTMLElement,SVGElement,String,Boolean]}},emits:["after-show","after-hide"],beforeDestroy(){this.clearFocusTrap()},methods:{async useFocusTrap(){var e,t;if(await this.$nextTick(),!this.focusTrap)return;const n=null===(e=this.$refs.popover)||void 0===e||null===(t=e.$refs.popperContent)||void 0===t?void 0:t.$el;n&&(this.$focusTrap=(0,r.createFocusTrap)(n,{escapeDeactivates:!1,allowOutsideClick:!0,setReturnFocus:this.setReturnFocus,trapStack:(0,s.L)()}),this.$focusTrap.activate())},clearFocusTrap(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};try{var t;null===(t=this.$focusTrap)||void 0===t||t.deactivate(e),this.$focusTrap=null}catch(e){console.warn(e)}},afterShow(){this.$nextTick((()=>{this.$emit("after-show"),this.useFocusTrap()}))},afterHide(){this.$emit("after-hide"),this.clearFocusTrap()}}},o=i;var l=n(3379),u=n.n(l),c=n(7795),d=n.n(c),m=n(569),p=n.n(m),h=n(3565),f=n.n(h),g=n(9216),_=n.n(g),y=n(4589),v=n.n(y),b=n(1625),A={};A.styleTagTransform=v(),A.setAttributes=f(),A.insert=p().bind(null,"head"),A.domAPI=d(),A.insertStyleElement=_(),u()(b.Z,A),b.Z&&b.Z.locals&&b.Z.locals;var k=n(1900),M=n(2405),w=n.n(M),L=(0,k.Z)(o,(function(){var e=this;return(0,e._self._c)("Dropdown",e._g(e._b({ref:"popover",attrs:{distance:10,"arrow-padding":10,"no-auto-focus":!0,"popper-class":e.popoverBaseClass},on:{"apply-show":e.afterShow,"apply-hide":e.afterHide},scopedSlots:e._u([{key:"popper",fn:function(){return[e._t("default")]},proxy:!0}],null,!0)},"Dropdown",e.$attrs,!1),e.$listeners),[e._t("trigger")],2)}),[],!1,null,null,null);"function"==typeof w()&&w()(L);const x=L.exports},306:(e,t,n)=>{"use strict";n.d(t,{default:()=>C});const a={name:"NcPopoverMenuItem",props:{item:{type:Object,required:!0,default:()=>({key:"nextcloud-link",href:"https://nextcloud.com",icon:"icon-links",text:"Nextcloud"}),validator:e=>!e.input||-1!==["text","checkbox"].indexOf(e.input)}},computed:{key(){return this.item.key?this.item.key:Math.round(16*Math.random()*1e6).toString(16)},iconIsUrl(){try{return new URL(this.item.icon),!0}catch(e){return!1}}},methods:{action(e){this.item.action&&this.item.action(e)}}};var r=n(3379),s=n.n(r),i=n(7795),o=n.n(i),l=n(569),u=n.n(l),c=n(3565),d=n.n(c),m=n(9216),p=n.n(m),h=n(4589),f=n.n(h),g=n(8369),_={};_.styleTagTransform=f(),_.setAttributes=d(),_.insert=u().bind(null,"head"),_.domAPI=o(),_.insertStyleElement=p(),s()(g.Z,_),g.Z&&g.Z.locals&&g.Z.locals;var y=n(408),v={};v.styleTagTransform=f(),v.setAttributes=d(),v.insert=u().bind(null,"head"),v.domAPI=o(),v.insertStyleElement=p(),s()(y.Z,v),y.Z&&y.Z.locals&&y.Z.locals;var b=n(1900);const A={name:"NcPopoverMenu",components:{NcPopoverMenuItem:(0,b.Z)(a,(function(){var e=this,t=e._self._c;return t("li",{staticClass:"popover__menuitem"},[e.item.href?t("a",{staticClass:"focusable",attrs:{href:e.item.href?e.item.href:"#",target:e.item.target?e.item.target:"",download:e.item.download,rel:"nofollow noreferrer noopener"},on:{click:e.action}},[e.iconIsUrl?t("img",{attrs:{src:e.item.icon}}):t("span",{class:e.item.icon}),e._v(" "),e.item.text&&e.item.longtext?t("p",[t("strong",{staticClass:"menuitem-text"},[e._v("\n\t\t\t\t"+e._s(e.item.text)+"\n\t\t\t")]),t("br"),e._v(" "),t("span",{staticClass:"menuitem-text-detail"},[e._v("\n\t\t\t\t"+e._s(e.item.longtext)+"\n\t\t\t")])]):e.item.text?t("span",[e._v("\n\t\t\t"+e._s(e.item.text)+"\n\t\t")]):e.item.longtext?t("p",[e._v("\n\t\t\t"+e._s(e.item.longtext)+"\n\t\t")]):e._e()]):e.item.input?t("span",{staticClass:"menuitem",class:{active:e.item.active}},["checkbox"!==e.item.input?t("span",{class:e.item.icon}):e._e(),e._v(" "),"text"===e.item.input?t("form",{class:e.item.input,on:{submit:function(t){return t.preventDefault(),e.item.action.apply(null,arguments)}}},[t("input",{attrs:{type:e.item.input,placeholder:e.item.text,required:""},domProps:{value:e.item.value}}),e._v(" "),t("input",{staticClass:"icon-confirm",attrs:{type:"submit",value:""}})]):["checkbox"===e.item.input?t("input",{directives:[{name:"model",rawName:"v-model",value:e.item.model,expression:"item.model"}],class:e.item.input,attrs:{id:e.key,type:"checkbox"},domProps:{checked:Array.isArray(e.item.model)?e._i(e.item.model,null)>-1:e.item.model},on:{change:[function(t){var n=e.item.model,a=t.target,r=!!a.checked;if(Array.isArray(n)){var s=e._i(n,null);a.checked?s<0&&e.$set(e.item,"model",n.concat([null])):s>-1&&e.$set(e.item,"model",n.slice(0,s).concat(n.slice(s+1)))}else e.$set(e.item,"model",r)},e.item.action]}}):"radio"===e.item.input?t("input",{directives:[{name:"model",rawName:"v-model",value:e.item.model,expression:"item.model"}],class:e.item.input,attrs:{id:e.key,type:"radio"},domProps:{checked:e._q(e.item.model,null)},on:{change:[function(t){return e.$set(e.item,"model",null)},e.item.action]}}):t("input",{directives:[{name:"model",rawName:"v-model",value:e.item.model,expression:"item.model"}],class:e.item.input,attrs:{id:e.key,type:e.item.input},domProps:{value:e.item.model},on:{change:e.item.action,input:function(t){t.target.composing||e.$set(e.item,"model",t.target.value)}}}),e._v(" "),t("label",{attrs:{for:e.key},on:{click:function(t){return t.stopPropagation(),t.preventDefault(),e.item.action.apply(null,arguments)}}},[e._v("\n\t\t\t\t"+e._s(e.item.text)+"\n\t\t\t")])]],2):e.item.action?t("button",{staticClass:"menuitem focusable",class:{active:e.item.active},attrs:{disabled:e.item.disabled,type:"button"},on:{click:function(t){return t.stopPropagation(),t.preventDefault(),e.item.action.apply(null,arguments)}}},[t("span",{class:e.item.icon}),e._v(" "),e.item.text&&e.item.longtext?t("p",[t("strong",{staticClass:"menuitem-text"},[e._v("\n\t\t\t\t"+e._s(e.item.text)+"\n\t\t\t")]),t("br"),e._v(" "),t("span",{staticClass:"menuitem-text-detail"},[e._v("\n\t\t\t\t"+e._s(e.item.longtext)+"\n\t\t\t")])]):e.item.text?t("span",[e._v("\n\t\t\t"+e._s(e.item.text)+"\n\t\t")]):e.item.longtext?t("p",[e._v("\n\t\t\t"+e._s(e.item.longtext)+"\n\t\t")]):e._e()]):t("span",{staticClass:"menuitem",class:{active:e.item.active}},[t("span",{class:e.item.icon}),e._v(" "),e.item.text&&e.item.longtext?t("p",[t("strong",{staticClass:"menuitem-text"},[e._v("\n\t\t\t\t"+e._s(e.item.text)+"\n\t\t\t")]),t("br"),e._v(" "),t("span",{staticClass:"menuitem-text-detail"},[e._v("\n\t\t\t\t"+e._s(e.item.longtext)+"\n\t\t\t")])]):e.item.text?t("span",[e._v("\n\t\t\t"+e._s(e.item.text)+"\n\t\t")]):e.item.longtext?t("p",[e._v("\n\t\t\t"+e._s(e.item.longtext)+"\n\t\t")]):e._e()])])}),[],!1,null,"127b0c62",null).exports},props:{menu:{type:Array,default:()=>[{href:"https://nextcloud.com",icon:"icon-links",text:"Nextcloud"}],required:!0}}};var k=n(2),M={};M.styleTagTransform=f(),M.setAttributes=d(),M.insert=u().bind(null,"head"),M.domAPI=o(),M.insertStyleElement=p(),s()(k.Z,M),k.Z&&k.Z.locals&&k.Z.locals;var w=n(1174),L=n.n(w),x=(0,b.Z)(A,(function(){var e=this,t=e._self._c;return t("ul",{staticClass:"popover__menu"},e._l(e.menu,(function(e,n){return t("NcPopoverMenuItem",{key:n,attrs:{item:e}})})),1)}),[],!1,null,"31ffd2d4",null);"function"==typeof L()&&L()(x);const C=x.exports},7993:(e,t,a)=>{"use strict";a.d(t,{default:()=>o});var r=a(6609);const s=n(2568);var i=a.n(s);const o=function(e){let t=e.toLowerCase();return null===t.match(/^([0-9a-f]{4}-?){8}$/)&&(t=i()(t)),t=t.replace(/[^0-9a-f]/g,""),(0,r.Z)(6)[function(e,t){let n=0;const a=[];for(let t=0;t{"use strict";n.d(t,{t:()=>s});const a=(0,n(7931).getGettextBuilder)().detectLocale();[{locale:"ar",translations:{"{tag} (invisible)":"{tag} (غير مرئي)","{tag} (restricted)":"{tag} (مقيد)",Actions:"الإجراءات",Activities:"النشاطات","Animals & Nature":"الحيوانات والطبيعة","Anything shared with the same group of people will show up here":"أي مادة تمت مشاركتها مع نفس المجموعة من الأشخاص سيتم عرضها هنا","Avatar of {displayName}":"صورة {displayName} الرمزية","Avatar of {displayName}, {status}":"صورة {displayName} الرمزية، {status}","Cancel changes":"إلغاء التغييرات","Change title":"تغيير العنوان",Choose:"إختيار","Clear text":"مسح النص",Close:"أغلق","Close modal":"قفل الشرط","Close navigation":"إغلاق المتصفح","Close sidebar":"قفل الشريط الجانبي","Confirm changes":"تأكيد التغييرات",Custom:"مخصص","Edit item":"تعديل عنصر","Error getting related resources":"خطأ في تحصيل مصادر ذات صلة","External documentation for {title}":"الوثائق الخارجية لـ{title}",Favorite:"مفضلة",Flags:"الأعلام","Food & Drink":"الطعام والشراب","Frequently used":"كثيرا ما تستخدم",Global:"عالمي","Go back to the list":"العودة إلى القائمة","Hide password":"إخفاء كلمة السر","Message limit of {count} characters reached":"تم الوصول إلى الحد الأقصى لعدد الأحرف في الرسالة: {count} حرف","More items …":"عناصر أخرى ...",Next:"التالي","No emoji found":"لم يتم العثور على أي رمز تعبيري","No results":"ليس هناك أية نتيجة",Objects:"الأشياء",Open:"فتح",'Open link to "{resourceTitle}"':'فتح رابط إلى "{resourceTitle}"',"Open navigation":"فتح المتصفح","Password is secure":"كلمة السر مُؤمّنة","Pause slideshow":"إيقاف العرض مؤقتًا","People & Body":"الناس والجسم","Pick an emoji":"اختر رمزًا تعبيريًا","Please select a time zone:":"الرجاء تحديد المنطقة الزمنية:",Previous:"السابق","Related resources":"مصادر ذات صلة",Search:"بحث","Search results":"نتائج البحث","Select a tag":"اختر علامة",Settings:"الإعدادات","Settings navigation":"إعدادات المتصفح","Show password":"أعرض كلمة السر","Smileys & Emotion":"الوجوه و الرموز التعبيرية","Start slideshow":"بدء العرض",Submit:"إرسال",Symbols:"الرموز","Travel & Places":"السفر والأماكن","Type to search time zone":"اكتب للبحث عن منطقة زمنية","Unable to search the group":"تعذر البحث في المجموعة","Undo changes":"التراجع عن التغييرات","Write message, @ to mention someone, : for emoji autocompletion …":"اكتب رسالة، @ للإشارة إلى شخص ما، : للإكمال التلقائي للرموز التعبيرية ..."}},{locale:"br",translations:{"{tag} (invisible)":"{tag} (diwelus)","{tag} (restricted)":"{tag} (bevennet)",Actions:"Oberioù",Activities:"Oberiantizoù","Animals & Nature":"Loened & Natur",Choose:"Dibab",Close:"Serriñ",Custom:"Personelañ",Flags:"Bannieloù","Food & Drink":"Boued & Evajoù","Frequently used":"Implijet alies",Next:"Da heul","No emoji found":"Emoji ebet kavet","No results":"Disoc'h ebet",Objects:"Traoù","Pause slideshow":"Arsav an diaporama","People & Body":"Tud & Korf","Pick an emoji":"Choaz un emoji",Previous:"A-raok",Search:"Klask","Search results":"Disoc'hoù an enklask","Select a tag":"Choaz ur c'hlav",Settings:"Arventennoù","Smileys & Emotion":"Smileyioù & Fromoù","Start slideshow":"Kregiñ an diaporama",Symbols:"Arouezioù","Travel & Places":"Beaj & Lec'hioù","Unable to search the group":"Dibosupl eo klask ar strollad"}},{locale:"ca",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restringit)",Actions:"Accions",Activities:"Activitats","Animals & Nature":"Animals i natura","Anything shared with the same group of people will show up here":"Qualsevol cosa compartida amb el mateix grup de persones es mostrarà aquí","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancel·la els canvis","Change title":"Canviar títol",Choose:"Tria","Clear text":"Netejar text",Close:"Tanca","Close modal":"Tancar el mode","Close navigation":"Tanca la navegació","Close sidebar":"Tancar la barra lateral","Confirm changes":"Confirmeu els canvis",Custom:"Personalitzat","Edit item":"Edita l'element","Error getting related resources":"Error obtenint els recursos relacionats","Error parsing svg":"Error en l'anàlisi del svg","External documentation for {title}":"Documentació externa per a {title}",Favorite:"Preferit",Flags:"Marques","Food & Drink":"Menjar i begudes","Frequently used":"Utilitzats recentment",Global:"Global","Go back to the list":"Torna a la llista","Hide password":"Amagar contrasenya","Message limit of {count} characters reached":"S'ha arribat al límit de {count} caràcters per missatge","More items …":"Més artícles...",Next:"Següent","No emoji found":"No s'ha trobat cap emoji","No results":"Sense resultats",Objects:"Objectes",Open:"Obrir",'Open link to "{resourceTitle}"':'Obrir enllaç a "{resourceTitle}"',"Open navigation":"Obre la navegació","Password is secure":"Contrasenya segura
","Pause slideshow":"Atura la presentació","People & Body":"Persones i cos","Pick an emoji":"Trieu un emoji","Please select a time zone:":"Seleccioneu una zona horària:",Previous:"Anterior","Related resources":"Recursos relacionats",Search:"Cerca","Search results":"Resultats de cerca","Select a tag":"Seleccioneu una etiqueta",Settings:"Paràmetres","Settings navigation":"Navegació d'opcions","Show password":"Mostrar contrasenya","Smileys & Emotion":"Cares i emocions","Start slideshow":"Inicia la presentació",Submit:"Envia",Symbols:"Símbols","Travel & Places":"Viatges i llocs","Type to search time zone":"Escriviu per cercar la zona horària","Unable to search the group":"No es pot cercar el grup","Undo changes":"Desfés els canvis",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escriu missatge, fes servir "@" per esmentar algú, fes servir ":" per autocompletar emojis...'}},{locale:"cs_CZ",translations:{"{tag} (invisible)":"{tag} (neviditelné)","{tag} (restricted)":"{tag} (omezené)",Actions:"Akce",Activities:"Aktivity","Animals & Nature":"Zvířata a příroda","Anything shared with the same group of people will show up here":"Cokoli nasdíleného stejné skupině lidí se zobrazí zde","Avatar of {displayName}":"Zástupný obrázek uživatele {displayName}","Avatar of {displayName}, {status}":"Zástupný obrázek uživatele {displayName}, {status}","Cancel changes":"Zrušit změny","Change title":"Změnit nadpis",Choose:"Zvolit","Clear text":"Čitelný text",Close:"Zavřít","Close modal":"Zavřít dialogové okno","Close navigation":"Zavřít navigaci","Close sidebar":"Zavřít postranní panel","Confirm changes":"Potvrdit změny",Custom:"Uživatelsky určené","Edit item":"Upravit položku","Error getting related resources":"Chyba při získávání souvisejících prostředků","Error parsing svg":"Chyba při zpracovávání svg","External documentation for {title}":"Externí dokumentace k {title}",Favorite:"Oblíbené",Flags:"Příznaky","Food & Drink":"Jídlo a pití","Frequently used":"Často používané",Global:"Globální","Go back to the list":"Jít zpět na seznam","Hide password":"Skrýt heslo","Message limit of {count} characters reached":"Dosaženo limitu počtu ({count}) znaků zprávy","More items …":"Další položky…",Next:"Následující","No emoji found":"Nenalezeno žádné emoji","No results":"Nic nenalezeno",Objects:"Objekty",Open:"Otevřít",'Open link to "{resourceTitle}"':"Otevřít odkaz na „{resourceTitle}“","Open navigation":"Otevřít navigaci","Password is secure":"Heslo je bezpečné","Pause slideshow":"Pozastavit prezentaci","People & Body":"Lidé a tělo","Pick an emoji":"Vybrat emoji","Please select a time zone:":"Vyberte časovou zónu:",Previous:"Předchozí","Related resources":"Související prostředky",Search:"Hledat","Search results":"Výsledky hledání","Select a tag":"Vybrat štítek",Settings:"Nastavení","Settings navigation":"Pohyb po nastavení","Show password":"Zobrazit heslo","Smileys & Emotion":"Úsměvy a emoce","Start slideshow":"Spustit prezentaci",Submit:"Odeslat",Symbols:"Symboly","Travel & Places":"Cestování a místa","Type to search time zone":"Psaním vyhledejte časovou zónu","Unable to search the group":"Nedaří se hledat skupinu","Undo changes":"Vzít změny zpět",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':"Napište zprávu – pokud chcete někoho zmínit, napište před jeho uživatelským jménem „@“ (zavináč); automatické doplňování emotikonů zahájíte napsáním „:“ (dvojtečky)…"}},{locale:"da",translations:{"{tag} (invisible)":"{tag} (usynlig)","{tag} (restricted)":"{tag} (begrænset)",Actions:"Handlinger",Activities:"Aktiviteter","Animals & Nature":"Dyr & Natur","Anything shared with the same group of people will show up here":"Alt der deles med samme gruppe af personer vil vises her","Avatar of {displayName}":"Avatar af {displayName}","Avatar of {displayName}, {status}":"Avatar af {displayName}, {status}","Cancel changes":"Annuller ændringer","Change title":"Ret titel",Choose:"Vælg","Clear text":"Ryd tekst",Close:"Luk","Close modal":"Luk vindue","Close navigation":"Luk navigation","Close sidebar":"Luk sidepanel","Confirm changes":"Bekræft ændringer",Custom:"Brugerdefineret","Edit item":"Rediger emne","Error getting related resources":"Kunne ikke hente tilknyttede data","Error parsing svg":"Fejl ved analysering af svg","External documentation for {title}":"Ekstern dokumentation for {title}",Favorite:"Favorit",Flags:"Flag","Food & Drink":"Mad & Drikke","Frequently used":"Ofte brugt",Global:"Global","Go back to the list":"Tilbage til listen","Hide password":"Skjul kodeord","Message limit of {count} characters reached":"Begrænsning på {count} tegn er nået","More items …":"Mere ...",Next:"Videre","No emoji found":"Ingen emoji fundet","No results":"Ingen resultater",Objects:"Objekter",Open:"Åbn",'Open link to "{resourceTitle}"':'Åbn link til "{resourceTitle}"',"Open navigation":"Åbn navigation","Password is secure":"Kodeordet er sikkert","Pause slideshow":"Suspender fremvisning","People & Body":"Mennesker & Menneskekroppen","Pick an emoji":"Vælg en emoji","Please select a time zone:":"Vælg venligst en tidszone:",Previous:"Forrige","Related resources":"Relaterede emner",Search:"Søg","Search results":"Søgeresultater","Select a tag":"Vælg et mærke",Settings:"Indstillinger","Settings navigation":"Naviger i indstillinger","Show password":"Vis kodeord","Smileys & Emotion":"Smileys & Emotion","Start slideshow":"Start fremvisning",Submit:"Send",Symbols:"Symboler","Travel & Places":"Rejser & Rejsemål","Type to search time zone":"Indtast for at søge efter tidszone","Unable to search the group":"Kan ikke søge på denne gruppe","Undo changes":"Fortryd ændringer",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv besked, brug "@" for at nævne nogen, brug ":" til emoji-autofuldførelse ...'}},{locale:"de",translations:{"{tag} (invisible)":"{tag} (unsichtbar)","{tag} (restricted)":"{tag} (eingeschränkt)",Actions:"Aktionen",Activities:"Aktivitäten","Animals & Nature":"Tiere & Natur","Anything shared with the same group of people will show up here":"Alles, das mit derselben Gruppe von Personen geteilt wird, wird hier angezeigt","Avatar of {displayName}":"Avatar von {displayName}","Avatar of {displayName}, {status}":"Avatar von {displayName}, {status}","Cancel changes":"Änderungen verwerfen","Change title":"Titel ändern",Choose:"Auswählen","Clear text":"Klartext",Close:"Schließen","Close modal":"Modal schließen","Close navigation":"Navigation schließen","Close sidebar":"Seitenleiste schließen","Confirm changes":"Änderungen bestätigen",Custom:"Benutzerdefiniert","Edit item":"Objekt bearbeiten","Error getting related resources":"Fehler beim Abrufen verwandter Ressourcen","Error parsing svg":"Fehler beim Einlesen der SVG","External documentation for {title}":"Externe Dokumentation für {title}",Favorite:"Favorit",Flags:"Flaggen","Food & Drink":"Essen & Trinken","Frequently used":"Häufig verwendet",Global:"Global","Go back to the list":"Zurück zur Liste","Hide password":"Passwort verbergen","Message limit of {count} characters reached":"Nachrichtenlimit von {count} Zeichen erreicht","More items …":"Weitere Elemente …",Next:"Weiter","No emoji found":"Kein Emoji gefunden","No results":"Keine Ergebnisse",Objects:"Gegenstände",Open:"Öffnen",'Open link to "{resourceTitle}"':'Link zu "{resourceTitle}" öffnen',"Open navigation":"Navigation öffnen","Password is secure":"Passwort ist sicher","Pause slideshow":"Diashow pausieren","People & Body":"Menschen & Körper","Pick an emoji":"Ein Emoji auswählen","Please select a time zone:":"Bitte wählen Sie eine Zeitzone:",Previous:"Vorherige","Related resources":"Verwandte Ressourcen",Search:"Suche","Search results":"Suchergebnisse","Select a tag":"Schlagwort auswählen",Settings:"Einstellungen","Settings navigation":"Einstellungen für die Navigation","Show password":"Passwort anzeigen","Smileys & Emotion":"Smileys & Emotionen","Start slideshow":"Diashow starten",Submit:"Einreichen",Symbols:"Symbole","Travel & Places":"Reisen & Orte","Type to search time zone":"Tippen, um Zeitzone zu suchen","Unable to search the group":"Die Gruppe konnte nicht durchsucht werden","Undo changes":"Änderungen rückgängig machen",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Nachricht schreiben, "@" um jemanden zu erwähnen, ":" für die automatische Vervollständigung von Emojis …'}},{locale:"de_DE",translations:{"{tag} (invisible)":"{tag} (unsichtbar)","{tag} (restricted)":"{tag} (eingeschränkt)",Actions:"Aktionen",Activities:"Aktivitäten","Animals & Nature":"Tiere & Natur","Anything shared with the same group of people will show up here":"Alles, das mit derselben Gruppe von Personen geteilt wird, wird hier angezeigt","Avatar of {displayName}":"Avatar von {displayName}","Avatar of {displayName}, {status}":"Avatar von {displayName}, {status}","Cancel changes":"Änderungen verwerfen","Change title":"Titel ändern",Choose:"Auswählen","Clear text":"Klartext",Close:"Schließen","Close modal":"Modal schließen","Close navigation":"Navigation schließen","Close sidebar":"Seitenleiste schließen","Confirm changes":"Änderungen bestätigen",Custom:"Benutzerdefiniert","Edit item":"Objekt bearbeiten","Error getting related resources":"Fehler beim Abrufen verwandter Ressourcen","Error parsing svg":"Fehler beim Einlesen der SVG","External documentation for {title}":"Externe Dokumentation für {title}",Favorite:"Favorit",Flags:"Flaggen","Food & Drink":"Essen & Trinken","Frequently used":"Häufig verwendet",Global:"Global","Go back to the list":"Zurück zur Liste","Hide password":"Passwort verbergen","Message limit of {count} characters reached":"Nachrichtenlimit von {count} Zeichen erreicht","More items …":"Weitere Elemente …",Next:"Weiter","No emoji found":"Kein Emoji gefunden","No results":"Keine Ergebnisse",Objects:"Objekte",Open:"Öffnen",'Open link to "{resourceTitle}"':'Link zu "{resourceTitle}" öffnen',"Open navigation":"Navigation öffnen","Password is secure":"Passwort ist sicher","Pause slideshow":"Diashow pausieren","People & Body":"Menschen & Körper","Pick an emoji":"Ein Emoji auswählen","Please select a time zone:":"Bitte eine Zeitzone auswählen:",Previous:"Vorherige","Related resources":"Verwandte Ressourcen",Search:"Suche","Search results":"Suchergebnisse","Select a tag":"Schlagwort auswählen",Settings:"Einstellungen","Settings navigation":"Einstellungen für die Navigation","Show password":"Passwort anzeigen","Smileys & Emotion":"Smileys & Emotionen","Start slideshow":"Diashow starten",Submit:"Einreichen",Symbols:"Symbole","Travel & Places":"Reisen & Orte","Type to search time zone":"Tippen, um eine Zeitzone zu suchen","Unable to search the group":"Die Gruppe kann nicht durchsucht werden","Undo changes":"Änderungen rückgängig machen",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Nachricht schreiben, "@" um jemanden zu erwähnen, ":" für die automatische Vervollständigung von Emojis …'}},{locale:"el",translations:{"{tag} (invisible)":"{tag} (αόρατο)","{tag} (restricted)":"{tag} (περιορισμένο)",Actions:"Ενέργειες",Activities:"Δραστηριότητες","Animals & Nature":"Ζώα & Φύση","Anything shared with the same group of people will show up here":"Οτιδήποτε μοιράζεται με την ίδια ομάδα ατόμων θα εμφανίζεται εδώ","Avatar of {displayName}":"Άβαταρ του {displayName}","Avatar of {displayName}, {status}":"Άβαταρ του {displayName}, {status}","Cancel changes":"Ακύρωση αλλαγών","Change title":"Αλλαγή τίτλου",Choose:"Επιλογή","Clear text":"Εκκαθάριση κειμένου",Close:"Κλείσιμο","Close modal":"Βοηθητικό κλείσιμο","Close navigation":"Κλείσιμο πλοήγησης","Close sidebar":"Κλείσιμο πλευρικής μπάρας","Confirm changes":"Επιβεβαίωση αλλαγών",Custom:"Προσαρμογή","Edit item":"Επεξεργασία","Error getting related resources":"Σφάλμα λήψης σχετικών πόρων","Error parsing svg":"Σφάλμα ανάλυσης svg","External documentation for {title}":"Εξωτερική τεκμηρίωση για {title}",Favorite:"Αγαπημένα",Flags:"Σημαίες","Food & Drink":"Φαγητό & Ποτό","Frequently used":"Συχνά χρησιμοποιούμενο",Global:"Καθολικό","Go back to the list":"Επιστροφή στην αρχική λίστα ","Hide password":"Απόκρυψη κωδικού πρόσβασης","Message limit of {count} characters reached":"Συμπληρώθηκε το όριο των {count} χαρακτήρων του μηνύματος","More items …":"Περισσότερα στοιχεία …",Next:"Επόμενο","No emoji found":"Δεν βρέθηκε emoji","No results":"Κανένα αποτέλεσμα",Objects:"Αντικείμενα",Open:"Άνοιγμα",'Open link to "{resourceTitle}"':'Άνοιγμα συνδέσμου στο "{resourceTitle}"',"Open navigation":"Άνοιγμα πλοήγησης","Password is secure":"Ο κωδικός πρόσβασης είναι ασφαλής","Pause slideshow":"Παύση προβολής διαφανειών","People & Body":"Άνθρωποι & Σώμα","Pick an emoji":"Επιλέξτε ένα emoji","Please select a time zone:":"Παρακαλούμε επιλέξτε μια ζώνη ώρας:",Previous:"Προηγούμενο","Related resources":"Σχετικοί πόροι",Search:"Αναζήτηση","Search results":"Αποτελέσματα αναζήτησης","Select a tag":"Επιλογή ετικέτας",Settings:"Ρυθμίσεις","Settings navigation":"Πλοήγηση ρυθμίσεων","Show password":"Εμφάνιση κωδικού πρόσβασης","Smileys & Emotion":"Φατσούλες & Συναίσθημα","Start slideshow":"Έναρξη προβολής διαφανειών",Submit:"Υποβολή",Symbols:"Σύμβολα","Travel & Places":"Ταξίδια & Τοποθεσίες","Type to search time zone":"Πληκτρολογήστε για αναζήτηση ζώνης ώρας","Unable to search the group":"Δεν είναι δυνατή η αναζήτηση της ομάδας","Undo changes":"Αναίρεση Αλλαγών",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Γράψτε μήνυμα, χρησιμοποιείστε "@" για να αναφέρετε κάποιον, χρησιμοποιείστε ":" για αυτόματη συμπλήρωση emoji …'}},{locale:"en_GB",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restricted)",Actions:"Actions",Activities:"Activities","Animals & Nature":"Animals & Nature","Anything shared with the same group of people will show up here":"Anything shared with the same group of people will show up here","Avatar of {displayName}":"Avatar of {displayName}","Avatar of {displayName}, {status}":"Avatar of {displayName}, {status}","Cancel changes":"Cancel changes","Change title":"Change title",Choose:"Choose","Clear text":"Clear text",Close:"Close","Close modal":"Close modal","Close navigation":"Close navigation","Close sidebar":"Close sidebar","Confirm changes":"Confirm changes",Custom:"Custom","Edit item":"Edit item","Error getting related resources":"Error getting related resources","Error parsing svg":"Error parsing svg","External documentation for {title}":"External documentation for {title}",Favorite:"Favourite",Flags:"Flags","Food & Drink":"Food & Drink","Frequently used":"Frequently used",Global:"Global","Go back to the list":"Go back to the list","Hide password":"Hide password","Message limit of {count} characters reached":"Message limit of {count} characters reached","More items …":"More items …",Next:"Next","No emoji found":"No emoji found","No results":"No results",Objects:"Objects",Open:"Open",'Open link to "{resourceTitle}"':'Open link to "{resourceTitle}"',"Open navigation":"Open navigation","Password is secure":"Password is secure","Pause slideshow":"Pause slideshow","People & Body":"People & Body","Pick an emoji":"Pick an emoji","Please select a time zone:":"Please select a time zone:",Previous:"Previous","Related resources":"Related resources",Search:"Search","Search results":"Search results","Select a tag":"Select a tag",Settings:"Settings","Settings navigation":"Settings navigation","Show password":"Show password","Smileys & Emotion":"Smileys & Emotion","Start slideshow":"Start slideshow",Submit:"Submit",Symbols:"Symbols","Travel & Places":"Travel & Places","Type to search time zone":"Type to search time zone","Unable to search the group":"Unable to search the group","Undo changes":"Undo changes",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Write message, use "@" to mention someone, use ":" for emoji autocompletion …'}},{locale:"eo",translations:{"{tag} (invisible)":"{tag} (kaŝita)","{tag} (restricted)":"{tag} (limigita)",Actions:"Agoj",Activities:"Aktiveco","Animals & Nature":"Bestoj & Naturo",Choose:"Elektu",Close:"Fermu",Custom:"Propra",Flags:"Flagoj","Food & Drink":"Manĝaĵo & Trinkaĵo","Frequently used":"Ofte uzataj","Message limit of {count} characters reached":"La limo je {count} da literoj atingita",Next:"Sekva","No emoji found":"La emoĝio forestas","No results":"La rezulto forestas",Objects:"Objektoj","Pause slideshow":"Payzi bildprezenton","People & Body":"Homoj & Korpo","Pick an emoji":"Elekti emoĝion ",Previous:"Antaŭa",Search:"Serĉi","Search results":"Serĉrezultoj","Select a tag":"Elektu etikedon",Settings:"Agordo","Settings navigation":"Agorda navigado","Smileys & Emotion":"Ridoj kaj Emocioj","Start slideshow":"Komenci bildprezenton",Symbols:"Signoj","Travel & Places":"Vojaĵoj & Lokoj","Unable to search the group":"Ne eblas serĉi en la grupo","Write message, @ to mention someone …":"Mesaĝi, uzu @ por mencii iun ..."}},{locale:"es",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restringido)",Actions:"Acciones",Activities:"Actividades","Animals & Nature":"Animales y naturaleza","Anything shared with the same group of people will show up here":"Cualquier cosa que sea compartida con el mismo grupo de personas se mostrará aquí","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancelar cambios","Change title":"Cambiar título",Choose:"Elegir","Clear text":"Limpiar texto",Close:"Cerrar","Close modal":"Cerrar modal","Close navigation":"Cerrar navegación","Close sidebar":"Cerrar barra lateral","Confirm changes":"Confirmar cambios",Custom:"Personalizado","Edit item":"Editar elemento","Error getting related resources":"Se encontró un error al obtener los recursos relacionados","Error parsing svg":"Error procesando svg","External documentation for {title}":"Documentacion externa de {title}",Favorite:"Favorito",Flags:"Banderas","Food & Drink":"Comida y bebida","Frequently used":"Usado con frecuenca",Global:"Global","Go back to the list":"Volver a la lista","Hide password":"Ocultar contraseña","Message limit of {count} characters reached":"El mensaje ha alcanzado el límite de {count} caracteres","More items …":"Más ítems...",Next:"Siguiente","No emoji found":"No hay ningún emoji","No results":" Ningún resultado",Objects:"Objetos",Open:"Abrir",'Open link to "{resourceTitle}"':'Abrir enlace a "{resourceTitle}"',"Open navigation":"Abrir navegación","Password is secure":"La contraseña es segura","Pause slideshow":"Pausar la presentación ","People & Body":"Personas y cuerpos","Pick an emoji":"Elegir un emoji","Please select a time zone:":"Por favor elige un huso de horario:",Previous:"Anterior","Related resources":"Recursos relacionados",Search:"Buscar","Search results":"Resultados de la búsqueda","Select a tag":"Seleccione una etiqueta",Settings:"Ajustes","Settings navigation":"Navegación por ajustes","Show password":"Mostrar contraseña","Smileys & Emotion":"Smileys y emoticonos","Start slideshow":"Iniciar la presentación",Submit:"Enviar",Symbols:"Símbolos","Travel & Places":"Viajes y lugares","Type to search time zone":"Escribe para buscar un huso de horario","Unable to search the group":"No es posible buscar en el grupo","Undo changes":"Deshacer cambios",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escribir mensaje, utilice "@" para mencionar a alguien, utilice ":" para autocompletado de emojis ...'}},{locale:"eu",translations:{"{tag} (invisible)":"{tag} (ikusezina)","{tag} (restricted)":"{tag} (mugatua)",Actions:"Ekintzak",Activities:"Jarduerak","Animals & Nature":"Animaliak eta Natura","Anything shared with the same group of people will show up here":"Pertsona-talde berarekin partekatutako edozer agertuko da hemen","Avatar of {displayName}":"{displayName}-(e)n irudia","Avatar of {displayName}, {status}":"{displayName} -(e)n irudia, {status}","Cancel changes":"Ezeztatu aldaketak","Change title":"Aldatu titulua",Choose:"Aukeratu","Clear text":"Garbitu testua",Close:"Itxi","Close modal":"Itxi modala","Close navigation":"Itxi nabigazioa","Close sidebar":"Itxi albo-barra","Confirm changes":"Baieztatu aldaketak",Custom:"Pertsonalizatua","Edit item":"Editatu elementua","Error getting related resources":"Errorea erlazionatutako baliabideak lortzerakoan","Error parsing svg":"Errore bat gertatu da svg-a analizatzean","External documentation for {title}":"Kanpoko dokumentazioa {title}(r)entzat",Favorite:"Gogokoa",Flags:"Banderak","Food & Drink":"Janaria eta edariak","Frequently used":"Askotan erabilia",Global:"Globala","Go back to the list":"Bueltatu zerrendara","Hide password":"Ezkutatu pasahitza","Message limit of {count} characters reached":"Mezuaren {count} karaketere-limitera heldu zara","More items …":"Elementu gehiago …",Next:"Hurrengoa","No emoji found":"Ez da emojirik aurkitu","No results":"Emaitzarik ez",Objects:"Objektuak",Open:"Ireki",'Open link to "{resourceTitle}"':'Ireki esteka: "{resourceTitle}"',"Open navigation":"Ireki nabigazioa","Password is secure":"Pasahitza segurua da","Pause slideshow":"Pausatu diaporama","People & Body":"Jendea eta gorputza","Pick an emoji":"Hautatu emoji bat","Please select a time zone:":"Mesedez hautatu ordu-zona bat:",Previous:"Aurrekoa","Related resources":"Erlazionatutako baliabideak",Search:"Bilatu","Search results":"Bilaketa emaitzak","Select a tag":"Hautatu etiketa bat",Settings:"Ezarpenak","Settings navigation":"Nabigazio ezarpenak","Show password":"Erakutsi pasahitza","Smileys & Emotion":"Smileyak eta emozioa","Start slideshow":"Hasi diaporama",Submit:"Bidali",Symbols:"Sinboloak","Travel & Places":"Bidaiak eta lekuak","Type to search time zone":"Idatzi ordu-zona bat bilatzeko","Unable to search the group":"Ezin izan da taldea bilatu","Undo changes":"Aldaketak desegin",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Idatzi mezua, erabili "@" norbait aipatzeko, erabili ":" emojiak automatikoki osatzeko...'}},{locale:"fi_FI",translations:{"{tag} (invisible)":"{tag} (näkymätön)","{tag} (restricted)":"{tag} (rajoitettu)",Actions:"Toiminnot",Activities:"Aktiviteetit","Animals & Nature":"Eläimet & luonto","Avatar of {displayName}":"Käyttäjän {displayName} avatar","Avatar of {displayName}, {status}":"Käyttäjän {displayName} avatar, {status}","Cancel changes":"Peruuta muutokset",Choose:"Valitse",Close:"Sulje","Close navigation":"Sulje navigaatio","Confirm changes":"Vahvista muutokset",Custom:"Mukautettu","Edit item":"Muokkaa kohdetta","External documentation for {title}":"Ulkoinen dokumentaatio kohteelle {title}",Flags:"Liput","Food & Drink":"Ruoka & juoma","Frequently used":"Usein käytetyt",Global:"Yleinen","Go back to the list":"Siirry takaisin listaan","Message limit of {count} characters reached":"Viestin merkken enimmäisimäärä {count} täynnä ",Next:"Seuraava","No emoji found":"Emojia ei löytynyt","No results":"Ei tuloksia",Objects:"Esineet & asiat","Open navigation":"Avaa navigaatio","Pause slideshow":"Keskeytä diaesitys","People & Body":"Ihmiset & keho","Pick an emoji":"Valitse emoji","Please select a time zone:":"Valitse aikavyöhyke:",Previous:"Edellinen",Search:"Etsi","Search results":"Hakutulokset","Select a tag":"Valitse tagi",Settings:"Asetukset","Settings navigation":"Asetusnavigaatio","Smileys & Emotion":"Hymiöt & tunteet","Start slideshow":"Aloita diaesitys",Submit:"Lähetä",Symbols:"Symbolit","Travel & Places":"Matkustus & kohteet","Type to search time zone":"Kirjoita etsiäksesi aikavyöhyke","Unable to search the group":"Ryhmää ei voi hakea","Undo changes":"Kumoa muutokset","Write message, @ to mention someone, : for emoji autocompletion …":"Kirjoita viesti, @ mainitaksesi käyttäjän, : emojin automaattitäydennykseen…"}},{locale:"fr",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restreint)",Actions:"Actions",Activities:"Activités","Animals & Nature":"Animaux & Nature","Anything shared with the same group of people will show up here":"Tout ce qui est partagé avec le même groupe de personnes apparaîtra ici","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Annuler les modifications","Change title":"Modifier le titre",Choose:"Choisir","Clear text":"Effacer le texte",Close:"Fermer","Close modal":"Fermer la fenêtre","Close navigation":"Fermer la navigation","Close sidebar":"Fermer la barre latérale","Confirm changes":"Confirmer les modifications",Custom:"Personnalisé","Edit item":"Éditer l'élément","Error getting related resources":"Erreur à la récupération des ressources liées","Error parsing svg":"Erreur d'analyse SVG","External documentation for {title}":"Documentation externe pour {title}",Favorite:"Favori",Flags:"Drapeaux","Food & Drink":"Nourriture & Boissons","Frequently used":"Utilisés fréquemment",Global:"Global","Go back to the list":"Retourner à la liste","Hide password":"Cacher le mot de passe","Message limit of {count} characters reached":"Limite de messages de {count} caractères atteinte","More items …":"Plus d'éléments...",Next:"Suivant","No emoji found":"Pas d’émoji trouvé","No results":"Aucun résultat",Objects:"Objets",Open:"Ouvrir",'Open link to "{resourceTitle}"':'Ouvrir le lien vers "{resourceTitle}"',"Open navigation":"Ouvrir la navigation","Password is secure":"Le mot de passe est sécurisé","Pause slideshow":"Mettre le diaporama en pause","People & Body":"Personnes & Corps","Pick an emoji":"Choisissez un émoji","Please select a time zone:":"Sélectionnez un fuseau horaire : ",Previous:"Précédent","Related resources":"Ressources liées",Search:"Chercher","Search results":"Résultats de recherche","Select a tag":"Sélectionnez une balise",Settings:"Paramètres","Settings navigation":"Navigation dans les paramètres","Show password":"Afficher le mot de passe","Smileys & Emotion":"Smileys & Émotions","Start slideshow":"Démarrer le diaporama",Submit:"Valider",Symbols:"Symboles","Travel & Places":"Voyage & Lieux","Type to search time zone":"Saisissez les premiers lettres pour rechercher un fuseau horaire","Unable to search the group":"Impossible de chercher le groupe","Undo changes":"Annuler les changements",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Écrire un message, utiliser "@" pour mentionner une personne, ":" pour l\'autocomplétion des émojis...'}},{locale:"gl",translations:{"{tag} (invisible)":"{tag} (invisíbel)","{tag} (restricted)":"{tag} (restrinxido)",Actions:"Accións",Activities:"Actividades","Animals & Nature":"Animais e natureza","Cancel changes":"Cancelar os cambios",Choose:"Escoller",Close:"Pechar","Confirm changes":"Confirma os cambios",Custom:"Personalizado","External documentation for {title}":"Documentación externa para {title}",Flags:"Bandeiras","Food & Drink":"Comida e bebida","Frequently used":"Usado con frecuencia","Message limit of {count} characters reached":"Acadouse o límite de {count} caracteres por mensaxe",Next:"Seguinte","No emoji found":"Non se atopou ningún «emoji»","No results":"Sen resultados",Objects:"Obxectos","Pause slideshow":"Pausar o diaporama","People & Body":"Persoas e corpo","Pick an emoji":"Escolla un «emoji»",Previous:"Anterir",Search:"Buscar","Search results":"Resultados da busca","Select a tag":"Seleccione unha etiqueta",Settings:"Axustes","Settings navigation":"Navegación polos axustes","Smileys & Emotion":"Sorrisos e emocións","Start slideshow":"Iniciar o diaporama",Submit:"Enviar",Symbols:"Símbolos","Travel & Places":"Viaxes e lugares","Unable to search the group":"Non foi posíbel buscar o grupo","Write message, @ to mention someone …":"Escriba a mensaxe, @ para mencionar a alguén…"}},{locale:"he",translations:{"{tag} (invisible)":"{tag} (נסתר)","{tag} (restricted)":"{tag} (מוגבל)",Actions:"פעולות",Activities:"פעילויות","Animals & Nature":"חיות וטבע",Choose:"בחירה",Close:"סגירה",Custom:"בהתאמה אישית",Flags:"דגלים","Food & Drink":"מזון ומשקאות","Frequently used":"בשימוש תדיר",Next:"הבא","No emoji found":"לא נמצא אמוג׳י","No results":"אין תוצאות",Objects:"חפצים","Pause slideshow":"השהיית מצגת","People & Body":"אנשים וגוף","Pick an emoji":"נא לבחור אמוג׳י",Previous:"הקודם",Search:"חיפוש","Search results":"תוצאות חיפוש","Select a tag":"בחירת תגית",Settings:"הגדרות","Smileys & Emotion":"חייכנים ורגשונים","Start slideshow":"התחלת המצגת",Symbols:"סמלים","Travel & Places":"טיולים ומקומות","Unable to search the group":"לא ניתן לחפש בקבוצה"}},{locale:"hu_HU",translations:{"{tag} (invisible)":"{tag} (láthatatlan)","{tag} (restricted)":"{tag} (korlátozott)",Actions:"Műveletek",Activities:"Tevékenységek","Animals & Nature":"Állatok és természet","Anything shared with the same group of people will show up here":"Minden, amit ugyanazzal a csoporttal oszt meg, itt fog megjelenni","Avatar of {displayName}":"{displayName} profilképe","Avatar of {displayName}, {status}":"{displayName} profilképe, {status}","Cancel changes":"Változtatások elvetése","Change title":"Cím megváltoztatása",Choose:"Válassszon","Clear text":"Szöveg törlése",Close:"Bezárás","Close modal":"Ablak bezárása","Close navigation":"Navigáció bezárása","Close sidebar":"Oldalsáv bezárása","Confirm changes":"Változtatások megerősítése",Custom:"Egyéni","Edit item":"Elem szerkesztése","Error getting related resources":"Hiba a kapcsolódó erőforrások lekérésekor","Error parsing svg":"Hiba az SVG feldolgozásakor","External documentation for {title}":"Külső dokumentáció ehhez: {title}",Favorite:"Kedvenc",Flags:"Zászlók","Food & Drink":"Étel és ital","Frequently used":"Gyakran használt",Global:"Globális","Go back to the list":"Ugrás vissza a listához","Hide password":"Jelszó elrejtése","Message limit of {count} characters reached":"{count} karakteres üzenetkorlát elérve","More items …":"További elemek...",Next:"Következő","No emoji found":"Nem található emodzsi","No results":"Nincs találat",Objects:"Tárgyak",Open:"Megnyitás",'Open link to "{resourceTitle}"':"A(z) „{resourceTitle}” hivatkozásának megnyitása","Open navigation":"Navigáció megnyitása","Password is secure":"A jelszó biztonságos","Pause slideshow":"Diavetítés szüneteltetése","People & Body":"Emberek és test","Pick an emoji":"Válasszon egy emodzsit","Please select a time zone:":"Válasszon időzónát:",Previous:"Előző","Related resources":"Kapcsolódó erőforrások",Search:"Keresés","Search results":"Találatok","Select a tag":"Válasszon címkét",Settings:"Beállítások","Settings navigation":"Navigáció a beállításokban","Show password":"Jelszó megjelenítése","Smileys & Emotion":"Mosolyok és érzelmek","Start slideshow":"Diavetítés indítása",Submit:"Beküldés",Symbols:"Szimbólumok","Travel & Places":"Utazás és helyek","Type to search time zone":"Gépeljen az időzóna kereséséhez","Unable to search the group":"A csoport nem kereshető","Undo changes":"Változtatások visszavonása",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':"Írjon egy üzenetet, használja a „@”-ot valaki megemlítéséhet, illetve a „:”-ot az emodzsik automatikus kiegészítéséhez…"}},{locale:"is",translations:{"{tag} (invisible)":"{tag} (ósýnilegt)","{tag} (restricted)":"{tag} (takmarkað)",Actions:"Aðgerðir",Activities:"Aðgerðir","Animals & Nature":"Dýr og náttúra",Choose:"Velja",Close:"Loka",Custom:"Sérsniðið",Flags:"Flögg","Food & Drink":"Matur og drykkur","Frequently used":"Oftast notað",Next:"Næsta","No emoji found":"Ekkert tjáningartákn fannst","No results":"Engar niðurstöður",Objects:"Hlutir","Pause slideshow":"Gera hlé á skyggnusýningu","People & Body":"Fólk og líkami","Pick an emoji":"Veldu tjáningartákn",Previous:"Fyrri",Search:"Leita","Search results":"Leitarniðurstöður","Select a tag":"Veldu merki",Settings:"Stillingar","Smileys & Emotion":"Broskallar og tilfinningar","Start slideshow":"Byrja skyggnusýningu",Symbols:"Tákn","Travel & Places":"Staðir og ferðalög","Unable to search the group":"Get ekki leitað í hópnum"}},{locale:"it",translations:{"{tag} (invisible)":"{tag} (invisibile)","{tag} (restricted)":"{tag} (limitato)",Actions:"Azioni",Activities:"Attività","Animals & Nature":"Animali e natura","Anything shared with the same group of people will show up here":"Tutto ciò che è stato condiviso con lo stesso gruppo di persone viene visualizzato qui","Avatar of {displayName}":"Avatar di {displayName}","Avatar of {displayName}, {status}":"Avatar di {displayName}, {status}","Cancel changes":"Annulla modifiche","Change title":"Modifica il titolo",Choose:"Scegli","Clear text":"Cancella il testo",Close:"Chiudi","Close modal":"Chiudi il messaggio modale","Close navigation":"Chiudi la navigazione","Close sidebar":"Chiudi la barra laterale","Confirm changes":"Conferma modifiche",Custom:"Personalizzato","Edit item":"Modifica l'elemento","Error getting related resources":"Errore nell'ottenere risorse correlate","Error parsing svg":"Errore nell'analizzare l'svg","External documentation for {title}":"Documentazione esterna per {title}",Favorite:"Preferito",Flags:"Bandiere","Food & Drink":"Cibo e bevande","Frequently used":"Usati di frequente",Global:"Globale","Go back to the list":"Torna all'elenco","Hide password":"Nascondi la password","Message limit of {count} characters reached":"Limite dei messaggi di {count} caratteri raggiunto","More items …":"Più elementi ...",Next:"Successivo","No emoji found":"Nessun emoji trovato","No results":"Nessun risultato",Objects:"Oggetti",Open:"Apri",'Open link to "{resourceTitle}"':'Apri il link a "{resourceTitle}"',"Open navigation":"Apri la navigazione","Password is secure":"La password è sicura","Pause slideshow":"Presentazione in pausa","People & Body":"Persone e corpo","Pick an emoji":"Scegli un emoji","Please select a time zone:":"Si prega di selezionare un fuso orario:",Previous:"Precedente","Related resources":"Risorse correlate",Search:"Cerca","Search results":"Risultati di ricerca","Select a tag":"Seleziona un'etichetta",Settings:"Impostazioni","Settings navigation":"Navigazione delle impostazioni","Show password":"Mostra la password","Smileys & Emotion":"Faccine ed emozioni","Start slideshow":"Avvia presentazione",Submit:"Invia",Symbols:"Simboli","Travel & Places":"Viaggi e luoghi","Type to search time zone":"Digita per cercare un fuso orario","Unable to search the group":"Impossibile cercare il gruppo","Undo changes":"Cancella i cambiamenti",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Scrivi un messaggio, "@" per menzionare qualcuno, ":" per il completamento automatico delle emoji ...'}},{locale:"ja_JP",translations:{"{tag} (invisible)":"{タグ} (不可視)","{tag} (restricted)":"{タグ} (制限付)",Actions:"操作",Activities:"アクティビティ","Animals & Nature":"動物と自然","Anything shared with the same group of people will show up here":"同じグループで共有しているものは、全てここに表示されます","Avatar of {displayName}":"{displayName} のアバター","Avatar of {displayName}, {status}":"{displayName}, {status} のアバター","Cancel changes":"変更をキャンセル","Change title":"タイトルを変更",Choose:"選択","Clear text":"テキストをクリア",Close:"閉じる","Close modal":"モーダルを閉じる","Close navigation":"ナビゲーションを閉じる","Close sidebar":"サイドバーを閉じる","Confirm changes":"変更を承認",Custom:"カスタム","Edit item":"編集","Error getting related resources":"関連リソースの取得エラー","Error parsing svg":"svgの解析エラー","External documentation for {title}":"{title} のための添付文書",Favorite:"お気に入り",Flags:"国旗","Food & Drink":"食べ物と飲み物","Frequently used":"よく使うもの",Global:"全体","Go back to the list":"リストに戻る","Hide password":"パスワードを非表示","Message limit of {count} characters reached":"{count} 文字のメッセージ上限に達しています","More items …":"他のアイテム",Next:"次","No emoji found":"絵文字が見つかりません","No results":"なし",Objects:"物",Open:"開く",'Open link to "{resourceTitle}"':'"{resourceTitle}"のリンクを開く',"Open navigation":"ナビゲーションを開く","Password is secure":"パスワードは保護されています","Pause slideshow":"スライドショーを一時停止","People & Body":"様々な人と体の部位","Pick an emoji":"絵文字を選択","Please select a time zone:":"タイムゾーンを選んで下さい:",Previous:"前","Related resources":"関連リソース",Search:"検索","Search results":"検索結果","Select a tag":"タグを選択",Settings:"設定","Settings navigation":"ナビゲーション設定","Show password":"パスワードを表示","Smileys & Emotion":"感情表現","Start slideshow":"スライドショーを開始",Submit:"提出",Symbols:"記号","Travel & Places":"旅行と場所","Type to search time zone":"タイムゾーン検索のため入力してください","Unable to search the group":"グループを検索できません","Undo changes":"変更を取り消し",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'メッセージを記入、"@"でメンション、":"で絵文字の自動補完 ...'}},{locale:"lt_LT",translations:{"{tag} (invisible)":"{tag} (nematoma)","{tag} (restricted)":"{tag} (apribota)",Actions:"Veiksmai",Activities:"Veiklos","Animals & Nature":"Gyvūnai ir gamta",Choose:"Pasirinkti",Close:"Užverti",Custom:"Tinkinti","External documentation for {title}":"Išorinė {title} dokumentacija",Flags:"Vėliavos","Food & Drink":"Maistas ir gėrimai","Frequently used":"Dažniausiai naudoti","Message limit of {count} characters reached":"Pasiekta {count} simbolių žinutės riba",Next:"Kitas","No emoji found":"Nerasta jaustukų","No results":"Nėra rezultatų",Objects:"Objektai","Pause slideshow":"Pristabdyti skaidrių rodymą","People & Body":"Žmonės ir kūnas","Pick an emoji":"Pasirinkti jaustuką",Previous:"Ankstesnis",Search:"Ieškoti","Search results":"Paieškos rezultatai","Select a tag":"Pasirinkti žymę",Settings:"Nustatymai","Settings navigation":"Naršymas nustatymuose","Smileys & Emotion":"Šypsenos ir emocijos","Start slideshow":"Pradėti skaidrių rodymą",Submit:"Pateikti",Symbols:"Simboliai","Travel & Places":"Kelionės ir vietos","Unable to search the group":"Nepavyko atlikti paiešką grupėje","Write message, @ to mention someone …":"Rašykite žinutę, naudokite @ norėdami kažką paminėti…"}},{locale:"lv",translations:{"{tag} (invisible)":"{tag} (neredzams)","{tag} (restricted)":"{tag} (ierobežots)",Choose:"Izvēlēties",Close:"Aizvērt",Next:"Nākamais","No results":"Nav rezultātu","Pause slideshow":"Pauzēt slaidrādi",Previous:"Iepriekšējais","Select a tag":"Izvēlēties birku",Settings:"Iestatījumi","Start slideshow":"Sākt slaidrādi"}},{locale:"mk",translations:{"{tag} (invisible)":"{tag} (невидливо)","{tag} (restricted)":"{tag} (ограничено)",Actions:"Акции",Activities:"Активности","Animals & Nature":"Животни & Природа","Avatar of {displayName}":"Аватар на {displayName}","Avatar of {displayName}, {status}":"Аватар на {displayName}, {status}","Cancel changes":"Откажи ги промените","Change title":"Промени наслов",Choose:"Избери",Close:"Затвори","Close modal":"Затвори модал","Close navigation":"Затвори навигација","Confirm changes":"Потврди ги промените",Custom:"Прилагодени","Edit item":"Уреди","External documentation for {title}":"Надворешна документација за {title}",Favorite:"Фаворити",Flags:"Знамиња","Food & Drink":"Храна & Пијалоци","Frequently used":"Најчесто користени",Global:"Глобално","Go back to the list":"Врати се на листата",items:"ставки","Message limit of {count} characters reached":"Ограничувањето на должината на пораката од {count} карактери е надминато","More {dashboardItemType} …":"Повеќе {dashboardItemType} …",Next:"Следно","No emoji found":"Не се пронајдени емотикони","No results":"Нема резултати",Objects:"Објекти",Open:"Отвори","Open navigation":"Отвори навигација","Pause slideshow":"Пузирај слајдшоу","People & Body":"Луѓе & Тело","Pick an emoji":"Избери емотикон","Please select a time zone:":"Изберете временска зона:",Previous:"Предходно",Search:"Барај","Search results":"Резултати од барувањето","Select a tag":"Избери ознака",Settings:"Параметри","Settings navigation":"Параметри за навигација","Smileys & Emotion":"Смешковци & Емотикони","Start slideshow":"Стартувај слајдшоу",Submit:"Испрати",Symbols:"Симболи","Travel & Places":"Патувања & Места","Type to search time zone":"Напишете за да пребарате временска зона","Unable to search the group":"Неможе да се принајде групата","Undo changes":"Врати ги промените","Write message, @ to mention someone, : for emoji autocompletion …":"Напиши порака, @ за да спомнете некого, : за емотинони автоатско комплетирање ..."}},{locale:"my",translations:{"{tag} (invisible)":"{tag} (ကွယ်ဝှက်ထား)","{tag} (restricted)":"{tag} (ကန့်သတ်)",Actions:"လုပ်ဆောင်ချက်များ",Activities:"ပြုလုပ်ဆောင်တာများ","Animals & Nature":"တိရစ္ဆာန်များနှင့် သဘာဝ","Avatar of {displayName}":"{displayName} ၏ ကိုယ်ပွား","Cancel changes":"ပြောင်းလဲမှုများ ပယ်ဖျက်ရန်",Choose:"ရွေးချယ်ရန်",Close:"ပိတ်ရန်","Confirm changes":"ပြောင်းလဲမှုများ အတည်ပြုရန်",Custom:"အလိုကျချိန်ညှိမှု","External documentation for {title}":"{title} အတွက် ပြင်ပ စာရွက်စာတမ်း",Flags:"အလံများ","Food & Drink":"အစားအသောက်","Frequently used":"မကြာခဏအသုံးပြုသော",Global:"ကမ္ဘာလုံးဆိုင်ရာ","Message limit of {count} characters reached":"ကန့်သတ် စာလုံးရေ {count} လုံး ပြည့်ပါပြီ",Next:"နောက်သို့ဆက်ရန်","No emoji found":"အီမိုဂျီ ရှာဖွေမတွေ့နိုင်ပါ","No results":"ရလဒ်မရှိပါ",Objects:"အရာဝတ္ထုများ","Pause slideshow":"စလိုက်ရှိုး ခေတ္တရပ်ရန်","People & Body":"လူပုဂ္ဂိုလ်များနှင့် ခန္ဓာကိုယ်","Pick an emoji":"အီမိုဂျီရွေးရန်","Please select a time zone:":"ဒေသစံတော်ချိန် ရွေးချယ်ပေးပါ",Previous:"ယခင်",Search:"ရှာဖွေရန်","Search results":"ရှာဖွေမှု ရလဒ်များ","Select a tag":"tag ရွေးချယ်ရန်",Settings:"ချိန်ညှိချက်များ","Settings navigation":"ချိန်ညှိချက်အညွှန်း","Smileys & Emotion":"စမိုင်လီများနှင့် အီမိုရှင်း","Start slideshow":"စလိုက်ရှိုးအား စတင်ရန်",Submit:"တင်သွင်းရန်",Symbols:"သင်္ကေတများ","Travel & Places":"ခရီးသွားလာခြင်းနှင့် နေရာများ","Type to search time zone":"ဒေသစံတော်ချိန်များ ရှာဖွေရန် စာရိုက်ပါ","Unable to search the group":"အဖွဲ့အား ရှာဖွေ၍ မရနိုင်ပါ","Write message, @ to mention someone …":"စာရေးသားရန်၊ တစ်စုံတစ်ဦးအား @ အသုံးပြု ရည်ညွှန်းရန်..."}},{locale:"nb_NO",translations:{"{tag} (invisible)":"{tag} (usynlig)","{tag} (restricted)":"{tag} (beskyttet)",Actions:"Handlinger",Activities:"Aktiviteter","Animals & Nature":"Dyr og natur","Anything shared with the same group of people will show up here":"Alt som er delt med den samme gruppen vil vises her","Avatar of {displayName}":"Avataren til {displayName}","Avatar of {displayName}, {status}":"{displayName}'s avatar, {status}","Cancel changes":"Avbryt endringer","Change title":"Endre tittel",Choose:"Velg","Clear text":"Fjern tekst",Close:"Lukk","Close modal":"Lukk modal","Close navigation":"Lukk navigasjon","Close sidebar":"Lukk sidepanel","Confirm changes":"Bekreft endringer",Custom:"Tilpasset","Edit item":"Rediger","Error getting related resources":"Feil ved henting av relaterte ressurser","Error parsing svg":"Feil ved parsing av svg","External documentation for {title}":"Ekstern dokumentasjon for {title}",Favorite:"Favoritt",Flags:"Flagg","Food & Drink":"Mat og drikke","Frequently used":"Ofte brukt",Global:"Global","Go back to the list":"Gå tilbake til listen","Hide password":"Skjul passord","Message limit of {count} characters reached":"Karakter begrensing {count} nådd i melding","More items …":"Flere gjenstander...",Next:"Neste","No emoji found":"Fant ingen emoji","No results":"Ingen resultater",Objects:"Objekter",Open:"Åpne",'Open link to "{resourceTitle}"':'Åpne link til "{resourceTitle}"',"Open navigation":"Åpne navigasjon","Password is secure":"Passordet er sikkert","Pause slideshow":"Pause lysbildefremvisning","People & Body":"Mennesker og kropp","Pick an emoji":"Velg en emoji","Please select a time zone:":"Vennligst velg tidssone",Previous:"Forrige","Related resources":"Relaterte ressurser",Search:"Søk","Search results":"Søkeresultater","Select a tag":"Velg en merkelapp",Settings:"Innstillinger","Settings navigation":"Navigasjonsinstillinger","Show password":"Vis passord","Smileys & Emotion":"Smilefjes og følelser","Start slideshow":"Start lysbildefremvisning",Submit:"Send",Symbols:"Symboler","Travel & Places":"Reise og steder","Type to search time zone":"Tast for å søke etter tidssone","Unable to search the group":"Kunne ikke søke i gruppen","Undo changes":"Tilbakestill endringer",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv melding, bruk "@" for å nevne noen, bruk ":" for autofullføring av emoji...'}},{locale:"nl",translations:{"{tag} (invisible)":"{tag} (onzichtbaar)","{tag} (restricted)":"{tag} (beperkt)",Actions:"Acties",Activities:"Activiteiten","Animals & Nature":"Dieren & Natuur","Avatar of {displayName}":"Avatar van {displayName}","Avatar of {displayName}, {status}":"Avatar van {displayName}, {status}","Cancel changes":"Wijzigingen annuleren",Choose:"Kies",Close:"Sluiten","Close navigation":"Navigatie sluiten","Confirm changes":"Wijzigingen bevestigen",Custom:"Aangepast","Edit item":"Item bewerken","External documentation for {title}":"Externe documentatie voor {title}",Flags:"Vlaggen","Food & Drink":"Eten & Drinken","Frequently used":"Vaak gebruikt",Global:"Globaal","Go back to the list":"Ga terug naar de lijst","Message limit of {count} characters reached":"Berichtlimiet van {count} karakters bereikt",Next:"Volgende","No emoji found":"Geen emoji gevonden","No results":"Geen resultaten",Objects:"Objecten","Open navigation":"Navigatie openen","Pause slideshow":"Pauzeer diavoorstelling","People & Body":"Mensen & Lichaam","Pick an emoji":"Kies een emoji","Please select a time zone:":"Selecteer een tijdzone:",Previous:"Vorige",Search:"Zoeken","Search results":"Zoekresultaten","Select a tag":"Selecteer een label",Settings:"Instellingen","Settings navigation":"Instellingen navigatie","Smileys & Emotion":"Smileys & Emotie","Start slideshow":"Start diavoorstelling",Submit:"Verwerken",Symbols:"Symbolen","Travel & Places":"Reizen & Plaatsen","Type to search time zone":"Type om de tijdzone te zoeken","Unable to search the group":"Kan niet in de groep zoeken","Undo changes":"Wijzigingen ongedaan maken","Write message, @ to mention someone, : for emoji autocompletion …":"Schrijf bericht, @ om iemand te noemen, : voor emoji auto-aanvullen ..."}},{locale:"oc",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (limit)",Actions:"Accions",Choose:"Causir",Close:"Tampar",Next:"Seguent","No results":"Cap de resultat","Pause slideshow":"Metre en pausa lo diaporama",Previous:"Precedent","Select a tag":"Seleccionar una etiqueta",Settings:"Paramètres","Start slideshow":"Lançar lo diaporama"}},{locale:"pl",translations:{"{tag} (invisible)":"{tag} (niewidoczna)","{tag} (restricted)":"{tag} (ograniczona)",Actions:"Działania",Activities:"Aktywność","Animals & Nature":"Zwierzęta i natura","Anything shared with the same group of people will show up here":"Tutaj pojawi się wszystko, co zostało udostępnione tej samej grupie osób","Avatar of {displayName}":"Awatar {displayName}","Avatar of {displayName}, {status}":"Awatar {displayName}, {status}","Cancel changes":"Anuluj zmiany","Change title":"Zmień tytuł",Choose:"Wybierz","Clear text":"Wyczyść tekst",Close:"Zamknij","Close modal":"Zamknij modal","Close navigation":"Zamknij nawigację","Close sidebar":"Zamknij pasek boczny","Confirm changes":"Potwierdź zmiany",Custom:"Zwyczajne","Edit item":"Edytuj element","Error getting related resources":"Błąd podczas pobierania powiązanych zasobów","Error parsing svg":"Błąd podczas analizowania svg","External documentation for {title}":"Dokumentacja zewnętrzna dla {title}",Favorite:"Ulubiony",Flags:"Flagi","Food & Drink":"Jedzenie i picie","Frequently used":"Często używane",Global:"Globalnie","Go back to the list":"Powrót do listy","Hide password":"Ukryj hasło","Message limit of {count} characters reached":"Przekroczono limit wiadomości wynoszący {count} znaków","More items …":"Więcej pozycji…",Next:"Następny","No emoji found":"Nie znaleziono emoji","No results":"Brak wyników",Objects:"Obiekty",Open:"Otwórz",'Open link to "{resourceTitle}"':'Otwórz link do "{resourceTitle}"',"Open navigation":"Otwórz nawigację","Password is secure":"Hasło jest bezpieczne","Pause slideshow":"Wstrzymaj pokaz slajdów","People & Body":"Ludzie i ciało","Pick an emoji":"Wybierz emoji","Please select a time zone:":"Wybierz strefę czasową:",Previous:"Poprzedni","Related resources":"Powiązane zasoby",Search:"Szukaj","Search results":"Wyniki wyszukiwania","Select a tag":"Wybierz etykietę",Settings:"Ustawienia","Settings navigation":"Ustawienia nawigacji","Show password":"Pokaż hasło","Smileys & Emotion":"Buźki i emotikony","Start slideshow":"Rozpocznij pokaz slajdów",Submit:"Wyślij",Symbols:"Symbole","Travel & Places":"Podróże i miejsca","Type to search time zone":"Wpisz, aby wyszukać strefę czasową","Unable to search the group":"Nie można przeszukać grupy","Undo changes":"Cofnij zmiany",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Napisz wiadomość, "@" aby o kimś wspomnieć, ":" dla autouzupełniania emoji…'}},{locale:"pt_BR",translations:{"{tag} (invisible)":"{tag} (invisível)","{tag} (restricted)":"{tag} (restrito) ",Actions:"Ações",Activities:"Atividades","Animals & Nature":"Animais & Natureza","Anything shared with the same group of people will show up here":"Qualquer coisa compartilhada com o mesmo grupo de pessoas aparecerá aqui","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancelar alterações","Change title":"Alterar título",Choose:"Escolher","Clear text":"Limpar texto",Close:"Fechar","Close modal":"Fechar modal","Close navigation":"Fechar navegação","Close sidebar":"Fechar barra lateral","Confirm changes":"Confirmar alterações",Custom:"Personalizado","Edit item":"Editar item","Error getting related resources":"Erro ao obter recursos relacionados","Error parsing svg":"Erro ao analisar svg","External documentation for {title}":"Documentação externa para {title}",Favorite:"Favorito",Flags:"Bandeiras","Food & Drink":"Comida & Bebida","Frequently used":"Mais usados",Global:"Global","Go back to the list":"Volte para a lista","Hide password":"Ocultar a senha","Message limit of {count} characters reached":"Limite de mensagem de {count} caracteres atingido","More items …":"Mais itens …",Next:"Próximo","No emoji found":"Nenhum emoji encontrado","No results":"Sem resultados",Objects:"Objetos",Open:"Aberto",'Open link to "{resourceTitle}"':'Abrir link para "{resourceTitle}"',"Open navigation":"Abrir navegação","Password is secure":"A senha é segura","Pause slideshow":"Pausar apresentação de slides","People & Body":"Pessoas & Corpo","Pick an emoji":"Escolha um emoji","Please select a time zone:":"Selecione um fuso horário: ",Previous:"Anterior","Related resources":"Recursos relacionados",Search:"Pesquisar","Search results":"Resultados da pesquisa","Select a tag":"Selecionar uma tag",Settings:"Configurações","Settings navigation":"Navegação de configurações","Show password":"Mostrar senha","Smileys & Emotion":"Smiles & Emoções","Start slideshow":"Iniciar apresentação de slides",Submit:"Enviar",Symbols:"Símbolo","Travel & Places":"Viagem & Lugares","Type to search time zone":"Digite para pesquisar o fuso horário ","Unable to search the group":"Não foi possível pesquisar o grupo","Undo changes":"Desfazer modificações",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Escreva mensagens, use "@" para mencionar algum, use ":" for autocompletar emoji …'}},{locale:"pt_PT",translations:{"{tag} (invisible)":"{tag} (invisivel)","{tag} (restricted)":"{tag} (restrito)",Actions:"Ações",Choose:"Escolher",Close:"Fechar",Next:"Seguinte","No results":"Sem resultados","Pause slideshow":"Pausar diaporama",Previous:"Anterior","Select a tag":"Selecionar uma etiqueta",Settings:"Definições","Start slideshow":"Iniciar diaporama","Unable to search the group":"Não é possível pesquisar o grupo"}},{locale:"ro",translations:{"{tag} (invisible)":"{tag} (invizibil)","{tag} (restricted)":"{tag} (restricționat)",Actions:"Acțiuni",Activities:"Activități","Animals & Nature":"Animale și natură","Anything shared with the same group of people will show up here":"Tot ceea ce este partajat cu același grup de persoane va fi afișat aici","Avatar of {displayName}":"Avatarul lui {displayName}","Avatar of {displayName}, {status}":"Avatarul lui {displayName}, {status}","Cancel changes":"Anulează modificările","Change title":"Modificați titlul",Choose:"Alegeți","Clear text":"Șterge textul",Close:"Închideți","Close modal":"Închideți modulul","Close navigation":"Închideți navigarea","Close sidebar":"Închide bara laterală","Confirm changes":"Confirmați modificările",Custom:"Personalizat","Edit item":"Editați elementul","Error getting related resources":" Eroare la returnarea resurselor legate","Error parsing svg":"Eroare de analizare a svg","External documentation for {title}":"Documentație externă pentru {title}",Favorite:"Favorit",Flags:"Marcaje","Food & Drink":"Alimente și băuturi","Frequently used":"Utilizate frecvent",Global:"Global","Go back to the list":"Întoarceți-vă la listă","Hide password":"Ascunde parola","Message limit of {count} characters reached":"Limita mesajului de {count} caractere a fost atinsă","More items …":"Mai multe articole ...",Next:"Următorul","No emoji found":"Nu s-a găsit niciun emoji","No results":"Nu există rezultate",Objects:"Obiecte",Open:"Deschideți",'Open link to "{resourceTitle}"':'Deschide legătura la "{resourceTitle}"',"Open navigation":"Deschideți navigația","Password is secure":"Parola este sigură","Pause slideshow":"Pauză prezentare de diapozitive","People & Body":"Oameni și corp","Pick an emoji":"Alege un emoji","Please select a time zone:":"Vă rugăm să selectați un fus orar:",Previous:"Anterior","Related resources":"Resurse legate",Search:"Căutare","Search results":"Rezultatele căutării","Select a tag":"Selectați o etichetă",Settings:"Setări","Settings navigation":"Navigare setări","Show password":"Arată parola","Smileys & Emotion":"Zâmbete și emoții","Start slideshow":"Începeți prezentarea de diapozitive",Submit:"Trimiteți",Symbols:"Simboluri","Travel & Places":"Călătorii și locuri","Type to search time zone":"Tastați pentru a căuta fusul orar","Unable to search the group":"Imposibilitatea de a căuta în grup","Undo changes":"Anularea modificărilor",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Scrie un mesaj, folosește "@" pentru a menționa pe cineva, folosește ":" pentru autocompletarea cu emoji ...'}},{locale:"ru",translations:{"{tag} (invisible)":"{tag} (невидимое)","{tag} (restricted)":"{tag} (ограниченное)",Actions:"Действия ",Activities:"События","Animals & Nature":"Животные и природа ","Avatar of {displayName}":"Аватар {displayName}","Avatar of {displayName}, {status}":"Фотография {displayName}, {status}","Cancel changes":"Отменить изменения",Choose:"Выберите",Close:"Закрыть","Close modal":"Закрыть модальное окно","Close navigation":"Закрыть навигацию","Confirm changes":"Подтвердить изменения",Custom:"Пользовательское","Edit item":"Изменить элемент","External documentation for {title}":"Внешняя документация для {title}",Flags:"Флаги","Food & Drink":"Еда, напиток","Frequently used":"Часто используемый",Global:"Глобальный","Go back to the list":"Вернуться к списку",items:"элементов","Message limit of {count} characters reached":"Достигнуто ограничение на количество символов в {count}","More {dashboardItemType} …":"Больше {dashboardItemType} …",Next:"Следующее","No emoji found":"Эмодзи не найдено","No results":"Результаты отсуствуют",Objects:"Объекты",Open:"Открыть","Open navigation":"Открыть навигацию","Pause slideshow":"Приостановить показ слйдов","People & Body":"Люди и тело","Pick an emoji":"Выберите эмодзи","Please select a time zone:":"Пожалуйста, выберите часовой пояс:",Previous:"Предыдущее",Search:"Поиск","Search results":"Результаты поиска","Select a tag":"Выберите метку",Settings:"Параметры","Settings navigation":"Навигация по настройкам","Smileys & Emotion":"Смайлики и эмоции","Start slideshow":"Начать показ слайдов",Submit:"Утвердить",Symbols:"Символы","Travel & Places":"Путешествия и места","Type to search time zone":"Введите для поиска часового пояса","Unable to search the group":"Невозможно найти группу","Undo changes":"Отменить изменения","Write message, @ to mention someone, : for emoji autocompletion …":"Напишите сообщение, @ - чтобы упомянуть кого-то, : - для автозаполнения эмодзи …"}},{locale:"sk_SK",translations:{"{tag} (invisible)":"{tag} (neviditeľný)","{tag} (restricted)":"{tag} (obmedzený)",Actions:"Akcie",Activities:"Aktivity","Animals & Nature":"Zvieratá a príroda","Avatar of {displayName}":"Avatar {displayName}","Avatar of {displayName}, {status}":"Avatar {displayName}, {status}","Cancel changes":"Zrušiť zmeny",Choose:"Vybrať",Close:"Zatvoriť","Close navigation":"Zavrieť navigáciu","Confirm changes":"Potvrdiť zmeny",Custom:"Zvyk","Edit item":"Upraviť položku","External documentation for {title}":"Externá dokumentácia pre {title}",Flags:"Vlajky","Food & Drink":"Jedlo a nápoje","Frequently used":"Často používané",Global:"Globálne","Go back to the list":"Naspäť na zoznam","Message limit of {count} characters reached":"Limit správy na {count} znakov dosiahnutý",Next:"Ďalší","No emoji found":"Nenašli sa žiadne emodži","No results":"Žiadne výsledky",Objects:"Objekty","Open navigation":"Otvoriť navigáciu","Pause slideshow":"Pozastaviť prezentáciu","People & Body":"Ľudia a telo","Pick an emoji":"Vyberte si emodži","Please select a time zone:":"Prosím vyberte časovú zónu:",Previous:"Predchádzajúci",Search:"Hľadať","Search results":"Výsledky vyhľadávania","Select a tag":"Vybrať štítok",Settings:"Nastavenia","Settings navigation":"Navigácia v nastaveniach","Smileys & Emotion":"Smajlíky a emócie","Start slideshow":"Začať prezentáciu",Submit:"Odoslať",Symbols:"Symboly","Travel & Places":"Cestovanie a miesta","Type to search time zone":"Začníte písať pre vyhľadávanie časovej zóny","Unable to search the group":"Skupinu sa nepodarilo nájsť","Undo changes":"Vrátiť zmeny","Write message, @ to mention someone, : for emoji autocompletion …":"Napíšte správu, @ ak chcete niekoho spomenúť, : pre automatické dopĺňanie emotikonov…"}},{locale:"sl",translations:{"{tag} (invisible)":"{tag} (nevidno)","{tag} (restricted)":"{tag} (omejeno)",Actions:"Dejanja",Activities:"Dejavnosti","Animals & Nature":"Živali in Narava","Avatar of {displayName}":"Podoba {displayName}","Avatar of {displayName}, {status}":"Prikazna slika {displayName}, {status}","Cancel changes":"Prekliči spremembe","Change title":"Spremeni naziv",Choose:"Izbor","Clear text":"Počisti besedilo",Close:"Zapri","Close modal":"Zapri pojavno okno","Close navigation":"Zapri krmarjenje","Close sidebar":"Zapri stransko vrstico","Confirm changes":"Potrdi spremembe",Custom:"Po meri","Edit item":"Uredi predmet","Error getting related resources":"Napaka pridobivanja povezanih virov","External documentation for {title}":"Zunanja dokumentacija za {title}",Favorite:"Priljubljeno",Flags:"Zastavice","Food & Drink":"Hrana in Pijača","Frequently used":"Pogostost uporabe",Global:"Splošno","Go back to the list":"Vrni se na seznam","Hide password":"Skrij geslo","Message limit of {count} characters reached":"Dosežena omejitev {count} znakov na sporočilo.","More items …":"Več predmetov ...",Next:"Naslednji","No emoji found":"Ni najdenih izraznih ikon","No results":"Ni zadetkov",Objects:"Predmeti",Open:"Odpri",'Open link to "{resourceTitle}"':"Odpri povezavo do »{resourceTitle}«","Open navigation":"Odpri krmarjenje","Password is secure":"Geslo je varno","Pause slideshow":"Ustavi predstavitev","People & Body":"Ljudje in Telo","Pick a date":"Izbor datuma","Pick a date and a time":"Izbor datuma in časa","Pick a month":"Izbor meseca","Pick a time":"Izbor časa","Pick a week":"Izbor tedna","Pick a year":"Izbor leta","Pick an emoji":"Izbor izrazne ikone","Please select a time zone:":"Izbor časovnega pasu:",Previous:"Predhodni","Related resources":"Povezani viri",Search:"Iskanje","Search results":"Zadetki iskanja","Select a tag":"Izbor oznake",Settings:"Nastavitve","Settings navigation":"Krmarjenje nastavitev","Show password":"Pokaži geslo","Smileys & Emotion":"Izrazne ikone","Start slideshow":"Začni predstavitev",Submit:"Pošlji",Symbols:"Simboli","Travel & Places":"Potovanja in Kraji","Type to search time zone":"Vpišite niz za iskanje časovnega pasu","Unable to search the group":"Ni mogoče iskati po skupini","Undo changes":"Razveljavi spremembe","Write message, @ to mention someone, : for emoji autocompletion …":"Napišite sporočilo, za omembo pred ime postavite@, začnite z : za vstavljanje izraznih ikon …"}},{locale:"sr",translations:{"{tag} (invisible)":"{tag} (nevidljivo)","{tag} (restricted)":"{tag} (ograničeno)",Actions:"Radnje",Activities:"Aktivnosti","Animals & Nature":"Životinje i Priroda","Avatar of {displayName}":"Avatar za {displayName}","Avatar of {displayName}, {status}":"Avatar za {displayName}, {status}","Cancel changes":"Otkaži izmene","Change title":"Izmeni naziv",Choose:"Изаберите",Close:"Затвори","Close modal":"Zatvori modal","Close navigation":"Zatvori navigaciju","Close sidebar":"Zatvori bočnu traku","Confirm changes":"Potvrdite promene",Custom:"Po meri","Edit item":"Uredi stavku","External documentation for {title}":"Eksterna dokumentacija za {title}",Favorite:"Omiljeni",Flags:"Zastave","Food & Drink":"Hrana i Piće","Frequently used":"Često korišćeno",Global:"Globalno","Go back to the list":"Natrag na listu",items:"stavke","Message limit of {count} characters reached":"Dostignuto je ograničenje za poruke od {count} znakova","More {dashboardItemType} …":"Više {dashboardItemType} …",Next:"Следеће","No emoji found":"Nije pronađen nijedan emodži","No results":"Нема резултата",Objects:"Objekti",Open:"Otvori","Open navigation":"Otvori navigaciju","Pause slideshow":"Паузирај слајд шоу","People & Body":"Ljudi i Telo","Pick an emoji":"Izaberi emodži","Please select a time zone:":"Molimo izaberite vremensku zonu:",Previous:"Претходно",Search:"Pretraži","Search results":"Rezultati pretrage","Select a tag":"Изаберите ознаку",Settings:"Поставке","Settings navigation":"Navigacija u podešavanjima","Smileys & Emotion":"Smajli i Emocije","Start slideshow":"Покрени слајд шоу",Submit:"Prihvati",Symbols:"Simboli","Travel & Places":"Putovanja i Mesta","Type to search time zone":"Ukucaj da pretražiš vremenske zone","Unable to search the group":"Nije moguće pretražiti grupu","Undo changes":"Poništi promene","Write message, @ to mention someone, : for emoji autocompletion …":"Napišite poruku, @ da pomenete nekoga, : za automatsko dovršavanje emodžija…"}},{locale:"sv",translations:{"{tag} (invisible)":"{tag} (osynlig)","{tag} (restricted)":"{tag} (begränsad)",Actions:"Åtgärder",Activities:"Aktiviteter","Animals & Nature":"Djur & Natur","Anything shared with the same group of people will show up here":"Något som delats med samma grupp av personer kommer att visas här","Avatar of {displayName}":"{displayName}s avatar","Avatar of {displayName}, {status}":"{displayName}s avatar, {status}","Cancel changes":"Avbryt ändringar","Change title":"Ändra titel",Choose:"Välj","Clear text":"Ta bort text",Close:"Stäng","Close modal":"Stäng modal","Close navigation":"Stäng navigering","Close sidebar":"Stäng sidopanel","Confirm changes":"Bekräfta ändringar",Custom:"Anpassad","Edit item":"Ändra","Error getting related resources":"Problem att hämta relaterade resurser","Error parsing svg":"Fel vid inläsning av svg","External documentation for {title}":"Extern dokumentation för {title}",Favorite:"Favorit",Flags:"Flaggor","Food & Drink":"Mat & Dryck","Frequently used":"Används ofta",Global:"Global","Go back to the list":"Gå tillbaka till listan","Hide password":"Göm lössenordet","Message limit of {count} characters reached":"Meddelandegräns {count} tecken används","More items …":"Fler objekt",Next:"Nästa","No emoji found":"Hittade inga emojis","No results":"Inga resultat",Objects:"Objekt",Open:"Öppna",'Open link to "{resourceTitle}"':'Öppna länk till "{resourceTitle}"',"Open navigation":"Öppna navigering","Password is secure":"Lössenordet är säkert","Pause slideshow":"Pausa bildspelet","People & Body":"Kropp & Själ","Pick an emoji":"Välj en emoji","Please select a time zone:":"Välj tidszon:",Previous:"Föregående","Related resources":"Relaterade resurser",Search:"Sök","Search results":"Sökresultat","Select a tag":"Välj en tag",Settings:"Inställningar","Settings navigation":"Inställningsmeny","Show password":"Visa lössenordet","Smileys & Emotion":"Selfies & Känslor","Start slideshow":"Starta bildspelet",Submit:"Skicka",Symbols:"Symboler","Travel & Places":"Resor & Sevärdigheter","Type to search time zone":"Skriv för att välja tidszon","Unable to search the group":"Kunde inte söka i gruppen","Undo changes":"Ångra ändringar",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'Skriv meddelande, använd "@" för att nämna någon, använd ":" för automatiska emojiförslag ...'}},{locale:"tr",translations:{"{tag} (invisible)":"{tag} (görünmez)","{tag} (restricted)":"{tag} (kısıtlı)",Actions:"İşlemler",Activities:"Etkinlikler","Animals & Nature":"Hayvanlar ve Doğa","Anything shared with the same group of people will show up here":"Aynı kişi grubu ile paylaşılan herşey burada görüntülenir","Avatar of {displayName}":"{displayName} avatarı","Avatar of {displayName}, {status}":"{displayName}, {status} avatarı","Cancel changes":"Değişiklikleri iptal et","Change title":"Başlığı değiştir",Choose:"Seçin","Clear text":"Metni temizle",Close:"Kapat","Close modal":"Üste açılan pencereyi kapat","Close navigation":"Gezinmeyi kapat","Close sidebar":"Yan çubuğu kapat","Confirm changes":"Değişiklikleri onayla",Custom:"Özel","Edit item":"Ögeyi düzenle","Error getting related resources":"İlgili kaynaklar alınırken sorun çıktı","Error parsing svg":"svg işlenirken sorun çıktı","External documentation for {title}":"{title} için dış belgeler",Favorite:"Sık kullanılanlara ekle",Flags:"Bayraklar","Food & Drink":"Yeme ve İçme","Frequently used":"Sık kullanılanlar",Global:"Evrensel","Go back to the list":"Listeye dön","Hide password":"Parolayı gizle","Message limit of {count} characters reached":"{count} karakter ileti sınırına ulaşıldı","More items …":"Diğer ögeler…",Next:"Sonraki","No emoji found":"Herhangi bir emoji bulunamadı","No results":"Herhangi bir sonuç bulunamadı",Objects:"Nesneler",Open:"Aç",'Open link to "{resourceTitle}"':'"{resourceTitle}" bağlantısını aç',"Open navigation":"Gezinmeyi aç","Password is secure":"Parola güvenli","Pause slideshow":"Slayt sunumunu duraklat","People & Body":"İnsanlar ve Beden","Pick an emoji":"Bir emoji seçin","Please select a time zone:":"Lütfen bir saat dilimi seçin:",Previous:"Önceki","Related resources":"İlgili kaynaklar",Search:"Arama","Search results":"Arama sonuçları","Select a tag":"Bir etiket seçin",Settings:"Ayarlar","Settings navigation":"Gezinme ayarları","Show password":"Parolayı görüntüle","Smileys & Emotion":"İfadeler ve Duygular","Start slideshow":"Slayt sunumunu başlat",Submit:"Gönder",Symbols:"Simgeler","Travel & Places":"Gezi ve Yerler","Type to search time zone":"Saat dilimi aramak için yazmaya başlayın","Unable to search the group":"Grupta arama yapılamadı","Undo changes":"Değişiklikleri geri al",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'İleti yazın, birini anmak için @, otomatik emoji tamamlamak için ":" kullanın…'}},{locale:"uk",translations:{"{tag} (invisible)":"{tag} (невидимий)","{tag} (restricted)":"{tag} (обмежений)",Actions:"Дії",Activities:"Діяльність","Animals & Nature":"Тварини та природа","Avatar of {displayName}":"Аватар {displayName}","Avatar of {displayName}, {status}":"Аватар {displayName}, {status}","Cancel changes":"Скасувати зміни","Change title":"Змінити назву",Choose:"ВиберітьВиберіть","Clear text":"Очистити текст",Close:"Закрити","Close modal":"Закрити модаль","Close navigation":"Закрити навігацію","Close sidebar":"Закрити бічну панель","Confirm changes":"Підтвердити зміни",Custom:"Власне","Edit item":"Редагувати елемент","External documentation for {title}":"Зовнішня документація для {title}",Favorite:"Улюблений",Flags:"Прапори","Food & Drink":"Їжа та напої","Frequently used":"Найчастіші",Global:"Глобальний","Go back to the list":"Повернутися до списку","Hide password":"Приховати пароль",items:"елементи","Message limit of {count} characters reached":"Вичерпано ліміт у {count} символів для повідомлення","More {dashboardItemType} …":"Більше {dashboardItemType}…",Next:"Вперед","No emoji found":"Емоційки відсутні","No results":"Відсутні результати",Objects:"Об'єкти",Open:"Відкрити","Open navigation":"Відкрити навігацію","Password is secure":"Пароль безпечний","Pause slideshow":"Пауза у показі слайдів","People & Body":"Люди та жести","Pick an emoji":"Виберіть емоційку","Please select a time zone:":"Виберіть часовий пояс:",Previous:"Назад",Search:"Пошук","Search results":"Результати пошуку","Select a tag":"Виберіть позначку",Settings:"Налаштування","Settings navigation":"Навігація у налаштуваннях","Show password":"Показати пароль","Smileys & Emotion":"Смайли та емоції","Start slideshow":"Почати показ слайдів",Submit:"Надіслати",Symbols:"Символи","Travel & Places":"Поїздки та місця","Type to search time zone":"Введіть для пошуку часовий пояс","Unable to search the group":"Неможливо шукати в групі","Undo changes":"Скасувати зміни","Write message, @ to mention someone, : for emoji autocompletion …":"Напишіть повідомлення, @, щоб згадати когось, : для автозаповнення емодзі…"}},{locale:"zh_CN",translations:{"{tag} (invisible)":"{tag} (不可见)","{tag} (restricted)":"{tag} (受限)",Actions:"行为",Activities:"活动","Animals & Nature":"动物 & 自然","Anything shared with the same group of people will show up here":"与同组用户分享的所有内容都会显示于此","Avatar of {displayName}":"{displayName}的头像","Avatar of {displayName}, {status}":"{displayName}的头像,{status}","Cancel changes":"取消更改","Change title":"更改标题",Choose:"选择","Clear text":"清除文本",Close:"关闭","Close modal":"关闭窗口","Close navigation":"关闭导航","Close sidebar":"关闭侧边栏","Confirm changes":"确认更改",Custom:"自定义","Edit item":"编辑项目","Error getting related resources":"获取相关资源时出错","Error parsing svg":"解析 svg 时出错","External documentation for {title}":"{title}的外部文档",Favorite:"喜爱",Flags:"旗帜","Food & Drink":"食物 & 饮品","Frequently used":"经常使用",Global:"全局","Go back to the list":"返回至列表","Hide password":"隐藏密码","Message limit of {count} characters reached":"已达到 {count} 个字符的消息限制","More items …":"更多项目…",Next:"下一个","No emoji found":"表情未找到","No results":"无结果",Objects:"物体",Open:"打开",'Open link to "{resourceTitle}"':'打开"{resourceTitle}"的连接',"Open navigation":"开启导航","Password is secure":"密码安全","Pause slideshow":"暂停幻灯片","People & Body":"人 & 身体","Pick an emoji":"选择一个表情","Please select a time zone:":"请选择一个时区:",Previous:"上一个","Related resources":"相关资源",Search:"搜索","Search results":"搜索结果","Select a tag":"选择一个标签",Settings:"设置","Settings navigation":"设置向导","Show password":"显示密码","Smileys & Emotion":"笑脸 & 情感","Start slideshow":"开始幻灯片",Submit:"提交",Symbols:"符号","Travel & Places":"旅游 & 地点","Type to search time zone":"打字以搜索时区","Unable to search the group":"无法搜索分组","Undo changes":"撤销更改",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'写信息,使用"@"来提及某人,使用":"进行表情符号自动完成 ...'}},{locale:"zh_HK",translations:{"{tag} (invisible)":"{tag} (隱藏)","{tag} (restricted)":"{tag} (受限)",Actions:"動作",Activities:"活動","Animals & Nature":"動物與自然","Anything shared with the same group of people will show up here":"與同一組人共享的任何內容都會顯示在此處","Avatar of {displayName}":"{displayName} 的頭像","Avatar of {displayName}, {status}":"{displayName} 的頭像,{status}","Cancel changes":"取消更改","Change title":"更改標題",Choose:"選擇","Clear text":"清除文本",Close:"關閉","Close modal":"關閉模態","Close navigation":"關閉導航","Close sidebar":"關閉側邊欄","Confirm changes":"確認更改",Custom:"自定義","Edit item":"編輯項目","Error getting related resources":"獲取相關資源出錯","Error parsing svg":"解析 svg 時出錯","External documentation for {title}":"{title} 的外部文檔",Favorite:"喜愛",Flags:"旗幟","Food & Drink":"食物與飲料","Frequently used":"經常使用",Global:"全球的","Go back to the list":"返回清單","Hide password":"隱藏密碼","Message limit of {count} characters reached":"已達到訊息最多 {count} 字元限制","More items …":"更多項目 …",Next:"下一個","No emoji found":"未找到表情符號","No results":"無結果",Objects:"物件",Open:"打開",'Open link to "{resourceTitle}"':"打開指向 “{resourceTitle}” 的鏈結","Open navigation":"開啟導航","Password is secure":"密碼是安全的","Pause slideshow":"暫停幻燈片","People & Body":"人物","Pick an emoji":"選擇表情符號","Please select a time zone:":"請選擇時區:",Previous:"上一個","Related resources":"相關資源",Search:"搜尋","Search results":"搜尋結果","Select a tag":"選擇標籤",Settings:"設定","Settings navigation":"設定值導覽","Show password":"顯示密碼","Smileys & Emotion":"表情","Start slideshow":"開始幻燈片",Submit:"提交",Symbols:"標誌","Travel & Places":"旅遊與景點","Type to search time zone":"鍵入以搜索時區","Unable to search the group":"無法搜尋群組","Undo changes":"取消更改",'Write message, use "@" to mention someone, use ":" for emoji autocompletion …':'寫訊息,使用 "@" 來指代某人,使用 ":" 用於表情符號自動填充 ...'}},{locale:"zh_TW",translations:{"{tag} (invisible)":"{tag} (隱藏)","{tag} (restricted)":"{tag} (受限)",Actions:"動作",Activities:"活動","Animals & Nature":"動物與自然",Choose:"選擇",Close:"關閉",Custom:"自定義",Flags:"旗幟","Food & Drink":"食物與飲料","Frequently used":"最近使用","Message limit of {count} characters reached":"已達到訊息最多 {count} 字元限制",Next:"下一個","No emoji found":"未找到表情符號","No results":"無結果",Objects:"物件","Pause slideshow":"暫停幻燈片","People & Body":"人物","Pick an emoji":"選擇表情符號",Previous:"上一個",Search:"搜尋","Search results":"搜尋結果","Select a tag":"選擇標籤",Settings:"設定","Settings navigation":"設定值導覽","Smileys & Emotion":"表情","Start slideshow":"開始幻燈片",Symbols:"標誌","Travel & Places":"旅遊與景點","Unable to search the group":"無法搜尋群組","Write message, @ to mention someone …":"輸入訊息時可使用 @ 來標示某人..."}}].forEach((e=>{const t={};for(const n in e.translations)e.translations[n].pluralId?t[n]={msgid:n,msgid_plural:e.translations[n].pluralId,msgstr:e.translations[n].msgstr}:t[n]={msgid:n,msgstr:[e.translations[n]]};a.addTranslation(e.locale,{translations:{"":t}})}));const r=a.build(),s=(r.ngettext.bind(r),r.gettext.bind(r))},6730:()=>{},3351:(e,t,a)=>{"use strict";a.d(t,{iQ:()=>u}),a(6730),a(8136),a(334),a(3132);var r=a(3607),s=a(768),i=a.n(s);const o=n(42515);var l=a(4262);const u={data:()=>({hasStatus:!1,userStatus:{status:null,message:null,icon:null}}),methods:{async fetchUserStatus(e){if(!e)return;const t=(0,o.getCapabilities)();if(Object.prototype.hasOwnProperty.call(t,"user_status")&&t.user_status.enabled&&(0,r.getCurrentUser)())try{const{data:t}=await i().get((0,l.generateOcsUrl)("apps/user_status/api/v1/statuses/{userId}",{userId:e})),{status:n,message:a,icon:r}=t.ocs.data;this.userStatus.status=n,this.userStatus.message=a||"",this.userStatus.icon=r||"",this.hasStatus=!0}catch(e){var n,a;if(404===e.response.status&&0===(null===(n=e.response.data.ocs)||void 0===n||null===(a=n.data)||void 0===a?void 0:a.length))return;console.error(e)}}}}},8136:()=>{},334:(e,t,n)=>{"use strict";var a=n(2734);new(n.n(a)())({data:()=>({isMobile:!1}),watch:{isMobile(e){this.$emit("changed",e)}},created(){window.addEventListener("resize",this.handleWindowResize),this.handleWindowResize()},beforeDestroy(){window.removeEventListener("resize",this.handleWindowResize)},methods:{handleWindowResize(){this.isMobile=document.documentElement.clientWidth<1024}}})},3132:(e,t,a)=>{"use strict";a(4470),a(1390),n(95573),n(43726),a(2734);const r="(?:^|\\s)",s="(?:[^a-z]|$)";new RegExp("".concat(r,"(@[a-zA-Z0-9_.@\\-']+)(").concat(s,")"),"gi"),new RegExp("".concat(r,"(@"[a-zA-Z0-9 _.@\\-']+")(").concat(s,")"),"gi")},6609:(e,t,n)=>{"use strict";function a(e,t,n){this.r=e,this.g=t,this.b=n}function r(e,t,n){const r=[];r.push(t);const s=function(e,t){const n=new Array(3);return n[0]=(t[1].r-t[0].r)/e,n[1]=(t[1].g-t[0].g)/e,n[2]=(t[1].b-t[0].b)/e,n}(e,[t,n]);for(let n=1;ns});const s=function(e){e||(e=6);const t=new a(182,70,157),n=new a(221,203,85),s=new a(0,130,201),i=r(e,t,n),o=r(e,n,s),l=r(e,s,t);return i.concat(o).concat(l)}},1390:(e,t,a)=>{"use strict";a.d(t,{Z:()=>i});const r=n(50337);var s=a.n(r);const i=e=>s()(e,{defaultProtocol:"https",target:"_blank",className:"external linkified",attributes:{rel:"nofollow noopener noreferrer"}})},1206:(e,t,n)=>{"use strict";n.d(t,{L:()=>a}),n(4505);const a=function(){return Object.assign(window,{_nc_focus_trap:window._nc_focus_trap||[]}),window._nc_focus_trap}},4343:(e,t,n)=>{"use strict";n.d(t,{Z:()=>g});var a=n(7537),r=n.n(a),s=n(3645),i=n.n(s),o=n(1667),l=n.n(o),u=new URL(n(3423),n.b),c=new URL(n(2605),n.b),d=new URL(n(7127),n.b),m=i()(r()),p=l()(u),h=l()(c),f=l()(d);m.push([e.id,".material-design-icon[data-v-b1ea54bc]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.avatardiv[data-v-b1ea54bc]{position:relative;display:inline-block;width:var(--size);height:var(--size)}.avatardiv--unknown[data-v-b1ea54bc]{position:relative;background-color:var(--color-main-background);white-space:normal}.avatardiv[data-v-b1ea54bc]:not(.avatardiv--unknown){background-color:var(--color-main-background) !important;box-shadow:0 0 5px rgba(0,0,0,.05) inset}.avatardiv--with-menu[data-v-b1ea54bc]{cursor:pointer}.avatardiv--with-menu[data-v-b1ea54bc] .v-popper{position:absolute;top:0;left:0}.avatardiv--with-menu .icon-more[data-v-b1ea54bc]{cursor:pointer;opacity:0}.avatardiv--with-menu:focus .icon-more[data-v-b1ea54bc],.avatardiv--with-menu:hover .icon-more[data-v-b1ea54bc]{opacity:1}.avatardiv--with-menu:focus img[data-v-b1ea54bc],.avatardiv--with-menu:hover img[data-v-b1ea54bc]{opacity:.3}.avatardiv--with-menu .icon-more[data-v-b1ea54bc],.avatardiv--with-menu img[data-v-b1ea54bc]{transition:opacity var(--animation-quick)}.avatardiv .avatardiv__initials-wrapper[data-v-b1ea54bc]{height:var(--size);width:var(--size);background-color:var(--color-main-background);border-radius:50%}.avatardiv .avatardiv__initials-wrapper .unknown[data-v-b1ea54bc]{position:absolute;top:0;left:0;display:block;width:100%;text-align:center;font-weight:normal}.avatardiv img[data-v-b1ea54bc]{width:100%;height:100%;object-fit:cover}.avatardiv .material-design-icon[data-v-b1ea54bc]{width:var(--size);height:var(--size)}.avatardiv .avatardiv__user-status[data-v-b1ea54bc]{position:absolute;right:-4px;bottom:-4px;max-height:18px;max-width:18px;height:40%;width:40%;line-height:15px;font-size:var(--default-font-size);border:2px solid var(--color-main-background);background-color:var(--color-main-background);background-repeat:no-repeat;background-size:16px;background-position:center;border-radius:50%}.acli:hover .avatardiv .avatardiv__user-status[data-v-b1ea54bc]{border-color:var(--color-background-hover);background-color:var(--color-background-hover)}.acli.active .avatardiv .avatardiv__user-status[data-v-b1ea54bc]{border-color:var(--color-primary-element-light);background-color:var(--color-primary-element-light)}.avatardiv .avatardiv__user-status--online[data-v-b1ea54bc]{background-image:url("+p+")}.avatardiv .avatardiv__user-status--dnd[data-v-b1ea54bc]{background-image:url("+h+");background-color:#fff}.avatardiv .avatardiv__user-status--away[data-v-b1ea54bc]{background-image:url("+f+")}.avatardiv .avatardiv__user-status--icon[data-v-b1ea54bc]{border:none;background-color:rgba(0,0,0,0)}.avatardiv .popovermenu-wrapper[data-v-b1ea54bc]{position:relative;display:inline-block}.avatar-class-icon[data-v-b1ea54bc]{border-radius:50%;background-color:var(--color-background-darker);height:100%}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcAvatar/NcAvatar.vue"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,4BACC,iBAAA,CACA,oBAAA,CACA,iBAAA,CACA,kBAAA,CAEA,qCACC,iBAAA,CACA,6CAAA,CACA,kBAAA,CAGD,qDAEC,wDAAA,CACA,wCAAA,CAGD,uCACC,cAAA,CACA,iDACC,iBAAA,CACA,KAAA,CACA,MAAA,CAED,kDACC,cAAA,CACA,SAAA,CAIA,gHACC,SAAA,CAED,kGACC,UAAA,CAGF,6FAEC,yCAAA,CAIF,yDACC,kBAAA,CACA,iBAAA,CACA,6CAAA,CACA,iBAAA,CAEA,kEACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,aAAA,CACA,UAAA,CACA,iBAAA,CACA,kBAAA,CAIF,gCAEC,UAAA,CACA,WAAA,CAEA,gBAAA,CAGD,kDACC,iBAAA,CACA,kBAAA,CAGD,oDACC,iBAAA,CACA,UAAA,CACA,WAAA,CACA,eAAA,CACA,cAAA,CACA,UAAA,CACA,SAAA,CACA,gBAAA,CACA,kCAAA,CACA,6CAAA,CACA,6CAAA,CACA,2BAAA,CACA,oBAAA,CACA,0BAAA,CACA,iBAAA,CAEA,gEACC,0CAAA,CACA,8CAAA,CAED,iEACC,+CAAA,CACA,mDAAA,CAGD,4DACC,wDAAA,CAED,yDACC,wDAAA,CACA,qBAAA,CAED,0DACC,wDAAA,CAED,0DACC,WAAA,CACA,8BAAA,CAIF,iDACC,iBAAA,CACA,oBAAA,CAIF,oCACC,iBAAA,CACA,+CAAA,CACA,WAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"18ada6c\"; @import 'variables'; @import 'material-icons';\n\n.avatardiv {\n\tposition: relative;\n\tdisplay: inline-block;\n\twidth: var(--size);\n\theight: var(--size);\n\n\t&--unknown {\n\t\tposition: relative;\n\t\tbackground-color: var(--color-main-background);\n\t\twhite-space: normal;\n\t}\n\n\t&:not(&--unknown) {\n\t\t// White/black background for avatars with transparency\n\t\tbackground-color: var(--color-main-background) !important;\n\t\tbox-shadow: 0 0 5px rgba(0, 0, 0, 0.05) inset;\n\t}\n\n\t&--with-menu {\n\t\tcursor: pointer;\n\t\t:deep(.v-popper) {\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tleft: 0;\n\t\t}\n\t\t.icon-more {\n\t\t\tcursor: pointer;\n\t\t\topacity: 0;\n\t\t}\n\t\t&:focus,\n\t\t&:hover {\n\t\t\t.icon-more {\n\t\t\t\topacity: 1;\n\t\t\t}\n\t\t\timg {\n\t\t\t\topacity: 0.3;\n\t\t\t}\n\t\t}\n\t\t.icon-more,\n\t\timg {\n\t\t\ttransition: opacity var(--animation-quick);\n\t\t}\n\t}\n\n\t.avatardiv__initials-wrapper {\n\t\theight: var(--size);\n\t\twidth: var(--size);\n\t\tbackground-color: var(--color-main-background);\n\t\tborder-radius: 50%;\n\n\t\t.unknown {\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tleft: 0;\n\t\t\tdisplay: block;\n\t\t\twidth: 100%;\n\t\t\ttext-align: center;\n\t\t\tfont-weight: normal;\n\t\t}\n\t}\n\n\timg {\n\t\t// Cover entire area\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\t// Keep ratio\n\t\tobject-fit: cover;\n\t}\n\n\t.material-design-icon {\n\t\twidth: var(--size);\n\t\theight: var(--size);\n\t}\n\n\t.avatardiv__user-status {\n\t\tposition: absolute;\n\t\tright: -4px;\n\t\tbottom: -4px;\n\t\tmax-height: 18px;\n\t\tmax-width: 18px;\n\t\theight: 40%;\n\t\twidth: 40%;\n\t\tline-height: 15px;\n\t\tfont-size: var(--default-font-size);\n\t\tborder: 2px solid var(--color-main-background);\n\t\tbackground-color: var(--color-main-background);\n\t\tbackground-repeat: no-repeat;\n\t\tbackground-size: 16px;\n\t\tbackground-position: center;\n\t\tborder-radius: 50%;\n\n\t\t.acli:hover & {\n\t\t\tborder-color: var(--color-background-hover);\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\t\t.acli.active & {\n\t\t\tborder-color: var(--color-primary-element-light);\n\t\t\tbackground-color: var(--color-primary-element-light);\n\t\t}\n\n\t\t&--online{\n\t\t\tbackground-image: url('../../assets/status-icons/user-status-online.svg');\n\t\t}\n\t\t&--dnd{\n\t\t\tbackground-image: url('../../assets/status-icons/user-status-dnd.svg');\n\t\t\tbackground-color: #ffffff;\n\t\t}\n\t\t&--away{\n\t\t\tbackground-image: url('../../assets/status-icons/user-status-away.svg');\n\t\t}\n\t\t&--icon {\n\t\t\tborder: none;\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t.popovermenu-wrapper {\n\t\tposition: relative;\n\t\tdisplay: inline-block;\n\t}\n}\n\n.avatar-class-icon {\n\tborder-radius: 50%;\n\tbackground-color: var(--color-background-darker);\n\theight: 100%;\n}\n\n"],sourceRoot:""}]);const g=m},5030:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var a=n(7537),r=n.n(a),s=n(3645),i=n.n(s)()(r());i.push([e.id,".material-design-icon[data-v-c4a9cada]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.loading-icon svg[data-v-c4a9cada]{animation:rotate var(--animation-duration, 0.8s) linear infinite}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcLoadingIcon/NcLoadingIcon.vue"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,mCACC,gEAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"18ada6c\"; @import 'variables'; @import 'material-icons';\n\n.loading-icon svg{\n\tanimation: rotate var(--animation-duration, 0.8s) linear infinite;\n}\n"],sourceRoot:""}]);const o=i},1625:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var a=n(7537),r=n.n(a),s=n(3645),i=n.n(s)()(r());i.push([e.id,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.resize-observer{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:rgba(0,0,0,0);pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}.v-popper--theme-dropdown.v-popper__popper{z-index:100000;top:0;left:0;display:block !important;filter:drop-shadow(0 1px 10px var(--color-box-shadow))}.v-popper--theme-dropdown.v-popper__popper .v-popper__inner{padding:0;color:var(--color-main-text);border-radius:var(--border-radius-large);overflow:hidden;background:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper .v-popper__arrow-container{position:absolute;z-index:1;width:0;height:0;border-style:solid;border-color:rgba(0,0,0,0);border-width:10px}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-container{bottom:-10px;border-bottom-width:0;border-top-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:-10px;border-top-width:0;border-bottom-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-container{left:-10px;border-left-width:0;border-right-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px;border-right-width:0;border-left-color:var(--color-main-background)}.v-popper--theme-dropdown.v-popper__popper[aria-hidden=true]{visibility:hidden;transition:opacity var(--animation-quick),visibility var(--animation-quick);opacity:0}.v-popper--theme-dropdown.v-popper__popper[aria-hidden=false]{visibility:visible;transition:opacity var(--animation-quick);opacity:1}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcPopover/NcPopover.vue"],names:[],mappings:"AAGA,sBACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCLD,iBACC,iBAAA,CACA,KAAA,CACA,MAAA,CACA,UAAA,CACA,UAAA,CACA,WAAA,CACA,WAAA,CACA,8BAAA,CACA,mBAAA,CACA,aAAA,CACA,eAAA,CACA,SAAA,CAGD,wBACC,aAAA,CACA,iBAAA,CACA,KAAA,CACA,MAAA,CACA,WAAA,CACA,UAAA,CACA,eAAA,CACA,mBAAA,CACA,UAAA,CAMA,2CACC,cAAA,CACA,KAAA,CACA,MAAA,CACA,wBAAA,CAEA,sDAAA,CAEA,4DACC,SAAA,CACA,4BAAA,CACA,wCAAA,CACA,eAAA,CACA,uCAAA,CAGD,sEACC,iBAAA,CACA,SAAA,CACA,OAAA,CACA,QAAA,CACA,kBAAA,CACA,0BAAA,CACA,iBA1BW,CA6BZ,kGACC,YAAA,CACA,qBAAA,CACA,6CAAA,CAGD,qGACC,SAAA,CACA,kBAAA,CACA,gDAAA,CAGD,oGACC,UAAA,CACA,mBAAA,CACA,+CAAA,CAGD,mGACC,WAAA,CACA,oBAAA,CACA,8CAAA,CAGD,6DACC,iBAAA,CACA,2EAAA,CACA,SAAA,CAGD,8DACC,kBAAA,CACA,yCAAA,CACA,SAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"18ada6c\"; @import 'variables'; @import 'material-icons';\n\n\n.resize-observer {\n\tposition:absolute;\n\ttop:0;\n\tleft:0;\n\tz-index:-1;\n\twidth:100%;\n\theight:100%;\n\tborder:none;\n\tbackground-color:transparent;\n\tpointer-events:none;\n\tdisplay:block;\n\toverflow:hidden;\n\topacity:0\n}\n\n.resize-observer object {\n\tdisplay:block;\n\tposition:absolute;\n\ttop:0;\n\tleft:0;\n\theight:100%;\n\twidth:100%;\n\toverflow:hidden;\n\tpointer-events:none;\n\tz-index:-1\n}\n\n$arrow-width: 10px;\n\n.v-popper--theme-dropdown {\n\t&.v-popper__popper {\n\t\tz-index: 100000;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tdisplay: block !important;\n\n\t\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\n\n\t\t.v-popper__inner {\n\t\t\tpadding: 0;\n\t\t\tcolor: var(--color-main-text);\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t\toverflow: hidden;\n\t\t\tbackground: var(--color-main-background);\n\t\t}\n\n\t\t.v-popper__arrow-container {\n\t\t\tposition: absolute;\n\t\t\tz-index: 1;\n\t\t\twidth: 0;\n\t\t\theight: 0;\n\t\t\tborder-style: solid;\n\t\t\tborder-color: transparent;\n\t\t\tborder-width: $arrow-width;\n\t\t}\n\n\t\t&[data-popper-placement^='top'] .v-popper__arrow-container {\n\t\t\tbottom: -$arrow-width;\n\t\t\tborder-bottom-width: 0;\n\t\t\tborder-top-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='bottom'] .v-popper__arrow-container {\n\t\t\ttop: -$arrow-width;\n\t\t\tborder-top-width: 0;\n\t\t\tborder-bottom-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='right'] .v-popper__arrow-container {\n\t\t\tleft: -$arrow-width;\n\t\t\tborder-left-width: 0;\n\t\t\tborder-right-color: var(--color-main-background);\n\t\t}\n\n\t\t&[data-popper-placement^='left'] .v-popper__arrow-container {\n\t\t\tright: -$arrow-width;\n\t\t\tborder-right-width: 0;\n\t\t\tborder-left-color: var(--color-main-background);\n\t\t}\n\n\t\t&[aria-hidden='true'] {\n\t\t\tvisibility: hidden;\n\t\t\ttransition: opacity var(--animation-quick), visibility var(--animation-quick);\n\t\t\topacity: 0;\n\t\t}\n\n\t\t&[aria-hidden='false'] {\n\t\t\tvisibility: visible;\n\t\t\ttransition: opacity var(--animation-quick);\n\t\t\topacity: 1;\n\t\t}\n\t}\n}\n\n"],sourceRoot:""}]);const o=i},2:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var a=n(7537),r=n.n(a),s=n(3645),i=n.n(s)()(r());i.push([e.id,".material-design-icon[data-v-31ffd2d4]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}ul[data-v-31ffd2d4]{display:flex;flex-direction:column;gap:4px}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcPopoverMenu/NcPopoverMenu.vue"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,oBACC,YAAA,CACA,qBAAA,CACA,OAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"18ada6c\"; @import 'variables'; @import 'material-icons';\n\nul {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 4px;\n}\n"],sourceRoot:""}]);const o=i},408:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var a=n(7537),r=n.n(a),s=n(3645),i=n.n(s)()(r());i.push([e.id,'.material-design-icon[data-v-127b0c62]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}li[data-v-127b0c62]{display:flex;flex:0 0 auto}li.hidden[data-v-127b0c62]{display:none}li>button[data-v-127b0c62],li>a[data-v-127b0c62],li>.menuitem[data-v-127b0c62]{cursor:pointer;line-height:44px;border:0;background-color:rgba(0,0,0,0);display:flex;align-items:flex-start;height:auto;margin:0;padding:0;font-weight:normal;box-shadow:none;width:100%;color:var(--color-main-text);white-space:nowrap;opacity:.7}li>button span[class^=icon-][data-v-127b0c62],li>button span[class*=" icon-"][data-v-127b0c62],li>button[class^=icon-][data-v-127b0c62],li>button[class*=" icon-"][data-v-127b0c62],li>a span[class^=icon-][data-v-127b0c62],li>a span[class*=" icon-"][data-v-127b0c62],li>a[class^=icon-][data-v-127b0c62],li>a[class*=" icon-"][data-v-127b0c62],li>.menuitem span[class^=icon-][data-v-127b0c62],li>.menuitem span[class*=" icon-"][data-v-127b0c62],li>.menuitem[class^=icon-][data-v-127b0c62],li>.menuitem[class*=" icon-"][data-v-127b0c62]{min-width:0;min-height:0;background-position:14px center;background-size:16px}li>button span[class^=icon-][data-v-127b0c62],li>button span[class*=" icon-"][data-v-127b0c62],li>a span[class^=icon-][data-v-127b0c62],li>a span[class*=" icon-"][data-v-127b0c62],li>.menuitem span[class^=icon-][data-v-127b0c62],li>.menuitem span[class*=" icon-"][data-v-127b0c62]{padding:22px 0 22px 44px}li>button:not([class^=icon-]):not([class*=icon-])>span[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>button:not([class^=icon-]):not([class*=icon-])>input[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>button:not([class^=icon-]):not([class*=icon-])>form[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>a:not([class^=icon-]):not([class*=icon-])>span[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>a:not([class^=icon-]):not([class*=icon-])>input[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>a:not([class^=icon-]):not([class*=icon-])>form[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>.menuitem:not([class^=icon-]):not([class*=icon-])>span[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>.menuitem:not([class^=icon-]):not([class*=icon-])>input[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child,li>.menuitem:not([class^=icon-]):not([class*=icon-])>form[data-v-127b0c62]:not([class^=icon-]):not([class*=icon-]):first-child{margin-left:44px}li>button[class^=icon-][data-v-127b0c62],li>button[class*=" icon-"][data-v-127b0c62],li>a[class^=icon-][data-v-127b0c62],li>a[class*=" icon-"][data-v-127b0c62],li>.menuitem[class^=icon-][data-v-127b0c62],li>.menuitem[class*=" icon-"][data-v-127b0c62]{padding:0 14px 0 44px}li>button[data-v-127b0c62]:not(:disabled):hover,li>button[data-v-127b0c62]:not(:disabled):focus,li>button:not(:disabled).active[data-v-127b0c62],li>a[data-v-127b0c62]:not(:disabled):hover,li>a[data-v-127b0c62]:not(:disabled):focus,li>a:not(:disabled).active[data-v-127b0c62],li>.menuitem[data-v-127b0c62]:not(:disabled):hover,li>.menuitem[data-v-127b0c62]:not(:disabled):focus,li>.menuitem:not(:disabled).active[data-v-127b0c62]{opacity:1 !important}li>button.action[data-v-127b0c62],li>a.action[data-v-127b0c62],li>.menuitem.action[data-v-127b0c62]{padding:inherit !important}li>button>span[data-v-127b0c62],li>a>span[data-v-127b0c62],li>.menuitem>span[data-v-127b0c62]{cursor:pointer;white-space:nowrap}li>button>p[data-v-127b0c62],li>a>p[data-v-127b0c62],li>.menuitem>p[data-v-127b0c62]{width:150px;line-height:1.6em;padding:8px 0;white-space:normal;overflow:hidden;text-overflow:ellipsis}li>button>select[data-v-127b0c62],li>a>select[data-v-127b0c62],li>.menuitem>select[data-v-127b0c62]{margin:0;margin-left:6px}li>button[data-v-127b0c62]:not(:empty),li>a[data-v-127b0c62]:not(:empty),li>.menuitem[data-v-127b0c62]:not(:empty){padding-right:14px !important}li>button>img[data-v-127b0c62],li>a>img[data-v-127b0c62],li>.menuitem>img[data-v-127b0c62]{width:16px;height:16px;margin:14px}li>button>input.radio+label[data-v-127b0c62],li>button>input.checkbox+label[data-v-127b0c62],li>a>input.radio+label[data-v-127b0c62],li>a>input.checkbox+label[data-v-127b0c62],li>.menuitem>input.radio+label[data-v-127b0c62],li>.menuitem>input.checkbox+label[data-v-127b0c62]{padding:0 !important;width:100%}li>button>input.checkbox+label[data-v-127b0c62]::before,li>a>input.checkbox+label[data-v-127b0c62]::before,li>.menuitem>input.checkbox+label[data-v-127b0c62]::before{margin:-2px 13px 0}li>button>input.radio+label[data-v-127b0c62]::before,li>a>input.radio+label[data-v-127b0c62]::before,li>.menuitem>input.radio+label[data-v-127b0c62]::before{margin:-2px 12px 0}li>button>input[data-v-127b0c62]:not([type=radio]):not([type=checkbox]):not([type=image]),li>a>input[data-v-127b0c62]:not([type=radio]):not([type=checkbox]):not([type=image]),li>.menuitem>input[data-v-127b0c62]:not([type=radio]):not([type=checkbox]):not([type=image]){width:150px}li>button form[data-v-127b0c62],li>a form[data-v-127b0c62],li>.menuitem form[data-v-127b0c62]{display:flex;flex:1 1 auto}li>button form[data-v-127b0c62]:not(:first-child),li>a form[data-v-127b0c62]:not(:first-child),li>.menuitem form[data-v-127b0c62]:not(:first-child){margin-left:5px}li>button>span.hidden+form[data-v-127b0c62],li>button>span[style*="display:none"]+form[data-v-127b0c62],li>a>span.hidden+form[data-v-127b0c62],li>a>span[style*="display:none"]+form[data-v-127b0c62],li>.menuitem>span.hidden+form[data-v-127b0c62],li>.menuitem>span[style*="display:none"]+form[data-v-127b0c62]{margin-left:0}li>button input[data-v-127b0c62],li>a input[data-v-127b0c62],li>.menuitem input[data-v-127b0c62]{min-width:44px;max-height:40px;margin:2px 0;flex:1 1 auto}li>button input[data-v-127b0c62]:not(:first-child),li>a input[data-v-127b0c62]:not(:first-child),li>.menuitem input[data-v-127b0c62]:not(:first-child){margin-left:5px}li:not(.hidden):not([style*="display:none"]):first-of-type>button>form[data-v-127b0c62],li:not(.hidden):not([style*="display:none"]):first-of-type>button>input[data-v-127b0c62],li:not(.hidden):not([style*="display:none"]):first-of-type>a>form[data-v-127b0c62],li:not(.hidden):not([style*="display:none"]):first-of-type>a>input[data-v-127b0c62],li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>form[data-v-127b0c62],li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>input[data-v-127b0c62]{margin-top:12px}li:not(.hidden):not([style*="display:none"]):last-of-type>button>form[data-v-127b0c62],li:not(.hidden):not([style*="display:none"]):last-of-type>button>input[data-v-127b0c62],li:not(.hidden):not([style*="display:none"]):last-of-type>a>form[data-v-127b0c62],li:not(.hidden):not([style*="display:none"]):last-of-type>a>input[data-v-127b0c62],li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>form[data-v-127b0c62],li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>input[data-v-127b0c62]{margin-bottom:12px}li>button[data-v-127b0c62]{padding:0}li>button span[data-v-127b0c62]{opacity:1}',"",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcPopoverMenu/NcPopoverMenuItem.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CCND,oBACC,YAAA,CACA,aAAA,CAEA,2BACC,YAAA,CAGD,+EAGC,cAAA,CACA,gBCWe,CDVf,QAAA,CACA,8BAAA,CACA,YAAA,CACA,sBAAA,CACA,WAAA,CACA,QAAA,CACA,SAAA,CACA,kBAAA,CACA,eAAA,CACA,UAAA,CACA,4BAAA,CACA,kBAAA,CACA,UCgBe,CDbf,ohBAIC,WAAA,CACA,YAAA,CACA,+BAAA,CACA,oBCRS,CDWV,yRAIC,wBAAA,CAQC,ylCACC,gBC5BY,CDiCf,2PAEC,qBAAA,CAGD,6aAGC,oBAAA,CAID,oGACC,0BAAA,CAGD,8FACC,cAAA,CACA,kBAAA,CAID,qFACC,WAAA,CACA,iBAAA,CACA,aAAA,CACA,kBAAA,CAGA,eAAA,CACA,sBAAA,CAID,oGACC,QAAA,CACA,eAAA,CAID,mHACC,6BAAA,CAKD,2FACC,UC5ES,CD6ET,WC7ES,CD8ET,WC1EW,CD8EZ,mRAEC,oBAAA,CACA,UAAA,CAED,sKACC,kBAAA,CAED,6JACC,kBAAA,CAED,4QACC,WAAA,CAID,8FACC,YAAA,CACA,aAAA,CAGA,oJACC,eAAA,CAIF,oTAEC,aAAA,CAGD,iGACC,cCtHc,CDuHd,eAAA,CACA,YAAA,CACA,aAAA,CAEA,uJACC,eAAA,CAUA,+gBACC,eAAA,CAMD,ygBACC,kBAAA,CAKJ,2BACC,SAAA,CACA,gCACC,SCnIY",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"18ada6c\"; @import 'variables'; @import 'material-icons';\n\nli {\n\tdisplay: flex;\n\tflex: 0 0 auto;\n\n\t&.hidden {\n\t\tdisplay: none;\n\t}\n\n\t> button,\n\t> a,\n\t> .menuitem {\n\t\tcursor: pointer;\n\t\tline-height: $clickable-area;\n\t\tborder: 0;\n\t\tbackground-color: transparent;\n\t\tdisplay: flex;\n\t\talign-items: flex-start;\n\t\theight: auto;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tfont-weight: normal;\n\t\tbox-shadow: none;\n\t\twidth: 100%;\n\t\tcolor: var(--color-main-text);\n\t\twhite-space: nowrap;\n\t\topacity: $opacity_normal;\n\n\t\t// TODO split into individual components for readability\n\t\tspan[class^='icon-'],\n\t\tspan[class*=' icon-'],\n\t\t&[class^='icon-'],\n\t\t&[class*=' icon-'] {\n\t\t\tmin-width: 0; /* Overwrite icons*/\n\t\t\tmin-height: 0;\n\t\t\tbackground-position: #{$icon-margin} center;\n\t\t\tbackground-size: $icon-size;\n\t\t}\n\n\t\tspan[class^='icon-'],\n\t\tspan[class*=' icon-'] {\n\t\t\t/* Keep padding to define the width to\n\t\t\t\tassure correct position of a possible text */\n\t\t\tpadding: #{math.div($clickable-area, 2)} 0 #{math.div($clickable-area, 2)} $clickable-area;\n\t\t}\n\n\t\t// If no icons set, force left margin to align\n\t\t&:not([class^='icon-']):not([class*='icon-']) {\n\t\t\t> span,\n\t\t\t> input,\n\t\t\t> form {\n\t\t\t\t&:not([class^='icon-']):not([class*='icon-']):first-child {\n\t\t\t\t\tmargin-left: $clickable-area;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&[class^='icon-'],\n\t\t&[class*=' icon-'] {\n\t\t\tpadding: 0 $icon-margin 0 $clickable-area;\n\t\t}\n\n\t\t&:not(:disabled):hover,\n\t\t&:not(:disabled):focus,\n\t\t&:not(:disabled).active {\n\t\t\topacity: $opacity_full !important;\n\t\t}\n\n\t\t/* prevent .action class to break the design */\n\t\t&.action {\n\t\t\tpadding: inherit !important;\n\t\t}\n\n\t\t> span {\n\t\t\tcursor: pointer;\n\t\t\twhite-space: nowrap;\n\t\t}\n\n\t\t// long text area\n\t\t> p {\n\t\t\twidth: 150px;\n\t\t\tline-height: 1.6em;\n\t\t\tpadding: 8px 0;\n\t\t\twhite-space: normal;\n\n\t\t\t// in case there are no spaces like long email addresses\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\n\t\t// TODO: do we really supports it?\n\t\t> select {\n\t\t\tmargin: 0;\n\t\t\tmargin-left: 6px;\n\t\t}\n\n\t\t/* Add padding if contains icon+text */\n\t\t&:not(:empty) {\n\t\t\tpadding-right: $icon-margin !important;\n\t\t}\n\n\t\t/* DEPRECATED! old img in popover fallback\n\t\t\t* TODO: to remove */\n\t\t> img {\n\t\t\twidth: $icon-size;\n\t\t\theight: $icon-size;\n\t\t\tmargin: $icon-margin;\n\t\t}\n\n\t\t/* checkbox/radio fixes */\n\t\t> input.radio + label,\n\t\t> input.checkbox + label {\n\t\t\tpadding: 0 !important;\n\t\t\twidth: 100%;\n\t\t}\n\t\t> input.checkbox + label::before {\n\t\t\tmargin: -2px 13px 0;\n\t\t}\n\t\t> input.radio + label::before {\n\t\t\tmargin: -2px 12px 0;\n\t\t}\n\t\t> input:not([type=radio]):not([type=checkbox]):not([type=image]) {\n\t\t\twidth: 150px;\n\t\t}\n\n\t\t// Forms & text inputs\n\t\tform {\n\t\t\tdisplay: flex;\n\t\t\tflex: 1 1 auto;\n\t\t\t/* put a small space between text and form\n\t\t\t\tif there is an element before */\n\t\t\t&:not(:first-child) {\n\t\t\t\tmargin-left: 5px;\n\t\t\t}\n\t\t}\n\t\t/* no margin if hidden span before */\n\t\t> span.hidden + form,\n\t\t> span[style*='display:none'] + form {\n\t\t\tmargin-left: 0;\n\t\t}\n\t\t/* Inputs inside popover supports text, submit & reset */\n\t\tinput {\n\t\t\tmin-width: $clickable-area;\n\t\t\tmax-height: #{$clickable-area - 4px}; /* twice the element margin-y */\n\t\t\tmargin: 2px 0;\n\t\t\tflex: 1 1 auto;\n\t\t\t// space between inline inputs\n\t\t\t&:not(:first-child) {\n\t\t\t\tmargin-left: 5px;\n\t\t\t}\n\t\t}\n\t}\n\n\t// TODO: do that in js, should be cleaner\n\t/* css hack, only first not hidden */\n\t&:not(.hidden):not([style*='display:none']) {\n\t\t&:first-of-type {\n\t\t\t> button, > a, > .menuitem {\n\t\t\t\t> form, > input {\n\t\t\t\t\tmargin-top: $icon-margin - 2px; // minus the input margin\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t&:last-of-type {\n\t\t\t> button, > a, > .menuitem {\n\t\t\t\t> form, > input {\n\t\t\t\t\tmargin-bottom: $icon-margin - 2px; // minus the input margin\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t> button {\n\t\tpadding: 0;\n\t\tspan {\n\t\t\topacity: $opacity_full;\n\t\t}\n\t}\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: math.div($clickable-area - $icon-size, 2);\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n\n// top-bar spacing\n$topbar-margin: 4px;\n\n// navigation spacing\n$app-navigation-settings-margin: 3px;\n"],sourceRoot:""}]);const o=i},5594:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var a=n(7537),r=n.n(a),s=n(3645),i=n.n(s)()(r());i.push([e.id,".material-design-icon[data-v-8a961b36]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.mention-bubble--primary .mention-bubble__content[data-v-8a961b36]{color:var(--color-primary-element-text);background-color:var(--color-primary-element)}.mention-bubble__wrapper[data-v-8a961b36]{max-width:150px;height:18px;vertical-align:text-bottom;display:inline-flex;align-items:center}.mention-bubble__content[data-v-8a961b36]{display:inline-flex;overflow:hidden;align-items:center;max-width:100%;height:20px;-webkit-user-select:none;user-select:none;padding-right:6px;padding-left:2px;border-radius:10px;background-color:var(--color-background-dark)}.mention-bubble__icon[data-v-8a961b36]{position:relative;width:16px;height:16px;border-radius:8px;background-color:var(--color-background-darker);background-repeat:no-repeat;background-position:center;background-size:12px}.mention-bubble__icon--with-avatar[data-v-8a961b36]{color:inherit;background-size:cover}.mention-bubble__title[data-v-8a961b36]{overflow:hidden;margin-left:2px;white-space:nowrap;text-overflow:ellipsis}.mention-bubble__title[data-v-8a961b36]::before{content:attr(title)}.mention-bubble__select[data-v-8a961b36]{position:absolute;z-index:-1;left:-1000px}","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/NcRichContenteditable/NcMentionBubble.vue"],names:[],mappings:"AAGA,uCACC,YAAA,CACA,iBAAA,CACA,mBAAA,CACA,kBAAA,CACA,sBAAA,CAAA,mECCC,uCAAA,CACA,6CAAA,CAGD,0CACC,eAXiB,CAajB,WAAA,CACA,0BAAA,CACA,mBAAA,CACA,kBAAA,CAGD,0CACC,mBAAA,CACA,eAAA,CACA,kBAAA,CACA,cAAA,CACA,WAzBc,CA0Bd,wBAAA,CACA,gBAAA,CACA,iBAAA,CACA,gBA3Be,CA4Bf,kBAAA,CACA,6CAAA,CAGD,uCACC,iBAAA,CACA,UAjCmB,CAkCnB,WAlCmB,CAmCnB,iBAAA,CACA,+CAAA,CACA,2BAAA,CACA,0BAAA,CACA,oBAAA,CAEA,oDACC,aAAA,CACA,qBAAA,CAIF,wCACC,eAAA,CACA,eAlDe,CAmDf,kBAAA,CACA,sBAAA,CAEA,gDACC,mBAAA,CAKF,yCACC,iBAAA,CACA,UAAA,CACA,YAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","@use 'sass:math'; $scope_version:\"18ada6c\"; @import 'variables'; @import 'material-icons';\n\n$bubble-height: 20px;\n$bubble-max-width: 150px;\n$bubble-padding: 2px;\n$bubble-avatar-size: $bubble-height - 2 * $bubble-padding;\n\n.mention-bubble {\n\t&--primary &__content {\n\t\tcolor: var(--color-primary-element-text);\n\t\tbackground-color: var(--color-primary-element);\n\t}\n\n\t&__wrapper {\n\t\tmax-width: $bubble-max-width;\n\t\t// Align with text\n\t\theight: $bubble-height - $bubble-padding;\n\t\tvertical-align: text-bottom;\n\t\tdisplay: inline-flex;\n\t\talign-items: center;\n\t}\n\n\t&__content {\n\t\tdisplay: inline-flex;\n\t\toverflow: hidden;\n\t\talign-items: center;\n\t\tmax-width: 100%;\n\t\theight: $bubble-height ;\n\t\t-webkit-user-select: none;\n\t\tuser-select: none;\n\t\tpadding-right: $bubble-padding * 3;\n\t\tpadding-left: $bubble-padding;\n\t\tborder-radius: math.div($bubble-height, 2);\n\t\tbackground-color: var(--color-background-dark);\n\t}\n\n\t&__icon {\n\t\tposition: relative;\n\t\twidth: $bubble-avatar-size;\n\t\theight: $bubble-avatar-size;\n\t\tborder-radius: math.div($bubble-avatar-size, 2);\n\t\tbackground-color: var(--color-background-darker);\n\t\tbackground-repeat: no-repeat;\n\t\tbackground-position: center;\n\t\tbackground-size: $bubble-avatar-size - 2 * $bubble-padding;\n\n\t\t&--with-avatar {\n\t\t\tcolor: inherit;\n\t\t\tbackground-size: cover;\n\t\t}\n\t}\n\n\t&__title {\n\t\toverflow: hidden;\n\t\tmargin-left: $bubble-padding;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\t// Put label in ::before so it is not selectable\n\t\t&::before {\n\t\t\tcontent: attr(title);\n\t\t}\n\t}\n\n\t// Hide the mention id so it is selectable\n\t&__select {\n\t\tposition: absolute;\n\t\tz-index: -1;\n\t\tleft: -1000px;\n\t}\n}\n\n"],sourceRoot:""}]);const o=i},8369:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var a=n(7537),r=n.n(a),s=n(3645),i=n.n(s)()(r());i.push([e.id,"\nbutton.menuitem[data-v-127b0c62] {\n\tborder-radius: var(--border-radius-large) !important;\n\ttext-align: left;\n}\nbutton.menuitem *[data-v-127b0c62] {\n\tcursor: pointer;\n}\nbutton.menuitem[data-v-127b0c62]:disabled {\n\topacity: 0.5 !important;\n\tcursor: default;\n}\nbutton.menuitem:disabled *[data-v-127b0c62] {\n\tcursor: default;\n}\n.menuitem.active[data-v-127b0c62] {\n\tborder-left: 4px solid var(--color-primary-element);\n\tborder-radius: 0 var(--border-radius-large) var(--border-radius-large) 0 !important;\n}\n","",{version:3,sources:["webpack://./src/components/NcPopoverMenu/NcPopoverMenuItem.vue"],names:[],mappings:";AAgYA;CACA,oDAAA;CACA,gBAAA;AACA;AAEA;CACA,eAAA;AACA;AAEA;CACA,uBAAA;CACA,eAAA;AACA;AAEA;CACA,eAAA;AACA;AAEA;CACA,mDAAA;CACA,mFAAA;AACA",sourcesContent:['\x3c!--\n - @copyright Copyright (c) 2018 John Molakvoæ \n -\n - @author John Molakvoæ \n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see .\n -\n --\x3e\n\n\n\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","\"use strict\";\n\nmodule.exports = function (item) {\n var content = item[1];\n var cssMapping = item[3];\n if (!cssMapping) {\n return content;\n }\n if (typeof btoa === \"function\") {\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n var sourceMapping = \"/*# \".concat(data, \" */\");\n return [content].concat([sourceMapping]).join(\"\\n\");\n }\n return [content].join(\"\\n\");\n};","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n","/**\n * lodash (Custom Build) \n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the `TypeError` message for \"Functions\" methods. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** `Object#toString` result references. */\nvar funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n symbolTag = '[object Symbol]';\n\n/** Used to match property names within property paths. */\nvar reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/,\n reLeadingDot = /^\\./,\n rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to match backslashes in property paths. */\nvar reEscapeChar = /\\\\(\\\\)?/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\n/**\n * Checks if `value` is a host object in IE < 9.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a host object, else `false`.\n */\nfunction isHostObject(value) {\n // Many host objects are `Object` objects that can coerce to strings\n // despite having improperly defined `toString` methods.\n var result = false;\n if (value != null && typeof value.toString != 'function') {\n try {\n result = !!(value + '');\n } catch (e) {}\n }\n return result;\n}\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype,\n funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/** Built-in value references. */\nvar Symbol = root.Symbol,\n splice = arrayProto.splice;\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map'),\n nativeCreate = getNative(Object, 'create');\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries ? entries.length : 0;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n}\n\n/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n return this.has(key) && delete this.__data__[key];\n}\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? data[key] !== undefined : hasOwnProperty.call(data, key);\n}\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries ? entries.length : 0;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n}\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n return true;\n}\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries ? entries.length : 0;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n return getMapData(this, key)['delete'](key);\n}\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n getMapData(this, key).set(key, value);\n return this;\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\n/**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\nfunction baseGet(object, path) {\n path = isKey(path, object) ? [path] : castPath(path);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n}\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = (isFunction(value) || isHostObject(value)) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\n/**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Array} Returns the cast property path array.\n */\nfunction castPath(value) {\n return isArray(value) ? value : stringToPath(value);\n}\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\n/**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\nfunction isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n}\n\n/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = memoize(function(string) {\n string = toString(string);\n\n var result = [];\n if (reLeadingDot.test(string)) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, string) {\n result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n});\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to process.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\n/**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\nfunction memoize(func, resolver) {\n if (typeof func != 'function' || (resolver && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result);\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n}\n\n// Assign cache to `_.memoize`.\nmemoize.Cache = MapCache;\n\n/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\n/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 8-9 which returns 'object' for typed array and other constructors.\n var tag = isObject(value) ? objectToString.call(value) : '';\n return tag == funcTag || tag == genTag;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && objectToString.call(value) == symbolTag);\n}\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\n/**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\nfunction get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n}\n\nmodule.exports = get;\n","//! moment.js locale configuration\n//! locale : Afrikaans [af]\n//! author : Werner Mollentze : https://github.com/wernerm\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var af = moment.defineLocale('af', {\n months: 'Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des'.split('_'),\n weekdays: 'Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag'.split(\n '_'\n ),\n weekdaysShort: 'Son_Maa_Din_Woe_Don_Vry_Sat'.split('_'),\n weekdaysMin: 'So_Ma_Di_Wo_Do_Vr_Sa'.split('_'),\n meridiemParse: /vm|nm/i,\n isPM: function (input) {\n return /^nm$/i.test(input);\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower ? 'vm' : 'VM';\n } else {\n return isLower ? 'nm' : 'NM';\n }\n },\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Vandag om] LT',\n nextDay: '[Môre om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[Gister om] LT',\n lastWeek: '[Laas] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'oor %s',\n past: '%s gelede',\n s: \"'n paar sekondes\",\n ss: '%d sekondes',\n m: \"'n minuut\",\n mm: '%d minute',\n h: \"'n uur\",\n hh: '%d ure',\n d: \"'n dag\",\n dd: '%d dae',\n M: \"'n maand\",\n MM: '%d maande',\n y: \"'n jaar\",\n yy: '%d jaar',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n ); // Thanks to Joris Röling : https://github.com/jjupiter\n },\n week: {\n dow: 1, // Maandag is die eerste dag van die week.\n doy: 4, // Die week wat die 4de Januarie bevat is die eerste week van die jaar.\n },\n });\n\n return af;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Algeria) [ar-dz]\n//! author : Amine Roukh: https://github.com/Amine27\n//! author : Abdel Said: https://github.com/abdelsaid\n//! author : Ahmed Elkhatib\n//! author : forabi https://github.com/forabi\n//! author : Noureddine LOUAHEDJ : https://github.com/noureddinem\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var pluralForm = function (n) {\n return n === 0\n ? 0\n : n === 1\n ? 1\n : n === 2\n ? 2\n : n % 100 >= 3 && n % 100 <= 10\n ? 3\n : n % 100 >= 11\n ? 4\n : 5;\n },\n plurals = {\n s: [\n 'أقل من ثانية',\n 'ثانية واحدة',\n ['ثانيتان', 'ثانيتين'],\n '%d ثوان',\n '%d ثانية',\n '%d ثانية',\n ],\n m: [\n 'أقل من دقيقة',\n 'دقيقة واحدة',\n ['دقيقتان', 'دقيقتين'],\n '%d دقائق',\n '%d دقيقة',\n '%d دقيقة',\n ],\n h: [\n 'أقل من ساعة',\n 'ساعة واحدة',\n ['ساعتان', 'ساعتين'],\n '%d ساعات',\n '%d ساعة',\n '%d ساعة',\n ],\n d: [\n 'أقل من يوم',\n 'يوم واحد',\n ['يومان', 'يومين'],\n '%d أيام',\n '%d يومًا',\n '%d يوم',\n ],\n M: [\n 'أقل من شهر',\n 'شهر واحد',\n ['شهران', 'شهرين'],\n '%d أشهر',\n '%d شهرا',\n '%d شهر',\n ],\n y: [\n 'أقل من عام',\n 'عام واحد',\n ['عامان', 'عامين'],\n '%d أعوام',\n '%d عامًا',\n '%d عام',\n ],\n },\n pluralize = function (u) {\n return function (number, withoutSuffix, string, isFuture) {\n var f = pluralForm(number),\n str = plurals[u][pluralForm(number)];\n if (f === 2) {\n str = str[withoutSuffix ? 0 : 1];\n }\n return str.replace(/%d/i, number);\n };\n },\n months = [\n 'جانفي',\n 'فيفري',\n 'مارس',\n 'أفريل',\n 'ماي',\n 'جوان',\n 'جويلية',\n 'أوت',\n 'سبتمبر',\n 'أكتوبر',\n 'نوفمبر',\n 'ديسمبر',\n ];\n\n var arDz = moment.defineLocale('ar-dz', {\n months: months,\n monthsShort: months,\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/\\u200FM/\\u200FYYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|م/,\n isPM: function (input) {\n return 'م' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar: {\n sameDay: '[اليوم عند الساعة] LT',\n nextDay: '[غدًا عند الساعة] LT',\n nextWeek: 'dddd [عند الساعة] LT',\n lastDay: '[أمس عند الساعة] LT',\n lastWeek: 'dddd [عند الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'بعد %s',\n past: 'منذ %s',\n s: pluralize('s'),\n ss: pluralize('s'),\n m: pluralize('m'),\n mm: pluralize('m'),\n h: pluralize('h'),\n hh: pluralize('h'),\n d: pluralize('d'),\n dd: pluralize('d'),\n M: pluralize('M'),\n MM: pluralize('M'),\n y: pluralize('y'),\n yy: pluralize('y'),\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return arDz;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Kuwait) [ar-kw]\n//! author : Nusret Parlak: https://github.com/nusretparlak\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var arKw = moment.defineLocale('ar-kw', {\n months: 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(\n '_'\n ),\n monthsShort:\n 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(\n '_'\n ),\n weekdays: 'الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'في %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return arKw;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Libya) [ar-ly]\n//! author : Ali Hmer: https://github.com/kikoanis\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\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 0: '0',\n },\n pluralForm = function (n) {\n return n === 0\n ? 0\n : n === 1\n ? 1\n : n === 2\n ? 2\n : n % 100 >= 3 && n % 100 <= 10\n ? 3\n : n % 100 >= 11\n ? 4\n : 5;\n },\n plurals = {\n s: [\n 'أقل من ثانية',\n 'ثانية واحدة',\n ['ثانيتان', 'ثانيتين'],\n '%d ثوان',\n '%d ثانية',\n '%d ثانية',\n ],\n m: [\n 'أقل من دقيقة',\n 'دقيقة واحدة',\n ['دقيقتان', 'دقيقتين'],\n '%d دقائق',\n '%d دقيقة',\n '%d دقيقة',\n ],\n h: [\n 'أقل من ساعة',\n 'ساعة واحدة',\n ['ساعتان', 'ساعتين'],\n '%d ساعات',\n '%d ساعة',\n '%d ساعة',\n ],\n d: [\n 'أقل من يوم',\n 'يوم واحد',\n ['يومان', 'يومين'],\n '%d أيام',\n '%d يومًا',\n '%d يوم',\n ],\n M: [\n 'أقل من شهر',\n 'شهر واحد',\n ['شهران', 'شهرين'],\n '%d أشهر',\n '%d شهرا',\n '%d شهر',\n ],\n y: [\n 'أقل من عام',\n 'عام واحد',\n ['عامان', 'عامين'],\n '%d أعوام',\n '%d عامًا',\n '%d عام',\n ],\n },\n pluralize = function (u) {\n return function (number, withoutSuffix, string, isFuture) {\n var f = pluralForm(number),\n str = plurals[u][pluralForm(number)];\n if (f === 2) {\n str = str[withoutSuffix ? 0 : 1];\n }\n return str.replace(/%d/i, number);\n };\n },\n months = [\n 'يناير',\n 'فبراير',\n 'مارس',\n 'أبريل',\n 'مايو',\n 'يونيو',\n 'يوليو',\n 'أغسطس',\n 'سبتمبر',\n 'أكتوبر',\n 'نوفمبر',\n 'ديسمبر',\n ];\n\n var arLy = moment.defineLocale('ar-ly', {\n months: months,\n monthsShort: months,\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/\\u200FM/\\u200FYYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|م/,\n isPM: function (input) {\n return 'م' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar: {\n sameDay: '[اليوم عند الساعة] LT',\n nextDay: '[غدًا عند الساعة] LT',\n nextWeek: 'dddd [عند الساعة] LT',\n lastDay: '[أمس عند الساعة] LT',\n lastWeek: 'dddd [عند الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'بعد %s',\n past: 'منذ %s',\n s: pluralize('s'),\n ss: pluralize('s'),\n m: pluralize('m'),\n mm: pluralize('m'),\n h: pluralize('h'),\n hh: pluralize('h'),\n d: pluralize('d'),\n dd: pluralize('d'),\n M: pluralize('M'),\n MM: pluralize('M'),\n y: pluralize('y'),\n yy: pluralize('y'),\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, '،');\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return arLy;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Morocco) [ar-ma]\n//! author : ElFadili Yassine : https://github.com/ElFadiliY\n//! author : Abdel Said : https://github.com/abdelsaid\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var arMa = moment.defineLocale('ar-ma', {\n months: 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(\n '_'\n ),\n monthsShort:\n 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(\n '_'\n ),\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'في %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return arMa;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Saudi Arabia) [ar-sa]\n//! author : Suhail Alkowaileet : https://github.com/xsoh\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '١',\n 2: '٢',\n 3: '٣',\n 4: '٤',\n 5: '٥',\n 6: '٦',\n 7: '٧',\n 8: '٨',\n 9: '٩',\n 0: '٠',\n },\n numberMap = {\n '١': '1',\n '٢': '2',\n '٣': '3',\n '٤': '4',\n '٥': '5',\n '٦': '6',\n '٧': '7',\n '٨': '8',\n '٩': '9',\n '٠': '0',\n };\n\n var arSa = moment.defineLocale('ar-sa', {\n months: 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(\n '_'\n ),\n monthsShort:\n 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(\n '_'\n ),\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|م/,\n isPM: function (input) {\n return 'م' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'في %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n preparse: function (string) {\n return string\n .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n })\n .replace(/،/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, '،');\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return arSa;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Tunisia) [ar-tn]\n//! author : Nader Toukabri : https://github.com/naderio\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var arTn = moment.defineLocale('ar-tn', {\n months: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(\n '_'\n ),\n monthsShort:\n 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(\n '_'\n ),\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'في %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return arTn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic [ar]\n//! author : Abdel Said: https://github.com/abdelsaid\n//! author : Ahmed Elkhatib\n//! author : forabi https://github.com/forabi\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '١',\n 2: '٢',\n 3: '٣',\n 4: '٤',\n 5: '٥',\n 6: '٦',\n 7: '٧',\n 8: '٨',\n 9: '٩',\n 0: '٠',\n },\n numberMap = {\n '١': '1',\n '٢': '2',\n '٣': '3',\n '٤': '4',\n '٥': '5',\n '٦': '6',\n '٧': '7',\n '٨': '8',\n '٩': '9',\n '٠': '0',\n },\n pluralForm = function (n) {\n return n === 0\n ? 0\n : n === 1\n ? 1\n : n === 2\n ? 2\n : n % 100 >= 3 && n % 100 <= 10\n ? 3\n : n % 100 >= 11\n ? 4\n : 5;\n },\n plurals = {\n s: [\n 'أقل من ثانية',\n 'ثانية واحدة',\n ['ثانيتان', 'ثانيتين'],\n '%d ثوان',\n '%d ثانية',\n '%d ثانية',\n ],\n m: [\n 'أقل من دقيقة',\n 'دقيقة واحدة',\n ['دقيقتان', 'دقيقتين'],\n '%d دقائق',\n '%d دقيقة',\n '%d دقيقة',\n ],\n h: [\n 'أقل من ساعة',\n 'ساعة واحدة',\n ['ساعتان', 'ساعتين'],\n '%d ساعات',\n '%d ساعة',\n '%d ساعة',\n ],\n d: [\n 'أقل من يوم',\n 'يوم واحد',\n ['يومان', 'يومين'],\n '%d أيام',\n '%d يومًا',\n '%d يوم',\n ],\n M: [\n 'أقل من شهر',\n 'شهر واحد',\n ['شهران', 'شهرين'],\n '%d أشهر',\n '%d شهرا',\n '%d شهر',\n ],\n y: [\n 'أقل من عام',\n 'عام واحد',\n ['عامان', 'عامين'],\n '%d أعوام',\n '%d عامًا',\n '%d عام',\n ],\n },\n pluralize = function (u) {\n return function (number, withoutSuffix, string, isFuture) {\n var f = pluralForm(number),\n str = plurals[u][pluralForm(number)];\n if (f === 2) {\n str = str[withoutSuffix ? 0 : 1];\n }\n return str.replace(/%d/i, number);\n };\n },\n months = [\n 'يناير',\n 'فبراير',\n 'مارس',\n 'أبريل',\n 'مايو',\n 'يونيو',\n 'يوليو',\n 'أغسطس',\n 'سبتمبر',\n 'أكتوبر',\n 'نوفمبر',\n 'ديسمبر',\n ];\n\n var ar = moment.defineLocale('ar', {\n months: months,\n monthsShort: months,\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/\\u200FM/\\u200FYYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|م/,\n isPM: function (input) {\n return 'م' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar: {\n sameDay: '[اليوم عند الساعة] LT',\n nextDay: '[غدًا عند الساعة] LT',\n nextWeek: 'dddd [عند الساعة] LT',\n lastDay: '[أمس عند الساعة] LT',\n lastWeek: 'dddd [عند الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'بعد %s',\n past: 'منذ %s',\n s: pluralize('s'),\n ss: pluralize('s'),\n m: pluralize('m'),\n mm: pluralize('m'),\n h: pluralize('h'),\n hh: pluralize('h'),\n d: pluralize('d'),\n dd: pluralize('d'),\n M: pluralize('M'),\n MM: pluralize('M'),\n y: pluralize('y'),\n yy: pluralize('y'),\n },\n preparse: function (string) {\n return string\n .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n })\n .replace(/،/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, '،');\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return ar;\n\n})));\n","//! moment.js locale configuration\n//! locale : Azerbaijani [az]\n//! author : topchiyev : https://github.com/topchiyev\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 1: '-inci',\n 5: '-inci',\n 8: '-inci',\n 70: '-inci',\n 80: '-inci',\n 2: '-nci',\n 7: '-nci',\n 20: '-nci',\n 50: '-nci',\n 3: '-üncü',\n 4: '-üncü',\n 100: '-üncü',\n 6: '-ncı',\n 9: '-uncu',\n 10: '-uncu',\n 30: '-uncu',\n 60: '-ıncı',\n 90: '-ıncı',\n };\n\n var az = moment.defineLocale('az', {\n months: 'yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr'.split(\n '_'\n ),\n monthsShort: 'yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek'.split('_'),\n weekdays:\n 'Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə'.split(\n '_'\n ),\n weekdaysShort: 'Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən'.split('_'),\n weekdaysMin: 'Bz_BE_ÇA_Çə_CA_Cü_Şə'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[bugün saat] LT',\n nextDay: '[sabah saat] LT',\n nextWeek: '[gələn həftə] dddd [saat] LT',\n lastDay: '[dünən] LT',\n lastWeek: '[keçən həftə] dddd [saat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s sonra',\n past: '%s əvvəl',\n s: 'bir neçə saniyə',\n ss: '%d saniyə',\n m: 'bir dəqiqə',\n mm: '%d dəqiqə',\n h: 'bir saat',\n hh: '%d saat',\n d: 'bir gün',\n dd: '%d gün',\n M: 'bir ay',\n MM: '%d ay',\n y: 'bir il',\n yy: '%d il',\n },\n meridiemParse: /gecə|səhər|gündüz|axşam/,\n isPM: function (input) {\n return /^(gündüz|axşam)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'gecə';\n } else if (hour < 12) {\n return 'səhər';\n } else if (hour < 17) {\n return 'gündüz';\n } else {\n return 'axşam';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,\n ordinal: function (number) {\n if (number === 0) {\n // special case for zero\n return number + '-ıncı';\n }\n var a = number % 10,\n b = (number % 100) - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return az;\n\n})));\n","//! moment.js locale configuration\n//! locale : Belarusian [be]\n//! author : Dmitry Demidov : https://github.com/demidov91\n//! author: Praleska: http://praleska.pro/\n//! Author : Menelion Elensúle : https://github.com/Oire\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11\n ? forms[0]\n : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20)\n ? forms[1]\n : forms[2];\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд',\n mm: withoutSuffix ? 'хвіліна_хвіліны_хвілін' : 'хвіліну_хвіліны_хвілін',\n hh: withoutSuffix ? 'гадзіна_гадзіны_гадзін' : 'гадзіну_гадзіны_гадзін',\n dd: 'дзень_дні_дзён',\n MM: 'месяц_месяцы_месяцаў',\n yy: 'год_гады_гадоў',\n };\n if (key === 'm') {\n return withoutSuffix ? 'хвіліна' : 'хвіліну';\n } else if (key === 'h') {\n return withoutSuffix ? 'гадзіна' : 'гадзіну';\n } else {\n return number + ' ' + plural(format[key], +number);\n }\n }\n\n var be = moment.defineLocale('be', {\n months: {\n format: 'студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня'.split(\n '_'\n ),\n standalone:\n 'студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань'.split(\n '_'\n ),\n },\n monthsShort:\n 'студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж'.split('_'),\n weekdays: {\n format: 'нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу'.split(\n '_'\n ),\n standalone:\n 'нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота'.split(\n '_'\n ),\n isFormat: /\\[ ?[Ууў] ?(?:мінулую|наступную)? ?\\] ?dddd/,\n },\n weekdaysShort: 'нд_пн_ат_ср_чц_пт_сб'.split('_'),\n weekdaysMin: 'нд_пн_ат_ср_чц_пт_сб'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY г.',\n LLL: 'D MMMM YYYY г., HH:mm',\n LLLL: 'dddd, D MMMM YYYY г., HH:mm',\n },\n calendar: {\n sameDay: '[Сёння ў] LT',\n nextDay: '[Заўтра ў] LT',\n lastDay: '[Учора ў] LT',\n nextWeek: function () {\n return '[У] dddd [ў] LT';\n },\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 5:\n case 6:\n return '[У мінулую] dddd [ў] LT';\n case 1:\n case 2:\n case 4:\n return '[У мінулы] dddd [ў] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'праз %s',\n past: '%s таму',\n s: 'некалькі секунд',\n m: relativeTimeWithPlural,\n mm: relativeTimeWithPlural,\n h: relativeTimeWithPlural,\n hh: relativeTimeWithPlural,\n d: 'дзень',\n dd: relativeTimeWithPlural,\n M: 'месяц',\n MM: relativeTimeWithPlural,\n y: 'год',\n yy: relativeTimeWithPlural,\n },\n meridiemParse: /ночы|раніцы|дня|вечара/,\n isPM: function (input) {\n return /^(дня|вечара)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночы';\n } else if (hour < 12) {\n return 'раніцы';\n } else if (hour < 17) {\n return 'дня';\n } else {\n return 'вечара';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(і|ы|га)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n case 'w':\n case 'W':\n return (number % 10 === 2 || number % 10 === 3) &&\n number % 100 !== 12 &&\n number % 100 !== 13\n ? number + '-і'\n : number + '-ы';\n case 'D':\n return number + '-га';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return be;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bulgarian [bg]\n//! author : Krasen Borisov : https://github.com/kraz\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var bg = moment.defineLocale('bg', {\n months: 'януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември'.split(\n '_'\n ),\n monthsShort: 'яну_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек'.split('_'),\n weekdays: 'неделя_понеделник_вторник_сряда_четвъртък_петък_събота'.split(\n '_'\n ),\n weekdaysShort: 'нед_пон_вто_сря_чет_пет_съб'.split('_'),\n weekdaysMin: 'нд_пн_вт_ср_чт_пт_сб'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'D.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY H:mm',\n LLLL: 'dddd, D MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[Днес в] LT',\n nextDay: '[Утре в] LT',\n nextWeek: 'dddd [в] LT',\n lastDay: '[Вчера в] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 6:\n return '[Миналата] dddd [в] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[Миналия] dddd [в] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'след %s',\n past: 'преди %s',\n s: 'няколко секунди',\n ss: '%d секунди',\n m: 'минута',\n mm: '%d минути',\n h: 'час',\n hh: '%d часа',\n d: 'ден',\n dd: '%d дена',\n w: 'седмица',\n ww: '%d седмици',\n M: 'месец',\n MM: '%d месеца',\n y: 'година',\n yy: '%d години',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ев|ен|ти|ви|ри|ми)/,\n ordinal: function (number) {\n var lastDigit = number % 10,\n last2Digits = number % 100;\n if (number === 0) {\n return number + '-ев';\n } else if (last2Digits === 0) {\n return number + '-ен';\n } else if (last2Digits > 10 && last2Digits < 20) {\n return number + '-ти';\n } else if (lastDigit === 1) {\n return number + '-ви';\n } else if (lastDigit === 2) {\n return number + '-ри';\n } else if (lastDigit === 7 || lastDigit === 8) {\n return number + '-ми';\n } else {\n return number + '-ти';\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return bg;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bambara [bm]\n//! author : Estelle Comment : https://github.com/estellecomment\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var bm = moment.defineLocale('bm', {\n months: 'Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_Mɛkalo_Zuwɛnkalo_Zuluyekalo_Utikalo_Sɛtanburukalo_ɔkutɔburukalo_Nowanburukalo_Desanburukalo'.split(\n '_'\n ),\n monthsShort: 'Zan_Few_Mar_Awi_Mɛ_Zuw_Zul_Uti_Sɛt_ɔku_Now_Des'.split('_'),\n weekdays: 'Kari_Ntɛnɛn_Tarata_Araba_Alamisa_Juma_Sibiri'.split('_'),\n weekdaysShort: 'Kar_Ntɛ_Tar_Ara_Ala_Jum_Sib'.split('_'),\n weekdaysMin: 'Ka_Nt_Ta_Ar_Al_Ju_Si'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'MMMM [tile] D [san] YYYY',\n LLL: 'MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm',\n LLLL: 'dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm',\n },\n calendar: {\n sameDay: '[Bi lɛrɛ] LT',\n nextDay: '[Sini lɛrɛ] LT',\n nextWeek: 'dddd [don lɛrɛ] LT',\n lastDay: '[Kunu lɛrɛ] LT',\n lastWeek: 'dddd [tɛmɛnen lɛrɛ] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s kɔnɔ',\n past: 'a bɛ %s bɔ',\n s: 'sanga dama dama',\n ss: 'sekondi %d',\n m: 'miniti kelen',\n mm: 'miniti %d',\n h: 'lɛrɛ kelen',\n hh: 'lɛrɛ %d',\n d: 'tile kelen',\n dd: 'tile %d',\n M: 'kalo kelen',\n MM: 'kalo %d',\n y: 'san kelen',\n yy: 'san %d',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return bm;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bengali (Bangladesh) [bn-bd]\n//! author : Asraf Hossain Patoary : https://github.com/ashwoolford\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '১',\n 2: '২',\n 3: '৩',\n 4: '৪',\n 5: '৫',\n 6: '৬',\n 7: '৭',\n 8: '৮',\n 9: '৯',\n 0: '০',\n },\n numberMap = {\n '১': '1',\n '২': '2',\n '৩': '3',\n '৪': '4',\n '৫': '5',\n '৬': '6',\n '৭': '7',\n '৮': '8',\n '৯': '9',\n '০': '0',\n };\n\n var bnBd = moment.defineLocale('bn-bd', {\n months: 'জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর'.split(\n '_'\n ),\n monthsShort:\n 'জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে'.split(\n '_'\n ),\n weekdays: 'রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার'.split(\n '_'\n ),\n weekdaysShort: 'রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি'.split('_'),\n weekdaysMin: 'রবি_সোম_মঙ্গল_বুধ_বৃহ_শুক্র_শনি'.split('_'),\n longDateFormat: {\n LT: 'A h:mm সময়',\n LTS: 'A h:mm:ss সময়',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm সময়',\n LLLL: 'dddd, D MMMM YYYY, A h:mm সময়',\n },\n calendar: {\n sameDay: '[আজ] LT',\n nextDay: '[আগামীকাল] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[গতকাল] LT',\n lastWeek: '[গত] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s পরে',\n past: '%s আগে',\n s: 'কয়েক সেকেন্ড',\n ss: '%d সেকেন্ড',\n m: 'এক মিনিট',\n mm: '%d মিনিট',\n h: 'এক ঘন্টা',\n hh: '%d ঘন্টা',\n d: 'এক দিন',\n dd: '%d দিন',\n M: 'এক মাস',\n MM: '%d মাস',\n y: 'এক বছর',\n yy: '%d বছর',\n },\n preparse: function (string) {\n return string.replace(/[১২৩৪৫৬৭৮৯০]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n\n meridiemParse: /রাত|ভোর|সকাল|দুপুর|বিকাল|সন্ধ্যা|রাত/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'রাত') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ভোর') {\n return hour;\n } else if (meridiem === 'সকাল') {\n return hour;\n } else if (meridiem === 'দুপুর') {\n return hour >= 3 ? hour : hour + 12;\n } else if (meridiem === 'বিকাল') {\n return hour + 12;\n } else if (meridiem === 'সন্ধ্যা') {\n return hour + 12;\n }\n },\n\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'রাত';\n } else if (hour < 6) {\n return 'ভোর';\n } else if (hour < 12) {\n return 'সকাল';\n } else if (hour < 15) {\n return 'দুপুর';\n } else if (hour < 18) {\n return 'বিকাল';\n } else if (hour < 20) {\n return 'সন্ধ্যা';\n } else {\n return 'রাত';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return bnBd;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bengali [bn]\n//! author : Kaushik Gandhi : https://github.com/kaushikgandhi\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '১',\n 2: '২',\n 3: '৩',\n 4: '৪',\n 5: '৫',\n 6: '৬',\n 7: '৭',\n 8: '৮',\n 9: '৯',\n 0: '০',\n },\n numberMap = {\n '১': '1',\n '২': '2',\n '৩': '3',\n '৪': '4',\n '৫': '5',\n '৬': '6',\n '৭': '7',\n '৮': '8',\n '৯': '9',\n '০': '0',\n };\n\n var bn = moment.defineLocale('bn', {\n months: 'জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর'.split(\n '_'\n ),\n monthsShort:\n 'জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে'.split(\n '_'\n ),\n weekdays: 'রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার'.split(\n '_'\n ),\n weekdaysShort: 'রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি'.split('_'),\n weekdaysMin: 'রবি_সোম_মঙ্গল_বুধ_বৃহ_শুক্র_শনি'.split('_'),\n longDateFormat: {\n LT: 'A h:mm সময়',\n LTS: 'A h:mm:ss সময়',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm সময়',\n LLLL: 'dddd, D MMMM YYYY, A h:mm সময়',\n },\n calendar: {\n sameDay: '[আজ] LT',\n nextDay: '[আগামীকাল] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[গতকাল] LT',\n lastWeek: '[গত] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s পরে',\n past: '%s আগে',\n s: 'কয়েক সেকেন্ড',\n ss: '%d সেকেন্ড',\n m: 'এক মিনিট',\n mm: '%d মিনিট',\n h: 'এক ঘন্টা',\n hh: '%d ঘন্টা',\n d: 'এক দিন',\n dd: '%d দিন',\n M: 'এক মাস',\n MM: '%d মাস',\n y: 'এক বছর',\n yy: '%d বছর',\n },\n preparse: function (string) {\n return string.replace(/[১২৩৪৫৬৭৮৯০]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /রাত|সকাল|দুপুর|বিকাল|রাত/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n (meridiem === 'রাত' && hour >= 4) ||\n (meridiem === 'দুপুর' && hour < 5) ||\n meridiem === 'বিকাল'\n ) {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'রাত';\n } else if (hour < 10) {\n return 'সকাল';\n } else if (hour < 17) {\n return 'দুপুর';\n } else if (hour < 20) {\n return 'বিকাল';\n } else {\n return 'রাত';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return bn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tibetan [bo]\n//! author : Thupten N. Chakrishar : https://github.com/vajradog\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '༡',\n 2: '༢',\n 3: '༣',\n 4: '༤',\n 5: '༥',\n 6: '༦',\n 7: '༧',\n 8: '༨',\n 9: '༩',\n 0: '༠',\n },\n numberMap = {\n '༡': '1',\n '༢': '2',\n '༣': '3',\n '༤': '4',\n '༥': '5',\n '༦': '6',\n '༧': '7',\n '༨': '8',\n '༩': '9',\n '༠': '0',\n };\n\n var bo = moment.defineLocale('bo', {\n months: 'ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ'.split(\n '_'\n ),\n monthsShort:\n 'ཟླ་1_ཟླ་2_ཟླ་3_ཟླ་4_ཟླ་5_ཟླ་6_ཟླ་7_ཟླ་8_ཟླ་9_ཟླ་10_ཟླ་11_ཟླ་12'.split(\n '_'\n ),\n monthsShortRegex: /^(ཟླ་\\d{1,2})/,\n monthsParseExact: true,\n weekdays:\n 'གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་'.split(\n '_'\n ),\n weekdaysShort: 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split(\n '_'\n ),\n weekdaysMin: 'ཉི_ཟླ_མིག_ལྷག_ཕུར_སངས_སྤེན'.split('_'),\n longDateFormat: {\n LT: 'A h:mm',\n LTS: 'A h:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm',\n LLLL: 'dddd, D MMMM YYYY, A h:mm',\n },\n calendar: {\n sameDay: '[དི་རིང] LT',\n nextDay: '[སང་ཉིན] LT',\n nextWeek: '[བདུན་ཕྲག་རྗེས་མ], LT',\n lastDay: '[ཁ་སང] LT',\n lastWeek: '[བདུན་ཕྲག་མཐའ་མ] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ལ་',\n past: '%s སྔན་ལ',\n s: 'ལམ་སང',\n ss: '%d སྐར་ཆ།',\n m: 'སྐར་མ་གཅིག',\n mm: '%d སྐར་མ',\n h: 'ཆུ་ཚོད་གཅིག',\n hh: '%d ཆུ་ཚོད',\n d: 'ཉིན་གཅིག',\n dd: '%d ཉིན་',\n M: 'ཟླ་བ་གཅིག',\n MM: '%d ཟླ་བ',\n y: 'ལོ་གཅིག',\n yy: '%d ལོ',\n },\n preparse: function (string) {\n return string.replace(/[༡༢༣༤༥༦༧༨༩༠]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n (meridiem === 'མཚན་མོ' && hour >= 4) ||\n (meridiem === 'ཉིན་གུང' && hour < 5) ||\n meridiem === 'དགོང་དག'\n ) {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'མཚན་མོ';\n } else if (hour < 10) {\n return 'ཞོགས་ཀས';\n } else if (hour < 17) {\n return 'ཉིན་གུང';\n } else if (hour < 20) {\n return 'དགོང་དག';\n } else {\n return 'མཚན་མོ';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return bo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Breton [br]\n//! author : Jean-Baptiste Le Duigou : https://github.com/jbleduigou\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function relativeTimeWithMutation(number, withoutSuffix, key) {\n var format = {\n mm: 'munutenn',\n MM: 'miz',\n dd: 'devezh',\n };\n return number + ' ' + mutation(format[key], number);\n }\n function specialMutationForYears(number) {\n switch (lastNumber(number)) {\n case 1:\n case 3:\n case 4:\n case 5:\n case 9:\n return number + ' bloaz';\n default:\n return number + ' vloaz';\n }\n }\n function lastNumber(number) {\n if (number > 9) {\n return lastNumber(number % 10);\n }\n return number;\n }\n function mutation(text, number) {\n if (number === 2) {\n return softMutation(text);\n }\n return text;\n }\n function softMutation(text) {\n var mutationTable = {\n m: 'v',\n b: 'v',\n d: 'z',\n };\n if (mutationTable[text.charAt(0)] === undefined) {\n return text;\n }\n return mutationTable[text.charAt(0)] + text.substring(1);\n }\n\n var monthsParse = [\n /^gen/i,\n /^c[ʼ\\']hwe/i,\n /^meu/i,\n /^ebr/i,\n /^mae/i,\n /^(mez|eve)/i,\n /^gou/i,\n /^eos/i,\n /^gwe/i,\n /^her/i,\n /^du/i,\n /^ker/i,\n ],\n monthsRegex =\n /^(genver|c[ʼ\\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu|gen|c[ʼ\\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,\n monthsStrictRegex =\n /^(genver|c[ʼ\\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu)/i,\n monthsShortStrictRegex =\n /^(gen|c[ʼ\\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,\n fullWeekdaysParse = [\n /^sul/i,\n /^lun/i,\n /^meurzh/i,\n /^merc[ʼ\\']her/i,\n /^yaou/i,\n /^gwener/i,\n /^sadorn/i,\n ],\n shortWeekdaysParse = [\n /^Sul/i,\n /^Lun/i,\n /^Meu/i,\n /^Mer/i,\n /^Yao/i,\n /^Gwe/i,\n /^Sad/i,\n ],\n minWeekdaysParse = [\n /^Su/i,\n /^Lu/i,\n /^Me([^r]|$)/i,\n /^Mer/i,\n /^Ya/i,\n /^Gw/i,\n /^Sa/i,\n ];\n\n var br = moment.defineLocale('br', {\n months: 'Genver_Cʼhwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu'.split(\n '_'\n ),\n monthsShort: 'Gen_Cʼhwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker'.split('_'),\n weekdays: 'Sul_Lun_Meurzh_Mercʼher_Yaou_Gwener_Sadorn'.split('_'),\n weekdaysShort: 'Sul_Lun_Meu_Mer_Yao_Gwe_Sad'.split('_'),\n weekdaysMin: 'Su_Lu_Me_Mer_Ya_Gw_Sa'.split('_'),\n weekdaysParse: minWeekdaysParse,\n fullWeekdaysParse: fullWeekdaysParse,\n shortWeekdaysParse: shortWeekdaysParse,\n minWeekdaysParse: minWeekdaysParse,\n\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: monthsStrictRegex,\n monthsShortStrictRegex: monthsShortStrictRegex,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [a viz] MMMM YYYY',\n LLL: 'D [a viz] MMMM YYYY HH:mm',\n LLLL: 'dddd, D [a viz] MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Hiziv da] LT',\n nextDay: '[Warcʼhoazh da] LT',\n nextWeek: 'dddd [da] LT',\n lastDay: '[Decʼh da] LT',\n lastWeek: 'dddd [paset da] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'a-benn %s',\n past: '%s ʼzo',\n s: 'un nebeud segondennoù',\n ss: '%d eilenn',\n m: 'ur vunutenn',\n mm: relativeTimeWithMutation,\n h: 'un eur',\n hh: '%d eur',\n d: 'un devezh',\n dd: relativeTimeWithMutation,\n M: 'ur miz',\n MM: relativeTimeWithMutation,\n y: 'ur bloaz',\n yy: specialMutationForYears,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(añ|vet)/,\n ordinal: function (number) {\n var output = number === 1 ? 'añ' : 'vet';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n meridiemParse: /a.m.|g.m./, // goude merenn | a-raok merenn\n isPM: function (token) {\n return token === 'g.m.';\n },\n meridiem: function (hour, minute, isLower) {\n return hour < 12 ? 'a.m.' : 'g.m.';\n },\n });\n\n return br;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bosnian [bs]\n//! author : Nedim Cholich : https://github.com/frontyard\n//! based on (hr) translation by Bojan Marković\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n if (number === 1) {\n result += 'sekunda';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sekunde';\n } else {\n result += 'sekundi';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'jedna minuta' : 'jedne minute';\n case 'mm':\n if (number === 1) {\n result += 'minuta';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'minute';\n } else {\n result += 'minuta';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'jedan sat' : 'jednog sata';\n case 'hh':\n if (number === 1) {\n result += 'sat';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sata';\n } else {\n result += 'sati';\n }\n return result;\n case 'dd':\n if (number === 1) {\n result += 'dan';\n } else {\n result += 'dana';\n }\n return result;\n case 'MM':\n if (number === 1) {\n result += 'mjesec';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'mjeseca';\n } else {\n result += 'mjeseci';\n }\n return result;\n case 'yy':\n if (number === 1) {\n result += 'godina';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'godine';\n } else {\n result += 'godina';\n }\n return result;\n }\n }\n\n var bs = moment.defineLocale('bs', {\n months: 'januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sutra u] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[jučer u] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n return '[prošlu] dddd [u] LT';\n case 6:\n return '[prošle] [subote] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[prošli] dddd [u] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'prije %s',\n s: 'par sekundi',\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: 'dan',\n dd: translate,\n M: 'mjesec',\n MM: translate,\n y: 'godinu',\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return bs;\n\n})));\n","//! moment.js locale configuration\n//! locale : Catalan [ca]\n//! author : Juan G. Hurtado : https://github.com/juanghurtado\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ca = moment.defineLocale('ca', {\n months: {\n standalone:\n 'gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre'.split(\n '_'\n ),\n format: \"de gener_de febrer_de març_d'abril_de maig_de juny_de juliol_d'agost_de setembre_d'octubre_de novembre_de desembre\".split(\n '_'\n ),\n isFormat: /D[oD]?(\\s)+MMMM/,\n },\n monthsShort:\n 'gen._febr._març_abr._maig_juny_jul._ag._set._oct._nov._des.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte'.split(\n '_'\n ),\n weekdaysShort: 'dg._dl._dt._dc._dj._dv._ds.'.split('_'),\n weekdaysMin: 'dg_dl_dt_dc_dj_dv_ds'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM [de] YYYY',\n ll: 'D MMM YYYY',\n LLL: 'D MMMM [de] YYYY [a les] H:mm',\n lll: 'D MMM YYYY, H:mm',\n LLLL: 'dddd D MMMM [de] YYYY [a les] H:mm',\n llll: 'ddd D MMM YYYY, H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[avui a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n nextDay: function () {\n return '[demà a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n lastDay: function () {\n return '[ahir a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [passat a ' +\n (this.hours() !== 1 ? 'les' : 'la') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: \"d'aquí %s\",\n past: 'fa %s',\n s: 'uns segons',\n ss: '%d segons',\n m: 'un minut',\n mm: '%d minuts',\n h: 'una hora',\n hh: '%d hores',\n d: 'un dia',\n dd: '%d dies',\n M: 'un mes',\n MM: '%d mesos',\n y: 'un any',\n yy: '%d anys',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(r|n|t|è|a)/,\n ordinal: function (number, period) {\n var output =\n number === 1\n ? 'r'\n : number === 2\n ? 'n'\n : number === 3\n ? 'r'\n : number === 4\n ? 't'\n : 'è';\n if (period === 'w' || period === 'W') {\n output = 'a';\n }\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ca;\n\n})));\n","//! moment.js locale configuration\n//! locale : Czech [cs]\n//! author : petrbela : https://github.com/petrbela\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = {\n format: 'leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec'.split(\n '_'\n ),\n standalone:\n 'ledna_února_března_dubna_května_června_července_srpna_září_října_listopadu_prosince'.split(\n '_'\n ),\n },\n monthsShort = 'led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro'.split('_'),\n monthsParse = [\n /^led/i,\n /^úno/i,\n /^bře/i,\n /^dub/i,\n /^kvě/i,\n /^(čvn|červen$|června)/i,\n /^(čvc|červenec|července)/i,\n /^srp/i,\n /^zář/i,\n /^říj/i,\n /^lis/i,\n /^pro/i,\n ],\n // NOTE: 'červen' is substring of 'červenec'; therefore 'červenec' must precede 'červen' in the regex to be fully matched.\n // Otherwise parser matches '1. červenec' as '1. červen' + 'ec'.\n monthsRegex =\n /^(leden|únor|březen|duben|květen|červenec|července|červen|června|srpen|září|říjen|listopad|prosinec|led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i;\n\n function plural(n) {\n return n > 1 && n < 5 && ~~(n / 10) !== 1;\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's': // a few seconds / in a few seconds / a few seconds ago\n return withoutSuffix || isFuture ? 'pár sekund' : 'pár sekundami';\n case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'sekundy' : 'sekund');\n } else {\n return result + 'sekundami';\n }\n case 'm': // a minute / in a minute / a minute ago\n return withoutSuffix ? 'minuta' : isFuture ? 'minutu' : 'minutou';\n case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'minuty' : 'minut');\n } else {\n return result + 'minutami';\n }\n case 'h': // an hour / in an hour / an hour ago\n return withoutSuffix ? 'hodina' : isFuture ? 'hodinu' : 'hodinou';\n case 'hh': // 9 hours / in 9 hours / 9 hours ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'hodiny' : 'hodin');\n } else {\n return result + 'hodinami';\n }\n case 'd': // a day / in a day / a day ago\n return withoutSuffix || isFuture ? 'den' : 'dnem';\n case 'dd': // 9 days / in 9 days / 9 days ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'dny' : 'dní');\n } else {\n return result + 'dny';\n }\n case 'M': // a month / in a month / a month ago\n return withoutSuffix || isFuture ? 'měsíc' : 'měsícem';\n case 'MM': // 9 months / in 9 months / 9 months ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'měsíce' : 'měsíců');\n } else {\n return result + 'měsíci';\n }\n case 'y': // a year / in a year / a year ago\n return withoutSuffix || isFuture ? 'rok' : 'rokem';\n case 'yy': // 9 years / in 9 years / 9 years ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'roky' : 'let');\n } else {\n return result + 'lety';\n }\n }\n }\n\n var cs = moment.defineLocale('cs', {\n months: months,\n monthsShort: monthsShort,\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n // NOTE: 'červen' is substring of 'červenec'; therefore 'červenec' must precede 'červen' in the regex to be fully matched.\n // Otherwise parser matches '1. červenec' as '1. červen' + 'ec'.\n monthsStrictRegex:\n /^(leden|ledna|února|únor|březen|března|duben|dubna|květen|května|červenec|července|červen|června|srpen|srpna|září|říjen|října|listopadu|listopad|prosinec|prosince)/i,\n monthsShortStrictRegex:\n /^(led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota'.split('_'),\n weekdaysShort: 'ne_po_út_st_čt_pá_so'.split('_'),\n weekdaysMin: 'ne_po_út_st_čt_pá_so'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd D. MMMM YYYY H:mm',\n l: 'D. M. YYYY',\n },\n calendar: {\n sameDay: '[dnes v] LT',\n nextDay: '[zítra v] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[v neděli v] LT';\n case 1:\n case 2:\n return '[v] dddd [v] LT';\n case 3:\n return '[ve středu v] LT';\n case 4:\n return '[ve čtvrtek v] LT';\n case 5:\n return '[v pátek v] LT';\n case 6:\n return '[v sobotu v] LT';\n }\n },\n lastDay: '[včera v] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[minulou neděli v] LT';\n case 1:\n case 2:\n return '[minulé] dddd [v] LT';\n case 3:\n return '[minulou středu v] LT';\n case 4:\n case 5:\n return '[minulý] dddd [v] LT';\n case 6:\n return '[minulou sobotu v] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'před %s',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return cs;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chuvash [cv]\n//! author : Anatoly Mironov : https://github.com/mirontoli\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var cv = moment.defineLocale('cv', {\n months: 'кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав'.split(\n '_'\n ),\n monthsShort: 'кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш'.split('_'),\n weekdays:\n 'вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун'.split(\n '_'\n ),\n weekdaysShort: 'выр_тун_ытл_юн_кӗҫ_эрн_шӑм'.split('_'),\n weekdaysMin: 'вр_тн_ыт_юн_кҫ_эр_шм'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD-MM-YYYY',\n LL: 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]',\n LLL: 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm',\n LLLL: 'dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm',\n },\n calendar: {\n sameDay: '[Паян] LT [сехетре]',\n nextDay: '[Ыран] LT [сехетре]',\n lastDay: '[Ӗнер] LT [сехетре]',\n nextWeek: '[Ҫитес] dddd LT [сехетре]',\n lastWeek: '[Иртнӗ] dddd LT [сехетре]',\n sameElse: 'L',\n },\n relativeTime: {\n future: function (output) {\n var affix = /сехет$/i.exec(output)\n ? 'рен'\n : /ҫул$/i.exec(output)\n ? 'тан'\n : 'ран';\n return output + affix;\n },\n past: '%s каялла',\n s: 'пӗр-ик ҫеккунт',\n ss: '%d ҫеккунт',\n m: 'пӗр минут',\n mm: '%d минут',\n h: 'пӗр сехет',\n hh: '%d сехет',\n d: 'пӗр кун',\n dd: '%d кун',\n M: 'пӗр уйӑх',\n MM: '%d уйӑх',\n y: 'пӗр ҫул',\n yy: '%d ҫул',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-мӗш/,\n ordinal: '%d-мӗш',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return cv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Welsh [cy]\n//! author : Robert Allen : https://github.com/robgallen\n//! author : https://github.com/ryangreaves\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var cy = moment.defineLocale('cy', {\n months: 'Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr'.split(\n '_'\n ),\n monthsShort: 'Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag'.split(\n '_'\n ),\n weekdays:\n 'Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn'.split(\n '_'\n ),\n weekdaysShort: 'Sul_Llun_Maw_Mer_Iau_Gwe_Sad'.split('_'),\n weekdaysMin: 'Su_Ll_Ma_Me_Ia_Gw_Sa'.split('_'),\n weekdaysParseExact: true,\n // time formats are the same as en-gb\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Heddiw am] LT',\n nextDay: '[Yfory am] LT',\n nextWeek: 'dddd [am] LT',\n lastDay: '[Ddoe am] LT',\n lastWeek: 'dddd [diwethaf am] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'mewn %s',\n past: '%s yn ôl',\n s: 'ychydig eiliadau',\n ss: '%d eiliad',\n m: 'munud',\n mm: '%d munud',\n h: 'awr',\n hh: '%d awr',\n d: 'diwrnod',\n dd: '%d diwrnod',\n M: 'mis',\n MM: '%d mis',\n y: 'blwyddyn',\n yy: '%d flynedd',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,\n // traditional ordinal numbers above 31 are not commonly used in colloquial Welsh\n ordinal: function (number) {\n var b = number,\n output = '',\n lookup = [\n '',\n 'af',\n 'il',\n 'ydd',\n 'ydd',\n 'ed',\n 'ed',\n 'ed',\n 'fed',\n 'fed',\n 'fed', // 1af to 10fed\n 'eg',\n 'fed',\n 'eg',\n 'eg',\n 'fed',\n 'eg',\n 'eg',\n 'fed',\n 'eg',\n 'fed', // 11eg to 20fed\n ];\n if (b > 20) {\n if (b === 40 || b === 50 || b === 60 || b === 80 || b === 100) {\n output = 'fed'; // not 30ain, 70ain or 90ain\n } else {\n output = 'ain';\n }\n } else if (b > 0) {\n output = lookup[b];\n }\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return cy;\n\n})));\n","//! moment.js locale configuration\n//! locale : Danish [da]\n//! author : Ulrik Nielsen : https://github.com/mrbase\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var da = moment.defineLocale('da', {\n months: 'januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n weekdays: 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),\n weekdaysShort: 'søn_man_tir_ons_tor_fre_lør'.split('_'),\n weekdaysMin: 'sø_ma_ti_on_to_fr_lø'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd [d.] D. MMMM YYYY [kl.] HH:mm',\n },\n calendar: {\n sameDay: '[i dag kl.] LT',\n nextDay: '[i morgen kl.] LT',\n nextWeek: 'på dddd [kl.] LT',\n lastDay: '[i går kl.] LT',\n lastWeek: '[i] dddd[s kl.] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: '%s siden',\n s: 'få sekunder',\n ss: '%d sekunder',\n m: 'et minut',\n mm: '%d minutter',\n h: 'en time',\n hh: '%d timer',\n d: 'en dag',\n dd: '%d dage',\n M: 'en måned',\n MM: '%d måneder',\n y: 'et år',\n yy: '%d år',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return da;\n\n})));\n","//! moment.js locale configuration\n//! locale : German (Austria) [de-at]\n//! author : lluchs : https://github.com/lluchs\n//! author: Menelion Elensúle: https://github.com/Oire\n//! author : Martin Groller : https://github.com/MadMG\n//! author : Mikolaj Dadela : https://github.com/mik01aj\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eine Minute', 'einer Minute'],\n h: ['eine Stunde', 'einer Stunde'],\n d: ['ein Tag', 'einem Tag'],\n dd: [number + ' Tage', number + ' Tagen'],\n w: ['eine Woche', 'einer Woche'],\n M: ['ein Monat', 'einem Monat'],\n MM: [number + ' Monate', number + ' Monaten'],\n y: ['ein Jahr', 'einem Jahr'],\n yy: [number + ' Jahre', number + ' Jahren'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var deAt = moment.defineLocale('de-at', {\n months: 'Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort:\n 'Jän._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),\n monthsParseExact: true,\n weekdays:\n 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split(\n '_'\n ),\n weekdaysShort: 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),\n weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd, D. MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]',\n },\n relativeTime: {\n future: 'in %s',\n past: 'vor %s',\n s: 'ein paar Sekunden',\n ss: '%d Sekunden',\n m: processRelativeTime,\n mm: '%d Minuten',\n h: processRelativeTime,\n hh: '%d Stunden',\n d: processRelativeTime,\n dd: processRelativeTime,\n w: processRelativeTime,\n ww: '%d Wochen',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return deAt;\n\n})));\n","//! moment.js locale configuration\n//! locale : German (Switzerland) [de-ch]\n//! author : sschueller : https://github.com/sschueller\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eine Minute', 'einer Minute'],\n h: ['eine Stunde', 'einer Stunde'],\n d: ['ein Tag', 'einem Tag'],\n dd: [number + ' Tage', number + ' Tagen'],\n w: ['eine Woche', 'einer Woche'],\n M: ['ein Monat', 'einem Monat'],\n MM: [number + ' Monate', number + ' Monaten'],\n y: ['ein Jahr', 'einem Jahr'],\n yy: [number + ' Jahre', number + ' Jahren'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var deCh = moment.defineLocale('de-ch', {\n months: 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort:\n 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),\n monthsParseExact: true,\n weekdays:\n 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split(\n '_'\n ),\n weekdaysShort: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd, D. MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]',\n },\n relativeTime: {\n future: 'in %s',\n past: 'vor %s',\n s: 'ein paar Sekunden',\n ss: '%d Sekunden',\n m: processRelativeTime,\n mm: '%d Minuten',\n h: processRelativeTime,\n hh: '%d Stunden',\n d: processRelativeTime,\n dd: processRelativeTime,\n w: processRelativeTime,\n ww: '%d Wochen',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return deCh;\n\n})));\n","//! moment.js locale configuration\n//! locale : German [de]\n//! author : lluchs : https://github.com/lluchs\n//! author: Menelion Elensúle: https://github.com/Oire\n//! author : Mikolaj Dadela : https://github.com/mik01aj\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eine Minute', 'einer Minute'],\n h: ['eine Stunde', 'einer Stunde'],\n d: ['ein Tag', 'einem Tag'],\n dd: [number + ' Tage', number + ' Tagen'],\n w: ['eine Woche', 'einer Woche'],\n M: ['ein Monat', 'einem Monat'],\n MM: [number + ' Monate', number + ' Monaten'],\n y: ['ein Jahr', 'einem Jahr'],\n yy: [number + ' Jahre', number + ' Jahren'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var de = moment.defineLocale('de', {\n months: 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort:\n 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),\n monthsParseExact: true,\n weekdays:\n 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split(\n '_'\n ),\n weekdaysShort: 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),\n weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd, D. MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]',\n },\n relativeTime: {\n future: 'in %s',\n past: 'vor %s',\n s: 'ein paar Sekunden',\n ss: '%d Sekunden',\n m: processRelativeTime,\n mm: '%d Minuten',\n h: processRelativeTime,\n hh: '%d Stunden',\n d: processRelativeTime,\n dd: processRelativeTime,\n w: processRelativeTime,\n ww: '%d Wochen',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return de;\n\n})));\n","//! moment.js locale configuration\n//! locale : Maldivian [dv]\n//! author : Jawish Hameed : https://github.com/jawish\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'ޖެނުއަރީ',\n 'ފެބްރުއަރީ',\n 'މާރިޗު',\n 'އޭޕްރީލު',\n 'މޭ',\n 'ޖޫން',\n 'ޖުލައި',\n 'އޯގަސްޓު',\n 'ސެޕްޓެމްބަރު',\n 'އޮކްޓޯބަރު',\n 'ނޮވެމްބަރު',\n 'ޑިސެމްބަރު',\n ],\n weekdays = [\n 'އާދިއްތަ',\n 'ހޯމަ',\n 'އަންގާރަ',\n 'ބުދަ',\n 'ބުރާސްފަތި',\n 'ހުކުރު',\n 'ހޮނިހިރު',\n ];\n\n var dv = moment.defineLocale('dv', {\n months: months,\n monthsShort: months,\n weekdays: weekdays,\n weekdaysShort: weekdays,\n weekdaysMin: 'އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/M/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /މކ|މފ/,\n isPM: function (input) {\n return 'މފ' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'މކ';\n } else {\n return 'މފ';\n }\n },\n calendar: {\n sameDay: '[މިއަދު] LT',\n nextDay: '[މާދަމާ] LT',\n nextWeek: 'dddd LT',\n lastDay: '[އިއްޔެ] LT',\n lastWeek: '[ފާއިތުވި] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ތެރޭގައި %s',\n past: 'ކުރިން %s',\n s: 'ސިކުންތުކޮޅެއް',\n ss: 'd% ސިކުންތު',\n m: 'މިނިޓެއް',\n mm: 'މިނިޓު %d',\n h: 'ގަޑިއިރެއް',\n hh: 'ގަޑިއިރު %d',\n d: 'ދުވަހެއް',\n dd: 'ދުވަސް %d',\n M: 'މަހެއް',\n MM: 'މަސް %d',\n y: 'އަހަރެއް',\n yy: 'އަހަރު %d',\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n dow: 7, // Sunday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return dv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Greek [el]\n//! author : Aggelos Karalias : https://github.com/mehiel\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function isFunction(input) {\n return (\n (typeof Function !== 'undefined' && input instanceof Function) ||\n Object.prototype.toString.call(input) === '[object Function]'\n );\n }\n\n var el = moment.defineLocale('el', {\n monthsNominativeEl:\n 'Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος'.split(\n '_'\n ),\n monthsGenitiveEl:\n 'Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου'.split(\n '_'\n ),\n months: function (momentToFormat, format) {\n if (!momentToFormat) {\n return this._monthsNominativeEl;\n } else if (\n typeof format === 'string' &&\n /D/.test(format.substring(0, format.indexOf('MMMM')))\n ) {\n // if there is a day number before 'MMMM'\n return this._monthsGenitiveEl[momentToFormat.month()];\n } else {\n return this._monthsNominativeEl[momentToFormat.month()];\n }\n },\n monthsShort: 'Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ'.split('_'),\n weekdays: 'Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο'.split(\n '_'\n ),\n weekdaysShort: 'Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ'.split('_'),\n weekdaysMin: 'Κυ_Δε_Τρ_Τε_Πε_Πα_Σα'.split('_'),\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'μμ' : 'ΜΜ';\n } else {\n return isLower ? 'πμ' : 'ΠΜ';\n }\n },\n isPM: function (input) {\n return (input + '').toLowerCase()[0] === 'μ';\n },\n meridiemParse: /[ΠΜ]\\.?Μ?\\.?/i,\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendarEl: {\n sameDay: '[Σήμερα {}] LT',\n nextDay: '[Αύριο {}] LT',\n nextWeek: 'dddd [{}] LT',\n lastDay: '[Χθες {}] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 6:\n return '[το προηγούμενο] dddd [{}] LT';\n default:\n return '[την προηγούμενη] dddd [{}] LT';\n }\n },\n sameElse: 'L',\n },\n calendar: function (key, mom) {\n var output = this._calendarEl[key],\n hours = mom && mom.hours();\n if (isFunction(output)) {\n output = output.apply(mom);\n }\n return output.replace('{}', hours % 12 === 1 ? 'στη' : 'στις');\n },\n relativeTime: {\n future: 'σε %s',\n past: '%s πριν',\n s: 'λίγα δευτερόλεπτα',\n ss: '%d δευτερόλεπτα',\n m: 'ένα λεπτό',\n mm: '%d λεπτά',\n h: 'μία ώρα',\n hh: '%d ώρες',\n d: 'μία μέρα',\n dd: '%d μέρες',\n M: 'ένας μήνας',\n MM: '%d μήνες',\n y: 'ένας χρόνος',\n yy: '%d χρόνια',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}η/,\n ordinal: '%dη',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4st is the first week of the year.\n },\n });\n\n return el;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Australia) [en-au]\n//! author : Jared Morse : https://github.com/jarcoal\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enAu = moment.defineLocale('en-au', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enAu;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Canada) [en-ca]\n//! author : Jonathan Abourbih : https://github.com/jonbca\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enCa = moment.defineLocale('en-ca', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'YYYY-MM-DD',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY h:mm A',\n LLLL: 'dddd, MMMM D, YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n });\n\n return enCa;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (United Kingdom) [en-gb]\n//! author : Chris Gedrim : https://github.com/chrisgedrim\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enGb = moment.defineLocale('en-gb', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enGb;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Ireland) [en-ie]\n//! author : Chris Cartlidge : https://github.com/chriscartlidge\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enIe = moment.defineLocale('en-ie', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enIe;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Israel) [en-il]\n//! author : Chris Gedrim : https://github.com/chrisgedrim\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enIl = moment.defineLocale('en-il', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n });\n\n return enIl;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (India) [en-in]\n//! author : Jatin Agrawal : https://github.com/jatinag22\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enIn = moment.defineLocale('en-in', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 1st is the first week of the year.\n },\n });\n\n return enIn;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (New Zealand) [en-nz]\n//! author : Luke McGregor : https://github.com/lukemcgregor\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enNz = moment.defineLocale('en-nz', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enNz;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Singapore) [en-sg]\n//! author : Matthew Castrillon-Madrigal : https://github.com/techdimension\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enSg = moment.defineLocale('en-sg', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enSg;\n\n})));\n","//! moment.js locale configuration\n//! locale : Esperanto [eo]\n//! author : Colin Dean : https://github.com/colindean\n//! author : Mia Nordentoft Imperatori : https://github.com/miestasmia\n//! comment : miestasmia corrected the translation by colindean\n//! comment : Vivakvo corrected the translation by colindean and miestasmia\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var eo = moment.defineLocale('eo', {\n months: 'januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mart_apr_maj_jun_jul_aŭg_sept_okt_nov_dec'.split('_'),\n weekdays: 'dimanĉo_lundo_mardo_merkredo_ĵaŭdo_vendredo_sabato'.split('_'),\n weekdaysShort: 'dim_lun_mard_merk_ĵaŭ_ven_sab'.split('_'),\n weekdaysMin: 'di_lu_ma_me_ĵa_ve_sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: '[la] D[-an de] MMMM, YYYY',\n LLL: '[la] D[-an de] MMMM, YYYY HH:mm',\n LLLL: 'dddd[n], [la] D[-an de] MMMM, YYYY HH:mm',\n llll: 'ddd, [la] D[-an de] MMM, YYYY HH:mm',\n },\n meridiemParse: /[ap]\\.t\\.m/i,\n isPM: function (input) {\n return input.charAt(0).toLowerCase() === 'p';\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'p.t.m.' : 'P.T.M.';\n } else {\n return isLower ? 'a.t.m.' : 'A.T.M.';\n }\n },\n calendar: {\n sameDay: '[Hodiaŭ je] LT',\n nextDay: '[Morgaŭ je] LT',\n nextWeek: 'dddd[n je] LT',\n lastDay: '[Hieraŭ je] LT',\n lastWeek: '[pasintan] dddd[n je] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'post %s',\n past: 'antaŭ %s',\n s: 'kelkaj sekundoj',\n ss: '%d sekundoj',\n m: 'unu minuto',\n mm: '%d minutoj',\n h: 'unu horo',\n hh: '%d horoj',\n d: 'unu tago', //ne 'diurno', ĉar estas uzita por proksimumo\n dd: '%d tagoj',\n M: 'unu monato',\n MM: '%d monatoj',\n y: 'unu jaro',\n yy: '%d jaroj',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}a/,\n ordinal: '%da',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return eo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Spanish (Dominican Republic) [es-do]\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortDot =\n 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex =\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\n var esDo = moment.defineLocale('es-do', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex:\n /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY h:mm A',\n LLLL: 'dddd, D [de] MMMM [de] YYYY h:mm A',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return esDo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Spanish (Mexico) [es-mx]\n//! author : JC Franco : https://github.com/jcfranco\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortDot =\n 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex =\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\n var esMx = moment.defineLocale('es-mx', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex:\n /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY H:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n invalidDate: 'Fecha inválida',\n });\n\n return esMx;\n\n})));\n","//! moment.js locale configuration\n//! locale : Spanish (United States) [es-us]\n//! author : bustta : https://github.com/bustta\n//! author : chrisrodz : https://github.com/chrisrodz\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortDot =\n 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex =\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\n var esUs = moment.defineLocale('es-us', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex:\n /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'MM/DD/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY h:mm A',\n LLLL: 'dddd, D [de] MMMM [de] YYYY h:mm A',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return esUs;\n\n})));\n","//! moment.js locale configuration\n//! locale : Spanish [es]\n//! author : Julio Napurí : https://github.com/julionc\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortDot =\n 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex =\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\n var es = moment.defineLocale('es', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex:\n /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY H:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n invalidDate: 'Fecha inválida',\n });\n\n return es;\n\n})));\n","//! moment.js locale configuration\n//! locale : Estonian [et]\n//! author : Henry Kehlmann : https://github.com/madhenry\n//! improvements : Illimar Tambek : https://github.com/ragulka\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['mõne sekundi', 'mõni sekund', 'paar sekundit'],\n ss: [number + 'sekundi', number + 'sekundit'],\n m: ['ühe minuti', 'üks minut'],\n mm: [number + ' minuti', number + ' minutit'],\n h: ['ühe tunni', 'tund aega', 'üks tund'],\n hh: [number + ' tunni', number + ' tundi'],\n d: ['ühe päeva', 'üks päev'],\n M: ['kuu aja', 'kuu aega', 'üks kuu'],\n MM: [number + ' kuu', number + ' kuud'],\n y: ['ühe aasta', 'aasta', 'üks aasta'],\n yy: [number + ' aasta', number + ' aastat'],\n };\n if (withoutSuffix) {\n return format[key][2] ? format[key][2] : format[key][1];\n }\n return isFuture ? format[key][0] : format[key][1];\n }\n\n var et = moment.defineLocale('et', {\n months: 'jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember'.split(\n '_'\n ),\n monthsShort:\n 'jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets'.split('_'),\n weekdays:\n 'pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev'.split(\n '_'\n ),\n weekdaysShort: 'P_E_T_K_N_R_L'.split('_'),\n weekdaysMin: 'P_E_T_K_N_R_L'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[Täna,] LT',\n nextDay: '[Homme,] LT',\n nextWeek: '[Järgmine] dddd LT',\n lastDay: '[Eile,] LT',\n lastWeek: '[Eelmine] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s pärast',\n past: '%s tagasi',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: '%d päeva',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return et;\n\n})));\n","//! moment.js locale configuration\n//! locale : Basque [eu]\n//! author : Eneko Illarramendi : https://github.com/eillarra\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var eu = moment.defineLocale('eu', {\n months: 'urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua'.split(\n '_'\n ),\n monthsShort:\n 'urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata'.split(\n '_'\n ),\n weekdaysShort: 'ig._al._ar._az._og._ol._lr.'.split('_'),\n weekdaysMin: 'ig_al_ar_az_og_ol_lr'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY[ko] MMMM[ren] D[a]',\n LLL: 'YYYY[ko] MMMM[ren] D[a] HH:mm',\n LLLL: 'dddd, YYYY[ko] MMMM[ren] D[a] HH:mm',\n l: 'YYYY-M-D',\n ll: 'YYYY[ko] MMM D[a]',\n lll: 'YYYY[ko] MMM D[a] HH:mm',\n llll: 'ddd, YYYY[ko] MMM D[a] HH:mm',\n },\n calendar: {\n sameDay: '[gaur] LT[etan]',\n nextDay: '[bihar] LT[etan]',\n nextWeek: 'dddd LT[etan]',\n lastDay: '[atzo] LT[etan]',\n lastWeek: '[aurreko] dddd LT[etan]',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s barru',\n past: 'duela %s',\n s: 'segundo batzuk',\n ss: '%d segundo',\n m: 'minutu bat',\n mm: '%d minutu',\n h: 'ordu bat',\n hh: '%d ordu',\n d: 'egun bat',\n dd: '%d egun',\n M: 'hilabete bat',\n MM: '%d hilabete',\n y: 'urte bat',\n yy: '%d urte',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return eu;\n\n})));\n","//! moment.js locale configuration\n//! locale : Persian [fa]\n//! author : Ebrahim Byagowi : https://github.com/ebraminio\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '۱',\n 2: '۲',\n 3: '۳',\n 4: '۴',\n 5: '۵',\n 6: '۶',\n 7: '۷',\n 8: '۸',\n 9: '۹',\n 0: '۰',\n },\n numberMap = {\n '۱': '1',\n '۲': '2',\n '۳': '3',\n '۴': '4',\n '۵': '5',\n '۶': '6',\n '۷': '7',\n '۸': '8',\n '۹': '9',\n '۰': '0',\n };\n\n var fa = moment.defineLocale('fa', {\n months: 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split(\n '_'\n ),\n monthsShort:\n 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split(\n '_'\n ),\n weekdays:\n 'یک\\u200cشنبه_دوشنبه_سه\\u200cشنبه_چهارشنبه_پنج\\u200cشنبه_جمعه_شنبه'.split(\n '_'\n ),\n weekdaysShort:\n 'یک\\u200cشنبه_دوشنبه_سه\\u200cشنبه_چهارشنبه_پنج\\u200cشنبه_جمعه_شنبه'.split(\n '_'\n ),\n weekdaysMin: 'ی_د_س_چ_پ_ج_ش'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n meridiemParse: /قبل از ظهر|بعد از ظهر/,\n isPM: function (input) {\n return /بعد از ظهر/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'قبل از ظهر';\n } else {\n return 'بعد از ظهر';\n }\n },\n calendar: {\n sameDay: '[امروز ساعت] LT',\n nextDay: '[فردا ساعت] LT',\n nextWeek: 'dddd [ساعت] LT',\n lastDay: '[دیروز ساعت] LT',\n lastWeek: 'dddd [پیش] [ساعت] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'در %s',\n past: '%s پیش',\n s: 'چند ثانیه',\n ss: '%d ثانیه',\n m: 'یک دقیقه',\n mm: '%d دقیقه',\n h: 'یک ساعت',\n hh: '%d ساعت',\n d: 'یک روز',\n dd: '%d روز',\n M: 'یک ماه',\n MM: '%d ماه',\n y: 'یک سال',\n yy: '%d سال',\n },\n preparse: function (string) {\n return string\n .replace(/[۰-۹]/g, function (match) {\n return numberMap[match];\n })\n .replace(/،/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, '،');\n },\n dayOfMonthOrdinalParse: /\\d{1,2}م/,\n ordinal: '%dم',\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return fa;\n\n})));\n","//! moment.js locale configuration\n//! locale : Finnish [fi]\n//! author : Tarmo Aidantausta : https://github.com/bleadof\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var numbersPast =\n 'nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän'.split(\n ' '\n ),\n numbersFuture = [\n 'nolla',\n 'yhden',\n 'kahden',\n 'kolmen',\n 'neljän',\n 'viiden',\n 'kuuden',\n numbersPast[7],\n numbersPast[8],\n numbersPast[9],\n ];\n function translate(number, withoutSuffix, key, isFuture) {\n var result = '';\n switch (key) {\n case 's':\n return isFuture ? 'muutaman sekunnin' : 'muutama sekunti';\n case 'ss':\n result = isFuture ? 'sekunnin' : 'sekuntia';\n break;\n case 'm':\n return isFuture ? 'minuutin' : 'minuutti';\n case 'mm':\n result = isFuture ? 'minuutin' : 'minuuttia';\n break;\n case 'h':\n return isFuture ? 'tunnin' : 'tunti';\n case 'hh':\n result = isFuture ? 'tunnin' : 'tuntia';\n break;\n case 'd':\n return isFuture ? 'päivän' : 'päivä';\n case 'dd':\n result = isFuture ? 'päivän' : 'päivää';\n break;\n case 'M':\n return isFuture ? 'kuukauden' : 'kuukausi';\n case 'MM':\n result = isFuture ? 'kuukauden' : 'kuukautta';\n break;\n case 'y':\n return isFuture ? 'vuoden' : 'vuosi';\n case 'yy':\n result = isFuture ? 'vuoden' : 'vuotta';\n break;\n }\n result = verbalNumber(number, isFuture) + ' ' + result;\n return result;\n }\n function verbalNumber(number, isFuture) {\n return number < 10\n ? isFuture\n ? numbersFuture[number]\n : numbersPast[number]\n : number;\n }\n\n var fi = moment.defineLocale('fi', {\n months: 'tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu'.split(\n '_'\n ),\n monthsShort:\n 'tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu'.split(\n '_'\n ),\n weekdays:\n 'sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai'.split(\n '_'\n ),\n weekdaysShort: 'su_ma_ti_ke_to_pe_la'.split('_'),\n weekdaysMin: 'su_ma_ti_ke_to_pe_la'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD.MM.YYYY',\n LL: 'Do MMMM[ta] YYYY',\n LLL: 'Do MMMM[ta] YYYY, [klo] HH.mm',\n LLLL: 'dddd, Do MMMM[ta] YYYY, [klo] HH.mm',\n l: 'D.M.YYYY',\n ll: 'Do MMM YYYY',\n lll: 'Do MMM YYYY, [klo] HH.mm',\n llll: 'ddd, Do MMM YYYY, [klo] HH.mm',\n },\n calendar: {\n sameDay: '[tänään] [klo] LT',\n nextDay: '[huomenna] [klo] LT',\n nextWeek: 'dddd [klo] LT',\n lastDay: '[eilen] [klo] LT',\n lastWeek: '[viime] dddd[na] [klo] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s päästä',\n past: '%s sitten',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fi;\n\n})));\n","//! moment.js locale configuration\n//! locale : Filipino [fil]\n//! author : Dan Hagman : https://github.com/hagmandan\n//! author : Matthew Co : https://github.com/matthewdeeco\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var fil = moment.defineLocale('fil', {\n months: 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split(\n '_'\n ),\n monthsShort: 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'),\n weekdays: 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split(\n '_'\n ),\n weekdaysShort: 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'),\n weekdaysMin: 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'MM/D/YYYY',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY HH:mm',\n LLLL: 'dddd, MMMM DD, YYYY HH:mm',\n },\n calendar: {\n sameDay: 'LT [ngayong araw]',\n nextDay: '[Bukas ng] LT',\n nextWeek: 'LT [sa susunod na] dddd',\n lastDay: 'LT [kahapon]',\n lastWeek: 'LT [noong nakaraang] dddd',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'sa loob ng %s',\n past: '%s ang nakalipas',\n s: 'ilang segundo',\n ss: '%d segundo',\n m: 'isang minuto',\n mm: '%d minuto',\n h: 'isang oras',\n hh: '%d oras',\n d: 'isang araw',\n dd: '%d araw',\n M: 'isang buwan',\n MM: '%d buwan',\n y: 'isang taon',\n yy: '%d taon',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal: function (number) {\n return number;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fil;\n\n})));\n","//! moment.js locale configuration\n//! locale : Faroese [fo]\n//! author : Ragnar Johannesen : https://github.com/ragnar123\n//! author : Kristian Sakarisson : https://github.com/sakarisson\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var fo = moment.defineLocale('fo', {\n months: 'januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),\n weekdays:\n 'sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur'.split(\n '_'\n ),\n weekdaysShort: 'sun_mán_týs_mik_hós_frí_ley'.split('_'),\n weekdaysMin: 'su_má_tý_mi_hó_fr_le'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D. MMMM, YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Í dag kl.] LT',\n nextDay: '[Í morgin kl.] LT',\n nextWeek: 'dddd [kl.] LT',\n lastDay: '[Í gjár kl.] LT',\n lastWeek: '[síðstu] dddd [kl] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'um %s',\n past: '%s síðani',\n s: 'fá sekund',\n ss: '%d sekundir',\n m: 'ein minuttur',\n mm: '%d minuttir',\n h: 'ein tími',\n hh: '%d tímar',\n d: 'ein dagur',\n dd: '%d dagar',\n M: 'ein mánaður',\n MM: '%d mánaðir',\n y: 'eitt ár',\n yy: '%d ár',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fo;\n\n})));\n","//! moment.js locale configuration\n//! locale : French (Canada) [fr-ca]\n//! author : Jonathan Abourbih : https://github.com/jonbca\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var frCa = moment.defineLocale('fr-ca', {\n months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split(\n '_'\n ),\n monthsShort:\n 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Aujourd’hui à] LT',\n nextDay: '[Demain à] LT',\n nextWeek: 'dddd [à] LT',\n lastDay: '[Hier à] LT',\n lastWeek: 'dddd [dernier à] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dans %s',\n past: 'il y a %s',\n s: 'quelques secondes',\n ss: '%d secondes',\n m: 'une minute',\n mm: '%d minutes',\n h: 'une heure',\n hh: '%d heures',\n d: 'un jour',\n dd: '%d jours',\n M: 'un mois',\n MM: '%d mois',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|e)/,\n ordinal: function (number, period) {\n switch (period) {\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'D':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n });\n\n return frCa;\n\n})));\n","//! moment.js locale configuration\n//! locale : French (Switzerland) [fr-ch]\n//! author : Gaspard Bucher : https://github.com/gaspard\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var frCh = moment.defineLocale('fr-ch', {\n months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split(\n '_'\n ),\n monthsShort:\n 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Aujourd’hui à] LT',\n nextDay: '[Demain à] LT',\n nextWeek: 'dddd [à] LT',\n lastDay: '[Hier à] LT',\n lastWeek: 'dddd [dernier à] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dans %s',\n past: 'il y a %s',\n s: 'quelques secondes',\n ss: '%d secondes',\n m: 'une minute',\n mm: '%d minutes',\n h: 'une heure',\n hh: '%d heures',\n d: 'un jour',\n dd: '%d jours',\n M: 'un mois',\n MM: '%d mois',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|e)/,\n ordinal: function (number, period) {\n switch (period) {\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'D':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return frCh;\n\n})));\n","//! moment.js locale configuration\n//! locale : French [fr]\n//! author : John Fischer : https://github.com/jfroffice\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsStrictRegex =\n /^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,\n monthsShortStrictRegex =\n /(janv\\.?|févr\\.?|mars|avr\\.?|mai|juin|juil\\.?|août|sept\\.?|oct\\.?|nov\\.?|déc\\.?)/i,\n monthsRegex =\n /(janv\\.?|févr\\.?|mars|avr\\.?|mai|juin|juil\\.?|août|sept\\.?|oct\\.?|nov\\.?|déc\\.?|janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,\n monthsParse = [\n /^janv/i,\n /^févr/i,\n /^mars/i,\n /^avr/i,\n /^mai/i,\n /^juin/i,\n /^juil/i,\n /^août/i,\n /^sept/i,\n /^oct/i,\n /^nov/i,\n /^déc/i,\n ];\n\n var fr = moment.defineLocale('fr', {\n months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split(\n '_'\n ),\n monthsShort:\n 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split(\n '_'\n ),\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: monthsStrictRegex,\n monthsShortStrictRegex: monthsShortStrictRegex,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Aujourd’hui à] LT',\n nextDay: '[Demain à] LT',\n nextWeek: 'dddd [à] LT',\n lastDay: '[Hier à] LT',\n lastWeek: 'dddd [dernier à] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dans %s',\n past: 'il y a %s',\n s: 'quelques secondes',\n ss: '%d secondes',\n m: 'une minute',\n mm: '%d minutes',\n h: 'une heure',\n hh: '%d heures',\n d: 'un jour',\n dd: '%d jours',\n w: 'une semaine',\n ww: '%d semaines',\n M: 'un mois',\n MM: '%d mois',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|)/,\n ordinal: function (number, period) {\n switch (period) {\n // TODO: Return 'e' when day of month > 1. Move this case inside\n // block for masculine words below.\n // See https://github.com/moment/moment/issues/3375\n case 'D':\n return number + (number === 1 ? 'er' : '');\n\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Frisian [fy]\n//! author : Robin van der Vliet : https://github.com/robin0van0der0v\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortWithDots =\n 'jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.'.split('_'),\n monthsShortWithoutDots =\n 'jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_');\n\n var fy = moment.defineLocale('fy', {\n months: 'jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n monthsParseExact: true,\n weekdays: 'snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon'.split(\n '_'\n ),\n weekdaysShort: 'si._mo._ti._wo._to._fr._so.'.split('_'),\n weekdaysMin: 'Si_Mo_Ti_Wo_To_Fr_So'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[hjoed om] LT',\n nextDay: '[moarn om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[juster om] LT',\n lastWeek: '[ôfrûne] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'oer %s',\n past: '%s lyn',\n s: 'in pear sekonden',\n ss: '%d sekonden',\n m: 'ien minút',\n mm: '%d minuten',\n h: 'ien oere',\n hh: '%d oeren',\n d: 'ien dei',\n dd: '%d dagen',\n M: 'ien moanne',\n MM: '%d moannen',\n y: 'ien jier',\n yy: '%d jierren',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n );\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fy;\n\n})));\n","//! moment.js locale configuration\n//! locale : Irish or Irish Gaelic [ga]\n//! author : André Silva : https://github.com/askpt\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'Eanáir',\n 'Feabhra',\n 'Márta',\n 'Aibreán',\n 'Bealtaine',\n 'Meitheamh',\n 'Iúil',\n 'Lúnasa',\n 'Meán Fómhair',\n 'Deireadh Fómhair',\n 'Samhain',\n 'Nollaig',\n ],\n monthsShort = [\n 'Ean',\n 'Feabh',\n 'Márt',\n 'Aib',\n 'Beal',\n 'Meith',\n 'Iúil',\n 'Lún',\n 'M.F.',\n 'D.F.',\n 'Samh',\n 'Noll',\n ],\n weekdays = [\n 'Dé Domhnaigh',\n 'Dé Luain',\n 'Dé Máirt',\n 'Dé Céadaoin',\n 'Déardaoin',\n 'Dé hAoine',\n 'Dé Sathairn',\n ],\n weekdaysShort = ['Domh', 'Luan', 'Máirt', 'Céad', 'Déar', 'Aoine', 'Sath'],\n weekdaysMin = ['Do', 'Lu', 'Má', 'Cé', 'Dé', 'A', 'Sa'];\n\n var ga = moment.defineLocale('ga', {\n months: months,\n monthsShort: monthsShort,\n monthsParseExact: true,\n weekdays: weekdays,\n weekdaysShort: weekdaysShort,\n weekdaysMin: weekdaysMin,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Inniu ag] LT',\n nextDay: '[Amárach ag] LT',\n nextWeek: 'dddd [ag] LT',\n lastDay: '[Inné ag] LT',\n lastWeek: 'dddd [seo caite] [ag] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'i %s',\n past: '%s ó shin',\n s: 'cúpla soicind',\n ss: '%d soicind',\n m: 'nóiméad',\n mm: '%d nóiméad',\n h: 'uair an chloig',\n hh: '%d uair an chloig',\n d: 'lá',\n dd: '%d lá',\n M: 'mí',\n MM: '%d míonna',\n y: 'bliain',\n yy: '%d bliain',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(d|na|mh)/,\n ordinal: function (number) {\n var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ga;\n\n})));\n","//! moment.js locale configuration\n//! locale : Scottish Gaelic [gd]\n//! author : Jon Ashdown : https://github.com/jonashdown\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'Am Faoilleach',\n 'An Gearran',\n 'Am Màrt',\n 'An Giblean',\n 'An Cèitean',\n 'An t-Ògmhios',\n 'An t-Iuchar',\n 'An Lùnastal',\n 'An t-Sultain',\n 'An Dàmhair',\n 'An t-Samhain',\n 'An Dùbhlachd',\n ],\n monthsShort = [\n 'Faoi',\n 'Gear',\n 'Màrt',\n 'Gibl',\n 'Cèit',\n 'Ògmh',\n 'Iuch',\n 'Lùn',\n 'Sult',\n 'Dàmh',\n 'Samh',\n 'Dùbh',\n ],\n weekdays = [\n 'Didòmhnaich',\n 'Diluain',\n 'Dimàirt',\n 'Diciadain',\n 'Diardaoin',\n 'Dihaoine',\n 'Disathairne',\n ],\n weekdaysShort = ['Did', 'Dil', 'Dim', 'Dic', 'Dia', 'Dih', 'Dis'],\n weekdaysMin = ['Dò', 'Lu', 'Mà', 'Ci', 'Ar', 'Ha', 'Sa'];\n\n var gd = moment.defineLocale('gd', {\n months: months,\n monthsShort: monthsShort,\n monthsParseExact: true,\n weekdays: weekdays,\n weekdaysShort: weekdaysShort,\n weekdaysMin: weekdaysMin,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[An-diugh aig] LT',\n nextDay: '[A-màireach aig] LT',\n nextWeek: 'dddd [aig] LT',\n lastDay: '[An-dè aig] LT',\n lastWeek: 'dddd [seo chaidh] [aig] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ann an %s',\n past: 'bho chionn %s',\n s: 'beagan diogan',\n ss: '%d diogan',\n m: 'mionaid',\n mm: '%d mionaidean',\n h: 'uair',\n hh: '%d uairean',\n d: 'latha',\n dd: '%d latha',\n M: 'mìos',\n MM: '%d mìosan',\n y: 'bliadhna',\n yy: '%d bliadhna',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(d|na|mh)/,\n ordinal: function (number) {\n var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return gd;\n\n})));\n","//! moment.js locale configuration\n//! locale : Galician [gl]\n//! author : Juan G. Hurtado : https://github.com/juanghurtado\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var gl = moment.defineLocale('gl', {\n months: 'xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro'.split(\n '_'\n ),\n monthsShort:\n 'xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'domingo_luns_martes_mércores_xoves_venres_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mér._xov._ven._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mé_xo_ve_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY H:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[hoxe ' + (this.hours() !== 1 ? 'ás' : 'á') + '] LT';\n },\n nextDay: function () {\n return '[mañá ' + (this.hours() !== 1 ? 'ás' : 'á') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [' + (this.hours() !== 1 ? 'ás' : 'a') + '] LT';\n },\n lastDay: function () {\n return '[onte ' + (this.hours() !== 1 ? 'á' : 'a') + '] LT';\n },\n lastWeek: function () {\n return (\n '[o] dddd [pasado ' + (this.hours() !== 1 ? 'ás' : 'a') + '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: function (str) {\n if (str.indexOf('un') === 0) {\n return 'n' + str;\n }\n return 'en ' + str;\n },\n past: 'hai %s',\n s: 'uns segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'unha hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n M: 'un mes',\n MM: '%d meses',\n y: 'un ano',\n yy: '%d anos',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return gl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Konkani Devanagari script [gom-deva]\n//! author : The Discoverer : https://github.com/WikiDiscoverer\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['थोडया सॅकंडांनी', 'थोडे सॅकंड'],\n ss: [number + ' सॅकंडांनी', number + ' सॅकंड'],\n m: ['एका मिणटान', 'एक मिनूट'],\n mm: [number + ' मिणटांनी', number + ' मिणटां'],\n h: ['एका वरान', 'एक वर'],\n hh: [number + ' वरांनी', number + ' वरां'],\n d: ['एका दिसान', 'एक दीस'],\n dd: [number + ' दिसांनी', number + ' दीस'],\n M: ['एका म्हयन्यान', 'एक म्हयनो'],\n MM: [number + ' म्हयन्यानी', number + ' म्हयने'],\n y: ['एका वर्सान', 'एक वर्स'],\n yy: [number + ' वर्सांनी', number + ' वर्सां'],\n };\n return isFuture ? format[key][0] : format[key][1];\n }\n\n var gomDeva = moment.defineLocale('gom-deva', {\n months: {\n standalone:\n 'जानेवारी_फेब्रुवारी_मार्च_एप्रील_मे_जून_जुलय_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर'.split(\n '_'\n ),\n format: 'जानेवारीच्या_फेब्रुवारीच्या_मार्चाच्या_एप्रीलाच्या_मेयाच्या_जूनाच्या_जुलयाच्या_ऑगस्टाच्या_सप्टेंबराच्या_ऑक्टोबराच्या_नोव्हेंबराच्या_डिसेंबराच्या'.split(\n '_'\n ),\n isFormat: /MMMM(\\s)+D[oD]?/,\n },\n monthsShort:\n 'जाने._फेब्रु._मार्च_एप्री._मे_जून_जुल._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'आयतार_सोमार_मंगळार_बुधवार_बिरेस्तार_सुक्रार_शेनवार'.split('_'),\n weekdaysShort: 'आयत._सोम._मंगळ._बुध._ब्रेस्त._सुक्र._शेन.'.split('_'),\n weekdaysMin: 'आ_सो_मं_बु_ब्रे_सु_शे'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'A h:mm [वाजतां]',\n LTS: 'A h:mm:ss [वाजतां]',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY A h:mm [वाजतां]',\n LLLL: 'dddd, MMMM Do, YYYY, A h:mm [वाजतां]',\n llll: 'ddd, D MMM YYYY, A h:mm [वाजतां]',\n },\n calendar: {\n sameDay: '[आयज] LT',\n nextDay: '[फाल्यां] LT',\n nextWeek: '[फुडलो] dddd[,] LT',\n lastDay: '[काल] LT',\n lastWeek: '[फाटलो] dddd[,] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s',\n past: '%s आदीं',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(वेर)/,\n ordinal: function (number, period) {\n switch (period) {\n // the ordinal 'वेर' only applies to day of the month\n case 'D':\n return number + 'वेर';\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n case 'w':\n case 'W':\n return number;\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week\n doy: 3, // The week that contains Jan 4th is the first week of the year (7 + 0 - 4)\n },\n meridiemParse: /राती|सकाळीं|दनपारां|सांजे/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'राती') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'सकाळीं') {\n return hour;\n } else if (meridiem === 'दनपारां') {\n return hour > 12 ? hour : hour + 12;\n } else if (meridiem === 'सांजे') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'राती';\n } else if (hour < 12) {\n return 'सकाळीं';\n } else if (hour < 16) {\n return 'दनपारां';\n } else if (hour < 20) {\n return 'सांजे';\n } else {\n return 'राती';\n }\n },\n });\n\n return gomDeva;\n\n})));\n","//! moment.js locale configuration\n//! locale : Konkani Latin script [gom-latn]\n//! author : The Discoverer : https://github.com/WikiDiscoverer\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['thoddea sekondamni', 'thodde sekond'],\n ss: [number + ' sekondamni', number + ' sekond'],\n m: ['eka mintan', 'ek minut'],\n mm: [number + ' mintamni', number + ' mintam'],\n h: ['eka voran', 'ek vor'],\n hh: [number + ' voramni', number + ' voram'],\n d: ['eka disan', 'ek dis'],\n dd: [number + ' disamni', number + ' dis'],\n M: ['eka mhoinean', 'ek mhoino'],\n MM: [number + ' mhoineamni', number + ' mhoine'],\n y: ['eka vorsan', 'ek voros'],\n yy: [number + ' vorsamni', number + ' vorsam'],\n };\n return isFuture ? format[key][0] : format[key][1];\n }\n\n var gomLatn = moment.defineLocale('gom-latn', {\n months: {\n standalone:\n 'Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr'.split(\n '_'\n ),\n format: 'Janerachea_Febrerachea_Marsachea_Abrilachea_Maiachea_Junachea_Julaiachea_Agostachea_Setembrachea_Otubrachea_Novembrachea_Dezembrachea'.split(\n '_'\n ),\n isFormat: /MMMM(\\s)+D[oD]?/,\n },\n monthsShort:\n 'Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.'.split('_'),\n monthsParseExact: true,\n weekdays: \"Aitar_Somar_Mongllar_Budhvar_Birestar_Sukrar_Son'var\".split('_'),\n weekdaysShort: 'Ait._Som._Mon._Bud._Bre._Suk._Son.'.split('_'),\n weekdaysMin: 'Ai_Sm_Mo_Bu_Br_Su_Sn'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'A h:mm [vazta]',\n LTS: 'A h:mm:ss [vazta]',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY A h:mm [vazta]',\n LLLL: 'dddd, MMMM Do, YYYY, A h:mm [vazta]',\n llll: 'ddd, D MMM YYYY, A h:mm [vazta]',\n },\n calendar: {\n sameDay: '[Aiz] LT',\n nextDay: '[Faleam] LT',\n nextWeek: '[Fuddlo] dddd[,] LT',\n lastDay: '[Kal] LT',\n lastWeek: '[Fattlo] dddd[,] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s',\n past: '%s adim',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er)/,\n ordinal: function (number, period) {\n switch (period) {\n // the ordinal 'er' only applies to day of the month\n case 'D':\n return number + 'er';\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n case 'w':\n case 'W':\n return number;\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week\n doy: 3, // The week that contains Jan 4th is the first week of the year (7 + 0 - 4)\n },\n meridiemParse: /rati|sokallim|donparam|sanje/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'rati') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'sokallim') {\n return hour;\n } else if (meridiem === 'donparam') {\n return hour > 12 ? hour : hour + 12;\n } else if (meridiem === 'sanje') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'rati';\n } else if (hour < 12) {\n return 'sokallim';\n } else if (hour < 16) {\n return 'donparam';\n } else if (hour < 20) {\n return 'sanje';\n } else {\n return 'rati';\n }\n },\n });\n\n return gomLatn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Gujarati [gu]\n//! author : Kaushik Thanki : https://github.com/Kaushik1987\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '૧',\n 2: '૨',\n 3: '૩',\n 4: '૪',\n 5: '૫',\n 6: '૬',\n 7: '૭',\n 8: '૮',\n 9: '૯',\n 0: '૦',\n },\n numberMap = {\n '૧': '1',\n '૨': '2',\n '૩': '3',\n '૪': '4',\n '૫': '5',\n '૬': '6',\n '૭': '7',\n '૮': '8',\n '૯': '9',\n '૦': '0',\n };\n\n var gu = moment.defineLocale('gu', {\n months: 'જાન્યુઆરી_ફેબ્રુઆરી_માર્ચ_એપ્રિલ_મે_જૂન_જુલાઈ_ઑગસ્ટ_સપ્ટેમ્બર_ઑક્ટ્બર_નવેમ્બર_ડિસેમ્બર'.split(\n '_'\n ),\n monthsShort:\n 'જાન્યુ._ફેબ્રુ._માર્ચ_એપ્રિ._મે_જૂન_જુલા._ઑગ._સપ્ટે._ઑક્ટ્._નવે._ડિસે.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'રવિવાર_સોમવાર_મંગળવાર_બુધ્વાર_ગુરુવાર_શુક્રવાર_શનિવાર'.split(\n '_'\n ),\n weekdaysShort: 'રવિ_સોમ_મંગળ_બુધ્_ગુરુ_શુક્ર_શનિ'.split('_'),\n weekdaysMin: 'ર_સો_મં_બુ_ગુ_શુ_શ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm વાગ્યે',\n LTS: 'A h:mm:ss વાગ્યે',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm વાગ્યે',\n LLLL: 'dddd, D MMMM YYYY, A h:mm વાગ્યે',\n },\n calendar: {\n sameDay: '[આજ] LT',\n nextDay: '[કાલે] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[ગઇકાલે] LT',\n lastWeek: '[પાછલા] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s મા',\n past: '%s પહેલા',\n s: 'અમુક પળો',\n ss: '%d સેકંડ',\n m: 'એક મિનિટ',\n mm: '%d મિનિટ',\n h: 'એક કલાક',\n hh: '%d કલાક',\n d: 'એક દિવસ',\n dd: '%d દિવસ',\n M: 'એક મહિનો',\n MM: '%d મહિનો',\n y: 'એક વર્ષ',\n yy: '%d વર્ષ',\n },\n preparse: function (string) {\n return string.replace(/[૧૨૩૪૫૬૭૮૯૦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Gujarati notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Gujarati.\n meridiemParse: /રાત|બપોર|સવાર|સાંજ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'રાત') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'સવાર') {\n return hour;\n } else if (meridiem === 'બપોર') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'સાંજ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'રાત';\n } else if (hour < 10) {\n return 'સવાર';\n } else if (hour < 17) {\n return 'બપોર';\n } else if (hour < 20) {\n return 'સાંજ';\n } else {\n return 'રાત';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return gu;\n\n})));\n","//! moment.js locale configuration\n//! locale : Hebrew [he]\n//! author : Tomer Cohen : https://github.com/tomer\n//! author : Moshe Simantov : https://github.com/DevelopmentIL\n//! author : Tal Ater : https://github.com/TalAter\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var he = moment.defineLocale('he', {\n months: 'ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר'.split(\n '_'\n ),\n monthsShort:\n 'ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳'.split('_'),\n weekdays: 'ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת'.split('_'),\n weekdaysShort: 'א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳'.split('_'),\n weekdaysMin: 'א_ב_ג_ד_ה_ו_ש'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [ב]MMMM YYYY',\n LLL: 'D [ב]MMMM YYYY HH:mm',\n LLLL: 'dddd, D [ב]MMMM YYYY HH:mm',\n l: 'D/M/YYYY',\n ll: 'D MMM YYYY',\n lll: 'D MMM YYYY HH:mm',\n llll: 'ddd, D MMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[היום ב־]LT',\n nextDay: '[מחר ב־]LT',\n nextWeek: 'dddd [בשעה] LT',\n lastDay: '[אתמול ב־]LT',\n lastWeek: '[ביום] dddd [האחרון בשעה] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'בעוד %s',\n past: 'לפני %s',\n s: 'מספר שניות',\n ss: '%d שניות',\n m: 'דקה',\n mm: '%d דקות',\n h: 'שעה',\n hh: function (number) {\n if (number === 2) {\n return 'שעתיים';\n }\n return number + ' שעות';\n },\n d: 'יום',\n dd: function (number) {\n if (number === 2) {\n return 'יומיים';\n }\n return number + ' ימים';\n },\n M: 'חודש',\n MM: function (number) {\n if (number === 2) {\n return 'חודשיים';\n }\n return number + ' חודשים';\n },\n y: 'שנה',\n yy: function (number) {\n if (number === 2) {\n return 'שנתיים';\n } else if (number % 10 === 0 && number !== 10) {\n return number + ' שנה';\n }\n return number + ' שנים';\n },\n },\n meridiemParse:\n /אחה\"צ|לפנה\"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i,\n isPM: function (input) {\n return /^(אחה\"צ|אחרי הצהריים|בערב)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 5) {\n return 'לפנות בוקר';\n } else if (hour < 10) {\n return 'בבוקר';\n } else if (hour < 12) {\n return isLower ? 'לפנה\"צ' : 'לפני הצהריים';\n } else if (hour < 18) {\n return isLower ? 'אחה\"צ' : 'אחרי הצהריים';\n } else {\n return 'בערב';\n }\n },\n });\n\n return he;\n\n})));\n","//! moment.js locale configuration\n//! locale : Hindi [hi]\n//! author : Mayank Singhal : https://github.com/mayanksinghal\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '१',\n 2: '२',\n 3: '३',\n 4: '४',\n 5: '५',\n 6: '६',\n 7: '७',\n 8: '८',\n 9: '९',\n 0: '०',\n },\n numberMap = {\n '१': '1',\n '२': '2',\n '३': '3',\n '४': '4',\n '५': '5',\n '६': '6',\n '७': '7',\n '८': '8',\n '९': '9',\n '०': '0',\n },\n monthsParse = [\n /^जन/i,\n /^फ़र|फर/i,\n /^मार्च/i,\n /^अप्रै/i,\n /^मई/i,\n /^जून/i,\n /^जुल/i,\n /^अग/i,\n /^सितं|सित/i,\n /^अक्टू/i,\n /^नव|नवं/i,\n /^दिसं|दिस/i,\n ],\n shortMonthsParse = [\n /^जन/i,\n /^फ़र/i,\n /^मार्च/i,\n /^अप्रै/i,\n /^मई/i,\n /^जून/i,\n /^जुल/i,\n /^अग/i,\n /^सित/i,\n /^अक्टू/i,\n /^नव/i,\n /^दिस/i,\n ];\n\n var hi = moment.defineLocale('hi', {\n months: {\n format: 'जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर'.split(\n '_'\n ),\n standalone:\n 'जनवरी_फरवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितंबर_अक्टूबर_नवंबर_दिसंबर'.split(\n '_'\n ),\n },\n monthsShort:\n 'जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.'.split('_'),\n weekdays: 'रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'),\n weekdaysShort: 'रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि'.split('_'),\n weekdaysMin: 'र_सो_मं_बु_गु_शु_श'.split('_'),\n longDateFormat: {\n LT: 'A h:mm बजे',\n LTS: 'A h:mm:ss बजे',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm बजे',\n LLLL: 'dddd, D MMMM YYYY, A h:mm बजे',\n },\n\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: shortMonthsParse,\n\n monthsRegex:\n /^(जनवरी|जन\\.?|फ़रवरी|फरवरी|फ़र\\.?|मार्च?|अप्रैल|अप्रै\\.?|मई?|जून?|जुलाई|जुल\\.?|अगस्त|अग\\.?|सितम्बर|सितंबर|सित\\.?|अक्टूबर|अक्टू\\.?|नवम्बर|नवंबर|नव\\.?|दिसम्बर|दिसंबर|दिस\\.?)/i,\n\n monthsShortRegex:\n /^(जनवरी|जन\\.?|फ़रवरी|फरवरी|फ़र\\.?|मार्च?|अप्रैल|अप्रै\\.?|मई?|जून?|जुलाई|जुल\\.?|अगस्त|अग\\.?|सितम्बर|सितंबर|सित\\.?|अक्टूबर|अक्टू\\.?|नवम्बर|नवंबर|नव\\.?|दिसम्बर|दिसंबर|दिस\\.?)/i,\n\n monthsStrictRegex:\n /^(जनवरी?|फ़रवरी|फरवरी?|मार्च?|अप्रैल?|मई?|जून?|जुलाई?|अगस्त?|सितम्बर|सितंबर|सित?\\.?|अक्टूबर|अक्टू\\.?|नवम्बर|नवंबर?|दिसम्बर|दिसंबर?)/i,\n\n monthsShortStrictRegex:\n /^(जन\\.?|फ़र\\.?|मार्च?|अप्रै\\.?|मई?|जून?|जुल\\.?|अग\\.?|सित\\.?|अक्टू\\.?|नव\\.?|दिस\\.?)/i,\n\n calendar: {\n sameDay: '[आज] LT',\n nextDay: '[कल] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[कल] LT',\n lastWeek: '[पिछले] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s में',\n past: '%s पहले',\n s: 'कुछ ही क्षण',\n ss: '%d सेकंड',\n m: 'एक मिनट',\n mm: '%d मिनट',\n h: 'एक घंटा',\n hh: '%d घंटे',\n d: 'एक दिन',\n dd: '%d दिन',\n M: 'एक महीने',\n MM: '%d महीने',\n y: 'एक वर्ष',\n yy: '%d वर्ष',\n },\n preparse: function (string) {\n return string.replace(/[१२३४५६७८९०]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Hindi notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Hindi.\n meridiemParse: /रात|सुबह|दोपहर|शाम/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'रात') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'सुबह') {\n return hour;\n } else if (meridiem === 'दोपहर') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'शाम') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'रात';\n } else if (hour < 10) {\n return 'सुबह';\n } else if (hour < 17) {\n return 'दोपहर';\n } else if (hour < 20) {\n return 'शाम';\n } else {\n return 'रात';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return hi;\n\n})));\n","//! moment.js locale configuration\n//! locale : Croatian [hr]\n//! author : Bojan Marković : https://github.com/bmarkovic\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n if (number === 1) {\n result += 'sekunda';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sekunde';\n } else {\n result += 'sekundi';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'jedna minuta' : 'jedne minute';\n case 'mm':\n if (number === 1) {\n result += 'minuta';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'minute';\n } else {\n result += 'minuta';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'jedan sat' : 'jednog sata';\n case 'hh':\n if (number === 1) {\n result += 'sat';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sata';\n } else {\n result += 'sati';\n }\n return result;\n case 'dd':\n if (number === 1) {\n result += 'dan';\n } else {\n result += 'dana';\n }\n return result;\n case 'MM':\n if (number === 1) {\n result += 'mjesec';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'mjeseca';\n } else {\n result += 'mjeseci';\n }\n return result;\n case 'yy':\n if (number === 1) {\n result += 'godina';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'godine';\n } else {\n result += 'godina';\n }\n return result;\n }\n }\n\n var hr = moment.defineLocale('hr', {\n months: {\n format: 'siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca'.split(\n '_'\n ),\n standalone:\n 'siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac'.split(\n '_'\n ),\n },\n monthsShort:\n 'sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'Do MMMM YYYY',\n LLL: 'Do MMMM YYYY H:mm',\n LLLL: 'dddd, Do MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sutra u] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[jučer u] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[prošlu] [nedjelju] [u] LT';\n case 3:\n return '[prošlu] [srijedu] [u] LT';\n case 6:\n return '[prošle] [subote] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[prošli] dddd [u] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'prije %s',\n s: 'par sekundi',\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: 'dan',\n dd: translate,\n M: 'mjesec',\n MM: translate,\n y: 'godinu',\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return hr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Hungarian [hu]\n//! author : Adam Brunner : https://github.com/adambrunner\n//! author : Peter Viszt : https://github.com/passatgt\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var weekEndings =\n 'vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton'.split(' ');\n function translate(number, withoutSuffix, key, isFuture) {\n var num = number;\n switch (key) {\n case 's':\n return isFuture || withoutSuffix\n ? 'néhány másodperc'\n : 'néhány másodperce';\n case 'ss':\n return num + (isFuture || withoutSuffix)\n ? ' másodperc'\n : ' másodperce';\n case 'm':\n return 'egy' + (isFuture || withoutSuffix ? ' perc' : ' perce');\n case 'mm':\n return num + (isFuture || withoutSuffix ? ' perc' : ' perce');\n case 'h':\n return 'egy' + (isFuture || withoutSuffix ? ' óra' : ' órája');\n case 'hh':\n return num + (isFuture || withoutSuffix ? ' óra' : ' órája');\n case 'd':\n return 'egy' + (isFuture || withoutSuffix ? ' nap' : ' napja');\n case 'dd':\n return num + (isFuture || withoutSuffix ? ' nap' : ' napja');\n case 'M':\n return 'egy' + (isFuture || withoutSuffix ? ' hónap' : ' hónapja');\n case 'MM':\n return num + (isFuture || withoutSuffix ? ' hónap' : ' hónapja');\n case 'y':\n return 'egy' + (isFuture || withoutSuffix ? ' év' : ' éve');\n case 'yy':\n return num + (isFuture || withoutSuffix ? ' év' : ' éve');\n }\n return '';\n }\n function week(isFuture) {\n return (\n (isFuture ? '' : '[múlt] ') +\n '[' +\n weekEndings[this.day()] +\n '] LT[-kor]'\n );\n }\n\n var hu = moment.defineLocale('hu', {\n months: 'január_február_március_április_május_június_július_augusztus_szeptember_október_november_december'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._márc._ápr._máj._jún._júl._aug._szept._okt._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat'.split('_'),\n weekdaysShort: 'vas_hét_kedd_sze_csüt_pén_szo'.split('_'),\n weekdaysMin: 'v_h_k_sze_cs_p_szo'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'YYYY.MM.DD.',\n LL: 'YYYY. MMMM D.',\n LLL: 'YYYY. MMMM D. H:mm',\n LLLL: 'YYYY. MMMM D., dddd H:mm',\n },\n meridiemParse: /de|du/i,\n isPM: function (input) {\n return input.charAt(1).toLowerCase() === 'u';\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower === true ? 'de' : 'DE';\n } else {\n return isLower === true ? 'du' : 'DU';\n }\n },\n calendar: {\n sameDay: '[ma] LT[-kor]',\n nextDay: '[holnap] LT[-kor]',\n nextWeek: function () {\n return week.call(this, true);\n },\n lastDay: '[tegnap] LT[-kor]',\n lastWeek: function () {\n return week.call(this, false);\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s múlva',\n past: '%s',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return hu;\n\n})));\n","//! moment.js locale configuration\n//! locale : Armenian [hy-am]\n//! author : Armendarabyan : https://github.com/armendarabyan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var hyAm = moment.defineLocale('hy-am', {\n months: {\n format: 'հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի'.split(\n '_'\n ),\n standalone:\n 'հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր'.split(\n '_'\n ),\n },\n monthsShort: 'հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ'.split('_'),\n weekdays:\n 'կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ'.split(\n '_'\n ),\n weekdaysShort: 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'),\n weekdaysMin: 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY թ.',\n LLL: 'D MMMM YYYY թ., HH:mm',\n LLLL: 'dddd, D MMMM YYYY թ., HH:mm',\n },\n calendar: {\n sameDay: '[այսօր] LT',\n nextDay: '[վաղը] LT',\n lastDay: '[երեկ] LT',\n nextWeek: function () {\n return 'dddd [օրը ժամը] LT';\n },\n lastWeek: function () {\n return '[անցած] dddd [օրը ժամը] LT';\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s հետո',\n past: '%s առաջ',\n s: 'մի քանի վայրկյան',\n ss: '%d վայրկյան',\n m: 'րոպե',\n mm: '%d րոպե',\n h: 'ժամ',\n hh: '%d ժամ',\n d: 'օր',\n dd: '%d օր',\n M: 'ամիս',\n MM: '%d ամիս',\n y: 'տարի',\n yy: '%d տարի',\n },\n meridiemParse: /գիշերվա|առավոտվա|ցերեկվա|երեկոյան/,\n isPM: function (input) {\n return /^(ցերեկվա|երեկոյան)$/.test(input);\n },\n meridiem: function (hour) {\n if (hour < 4) {\n return 'գիշերվա';\n } else if (hour < 12) {\n return 'առավոտվա';\n } else if (hour < 17) {\n return 'ցերեկվա';\n } else {\n return 'երեկոյան';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}|\\d{1,2}-(ին|րդ)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'DDD':\n case 'w':\n case 'W':\n case 'DDDo':\n if (number === 1) {\n return number + '-ին';\n }\n return number + '-րդ';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return hyAm;\n\n})));\n","//! moment.js locale configuration\n//! locale : Indonesian [id]\n//! author : Mohammad Satrio Utomo : https://github.com/tyok\n//! reference: http://id.wikisource.org/wiki/Pedoman_Umum_Ejaan_Bahasa_Indonesia_yang_Disempurnakan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var id = moment.defineLocale('id', {\n months: 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des'.split('_'),\n weekdays: 'Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu'.split('_'),\n weekdaysShort: 'Min_Sen_Sel_Rab_Kam_Jum_Sab'.split('_'),\n weekdaysMin: 'Mg_Sn_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /pagi|siang|sore|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'siang') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'sore' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'siang';\n } else if (hours < 19) {\n return 'sore';\n } else {\n return 'malam';\n }\n },\n calendar: {\n sameDay: '[Hari ini pukul] LT',\n nextDay: '[Besok pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kemarin pukul] LT',\n lastWeek: 'dddd [lalu pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dalam %s',\n past: '%s yang lalu',\n s: 'beberapa detik',\n ss: '%d detik',\n m: 'semenit',\n mm: '%d menit',\n h: 'sejam',\n hh: '%d jam',\n d: 'sehari',\n dd: '%d hari',\n M: 'sebulan',\n MM: '%d bulan',\n y: 'setahun',\n yy: '%d tahun',\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return id;\n\n})));\n","//! moment.js locale configuration\n//! locale : Icelandic [is]\n//! author : Hinrik Örn Sigurðsson : https://github.com/hinrik\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function plural(n) {\n if (n % 100 === 11) {\n return true;\n } else if (n % 10 === 1) {\n return false;\n }\n return true;\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's':\n return withoutSuffix || isFuture\n ? 'nokkrar sekúndur'\n : 'nokkrum sekúndum';\n case 'ss':\n if (plural(number)) {\n return (\n result +\n (withoutSuffix || isFuture ? 'sekúndur' : 'sekúndum')\n );\n }\n return result + 'sekúnda';\n case 'm':\n return withoutSuffix ? 'mínúta' : 'mínútu';\n case 'mm':\n if (plural(number)) {\n return (\n result + (withoutSuffix || isFuture ? 'mínútur' : 'mínútum')\n );\n } else if (withoutSuffix) {\n return result + 'mínúta';\n }\n return result + 'mínútu';\n case 'hh':\n if (plural(number)) {\n return (\n result +\n (withoutSuffix || isFuture\n ? 'klukkustundir'\n : 'klukkustundum')\n );\n }\n return result + 'klukkustund';\n case 'd':\n if (withoutSuffix) {\n return 'dagur';\n }\n return isFuture ? 'dag' : 'degi';\n case 'dd':\n if (plural(number)) {\n if (withoutSuffix) {\n return result + 'dagar';\n }\n return result + (isFuture ? 'daga' : 'dögum');\n } else if (withoutSuffix) {\n return result + 'dagur';\n }\n return result + (isFuture ? 'dag' : 'degi');\n case 'M':\n if (withoutSuffix) {\n return 'mánuður';\n }\n return isFuture ? 'mánuð' : 'mánuði';\n case 'MM':\n if (plural(number)) {\n if (withoutSuffix) {\n return result + 'mánuðir';\n }\n return result + (isFuture ? 'mánuði' : 'mánuðum');\n } else if (withoutSuffix) {\n return result + 'mánuður';\n }\n return result + (isFuture ? 'mánuð' : 'mánuði');\n case 'y':\n return withoutSuffix || isFuture ? 'ár' : 'ári';\n case 'yy':\n if (plural(number)) {\n return result + (withoutSuffix || isFuture ? 'ár' : 'árum');\n }\n return result + (withoutSuffix || isFuture ? 'ár' : 'ári');\n }\n }\n\n var is = moment.defineLocale('is', {\n months: 'janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des'.split('_'),\n weekdays:\n 'sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur'.split(\n '_'\n ),\n weekdaysShort: 'sun_mán_þri_mið_fim_fös_lau'.split('_'),\n weekdaysMin: 'Su_Má_Þr_Mi_Fi_Fö_La'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY [kl.] H:mm',\n LLLL: 'dddd, D. MMMM YYYY [kl.] H:mm',\n },\n calendar: {\n sameDay: '[í dag kl.] LT',\n nextDay: '[á morgun kl.] LT',\n nextWeek: 'dddd [kl.] LT',\n lastDay: '[í gær kl.] LT',\n lastWeek: '[síðasta] dddd [kl.] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'eftir %s',\n past: 'fyrir %s síðan',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: 'klukkustund',\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return is;\n\n})));\n","//! moment.js locale configuration\n//! locale : Italian (Switzerland) [it-ch]\n//! author : xfh : https://github.com/xfh\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var itCh = moment.defineLocale('it-ch', {\n months: 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split(\n '_'\n ),\n monthsShort: 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),\n weekdays: 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split(\n '_'\n ),\n weekdaysShort: 'dom_lun_mar_mer_gio_ven_sab'.split('_'),\n weekdaysMin: 'do_lu_ma_me_gi_ve_sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Oggi alle] LT',\n nextDay: '[Domani alle] LT',\n nextWeek: 'dddd [alle] LT',\n lastDay: '[Ieri alle] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[la scorsa] dddd [alle] LT';\n default:\n return '[lo scorso] dddd [alle] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: function (s) {\n return (/^[0-9].+$/.test(s) ? 'tra' : 'in') + ' ' + s;\n },\n past: '%s fa',\n s: 'alcuni secondi',\n ss: '%d secondi',\n m: 'un minuto',\n mm: '%d minuti',\n h: \"un'ora\",\n hh: '%d ore',\n d: 'un giorno',\n dd: '%d giorni',\n M: 'un mese',\n MM: '%d mesi',\n y: 'un anno',\n yy: '%d anni',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return itCh;\n\n})));\n","//! moment.js locale configuration\n//! locale : Italian [it]\n//! author : Lorenzo : https://github.com/aliem\n//! author: Mattia Larentis: https://github.com/nostalgiaz\n//! author: Marco : https://github.com/Manfre98\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var it = moment.defineLocale('it', {\n months: 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split(\n '_'\n ),\n monthsShort: 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),\n weekdays: 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split(\n '_'\n ),\n weekdaysShort: 'dom_lun_mar_mer_gio_ven_sab'.split('_'),\n weekdaysMin: 'do_lu_ma_me_gi_ve_sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: function () {\n return (\n '[Oggi a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n nextDay: function () {\n return (\n '[Domani a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n nextWeek: function () {\n return (\n 'dddd [a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n lastDay: function () {\n return (\n '[Ieri a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return (\n '[La scorsa] dddd [a' +\n (this.hours() > 1\n ? 'lle '\n : this.hours() === 0\n ? ' '\n : \"ll'\") +\n ']LT'\n );\n default:\n return (\n '[Lo scorso] dddd [a' +\n (this.hours() > 1\n ? 'lle '\n : this.hours() === 0\n ? ' '\n : \"ll'\") +\n ']LT'\n );\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'tra %s',\n past: '%s fa',\n s: 'alcuni secondi',\n ss: '%d secondi',\n m: 'un minuto',\n mm: '%d minuti',\n h: \"un'ora\",\n hh: '%d ore',\n d: 'un giorno',\n dd: '%d giorni',\n w: 'una settimana',\n ww: '%d settimane',\n M: 'un mese',\n MM: '%d mesi',\n y: 'un anno',\n yy: '%d anni',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return it;\n\n})));\n","//! moment.js locale configuration\n//! locale : Japanese [ja]\n//! author : LI Long : https://github.com/baryon\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ja = moment.defineLocale('ja', {\n eras: [\n {\n since: '2019-05-01',\n offset: 1,\n name: '令和',\n narrow: '㋿',\n abbr: 'R',\n },\n {\n since: '1989-01-08',\n until: '2019-04-30',\n offset: 1,\n name: '平成',\n narrow: '㍻',\n abbr: 'H',\n },\n {\n since: '1926-12-25',\n until: '1989-01-07',\n offset: 1,\n name: '昭和',\n narrow: '㍼',\n abbr: 'S',\n },\n {\n since: '1912-07-30',\n until: '1926-12-24',\n offset: 1,\n name: '大正',\n narrow: '㍽',\n abbr: 'T',\n },\n {\n since: '1873-01-01',\n until: '1912-07-29',\n offset: 6,\n name: '明治',\n narrow: '㍾',\n abbr: 'M',\n },\n {\n since: '0001-01-01',\n until: '1873-12-31',\n offset: 1,\n name: '西暦',\n narrow: 'AD',\n abbr: 'AD',\n },\n {\n since: '0000-12-31',\n until: -Infinity,\n offset: 1,\n name: '紀元前',\n narrow: 'BC',\n abbr: 'BC',\n },\n ],\n eraYearOrdinalRegex: /(元|\\d+)年/,\n eraYearOrdinalParse: function (input, match) {\n return match[1] === '元' ? 1 : parseInt(match[1] || input, 10);\n },\n months: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日'.split('_'),\n weekdaysShort: '日_月_火_水_木_金_土'.split('_'),\n weekdaysMin: '日_月_火_水_木_金_土'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日 HH:mm',\n LLLL: 'YYYY年M月D日 dddd HH:mm',\n l: 'YYYY/MM/DD',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日(ddd) HH:mm',\n },\n meridiemParse: /午前|午後/i,\n isPM: function (input) {\n return input === '午後';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return '午前';\n } else {\n return '午後';\n }\n },\n calendar: {\n sameDay: '[今日] LT',\n nextDay: '[明日] LT',\n nextWeek: function (now) {\n if (now.week() !== this.week()) {\n return '[来週]dddd LT';\n } else {\n return 'dddd LT';\n }\n },\n lastDay: '[昨日] LT',\n lastWeek: function (now) {\n if (this.week() !== now.week()) {\n return '[先週]dddd LT';\n } else {\n return 'dddd LT';\n }\n },\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}日/,\n ordinal: function (number, period) {\n switch (period) {\n case 'y':\n return number === 1 ? '元年' : number + '年';\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s後',\n past: '%s前',\n s: '数秒',\n ss: '%d秒',\n m: '1分',\n mm: '%d分',\n h: '1時間',\n hh: '%d時間',\n d: '1日',\n dd: '%d日',\n M: '1ヶ月',\n MM: '%dヶ月',\n y: '1年',\n yy: '%d年',\n },\n });\n\n return ja;\n\n})));\n","//! moment.js locale configuration\n//! locale : Javanese [jv]\n//! author : Rony Lantip : https://github.com/lantip\n//! reference: http://jv.wikipedia.org/wiki/Basa_Jawa\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var jv = moment.defineLocale('jv', {\n months: 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des'.split('_'),\n weekdays: 'Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu'.split('_'),\n weekdaysShort: 'Min_Sen_Sel_Reb_Kem_Jem_Sep'.split('_'),\n weekdaysMin: 'Mg_Sn_Sl_Rb_Km_Jm_Sp'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /enjing|siyang|sonten|ndalu/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'enjing') {\n return hour;\n } else if (meridiem === 'siyang') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'sonten' || meridiem === 'ndalu') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'enjing';\n } else if (hours < 15) {\n return 'siyang';\n } else if (hours < 19) {\n return 'sonten';\n } else {\n return 'ndalu';\n }\n },\n calendar: {\n sameDay: '[Dinten puniko pukul] LT',\n nextDay: '[Mbenjang pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kala wingi pukul] LT',\n lastWeek: 'dddd [kepengker pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'wonten ing %s',\n past: '%s ingkang kepengker',\n s: 'sawetawis detik',\n ss: '%d detik',\n m: 'setunggal menit',\n mm: '%d menit',\n h: 'setunggal jam',\n hh: '%d jam',\n d: 'sedinten',\n dd: '%d dinten',\n M: 'sewulan',\n MM: '%d wulan',\n y: 'setaun',\n yy: '%d taun',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return jv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Georgian [ka]\n//! author : Irakli Janiashvili : https://github.com/IrakliJani\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ka = moment.defineLocale('ka', {\n months: 'იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი'.split(\n '_'\n ),\n monthsShort: 'იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ'.split('_'),\n weekdays: {\n standalone:\n 'კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი'.split(\n '_'\n ),\n format: 'კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს'.split(\n '_'\n ),\n isFormat: /(წინა|შემდეგ)/,\n },\n weekdaysShort: 'კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ'.split('_'),\n weekdaysMin: 'კვ_ორ_სა_ოთ_ხუ_პა_შა'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[დღეს] LT[-ზე]',\n nextDay: '[ხვალ] LT[-ზე]',\n lastDay: '[გუშინ] LT[-ზე]',\n nextWeek: '[შემდეგ] dddd LT[-ზე]',\n lastWeek: '[წინა] dddd LT-ზე',\n sameElse: 'L',\n },\n relativeTime: {\n future: function (s) {\n return s.replace(\n /(წამ|წუთ|საათ|წელ|დღ|თვ)(ი|ე)/,\n function ($0, $1, $2) {\n return $2 === 'ი' ? $1 + 'ში' : $1 + $2 + 'ში';\n }\n );\n },\n past: function (s) {\n if (/(წამი|წუთი|საათი|დღე|თვე)/.test(s)) {\n return s.replace(/(ი|ე)$/, 'ის წინ');\n }\n if (/წელი/.test(s)) {\n return s.replace(/წელი$/, 'წლის წინ');\n }\n return s;\n },\n s: 'რამდენიმე წამი',\n ss: '%d წამი',\n m: 'წუთი',\n mm: '%d წუთი',\n h: 'საათი',\n hh: '%d საათი',\n d: 'დღე',\n dd: '%d დღე',\n M: 'თვე',\n MM: '%d თვე',\n y: 'წელი',\n yy: '%d წელი',\n },\n dayOfMonthOrdinalParse: /0|1-ლი|მე-\\d{1,2}|\\d{1,2}-ე/,\n ordinal: function (number) {\n if (number === 0) {\n return number;\n }\n if (number === 1) {\n return number + '-ლი';\n }\n if (\n number < 20 ||\n (number <= 100 && number % 20 === 0) ||\n number % 100 === 0\n ) {\n return 'მე-' + number;\n }\n return number + '-ე';\n },\n week: {\n dow: 1,\n doy: 7,\n },\n });\n\n return ka;\n\n})));\n","//! moment.js locale configuration\n//! locale : Kazakh [kk]\n//! authors : Nurlan Rakhimzhanov : https://github.com/nurlan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 0: '-ші',\n 1: '-ші',\n 2: '-ші',\n 3: '-ші',\n 4: '-ші',\n 5: '-ші',\n 6: '-шы',\n 7: '-ші',\n 8: '-ші',\n 9: '-шы',\n 10: '-шы',\n 20: '-шы',\n 30: '-шы',\n 40: '-шы',\n 50: '-ші',\n 60: '-шы',\n 70: '-ші',\n 80: '-ші',\n 90: '-шы',\n 100: '-ші',\n };\n\n var kk = moment.defineLocale('kk', {\n months: 'қаңтар_ақпан_наурыз_сәуір_мамыр_маусым_шілде_тамыз_қыркүйек_қазан_қараша_желтоқсан'.split(\n '_'\n ),\n monthsShort: 'қаң_ақп_нау_сәу_мам_мау_шіл_там_қыр_қаз_қар_жел'.split('_'),\n weekdays: 'жексенбі_дүйсенбі_сейсенбі_сәрсенбі_бейсенбі_жұма_сенбі'.split(\n '_'\n ),\n weekdaysShort: 'жек_дүй_сей_сәр_бей_жұм_сен'.split('_'),\n weekdaysMin: 'жк_дй_сй_ср_бй_жм_сн'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Бүгін сағат] LT',\n nextDay: '[Ертең сағат] LT',\n nextWeek: 'dddd [сағат] LT',\n lastDay: '[Кеше сағат] LT',\n lastWeek: '[Өткен аптаның] dddd [сағат] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ішінде',\n past: '%s бұрын',\n s: 'бірнеше секунд',\n ss: '%d секунд',\n m: 'бір минут',\n mm: '%d минут',\n h: 'бір сағат',\n hh: '%d сағат',\n d: 'бір күн',\n dd: '%d күн',\n M: 'бір ай',\n MM: '%d ай',\n y: 'бір жыл',\n yy: '%d жыл',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ші|шы)/,\n ordinal: function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return kk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Cambodian [km]\n//! author : Kruy Vanna : https://github.com/kruyvanna\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '១',\n 2: '២',\n 3: '៣',\n 4: '៤',\n 5: '៥',\n 6: '៦',\n 7: '៧',\n 8: '៨',\n 9: '៩',\n 0: '០',\n },\n numberMap = {\n '១': '1',\n '២': '2',\n '៣': '3',\n '៤': '4',\n '៥': '5',\n '៦': '6',\n '៧': '7',\n '៨': '8',\n '៩': '9',\n '០': '0',\n };\n\n var km = moment.defineLocale('km', {\n months: 'មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split(\n '_'\n ),\n monthsShort:\n 'មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split(\n '_'\n ),\n weekdays: 'អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍'.split('_'),\n weekdaysShort: 'អា_ច_អ_ព_ព្រ_សុ_ស'.split('_'),\n weekdaysMin: 'អា_ច_អ_ព_ព្រ_សុ_ស'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n meridiemParse: /ព្រឹក|ល្ងាច/,\n isPM: function (input) {\n return input === 'ល្ងាច';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ព្រឹក';\n } else {\n return 'ល្ងាច';\n }\n },\n calendar: {\n sameDay: '[ថ្ងៃនេះ ម៉ោង] LT',\n nextDay: '[ស្អែក ម៉ោង] LT',\n nextWeek: 'dddd [ម៉ោង] LT',\n lastDay: '[ម្សិលមិញ ម៉ោង] LT',\n lastWeek: 'dddd [សប្តាហ៍មុន] [ម៉ោង] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%sទៀត',\n past: '%sមុន',\n s: 'ប៉ុន្មានវិនាទី',\n ss: '%d វិនាទី',\n m: 'មួយនាទី',\n mm: '%d នាទី',\n h: 'មួយម៉ោង',\n hh: '%d ម៉ោង',\n d: 'មួយថ្ងៃ',\n dd: '%d ថ្ងៃ',\n M: 'មួយខែ',\n MM: '%d ខែ',\n y: 'មួយឆ្នាំ',\n yy: '%d ឆ្នាំ',\n },\n dayOfMonthOrdinalParse: /ទី\\d{1,2}/,\n ordinal: 'ទី%d',\n preparse: function (string) {\n return string.replace(/[១២៣៤៥៦៧៨៩០]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return km;\n\n})));\n","//! moment.js locale configuration\n//! locale : Kannada [kn]\n//! author : Rajeev Naik : https://github.com/rajeevnaikte\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '೧',\n 2: '೨',\n 3: '೩',\n 4: '೪',\n 5: '೫',\n 6: '೬',\n 7: '೭',\n 8: '೮',\n 9: '೯',\n 0: '೦',\n },\n numberMap = {\n '೧': '1',\n '೨': '2',\n '೩': '3',\n '೪': '4',\n '೫': '5',\n '೬': '6',\n '೭': '7',\n '೮': '8',\n '೯': '9',\n '೦': '0',\n };\n\n var kn = moment.defineLocale('kn', {\n months: 'ಜನವರಿ_ಫೆಬ್ರವರಿ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂಬರ್_ಅಕ್ಟೋಬರ್_ನವೆಂಬರ್_ಡಿಸೆಂಬರ್'.split(\n '_'\n ),\n monthsShort:\n 'ಜನ_ಫೆಬ್ರ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂ_ಅಕ್ಟೋ_ನವೆಂ_ಡಿಸೆಂ'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'ಭಾನುವಾರ_ಸೋಮವಾರ_ಮಂಗಳವಾರ_ಬುಧವಾರ_ಗುರುವಾರ_ಶುಕ್ರವಾರ_ಶನಿವಾರ'.split(\n '_'\n ),\n weekdaysShort: 'ಭಾನು_ಸೋಮ_ಮಂಗಳ_ಬುಧ_ಗುರು_ಶುಕ್ರ_ಶನಿ'.split('_'),\n weekdaysMin: 'ಭಾ_ಸೋ_ಮಂ_ಬು_ಗು_ಶು_ಶ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm',\n LTS: 'A h:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm',\n LLLL: 'dddd, D MMMM YYYY, A h:mm',\n },\n calendar: {\n sameDay: '[ಇಂದು] LT',\n nextDay: '[ನಾಳೆ] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[ನಿನ್ನೆ] LT',\n lastWeek: '[ಕೊನೆಯ] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ನಂತರ',\n past: '%s ಹಿಂದೆ',\n s: 'ಕೆಲವು ಕ್ಷಣಗಳು',\n ss: '%d ಸೆಕೆಂಡುಗಳು',\n m: 'ಒಂದು ನಿಮಿಷ',\n mm: '%d ನಿಮಿಷ',\n h: 'ಒಂದು ಗಂಟೆ',\n hh: '%d ಗಂಟೆ',\n d: 'ಒಂದು ದಿನ',\n dd: '%d ದಿನ',\n M: 'ಒಂದು ತಿಂಗಳು',\n MM: '%d ತಿಂಗಳು',\n y: 'ಒಂದು ವರ್ಷ',\n yy: '%d ವರ್ಷ',\n },\n preparse: function (string) {\n return string.replace(/[೧೨೩೪೫೬೭೮೯೦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /ರಾತ್ರಿ|ಬೆಳಿಗ್ಗೆ|ಮಧ್ಯಾಹ್ನ|ಸಂಜೆ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ರಾತ್ರಿ') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ಬೆಳಿಗ್ಗೆ') {\n return hour;\n } else if (meridiem === 'ಮಧ್ಯಾಹ್ನ') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'ಸಂಜೆ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ರಾತ್ರಿ';\n } else if (hour < 10) {\n return 'ಬೆಳಿಗ್ಗೆ';\n } else if (hour < 17) {\n return 'ಮಧ್ಯಾಹ್ನ';\n } else if (hour < 20) {\n return 'ಸಂಜೆ';\n } else {\n return 'ರಾತ್ರಿ';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ನೇ)/,\n ordinal: function (number) {\n return number + 'ನೇ';\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return kn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Korean [ko]\n//! author : Kyungwook, Park : https://github.com/kyungw00k\n//! author : Jeeeyul Lee \n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ko = moment.defineLocale('ko', {\n months: '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split('_'),\n monthsShort: '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split(\n '_'\n ),\n weekdays: '일요일_월요일_화요일_수요일_목요일_금요일_토요일'.split('_'),\n weekdaysShort: '일_월_화_수_목_금_토'.split('_'),\n weekdaysMin: '일_월_화_수_목_금_토'.split('_'),\n longDateFormat: {\n LT: 'A h:mm',\n LTS: 'A h:mm:ss',\n L: 'YYYY.MM.DD.',\n LL: 'YYYY년 MMMM D일',\n LLL: 'YYYY년 MMMM D일 A h:mm',\n LLLL: 'YYYY년 MMMM D일 dddd A h:mm',\n l: 'YYYY.MM.DD.',\n ll: 'YYYY년 MMMM D일',\n lll: 'YYYY년 MMMM D일 A h:mm',\n llll: 'YYYY년 MMMM D일 dddd A h:mm',\n },\n calendar: {\n sameDay: '오늘 LT',\n nextDay: '내일 LT',\n nextWeek: 'dddd LT',\n lastDay: '어제 LT',\n lastWeek: '지난주 dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s 후',\n past: '%s 전',\n s: '몇 초',\n ss: '%d초',\n m: '1분',\n mm: '%d분',\n h: '한 시간',\n hh: '%d시간',\n d: '하루',\n dd: '%d일',\n M: '한 달',\n MM: '%d달',\n y: '일 년',\n yy: '%d년',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(일|월|주)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '일';\n case 'M':\n return number + '월';\n case 'w':\n case 'W':\n return number + '주';\n default:\n return number;\n }\n },\n meridiemParse: /오전|오후/,\n isPM: function (token) {\n return token === '오후';\n },\n meridiem: function (hour, minute, isUpper) {\n return hour < 12 ? '오전' : '오후';\n },\n });\n\n return ko;\n\n})));\n","//! moment.js locale configuration\n//! locale : Kurdish [ku]\n//! author : Shahram Mebashar : https://github.com/ShahramMebashar\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '١',\n 2: '٢',\n 3: '٣',\n 4: '٤',\n 5: '٥',\n 6: '٦',\n 7: '٧',\n 8: '٨',\n 9: '٩',\n 0: '٠',\n },\n numberMap = {\n '١': '1',\n '٢': '2',\n '٣': '3',\n '٤': '4',\n '٥': '5',\n '٦': '6',\n '٧': '7',\n '٨': '8',\n '٩': '9',\n '٠': '0',\n },\n months = [\n 'کانونی دووەم',\n 'شوبات',\n 'ئازار',\n 'نیسان',\n 'ئایار',\n 'حوزەیران',\n 'تەمموز',\n 'ئاب',\n 'ئەیلوول',\n 'تشرینی یەكەم',\n 'تشرینی دووەم',\n 'كانونی یەکەم',\n ];\n\n var ku = moment.defineLocale('ku', {\n months: months,\n monthsShort: months,\n weekdays:\n 'یه‌كشه‌ممه‌_دووشه‌ممه‌_سێشه‌ممه‌_چوارشه‌ممه‌_پێنجشه‌ممه‌_هه‌ینی_شه‌ممه‌'.split(\n '_'\n ),\n weekdaysShort:\n 'یه‌كشه‌م_دووشه‌م_سێشه‌م_چوارشه‌م_پێنجشه‌م_هه‌ینی_شه‌ممه‌'.split('_'),\n weekdaysMin: 'ی_د_س_چ_پ_ه_ش'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n meridiemParse: /ئێواره‌|به‌یانی/,\n isPM: function (input) {\n return /ئێواره‌/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'به‌یانی';\n } else {\n return 'ئێواره‌';\n }\n },\n calendar: {\n sameDay: '[ئه‌مرۆ كاتژمێر] LT',\n nextDay: '[به‌یانی كاتژمێر] LT',\n nextWeek: 'dddd [كاتژمێر] LT',\n lastDay: '[دوێنێ كاتژمێر] LT',\n lastWeek: 'dddd [كاتژمێر] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'له‌ %s',\n past: '%s',\n s: 'چه‌ند چركه‌یه‌ك',\n ss: 'چركه‌ %d',\n m: 'یه‌ك خوله‌ك',\n mm: '%d خوله‌ك',\n h: 'یه‌ك كاتژمێر',\n hh: '%d كاتژمێر',\n d: 'یه‌ك ڕۆژ',\n dd: '%d ڕۆژ',\n M: 'یه‌ك مانگ',\n MM: '%d مانگ',\n y: 'یه‌ك ساڵ',\n yy: '%d ساڵ',\n },\n preparse: function (string) {\n return string\n .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n })\n .replace(/،/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, '،');\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return ku;\n\n})));\n","//! moment.js locale configuration\n//! locale : Kyrgyz [ky]\n//! author : Chyngyz Arystan uulu : https://github.com/chyngyz\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 0: '-чү',\n 1: '-чи',\n 2: '-чи',\n 3: '-чү',\n 4: '-чү',\n 5: '-чи',\n 6: '-чы',\n 7: '-чи',\n 8: '-чи',\n 9: '-чу',\n 10: '-чу',\n 20: '-чы',\n 30: '-чу',\n 40: '-чы',\n 50: '-чү',\n 60: '-чы',\n 70: '-чи',\n 80: '-чи',\n 90: '-чу',\n 100: '-чү',\n };\n\n var ky = moment.defineLocale('ky', {\n months: 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split(\n '_'\n ),\n monthsShort: 'янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split(\n '_'\n ),\n weekdays: 'Жекшемби_Дүйшөмбү_Шейшемби_Шаршемби_Бейшемби_Жума_Ишемби'.split(\n '_'\n ),\n weekdaysShort: 'Жек_Дүй_Шей_Шар_Бей_Жум_Ише'.split('_'),\n weekdaysMin: 'Жк_Дй_Шй_Шр_Бй_Жм_Иш'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Бүгүн саат] LT',\n nextDay: '[Эртең саат] LT',\n nextWeek: 'dddd [саат] LT',\n lastDay: '[Кечээ саат] LT',\n lastWeek: '[Өткөн аптанын] dddd [күнү] [саат] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ичинде',\n past: '%s мурун',\n s: 'бирнече секунд',\n ss: '%d секунд',\n m: 'бир мүнөт',\n mm: '%d мүнөт',\n h: 'бир саат',\n hh: '%d саат',\n d: 'бир күн',\n dd: '%d күн',\n M: 'бир ай',\n MM: '%d ай',\n y: 'бир жыл',\n yy: '%d жыл',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(чи|чы|чү|чу)/,\n ordinal: function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return ky;\n\n})));\n","//! moment.js locale configuration\n//! locale : Luxembourgish [lb]\n//! author : mweimerskirch : https://github.com/mweimerskirch\n//! author : David Raison : https://github.com/kwisatz\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eng Minutt', 'enger Minutt'],\n h: ['eng Stonn', 'enger Stonn'],\n d: ['een Dag', 'engem Dag'],\n M: ['ee Mount', 'engem Mount'],\n y: ['ee Joer', 'engem Joer'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n function processFutureTime(string) {\n var number = string.substr(0, string.indexOf(' '));\n if (eifelerRegelAppliesToNumber(number)) {\n return 'a ' + string;\n }\n return 'an ' + string;\n }\n function processPastTime(string) {\n var number = string.substr(0, string.indexOf(' '));\n if (eifelerRegelAppliesToNumber(number)) {\n return 'viru ' + string;\n }\n return 'virun ' + string;\n }\n /**\n * Returns true if the word before the given number loses the '-n' ending.\n * e.g. 'an 10 Deeg' but 'a 5 Deeg'\n *\n * @param number {integer}\n * @returns {boolean}\n */\n function eifelerRegelAppliesToNumber(number) {\n number = parseInt(number, 10);\n if (isNaN(number)) {\n return false;\n }\n if (number < 0) {\n // Negative Number --> always true\n return true;\n } else if (number < 10) {\n // Only 1 digit\n if (4 <= number && number <= 7) {\n return true;\n }\n return false;\n } else if (number < 100) {\n // 2 digits\n var lastDigit = number % 10,\n firstDigit = number / 10;\n if (lastDigit === 0) {\n return eifelerRegelAppliesToNumber(firstDigit);\n }\n return eifelerRegelAppliesToNumber(lastDigit);\n } else if (number < 10000) {\n // 3 or 4 digits --> recursively check first digit\n while (number >= 10) {\n number = number / 10;\n }\n return eifelerRegelAppliesToNumber(number);\n } else {\n // Anything larger than 4 digits: recursively check first n-3 digits\n number = number / 1000;\n return eifelerRegelAppliesToNumber(number);\n }\n }\n\n var lb = moment.defineLocale('lb', {\n months: 'Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort:\n 'Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg'.split(\n '_'\n ),\n weekdaysShort: 'So._Mé._Dë._Më._Do._Fr._Sa.'.split('_'),\n weekdaysMin: 'So_Mé_Dë_Më_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm [Auer]',\n LTS: 'H:mm:ss [Auer]',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm [Auer]',\n LLLL: 'dddd, D. MMMM YYYY H:mm [Auer]',\n },\n calendar: {\n sameDay: '[Haut um] LT',\n sameElse: 'L',\n nextDay: '[Muer um] LT',\n nextWeek: 'dddd [um] LT',\n lastDay: '[Gëschter um] LT',\n lastWeek: function () {\n // Different date string for 'Dënschdeg' (Tuesday) and 'Donneschdeg' (Thursday) due to phonological rule\n switch (this.day()) {\n case 2:\n case 4:\n return '[Leschten] dddd [um] LT';\n default:\n return '[Leschte] dddd [um] LT';\n }\n },\n },\n relativeTime: {\n future: processFutureTime,\n past: processPastTime,\n s: 'e puer Sekonnen',\n ss: '%d Sekonnen',\n m: processRelativeTime,\n mm: '%d Minutten',\n h: processRelativeTime,\n hh: '%d Stonnen',\n d: processRelativeTime,\n dd: '%d Deeg',\n M: processRelativeTime,\n MM: '%d Méint',\n y: processRelativeTime,\n yy: '%d Joer',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return lb;\n\n})));\n","//! moment.js locale configuration\n//! locale : Lao [lo]\n//! author : Ryan Hart : https://github.com/ryanhart2\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var lo = moment.defineLocale('lo', {\n months: 'ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ'.split(\n '_'\n ),\n monthsShort:\n 'ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ'.split(\n '_'\n ),\n weekdays: 'ອາທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ'.split('_'),\n weekdaysShort: 'ທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ'.split('_'),\n weekdaysMin: 'ທ_ຈ_ອຄ_ພ_ພຫ_ສກ_ສ'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'ວັນdddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ຕອນເຊົ້າ|ຕອນແລງ/,\n isPM: function (input) {\n return input === 'ຕອນແລງ';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ຕອນເຊົ້າ';\n } else {\n return 'ຕອນແລງ';\n }\n },\n calendar: {\n sameDay: '[ມື້ນີ້ເວລາ] LT',\n nextDay: '[ມື້ອື່ນເວລາ] LT',\n nextWeek: '[ວັນ]dddd[ໜ້າເວລາ] LT',\n lastDay: '[ມື້ວານນີ້ເວລາ] LT',\n lastWeek: '[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ອີກ %s',\n past: '%sຜ່ານມາ',\n s: 'ບໍ່ເທົ່າໃດວິນາທີ',\n ss: '%d ວິນາທີ',\n m: '1 ນາທີ',\n mm: '%d ນາທີ',\n h: '1 ຊົ່ວໂມງ',\n hh: '%d ຊົ່ວໂມງ',\n d: '1 ມື້',\n dd: '%d ມື້',\n M: '1 ເດືອນ',\n MM: '%d ເດືອນ',\n y: '1 ປີ',\n yy: '%d ປີ',\n },\n dayOfMonthOrdinalParse: /(ທີ່)\\d{1,2}/,\n ordinal: function (number) {\n return 'ທີ່' + number;\n },\n });\n\n return lo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Lithuanian [lt]\n//! author : Mindaugas Mozūras : https://github.com/mmozuras\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var units = {\n ss: 'sekundė_sekundžių_sekundes',\n m: 'minutė_minutės_minutę',\n mm: 'minutės_minučių_minutes',\n h: 'valanda_valandos_valandą',\n hh: 'valandos_valandų_valandas',\n d: 'diena_dienos_dieną',\n dd: 'dienos_dienų_dienas',\n M: 'mėnuo_mėnesio_mėnesį',\n MM: 'mėnesiai_mėnesių_mėnesius',\n y: 'metai_metų_metus',\n yy: 'metai_metų_metus',\n };\n function translateSeconds(number, withoutSuffix, key, isFuture) {\n if (withoutSuffix) {\n return 'kelios sekundės';\n } else {\n return isFuture ? 'kelių sekundžių' : 'kelias sekundes';\n }\n }\n function translateSingular(number, withoutSuffix, key, isFuture) {\n return withoutSuffix\n ? forms(key)[0]\n : isFuture\n ? forms(key)[1]\n : forms(key)[2];\n }\n function special(number) {\n return number % 10 === 0 || (number > 10 && number < 20);\n }\n function forms(key) {\n return units[key].split('_');\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n if (number === 1) {\n return (\n result + translateSingular(number, withoutSuffix, key[0], isFuture)\n );\n } else if (withoutSuffix) {\n return result + (special(number) ? forms(key)[1] : forms(key)[0]);\n } else {\n if (isFuture) {\n return result + forms(key)[1];\n } else {\n return result + (special(number) ? forms(key)[1] : forms(key)[2]);\n }\n }\n }\n var lt = moment.defineLocale('lt', {\n months: {\n format: 'sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio'.split(\n '_'\n ),\n standalone:\n 'sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_spalis_lapkritis_gruodis'.split(\n '_'\n ),\n isFormat: /D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?|MMMM?(\\[[^\\[\\]]*\\]|\\s)+D[oD]?/,\n },\n monthsShort: 'sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd'.split('_'),\n weekdays: {\n format: 'sekmadienį_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį'.split(\n '_'\n ),\n standalone:\n 'sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis'.split(\n '_'\n ),\n isFormat: /dddd HH:mm/,\n },\n weekdaysShort: 'Sek_Pir_Ant_Tre_Ket_Pen_Šeš'.split('_'),\n weekdaysMin: 'S_P_A_T_K_Pn_Š'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY [m.] MMMM D [d.]',\n LLL: 'YYYY [m.] MMMM D [d.], HH:mm [val.]',\n LLLL: 'YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]',\n l: 'YYYY-MM-DD',\n ll: 'YYYY [m.] MMMM D [d.]',\n lll: 'YYYY [m.] MMMM D [d.], HH:mm [val.]',\n llll: 'YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]',\n },\n calendar: {\n sameDay: '[Šiandien] LT',\n nextDay: '[Rytoj] LT',\n nextWeek: 'dddd LT',\n lastDay: '[Vakar] LT',\n lastWeek: '[Praėjusį] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'po %s',\n past: 'prieš %s',\n s: translateSeconds,\n ss: translate,\n m: translateSingular,\n mm: translate,\n h: translateSingular,\n hh: translate,\n d: translateSingular,\n dd: translate,\n M: translateSingular,\n MM: translate,\n y: translateSingular,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-oji/,\n ordinal: function (number) {\n return number + '-oji';\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return lt;\n\n})));\n","//! moment.js locale configuration\n//! locale : Latvian [lv]\n//! author : Kristaps Karlsons : https://github.com/skakri\n//! author : Jānis Elmeris : https://github.com/JanisE\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var units = {\n ss: 'sekundes_sekundēm_sekunde_sekundes'.split('_'),\n m: 'minūtes_minūtēm_minūte_minūtes'.split('_'),\n mm: 'minūtes_minūtēm_minūte_minūtes'.split('_'),\n h: 'stundas_stundām_stunda_stundas'.split('_'),\n hh: 'stundas_stundām_stunda_stundas'.split('_'),\n d: 'dienas_dienām_diena_dienas'.split('_'),\n dd: 'dienas_dienām_diena_dienas'.split('_'),\n M: 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'),\n MM: 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'),\n y: 'gada_gadiem_gads_gadi'.split('_'),\n yy: 'gada_gadiem_gads_gadi'.split('_'),\n };\n /**\n * @param withoutSuffix boolean true = a length of time; false = before/after a period of time.\n */\n function format(forms, number, withoutSuffix) {\n if (withoutSuffix) {\n // E.g. \"21 minūte\", \"3 minūtes\".\n return number % 10 === 1 && number % 100 !== 11 ? forms[2] : forms[3];\n } else {\n // E.g. \"21 minūtes\" as in \"pēc 21 minūtes\".\n // E.g. \"3 minūtēm\" as in \"pēc 3 minūtēm\".\n return number % 10 === 1 && number % 100 !== 11 ? forms[0] : forms[1];\n }\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n return number + ' ' + format(units[key], number, withoutSuffix);\n }\n function relativeTimeWithSingular(number, withoutSuffix, key) {\n return format(units[key], number, withoutSuffix);\n }\n function relativeSeconds(number, withoutSuffix) {\n return withoutSuffix ? 'dažas sekundes' : 'dažām sekundēm';\n }\n\n var lv = moment.defineLocale('lv', {\n months: 'janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec'.split('_'),\n weekdays:\n 'svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena'.split(\n '_'\n ),\n weekdaysShort: 'Sv_P_O_T_C_Pk_S'.split('_'),\n weekdaysMin: 'Sv_P_O_T_C_Pk_S'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY.',\n LL: 'YYYY. [gada] D. MMMM',\n LLL: 'YYYY. [gada] D. MMMM, HH:mm',\n LLLL: 'YYYY. [gada] D. MMMM, dddd, HH:mm',\n },\n calendar: {\n sameDay: '[Šodien pulksten] LT',\n nextDay: '[Rīt pulksten] LT',\n nextWeek: 'dddd [pulksten] LT',\n lastDay: '[Vakar pulksten] LT',\n lastWeek: '[Pagājušā] dddd [pulksten] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'pēc %s',\n past: 'pirms %s',\n s: relativeSeconds,\n ss: relativeTimeWithPlural,\n m: relativeTimeWithSingular,\n mm: relativeTimeWithPlural,\n h: relativeTimeWithSingular,\n hh: relativeTimeWithPlural,\n d: relativeTimeWithSingular,\n dd: relativeTimeWithPlural,\n M: relativeTimeWithSingular,\n MM: relativeTimeWithPlural,\n y: relativeTimeWithSingular,\n yy: relativeTimeWithPlural,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return lv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Montenegrin [me]\n//! author : Miodrag Nikač : https://github.com/miodragnikac\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var translator = {\n words: {\n //Different grammatical cases\n ss: ['sekund', 'sekunda', 'sekundi'],\n m: ['jedan minut', 'jednog minuta'],\n mm: ['minut', 'minuta', 'minuta'],\n h: ['jedan sat', 'jednog sata'],\n hh: ['sat', 'sata', 'sati'],\n dd: ['dan', 'dana', 'dana'],\n MM: ['mjesec', 'mjeseca', 'mjeseci'],\n yy: ['godina', 'godine', 'godina'],\n },\n correctGrammaticalCase: function (number, wordKey) {\n return number === 1\n ? wordKey[0]\n : number >= 2 && number <= 4\n ? wordKey[1]\n : wordKey[2];\n },\n translate: function (number, withoutSuffix, key) {\n var wordKey = translator.words[key];\n if (key.length === 1) {\n return withoutSuffix ? wordKey[0] : wordKey[1];\n } else {\n return (\n number +\n ' ' +\n translator.correctGrammaticalCase(number, wordKey)\n );\n }\n },\n };\n\n var me = moment.defineLocale('me', {\n months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'),\n monthsParseExact: true,\n weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sjutra u] LT',\n\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[juče u] LT',\n lastWeek: function () {\n var lastWeekDays = [\n '[prošle] [nedjelje] [u] LT',\n '[prošlog] [ponedjeljka] [u] LT',\n '[prošlog] [utorka] [u] LT',\n '[prošle] [srijede] [u] LT',\n '[prošlog] [četvrtka] [u] LT',\n '[prošlog] [petka] [u] LT',\n '[prošle] [subote] [u] LT',\n ];\n return lastWeekDays[this.day()];\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'prije %s',\n s: 'nekoliko sekundi',\n ss: translator.translate,\n m: translator.translate,\n mm: translator.translate,\n h: translator.translate,\n hh: translator.translate,\n d: 'dan',\n dd: translator.translate,\n M: 'mjesec',\n MM: translator.translate,\n y: 'godinu',\n yy: translator.translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return me;\n\n})));\n","//! moment.js locale configuration\n//! locale : Maori [mi]\n//! author : John Corrigan : https://github.com/johnideal\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var mi = moment.defineLocale('mi', {\n months: 'Kohi-tāte_Hui-tanguru_Poutū-te-rangi_Paenga-whāwhā_Haratua_Pipiri_Hōngoingoi_Here-turi-kōkā_Mahuru_Whiringa-ā-nuku_Whiringa-ā-rangi_Hakihea'.split(\n '_'\n ),\n monthsShort:\n 'Kohi_Hui_Pou_Pae_Hara_Pipi_Hōngoi_Here_Mahu_Whi-nu_Whi-ra_Haki'.split(\n '_'\n ),\n monthsRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsStrictRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsShortRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsShortStrictRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,2}/i,\n weekdays: 'Rātapu_Mane_Tūrei_Wenerei_Tāite_Paraire_Hātarei'.split('_'),\n weekdaysShort: 'Ta_Ma_Tū_We_Tāi_Pa_Hā'.split('_'),\n weekdaysMin: 'Ta_Ma_Tū_We_Tāi_Pa_Hā'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [i] HH:mm',\n LLLL: 'dddd, D MMMM YYYY [i] HH:mm',\n },\n calendar: {\n sameDay: '[i teie mahana, i] LT',\n nextDay: '[apopo i] LT',\n nextWeek: 'dddd [i] LT',\n lastDay: '[inanahi i] LT',\n lastWeek: 'dddd [whakamutunga i] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'i roto i %s',\n past: '%s i mua',\n s: 'te hēkona ruarua',\n ss: '%d hēkona',\n m: 'he meneti',\n mm: '%d meneti',\n h: 'te haora',\n hh: '%d haora',\n d: 'he ra',\n dd: '%d ra',\n M: 'he marama',\n MM: '%d marama',\n y: 'he tau',\n yy: '%d tau',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return mi;\n\n})));\n","//! moment.js locale configuration\n//! locale : Macedonian [mk]\n//! author : Borislav Mickov : https://github.com/B0k0\n//! author : Sashko Todorov : https://github.com/bkyceh\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var mk = moment.defineLocale('mk', {\n months: 'јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември'.split(\n '_'\n ),\n monthsShort: 'јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек'.split('_'),\n weekdays: 'недела_понеделник_вторник_среда_четврток_петок_сабота'.split(\n '_'\n ),\n weekdaysShort: 'нед_пон_вто_сре_чет_пет_саб'.split('_'),\n weekdaysMin: 'нe_пo_вт_ср_че_пе_сa'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'D.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY H:mm',\n LLLL: 'dddd, D MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[Денес во] LT',\n nextDay: '[Утре во] LT',\n nextWeek: '[Во] dddd [во] LT',\n lastDay: '[Вчера во] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 6:\n return '[Изминатата] dddd [во] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[Изминатиот] dddd [во] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'за %s',\n past: 'пред %s',\n s: 'неколку секунди',\n ss: '%d секунди',\n m: 'една минута',\n mm: '%d минути',\n h: 'еден час',\n hh: '%d часа',\n d: 'еден ден',\n dd: '%d дена',\n M: 'еден месец',\n MM: '%d месеци',\n y: 'една година',\n yy: '%d години',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ев|ен|ти|ви|ри|ми)/,\n ordinal: function (number) {\n var lastDigit = number % 10,\n last2Digits = number % 100;\n if (number === 0) {\n return number + '-ев';\n } else if (last2Digits === 0) {\n return number + '-ен';\n } else if (last2Digits > 10 && last2Digits < 20) {\n return number + '-ти';\n } else if (lastDigit === 1) {\n return number + '-ви';\n } else if (lastDigit === 2) {\n return number + '-ри';\n } else if (lastDigit === 7 || lastDigit === 8) {\n return number + '-ми';\n } else {\n return number + '-ти';\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return mk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Malayalam [ml]\n//! author : Floyd Pink : https://github.com/floydpink\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ml = moment.defineLocale('ml', {\n months: 'ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ'.split(\n '_'\n ),\n monthsShort:\n 'ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച'.split(\n '_'\n ),\n weekdaysShort: 'ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി'.split('_'),\n weekdaysMin: 'ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm -നു',\n LTS: 'A h:mm:ss -നു',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm -നു',\n LLLL: 'dddd, D MMMM YYYY, A h:mm -നു',\n },\n calendar: {\n sameDay: '[ഇന്ന്] LT',\n nextDay: '[നാളെ] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[ഇന്നലെ] LT',\n lastWeek: '[കഴിഞ്ഞ] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s കഴിഞ്ഞ്',\n past: '%s മുൻപ്',\n s: 'അൽപ നിമിഷങ്ങൾ',\n ss: '%d സെക്കൻഡ്',\n m: 'ഒരു മിനിറ്റ്',\n mm: '%d മിനിറ്റ്',\n h: 'ഒരു മണിക്കൂർ',\n hh: '%d മണിക്കൂർ',\n d: 'ഒരു ദിവസം',\n dd: '%d ദിവസം',\n M: 'ഒരു മാസം',\n MM: '%d മാസം',\n y: 'ഒരു വർഷം',\n yy: '%d വർഷം',\n },\n meridiemParse: /രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n (meridiem === 'രാത്രി' && hour >= 4) ||\n meridiem === 'ഉച്ച കഴിഞ്ഞ്' ||\n meridiem === 'വൈകുന്നേരം'\n ) {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'രാത്രി';\n } else if (hour < 12) {\n return 'രാവിലെ';\n } else if (hour < 17) {\n return 'ഉച്ച കഴിഞ്ഞ്';\n } else if (hour < 20) {\n return 'വൈകുന്നേരം';\n } else {\n return 'രാത്രി';\n }\n },\n });\n\n return ml;\n\n})));\n","//! moment.js locale configuration\n//! locale : Mongolian [mn]\n//! author : Javkhlantugs Nyamdorj : https://github.com/javkhaanj7\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function translate(number, withoutSuffix, key, isFuture) {\n switch (key) {\n case 's':\n return withoutSuffix ? 'хэдхэн секунд' : 'хэдхэн секундын';\n case 'ss':\n return number + (withoutSuffix ? ' секунд' : ' секундын');\n case 'm':\n case 'mm':\n return number + (withoutSuffix ? ' минут' : ' минутын');\n case 'h':\n case 'hh':\n return number + (withoutSuffix ? ' цаг' : ' цагийн');\n case 'd':\n case 'dd':\n return number + (withoutSuffix ? ' өдөр' : ' өдрийн');\n case 'M':\n case 'MM':\n return number + (withoutSuffix ? ' сар' : ' сарын');\n case 'y':\n case 'yy':\n return number + (withoutSuffix ? ' жил' : ' жилийн');\n default:\n return number;\n }\n }\n\n var mn = moment.defineLocale('mn', {\n months: 'Нэгдүгээр сар_Хоёрдугаар сар_Гуравдугаар сар_Дөрөвдүгээр сар_Тавдугаар сар_Зургадугаар сар_Долдугаар сар_Наймдугаар сар_Есдүгээр сар_Аравдугаар сар_Арван нэгдүгээр сар_Арван хоёрдугаар сар'.split(\n '_'\n ),\n monthsShort:\n '1 сар_2 сар_3 сар_4 сар_5 сар_6 сар_7 сар_8 сар_9 сар_10 сар_11 сар_12 сар'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'Ням_Даваа_Мягмар_Лхагва_Пүрэв_Баасан_Бямба'.split('_'),\n weekdaysShort: 'Ням_Дав_Мяг_Лха_Пүр_Баа_Бям'.split('_'),\n weekdaysMin: 'Ня_Да_Мя_Лх_Пү_Ба_Бя'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY оны MMMMын D',\n LLL: 'YYYY оны MMMMын D HH:mm',\n LLLL: 'dddd, YYYY оны MMMMын D HH:mm',\n },\n meridiemParse: /ҮӨ|ҮХ/i,\n isPM: function (input) {\n return input === 'ҮХ';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ҮӨ';\n } else {\n return 'ҮХ';\n }\n },\n calendar: {\n sameDay: '[Өнөөдөр] LT',\n nextDay: '[Маргааш] LT',\n nextWeek: '[Ирэх] dddd LT',\n lastDay: '[Өчигдөр] LT',\n lastWeek: '[Өнгөрсөн] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s дараа',\n past: '%s өмнө',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2} өдөр/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + ' өдөр';\n default:\n return number;\n }\n },\n });\n\n return mn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Marathi [mr]\n//! author : Harshad Kale : https://github.com/kalehv\n//! author : Vivek Athalye : https://github.com/vnathalye\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '१',\n 2: '२',\n 3: '३',\n 4: '४',\n 5: '५',\n 6: '६',\n 7: '७',\n 8: '८',\n 9: '९',\n 0: '०',\n },\n numberMap = {\n '१': '1',\n '२': '2',\n '३': '3',\n '४': '4',\n '५': '5',\n '६': '6',\n '७': '7',\n '८': '8',\n '९': '9',\n '०': '0',\n };\n\n function relativeTimeMr(number, withoutSuffix, string, isFuture) {\n var output = '';\n if (withoutSuffix) {\n switch (string) {\n case 's':\n output = 'काही सेकंद';\n break;\n case 'ss':\n output = '%d सेकंद';\n break;\n case 'm':\n output = 'एक मिनिट';\n break;\n case 'mm':\n output = '%d मिनिटे';\n break;\n case 'h':\n output = 'एक तास';\n break;\n case 'hh':\n output = '%d तास';\n break;\n case 'd':\n output = 'एक दिवस';\n break;\n case 'dd':\n output = '%d दिवस';\n break;\n case 'M':\n output = 'एक महिना';\n break;\n case 'MM':\n output = '%d महिने';\n break;\n case 'y':\n output = 'एक वर्ष';\n break;\n case 'yy':\n output = '%d वर्षे';\n break;\n }\n } else {\n switch (string) {\n case 's':\n output = 'काही सेकंदां';\n break;\n case 'ss':\n output = '%d सेकंदां';\n break;\n case 'm':\n output = 'एका मिनिटा';\n break;\n case 'mm':\n output = '%d मिनिटां';\n break;\n case 'h':\n output = 'एका तासा';\n break;\n case 'hh':\n output = '%d तासां';\n break;\n case 'd':\n output = 'एका दिवसा';\n break;\n case 'dd':\n output = '%d दिवसां';\n break;\n case 'M':\n output = 'एका महिन्या';\n break;\n case 'MM':\n output = '%d महिन्यां';\n break;\n case 'y':\n output = 'एका वर्षा';\n break;\n case 'yy':\n output = '%d वर्षां';\n break;\n }\n }\n return output.replace(/%d/i, number);\n }\n\n var mr = moment.defineLocale('mr', {\n months: 'जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर'.split(\n '_'\n ),\n monthsShort:\n 'जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'),\n weekdaysShort: 'रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि'.split('_'),\n weekdaysMin: 'र_सो_मं_बु_गु_शु_श'.split('_'),\n longDateFormat: {\n LT: 'A h:mm वाजता',\n LTS: 'A h:mm:ss वाजता',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm वाजता',\n LLLL: 'dddd, D MMMM YYYY, A h:mm वाजता',\n },\n calendar: {\n sameDay: '[आज] LT',\n nextDay: '[उद्या] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[काल] LT',\n lastWeek: '[मागील] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%sमध्ये',\n past: '%sपूर्वी',\n s: relativeTimeMr,\n ss: relativeTimeMr,\n m: relativeTimeMr,\n mm: relativeTimeMr,\n h: relativeTimeMr,\n hh: relativeTimeMr,\n d: relativeTimeMr,\n dd: relativeTimeMr,\n M: relativeTimeMr,\n MM: relativeTimeMr,\n y: relativeTimeMr,\n yy: relativeTimeMr,\n },\n preparse: function (string) {\n return string.replace(/[१२३४५६७८९०]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /पहाटे|सकाळी|दुपारी|सायंकाळी|रात्री/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'पहाटे' || meridiem === 'सकाळी') {\n return hour;\n } else if (\n meridiem === 'दुपारी' ||\n meridiem === 'सायंकाळी' ||\n meridiem === 'रात्री'\n ) {\n return hour >= 12 ? hour : hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour >= 0 && hour < 6) {\n return 'पहाटे';\n } else if (hour < 12) {\n return 'सकाळी';\n } else if (hour < 17) {\n return 'दुपारी';\n } else if (hour < 20) {\n return 'सायंकाळी';\n } else {\n return 'रात्री';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return mr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Malay [ms-my]\n//! note : DEPRECATED, the correct one is [ms]\n//! author : Weldan Jamili : https://github.com/weldan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var msMy = moment.defineLocale('ms-my', {\n months: 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),\n weekdays: 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),\n weekdaysShort: 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),\n weekdaysMin: 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /pagi|tengahari|petang|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'tengahari') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'petang' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'tengahari';\n } else if (hours < 19) {\n return 'petang';\n } else {\n return 'malam';\n }\n },\n calendar: {\n sameDay: '[Hari ini pukul] LT',\n nextDay: '[Esok pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kelmarin pukul] LT',\n lastWeek: 'dddd [lepas pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dalam %s',\n past: '%s yang lepas',\n s: 'beberapa saat',\n ss: '%d saat',\n m: 'seminit',\n mm: '%d minit',\n h: 'sejam',\n hh: '%d jam',\n d: 'sehari',\n dd: '%d hari',\n M: 'sebulan',\n MM: '%d bulan',\n y: 'setahun',\n yy: '%d tahun',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return msMy;\n\n})));\n","//! moment.js locale configuration\n//! locale : Malay [ms]\n//! author : Weldan Jamili : https://github.com/weldan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ms = moment.defineLocale('ms', {\n months: 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),\n weekdays: 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),\n weekdaysShort: 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),\n weekdaysMin: 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /pagi|tengahari|petang|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'tengahari') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'petang' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'tengahari';\n } else if (hours < 19) {\n return 'petang';\n } else {\n return 'malam';\n }\n },\n calendar: {\n sameDay: '[Hari ini pukul] LT',\n nextDay: '[Esok pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kelmarin pukul] LT',\n lastWeek: 'dddd [lepas pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dalam %s',\n past: '%s yang lepas',\n s: 'beberapa saat',\n ss: '%d saat',\n m: 'seminit',\n mm: '%d minit',\n h: 'sejam',\n hh: '%d jam',\n d: 'sehari',\n dd: '%d hari',\n M: 'sebulan',\n MM: '%d bulan',\n y: 'setahun',\n yy: '%d tahun',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return ms;\n\n})));\n","//! moment.js locale configuration\n//! locale : Maltese (Malta) [mt]\n//! author : Alessandro Maruccia : https://github.com/alesma\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var mt = moment.defineLocale('mt', {\n months: 'Jannar_Frar_Marzu_April_Mejju_Ġunju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Diċembru'.split(\n '_'\n ),\n monthsShort: 'Jan_Fra_Mar_Apr_Mej_Ġun_Lul_Aww_Set_Ott_Nov_Diċ'.split('_'),\n weekdays:\n 'Il-Ħadd_It-Tnejn_It-Tlieta_L-Erbgħa_Il-Ħamis_Il-Ġimgħa_Is-Sibt'.split(\n '_'\n ),\n weekdaysShort: 'Ħad_Tne_Tli_Erb_Ħam_Ġim_Sib'.split('_'),\n weekdaysMin: 'Ħa_Tn_Tl_Er_Ħa_Ġi_Si'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Illum fil-]LT',\n nextDay: '[Għada fil-]LT',\n nextWeek: 'dddd [fil-]LT',\n lastDay: '[Il-bieraħ fil-]LT',\n lastWeek: 'dddd [li għadda] [fil-]LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'f’ %s',\n past: '%s ilu',\n s: 'ftit sekondi',\n ss: '%d sekondi',\n m: 'minuta',\n mm: '%d minuti',\n h: 'siegħa',\n hh: '%d siegħat',\n d: 'ġurnata',\n dd: '%d ġranet',\n M: 'xahar',\n MM: '%d xhur',\n y: 'sena',\n yy: '%d sni',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return mt;\n\n})));\n","//! moment.js locale configuration\n//! locale : Burmese [my]\n//! author : Squar team, mysquar.com\n//! author : David Rossellat : https://github.com/gholadr\n//! author : Tin Aung Lin : https://github.com/thanyawzinmin\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '၁',\n 2: '၂',\n 3: '၃',\n 4: '၄',\n 5: '၅',\n 6: '၆',\n 7: '၇',\n 8: '၈',\n 9: '၉',\n 0: '၀',\n },\n numberMap = {\n '၁': '1',\n '၂': '2',\n '၃': '3',\n '၄': '4',\n '၅': '5',\n '၆': '6',\n '၇': '7',\n '၈': '8',\n '၉': '9',\n '၀': '0',\n };\n\n var my = moment.defineLocale('my', {\n months: 'ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ'.split(\n '_'\n ),\n monthsShort: 'ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ'.split('_'),\n weekdays: 'တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ'.split(\n '_'\n ),\n weekdaysShort: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),\n weekdaysMin: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),\n\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[ယနေ.] LT [မှာ]',\n nextDay: '[မနက်ဖြန်] LT [မှာ]',\n nextWeek: 'dddd LT [မှာ]',\n lastDay: '[မနေ.က] LT [မှာ]',\n lastWeek: '[ပြီးခဲ့သော] dddd LT [မှာ]',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'လာမည့် %s မှာ',\n past: 'လွန်ခဲ့သော %s က',\n s: 'စက္ကန်.အနည်းငယ်',\n ss: '%d စက္ကန့်',\n m: 'တစ်မိနစ်',\n mm: '%d မိနစ်',\n h: 'တစ်နာရီ',\n hh: '%d နာရီ',\n d: 'တစ်ရက်',\n dd: '%d ရက်',\n M: 'တစ်လ',\n MM: '%d လ',\n y: 'တစ်နှစ်',\n yy: '%d နှစ်',\n },\n preparse: function (string) {\n return string.replace(/[၁၂၃၄၅၆၇၈၉၀]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return my;\n\n})));\n","//! moment.js locale configuration\n//! locale : Norwegian Bokmål [nb]\n//! authors : Espen Hovlandsdal : https://github.com/rexxars\n//! Sigurd Gartmann : https://github.com/sigurdga\n//! Stephen Ramthun : https://github.com/stephenramthun\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var nb = moment.defineLocale('nb', {\n months: 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.'.split('_'),\n monthsParseExact: true,\n weekdays: 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),\n weekdaysShort: 'sø._ma._ti._on._to._fr._lø.'.split('_'),\n weekdaysMin: 'sø_ma_ti_on_to_fr_lø'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY [kl.] HH:mm',\n LLLL: 'dddd D. MMMM YYYY [kl.] HH:mm',\n },\n calendar: {\n sameDay: '[i dag kl.] LT',\n nextDay: '[i morgen kl.] LT',\n nextWeek: 'dddd [kl.] LT',\n lastDay: '[i går kl.] LT',\n lastWeek: '[forrige] dddd [kl.] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: '%s siden',\n s: 'noen sekunder',\n ss: '%d sekunder',\n m: 'ett minutt',\n mm: '%d minutter',\n h: 'en time',\n hh: '%d timer',\n d: 'en dag',\n dd: '%d dager',\n w: 'en uke',\n ww: '%d uker',\n M: 'en måned',\n MM: '%d måneder',\n y: 'ett år',\n yy: '%d år',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return nb;\n\n})));\n","//! moment.js locale configuration\n//! locale : Nepalese [ne]\n//! author : suvash : https://github.com/suvash\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '१',\n 2: '२',\n 3: '३',\n 4: '४',\n 5: '५',\n 6: '६',\n 7: '७',\n 8: '८',\n 9: '९',\n 0: '०',\n },\n numberMap = {\n '१': '1',\n '२': '2',\n '३': '3',\n '४': '4',\n '५': '5',\n '६': '6',\n '७': '7',\n '८': '8',\n '९': '9',\n '०': '0',\n };\n\n var ne = moment.defineLocale('ne', {\n months: 'जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर'.split(\n '_'\n ),\n monthsShort:\n 'जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार'.split(\n '_'\n ),\n weekdaysShort: 'आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.'.split('_'),\n weekdaysMin: 'आ._सो._मं._बु._बि._शु._श.'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'Aको h:mm बजे',\n LTS: 'Aको h:mm:ss बजे',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, Aको h:mm बजे',\n LLLL: 'dddd, D MMMM YYYY, Aको h:mm बजे',\n },\n preparse: function (string) {\n return string.replace(/[१२३४५६७८९०]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /राति|बिहान|दिउँसो|साँझ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'राति') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'बिहान') {\n return hour;\n } else if (meridiem === 'दिउँसो') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'साँझ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 3) {\n return 'राति';\n } else if (hour < 12) {\n return 'बिहान';\n } else if (hour < 16) {\n return 'दिउँसो';\n } else if (hour < 20) {\n return 'साँझ';\n } else {\n return 'राति';\n }\n },\n calendar: {\n sameDay: '[आज] LT',\n nextDay: '[भोलि] LT',\n nextWeek: '[आउँदो] dddd[,] LT',\n lastDay: '[हिजो] LT',\n lastWeek: '[गएको] dddd[,] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%sमा',\n past: '%s अगाडि',\n s: 'केही क्षण',\n ss: '%d सेकेण्ड',\n m: 'एक मिनेट',\n mm: '%d मिनेट',\n h: 'एक घण्टा',\n hh: '%d घण्टा',\n d: 'एक दिन',\n dd: '%d दिन',\n M: 'एक महिना',\n MM: '%d महिना',\n y: 'एक बर्ष',\n yy: '%d बर्ष',\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return ne;\n\n})));\n","//! moment.js locale configuration\n//! locale : Dutch (Belgium) [nl-be]\n//! author : Joris Röling : https://github.com/jorisroling\n//! author : Jacob Middag : https://github.com/middagj\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortWithDots =\n 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'),\n monthsShortWithoutDots =\n 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n monthsParse = [\n /^jan/i,\n /^feb/i,\n /^maart|mrt.?$/i,\n /^apr/i,\n /^mei$/i,\n /^jun[i.]?$/i,\n /^jul[i.]?$/i,\n /^aug/i,\n /^sep/i,\n /^okt/i,\n /^nov/i,\n /^dec/i,\n ],\n monthsRegex =\n /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\\.?|feb\\.?|mrt\\.?|apr\\.?|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i;\n\n var nlBe = moment.defineLocale('nl-be', {\n months: 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,\n monthsShortStrictRegex:\n /^(jan\\.?|feb\\.?|mrt\\.?|apr\\.?|mei|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i,\n\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n weekdays:\n 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'),\n weekdaysShort: 'zo._ma._di._wo._do._vr._za.'.split('_'),\n weekdaysMin: 'zo_ma_di_wo_do_vr_za'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[vandaag om] LT',\n nextDay: '[morgen om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[gisteren om] LT',\n lastWeek: '[afgelopen] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'over %s',\n past: '%s geleden',\n s: 'een paar seconden',\n ss: '%d seconden',\n m: 'één minuut',\n mm: '%d minuten',\n h: 'één uur',\n hh: '%d uur',\n d: 'één dag',\n dd: '%d dagen',\n M: 'één maand',\n MM: '%d maanden',\n y: 'één jaar',\n yy: '%d jaar',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n );\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return nlBe;\n\n})));\n","//! moment.js locale configuration\n//! locale : Dutch [nl]\n//! author : Joris Röling : https://github.com/jorisroling\n//! author : Jacob Middag : https://github.com/middagj\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortWithDots =\n 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'),\n monthsShortWithoutDots =\n 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n monthsParse = [\n /^jan/i,\n /^feb/i,\n /^maart|mrt.?$/i,\n /^apr/i,\n /^mei$/i,\n /^jun[i.]?$/i,\n /^jul[i.]?$/i,\n /^aug/i,\n /^sep/i,\n /^okt/i,\n /^nov/i,\n /^dec/i,\n ],\n monthsRegex =\n /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\\.?|feb\\.?|mrt\\.?|apr\\.?|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i;\n\n var nl = moment.defineLocale('nl', {\n months: 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,\n monthsShortStrictRegex:\n /^(jan\\.?|feb\\.?|mrt\\.?|apr\\.?|mei|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i,\n\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n weekdays:\n 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'),\n weekdaysShort: 'zo._ma._di._wo._do._vr._za.'.split('_'),\n weekdaysMin: 'zo_ma_di_wo_do_vr_za'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[vandaag om] LT',\n nextDay: '[morgen om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[gisteren om] LT',\n lastWeek: '[afgelopen] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'over %s',\n past: '%s geleden',\n s: 'een paar seconden',\n ss: '%d seconden',\n m: 'één minuut',\n mm: '%d minuten',\n h: 'één uur',\n hh: '%d uur',\n d: 'één dag',\n dd: '%d dagen',\n w: 'één week',\n ww: '%d weken',\n M: 'één maand',\n MM: '%d maanden',\n y: 'één jaar',\n yy: '%d jaar',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n );\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return nl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Nynorsk [nn]\n//! authors : https://github.com/mechuwind\n//! Stephen Ramthun : https://github.com/stephenramthun\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var nn = moment.defineLocale('nn', {\n months: 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.'.split('_'),\n monthsParseExact: true,\n weekdays: 'sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag'.split('_'),\n weekdaysShort: 'su._må._ty._on._to._fr._lau.'.split('_'),\n weekdaysMin: 'su_må_ty_on_to_fr_la'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY [kl.] H:mm',\n LLLL: 'dddd D. MMMM YYYY [kl.] HH:mm',\n },\n calendar: {\n sameDay: '[I dag klokka] LT',\n nextDay: '[I morgon klokka] LT',\n nextWeek: 'dddd [klokka] LT',\n lastDay: '[I går klokka] LT',\n lastWeek: '[Føregåande] dddd [klokka] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: '%s sidan',\n s: 'nokre sekund',\n ss: '%d sekund',\n m: 'eit minutt',\n mm: '%d minutt',\n h: 'ein time',\n hh: '%d timar',\n d: 'ein dag',\n dd: '%d dagar',\n w: 'ei veke',\n ww: '%d veker',\n M: 'ein månad',\n MM: '%d månader',\n y: 'eit år',\n yy: '%d år',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return nn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Occitan, lengadocian dialecte [oc-lnc]\n//! author : Quentin PAGÈS : https://github.com/Quenty31\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ocLnc = moment.defineLocale('oc-lnc', {\n months: {\n standalone:\n 'genièr_febrièr_març_abril_mai_junh_julhet_agost_setembre_octòbre_novembre_decembre'.split(\n '_'\n ),\n format: \"de genièr_de febrièr_de març_d'abril_de mai_de junh_de julhet_d'agost_de setembre_d'octòbre_de novembre_de decembre\".split(\n '_'\n ),\n isFormat: /D[oD]?(\\s)+MMMM/,\n },\n monthsShort:\n 'gen._febr._març_abr._mai_junh_julh._ago._set._oct._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'dimenge_diluns_dimars_dimècres_dijòus_divendres_dissabte'.split(\n '_'\n ),\n weekdaysShort: 'dg._dl._dm._dc._dj._dv._ds.'.split('_'),\n weekdaysMin: 'dg_dl_dm_dc_dj_dv_ds'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM [de] YYYY',\n ll: 'D MMM YYYY',\n LLL: 'D MMMM [de] YYYY [a] H:mm',\n lll: 'D MMM YYYY, H:mm',\n LLLL: 'dddd D MMMM [de] YYYY [a] H:mm',\n llll: 'ddd D MMM YYYY, H:mm',\n },\n calendar: {\n sameDay: '[uèi a] LT',\n nextDay: '[deman a] LT',\n nextWeek: 'dddd [a] LT',\n lastDay: '[ièr a] LT',\n lastWeek: 'dddd [passat a] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: \"d'aquí %s\",\n past: 'fa %s',\n s: 'unas segondas',\n ss: '%d segondas',\n m: 'una minuta',\n mm: '%d minutas',\n h: 'una ora',\n hh: '%d oras',\n d: 'un jorn',\n dd: '%d jorns',\n M: 'un mes',\n MM: '%d meses',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(r|n|t|è|a)/,\n ordinal: function (number, period) {\n var output =\n number === 1\n ? 'r'\n : number === 2\n ? 'n'\n : number === 3\n ? 'r'\n : number === 4\n ? 't'\n : 'è';\n if (period === 'w' || period === 'W') {\n output = 'a';\n }\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4,\n },\n });\n\n return ocLnc;\n\n})));\n","//! moment.js locale configuration\n//! locale : Punjabi (India) [pa-in]\n//! author : Harpreet Singh : https://github.com/harpreetkhalsagtbit\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '੧',\n 2: '੨',\n 3: '੩',\n 4: '੪',\n 5: '੫',\n 6: '੬',\n 7: '੭',\n 8: '੮',\n 9: '੯',\n 0: '੦',\n },\n numberMap = {\n '੧': '1',\n '੨': '2',\n '੩': '3',\n '੪': '4',\n '੫': '5',\n '੬': '6',\n '੭': '7',\n '੮': '8',\n '੯': '9',\n '੦': '0',\n };\n\n var paIn = moment.defineLocale('pa-in', {\n // There are months name as per Nanakshahi Calendar but they are not used as rigidly in modern Punjabi.\n months: 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split(\n '_'\n ),\n monthsShort:\n 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split(\n '_'\n ),\n weekdays: 'ਐਤਵਾਰ_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬੁਧਵਾਰ_ਵੀਰਵਾਰ_ਸ਼ੁੱਕਰਵਾਰ_ਸ਼ਨੀਚਰਵਾਰ'.split(\n '_'\n ),\n weekdaysShort: 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'),\n weekdaysMin: 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm ਵਜੇ',\n LTS: 'A h:mm:ss ਵਜੇ',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm ਵਜੇ',\n LLLL: 'dddd, D MMMM YYYY, A h:mm ਵਜੇ',\n },\n calendar: {\n sameDay: '[ਅਜ] LT',\n nextDay: '[ਕਲ] LT',\n nextWeek: '[ਅਗਲਾ] dddd, LT',\n lastDay: '[ਕਲ] LT',\n lastWeek: '[ਪਿਛਲੇ] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ਵਿੱਚ',\n past: '%s ਪਿਛਲੇ',\n s: 'ਕੁਝ ਸਕਿੰਟ',\n ss: '%d ਸਕਿੰਟ',\n m: 'ਇਕ ਮਿੰਟ',\n mm: '%d ਮਿੰਟ',\n h: 'ਇੱਕ ਘੰਟਾ',\n hh: '%d ਘੰਟੇ',\n d: 'ਇੱਕ ਦਿਨ',\n dd: '%d ਦਿਨ',\n M: 'ਇੱਕ ਮਹੀਨਾ',\n MM: '%d ਮਹੀਨੇ',\n y: 'ਇੱਕ ਸਾਲ',\n yy: '%d ਸਾਲ',\n },\n preparse: function (string) {\n return string.replace(/[੧੨੩੪੫੬੭੮੯੦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Punjabi notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Punjabi.\n meridiemParse: /ਰਾਤ|ਸਵੇਰ|ਦੁਪਹਿਰ|ਸ਼ਾਮ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ਰਾਤ') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ਸਵੇਰ') {\n return hour;\n } else if (meridiem === 'ਦੁਪਹਿਰ') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'ਸ਼ਾਮ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ਰਾਤ';\n } else if (hour < 10) {\n return 'ਸਵੇਰ';\n } else if (hour < 17) {\n return 'ਦੁਪਹਿਰ';\n } else if (hour < 20) {\n return 'ਸ਼ਾਮ';\n } else {\n return 'ਰਾਤ';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return paIn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Polish [pl]\n//! author : Rafal Hirsz : https://github.com/evoL\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsNominative =\n 'styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień'.split(\n '_'\n ),\n monthsSubjective =\n 'stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia'.split(\n '_'\n ),\n monthsParse = [\n /^sty/i,\n /^lut/i,\n /^mar/i,\n /^kwi/i,\n /^maj/i,\n /^cze/i,\n /^lip/i,\n /^sie/i,\n /^wrz/i,\n /^paź/i,\n /^lis/i,\n /^gru/i,\n ];\n function plural(n) {\n return n % 10 < 5 && n % 10 > 1 && ~~(n / 10) % 10 !== 1;\n }\n function translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n return result + (plural(number) ? 'sekundy' : 'sekund');\n case 'm':\n return withoutSuffix ? 'minuta' : 'minutę';\n case 'mm':\n return result + (plural(number) ? 'minuty' : 'minut');\n case 'h':\n return withoutSuffix ? 'godzina' : 'godzinę';\n case 'hh':\n return result + (plural(number) ? 'godziny' : 'godzin');\n case 'ww':\n return result + (plural(number) ? 'tygodnie' : 'tygodni');\n case 'MM':\n return result + (plural(number) ? 'miesiące' : 'miesięcy');\n case 'yy':\n return result + (plural(number) ? 'lata' : 'lat');\n }\n }\n\n var pl = moment.defineLocale('pl', {\n months: function (momentToFormat, format) {\n if (!momentToFormat) {\n return monthsNominative;\n } else if (/D MMMM/.test(format)) {\n return monthsSubjective[momentToFormat.month()];\n } else {\n return monthsNominative[momentToFormat.month()];\n }\n },\n monthsShort: 'sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru'.split('_'),\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays:\n 'niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota'.split('_'),\n weekdaysShort: 'ndz_pon_wt_śr_czw_pt_sob'.split('_'),\n weekdaysMin: 'Nd_Pn_Wt_Śr_Cz_Pt_So'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Dziś o] LT',\n nextDay: '[Jutro o] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[W niedzielę o] LT';\n\n case 2:\n return '[We wtorek o] LT';\n\n case 3:\n return '[W środę o] LT';\n\n case 6:\n return '[W sobotę o] LT';\n\n default:\n return '[W] dddd [o] LT';\n }\n },\n lastDay: '[Wczoraj o] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[W zeszłą niedzielę o] LT';\n case 3:\n return '[W zeszłą środę o] LT';\n case 6:\n return '[W zeszłą sobotę o] LT';\n default:\n return '[W zeszły] dddd [o] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: '%s temu',\n s: 'kilka sekund',\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: '1 dzień',\n dd: '%d dni',\n w: 'tydzień',\n ww: translate,\n M: 'miesiąc',\n MM: translate,\n y: 'rok',\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return pl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Portuguese (Brazil) [pt-br]\n//! author : Caio Ribeiro Pereira : https://github.com/caio-ribeiro-pereira\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ptBr = moment.defineLocale('pt-br', {\n months: 'janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split(\n '_'\n ),\n monthsShort: 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'),\n weekdays:\n 'domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado'.split(\n '_'\n ),\n weekdaysShort: 'dom_seg_ter_qua_qui_sex_sáb'.split('_'),\n weekdaysMin: 'do_2ª_3ª_4ª_5ª_6ª_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY [às] HH:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY [às] HH:mm',\n },\n calendar: {\n sameDay: '[Hoje às] LT',\n nextDay: '[Amanhã às] LT',\n nextWeek: 'dddd [às] LT',\n lastDay: '[Ontem às] LT',\n lastWeek: function () {\n return this.day() === 0 || this.day() === 6\n ? '[Último] dddd [às] LT' // Saturday + Sunday\n : '[Última] dddd [às] LT'; // Monday - Friday\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'em %s',\n past: 'há %s',\n s: 'poucos segundos',\n ss: '%d segundos',\n m: 'um minuto',\n mm: '%d minutos',\n h: 'uma hora',\n hh: '%d horas',\n d: 'um dia',\n dd: '%d dias',\n M: 'um mês',\n MM: '%d meses',\n y: 'um ano',\n yy: '%d anos',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n invalidDate: 'Data inválida',\n });\n\n return ptBr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Portuguese [pt]\n//! author : Jefferson : https://github.com/jalex79\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var pt = moment.defineLocale('pt', {\n months: 'janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split(\n '_'\n ),\n monthsShort: 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'),\n weekdays:\n 'Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado'.split(\n '_'\n ),\n weekdaysShort: 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'),\n weekdaysMin: 'Do_2ª_3ª_4ª_5ª_6ª_Sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY HH:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Hoje às] LT',\n nextDay: '[Amanhã às] LT',\n nextWeek: 'dddd [às] LT',\n lastDay: '[Ontem às] LT',\n lastWeek: function () {\n return this.day() === 0 || this.day() === 6\n ? '[Último] dddd [às] LT' // Saturday + Sunday\n : '[Última] dddd [às] LT'; // Monday - Friday\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'em %s',\n past: 'há %s',\n s: 'segundos',\n ss: '%d segundos',\n m: 'um minuto',\n mm: '%d minutos',\n h: 'uma hora',\n hh: '%d horas',\n d: 'um dia',\n dd: '%d dias',\n w: 'uma semana',\n ww: '%d semanas',\n M: 'um mês',\n MM: '%d meses',\n y: 'um ano',\n yy: '%d anos',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return pt;\n\n})));\n","//! moment.js locale configuration\n//! locale : Romanian [ro]\n//! author : Vlad Gurdiga : https://github.com/gurdiga\n//! author : Valentin Agachi : https://github.com/avaly\n//! author : Emanuel Cepoi : https://github.com/cepem\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: 'secunde',\n mm: 'minute',\n hh: 'ore',\n dd: 'zile',\n ww: 'săptămâni',\n MM: 'luni',\n yy: 'ani',\n },\n separator = ' ';\n if (number % 100 >= 20 || (number >= 100 && number % 100 === 0)) {\n separator = ' de ';\n }\n return number + separator + format[key];\n }\n\n var ro = moment.defineLocale('ro', {\n months: 'ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie'.split(\n '_'\n ),\n monthsShort:\n 'ian._feb._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'duminică_luni_marți_miercuri_joi_vineri_sâmbătă'.split('_'),\n weekdaysShort: 'Dum_Lun_Mar_Mie_Joi_Vin_Sâm'.split('_'),\n weekdaysMin: 'Du_Lu_Ma_Mi_Jo_Vi_Sâ'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY H:mm',\n LLLL: 'dddd, D MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[azi la] LT',\n nextDay: '[mâine la] LT',\n nextWeek: 'dddd [la] LT',\n lastDay: '[ieri la] LT',\n lastWeek: '[fosta] dddd [la] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'peste %s',\n past: '%s în urmă',\n s: 'câteva secunde',\n ss: relativeTimeWithPlural,\n m: 'un minut',\n mm: relativeTimeWithPlural,\n h: 'o oră',\n hh: relativeTimeWithPlural,\n d: 'o zi',\n dd: relativeTimeWithPlural,\n w: 'o săptămână',\n ww: relativeTimeWithPlural,\n M: 'o lună',\n MM: relativeTimeWithPlural,\n y: 'un an',\n yy: relativeTimeWithPlural,\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return ro;\n\n})));\n","//! moment.js locale configuration\n//! locale : Russian [ru]\n//! author : Viktorminator : https://github.com/Viktorminator\n//! author : Menelion Elensúle : https://github.com/Oire\n//! author : Коренберг Марк : https://github.com/socketpair\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11\n ? forms[0]\n : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20)\n ? forms[1]\n : forms[2];\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд',\n mm: withoutSuffix ? 'минута_минуты_минут' : 'минуту_минуты_минут',\n hh: 'час_часа_часов',\n dd: 'день_дня_дней',\n ww: 'неделя_недели_недель',\n MM: 'месяц_месяца_месяцев',\n yy: 'год_года_лет',\n };\n if (key === 'm') {\n return withoutSuffix ? 'минута' : 'минуту';\n } else {\n return number + ' ' + plural(format[key], +number);\n }\n }\n var monthsParse = [\n /^янв/i,\n /^фев/i,\n /^мар/i,\n /^апр/i,\n /^ма[йя]/i,\n /^июн/i,\n /^июл/i,\n /^авг/i,\n /^сен/i,\n /^окт/i,\n /^ноя/i,\n /^дек/i,\n ];\n\n // http://new.gramota.ru/spravka/rules/139-prop : § 103\n // Сокращения месяцев: http://new.gramota.ru/spravka/buro/search-answer?s=242637\n // CLDR data: http://www.unicode.org/cldr/charts/28/summary/ru.html#1753\n var ru = moment.defineLocale('ru', {\n months: {\n format: 'января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря'.split(\n '_'\n ),\n standalone:\n 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split(\n '_'\n ),\n },\n monthsShort: {\n // по CLDR именно \"июл.\" и \"июн.\", но какой смысл менять букву на точку?\n format: 'янв._февр._мар._апр._мая_июня_июля_авг._сент._окт._нояб._дек.'.split(\n '_'\n ),\n standalone:\n 'янв._февр._март_апр._май_июнь_июль_авг._сент._окт._нояб._дек.'.split(\n '_'\n ),\n },\n weekdays: {\n standalone:\n 'воскресенье_понедельник_вторник_среда_четверг_пятница_суббота'.split(\n '_'\n ),\n format: 'воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу'.split(\n '_'\n ),\n isFormat: /\\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?] ?dddd/,\n },\n weekdaysShort: 'вс_пн_вт_ср_чт_пт_сб'.split('_'),\n weekdaysMin: 'вс_пн_вт_ср_чт_пт_сб'.split('_'),\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n // полные названия с падежами, по три буквы, для некоторых, по 4 буквы, сокращения с точкой и без точки\n monthsRegex:\n /^(январ[ья]|янв\\.?|феврал[ья]|февр?\\.?|марта?|мар\\.?|апрел[ья]|апр\\.?|ма[йя]|июн[ья]|июн\\.?|июл[ья]|июл\\.?|августа?|авг\\.?|сентябр[ья]|сент?\\.?|октябр[ья]|окт\\.?|ноябр[ья]|нояб?\\.?|декабр[ья]|дек\\.?)/i,\n\n // копия предыдущего\n monthsShortRegex:\n /^(январ[ья]|янв\\.?|феврал[ья]|февр?\\.?|марта?|мар\\.?|апрел[ья]|апр\\.?|ма[йя]|июн[ья]|июн\\.?|июл[ья]|июл\\.?|августа?|авг\\.?|сентябр[ья]|сент?\\.?|октябр[ья]|окт\\.?|ноябр[ья]|нояб?\\.?|декабр[ья]|дек\\.?)/i,\n\n // полные названия с падежами\n monthsStrictRegex:\n /^(январ[яь]|феврал[яь]|марта?|апрел[яь]|ма[яй]|июн[яь]|июл[яь]|августа?|сентябр[яь]|октябр[яь]|ноябр[яь]|декабр[яь])/i,\n\n // Выражение, которое соответствует только сокращённым формам\n monthsShortStrictRegex:\n /^(янв\\.|февр?\\.|мар[т.]|апр\\.|ма[яй]|июн[ья.]|июл[ья.]|авг\\.|сент?\\.|окт\\.|нояб?\\.|дек\\.)/i,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY г.',\n LLL: 'D MMMM YYYY г., H:mm',\n LLLL: 'dddd, D MMMM YYYY г., H:mm',\n },\n calendar: {\n sameDay: '[Сегодня, в] LT',\n nextDay: '[Завтра, в] LT',\n lastDay: '[Вчера, в] LT',\n nextWeek: function (now) {\n if (now.week() !== this.week()) {\n switch (this.day()) {\n case 0:\n return '[В следующее] dddd, [в] LT';\n case 1:\n case 2:\n case 4:\n return '[В следующий] dddd, [в] LT';\n case 3:\n case 5:\n case 6:\n return '[В следующую] dddd, [в] LT';\n }\n } else {\n if (this.day() === 2) {\n return '[Во] dddd, [в] LT';\n } else {\n return '[В] dddd, [в] LT';\n }\n }\n },\n lastWeek: function (now) {\n if (now.week() !== this.week()) {\n switch (this.day()) {\n case 0:\n return '[В прошлое] dddd, [в] LT';\n case 1:\n case 2:\n case 4:\n return '[В прошлый] dddd, [в] LT';\n case 3:\n case 5:\n case 6:\n return '[В прошлую] dddd, [в] LT';\n }\n } else {\n if (this.day() === 2) {\n return '[Во] dddd, [в] LT';\n } else {\n return '[В] dddd, [в] LT';\n }\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'через %s',\n past: '%s назад',\n s: 'несколько секунд',\n ss: relativeTimeWithPlural,\n m: relativeTimeWithPlural,\n mm: relativeTimeWithPlural,\n h: 'час',\n hh: relativeTimeWithPlural,\n d: 'день',\n dd: relativeTimeWithPlural,\n w: 'неделя',\n ww: relativeTimeWithPlural,\n M: 'месяц',\n MM: relativeTimeWithPlural,\n y: 'год',\n yy: relativeTimeWithPlural,\n },\n meridiemParse: /ночи|утра|дня|вечера/i,\n isPM: function (input) {\n return /^(дня|вечера)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночи';\n } else if (hour < 12) {\n return 'утра';\n } else if (hour < 17) {\n return 'дня';\n } else {\n return 'вечера';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(й|го|я)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n return number + '-й';\n case 'D':\n return number + '-го';\n case 'w':\n case 'W':\n return number + '-я';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ru;\n\n})));\n","//! moment.js locale configuration\n//! locale : Sindhi [sd]\n//! author : Narain Sagar : https://github.com/narainsagar\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'جنوري',\n 'فيبروري',\n 'مارچ',\n 'اپريل',\n 'مئي',\n 'جون',\n 'جولاءِ',\n 'آگسٽ',\n 'سيپٽمبر',\n 'آڪٽوبر',\n 'نومبر',\n 'ڊسمبر',\n ],\n days = ['آچر', 'سومر', 'اڱارو', 'اربع', 'خميس', 'جمع', 'ڇنڇر'];\n\n var sd = moment.defineLocale('sd', {\n months: months,\n monthsShort: months,\n weekdays: days,\n weekdaysShort: days,\n weekdaysMin: days,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd، D MMMM YYYY HH:mm',\n },\n meridiemParse: /صبح|شام/,\n isPM: function (input) {\n return 'شام' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'صبح';\n }\n return 'شام';\n },\n calendar: {\n sameDay: '[اڄ] LT',\n nextDay: '[سڀاڻي] LT',\n nextWeek: 'dddd [اڳين هفتي تي] LT',\n lastDay: '[ڪالهه] LT',\n lastWeek: '[گزريل هفتي] dddd [تي] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s پوء',\n past: '%s اڳ',\n s: 'چند سيڪنڊ',\n ss: '%d سيڪنڊ',\n m: 'هڪ منٽ',\n mm: '%d منٽ',\n h: 'هڪ ڪلاڪ',\n hh: '%d ڪلاڪ',\n d: 'هڪ ڏينهن',\n dd: '%d ڏينهن',\n M: 'هڪ مهينو',\n MM: '%d مهينا',\n y: 'هڪ سال',\n yy: '%d سال',\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return sd;\n\n})));\n","//! moment.js locale configuration\n//! locale : Northern Sami [se]\n//! authors : Bård Rolstad Henriksen : https://github.com/karamell\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var se = moment.defineLocale('se', {\n months: 'ođđajagemánnu_guovvamánnu_njukčamánnu_cuoŋománnu_miessemánnu_geassemánnu_suoidnemánnu_borgemánnu_čakčamánnu_golggotmánnu_skábmamánnu_juovlamánnu'.split(\n '_'\n ),\n monthsShort:\n 'ođđj_guov_njuk_cuo_mies_geas_suoi_borg_čakč_golg_skáb_juov'.split('_'),\n weekdays:\n 'sotnabeaivi_vuossárga_maŋŋebárga_gaskavahkku_duorastat_bearjadat_lávvardat'.split(\n '_'\n ),\n weekdaysShort: 'sotn_vuos_maŋ_gask_duor_bear_láv'.split('_'),\n weekdaysMin: 's_v_m_g_d_b_L'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'MMMM D. [b.] YYYY',\n LLL: 'MMMM D. [b.] YYYY [ti.] HH:mm',\n LLLL: 'dddd, MMMM D. [b.] YYYY [ti.] HH:mm',\n },\n calendar: {\n sameDay: '[otne ti] LT',\n nextDay: '[ihttin ti] LT',\n nextWeek: 'dddd [ti] LT',\n lastDay: '[ikte ti] LT',\n lastWeek: '[ovddit] dddd [ti] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s geažes',\n past: 'maŋit %s',\n s: 'moadde sekunddat',\n ss: '%d sekunddat',\n m: 'okta minuhta',\n mm: '%d minuhtat',\n h: 'okta diimmu',\n hh: '%d diimmut',\n d: 'okta beaivi',\n dd: '%d beaivvit',\n M: 'okta mánnu',\n MM: '%d mánut',\n y: 'okta jahki',\n yy: '%d jagit',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return se;\n\n})));\n","//! moment.js locale configuration\n//! locale : Sinhalese [si]\n//! author : Sampath Sitinamaluwa : https://github.com/sampathsris\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n /*jshint -W100*/\n var si = moment.defineLocale('si', {\n months: 'ජනවාරි_පෙබරවාරි_මාර්තු_අප්‍රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්'.split(\n '_'\n ),\n monthsShort: 'ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ'.split(\n '_'\n ),\n weekdays:\n 'ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්‍රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා'.split(\n '_'\n ),\n weekdaysShort: 'ඉරි_සඳු_අඟ_බදා_බ්‍රහ_සිකු_සෙන'.split('_'),\n weekdaysMin: 'ඉ_ස_අ_බ_බ්‍ර_සි_සෙ'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'a h:mm',\n LTS: 'a h:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY MMMM D',\n LLL: 'YYYY MMMM D, a h:mm',\n LLLL: 'YYYY MMMM D [වැනි] dddd, a h:mm:ss',\n },\n calendar: {\n sameDay: '[අද] LT[ට]',\n nextDay: '[හෙට] LT[ට]',\n nextWeek: 'dddd LT[ට]',\n lastDay: '[ඊයේ] LT[ට]',\n lastWeek: '[පසුගිය] dddd LT[ට]',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%sකින්',\n past: '%sකට පෙර',\n s: 'තත්පර කිහිපය',\n ss: 'තත්පර %d',\n m: 'මිනිත්තුව',\n mm: 'මිනිත්තු %d',\n h: 'පැය',\n hh: 'පැය %d',\n d: 'දිනය',\n dd: 'දින %d',\n M: 'මාසය',\n MM: 'මාස %d',\n y: 'වසර',\n yy: 'වසර %d',\n },\n dayOfMonthOrdinalParse: /\\d{1,2} වැනි/,\n ordinal: function (number) {\n return number + ' වැනි';\n },\n meridiemParse: /පෙර වරු|පස් වරු|පෙ.ව|ප.ව./,\n isPM: function (input) {\n return input === 'ප.ව.' || input === 'පස් වරු';\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'ප.ව.' : 'පස් වරු';\n } else {\n return isLower ? 'පෙ.ව.' : 'පෙර වරු';\n }\n },\n });\n\n return si;\n\n})));\n","//! moment.js locale configuration\n//! locale : Slovak [sk]\n//! author : Martin Minka : https://github.com/k2s\n//! based on work of petrbela : https://github.com/petrbela\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months =\n 'január_február_marec_apríl_máj_jún_júl_august_september_október_november_december'.split(\n '_'\n ),\n monthsShort = 'jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec'.split('_');\n function plural(n) {\n return n > 1 && n < 5;\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's': // a few seconds / in a few seconds / a few seconds ago\n return withoutSuffix || isFuture ? 'pár sekúnd' : 'pár sekundami';\n case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'sekundy' : 'sekúnd');\n } else {\n return result + 'sekundami';\n }\n case 'm': // a minute / in a minute / a minute ago\n return withoutSuffix ? 'minúta' : isFuture ? 'minútu' : 'minútou';\n case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'minúty' : 'minút');\n } else {\n return result + 'minútami';\n }\n case 'h': // an hour / in an hour / an hour ago\n return withoutSuffix ? 'hodina' : isFuture ? 'hodinu' : 'hodinou';\n case 'hh': // 9 hours / in 9 hours / 9 hours ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'hodiny' : 'hodín');\n } else {\n return result + 'hodinami';\n }\n case 'd': // a day / in a day / a day ago\n return withoutSuffix || isFuture ? 'deň' : 'dňom';\n case 'dd': // 9 days / in 9 days / 9 days ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'dni' : 'dní');\n } else {\n return result + 'dňami';\n }\n case 'M': // a month / in a month / a month ago\n return withoutSuffix || isFuture ? 'mesiac' : 'mesiacom';\n case 'MM': // 9 months / in 9 months / 9 months ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'mesiace' : 'mesiacov');\n } else {\n return result + 'mesiacmi';\n }\n case 'y': // a year / in a year / a year ago\n return withoutSuffix || isFuture ? 'rok' : 'rokom';\n case 'yy': // 9 years / in 9 years / 9 years ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'roky' : 'rokov');\n } else {\n return result + 'rokmi';\n }\n }\n }\n\n var sk = moment.defineLocale('sk', {\n months: months,\n monthsShort: monthsShort,\n weekdays: 'nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota'.split('_'),\n weekdaysShort: 'ne_po_ut_st_št_pi_so'.split('_'),\n weekdaysMin: 'ne_po_ut_st_št_pi_so'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[dnes o] LT',\n nextDay: '[zajtra o] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[v nedeľu o] LT';\n case 1:\n case 2:\n return '[v] dddd [o] LT';\n case 3:\n return '[v stredu o] LT';\n case 4:\n return '[vo štvrtok o] LT';\n case 5:\n return '[v piatok o] LT';\n case 6:\n return '[v sobotu o] LT';\n }\n },\n lastDay: '[včera o] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[minulú nedeľu o] LT';\n case 1:\n case 2:\n return '[minulý] dddd [o] LT';\n case 3:\n return '[minulú stredu o] LT';\n case 4:\n case 5:\n return '[minulý] dddd [o] LT';\n case 6:\n return '[minulú sobotu o] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'pred %s',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return sk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Slovenian [sl]\n//! author : Robert Sedovšek : https://github.com/sedovsek\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's':\n return withoutSuffix || isFuture\n ? 'nekaj sekund'\n : 'nekaj sekundami';\n case 'ss':\n if (number === 1) {\n result += withoutSuffix ? 'sekundo' : 'sekundi';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'sekundi' : 'sekundah';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'sekunde' : 'sekundah';\n } else {\n result += 'sekund';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'ena minuta' : 'eno minuto';\n case 'mm':\n if (number === 1) {\n result += withoutSuffix ? 'minuta' : 'minuto';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'minuti' : 'minutama';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'minute' : 'minutami';\n } else {\n result += withoutSuffix || isFuture ? 'minut' : 'minutami';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'ena ura' : 'eno uro';\n case 'hh':\n if (number === 1) {\n result += withoutSuffix ? 'ura' : 'uro';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'uri' : 'urama';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'ure' : 'urami';\n } else {\n result += withoutSuffix || isFuture ? 'ur' : 'urami';\n }\n return result;\n case 'd':\n return withoutSuffix || isFuture ? 'en dan' : 'enim dnem';\n case 'dd':\n if (number === 1) {\n result += withoutSuffix || isFuture ? 'dan' : 'dnem';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'dni' : 'dnevoma';\n } else {\n result += withoutSuffix || isFuture ? 'dni' : 'dnevi';\n }\n return result;\n case 'M':\n return withoutSuffix || isFuture ? 'en mesec' : 'enim mesecem';\n case 'MM':\n if (number === 1) {\n result += withoutSuffix || isFuture ? 'mesec' : 'mesecem';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'meseca' : 'mesecema';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'mesece' : 'meseci';\n } else {\n result += withoutSuffix || isFuture ? 'mesecev' : 'meseci';\n }\n return result;\n case 'y':\n return withoutSuffix || isFuture ? 'eno leto' : 'enim letom';\n case 'yy':\n if (number === 1) {\n result += withoutSuffix || isFuture ? 'leto' : 'letom';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'leti' : 'letoma';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'leta' : 'leti';\n } else {\n result += withoutSuffix || isFuture ? 'let' : 'leti';\n }\n return result;\n }\n }\n\n var sl = moment.defineLocale('sl', {\n months: 'januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota'.split('_'),\n weekdaysShort: 'ned._pon._tor._sre._čet._pet._sob.'.split('_'),\n weekdaysMin: 'ne_po_to_sr_če_pe_so'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD. MM. YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danes ob] LT',\n nextDay: '[jutri ob] LT',\n\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[v] [nedeljo] [ob] LT';\n case 3:\n return '[v] [sredo] [ob] LT';\n case 6:\n return '[v] [soboto] [ob] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[v] dddd [ob] LT';\n }\n },\n lastDay: '[včeraj ob] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[prejšnjo] [nedeljo] [ob] LT';\n case 3:\n return '[prejšnjo] [sredo] [ob] LT';\n case 6:\n return '[prejšnjo] [soboto] [ob] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[prejšnji] dddd [ob] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'čez %s',\n past: 'pred %s',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return sl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Albanian [sq]\n//! author : Flakërim Ismani : https://github.com/flakerimi\n//! author : Menelion Elensúle : https://github.com/Oire\n//! author : Oerd Cukalla : https://github.com/oerd\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var sq = moment.defineLocale('sq', {\n months: 'Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor'.split(\n '_'\n ),\n monthsShort: 'Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj'.split('_'),\n weekdays: 'E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë'.split(\n '_'\n ),\n weekdaysShort: 'Die_Hën_Mar_Mër_Enj_Pre_Sht'.split('_'),\n weekdaysMin: 'D_H_Ma_Më_E_P_Sh'.split('_'),\n weekdaysParseExact: true,\n meridiemParse: /PD|MD/,\n isPM: function (input) {\n return input.charAt(0) === 'M';\n },\n meridiem: function (hours, minutes, isLower) {\n return hours < 12 ? 'PD' : 'MD';\n },\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Sot në] LT',\n nextDay: '[Nesër në] LT',\n nextWeek: 'dddd [në] LT',\n lastDay: '[Dje në] LT',\n lastWeek: 'dddd [e kaluar në] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'në %s',\n past: '%s më parë',\n s: 'disa sekonda',\n ss: '%d sekonda',\n m: 'një minutë',\n mm: '%d minuta',\n h: 'një orë',\n hh: '%d orë',\n d: 'një ditë',\n dd: '%d ditë',\n M: 'një muaj',\n MM: '%d muaj',\n y: 'një vit',\n yy: '%d vite',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return sq;\n\n})));\n","//! moment.js locale configuration\n//! locale : Serbian Cyrillic [sr-cyrl]\n//! author : Milan Janačković : https://github.com/milan-j\n//! author : Stefan Crnjaković : https://github.com/crnjakovic\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var translator = {\n words: {\n //Different grammatical cases\n ss: ['секунда', 'секунде', 'секунди'],\n m: ['један минут', 'једног минута'],\n mm: ['минут', 'минута', 'минута'],\n h: ['један сат', 'једног сата'],\n hh: ['сат', 'сата', 'сати'],\n d: ['један дан', 'једног дана'],\n dd: ['дан', 'дана', 'дана'],\n M: ['један месец', 'једног месеца'],\n MM: ['месец', 'месеца', 'месеци'],\n y: ['једну годину', 'једне године'],\n yy: ['годину', 'године', 'година'],\n },\n correctGrammaticalCase: function (number, wordKey) {\n if (\n number % 10 >= 1 &&\n number % 10 <= 4 &&\n (number % 100 < 10 || number % 100 >= 20)\n ) {\n return number % 10 === 1 ? wordKey[0] : wordKey[1];\n }\n return wordKey[2];\n },\n translate: function (number, withoutSuffix, key, isFuture) {\n var wordKey = translator.words[key],\n word;\n\n if (key.length === 1) {\n // Nominativ\n if (key === 'y' && withoutSuffix) return 'једна година';\n return isFuture || withoutSuffix ? wordKey[0] : wordKey[1];\n }\n\n word = translator.correctGrammaticalCase(number, wordKey);\n // Nominativ\n if (key === 'yy' && withoutSuffix && word === 'годину') {\n return number + ' година';\n }\n\n return number + ' ' + word;\n },\n };\n\n var srCyrl = moment.defineLocale('sr-cyrl', {\n months: 'јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар'.split(\n '_'\n ),\n monthsShort:\n 'јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.'.split('_'),\n monthsParseExact: true,\n weekdays: 'недеља_понедељак_уторак_среда_четвртак_петак_субота'.split('_'),\n weekdaysShort: 'нед._пон._уто._сре._чет._пет._суб.'.split('_'),\n weekdaysMin: 'не_по_ут_ср_че_пе_су'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'D. M. YYYY.',\n LL: 'D. MMMM YYYY.',\n LLL: 'D. MMMM YYYY. H:mm',\n LLLL: 'dddd, D. MMMM YYYY. H:mm',\n },\n calendar: {\n sameDay: '[данас у] LT',\n nextDay: '[сутра у] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[у] [недељу] [у] LT';\n case 3:\n return '[у] [среду] [у] LT';\n case 6:\n return '[у] [суботу] [у] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[у] dddd [у] LT';\n }\n },\n lastDay: '[јуче у] LT',\n lastWeek: function () {\n var lastWeekDays = [\n '[прошле] [недеље] [у] LT',\n '[прошлог] [понедељка] [у] LT',\n '[прошлог] [уторка] [у] LT',\n '[прошле] [среде] [у] LT',\n '[прошлог] [четвртка] [у] LT',\n '[прошлог] [петка] [у] LT',\n '[прошле] [суботе] [у] LT',\n ];\n return lastWeekDays[this.day()];\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'за %s',\n past: 'пре %s',\n s: 'неколико секунди',\n ss: translator.translate,\n m: translator.translate,\n mm: translator.translate,\n h: translator.translate,\n hh: translator.translate,\n d: translator.translate,\n dd: translator.translate,\n M: translator.translate,\n MM: translator.translate,\n y: translator.translate,\n yy: translator.translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 1st is the first week of the year.\n },\n });\n\n return srCyrl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Serbian [sr]\n//! author : Milan Janačković : https://github.com/milan-j\n//! author : Stefan Crnjaković : https://github.com/crnjakovic\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var translator = {\n words: {\n //Different grammatical cases\n ss: ['sekunda', 'sekunde', 'sekundi'],\n m: ['jedan minut', 'jednog minuta'],\n mm: ['minut', 'minuta', 'minuta'],\n h: ['jedan sat', 'jednog sata'],\n hh: ['sat', 'sata', 'sati'],\n d: ['jedan dan', 'jednog dana'],\n dd: ['dan', 'dana', 'dana'],\n M: ['jedan mesec', 'jednog meseca'],\n MM: ['mesec', 'meseca', 'meseci'],\n y: ['jednu godinu', 'jedne godine'],\n yy: ['godinu', 'godine', 'godina'],\n },\n correctGrammaticalCase: function (number, wordKey) {\n if (\n number % 10 >= 1 &&\n number % 10 <= 4 &&\n (number % 100 < 10 || number % 100 >= 20)\n ) {\n return number % 10 === 1 ? wordKey[0] : wordKey[1];\n }\n return wordKey[2];\n },\n translate: function (number, withoutSuffix, key, isFuture) {\n var wordKey = translator.words[key],\n word;\n\n if (key.length === 1) {\n // Nominativ\n if (key === 'y' && withoutSuffix) return 'jedna godina';\n return isFuture || withoutSuffix ? wordKey[0] : wordKey[1];\n }\n\n word = translator.correctGrammaticalCase(number, wordKey);\n // Nominativ\n if (key === 'yy' && withoutSuffix && word === 'godinu') {\n return number + ' godina';\n }\n\n return number + ' ' + word;\n },\n };\n\n var sr = moment.defineLocale('sr', {\n months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'),\n monthsParseExact: true,\n weekdays: 'nedelja_ponedeljak_utorak_sreda_četvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sre._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'D. M. YYYY.',\n LL: 'D. MMMM YYYY.',\n LLL: 'D. MMMM YYYY. H:mm',\n LLLL: 'dddd, D. MMMM YYYY. H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sutra u] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedelju] [u] LT';\n case 3:\n return '[u] [sredu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[juče u] LT',\n lastWeek: function () {\n var lastWeekDays = [\n '[prošle] [nedelje] [u] LT',\n '[prošlog] [ponedeljka] [u] LT',\n '[prošlog] [utorka] [u] LT',\n '[prošle] [srede] [u] LT',\n '[prošlog] [četvrtka] [u] LT',\n '[prošlog] [petka] [u] LT',\n '[prošle] [subote] [u] LT',\n ];\n return lastWeekDays[this.day()];\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'pre %s',\n s: 'nekoliko sekundi',\n ss: translator.translate,\n m: translator.translate,\n mm: translator.translate,\n h: translator.translate,\n hh: translator.translate,\n d: translator.translate,\n dd: translator.translate,\n M: translator.translate,\n MM: translator.translate,\n y: translator.translate,\n yy: translator.translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return sr;\n\n})));\n","//! moment.js locale configuration\n//! locale : siSwati [ss]\n//! author : Nicolai Davies : https://github.com/nicolaidavies\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ss = moment.defineLocale('ss', {\n months: \"Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni\".split(\n '_'\n ),\n monthsShort: 'Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo'.split('_'),\n weekdays:\n 'Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo'.split(\n '_'\n ),\n weekdaysShort: 'Lis_Umb_Lsb_Les_Lsi_Lsh_Umg'.split('_'),\n weekdaysMin: 'Li_Us_Lb_Lt_Ls_Lh_Ug'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Namuhla nga] LT',\n nextDay: '[Kusasa nga] LT',\n nextWeek: 'dddd [nga] LT',\n lastDay: '[Itolo nga] LT',\n lastWeek: 'dddd [leliphelile] [nga] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'nga %s',\n past: 'wenteka nga %s',\n s: 'emizuzwana lomcane',\n ss: '%d mzuzwana',\n m: 'umzuzu',\n mm: '%d emizuzu',\n h: 'lihora',\n hh: '%d emahora',\n d: 'lilanga',\n dd: '%d emalanga',\n M: 'inyanga',\n MM: '%d tinyanga',\n y: 'umnyaka',\n yy: '%d iminyaka',\n },\n meridiemParse: /ekuseni|emini|entsambama|ebusuku/,\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'ekuseni';\n } else if (hours < 15) {\n return 'emini';\n } else if (hours < 19) {\n return 'entsambama';\n } else {\n return 'ebusuku';\n }\n },\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ekuseni') {\n return hour;\n } else if (meridiem === 'emini') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'entsambama' || meridiem === 'ebusuku') {\n if (hour === 0) {\n return 0;\n }\n return hour + 12;\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal: '%d',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ss;\n\n})));\n","//! moment.js locale configuration\n//! locale : Swedish [sv]\n//! author : Jens Alm : https://github.com/ulmus\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var sv = moment.defineLocale('sv', {\n months: 'januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n weekdays: 'söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag'.split('_'),\n weekdaysShort: 'sön_mån_tis_ons_tor_fre_lör'.split('_'),\n weekdaysMin: 'sö_må_ti_on_to_fr_lö'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [kl.] HH:mm',\n LLLL: 'dddd D MMMM YYYY [kl.] HH:mm',\n lll: 'D MMM YYYY HH:mm',\n llll: 'ddd D MMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Idag] LT',\n nextDay: '[Imorgon] LT',\n lastDay: '[Igår] LT',\n nextWeek: '[På] dddd LT',\n lastWeek: '[I] dddd[s] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: 'för %s sedan',\n s: 'några sekunder',\n ss: '%d sekunder',\n m: 'en minut',\n mm: '%d minuter',\n h: 'en timme',\n hh: '%d timmar',\n d: 'en dag',\n dd: '%d dagar',\n M: 'en månad',\n MM: '%d månader',\n y: 'ett år',\n yy: '%d år',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(\\:e|\\:a)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? ':e'\n : b === 1\n ? ':a'\n : b === 2\n ? ':a'\n : b === 3\n ? ':e'\n : ':e';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return sv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Swahili [sw]\n//! author : Fahad Kassim : https://github.com/fadsel\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var sw = moment.defineLocale('sw', {\n months: 'Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des'.split('_'),\n weekdays:\n 'Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi'.split(\n '_'\n ),\n weekdaysShort: 'Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos'.split('_'),\n weekdaysMin: 'J2_J3_J4_J5_Al_Ij_J1'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'hh:mm A',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[leo saa] LT',\n nextDay: '[kesho saa] LT',\n nextWeek: '[wiki ijayo] dddd [saat] LT',\n lastDay: '[jana] LT',\n lastWeek: '[wiki iliyopita] dddd [saat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s baadaye',\n past: 'tokea %s',\n s: 'hivi punde',\n ss: 'sekunde %d',\n m: 'dakika moja',\n mm: 'dakika %d',\n h: 'saa limoja',\n hh: 'masaa %d',\n d: 'siku moja',\n dd: 'siku %d',\n M: 'mwezi mmoja',\n MM: 'miezi %d',\n y: 'mwaka mmoja',\n yy: 'miaka %d',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return sw;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tamil [ta]\n//! author : Arjunkumar Krishnamoorthy : https://github.com/tk120404\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '௧',\n 2: '௨',\n 3: '௩',\n 4: '௪',\n 5: '௫',\n 6: '௬',\n 7: '௭',\n 8: '௮',\n 9: '௯',\n 0: '௦',\n },\n numberMap = {\n '௧': '1',\n '௨': '2',\n '௩': '3',\n '௪': '4',\n '௫': '5',\n '௬': '6',\n '௭': '7',\n '௮': '8',\n '௯': '9',\n '௦': '0',\n };\n\n var ta = moment.defineLocale('ta', {\n months: 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split(\n '_'\n ),\n monthsShort:\n 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split(\n '_'\n ),\n weekdays:\n 'ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை'.split(\n '_'\n ),\n weekdaysShort: 'ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி'.split(\n '_'\n ),\n weekdaysMin: 'ஞா_தி_செ_பு_வி_வெ_ச'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, HH:mm',\n LLLL: 'dddd, D MMMM YYYY, HH:mm',\n },\n calendar: {\n sameDay: '[இன்று] LT',\n nextDay: '[நாளை] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[நேற்று] LT',\n lastWeek: '[கடந்த வாரம்] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s இல்',\n past: '%s முன்',\n s: 'ஒரு சில விநாடிகள்',\n ss: '%d விநாடிகள்',\n m: 'ஒரு நிமிடம்',\n mm: '%d நிமிடங்கள்',\n h: 'ஒரு மணி நேரம்',\n hh: '%d மணி நேரம்',\n d: 'ஒரு நாள்',\n dd: '%d நாட்கள்',\n M: 'ஒரு மாதம்',\n MM: '%d மாதங்கள்',\n y: 'ஒரு வருடம்',\n yy: '%d ஆண்டுகள்',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}வது/,\n ordinal: function (number) {\n return number + 'வது';\n },\n preparse: function (string) {\n return string.replace(/[௧௨௩௪௫௬௭௮௯௦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // refer http://ta.wikipedia.org/s/1er1\n meridiemParse: /யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,\n meridiem: function (hour, minute, isLower) {\n if (hour < 2) {\n return ' யாமம்';\n } else if (hour < 6) {\n return ' வைகறை'; // வைகறை\n } else if (hour < 10) {\n return ' காலை'; // காலை\n } else if (hour < 14) {\n return ' நண்பகல்'; // நண்பகல்\n } else if (hour < 18) {\n return ' எற்பாடு'; // எற்பாடு\n } else if (hour < 22) {\n return ' மாலை'; // மாலை\n } else {\n return ' யாமம்';\n }\n },\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'யாமம்') {\n return hour < 2 ? hour : hour + 12;\n } else if (meridiem === 'வைகறை' || meridiem === 'காலை') {\n return hour;\n } else if (meridiem === 'நண்பகல்') {\n return hour >= 10 ? hour : hour + 12;\n } else {\n return hour + 12;\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return ta;\n\n})));\n","//! moment.js locale configuration\n//! locale : Telugu [te]\n//! author : Krishna Chaitanya Thota : https://github.com/kcthota\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var te = moment.defineLocale('te', {\n months: 'జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జులై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్'.split(\n '_'\n ),\n monthsShort:\n 'జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జులై_ఆగ._సెప్._అక్టో._నవ._డిసె.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం'.split(\n '_'\n ),\n weekdaysShort: 'ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని'.split('_'),\n weekdaysMin: 'ఆ_సో_మం_బు_గు_శు_శ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm',\n LTS: 'A h:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm',\n LLLL: 'dddd, D MMMM YYYY, A h:mm',\n },\n calendar: {\n sameDay: '[నేడు] LT',\n nextDay: '[రేపు] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[నిన్న] LT',\n lastWeek: '[గత] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s లో',\n past: '%s క్రితం',\n s: 'కొన్ని క్షణాలు',\n ss: '%d సెకన్లు',\n m: 'ఒక నిమిషం',\n mm: '%d నిమిషాలు',\n h: 'ఒక గంట',\n hh: '%d గంటలు',\n d: 'ఒక రోజు',\n dd: '%d రోజులు',\n M: 'ఒక నెల',\n MM: '%d నెలలు',\n y: 'ఒక సంవత్సరం',\n yy: '%d సంవత్సరాలు',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}వ/,\n ordinal: '%dవ',\n meridiemParse: /రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'రాత్రి') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ఉదయం') {\n return hour;\n } else if (meridiem === 'మధ్యాహ్నం') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'సాయంత్రం') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'రాత్రి';\n } else if (hour < 10) {\n return 'ఉదయం';\n } else if (hour < 17) {\n return 'మధ్యాహ్నం';\n } else if (hour < 20) {\n return 'సాయంత్రం';\n } else {\n return 'రాత్రి';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return te;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tetun Dili (East Timor) [tet]\n//! author : Joshua Brooks : https://github.com/joshbrooks\n//! author : Onorio De J. Afonso : https://github.com/marobo\n//! author : Sonia Simoes : https://github.com/soniasimoes\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var tet = moment.defineLocale('tet', {\n months: 'Janeiru_Fevereiru_Marsu_Abril_Maiu_Juñu_Jullu_Agustu_Setembru_Outubru_Novembru_Dezembru'.split(\n '_'\n ),\n monthsShort: 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'),\n weekdays: 'Domingu_Segunda_Tersa_Kuarta_Kinta_Sesta_Sabadu'.split('_'),\n weekdaysShort: 'Dom_Seg_Ters_Kua_Kint_Sest_Sab'.split('_'),\n weekdaysMin: 'Do_Seg_Te_Ku_Ki_Ses_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Ohin iha] LT',\n nextDay: '[Aban iha] LT',\n nextWeek: 'dddd [iha] LT',\n lastDay: '[Horiseik iha] LT',\n lastWeek: 'dddd [semana kotuk] [iha] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'iha %s',\n past: '%s liuba',\n s: 'segundu balun',\n ss: 'segundu %d',\n m: 'minutu ida',\n mm: 'minutu %d',\n h: 'oras ida',\n hh: 'oras %d',\n d: 'loron ida',\n dd: 'loron %d',\n M: 'fulan ida',\n MM: 'fulan %d',\n y: 'tinan ida',\n yy: 'tinan %d',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return tet;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tajik [tg]\n//! author : Orif N. Jr. : https://github.com/orif-jr\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 0: '-ум',\n 1: '-ум',\n 2: '-юм',\n 3: '-юм',\n 4: '-ум',\n 5: '-ум',\n 6: '-ум',\n 7: '-ум',\n 8: '-ум',\n 9: '-ум',\n 10: '-ум',\n 12: '-ум',\n 13: '-ум',\n 20: '-ум',\n 30: '-юм',\n 40: '-ум',\n 50: '-ум',\n 60: '-ум',\n 70: '-ум',\n 80: '-ум',\n 90: '-ум',\n 100: '-ум',\n };\n\n var tg = moment.defineLocale('tg', {\n months: {\n format: 'январи_феврали_марти_апрели_майи_июни_июли_августи_сентябри_октябри_ноябри_декабри'.split(\n '_'\n ),\n standalone:\n 'январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр'.split(\n '_'\n ),\n },\n monthsShort: 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'),\n weekdays: 'якшанбе_душанбе_сешанбе_чоршанбе_панҷшанбе_ҷумъа_шанбе'.split(\n '_'\n ),\n weekdaysShort: 'яшб_дшб_сшб_чшб_пшб_ҷум_шнб'.split('_'),\n weekdaysMin: 'яш_дш_сш_чш_пш_ҷм_шб'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Имрӯз соати] LT',\n nextDay: '[Фардо соати] LT',\n lastDay: '[Дирӯз соати] LT',\n nextWeek: 'dddd[и] [ҳафтаи оянда соати] LT',\n lastWeek: 'dddd[и] [ҳафтаи гузашта соати] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'баъди %s',\n past: '%s пеш',\n s: 'якчанд сония',\n m: 'як дақиқа',\n mm: '%d дақиқа',\n h: 'як соат',\n hh: '%d соат',\n d: 'як рӯз',\n dd: '%d рӯз',\n M: 'як моҳ',\n MM: '%d моҳ',\n y: 'як сол',\n yy: '%d сол',\n },\n meridiemParse: /шаб|субҳ|рӯз|бегоҳ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'шаб') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'субҳ') {\n return hour;\n } else if (meridiem === 'рӯз') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'бегоҳ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'шаб';\n } else if (hour < 11) {\n return 'субҳ';\n } else if (hour < 16) {\n return 'рӯз';\n } else if (hour < 19) {\n return 'бегоҳ';\n } else {\n return 'шаб';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ум|юм)/,\n ordinal: function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 1th is the first week of the year.\n },\n });\n\n return tg;\n\n})));\n","//! moment.js locale configuration\n//! locale : Thai [th]\n//! author : Kridsada Thanabulpong : https://github.com/sirn\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var th = moment.defineLocale('th', {\n months: 'มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม'.split(\n '_'\n ),\n monthsShort:\n 'ม.ค._ก.พ._มี.ค._เม.ย._พ.ค._มิ.ย._ก.ค._ส.ค._ก.ย._ต.ค._พ.ย._ธ.ค.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์'.split('_'),\n weekdaysShort: 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์'.split('_'), // yes, three characters difference\n weekdaysMin: 'อา._จ._อ._พ._พฤ._ศ._ส.'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY เวลา H:mm',\n LLLL: 'วันddddที่ D MMMM YYYY เวลา H:mm',\n },\n meridiemParse: /ก่อนเที่ยง|หลังเที่ยง/,\n isPM: function (input) {\n return input === 'หลังเที่ยง';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ก่อนเที่ยง';\n } else {\n return 'หลังเที่ยง';\n }\n },\n calendar: {\n sameDay: '[วันนี้ เวลา] LT',\n nextDay: '[พรุ่งนี้ เวลา] LT',\n nextWeek: 'dddd[หน้า เวลา] LT',\n lastDay: '[เมื่อวานนี้ เวลา] LT',\n lastWeek: '[วัน]dddd[ที่แล้ว เวลา] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'อีก %s',\n past: '%sที่แล้ว',\n s: 'ไม่กี่วินาที',\n ss: '%d วินาที',\n m: '1 นาที',\n mm: '%d นาที',\n h: '1 ชั่วโมง',\n hh: '%d ชั่วโมง',\n d: '1 วัน',\n dd: '%d วัน',\n w: '1 สัปดาห์',\n ww: '%d สัปดาห์',\n M: '1 เดือน',\n MM: '%d เดือน',\n y: '1 ปี',\n yy: '%d ปี',\n },\n });\n\n return th;\n\n})));\n","//! moment.js locale configuration\n//! locale : Turkmen [tk]\n//! author : Atamyrat Abdyrahmanov : https://github.com/atamyratabdy\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 1: \"'inji\",\n 5: \"'inji\",\n 8: \"'inji\",\n 70: \"'inji\",\n 80: \"'inji\",\n 2: \"'nji\",\n 7: \"'nji\",\n 20: \"'nji\",\n 50: \"'nji\",\n 3: \"'ünji\",\n 4: \"'ünji\",\n 100: \"'ünji\",\n 6: \"'njy\",\n 9: \"'unjy\",\n 10: \"'unjy\",\n 30: \"'unjy\",\n 60: \"'ynjy\",\n 90: \"'ynjy\",\n };\n\n var tk = moment.defineLocale('tk', {\n months: 'Ýanwar_Fewral_Mart_Aprel_Maý_Iýun_Iýul_Awgust_Sentýabr_Oktýabr_Noýabr_Dekabr'.split(\n '_'\n ),\n monthsShort: 'Ýan_Few_Mar_Apr_Maý_Iýn_Iýl_Awg_Sen_Okt_Noý_Dek'.split('_'),\n weekdays: 'Ýekşenbe_Duşenbe_Sişenbe_Çarşenbe_Penşenbe_Anna_Şenbe'.split(\n '_'\n ),\n weekdaysShort: 'Ýek_Duş_Siş_Çar_Pen_Ann_Şen'.split('_'),\n weekdaysMin: 'Ýk_Dş_Sş_Çr_Pn_An_Şn'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[bugün sagat] LT',\n nextDay: '[ertir sagat] LT',\n nextWeek: '[indiki] dddd [sagat] LT',\n lastDay: '[düýn] LT',\n lastWeek: '[geçen] dddd [sagat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s soň',\n past: '%s öň',\n s: 'birnäçe sekunt',\n m: 'bir minut',\n mm: '%d minut',\n h: 'bir sagat',\n hh: '%d sagat',\n d: 'bir gün',\n dd: '%d gün',\n M: 'bir aý',\n MM: '%d aý',\n y: 'bir ýyl',\n yy: '%d ýyl',\n },\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'Do':\n case 'DD':\n return number;\n default:\n if (number === 0) {\n // special case for zero\n return number + \"'unjy\";\n }\n var a = number % 10,\n b = (number % 100) - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return tk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tagalog (Philippines) [tl-ph]\n//! author : Dan Hagman : https://github.com/hagmandan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var tlPh = moment.defineLocale('tl-ph', {\n months: 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split(\n '_'\n ),\n monthsShort: 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'),\n weekdays: 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split(\n '_'\n ),\n weekdaysShort: 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'),\n weekdaysMin: 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'MM/D/YYYY',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY HH:mm',\n LLLL: 'dddd, MMMM DD, YYYY HH:mm',\n },\n calendar: {\n sameDay: 'LT [ngayong araw]',\n nextDay: '[Bukas ng] LT',\n nextWeek: 'LT [sa susunod na] dddd',\n lastDay: 'LT [kahapon]',\n lastWeek: 'LT [noong nakaraang] dddd',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'sa loob ng %s',\n past: '%s ang nakalipas',\n s: 'ilang segundo',\n ss: '%d segundo',\n m: 'isang minuto',\n mm: '%d minuto',\n h: 'isang oras',\n hh: '%d oras',\n d: 'isang araw',\n dd: '%d araw',\n M: 'isang buwan',\n MM: '%d buwan',\n y: 'isang taon',\n yy: '%d taon',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal: function (number) {\n return number;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return tlPh;\n\n})));\n","//! moment.js locale configuration\n//! locale : Klingon [tlh]\n//! author : Dominika Kruk : https://github.com/amaranthrose\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var numbersNouns = 'pagh_wa’_cha’_wej_loS_vagh_jav_Soch_chorgh_Hut'.split('_');\n\n function translateFuture(output) {\n var time = output;\n time =\n output.indexOf('jaj') !== -1\n ? time.slice(0, -3) + 'leS'\n : output.indexOf('jar') !== -1\n ? time.slice(0, -3) + 'waQ'\n : output.indexOf('DIS') !== -1\n ? time.slice(0, -3) + 'nem'\n : time + ' pIq';\n return time;\n }\n\n function translatePast(output) {\n var time = output;\n time =\n output.indexOf('jaj') !== -1\n ? time.slice(0, -3) + 'Hu’'\n : output.indexOf('jar') !== -1\n ? time.slice(0, -3) + 'wen'\n : output.indexOf('DIS') !== -1\n ? time.slice(0, -3) + 'ben'\n : time + ' ret';\n return time;\n }\n\n function translate(number, withoutSuffix, string, isFuture) {\n var numberNoun = numberAsNoun(number);\n switch (string) {\n case 'ss':\n return numberNoun + ' lup';\n case 'mm':\n return numberNoun + ' tup';\n case 'hh':\n return numberNoun + ' rep';\n case 'dd':\n return numberNoun + ' jaj';\n case 'MM':\n return numberNoun + ' jar';\n case 'yy':\n return numberNoun + ' DIS';\n }\n }\n\n function numberAsNoun(number) {\n var hundred = Math.floor((number % 1000) / 100),\n ten = Math.floor((number % 100) / 10),\n one = number % 10,\n word = '';\n if (hundred > 0) {\n word += numbersNouns[hundred] + 'vatlh';\n }\n if (ten > 0) {\n word += (word !== '' ? ' ' : '') + numbersNouns[ten] + 'maH';\n }\n if (one > 0) {\n word += (word !== '' ? ' ' : '') + numbersNouns[one];\n }\n return word === '' ? 'pagh' : word;\n }\n\n var tlh = moment.defineLocale('tlh', {\n months: 'tera’ jar wa’_tera’ jar cha’_tera’ jar wej_tera’ jar loS_tera’ jar vagh_tera’ jar jav_tera’ jar Soch_tera’ jar chorgh_tera’ jar Hut_tera’ jar wa’maH_tera’ jar wa’maH wa’_tera’ jar wa’maH cha’'.split(\n '_'\n ),\n monthsShort:\n 'jar wa’_jar cha’_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa’maH_jar wa’maH wa’_jar wa’maH cha’'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split(\n '_'\n ),\n weekdaysShort:\n 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'),\n weekdaysMin:\n 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[DaHjaj] LT',\n nextDay: '[wa’leS] LT',\n nextWeek: 'LLL',\n lastDay: '[wa’Hu’] LT',\n lastWeek: 'LLL',\n sameElse: 'L',\n },\n relativeTime: {\n future: translateFuture,\n past: translatePast,\n s: 'puS lup',\n ss: translate,\n m: 'wa’ tup',\n mm: translate,\n h: 'wa’ rep',\n hh: translate,\n d: 'wa’ jaj',\n dd: translate,\n M: 'wa’ jar',\n MM: translate,\n y: 'wa’ DIS',\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return tlh;\n\n})));\n","//! moment.js locale configuration\n//! locale : Turkish [tr]\n//! authors : Erhan Gundogan : https://github.com/erhangundogan,\n//! Burak Yiğit Kaya: https://github.com/BYK\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 1: \"'inci\",\n 5: \"'inci\",\n 8: \"'inci\",\n 70: \"'inci\",\n 80: \"'inci\",\n 2: \"'nci\",\n 7: \"'nci\",\n 20: \"'nci\",\n 50: \"'nci\",\n 3: \"'üncü\",\n 4: \"'üncü\",\n 100: \"'üncü\",\n 6: \"'ncı\",\n 9: \"'uncu\",\n 10: \"'uncu\",\n 30: \"'uncu\",\n 60: \"'ıncı\",\n 90: \"'ıncı\",\n };\n\n var tr = moment.defineLocale('tr', {\n months: 'Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık'.split(\n '_'\n ),\n monthsShort: 'Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara'.split('_'),\n weekdays: 'Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi'.split(\n '_'\n ),\n weekdaysShort: 'Paz_Pzt_Sal_Çar_Per_Cum_Cmt'.split('_'),\n weekdaysMin: 'Pz_Pt_Sa_Ça_Pe_Cu_Ct'.split('_'),\n meridiem: function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower ? 'öö' : 'ÖÖ';\n } else {\n return isLower ? 'ös' : 'ÖS';\n }\n },\n meridiemParse: /öö|ÖÖ|ös|ÖS/,\n isPM: function (input) {\n return input === 'ös' || input === 'ÖS';\n },\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[bugün saat] LT',\n nextDay: '[yarın saat] LT',\n nextWeek: '[gelecek] dddd [saat] LT',\n lastDay: '[dün] LT',\n lastWeek: '[geçen] dddd [saat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s sonra',\n past: '%s önce',\n s: 'birkaç saniye',\n ss: '%d saniye',\n m: 'bir dakika',\n mm: '%d dakika',\n h: 'bir saat',\n hh: '%d saat',\n d: 'bir gün',\n dd: '%d gün',\n w: 'bir hafta',\n ww: '%d hafta',\n M: 'bir ay',\n MM: '%d ay',\n y: 'bir yıl',\n yy: '%d yıl',\n },\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'Do':\n case 'DD':\n return number;\n default:\n if (number === 0) {\n // special case for zero\n return number + \"'ıncı\";\n }\n var a = number % 10,\n b = (number % 100) - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return tr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Talossan [tzl]\n//! author : Robin van der Vliet : https://github.com/robin0van0der0v\n//! author : Iustì Canun\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n // After the year there should be a slash and the amount of years since December 26, 1979 in Roman numerals.\n // This is currently too difficult (maybe even impossible) to add.\n var tzl = moment.defineLocale('tzl', {\n months: 'Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar'.split(\n '_'\n ),\n monthsShort: 'Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec'.split('_'),\n weekdays: 'Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi'.split('_'),\n weekdaysShort: 'Súl_Lún_Mai_Már_Xhú_Vié_Sát'.split('_'),\n weekdaysMin: 'Sú_Lú_Ma_Má_Xh_Vi_Sá'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM [dallas] YYYY',\n LLL: 'D. MMMM [dallas] YYYY HH.mm',\n LLLL: 'dddd, [li] D. MMMM [dallas] YYYY HH.mm',\n },\n meridiemParse: /d\\'o|d\\'a/i,\n isPM: function (input) {\n return \"d'o\" === input.toLowerCase();\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? \"d'o\" : \"D'O\";\n } else {\n return isLower ? \"d'a\" : \"D'A\";\n }\n },\n calendar: {\n sameDay: '[oxhi à] LT',\n nextDay: '[demà à] LT',\n nextWeek: 'dddd [à] LT',\n lastDay: '[ieiri à] LT',\n lastWeek: '[sür el] dddd [lasteu à] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'osprei %s',\n past: 'ja%s',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['viensas secunds', \"'iensas secunds\"],\n ss: [number + ' secunds', '' + number + ' secunds'],\n m: [\"'n míut\", \"'iens míut\"],\n mm: [number + ' míuts', '' + number + ' míuts'],\n h: [\"'n þora\", \"'iensa þora\"],\n hh: [number + ' þoras', '' + number + ' þoras'],\n d: [\"'n ziua\", \"'iensa ziua\"],\n dd: [number + ' ziuas', '' + number + ' ziuas'],\n M: [\"'n mes\", \"'iens mes\"],\n MM: [number + ' mesen', '' + number + ' mesen'],\n y: [\"'n ar\", \"'iens ar\"],\n yy: [number + ' ars', '' + number + ' ars'],\n };\n return isFuture\n ? format[key][0]\n : withoutSuffix\n ? format[key][0]\n : format[key][1];\n }\n\n return tzl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Central Atlas Tamazight Latin [tzm-latn]\n//! author : Abdel Said : https://github.com/abdelsaid\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var tzmLatn = moment.defineLocale('tzm-latn', {\n months: 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split(\n '_'\n ),\n monthsShort:\n 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split(\n '_'\n ),\n weekdays: 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),\n weekdaysShort: 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),\n weekdaysMin: 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[asdkh g] LT',\n nextDay: '[aska g] LT',\n nextWeek: 'dddd [g] LT',\n lastDay: '[assant g] LT',\n lastWeek: 'dddd [g] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dadkh s yan %s',\n past: 'yan %s',\n s: 'imik',\n ss: '%d imik',\n m: 'minuḍ',\n mm: '%d minuḍ',\n h: 'saɛa',\n hh: '%d tassaɛin',\n d: 'ass',\n dd: '%d ossan',\n M: 'ayowr',\n MM: '%d iyyirn',\n y: 'asgas',\n yy: '%d isgasn',\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return tzmLatn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Central Atlas Tamazight [tzm]\n//! author : Abdel Said : https://github.com/abdelsaid\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var tzm = moment.defineLocale('tzm', {\n months: 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split(\n '_'\n ),\n monthsShort:\n 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split(\n '_'\n ),\n weekdays: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n weekdaysShort: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n weekdaysMin: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[ⴰⵙⴷⵅ ⴴ] LT',\n nextDay: '[ⴰⵙⴽⴰ ⴴ] LT',\n nextWeek: 'dddd [ⴴ] LT',\n lastDay: '[ⴰⵚⴰⵏⵜ ⴴ] LT',\n lastWeek: 'dddd [ⴴ] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s',\n past: 'ⵢⴰⵏ %s',\n s: 'ⵉⵎⵉⴽ',\n ss: '%d ⵉⵎⵉⴽ',\n m: 'ⵎⵉⵏⵓⴺ',\n mm: '%d ⵎⵉⵏⵓⴺ',\n h: 'ⵙⴰⵄⴰ',\n hh: '%d ⵜⴰⵙⵙⴰⵄⵉⵏ',\n d: 'ⴰⵙⵙ',\n dd: '%d oⵙⵙⴰⵏ',\n M: 'ⴰⵢoⵓⵔ',\n MM: '%d ⵉⵢⵢⵉⵔⵏ',\n y: 'ⴰⵙⴳⴰⵙ',\n yy: '%d ⵉⵙⴳⴰⵙⵏ',\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return tzm;\n\n})));\n","//! moment.js locale configuration\n//! locale : Uyghur (China) [ug-cn]\n//! author: boyaq : https://github.com/boyaq\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ugCn = moment.defineLocale('ug-cn', {\n months: 'يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر'.split(\n '_'\n ),\n monthsShort:\n 'يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر'.split(\n '_'\n ),\n weekdays: 'يەكشەنبە_دۈشەنبە_سەيشەنبە_چارشەنبە_پەيشەنبە_جۈمە_شەنبە'.split(\n '_'\n ),\n weekdaysShort: 'يە_دۈ_سە_چا_پە_جۈ_شە'.split('_'),\n weekdaysMin: 'يە_دۈ_سە_چا_پە_جۈ_شە'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY-يىلىM-ئاينىڭD-كۈنى',\n LLL: 'YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm',\n LLLL: 'dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm',\n },\n meridiemParse: /يېرىم كېچە|سەھەر|چۈشتىن بۇرۇن|چۈش|چۈشتىن كېيىن|كەچ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n meridiem === 'يېرىم كېچە' ||\n meridiem === 'سەھەر' ||\n meridiem === 'چۈشتىن بۇرۇن'\n ) {\n return hour;\n } else if (meridiem === 'چۈشتىن كېيىن' || meridiem === 'كەچ') {\n return hour + 12;\n } else {\n return hour >= 11 ? hour : hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return 'يېرىم كېچە';\n } else if (hm < 900) {\n return 'سەھەر';\n } else if (hm < 1130) {\n return 'چۈشتىن بۇرۇن';\n } else if (hm < 1230) {\n return 'چۈش';\n } else if (hm < 1800) {\n return 'چۈشتىن كېيىن';\n } else {\n return 'كەچ';\n }\n },\n calendar: {\n sameDay: '[بۈگۈن سائەت] LT',\n nextDay: '[ئەتە سائەت] LT',\n nextWeek: '[كېلەركى] dddd [سائەت] LT',\n lastDay: '[تۆنۈگۈن] LT',\n lastWeek: '[ئالدىنقى] dddd [سائەت] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s كېيىن',\n past: '%s بۇرۇن',\n s: 'نەچچە سېكونت',\n ss: '%d سېكونت',\n m: 'بىر مىنۇت',\n mm: '%d مىنۇت',\n h: 'بىر سائەت',\n hh: '%d سائەت',\n d: 'بىر كۈن',\n dd: '%d كۈن',\n M: 'بىر ئاي',\n MM: '%d ئاي',\n y: 'بىر يىل',\n yy: '%d يىل',\n },\n\n dayOfMonthOrdinalParse: /\\d{1,2}(-كۈنى|-ئاي|-ھەپتە)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '-كۈنى';\n case 'w':\n case 'W':\n return number + '-ھەپتە';\n default:\n return number;\n }\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 1st is the first week of the year.\n },\n });\n\n return ugCn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Ukrainian [uk]\n//! author : zemlanin : https://github.com/zemlanin\n//! Author : Menelion Elensúle : https://github.com/Oire\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11\n ? forms[0]\n : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20)\n ? forms[1]\n : forms[2];\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: withoutSuffix ? 'секунда_секунди_секунд' : 'секунду_секунди_секунд',\n mm: withoutSuffix ? 'хвилина_хвилини_хвилин' : 'хвилину_хвилини_хвилин',\n hh: withoutSuffix ? 'година_години_годин' : 'годину_години_годин',\n dd: 'день_дні_днів',\n MM: 'місяць_місяці_місяців',\n yy: 'рік_роки_років',\n };\n if (key === 'm') {\n return withoutSuffix ? 'хвилина' : 'хвилину';\n } else if (key === 'h') {\n return withoutSuffix ? 'година' : 'годину';\n } else {\n return number + ' ' + plural(format[key], +number);\n }\n }\n function weekdaysCaseReplace(m, format) {\n var weekdays = {\n nominative:\n 'неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота'.split(\n '_'\n ),\n accusative:\n 'неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу'.split(\n '_'\n ),\n genitive:\n 'неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи'.split(\n '_'\n ),\n },\n nounCase;\n\n if (m === true) {\n return weekdays['nominative']\n .slice(1, 7)\n .concat(weekdays['nominative'].slice(0, 1));\n }\n if (!m) {\n return weekdays['nominative'];\n }\n\n nounCase = /(\\[[ВвУу]\\]) ?dddd/.test(format)\n ? 'accusative'\n : /\\[?(?:минулої|наступної)? ?\\] ?dddd/.test(format)\n ? 'genitive'\n : 'nominative';\n return weekdays[nounCase][m.day()];\n }\n function processHoursFunction(str) {\n return function () {\n return str + 'о' + (this.hours() === 11 ? 'б' : '') + '] LT';\n };\n }\n\n var uk = moment.defineLocale('uk', {\n months: {\n format: 'січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня'.split(\n '_'\n ),\n standalone:\n 'січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень'.split(\n '_'\n ),\n },\n monthsShort: 'січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд'.split(\n '_'\n ),\n weekdays: weekdaysCaseReplace,\n weekdaysShort: 'нд_пн_вт_ср_чт_пт_сб'.split('_'),\n weekdaysMin: 'нд_пн_вт_ср_чт_пт_сб'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY р.',\n LLL: 'D MMMM YYYY р., HH:mm',\n LLLL: 'dddd, D MMMM YYYY р., HH:mm',\n },\n calendar: {\n sameDay: processHoursFunction('[Сьогодні '),\n nextDay: processHoursFunction('[Завтра '),\n lastDay: processHoursFunction('[Вчора '),\n nextWeek: processHoursFunction('[У] dddd ['),\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 5:\n case 6:\n return processHoursFunction('[Минулої] dddd [').call(this);\n case 1:\n case 2:\n case 4:\n return processHoursFunction('[Минулого] dddd [').call(this);\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'за %s',\n past: '%s тому',\n s: 'декілька секунд',\n ss: relativeTimeWithPlural,\n m: relativeTimeWithPlural,\n mm: relativeTimeWithPlural,\n h: 'годину',\n hh: relativeTimeWithPlural,\n d: 'день',\n dd: relativeTimeWithPlural,\n M: 'місяць',\n MM: relativeTimeWithPlural,\n y: 'рік',\n yy: relativeTimeWithPlural,\n },\n // M. E.: those two are virtually unused but a user might want to implement them for his/her website for some reason\n meridiemParse: /ночі|ранку|дня|вечора/,\n isPM: function (input) {\n return /^(дня|вечора)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночі';\n } else if (hour < 12) {\n return 'ранку';\n } else if (hour < 17) {\n return 'дня';\n } else {\n return 'вечора';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(й|го)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n case 'w':\n case 'W':\n return number + '-й';\n case 'D':\n return number + '-го';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return uk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Urdu [ur]\n//! author : Sawood Alam : https://github.com/ibnesayeed\n//! author : Zack : https://github.com/ZackVision\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'جنوری',\n 'فروری',\n 'مارچ',\n 'اپریل',\n 'مئی',\n 'جون',\n 'جولائی',\n 'اگست',\n 'ستمبر',\n 'اکتوبر',\n 'نومبر',\n 'دسمبر',\n ],\n days = ['اتوار', 'پیر', 'منگل', 'بدھ', 'جمعرات', 'جمعہ', 'ہفتہ'];\n\n var ur = moment.defineLocale('ur', {\n months: months,\n monthsShort: months,\n weekdays: days,\n weekdaysShort: days,\n weekdaysMin: days,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd، D MMMM YYYY HH:mm',\n },\n meridiemParse: /صبح|شام/,\n isPM: function (input) {\n return 'شام' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'صبح';\n }\n return 'شام';\n },\n calendar: {\n sameDay: '[آج بوقت] LT',\n nextDay: '[کل بوقت] LT',\n nextWeek: 'dddd [بوقت] LT',\n lastDay: '[گذشتہ روز بوقت] LT',\n lastWeek: '[گذشتہ] dddd [بوقت] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s بعد',\n past: '%s قبل',\n s: 'چند سیکنڈ',\n ss: '%d سیکنڈ',\n m: 'ایک منٹ',\n mm: '%d منٹ',\n h: 'ایک گھنٹہ',\n hh: '%d گھنٹے',\n d: 'ایک دن',\n dd: '%d دن',\n M: 'ایک ماہ',\n MM: '%d ماہ',\n y: 'ایک سال',\n yy: '%d سال',\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ur;\n\n})));\n","//! moment.js locale configuration\n//! locale : Uzbek Latin [uz-latn]\n//! author : Rasulbek Mirzayev : github.com/Rasulbeeek\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var uzLatn = moment.defineLocale('uz-latn', {\n months: 'Yanvar_Fevral_Mart_Aprel_May_Iyun_Iyul_Avgust_Sentabr_Oktabr_Noyabr_Dekabr'.split(\n '_'\n ),\n monthsShort: 'Yan_Fev_Mar_Apr_May_Iyun_Iyul_Avg_Sen_Okt_Noy_Dek'.split('_'),\n weekdays:\n 'Yakshanba_Dushanba_Seshanba_Chorshanba_Payshanba_Juma_Shanba'.split(\n '_'\n ),\n weekdaysShort: 'Yak_Dush_Sesh_Chor_Pay_Jum_Shan'.split('_'),\n weekdaysMin: 'Ya_Du_Se_Cho_Pa_Ju_Sha'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'D MMMM YYYY, dddd HH:mm',\n },\n calendar: {\n sameDay: '[Bugun soat] LT [da]',\n nextDay: '[Ertaga] LT [da]',\n nextWeek: 'dddd [kuni soat] LT [da]',\n lastDay: '[Kecha soat] LT [da]',\n lastWeek: \"[O'tgan] dddd [kuni soat] LT [da]\",\n sameElse: 'L',\n },\n relativeTime: {\n future: 'Yaqin %s ichida',\n past: 'Bir necha %s oldin',\n s: 'soniya',\n ss: '%d soniya',\n m: 'bir daqiqa',\n mm: '%d daqiqa',\n h: 'bir soat',\n hh: '%d soat',\n d: 'bir kun',\n dd: '%d kun',\n M: 'bir oy',\n MM: '%d oy',\n y: 'bir yil',\n yy: '%d yil',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return uzLatn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Uzbek [uz]\n//! author : Sardor Muminov : https://github.com/muminoff\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var uz = moment.defineLocale('uz', {\n months: 'январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр'.split(\n '_'\n ),\n monthsShort: 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'),\n weekdays: 'Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба'.split('_'),\n weekdaysShort: 'Якш_Душ_Сеш_Чор_Пай_Жум_Шан'.split('_'),\n weekdaysMin: 'Як_Ду_Се_Чо_Па_Жу_Ша'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'D MMMM YYYY, dddd HH:mm',\n },\n calendar: {\n sameDay: '[Бугун соат] LT [да]',\n nextDay: '[Эртага] LT [да]',\n nextWeek: 'dddd [куни соат] LT [да]',\n lastDay: '[Кеча соат] LT [да]',\n lastWeek: '[Утган] dddd [куни соат] LT [да]',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'Якин %s ичида',\n past: 'Бир неча %s олдин',\n s: 'фурсат',\n ss: '%d фурсат',\n m: 'бир дакика',\n mm: '%d дакика',\n h: 'бир соат',\n hh: '%d соат',\n d: 'бир кун',\n dd: '%d кун',\n M: 'бир ой',\n MM: '%d ой',\n y: 'бир йил',\n yy: '%d йил',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return uz;\n\n})));\n","//! moment.js locale configuration\n//! locale : Vietnamese [vi]\n//! author : Bang Nguyen : https://github.com/bangnk\n//! author : Chien Kira : https://github.com/chienkira\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var vi = moment.defineLocale('vi', {\n months: 'tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12'.split(\n '_'\n ),\n monthsShort:\n 'Thg 01_Thg 02_Thg 03_Thg 04_Thg 05_Thg 06_Thg 07_Thg 08_Thg 09_Thg 10_Thg 11_Thg 12'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy'.split(\n '_'\n ),\n weekdaysShort: 'CN_T2_T3_T4_T5_T6_T7'.split('_'),\n weekdaysMin: 'CN_T2_T3_T4_T5_T6_T7'.split('_'),\n weekdaysParseExact: true,\n meridiemParse: /sa|ch/i,\n isPM: function (input) {\n return /^ch$/i.test(input);\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower ? 'sa' : 'SA';\n } else {\n return isLower ? 'ch' : 'CH';\n }\n },\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM [năm] YYYY',\n LLL: 'D MMMM [năm] YYYY HH:mm',\n LLLL: 'dddd, D MMMM [năm] YYYY HH:mm',\n l: 'DD/M/YYYY',\n ll: 'D MMM YYYY',\n lll: 'D MMM YYYY HH:mm',\n llll: 'ddd, D MMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Hôm nay lúc] LT',\n nextDay: '[Ngày mai lúc] LT',\n nextWeek: 'dddd [tuần tới lúc] LT',\n lastDay: '[Hôm qua lúc] LT',\n lastWeek: 'dddd [tuần trước lúc] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s tới',\n past: '%s trước',\n s: 'vài giây',\n ss: '%d giây',\n m: 'một phút',\n mm: '%d phút',\n h: 'một giờ',\n hh: '%d giờ',\n d: 'một ngày',\n dd: '%d ngày',\n w: 'một tuần',\n ww: '%d tuần',\n M: 'một tháng',\n MM: '%d tháng',\n y: 'một năm',\n yy: '%d năm',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal: function (number) {\n return number;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return vi;\n\n})));\n","//! moment.js locale configuration\n//! locale : Pseudo [x-pseudo]\n//! author : Andrew Hood : https://github.com/andrewhood125\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var xPseudo = moment.defineLocale('x-pseudo', {\n months: 'J~áñúá~rý_F~ébrú~árý_~Márc~h_Áp~ríl_~Máý_~Júñé~_Júl~ý_Áú~gúst~_Sép~témb~ér_Ó~ctób~ér_Ñ~óvém~bér_~Décé~mbér'.split(\n '_'\n ),\n monthsShort:\n 'J~áñ_~Féb_~Már_~Ápr_~Máý_~Júñ_~Júl_~Áúg_~Sép_~Óct_~Ñóv_~Déc'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'S~úñdá~ý_Mó~ñdáý~_Túé~sdáý~_Wéd~ñésd~áý_T~húrs~dáý_~Fríd~áý_S~átúr~dáý'.split(\n '_'\n ),\n weekdaysShort: 'S~úñ_~Móñ_~Túé_~Wéd_~Thú_~Frí_~Sát'.split('_'),\n weekdaysMin: 'S~ú_Mó~_Tú_~Wé_T~h_Fr~_Sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[T~ódá~ý át] LT',\n nextDay: '[T~ómó~rró~w át] LT',\n nextWeek: 'dddd [át] LT',\n lastDay: '[Ý~ést~érdá~ý át] LT',\n lastWeek: '[L~ást] dddd [át] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'í~ñ %s',\n past: '%s á~gó',\n s: 'á ~féw ~sécó~ñds',\n ss: '%d s~écóñ~ds',\n m: 'á ~míñ~úté',\n mm: '%d m~íñú~tés',\n h: 'á~ñ hó~úr',\n hh: '%d h~óúrs',\n d: 'á ~dáý',\n dd: '%d d~áýs',\n M: 'á ~móñ~th',\n MM: '%d m~óñt~hs',\n y: 'á ~ýéár',\n yy: '%d ý~éárs',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return xPseudo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Yoruba Nigeria [yo]\n//! author : Atolagbe Abisoye : https://github.com/andela-batolagbe\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var yo = moment.defineLocale('yo', {\n months: 'Sẹ́rẹ́_Èrèlè_Ẹrẹ̀nà_Ìgbé_Èbibi_Òkùdu_Agẹmo_Ògún_Owewe_Ọ̀wàrà_Bélú_Ọ̀pẹ̀̀'.split(\n '_'\n ),\n monthsShort: 'Sẹ́r_Èrl_Ẹrn_Ìgb_Èbi_Òkù_Agẹ_Ògú_Owe_Ọ̀wà_Bél_Ọ̀pẹ̀̀'.split('_'),\n weekdays: 'Àìkú_Ajé_Ìsẹ́gun_Ọjọ́rú_Ọjọ́bọ_Ẹtì_Àbámẹ́ta'.split('_'),\n weekdaysShort: 'Àìk_Ajé_Ìsẹ́_Ọjr_Ọjb_Ẹtì_Àbá'.split('_'),\n weekdaysMin: 'Àì_Aj_Ìs_Ọr_Ọb_Ẹt_Àb'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Ònì ni] LT',\n nextDay: '[Ọ̀la ni] LT',\n nextWeek: \"dddd [Ọsẹ̀ tón'bọ] [ni] LT\",\n lastDay: '[Àna ni] LT',\n lastWeek: 'dddd [Ọsẹ̀ tólọ́] [ni] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ní %s',\n past: '%s kọjá',\n s: 'ìsẹjú aayá die',\n ss: 'aayá %d',\n m: 'ìsẹjú kan',\n mm: 'ìsẹjú %d',\n h: 'wákati kan',\n hh: 'wákati %d',\n d: 'ọjọ́ kan',\n dd: 'ọjọ́ %d',\n M: 'osù kan',\n MM: 'osù %d',\n y: 'ọdún kan',\n yy: 'ọdún %d',\n },\n dayOfMonthOrdinalParse: /ọjọ́\\s\\d{1,2}/,\n ordinal: 'ọjọ́ %d',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return yo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chinese (China) [zh-cn]\n//! author : suupic : https://github.com/suupic\n//! author : Zeno Zeng : https://github.com/zenozeng\n//! author : uu109 : https://github.com/uu109\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var zhCn = moment.defineLocale('zh-cn', {\n months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort: '周日_周一_周二_周三_周四_周五_周六'.split('_'),\n weekdaysMin: '日_一_二_三_四_五_六'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日Ah点mm分',\n LLLL: 'YYYY年M月D日ddddAh点mm分',\n l: 'YYYY/M/D',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n } else {\n // '中午'\n return hour >= 11 ? hour : hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上午';\n } else if (hm < 1230) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天]LT',\n nextDay: '[明天]LT',\n nextWeek: function (now) {\n if (now.week() !== this.week()) {\n return '[下]dddLT';\n } else {\n return '[本]dddLT';\n }\n },\n lastDay: '[昨天]LT',\n lastWeek: function (now) {\n if (this.week() !== now.week()) {\n return '[上]dddLT';\n } else {\n return '[本]dddLT';\n }\n },\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|周)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '周';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s后',\n past: '%s前',\n s: '几秒',\n ss: '%d 秒',\n m: '1 分钟',\n mm: '%d 分钟',\n h: '1 小时',\n hh: '%d 小时',\n d: '1 天',\n dd: '%d 天',\n w: '1 周',\n ww: '%d 周',\n M: '1 个月',\n MM: '%d 个月',\n y: '1 年',\n yy: '%d 年',\n },\n week: {\n // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return zhCn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chinese (Hong Kong) [zh-hk]\n//! author : Ben : https://github.com/ben-lin\n//! author : Chris Lam : https://github.com/hehachris\n//! author : Konstantin : https://github.com/skfd\n//! author : Anthony : https://github.com/anthonylau\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var zhHk = moment.defineLocale('zh-hk', {\n months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'),\n weekdaysMin: '日_一_二_三_四_五_六'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日 HH:mm',\n LLLL: 'YYYY年M月D日dddd HH:mm',\n l: 'YYYY/M/D',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '中午') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1200) {\n return '上午';\n } else if (hm === 1200) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天]LT',\n nextDay: '[明天]LT',\n nextWeek: '[下]ddddLT',\n lastDay: '[昨天]LT',\n lastWeek: '[上]ddddLT',\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|週)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '週';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s後',\n past: '%s前',\n s: '幾秒',\n ss: '%d 秒',\n m: '1 分鐘',\n mm: '%d 分鐘',\n h: '1 小時',\n hh: '%d 小時',\n d: '1 天',\n dd: '%d 天',\n M: '1 個月',\n MM: '%d 個月',\n y: '1 年',\n yy: '%d 年',\n },\n });\n\n return zhHk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chinese (Macau) [zh-mo]\n//! author : Ben : https://github.com/ben-lin\n//! author : Chris Lam : https://github.com/hehachris\n//! author : Tan Yuanhong : https://github.com/le0tan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var zhMo = moment.defineLocale('zh-mo', {\n months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'),\n weekdaysMin: '日_一_二_三_四_五_六'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日 HH:mm',\n LLLL: 'YYYY年M月D日dddd HH:mm',\n l: 'D/M/YYYY',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '中午') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上午';\n } else if (hm < 1230) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天] LT',\n nextDay: '[明天] LT',\n nextWeek: '[下]dddd LT',\n lastDay: '[昨天] LT',\n lastWeek: '[上]dddd LT',\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|週)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '週';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s內',\n past: '%s前',\n s: '幾秒',\n ss: '%d 秒',\n m: '1 分鐘',\n mm: '%d 分鐘',\n h: '1 小時',\n hh: '%d 小時',\n d: '1 天',\n dd: '%d 天',\n M: '1 個月',\n MM: '%d 個月',\n y: '1 年',\n yy: '%d 年',\n },\n });\n\n return zhMo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chinese (Taiwan) [zh-tw]\n//! author : Ben : https://github.com/ben-lin\n//! author : Chris Lam : https://github.com/hehachris\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var zhTw = moment.defineLocale('zh-tw', {\n months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'),\n weekdaysMin: '日_一_二_三_四_五_六'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日 HH:mm',\n LLLL: 'YYYY年M月D日dddd HH:mm',\n l: 'YYYY/M/D',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '中午') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上午';\n } else if (hm < 1230) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天] LT',\n nextDay: '[明天] LT',\n nextWeek: '[下]dddd LT',\n lastDay: '[昨天] LT',\n lastWeek: '[上]dddd LT',\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|週)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '週';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s後',\n past: '%s前',\n s: '幾秒',\n ss: '%d 秒',\n m: '1 分鐘',\n mm: '%d 分鐘',\n h: '1 小時',\n hh: '%d 小時',\n d: '1 天',\n dd: '%d 天',\n M: '1 個月',\n MM: '%d 個月',\n y: '1 年',\n yy: '%d 年',\n },\n });\n\n return zhTw;\n\n})));\n","var map = {\n\t\"./af\": 42786,\n\t\"./af.js\": 42786,\n\t\"./ar\": 30867,\n\t\"./ar-dz\": 14130,\n\t\"./ar-dz.js\": 14130,\n\t\"./ar-kw\": 96135,\n\t\"./ar-kw.js\": 96135,\n\t\"./ar-ly\": 56440,\n\t\"./ar-ly.js\": 56440,\n\t\"./ar-ma\": 47702,\n\t\"./ar-ma.js\": 47702,\n\t\"./ar-sa\": 16040,\n\t\"./ar-sa.js\": 16040,\n\t\"./ar-tn\": 37100,\n\t\"./ar-tn.js\": 37100,\n\t\"./ar.js\": 30867,\n\t\"./az\": 31083,\n\t\"./az.js\": 31083,\n\t\"./be\": 9808,\n\t\"./be.js\": 9808,\n\t\"./bg\": 68338,\n\t\"./bg.js\": 68338,\n\t\"./bm\": 67438,\n\t\"./bm.js\": 67438,\n\t\"./bn\": 8905,\n\t\"./bn-bd\": 76225,\n\t\"./bn-bd.js\": 76225,\n\t\"./bn.js\": 8905,\n\t\"./bo\": 11560,\n\t\"./bo.js\": 11560,\n\t\"./br\": 1278,\n\t\"./br.js\": 1278,\n\t\"./bs\": 80622,\n\t\"./bs.js\": 80622,\n\t\"./ca\": 2468,\n\t\"./ca.js\": 2468,\n\t\"./cs\": 5822,\n\t\"./cs.js\": 5822,\n\t\"./cv\": 50877,\n\t\"./cv.js\": 50877,\n\t\"./cy\": 47373,\n\t\"./cy.js\": 47373,\n\t\"./da\": 24780,\n\t\"./da.js\": 24780,\n\t\"./de\": 59740,\n\t\"./de-at\": 60217,\n\t\"./de-at.js\": 60217,\n\t\"./de-ch\": 60894,\n\t\"./de-ch.js\": 60894,\n\t\"./de.js\": 59740,\n\t\"./dv\": 5300,\n\t\"./dv.js\": 5300,\n\t\"./el\": 50837,\n\t\"./el.js\": 50837,\n\t\"./en-au\": 78348,\n\t\"./en-au.js\": 78348,\n\t\"./en-ca\": 77925,\n\t\"./en-ca.js\": 77925,\n\t\"./en-gb\": 22243,\n\t\"./en-gb.js\": 22243,\n\t\"./en-ie\": 46436,\n\t\"./en-ie.js\": 46436,\n\t\"./en-il\": 47207,\n\t\"./en-il.js\": 47207,\n\t\"./en-in\": 44175,\n\t\"./en-in.js\": 44175,\n\t\"./en-nz\": 76319,\n\t\"./en-nz.js\": 76319,\n\t\"./en-sg\": 31662,\n\t\"./en-sg.js\": 31662,\n\t\"./eo\": 92915,\n\t\"./eo.js\": 92915,\n\t\"./es\": 55655,\n\t\"./es-do\": 55251,\n\t\"./es-do.js\": 55251,\n\t\"./es-mx\": 96112,\n\t\"./es-mx.js\": 96112,\n\t\"./es-us\": 71146,\n\t\"./es-us.js\": 71146,\n\t\"./es.js\": 55655,\n\t\"./et\": 5603,\n\t\"./et.js\": 5603,\n\t\"./eu\": 77763,\n\t\"./eu.js\": 77763,\n\t\"./fa\": 76959,\n\t\"./fa.js\": 76959,\n\t\"./fi\": 11897,\n\t\"./fi.js\": 11897,\n\t\"./fil\": 42549,\n\t\"./fil.js\": 42549,\n\t\"./fo\": 94694,\n\t\"./fo.js\": 94694,\n\t\"./fr\": 94470,\n\t\"./fr-ca\": 63049,\n\t\"./fr-ca.js\": 63049,\n\t\"./fr-ch\": 52330,\n\t\"./fr-ch.js\": 52330,\n\t\"./fr.js\": 94470,\n\t\"./fy\": 5044,\n\t\"./fy.js\": 5044,\n\t\"./ga\": 29295,\n\t\"./ga.js\": 29295,\n\t\"./gd\": 2101,\n\t\"./gd.js\": 2101,\n\t\"./gl\": 38794,\n\t\"./gl.js\": 38794,\n\t\"./gom-deva\": 27884,\n\t\"./gom-deva.js\": 27884,\n\t\"./gom-latn\": 23168,\n\t\"./gom-latn.js\": 23168,\n\t\"./gu\": 95349,\n\t\"./gu.js\": 95349,\n\t\"./he\": 24206,\n\t\"./he.js\": 24206,\n\t\"./hi\": 30094,\n\t\"./hi.js\": 30094,\n\t\"./hr\": 30316,\n\t\"./hr.js\": 30316,\n\t\"./hu\": 22138,\n\t\"./hu.js\": 22138,\n\t\"./hy-am\": 11423,\n\t\"./hy-am.js\": 11423,\n\t\"./id\": 29218,\n\t\"./id.js\": 29218,\n\t\"./is\": 90135,\n\t\"./is.js\": 90135,\n\t\"./it\": 90626,\n\t\"./it-ch\": 10150,\n\t\"./it-ch.js\": 10150,\n\t\"./it.js\": 90626,\n\t\"./ja\": 39183,\n\t\"./ja.js\": 39183,\n\t\"./jv\": 24286,\n\t\"./jv.js\": 24286,\n\t\"./ka\": 12105,\n\t\"./ka.js\": 12105,\n\t\"./kk\": 47772,\n\t\"./kk.js\": 47772,\n\t\"./km\": 18758,\n\t\"./km.js\": 18758,\n\t\"./kn\": 79282,\n\t\"./kn.js\": 79282,\n\t\"./ko\": 33730,\n\t\"./ko.js\": 33730,\n\t\"./ku\": 1408,\n\t\"./ku.js\": 1408,\n\t\"./ky\": 33291,\n\t\"./ky.js\": 33291,\n\t\"./lb\": 36841,\n\t\"./lb.js\": 36841,\n\t\"./lo\": 55466,\n\t\"./lo.js\": 55466,\n\t\"./lt\": 57010,\n\t\"./lt.js\": 57010,\n\t\"./lv\": 37595,\n\t\"./lv.js\": 37595,\n\t\"./me\": 39861,\n\t\"./me.js\": 39861,\n\t\"./mi\": 35493,\n\t\"./mi.js\": 35493,\n\t\"./mk\": 95966,\n\t\"./mk.js\": 95966,\n\t\"./ml\": 87341,\n\t\"./ml.js\": 87341,\n\t\"./mn\": 5115,\n\t\"./mn.js\": 5115,\n\t\"./mr\": 10370,\n\t\"./mr.js\": 10370,\n\t\"./ms\": 9847,\n\t\"./ms-my\": 41237,\n\t\"./ms-my.js\": 41237,\n\t\"./ms.js\": 9847,\n\t\"./mt\": 72126,\n\t\"./mt.js\": 72126,\n\t\"./my\": 56165,\n\t\"./my.js\": 56165,\n\t\"./nb\": 64924,\n\t\"./nb.js\": 64924,\n\t\"./ne\": 16744,\n\t\"./ne.js\": 16744,\n\t\"./nl\": 93901,\n\t\"./nl-be\": 59814,\n\t\"./nl-be.js\": 59814,\n\t\"./nl.js\": 93901,\n\t\"./nn\": 83877,\n\t\"./nn.js\": 83877,\n\t\"./oc-lnc\": 92135,\n\t\"./oc-lnc.js\": 92135,\n\t\"./pa-in\": 15858,\n\t\"./pa-in.js\": 15858,\n\t\"./pl\": 64495,\n\t\"./pl.js\": 64495,\n\t\"./pt\": 89520,\n\t\"./pt-br\": 57971,\n\t\"./pt-br.js\": 57971,\n\t\"./pt.js\": 89520,\n\t\"./ro\": 96459,\n\t\"./ro.js\": 96459,\n\t\"./ru\": 21793,\n\t\"./ru.js\": 21793,\n\t\"./sd\": 40950,\n\t\"./sd.js\": 40950,\n\t\"./se\": 10490,\n\t\"./se.js\": 10490,\n\t\"./si\": 90124,\n\t\"./si.js\": 90124,\n\t\"./sk\": 64249,\n\t\"./sk.js\": 64249,\n\t\"./sl\": 14985,\n\t\"./sl.js\": 14985,\n\t\"./sq\": 51104,\n\t\"./sq.js\": 51104,\n\t\"./sr\": 49131,\n\t\"./sr-cyrl\": 79915,\n\t\"./sr-cyrl.js\": 79915,\n\t\"./sr.js\": 49131,\n\t\"./ss\": 85893,\n\t\"./ss.js\": 85893,\n\t\"./sv\": 98760,\n\t\"./sv.js\": 98760,\n\t\"./sw\": 91172,\n\t\"./sw.js\": 91172,\n\t\"./ta\": 27333,\n\t\"./ta.js\": 27333,\n\t\"./te\": 23110,\n\t\"./te.js\": 23110,\n\t\"./tet\": 52095,\n\t\"./tet.js\": 52095,\n\t\"./tg\": 27321,\n\t\"./tg.js\": 27321,\n\t\"./th\": 9041,\n\t\"./th.js\": 9041,\n\t\"./tk\": 19005,\n\t\"./tk.js\": 19005,\n\t\"./tl-ph\": 75768,\n\t\"./tl-ph.js\": 75768,\n\t\"./tlh\": 89444,\n\t\"./tlh.js\": 89444,\n\t\"./tr\": 72397,\n\t\"./tr.js\": 72397,\n\t\"./tzl\": 28254,\n\t\"./tzl.js\": 28254,\n\t\"./tzm\": 51106,\n\t\"./tzm-latn\": 30699,\n\t\"./tzm-latn.js\": 30699,\n\t\"./tzm.js\": 51106,\n\t\"./ug-cn\": 9288,\n\t\"./ug-cn.js\": 9288,\n\t\"./uk\": 67691,\n\t\"./uk.js\": 67691,\n\t\"./ur\": 13795,\n\t\"./ur.js\": 13795,\n\t\"./uz\": 6791,\n\t\"./uz-latn\": 60588,\n\t\"./uz-latn.js\": 60588,\n\t\"./uz.js\": 6791,\n\t\"./vi\": 65666,\n\t\"./vi.js\": 65666,\n\t\"./x-pseudo\": 14378,\n\t\"./x-pseudo.js\": 14378,\n\t\"./yo\": 75805,\n\t\"./yo.js\": 75805,\n\t\"./zh-cn\": 83839,\n\t\"./zh-cn.js\": 83839,\n\t\"./zh-hk\": 55726,\n\t\"./zh-hk.js\": 55726,\n\t\"./zh-mo\": 99807,\n\t\"./zh-mo.js\": 99807,\n\t\"./zh-tw\": 74152,\n\t\"./zh-tw.js\": 74152\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 46700;","//! moment.js\n//! version : 2.29.4\n//! authors : Tim Wood, Iskren Chernev, Moment.js contributors\n//! license : MIT\n//! momentjs.com\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n global.moment = factory()\n}(this, (function () { 'use strict';\n\n var hookCallback;\n\n function hooks() {\n return hookCallback.apply(null, arguments);\n }\n\n // This is done to register the method called with moment()\n // without creating circular dependencies.\n function setHookCallback(callback) {\n hookCallback = callback;\n }\n\n function isArray(input) {\n return (\n input instanceof Array ||\n Object.prototype.toString.call(input) === '[object Array]'\n );\n }\n\n function isObject(input) {\n // IE8 will treat undefined and null as object if it wasn't for\n // input != null\n return (\n input != null &&\n Object.prototype.toString.call(input) === '[object Object]'\n );\n }\n\n function hasOwnProp(a, b) {\n return Object.prototype.hasOwnProperty.call(a, b);\n }\n\n function isObjectEmpty(obj) {\n if (Object.getOwnPropertyNames) {\n return Object.getOwnPropertyNames(obj).length === 0;\n } else {\n var k;\n for (k in obj) {\n if (hasOwnProp(obj, k)) {\n return false;\n }\n }\n return true;\n }\n }\n\n function isUndefined(input) {\n return input === void 0;\n }\n\n function isNumber(input) {\n return (\n typeof input === 'number' ||\n Object.prototype.toString.call(input) === '[object Number]'\n );\n }\n\n function isDate(input) {\n return (\n input instanceof Date ||\n Object.prototype.toString.call(input) === '[object Date]'\n );\n }\n\n function map(arr, fn) {\n var res = [],\n i,\n arrLen = arr.length;\n for (i = 0; i < arrLen; ++i) {\n res.push(fn(arr[i], i));\n }\n return res;\n }\n\n function extend(a, b) {\n for (var i in b) {\n if (hasOwnProp(b, i)) {\n a[i] = b[i];\n }\n }\n\n if (hasOwnProp(b, 'toString')) {\n a.toString = b.toString;\n }\n\n if (hasOwnProp(b, 'valueOf')) {\n a.valueOf = b.valueOf;\n }\n\n return a;\n }\n\n function createUTC(input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, true).utc();\n }\n\n function defaultParsingFlags() {\n // We need to deep clone this object.\n return {\n empty: false,\n unusedTokens: [],\n unusedInput: [],\n overflow: -2,\n charsLeftOver: 0,\n nullInput: false,\n invalidEra: null,\n invalidMonth: null,\n invalidFormat: false,\n userInvalidated: false,\n iso: false,\n parsedDateParts: [],\n era: null,\n meridiem: null,\n rfc2822: false,\n weekdayMismatch: false,\n };\n }\n\n function getParsingFlags(m) {\n if (m._pf == null) {\n m._pf = defaultParsingFlags();\n }\n return m._pf;\n }\n\n var some;\n if (Array.prototype.some) {\n some = Array.prototype.some;\n } else {\n some = function (fun) {\n var t = Object(this),\n len = t.length >>> 0,\n i;\n\n for (i = 0; i < len; i++) {\n if (i in t && fun.call(this, t[i], i, t)) {\n return true;\n }\n }\n\n return false;\n };\n }\n\n function isValid(m) {\n if (m._isValid == null) {\n var flags = getParsingFlags(m),\n parsedParts = some.call(flags.parsedDateParts, function (i) {\n return i != null;\n }),\n isNowValid =\n !isNaN(m._d.getTime()) &&\n flags.overflow < 0 &&\n !flags.empty &&\n !flags.invalidEra &&\n !flags.invalidMonth &&\n !flags.invalidWeekday &&\n !flags.weekdayMismatch &&\n !flags.nullInput &&\n !flags.invalidFormat &&\n !flags.userInvalidated &&\n (!flags.meridiem || (flags.meridiem && parsedParts));\n\n if (m._strict) {\n isNowValid =\n isNowValid &&\n flags.charsLeftOver === 0 &&\n flags.unusedTokens.length === 0 &&\n flags.bigHour === undefined;\n }\n\n if (Object.isFrozen == null || !Object.isFrozen(m)) {\n m._isValid = isNowValid;\n } else {\n return isNowValid;\n }\n }\n return m._isValid;\n }\n\n function createInvalid(flags) {\n var m = createUTC(NaN);\n if (flags != null) {\n extend(getParsingFlags(m), flags);\n } else {\n getParsingFlags(m).userInvalidated = true;\n }\n\n return m;\n }\n\n // Plugins that add properties should also add the key here (null value),\n // so we can properly clone ourselves.\n var momentProperties = (hooks.momentProperties = []),\n updateInProgress = false;\n\n function copyConfig(to, from) {\n var i,\n prop,\n val,\n momentPropertiesLen = momentProperties.length;\n\n if (!isUndefined(from._isAMomentObject)) {\n to._isAMomentObject = from._isAMomentObject;\n }\n if (!isUndefined(from._i)) {\n to._i = from._i;\n }\n if (!isUndefined(from._f)) {\n to._f = from._f;\n }\n if (!isUndefined(from._l)) {\n to._l = from._l;\n }\n if (!isUndefined(from._strict)) {\n to._strict = from._strict;\n }\n if (!isUndefined(from._tzm)) {\n to._tzm = from._tzm;\n }\n if (!isUndefined(from._isUTC)) {\n to._isUTC = from._isUTC;\n }\n if (!isUndefined(from._offset)) {\n to._offset = from._offset;\n }\n if (!isUndefined(from._pf)) {\n to._pf = getParsingFlags(from);\n }\n if (!isUndefined(from._locale)) {\n to._locale = from._locale;\n }\n\n if (momentPropertiesLen > 0) {\n for (i = 0; i < momentPropertiesLen; i++) {\n prop = momentProperties[i];\n val = from[prop];\n if (!isUndefined(val)) {\n to[prop] = val;\n }\n }\n }\n\n return to;\n }\n\n // Moment prototype object\n function Moment(config) {\n copyConfig(this, config);\n this._d = new Date(config._d != null ? config._d.getTime() : NaN);\n if (!this.isValid()) {\n this._d = new Date(NaN);\n }\n // Prevent infinite loop in case updateOffset creates new moment\n // objects.\n if (updateInProgress === false) {\n updateInProgress = true;\n hooks.updateOffset(this);\n updateInProgress = false;\n }\n }\n\n function isMoment(obj) {\n return (\n obj instanceof Moment || (obj != null && obj._isAMomentObject != null)\n );\n }\n\n function warn(msg) {\n if (\n hooks.suppressDeprecationWarnings === false &&\n typeof console !== 'undefined' &&\n console.warn\n ) {\n console.warn('Deprecation warning: ' + msg);\n }\n }\n\n function deprecate(msg, fn) {\n var firstTime = true;\n\n return extend(function () {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(null, msg);\n }\n if (firstTime) {\n var args = [],\n arg,\n i,\n key,\n argLen = arguments.length;\n for (i = 0; i < argLen; i++) {\n arg = '';\n if (typeof arguments[i] === 'object') {\n arg += '\\n[' + i + '] ';\n for (key in arguments[0]) {\n if (hasOwnProp(arguments[0], key)) {\n arg += key + ': ' + arguments[0][key] + ', ';\n }\n }\n arg = arg.slice(0, -2); // Remove trailing comma and space\n } else {\n arg = arguments[i];\n }\n args.push(arg);\n }\n warn(\n msg +\n '\\nArguments: ' +\n Array.prototype.slice.call(args).join('') +\n '\\n' +\n new Error().stack\n );\n firstTime = false;\n }\n return fn.apply(this, arguments);\n }, fn);\n }\n\n var deprecations = {};\n\n function deprecateSimple(name, msg) {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(name, msg);\n }\n if (!deprecations[name]) {\n warn(msg);\n deprecations[name] = true;\n }\n }\n\n hooks.suppressDeprecationWarnings = false;\n hooks.deprecationHandler = null;\n\n function isFunction(input) {\n return (\n (typeof Function !== 'undefined' && input instanceof Function) ||\n Object.prototype.toString.call(input) === '[object Function]'\n );\n }\n\n function set(config) {\n var prop, i;\n for (i in config) {\n if (hasOwnProp(config, i)) {\n prop = config[i];\n if (isFunction(prop)) {\n this[i] = prop;\n } else {\n this['_' + i] = prop;\n }\n }\n }\n this._config = config;\n // Lenient ordinal parsing accepts just a number in addition to\n // number + (possibly) stuff coming from _dayOfMonthOrdinalParse.\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n this._dayOfMonthOrdinalParseLenient = new RegExp(\n (this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) +\n '|' +\n /\\d{1,2}/.source\n );\n }\n\n function mergeConfigs(parentConfig, childConfig) {\n var res = extend({}, parentConfig),\n prop;\n for (prop in childConfig) {\n if (hasOwnProp(childConfig, prop)) {\n if (isObject(parentConfig[prop]) && isObject(childConfig[prop])) {\n res[prop] = {};\n extend(res[prop], parentConfig[prop]);\n extend(res[prop], childConfig[prop]);\n } else if (childConfig[prop] != null) {\n res[prop] = childConfig[prop];\n } else {\n delete res[prop];\n }\n }\n }\n for (prop in parentConfig) {\n if (\n hasOwnProp(parentConfig, prop) &&\n !hasOwnProp(childConfig, prop) &&\n isObject(parentConfig[prop])\n ) {\n // make sure changes to properties don't modify parent config\n res[prop] = extend({}, res[prop]);\n }\n }\n return res;\n }\n\n function Locale(config) {\n if (config != null) {\n this.set(config);\n }\n }\n\n var keys;\n\n if (Object.keys) {\n keys = Object.keys;\n } else {\n keys = function (obj) {\n var i,\n res = [];\n for (i in obj) {\n if (hasOwnProp(obj, i)) {\n res.push(i);\n }\n }\n return res;\n };\n }\n\n var defaultCalendar = {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n };\n\n function calendar(key, mom, now) {\n var output = this._calendar[key] || this._calendar['sameElse'];\n return isFunction(output) ? output.call(mom, now) : output;\n }\n\n function zeroFill(number, targetLength, forceSign) {\n var absNumber = '' + Math.abs(number),\n zerosToFill = targetLength - absNumber.length,\n sign = number >= 0;\n return (\n (sign ? (forceSign ? '+' : '') : '-') +\n Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) +\n absNumber\n );\n }\n\n var formattingTokens =\n /(\\[[^\\[]*\\])|(\\\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,\n localFormattingTokens = /(\\[[^\\[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g,\n formatFunctions = {},\n formatTokenFunctions = {};\n\n // token: 'M'\n // padded: ['MM', 2]\n // ordinal: 'Mo'\n // callback: function () { this.month() + 1 }\n function addFormatToken(token, padded, ordinal, callback) {\n var func = callback;\n if (typeof callback === 'string') {\n func = function () {\n return this[callback]();\n };\n }\n if (token) {\n formatTokenFunctions[token] = func;\n }\n if (padded) {\n formatTokenFunctions[padded[0]] = function () {\n return zeroFill(func.apply(this, arguments), padded[1], padded[2]);\n };\n }\n if (ordinal) {\n formatTokenFunctions[ordinal] = function () {\n return this.localeData().ordinal(\n func.apply(this, arguments),\n token\n );\n };\n }\n }\n\n function removeFormattingTokens(input) {\n if (input.match(/\\[[\\s\\S]/)) {\n return input.replace(/^\\[|\\]$/g, '');\n }\n return input.replace(/\\\\/g, '');\n }\n\n function makeFormatFunction(format) {\n var array = format.match(formattingTokens),\n i,\n length;\n\n for (i = 0, length = array.length; i < length; i++) {\n if (formatTokenFunctions[array[i]]) {\n array[i] = formatTokenFunctions[array[i]];\n } else {\n array[i] = removeFormattingTokens(array[i]);\n }\n }\n\n return function (mom) {\n var output = '',\n i;\n for (i = 0; i < length; i++) {\n output += isFunction(array[i])\n ? array[i].call(mom, format)\n : array[i];\n }\n return output;\n };\n }\n\n // format date using native date object\n function formatMoment(m, format) {\n if (!m.isValid()) {\n return m.localeData().invalidDate();\n }\n\n format = expandFormat(format, m.localeData());\n formatFunctions[format] =\n formatFunctions[format] || makeFormatFunction(format);\n\n return formatFunctions[format](m);\n }\n\n function expandFormat(format, locale) {\n var i = 5;\n\n function replaceLongDateFormatTokens(input) {\n return locale.longDateFormat(input) || input;\n }\n\n localFormattingTokens.lastIndex = 0;\n while (i >= 0 && localFormattingTokens.test(format)) {\n format = format.replace(\n localFormattingTokens,\n replaceLongDateFormatTokens\n );\n localFormattingTokens.lastIndex = 0;\n i -= 1;\n }\n\n return format;\n }\n\n var defaultLongDateFormat = {\n LTS: 'h:mm:ss A',\n LT: 'h:mm A',\n L: 'MM/DD/YYYY',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY h:mm A',\n LLLL: 'dddd, MMMM D, YYYY h:mm A',\n };\n\n function longDateFormat(key) {\n var format = this._longDateFormat[key],\n formatUpper = this._longDateFormat[key.toUpperCase()];\n\n if (format || !formatUpper) {\n return format;\n }\n\n this._longDateFormat[key] = formatUpper\n .match(formattingTokens)\n .map(function (tok) {\n if (\n tok === 'MMMM' ||\n tok === 'MM' ||\n tok === 'DD' ||\n tok === 'dddd'\n ) {\n return tok.slice(1);\n }\n return tok;\n })\n .join('');\n\n return this._longDateFormat[key];\n }\n\n var defaultInvalidDate = 'Invalid date';\n\n function invalidDate() {\n return this._invalidDate;\n }\n\n var defaultOrdinal = '%d',\n defaultDayOfMonthOrdinalParse = /\\d{1,2}/;\n\n function ordinal(number) {\n return this._ordinal.replace('%d', number);\n }\n\n var defaultRelativeTime = {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n w: 'a week',\n ww: '%d weeks',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n };\n\n function relativeTime(number, withoutSuffix, string, isFuture) {\n var output = this._relativeTime[string];\n return isFunction(output)\n ? output(number, withoutSuffix, string, isFuture)\n : output.replace(/%d/i, number);\n }\n\n function pastFuture(diff, output) {\n var format = this._relativeTime[diff > 0 ? 'future' : 'past'];\n return isFunction(format) ? format(output) : format.replace(/%s/i, output);\n }\n\n var aliases = {};\n\n function addUnitAlias(unit, shorthand) {\n var lowerCase = unit.toLowerCase();\n aliases[lowerCase] = aliases[lowerCase + 's'] = aliases[shorthand] = unit;\n }\n\n function normalizeUnits(units) {\n return typeof units === 'string'\n ? aliases[units] || aliases[units.toLowerCase()]\n : undefined;\n }\n\n function normalizeObjectUnits(inputObject) {\n var normalizedInput = {},\n normalizedProp,\n prop;\n\n for (prop in inputObject) {\n if (hasOwnProp(inputObject, prop)) {\n normalizedProp = normalizeUnits(prop);\n if (normalizedProp) {\n normalizedInput[normalizedProp] = inputObject[prop];\n }\n }\n }\n\n return normalizedInput;\n }\n\n var priorities = {};\n\n function addUnitPriority(unit, priority) {\n priorities[unit] = priority;\n }\n\n function getPrioritizedUnits(unitsObj) {\n var units = [],\n u;\n for (u in unitsObj) {\n if (hasOwnProp(unitsObj, u)) {\n units.push({ unit: u, priority: priorities[u] });\n }\n }\n units.sort(function (a, b) {\n return a.priority - b.priority;\n });\n return units;\n }\n\n function isLeapYear(year) {\n return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;\n }\n\n function absFloor(number) {\n if (number < 0) {\n // -0 -> 0\n return Math.ceil(number) || 0;\n } else {\n return Math.floor(number);\n }\n }\n\n function toInt(argumentForCoercion) {\n var coercedNumber = +argumentForCoercion,\n value = 0;\n\n if (coercedNumber !== 0 && isFinite(coercedNumber)) {\n value = absFloor(coercedNumber);\n }\n\n return value;\n }\n\n function makeGetSet(unit, keepTime) {\n return function (value) {\n if (value != null) {\n set$1(this, unit, value);\n hooks.updateOffset(this, keepTime);\n return this;\n } else {\n return get(this, unit);\n }\n };\n }\n\n function get(mom, unit) {\n return mom.isValid()\n ? mom._d['get' + (mom._isUTC ? 'UTC' : '') + unit]()\n : NaN;\n }\n\n function set$1(mom, unit, value) {\n if (mom.isValid() && !isNaN(value)) {\n if (\n unit === 'FullYear' &&\n isLeapYear(mom.year()) &&\n mom.month() === 1 &&\n mom.date() === 29\n ) {\n value = toInt(value);\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](\n value,\n mom.month(),\n daysInMonth(value, mom.month())\n );\n } else {\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value);\n }\n }\n }\n\n // MOMENTS\n\n function stringGet(units) {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units]();\n }\n return this;\n }\n\n function stringSet(units, value) {\n if (typeof units === 'object') {\n units = normalizeObjectUnits(units);\n var prioritized = getPrioritizedUnits(units),\n i,\n prioritizedLen = prioritized.length;\n for (i = 0; i < prioritizedLen; i++) {\n this[prioritized[i].unit](units[prioritized[i].unit]);\n }\n } else {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units](value);\n }\n }\n return this;\n }\n\n var match1 = /\\d/, // 0 - 9\n match2 = /\\d\\d/, // 00 - 99\n match3 = /\\d{3}/, // 000 - 999\n match4 = /\\d{4}/, // 0000 - 9999\n match6 = /[+-]?\\d{6}/, // -999999 - 999999\n match1to2 = /\\d\\d?/, // 0 - 99\n match3to4 = /\\d\\d\\d\\d?/, // 999 - 9999\n match5to6 = /\\d\\d\\d\\d\\d\\d?/, // 99999 - 999999\n match1to3 = /\\d{1,3}/, // 0 - 999\n match1to4 = /\\d{1,4}/, // 0 - 9999\n match1to6 = /[+-]?\\d{1,6}/, // -999999 - 999999\n matchUnsigned = /\\d+/, // 0 - inf\n matchSigned = /[+-]?\\d+/, // -inf - inf\n matchOffset = /Z|[+-]\\d\\d:?\\d\\d/gi, // +00:00 -00:00 +0000 -0000 or Z\n matchShortOffset = /Z|[+-]\\d\\d(?::?\\d\\d)?/gi, // +00 -00 +00:00 -00:00 +0000 -0000 or Z\n matchTimestamp = /[+-]?\\d+(\\.\\d{1,3})?/, // 123456789 123456789.123\n // any word (or two) characters or numbers including two/three word month in arabic.\n // includes scottish gaelic two word and hyphenated months\n matchWord =\n /[0-9]{0,256}['a-z\\u00A0-\\u05FF\\u0700-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFF07\\uFF10-\\uFFEF]{1,256}|[\\u0600-\\u06FF\\/]{1,256}(\\s*?[\\u0600-\\u06FF]{1,256}){1,2}/i,\n regexes;\n\n regexes = {};\n\n function addRegexToken(token, regex, strictRegex) {\n regexes[token] = isFunction(regex)\n ? regex\n : function (isStrict, localeData) {\n return isStrict && strictRegex ? strictRegex : regex;\n };\n }\n\n function getParseRegexForToken(token, config) {\n if (!hasOwnProp(regexes, token)) {\n return new RegExp(unescapeFormat(token));\n }\n\n return regexes[token](config._strict, config._locale);\n }\n\n // Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript\n function unescapeFormat(s) {\n return regexEscape(\n s\n .replace('\\\\', '')\n .replace(\n /\\\\(\\[)|\\\\(\\])|\\[([^\\]\\[]*)\\]|\\\\(.)/g,\n function (matched, p1, p2, p3, p4) {\n return p1 || p2 || p3 || p4;\n }\n )\n );\n }\n\n function regexEscape(s) {\n return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n }\n\n var tokens = {};\n\n function addParseToken(token, callback) {\n var i,\n func = callback,\n tokenLen;\n if (typeof token === 'string') {\n token = [token];\n }\n if (isNumber(callback)) {\n func = function (input, array) {\n array[callback] = toInt(input);\n };\n }\n tokenLen = token.length;\n for (i = 0; i < tokenLen; i++) {\n tokens[token[i]] = func;\n }\n }\n\n function addWeekParseToken(token, callback) {\n addParseToken(token, function (input, array, config, token) {\n config._w = config._w || {};\n callback(input, config._w, config, token);\n });\n }\n\n function addTimeToArrayFromToken(token, input, config) {\n if (input != null && hasOwnProp(tokens, token)) {\n tokens[token](input, config._a, config, token);\n }\n }\n\n var YEAR = 0,\n MONTH = 1,\n DATE = 2,\n HOUR = 3,\n MINUTE = 4,\n SECOND = 5,\n MILLISECOND = 6,\n WEEK = 7,\n WEEKDAY = 8;\n\n function mod(n, x) {\n return ((n % x) + x) % x;\n }\n\n var indexOf;\n\n if (Array.prototype.indexOf) {\n indexOf = Array.prototype.indexOf;\n } else {\n indexOf = function (o) {\n // I know\n var i;\n for (i = 0; i < this.length; ++i) {\n if (this[i] === o) {\n return i;\n }\n }\n return -1;\n };\n }\n\n function daysInMonth(year, month) {\n if (isNaN(year) || isNaN(month)) {\n return NaN;\n }\n var modMonth = mod(month, 12);\n year += (month - modMonth) / 12;\n return modMonth === 1\n ? isLeapYear(year)\n ? 29\n : 28\n : 31 - ((modMonth % 7) % 2);\n }\n\n // FORMATTING\n\n addFormatToken('M', ['MM', 2], 'Mo', function () {\n return this.month() + 1;\n });\n\n addFormatToken('MMM', 0, 0, function (format) {\n return this.localeData().monthsShort(this, format);\n });\n\n addFormatToken('MMMM', 0, 0, function (format) {\n return this.localeData().months(this, format);\n });\n\n // ALIASES\n\n addUnitAlias('month', 'M');\n\n // PRIORITY\n\n addUnitPriority('month', 8);\n\n // PARSING\n\n addRegexToken('M', match1to2);\n addRegexToken('MM', match1to2, match2);\n addRegexToken('MMM', function (isStrict, locale) {\n return locale.monthsShortRegex(isStrict);\n });\n addRegexToken('MMMM', function (isStrict, locale) {\n return locale.monthsRegex(isStrict);\n });\n\n addParseToken(['M', 'MM'], function (input, array) {\n array[MONTH] = toInt(input) - 1;\n });\n\n addParseToken(['MMM', 'MMMM'], function (input, array, config, token) {\n var month = config._locale.monthsParse(input, token, config._strict);\n // if we didn't find a month name, mark the date as invalid.\n if (month != null) {\n array[MONTH] = month;\n } else {\n getParsingFlags(config).invalidMonth = input;\n }\n });\n\n // LOCALES\n\n var defaultLocaleMonths =\n 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n defaultLocaleMonthsShort =\n 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n MONTHS_IN_FORMAT = /D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?/,\n defaultMonthsShortRegex = matchWord,\n defaultMonthsRegex = matchWord;\n\n function localeMonths(m, format) {\n if (!m) {\n return isArray(this._months)\n ? this._months\n : this._months['standalone'];\n }\n return isArray(this._months)\n ? this._months[m.month()]\n : this._months[\n (this._months.isFormat || MONTHS_IN_FORMAT).test(format)\n ? 'format'\n : 'standalone'\n ][m.month()];\n }\n\n function localeMonthsShort(m, format) {\n if (!m) {\n return isArray(this._monthsShort)\n ? this._monthsShort\n : this._monthsShort['standalone'];\n }\n return isArray(this._monthsShort)\n ? this._monthsShort[m.month()]\n : this._monthsShort[\n MONTHS_IN_FORMAT.test(format) ? 'format' : 'standalone'\n ][m.month()];\n }\n\n function handleStrictParse(monthName, format, strict) {\n var i,\n ii,\n mom,\n llc = monthName.toLocaleLowerCase();\n if (!this._monthsParse) {\n // this is not used\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n for (i = 0; i < 12; ++i) {\n mom = createUTC([2000, i]);\n this._shortMonthsParse[i] = this.monthsShort(\n mom,\n ''\n ).toLocaleLowerCase();\n this._longMonthsParse[i] = this.months(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'MMM') {\n ii = indexOf.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'MMM') {\n ii = indexOf.call(this._shortMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._longMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n }\n\n function localeMonthsParse(monthName, format, strict) {\n var i, mom, regex;\n\n if (this._monthsParseExact) {\n return handleStrictParse.call(this, monthName, format, strict);\n }\n\n if (!this._monthsParse) {\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n }\n\n // TODO: add sorting\n // Sorting makes sure if one month (or abbr) is a prefix of another\n // see sorting in computeMonthsParse\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n if (strict && !this._longMonthsParse[i]) {\n this._longMonthsParse[i] = new RegExp(\n '^' + this.months(mom, '').replace('.', '') + '$',\n 'i'\n );\n this._shortMonthsParse[i] = new RegExp(\n '^' + this.monthsShort(mom, '').replace('.', '') + '$',\n 'i'\n );\n }\n if (!strict && !this._monthsParse[i]) {\n regex =\n '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, '');\n this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (\n strict &&\n format === 'MMMM' &&\n this._longMonthsParse[i].test(monthName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'MMM' &&\n this._shortMonthsParse[i].test(monthName)\n ) {\n return i;\n } else if (!strict && this._monthsParse[i].test(monthName)) {\n return i;\n }\n }\n }\n\n // MOMENTS\n\n function setMonth(mom, value) {\n var dayOfMonth;\n\n if (!mom.isValid()) {\n // No op\n return mom;\n }\n\n if (typeof value === 'string') {\n if (/^\\d+$/.test(value)) {\n value = toInt(value);\n } else {\n value = mom.localeData().monthsParse(value);\n // TODO: Another silent failure?\n if (!isNumber(value)) {\n return mom;\n }\n }\n }\n\n dayOfMonth = Math.min(mom.date(), daysInMonth(mom.year(), value));\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + 'Month'](value, dayOfMonth);\n return mom;\n }\n\n function getSetMonth(value) {\n if (value != null) {\n setMonth(this, value);\n hooks.updateOffset(this, true);\n return this;\n } else {\n return get(this, 'Month');\n }\n }\n\n function getDaysInMonth() {\n return daysInMonth(this.year(), this.month());\n }\n\n function monthsShortRegex(isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsShortStrictRegex;\n } else {\n return this._monthsShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsShortRegex')) {\n this._monthsShortRegex = defaultMonthsShortRegex;\n }\n return this._monthsShortStrictRegex && isStrict\n ? this._monthsShortStrictRegex\n : this._monthsShortRegex;\n }\n }\n\n function monthsRegex(isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsStrictRegex;\n } else {\n return this._monthsRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsRegex')) {\n this._monthsRegex = defaultMonthsRegex;\n }\n return this._monthsStrictRegex && isStrict\n ? this._monthsStrictRegex\n : this._monthsRegex;\n }\n }\n\n function computeMonthsParse() {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var shortPieces = [],\n longPieces = [],\n mixedPieces = [],\n i,\n mom;\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n shortPieces.push(this.monthsShort(mom, ''));\n longPieces.push(this.months(mom, ''));\n mixedPieces.push(this.months(mom, ''));\n mixedPieces.push(this.monthsShort(mom, ''));\n }\n // Sorting makes sure if one month (or abbr) is a prefix of another it\n // will match the longer piece.\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n for (i = 0; i < 12; i++) {\n shortPieces[i] = regexEscape(shortPieces[i]);\n longPieces[i] = regexEscape(longPieces[i]);\n }\n for (i = 0; i < 24; i++) {\n mixedPieces[i] = regexEscape(mixedPieces[i]);\n }\n\n this._monthsRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._monthsShortRegex = this._monthsRegex;\n this._monthsStrictRegex = new RegExp(\n '^(' + longPieces.join('|') + ')',\n 'i'\n );\n this._monthsShortStrictRegex = new RegExp(\n '^(' + shortPieces.join('|') + ')',\n 'i'\n );\n }\n\n // FORMATTING\n\n addFormatToken('Y', 0, 0, function () {\n var y = this.year();\n return y <= 9999 ? zeroFill(y, 4) : '+' + y;\n });\n\n addFormatToken(0, ['YY', 2], 0, function () {\n return this.year() % 100;\n });\n\n addFormatToken(0, ['YYYY', 4], 0, 'year');\n addFormatToken(0, ['YYYYY', 5], 0, 'year');\n addFormatToken(0, ['YYYYYY', 6, true], 0, 'year');\n\n // ALIASES\n\n addUnitAlias('year', 'y');\n\n // PRIORITIES\n\n addUnitPriority('year', 1);\n\n // PARSING\n\n addRegexToken('Y', matchSigned);\n addRegexToken('YY', match1to2, match2);\n addRegexToken('YYYY', match1to4, match4);\n addRegexToken('YYYYY', match1to6, match6);\n addRegexToken('YYYYYY', match1to6, match6);\n\n addParseToken(['YYYYY', 'YYYYYY'], YEAR);\n addParseToken('YYYY', function (input, array) {\n array[YEAR] =\n input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input);\n });\n addParseToken('YY', function (input, array) {\n array[YEAR] = hooks.parseTwoDigitYear(input);\n });\n addParseToken('Y', function (input, array) {\n array[YEAR] = parseInt(input, 10);\n });\n\n // HELPERS\n\n function daysInYear(year) {\n return isLeapYear(year) ? 366 : 365;\n }\n\n // HOOKS\n\n hooks.parseTwoDigitYear = function (input) {\n return toInt(input) + (toInt(input) > 68 ? 1900 : 2000);\n };\n\n // MOMENTS\n\n var getSetYear = makeGetSet('FullYear', true);\n\n function getIsLeapYear() {\n return isLeapYear(this.year());\n }\n\n function createDate(y, m, d, h, M, s, ms) {\n // can't just apply() to create a date:\n // https://stackoverflow.com/q/181348\n var date;\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n date = new Date(y + 400, m, d, h, M, s, ms);\n if (isFinite(date.getFullYear())) {\n date.setFullYear(y);\n }\n } else {\n date = new Date(y, m, d, h, M, s, ms);\n }\n\n return date;\n }\n\n function createUTCDate(y) {\n var date, args;\n // the Date.UTC function remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n args = Array.prototype.slice.call(arguments);\n // preserve leap years using a full 400 year cycle, then reset\n args[0] = y + 400;\n date = new Date(Date.UTC.apply(null, args));\n if (isFinite(date.getUTCFullYear())) {\n date.setUTCFullYear(y);\n }\n } else {\n date = new Date(Date.UTC.apply(null, arguments));\n }\n\n return date;\n }\n\n // start-of-first-week - start-of-year\n function firstWeekOffset(year, dow, doy) {\n var // first-week day -- which january is always in the first week (4 for iso, 1 for other)\n fwd = 7 + dow - doy,\n // first-week day local weekday -- which local weekday is fwd\n fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7;\n\n return -fwdlw + fwd - 1;\n }\n\n // https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday\n function dayOfYearFromWeeks(year, week, weekday, dow, doy) {\n var localWeekday = (7 + weekday - dow) % 7,\n weekOffset = firstWeekOffset(year, dow, doy),\n dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset,\n resYear,\n resDayOfYear;\n\n if (dayOfYear <= 0) {\n resYear = year - 1;\n resDayOfYear = daysInYear(resYear) + dayOfYear;\n } else if (dayOfYear > daysInYear(year)) {\n resYear = year + 1;\n resDayOfYear = dayOfYear - daysInYear(year);\n } else {\n resYear = year;\n resDayOfYear = dayOfYear;\n }\n\n return {\n year: resYear,\n dayOfYear: resDayOfYear,\n };\n }\n\n function weekOfYear(mom, dow, doy) {\n var weekOffset = firstWeekOffset(mom.year(), dow, doy),\n week = Math.floor((mom.dayOfYear() - weekOffset - 1) / 7) + 1,\n resWeek,\n resYear;\n\n if (week < 1) {\n resYear = mom.year() - 1;\n resWeek = week + weeksInYear(resYear, dow, doy);\n } else if (week > weeksInYear(mom.year(), dow, doy)) {\n resWeek = week - weeksInYear(mom.year(), dow, doy);\n resYear = mom.year() + 1;\n } else {\n resYear = mom.year();\n resWeek = week;\n }\n\n return {\n week: resWeek,\n year: resYear,\n };\n }\n\n function weeksInYear(year, dow, doy) {\n var weekOffset = firstWeekOffset(year, dow, doy),\n weekOffsetNext = firstWeekOffset(year + 1, dow, doy);\n return (daysInYear(year) - weekOffset + weekOffsetNext) / 7;\n }\n\n // FORMATTING\n\n addFormatToken('w', ['ww', 2], 'wo', 'week');\n addFormatToken('W', ['WW', 2], 'Wo', 'isoWeek');\n\n // ALIASES\n\n addUnitAlias('week', 'w');\n addUnitAlias('isoWeek', 'W');\n\n // PRIORITIES\n\n addUnitPriority('week', 5);\n addUnitPriority('isoWeek', 5);\n\n // PARSING\n\n addRegexToken('w', match1to2);\n addRegexToken('ww', match1to2, match2);\n addRegexToken('W', match1to2);\n addRegexToken('WW', match1to2, match2);\n\n addWeekParseToken(\n ['w', 'ww', 'W', 'WW'],\n function (input, week, config, token) {\n week[token.substr(0, 1)] = toInt(input);\n }\n );\n\n // HELPERS\n\n // LOCALES\n\n function localeWeek(mom) {\n return weekOfYear(mom, this._week.dow, this._week.doy).week;\n }\n\n var defaultLocaleWeek = {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n };\n\n function localeFirstDayOfWeek() {\n return this._week.dow;\n }\n\n function localeFirstDayOfYear() {\n return this._week.doy;\n }\n\n // MOMENTS\n\n function getSetWeek(input) {\n var week = this.localeData().week(this);\n return input == null ? week : this.add((input - week) * 7, 'd');\n }\n\n function getSetISOWeek(input) {\n var week = weekOfYear(this, 1, 4).week;\n return input == null ? week : this.add((input - week) * 7, 'd');\n }\n\n // FORMATTING\n\n addFormatToken('d', 0, 'do', 'day');\n\n addFormatToken('dd', 0, 0, function (format) {\n return this.localeData().weekdaysMin(this, format);\n });\n\n addFormatToken('ddd', 0, 0, function (format) {\n return this.localeData().weekdaysShort(this, format);\n });\n\n addFormatToken('dddd', 0, 0, function (format) {\n return this.localeData().weekdays(this, format);\n });\n\n addFormatToken('e', 0, 0, 'weekday');\n addFormatToken('E', 0, 0, 'isoWeekday');\n\n // ALIASES\n\n addUnitAlias('day', 'd');\n addUnitAlias('weekday', 'e');\n addUnitAlias('isoWeekday', 'E');\n\n // PRIORITY\n addUnitPriority('day', 11);\n addUnitPriority('weekday', 11);\n addUnitPriority('isoWeekday', 11);\n\n // PARSING\n\n addRegexToken('d', match1to2);\n addRegexToken('e', match1to2);\n addRegexToken('E', match1to2);\n addRegexToken('dd', function (isStrict, locale) {\n return locale.weekdaysMinRegex(isStrict);\n });\n addRegexToken('ddd', function (isStrict, locale) {\n return locale.weekdaysShortRegex(isStrict);\n });\n addRegexToken('dddd', function (isStrict, locale) {\n return locale.weekdaysRegex(isStrict);\n });\n\n addWeekParseToken(['dd', 'ddd', 'dddd'], function (input, week, config, token) {\n var weekday = config._locale.weekdaysParse(input, token, config._strict);\n // if we didn't get a weekday name, mark the date as invalid\n if (weekday != null) {\n week.d = weekday;\n } else {\n getParsingFlags(config).invalidWeekday = input;\n }\n });\n\n addWeekParseToken(['d', 'e', 'E'], function (input, week, config, token) {\n week[token] = toInt(input);\n });\n\n // HELPERS\n\n function parseWeekday(input, locale) {\n if (typeof input !== 'string') {\n return input;\n }\n\n if (!isNaN(input)) {\n return parseInt(input, 10);\n }\n\n input = locale.weekdaysParse(input);\n if (typeof input === 'number') {\n return input;\n }\n\n return null;\n }\n\n function parseIsoWeekday(input, locale) {\n if (typeof input === 'string') {\n return locale.weekdaysParse(input) % 7 || 7;\n }\n return isNaN(input) ? null : input;\n }\n\n // LOCALES\n function shiftWeekdays(ws, n) {\n return ws.slice(n, 7).concat(ws.slice(0, n));\n }\n\n var defaultLocaleWeekdays =\n 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n defaultWeekdaysRegex = matchWord,\n defaultWeekdaysShortRegex = matchWord,\n defaultWeekdaysMinRegex = matchWord;\n\n function localeWeekdays(m, format) {\n var weekdays = isArray(this._weekdays)\n ? this._weekdays\n : this._weekdays[\n m && m !== true && this._weekdays.isFormat.test(format)\n ? 'format'\n : 'standalone'\n ];\n return m === true\n ? shiftWeekdays(weekdays, this._week.dow)\n : m\n ? weekdays[m.day()]\n : weekdays;\n }\n\n function localeWeekdaysShort(m) {\n return m === true\n ? shiftWeekdays(this._weekdaysShort, this._week.dow)\n : m\n ? this._weekdaysShort[m.day()]\n : this._weekdaysShort;\n }\n\n function localeWeekdaysMin(m) {\n return m === true\n ? shiftWeekdays(this._weekdaysMin, this._week.dow)\n : m\n ? this._weekdaysMin[m.day()]\n : this._weekdaysMin;\n }\n\n function handleStrictParse$1(weekdayName, format, strict) {\n var i,\n ii,\n mom,\n llc = weekdayName.toLocaleLowerCase();\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._minWeekdaysParse = [];\n\n for (i = 0; i < 7; ++i) {\n mom = createUTC([2000, 1]).day(i);\n this._minWeekdaysParse[i] = this.weekdaysMin(\n mom,\n ''\n ).toLocaleLowerCase();\n this._shortWeekdaysParse[i] = this.weekdaysShort(\n mom,\n ''\n ).toLocaleLowerCase();\n this._weekdaysParse[i] = this.weekdays(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'dddd') {\n ii = indexOf.call(this._weekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'dddd') {\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._minWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n }\n\n function localeWeekdaysParse(weekdayName, format, strict) {\n var i, mom, regex;\n\n if (this._weekdaysParseExact) {\n return handleStrictParse$1.call(this, weekdayName, format, strict);\n }\n\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._minWeekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._fullWeekdaysParse = [];\n }\n\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n\n mom = createUTC([2000, 1]).day(i);\n if (strict && !this._fullWeekdaysParse[i]) {\n this._fullWeekdaysParse[i] = new RegExp(\n '^' + this.weekdays(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n this._shortWeekdaysParse[i] = new RegExp(\n '^' + this.weekdaysShort(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n this._minWeekdaysParse[i] = new RegExp(\n '^' + this.weekdaysMin(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n }\n if (!this._weekdaysParse[i]) {\n regex =\n '^' +\n this.weekdays(mom, '') +\n '|^' +\n this.weekdaysShort(mom, '') +\n '|^' +\n this.weekdaysMin(mom, '');\n this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (\n strict &&\n format === 'dddd' &&\n this._fullWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'ddd' &&\n this._shortWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'dd' &&\n this._minWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (!strict && this._weekdaysParse[i].test(weekdayName)) {\n return i;\n }\n }\n }\n\n // MOMENTS\n\n function getSetDayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay();\n if (input != null) {\n input = parseWeekday(input, this.localeData());\n return this.add(input - day, 'd');\n } else {\n return day;\n }\n }\n\n function getSetLocaleDayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7;\n return input == null ? weekday : this.add(input - weekday, 'd');\n }\n\n function getSetISODayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n\n // behaves the same as moment#day except\n // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6)\n // as a setter, sunday should belong to the previous week.\n\n if (input != null) {\n var weekday = parseIsoWeekday(input, this.localeData());\n return this.day(this.day() % 7 ? weekday : weekday - 7);\n } else {\n return this.day() || 7;\n }\n }\n\n function weekdaysRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysStrictRegex;\n } else {\n return this._weekdaysRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n this._weekdaysRegex = defaultWeekdaysRegex;\n }\n return this._weekdaysStrictRegex && isStrict\n ? this._weekdaysStrictRegex\n : this._weekdaysRegex;\n }\n }\n\n function weekdaysShortRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysShortStrictRegex;\n } else {\n return this._weekdaysShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysShortRegex')) {\n this._weekdaysShortRegex = defaultWeekdaysShortRegex;\n }\n return this._weekdaysShortStrictRegex && isStrict\n ? this._weekdaysShortStrictRegex\n : this._weekdaysShortRegex;\n }\n }\n\n function weekdaysMinRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysMinStrictRegex;\n } else {\n return this._weekdaysMinRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysMinRegex')) {\n this._weekdaysMinRegex = defaultWeekdaysMinRegex;\n }\n return this._weekdaysMinStrictRegex && isStrict\n ? this._weekdaysMinStrictRegex\n : this._weekdaysMinRegex;\n }\n }\n\n function computeWeekdaysParse() {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var minPieces = [],\n shortPieces = [],\n longPieces = [],\n mixedPieces = [],\n i,\n mom,\n minp,\n shortp,\n longp;\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, 1]).day(i);\n minp = regexEscape(this.weekdaysMin(mom, ''));\n shortp = regexEscape(this.weekdaysShort(mom, ''));\n longp = regexEscape(this.weekdays(mom, ''));\n minPieces.push(minp);\n shortPieces.push(shortp);\n longPieces.push(longp);\n mixedPieces.push(minp);\n mixedPieces.push(shortp);\n mixedPieces.push(longp);\n }\n // Sorting makes sure if one weekday (or abbr) is a prefix of another it\n // will match the longer piece.\n minPieces.sort(cmpLenRev);\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n\n this._weekdaysRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._weekdaysShortRegex = this._weekdaysRegex;\n this._weekdaysMinRegex = this._weekdaysRegex;\n\n this._weekdaysStrictRegex = new RegExp(\n '^(' + longPieces.join('|') + ')',\n 'i'\n );\n this._weekdaysShortStrictRegex = new RegExp(\n '^(' + shortPieces.join('|') + ')',\n 'i'\n );\n this._weekdaysMinStrictRegex = new RegExp(\n '^(' + minPieces.join('|') + ')',\n 'i'\n );\n }\n\n // FORMATTING\n\n function hFormat() {\n return this.hours() % 12 || 12;\n }\n\n function kFormat() {\n return this.hours() || 24;\n }\n\n addFormatToken('H', ['HH', 2], 0, 'hour');\n addFormatToken('h', ['hh', 2], 0, hFormat);\n addFormatToken('k', ['kk', 2], 0, kFormat);\n\n addFormatToken('hmm', 0, 0, function () {\n return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2);\n });\n\n addFormatToken('hmmss', 0, 0, function () {\n return (\n '' +\n hFormat.apply(this) +\n zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2)\n );\n });\n\n addFormatToken('Hmm', 0, 0, function () {\n return '' + this.hours() + zeroFill(this.minutes(), 2);\n });\n\n addFormatToken('Hmmss', 0, 0, function () {\n return (\n '' +\n this.hours() +\n zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2)\n );\n });\n\n function meridiem(token, lowercase) {\n addFormatToken(token, 0, 0, function () {\n return this.localeData().meridiem(\n this.hours(),\n this.minutes(),\n lowercase\n );\n });\n }\n\n meridiem('a', true);\n meridiem('A', false);\n\n // ALIASES\n\n addUnitAlias('hour', 'h');\n\n // PRIORITY\n addUnitPriority('hour', 13);\n\n // PARSING\n\n function matchMeridiem(isStrict, locale) {\n return locale._meridiemParse;\n }\n\n addRegexToken('a', matchMeridiem);\n addRegexToken('A', matchMeridiem);\n addRegexToken('H', match1to2);\n addRegexToken('h', match1to2);\n addRegexToken('k', match1to2);\n addRegexToken('HH', match1to2, match2);\n addRegexToken('hh', match1to2, match2);\n addRegexToken('kk', match1to2, match2);\n\n addRegexToken('hmm', match3to4);\n addRegexToken('hmmss', match5to6);\n addRegexToken('Hmm', match3to4);\n addRegexToken('Hmmss', match5to6);\n\n addParseToken(['H', 'HH'], HOUR);\n addParseToken(['k', 'kk'], function (input, array, config) {\n var kInput = toInt(input);\n array[HOUR] = kInput === 24 ? 0 : kInput;\n });\n addParseToken(['a', 'A'], function (input, array, config) {\n config._isPm = config._locale.isPM(input);\n config._meridiem = input;\n });\n addParseToken(['h', 'hh'], function (input, array, config) {\n array[HOUR] = toInt(input);\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('hmmss', function (input, array, config) {\n var pos1 = input.length - 4,\n pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('Hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n });\n addParseToken('Hmmss', function (input, array, config) {\n var pos1 = input.length - 4,\n pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n });\n\n // LOCALES\n\n function localeIsPM(input) {\n // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays\n // Using charAt should be more compatible.\n return (input + '').toLowerCase().charAt(0) === 'p';\n }\n\n var defaultLocaleMeridiemParse = /[ap]\\.?m?\\.?/i,\n // Setting the hour should keep the time, because the user explicitly\n // specified which hour they want. So trying to maintain the same hour (in\n // a new timezone) makes sense. Adding/subtracting hours does not follow\n // this rule.\n getSetHour = makeGetSet('Hours', true);\n\n function localeMeridiem(hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'pm' : 'PM';\n } else {\n return isLower ? 'am' : 'AM';\n }\n }\n\n var baseConfig = {\n calendar: defaultCalendar,\n longDateFormat: defaultLongDateFormat,\n invalidDate: defaultInvalidDate,\n ordinal: defaultOrdinal,\n dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse,\n relativeTime: defaultRelativeTime,\n\n months: defaultLocaleMonths,\n monthsShort: defaultLocaleMonthsShort,\n\n week: defaultLocaleWeek,\n\n weekdays: defaultLocaleWeekdays,\n weekdaysMin: defaultLocaleWeekdaysMin,\n weekdaysShort: defaultLocaleWeekdaysShort,\n\n meridiemParse: defaultLocaleMeridiemParse,\n };\n\n // internal storage for locale config files\n var locales = {},\n localeFamilies = {},\n globalLocale;\n\n function commonPrefix(arr1, arr2) {\n var i,\n minl = Math.min(arr1.length, arr2.length);\n for (i = 0; i < minl; i += 1) {\n if (arr1[i] !== arr2[i]) {\n return i;\n }\n }\n return minl;\n }\n\n function normalizeLocale(key) {\n return key ? key.toLowerCase().replace('_', '-') : key;\n }\n\n // pick the locale from the array\n // try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each\n // substring from most specific to least, but move to the next array item if it's a more specific variant than the current root\n function chooseLocale(names) {\n var i = 0,\n j,\n next,\n locale,\n split;\n\n while (i < names.length) {\n split = normalizeLocale(names[i]).split('-');\n j = split.length;\n next = normalizeLocale(names[i + 1]);\n next = next ? next.split('-') : null;\n while (j > 0) {\n locale = loadLocale(split.slice(0, j).join('-'));\n if (locale) {\n return locale;\n }\n if (\n next &&\n next.length >= j &&\n commonPrefix(split, next) >= j - 1\n ) {\n //the next array item is better than a shallower substring of this one\n break;\n }\n j--;\n }\n i++;\n }\n return globalLocale;\n }\n\n function isLocaleNameSane(name) {\n // Prevent names that look like filesystem paths, i.e contain '/' or '\\'\n return name.match('^[^/\\\\\\\\]*$') != null;\n }\n\n function loadLocale(name) {\n var oldLocale = null,\n aliasedRequire;\n // TODO: Find a better way to register and load all the locales in Node\n if (\n locales[name] === undefined &&\n typeof module !== 'undefined' &&\n module &&\n module.exports &&\n isLocaleNameSane(name)\n ) {\n try {\n oldLocale = globalLocale._abbr;\n aliasedRequire = require;\n aliasedRequire('./locale/' + name);\n getSetGlobalLocale(oldLocale);\n } catch (e) {\n // mark as not found to avoid repeating expensive file require call causing high CPU\n // when trying to find en-US, en_US, en-us for every format call\n locales[name] = null; // null means not found\n }\n }\n return locales[name];\n }\n\n // This function will load locale and then set the global locale. If\n // no arguments are passed in, it will simply return the current global\n // locale key.\n function getSetGlobalLocale(key, values) {\n var data;\n if (key) {\n if (isUndefined(values)) {\n data = getLocale(key);\n } else {\n data = defineLocale(key, values);\n }\n\n if (data) {\n // moment.duration._locale = moment._locale = data;\n globalLocale = data;\n } else {\n if (typeof console !== 'undefined' && console.warn) {\n //warn user if arguments are passed but the locale could not be set\n console.warn(\n 'Locale ' + key + ' not found. Did you forget to load it?'\n );\n }\n }\n }\n\n return globalLocale._abbr;\n }\n\n function defineLocale(name, config) {\n if (config !== null) {\n var locale,\n parentConfig = baseConfig;\n config.abbr = name;\n if (locales[name] != null) {\n deprecateSimple(\n 'defineLocaleOverride',\n 'use moment.updateLocale(localeName, config) to change ' +\n 'an existing locale. moment.defineLocale(localeName, ' +\n 'config) should only be used for creating a new locale ' +\n 'See http://momentjs.com/guides/#/warnings/define-locale/ for more info.'\n );\n parentConfig = locales[name]._config;\n } else if (config.parentLocale != null) {\n if (locales[config.parentLocale] != null) {\n parentConfig = locales[config.parentLocale]._config;\n } else {\n locale = loadLocale(config.parentLocale);\n if (locale != null) {\n parentConfig = locale._config;\n } else {\n if (!localeFamilies[config.parentLocale]) {\n localeFamilies[config.parentLocale] = [];\n }\n localeFamilies[config.parentLocale].push({\n name: name,\n config: config,\n });\n return null;\n }\n }\n }\n locales[name] = new Locale(mergeConfigs(parentConfig, config));\n\n if (localeFamilies[name]) {\n localeFamilies[name].forEach(function (x) {\n defineLocale(x.name, x.config);\n });\n }\n\n // backwards compat for now: also set the locale\n // make sure we set the locale AFTER all child locales have been\n // created, so we won't end up with the child locale set.\n getSetGlobalLocale(name);\n\n return locales[name];\n } else {\n // useful for testing\n delete locales[name];\n return null;\n }\n }\n\n function updateLocale(name, config) {\n if (config != null) {\n var locale,\n tmpLocale,\n parentConfig = baseConfig;\n\n if (locales[name] != null && locales[name].parentLocale != null) {\n // Update existing child locale in-place to avoid memory-leaks\n locales[name].set(mergeConfigs(locales[name]._config, config));\n } else {\n // MERGE\n tmpLocale = loadLocale(name);\n if (tmpLocale != null) {\n parentConfig = tmpLocale._config;\n }\n config = mergeConfigs(parentConfig, config);\n if (tmpLocale == null) {\n // updateLocale is called for creating a new locale\n // Set abbr so it will have a name (getters return\n // undefined otherwise).\n config.abbr = name;\n }\n locale = new Locale(config);\n locale.parentLocale = locales[name];\n locales[name] = locale;\n }\n\n // backwards compat for now: also set the locale\n getSetGlobalLocale(name);\n } else {\n // pass null for config to unupdate, useful for tests\n if (locales[name] != null) {\n if (locales[name].parentLocale != null) {\n locales[name] = locales[name].parentLocale;\n if (name === getSetGlobalLocale()) {\n getSetGlobalLocale(name);\n }\n } else if (locales[name] != null) {\n delete locales[name];\n }\n }\n }\n return locales[name];\n }\n\n // returns locale data\n function getLocale(key) {\n var locale;\n\n if (key && key._locale && key._locale._abbr) {\n key = key._locale._abbr;\n }\n\n if (!key) {\n return globalLocale;\n }\n\n if (!isArray(key)) {\n //short-circuit everything else\n locale = loadLocale(key);\n if (locale) {\n return locale;\n }\n key = [key];\n }\n\n return chooseLocale(key);\n }\n\n function listLocales() {\n return keys(locales);\n }\n\n function checkOverflow(m) {\n var overflow,\n a = m._a;\n\n if (a && getParsingFlags(m).overflow === -2) {\n overflow =\n a[MONTH] < 0 || a[MONTH] > 11\n ? MONTH\n : a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH])\n ? DATE\n : a[HOUR] < 0 ||\n a[HOUR] > 24 ||\n (a[HOUR] === 24 &&\n (a[MINUTE] !== 0 ||\n a[SECOND] !== 0 ||\n a[MILLISECOND] !== 0))\n ? HOUR\n : a[MINUTE] < 0 || a[MINUTE] > 59\n ? MINUTE\n : a[SECOND] < 0 || a[SECOND] > 59\n ? SECOND\n : a[MILLISECOND] < 0 || a[MILLISECOND] > 999\n ? MILLISECOND\n : -1;\n\n if (\n getParsingFlags(m)._overflowDayOfYear &&\n (overflow < YEAR || overflow > DATE)\n ) {\n overflow = DATE;\n }\n if (getParsingFlags(m)._overflowWeeks && overflow === -1) {\n overflow = WEEK;\n }\n if (getParsingFlags(m)._overflowWeekday && overflow === -1) {\n overflow = WEEKDAY;\n }\n\n getParsingFlags(m).overflow = overflow;\n }\n\n return m;\n }\n\n // iso 8601 regex\n // 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00)\n var extendedIsoRegex =\n /^\\s*((?:[+-]\\d{6}|\\d{4})-(?:\\d\\d-\\d\\d|W\\d\\d-\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?::\\d\\d(?::\\d\\d(?:[.,]\\d+)?)?)?)([+-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,\n basicIsoRegex =\n /^\\s*((?:[+-]\\d{6}|\\d{4})(?:\\d\\d\\d\\d|W\\d\\d\\d|W\\d\\d|\\d\\d\\d|\\d\\d|))(?:(T| )(\\d\\d(?:\\d\\d(?:\\d\\d(?:[.,]\\d+)?)?)?)([+-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,\n tzRegex = /Z|[+-]\\d\\d(?::?\\d\\d)?/,\n isoDates = [\n ['YYYYYY-MM-DD', /[+-]\\d{6}-\\d\\d-\\d\\d/],\n ['YYYY-MM-DD', /\\d{4}-\\d\\d-\\d\\d/],\n ['GGGG-[W]WW-E', /\\d{4}-W\\d\\d-\\d/],\n ['GGGG-[W]WW', /\\d{4}-W\\d\\d/, false],\n ['YYYY-DDD', /\\d{4}-\\d{3}/],\n ['YYYY-MM', /\\d{4}-\\d\\d/, false],\n ['YYYYYYMMDD', /[+-]\\d{10}/],\n ['YYYYMMDD', /\\d{8}/],\n ['GGGG[W]WWE', /\\d{4}W\\d{3}/],\n ['GGGG[W]WW', /\\d{4}W\\d{2}/, false],\n ['YYYYDDD', /\\d{7}/],\n ['YYYYMM', /\\d{6}/, false],\n ['YYYY', /\\d{4}/, false],\n ],\n // iso time formats and regexes\n isoTimes = [\n ['HH:mm:ss.SSSS', /\\d\\d:\\d\\d:\\d\\d\\.\\d+/],\n ['HH:mm:ss,SSSS', /\\d\\d:\\d\\d:\\d\\d,\\d+/],\n ['HH:mm:ss', /\\d\\d:\\d\\d:\\d\\d/],\n ['HH:mm', /\\d\\d:\\d\\d/],\n ['HHmmss.SSSS', /\\d\\d\\d\\d\\d\\d\\.\\d+/],\n ['HHmmss,SSSS', /\\d\\d\\d\\d\\d\\d,\\d+/],\n ['HHmmss', /\\d\\d\\d\\d\\d\\d/],\n ['HHmm', /\\d\\d\\d\\d/],\n ['HH', /\\d\\d/],\n ],\n aspNetJsonRegex = /^\\/?Date\\((-?\\d+)/i,\n // RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3\n rfc2822 =\n /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\\s)?(\\d{1,2})\\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\s(\\d{2,4})\\s(\\d\\d):(\\d\\d)(?::(\\d\\d))?\\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\\d{4}))$/,\n obsOffsets = {\n UT: 0,\n GMT: 0,\n EDT: -4 * 60,\n EST: -5 * 60,\n CDT: -5 * 60,\n CST: -6 * 60,\n MDT: -6 * 60,\n MST: -7 * 60,\n PDT: -7 * 60,\n PST: -8 * 60,\n };\n\n // date from iso format\n function configFromISO(config) {\n var i,\n l,\n string = config._i,\n match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string),\n allowTime,\n dateFormat,\n timeFormat,\n tzFormat,\n isoDatesLen = isoDates.length,\n isoTimesLen = isoTimes.length;\n\n if (match) {\n getParsingFlags(config).iso = true;\n for (i = 0, l = isoDatesLen; i < l; i++) {\n if (isoDates[i][1].exec(match[1])) {\n dateFormat = isoDates[i][0];\n allowTime = isoDates[i][2] !== false;\n break;\n }\n }\n if (dateFormat == null) {\n config._isValid = false;\n return;\n }\n if (match[3]) {\n for (i = 0, l = isoTimesLen; i < l; i++) {\n if (isoTimes[i][1].exec(match[3])) {\n // match[2] should be 'T' or space\n timeFormat = (match[2] || ' ') + isoTimes[i][0];\n break;\n }\n }\n if (timeFormat == null) {\n config._isValid = false;\n return;\n }\n }\n if (!allowTime && timeFormat != null) {\n config._isValid = false;\n return;\n }\n if (match[4]) {\n if (tzRegex.exec(match[4])) {\n tzFormat = 'Z';\n } else {\n config._isValid = false;\n return;\n }\n }\n config._f = dateFormat + (timeFormat || '') + (tzFormat || '');\n configFromStringAndFormat(config);\n } else {\n config._isValid = false;\n }\n }\n\n function extractFromRFC2822Strings(\n yearStr,\n monthStr,\n dayStr,\n hourStr,\n minuteStr,\n secondStr\n ) {\n var result = [\n untruncateYear(yearStr),\n defaultLocaleMonthsShort.indexOf(monthStr),\n parseInt(dayStr, 10),\n parseInt(hourStr, 10),\n parseInt(minuteStr, 10),\n ];\n\n if (secondStr) {\n result.push(parseInt(secondStr, 10));\n }\n\n return result;\n }\n\n function untruncateYear(yearStr) {\n var year = parseInt(yearStr, 10);\n if (year <= 49) {\n return 2000 + year;\n } else if (year <= 999) {\n return 1900 + year;\n }\n return year;\n }\n\n function preprocessRFC2822(s) {\n // Remove comments and folding whitespace and replace multiple-spaces with a single space\n return s\n .replace(/\\([^()]*\\)|[\\n\\t]/g, ' ')\n .replace(/(\\s\\s+)/g, ' ')\n .replace(/^\\s\\s*/, '')\n .replace(/\\s\\s*$/, '');\n }\n\n function checkWeekday(weekdayStr, parsedInput, config) {\n if (weekdayStr) {\n // TODO: Replace the vanilla JS Date object with an independent day-of-week check.\n var weekdayProvided = defaultLocaleWeekdaysShort.indexOf(weekdayStr),\n weekdayActual = new Date(\n parsedInput[0],\n parsedInput[1],\n parsedInput[2]\n ).getDay();\n if (weekdayProvided !== weekdayActual) {\n getParsingFlags(config).weekdayMismatch = true;\n config._isValid = false;\n return false;\n }\n }\n return true;\n }\n\n function calculateOffset(obsOffset, militaryOffset, numOffset) {\n if (obsOffset) {\n return obsOffsets[obsOffset];\n } else if (militaryOffset) {\n // the only allowed military tz is Z\n return 0;\n } else {\n var hm = parseInt(numOffset, 10),\n m = hm % 100,\n h = (hm - m) / 100;\n return h * 60 + m;\n }\n }\n\n // date and time from ref 2822 format\n function configFromRFC2822(config) {\n var match = rfc2822.exec(preprocessRFC2822(config._i)),\n parsedArray;\n if (match) {\n parsedArray = extractFromRFC2822Strings(\n match[4],\n match[3],\n match[2],\n match[5],\n match[6],\n match[7]\n );\n if (!checkWeekday(match[1], parsedArray, config)) {\n return;\n }\n\n config._a = parsedArray;\n config._tzm = calculateOffset(match[8], match[9], match[10]);\n\n config._d = createUTCDate.apply(null, config._a);\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n\n getParsingFlags(config).rfc2822 = true;\n } else {\n config._isValid = false;\n }\n }\n\n // date from 1) ASP.NET, 2) ISO, 3) RFC 2822 formats, or 4) optional fallback if parsing isn't strict\n function configFromString(config) {\n var matched = aspNetJsonRegex.exec(config._i);\n if (matched !== null) {\n config._d = new Date(+matched[1]);\n return;\n }\n\n configFromISO(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n configFromRFC2822(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n if (config._strict) {\n config._isValid = false;\n } else {\n // Final attempt, use Input Fallback\n hooks.createFromInputFallback(config);\n }\n }\n\n hooks.createFromInputFallback = deprecate(\n 'value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' +\n 'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' +\n 'discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.',\n function (config) {\n config._d = new Date(config._i + (config._useUTC ? ' UTC' : ''));\n }\n );\n\n // Pick the first defined of two or three arguments.\n function defaults(a, b, c) {\n if (a != null) {\n return a;\n }\n if (b != null) {\n return b;\n }\n return c;\n }\n\n function currentDateArray(config) {\n // hooks is actually the exported moment object\n var nowValue = new Date(hooks.now());\n if (config._useUTC) {\n return [\n nowValue.getUTCFullYear(),\n nowValue.getUTCMonth(),\n nowValue.getUTCDate(),\n ];\n }\n return [nowValue.getFullYear(), nowValue.getMonth(), nowValue.getDate()];\n }\n\n // convert an array to a date.\n // the array should mirror the parameters below\n // note: all values past the year are optional and will default to the lowest possible value.\n // [year, month, day , hour, minute, second, millisecond]\n function configFromArray(config) {\n var i,\n date,\n input = [],\n currentDate,\n expectedWeekday,\n yearToUse;\n\n if (config._d) {\n return;\n }\n\n currentDate = currentDateArray(config);\n\n //compute day of the year from weeks and weekdays\n if (config._w && config._a[DATE] == null && config._a[MONTH] == null) {\n dayOfYearFromWeekInfo(config);\n }\n\n //if the day of the year is set, figure out what it is\n if (config._dayOfYear != null) {\n yearToUse = defaults(config._a[YEAR], currentDate[YEAR]);\n\n if (\n config._dayOfYear > daysInYear(yearToUse) ||\n config._dayOfYear === 0\n ) {\n getParsingFlags(config)._overflowDayOfYear = true;\n }\n\n date = createUTCDate(yearToUse, 0, config._dayOfYear);\n config._a[MONTH] = date.getUTCMonth();\n config._a[DATE] = date.getUTCDate();\n }\n\n // Default to current date.\n // * if no year, month, day of month are given, default to today\n // * if day of month is given, default month and year\n // * if month is given, default only year\n // * if year is given, don't default anything\n for (i = 0; i < 3 && config._a[i] == null; ++i) {\n config._a[i] = input[i] = currentDate[i];\n }\n\n // Zero out whatever was not defaulted, including time\n for (; i < 7; i++) {\n config._a[i] = input[i] =\n config._a[i] == null ? (i === 2 ? 1 : 0) : config._a[i];\n }\n\n // Check for 24:00:00.000\n if (\n config._a[HOUR] === 24 &&\n config._a[MINUTE] === 0 &&\n config._a[SECOND] === 0 &&\n config._a[MILLISECOND] === 0\n ) {\n config._nextDay = true;\n config._a[HOUR] = 0;\n }\n\n config._d = (config._useUTC ? createUTCDate : createDate).apply(\n null,\n input\n );\n expectedWeekday = config._useUTC\n ? config._d.getUTCDay()\n : config._d.getDay();\n\n // Apply timezone offset from input. The actual utcOffset can be changed\n // with parseZone.\n if (config._tzm != null) {\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n }\n\n if (config._nextDay) {\n config._a[HOUR] = 24;\n }\n\n // check for mismatching day of week\n if (\n config._w &&\n typeof config._w.d !== 'undefined' &&\n config._w.d !== expectedWeekday\n ) {\n getParsingFlags(config).weekdayMismatch = true;\n }\n }\n\n function dayOfYearFromWeekInfo(config) {\n var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow, curWeek;\n\n w = config._w;\n if (w.GG != null || w.W != null || w.E != null) {\n dow = 1;\n doy = 4;\n\n // TODO: We need to take the current isoWeekYear, but that depends on\n // how we interpret now (local, utc, fixed offset). So create\n // a now version of current config (take local/utc/offset flags, and\n // create now).\n weekYear = defaults(\n w.GG,\n config._a[YEAR],\n weekOfYear(createLocal(), 1, 4).year\n );\n week = defaults(w.W, 1);\n weekday = defaults(w.E, 1);\n if (weekday < 1 || weekday > 7) {\n weekdayOverflow = true;\n }\n } else {\n dow = config._locale._week.dow;\n doy = config._locale._week.doy;\n\n curWeek = weekOfYear(createLocal(), dow, doy);\n\n weekYear = defaults(w.gg, config._a[YEAR], curWeek.year);\n\n // Default to current week.\n week = defaults(w.w, curWeek.week);\n\n if (w.d != null) {\n // weekday -- low day numbers are considered next week\n weekday = w.d;\n if (weekday < 0 || weekday > 6) {\n weekdayOverflow = true;\n }\n } else if (w.e != null) {\n // local weekday -- counting starts from beginning of week\n weekday = w.e + dow;\n if (w.e < 0 || w.e > 6) {\n weekdayOverflow = true;\n }\n } else {\n // default to beginning of week\n weekday = dow;\n }\n }\n if (week < 1 || week > weeksInYear(weekYear, dow, doy)) {\n getParsingFlags(config)._overflowWeeks = true;\n } else if (weekdayOverflow != null) {\n getParsingFlags(config)._overflowWeekday = true;\n } else {\n temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy);\n config._a[YEAR] = temp.year;\n config._dayOfYear = temp.dayOfYear;\n }\n }\n\n // constant that refers to the ISO standard\n hooks.ISO_8601 = function () {};\n\n // constant that refers to the RFC 2822 form\n hooks.RFC_2822 = function () {};\n\n // date from string and format string\n function configFromStringAndFormat(config) {\n // TODO: Move this to another part of the creation flow to prevent circular deps\n if (config._f === hooks.ISO_8601) {\n configFromISO(config);\n return;\n }\n if (config._f === hooks.RFC_2822) {\n configFromRFC2822(config);\n return;\n }\n config._a = [];\n getParsingFlags(config).empty = true;\n\n // This array is used to make a Date, either with `new Date` or `Date.UTC`\n var string = '' + config._i,\n i,\n parsedInput,\n tokens,\n token,\n skipped,\n stringLength = string.length,\n totalParsedInputLength = 0,\n era,\n tokenLen;\n\n tokens =\n expandFormat(config._f, config._locale).match(formattingTokens) || [];\n tokenLen = tokens.length;\n for (i = 0; i < tokenLen; i++) {\n token = tokens[i];\n parsedInput = (string.match(getParseRegexForToken(token, config)) ||\n [])[0];\n if (parsedInput) {\n skipped = string.substr(0, string.indexOf(parsedInput));\n if (skipped.length > 0) {\n getParsingFlags(config).unusedInput.push(skipped);\n }\n string = string.slice(\n string.indexOf(parsedInput) + parsedInput.length\n );\n totalParsedInputLength += parsedInput.length;\n }\n // don't parse if it's not a known token\n if (formatTokenFunctions[token]) {\n if (parsedInput) {\n getParsingFlags(config).empty = false;\n } else {\n getParsingFlags(config).unusedTokens.push(token);\n }\n addTimeToArrayFromToken(token, parsedInput, config);\n } else if (config._strict && !parsedInput) {\n getParsingFlags(config).unusedTokens.push(token);\n }\n }\n\n // add remaining unparsed input length to the string\n getParsingFlags(config).charsLeftOver =\n stringLength - totalParsedInputLength;\n if (string.length > 0) {\n getParsingFlags(config).unusedInput.push(string);\n }\n\n // clear _12h flag if hour is <= 12\n if (\n config._a[HOUR] <= 12 &&\n getParsingFlags(config).bigHour === true &&\n config._a[HOUR] > 0\n ) {\n getParsingFlags(config).bigHour = undefined;\n }\n\n getParsingFlags(config).parsedDateParts = config._a.slice(0);\n getParsingFlags(config).meridiem = config._meridiem;\n // handle meridiem\n config._a[HOUR] = meridiemFixWrap(\n config._locale,\n config._a[HOUR],\n config._meridiem\n );\n\n // handle era\n era = getParsingFlags(config).era;\n if (era !== null) {\n config._a[YEAR] = config._locale.erasConvertYear(era, config._a[YEAR]);\n }\n\n configFromArray(config);\n checkOverflow(config);\n }\n\n function meridiemFixWrap(locale, hour, meridiem) {\n var isPm;\n\n if (meridiem == null) {\n // nothing to do\n return hour;\n }\n if (locale.meridiemHour != null) {\n return locale.meridiemHour(hour, meridiem);\n } else if (locale.isPM != null) {\n // Fallback\n isPm = locale.isPM(meridiem);\n if (isPm && hour < 12) {\n hour += 12;\n }\n if (!isPm && hour === 12) {\n hour = 0;\n }\n return hour;\n } else {\n // this is not supposed to happen\n return hour;\n }\n }\n\n // date from string and array of format strings\n function configFromStringAndArray(config) {\n var tempConfig,\n bestMoment,\n scoreToBeat,\n i,\n currentScore,\n validFormatFound,\n bestFormatIsValid = false,\n configfLen = config._f.length;\n\n if (configfLen === 0) {\n getParsingFlags(config).invalidFormat = true;\n config._d = new Date(NaN);\n return;\n }\n\n for (i = 0; i < configfLen; i++) {\n currentScore = 0;\n validFormatFound = false;\n tempConfig = copyConfig({}, config);\n if (config._useUTC != null) {\n tempConfig._useUTC = config._useUTC;\n }\n tempConfig._f = config._f[i];\n configFromStringAndFormat(tempConfig);\n\n if (isValid(tempConfig)) {\n validFormatFound = true;\n }\n\n // if there is any input that was not parsed add a penalty for that format\n currentScore += getParsingFlags(tempConfig).charsLeftOver;\n\n //or tokens\n currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10;\n\n getParsingFlags(tempConfig).score = currentScore;\n\n if (!bestFormatIsValid) {\n if (\n scoreToBeat == null ||\n currentScore < scoreToBeat ||\n validFormatFound\n ) {\n scoreToBeat = currentScore;\n bestMoment = tempConfig;\n if (validFormatFound) {\n bestFormatIsValid = true;\n }\n }\n } else {\n if (currentScore < scoreToBeat) {\n scoreToBeat = currentScore;\n bestMoment = tempConfig;\n }\n }\n }\n\n extend(config, bestMoment || tempConfig);\n }\n\n function configFromObject(config) {\n if (config._d) {\n return;\n }\n\n var i = normalizeObjectUnits(config._i),\n dayOrDate = i.day === undefined ? i.date : i.day;\n config._a = map(\n [i.year, i.month, dayOrDate, i.hour, i.minute, i.second, i.millisecond],\n function (obj) {\n return obj && parseInt(obj, 10);\n }\n );\n\n configFromArray(config);\n }\n\n function createFromConfig(config) {\n var res = new Moment(checkOverflow(prepareConfig(config)));\n if (res._nextDay) {\n // Adding is smart enough around DST\n res.add(1, 'd');\n res._nextDay = undefined;\n }\n\n return res;\n }\n\n function prepareConfig(config) {\n var input = config._i,\n format = config._f;\n\n config._locale = config._locale || getLocale(config._l);\n\n if (input === null || (format === undefined && input === '')) {\n return createInvalid({ nullInput: true });\n }\n\n if (typeof input === 'string') {\n config._i = input = config._locale.preparse(input);\n }\n\n if (isMoment(input)) {\n return new Moment(checkOverflow(input));\n } else if (isDate(input)) {\n config._d = input;\n } else if (isArray(format)) {\n configFromStringAndArray(config);\n } else if (format) {\n configFromStringAndFormat(config);\n } else {\n configFromInput(config);\n }\n\n if (!isValid(config)) {\n config._d = null;\n }\n\n return config;\n }\n\n function configFromInput(config) {\n var input = config._i;\n if (isUndefined(input)) {\n config._d = new Date(hooks.now());\n } else if (isDate(input)) {\n config._d = new Date(input.valueOf());\n } else if (typeof input === 'string') {\n configFromString(config);\n } else if (isArray(input)) {\n config._a = map(input.slice(0), function (obj) {\n return parseInt(obj, 10);\n });\n configFromArray(config);\n } else if (isObject(input)) {\n configFromObject(config);\n } else if (isNumber(input)) {\n // from milliseconds\n config._d = new Date(input);\n } else {\n hooks.createFromInputFallback(config);\n }\n }\n\n function createLocalOrUTC(input, format, locale, strict, isUTC) {\n var c = {};\n\n if (format === true || format === false) {\n strict = format;\n format = undefined;\n }\n\n if (locale === true || locale === false) {\n strict = locale;\n locale = undefined;\n }\n\n if (\n (isObject(input) && isObjectEmpty(input)) ||\n (isArray(input) && input.length === 0)\n ) {\n input = undefined;\n }\n // object construction must be done this way.\n // https://github.com/moment/moment/issues/1423\n c._isAMomentObject = true;\n c._useUTC = c._isUTC = isUTC;\n c._l = locale;\n c._i = input;\n c._f = format;\n c._strict = strict;\n\n return createFromConfig(c);\n }\n\n function createLocal(input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, false);\n }\n\n var prototypeMin = deprecate(\n 'moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other < this ? this : other;\n } else {\n return createInvalid();\n }\n }\n ),\n prototypeMax = deprecate(\n 'moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other > this ? this : other;\n } else {\n return createInvalid();\n }\n }\n );\n\n // Pick a moment m from moments so that m[fn](other) is true for all\n // other. This relies on the function fn to be transitive.\n //\n // moments should either be an array of moment objects or an array, whose\n // first element is an array of moment objects.\n function pickBy(fn, moments) {\n var res, i;\n if (moments.length === 1 && isArray(moments[0])) {\n moments = moments[0];\n }\n if (!moments.length) {\n return createLocal();\n }\n res = moments[0];\n for (i = 1; i < moments.length; ++i) {\n if (!moments[i].isValid() || moments[i][fn](res)) {\n res = moments[i];\n }\n }\n return res;\n }\n\n // TODO: Use [].sort instead?\n function min() {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isBefore', args);\n }\n\n function max() {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isAfter', args);\n }\n\n var now = function () {\n return Date.now ? Date.now() : +new Date();\n };\n\n var ordering = [\n 'year',\n 'quarter',\n 'month',\n 'week',\n 'day',\n 'hour',\n 'minute',\n 'second',\n 'millisecond',\n ];\n\n function isDurationValid(m) {\n var key,\n unitHasDecimal = false,\n i,\n orderLen = ordering.length;\n for (key in m) {\n if (\n hasOwnProp(m, key) &&\n !(\n indexOf.call(ordering, key) !== -1 &&\n (m[key] == null || !isNaN(m[key]))\n )\n ) {\n return false;\n }\n }\n\n for (i = 0; i < orderLen; ++i) {\n if (m[ordering[i]]) {\n if (unitHasDecimal) {\n return false; // only allow non-integers for smallest unit\n }\n if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) {\n unitHasDecimal = true;\n }\n }\n }\n\n return true;\n }\n\n function isValid$1() {\n return this._isValid;\n }\n\n function createInvalid$1() {\n return createDuration(NaN);\n }\n\n function Duration(duration) {\n var normalizedInput = normalizeObjectUnits(duration),\n years = normalizedInput.year || 0,\n quarters = normalizedInput.quarter || 0,\n months = normalizedInput.month || 0,\n weeks = normalizedInput.week || normalizedInput.isoWeek || 0,\n days = normalizedInput.day || 0,\n hours = normalizedInput.hour || 0,\n minutes = normalizedInput.minute || 0,\n seconds = normalizedInput.second || 0,\n milliseconds = normalizedInput.millisecond || 0;\n\n this._isValid = isDurationValid(normalizedInput);\n\n // representation for dateAddRemove\n this._milliseconds =\n +milliseconds +\n seconds * 1e3 + // 1000\n minutes * 6e4 + // 1000 * 60\n hours * 1000 * 60 * 60; //using 1000 * 60 * 60 instead of 36e5 to avoid floating point rounding errors https://github.com/moment/moment/issues/2978\n // Because of dateAddRemove treats 24 hours as different from a\n // day when working around DST, we need to store them separately\n this._days = +days + weeks * 7;\n // It is impossible to translate months into days without knowing\n // which months you are are talking about, so we have to store\n // it separately.\n this._months = +months + quarters * 3 + years * 12;\n\n this._data = {};\n\n this._locale = getLocale();\n\n this._bubble();\n }\n\n function isDuration(obj) {\n return obj instanceof Duration;\n }\n\n function absRound(number) {\n if (number < 0) {\n return Math.round(-1 * number) * -1;\n } else {\n return Math.round(number);\n }\n }\n\n // compare two arrays, return the number of differences\n function compareArrays(array1, array2, dontConvert) {\n var len = Math.min(array1.length, array2.length),\n lengthDiff = Math.abs(array1.length - array2.length),\n diffs = 0,\n i;\n for (i = 0; i < len; i++) {\n if (\n (dontConvert && array1[i] !== array2[i]) ||\n (!dontConvert && toInt(array1[i]) !== toInt(array2[i]))\n ) {\n diffs++;\n }\n }\n return diffs + lengthDiff;\n }\n\n // FORMATTING\n\n function offset(token, separator) {\n addFormatToken(token, 0, 0, function () {\n var offset = this.utcOffset(),\n sign = '+';\n if (offset < 0) {\n offset = -offset;\n sign = '-';\n }\n return (\n sign +\n zeroFill(~~(offset / 60), 2) +\n separator +\n zeroFill(~~offset % 60, 2)\n );\n });\n }\n\n offset('Z', ':');\n offset('ZZ', '');\n\n // PARSING\n\n addRegexToken('Z', matchShortOffset);\n addRegexToken('ZZ', matchShortOffset);\n addParseToken(['Z', 'ZZ'], function (input, array, config) {\n config._useUTC = true;\n config._tzm = offsetFromString(matchShortOffset, input);\n });\n\n // HELPERS\n\n // timezone chunker\n // '+10:00' > ['10', '00']\n // '-1530' > ['-15', '30']\n var chunkOffset = /([\\+\\-]|\\d\\d)/gi;\n\n function offsetFromString(matcher, string) {\n var matches = (string || '').match(matcher),\n chunk,\n parts,\n minutes;\n\n if (matches === null) {\n return null;\n }\n\n chunk = matches[matches.length - 1] || [];\n parts = (chunk + '').match(chunkOffset) || ['-', 0, 0];\n minutes = +(parts[1] * 60) + toInt(parts[2]);\n\n return minutes === 0 ? 0 : parts[0] === '+' ? minutes : -minutes;\n }\n\n // Return a moment from input, that is local/utc/zone equivalent to model.\n function cloneWithOffset(input, model) {\n var res, diff;\n if (model._isUTC) {\n res = model.clone();\n diff =\n (isMoment(input) || isDate(input)\n ? input.valueOf()\n : createLocal(input).valueOf()) - res.valueOf();\n // Use low-level api, because this fn is low-level api.\n res._d.setTime(res._d.valueOf() + diff);\n hooks.updateOffset(res, false);\n return res;\n } else {\n return createLocal(input).local();\n }\n }\n\n function getDateOffset(m) {\n // On Firefox.24 Date#getTimezoneOffset returns a floating point.\n // https://github.com/moment/moment/pull/1871\n return -Math.round(m._d.getTimezoneOffset());\n }\n\n // HOOKS\n\n // This function will be called whenever a moment is mutated.\n // It is intended to keep the offset in sync with the timezone.\n hooks.updateOffset = function () {};\n\n // MOMENTS\n\n // keepLocalTime = true means only change the timezone, without\n // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]-->\n // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset\n // +0200, so we adjust the time as needed, to be valid.\n //\n // Keeping the time actually adds/subtracts (one hour)\n // from the actual represented time. That is why we call updateOffset\n // a second time. In case it wants us to change the offset again\n // _changeInProgress == true case, then we have to adjust, because\n // there is no such time in the given timezone.\n function getSetOffset(input, keepLocalTime, keepMinutes) {\n var offset = this._offset || 0,\n localAdjust;\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n if (input != null) {\n if (typeof input === 'string') {\n input = offsetFromString(matchShortOffset, input);\n if (input === null) {\n return this;\n }\n } else if (Math.abs(input) < 16 && !keepMinutes) {\n input = input * 60;\n }\n if (!this._isUTC && keepLocalTime) {\n localAdjust = getDateOffset(this);\n }\n this._offset = input;\n this._isUTC = true;\n if (localAdjust != null) {\n this.add(localAdjust, 'm');\n }\n if (offset !== input) {\n if (!keepLocalTime || this._changeInProgress) {\n addSubtract(\n this,\n createDuration(input - offset, 'm'),\n 1,\n false\n );\n } else if (!this._changeInProgress) {\n this._changeInProgress = true;\n hooks.updateOffset(this, true);\n this._changeInProgress = null;\n }\n }\n return this;\n } else {\n return this._isUTC ? offset : getDateOffset(this);\n }\n }\n\n function getSetZone(input, keepLocalTime) {\n if (input != null) {\n if (typeof input !== 'string') {\n input = -input;\n }\n\n this.utcOffset(input, keepLocalTime);\n\n return this;\n } else {\n return -this.utcOffset();\n }\n }\n\n function setOffsetToUTC(keepLocalTime) {\n return this.utcOffset(0, keepLocalTime);\n }\n\n function setOffsetToLocal(keepLocalTime) {\n if (this._isUTC) {\n this.utcOffset(0, keepLocalTime);\n this._isUTC = false;\n\n if (keepLocalTime) {\n this.subtract(getDateOffset(this), 'm');\n }\n }\n return this;\n }\n\n function setOffsetToParsedOffset() {\n if (this._tzm != null) {\n this.utcOffset(this._tzm, false, true);\n } else if (typeof this._i === 'string') {\n var tZone = offsetFromString(matchOffset, this._i);\n if (tZone != null) {\n this.utcOffset(tZone);\n } else {\n this.utcOffset(0, true);\n }\n }\n return this;\n }\n\n function hasAlignedHourOffset(input) {\n if (!this.isValid()) {\n return false;\n }\n input = input ? createLocal(input).utcOffset() : 0;\n\n return (this.utcOffset() - input) % 60 === 0;\n }\n\n function isDaylightSavingTime() {\n return (\n this.utcOffset() > this.clone().month(0).utcOffset() ||\n this.utcOffset() > this.clone().month(5).utcOffset()\n );\n }\n\n function isDaylightSavingTimeShifted() {\n if (!isUndefined(this._isDSTShifted)) {\n return this._isDSTShifted;\n }\n\n var c = {},\n other;\n\n copyConfig(c, this);\n c = prepareConfig(c);\n\n if (c._a) {\n other = c._isUTC ? createUTC(c._a) : createLocal(c._a);\n this._isDSTShifted =\n this.isValid() && compareArrays(c._a, other.toArray()) > 0;\n } else {\n this._isDSTShifted = false;\n }\n\n return this._isDSTShifted;\n }\n\n function isLocal() {\n return this.isValid() ? !this._isUTC : false;\n }\n\n function isUtcOffset() {\n return this.isValid() ? this._isUTC : false;\n }\n\n function isUtc() {\n return this.isValid() ? this._isUTC && this._offset === 0 : false;\n }\n\n // ASP.NET json date format regex\n var aspNetRegex = /^(-|\\+)?(?:(\\d*)[. ])?(\\d+):(\\d+)(?::(\\d+)(\\.\\d*)?)?$/,\n // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html\n // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere\n // and further modified to allow for strings containing both week and day\n isoRegex =\n /^(-|\\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;\n\n function createDuration(input, key) {\n var duration = input,\n // matching against regexp is expensive, do it on demand\n match = null,\n sign,\n ret,\n diffRes;\n\n if (isDuration(input)) {\n duration = {\n ms: input._milliseconds,\n d: input._days,\n M: input._months,\n };\n } else if (isNumber(input) || !isNaN(+input)) {\n duration = {};\n if (key) {\n duration[key] = +input;\n } else {\n duration.milliseconds = +input;\n }\n } else if ((match = aspNetRegex.exec(input))) {\n sign = match[1] === '-' ? -1 : 1;\n duration = {\n y: 0,\n d: toInt(match[DATE]) * sign,\n h: toInt(match[HOUR]) * sign,\n m: toInt(match[MINUTE]) * sign,\n s: toInt(match[SECOND]) * sign,\n ms: toInt(absRound(match[MILLISECOND] * 1000)) * sign, // the millisecond decimal point is included in the match\n };\n } else if ((match = isoRegex.exec(input))) {\n sign = match[1] === '-' ? -1 : 1;\n duration = {\n y: parseIso(match[2], sign),\n M: parseIso(match[3], sign),\n w: parseIso(match[4], sign),\n d: parseIso(match[5], sign),\n h: parseIso(match[6], sign),\n m: parseIso(match[7], sign),\n s: parseIso(match[8], sign),\n };\n } else if (duration == null) {\n // checks for null or undefined\n duration = {};\n } else if (\n typeof duration === 'object' &&\n ('from' in duration || 'to' in duration)\n ) {\n diffRes = momentsDifference(\n createLocal(duration.from),\n createLocal(duration.to)\n );\n\n duration = {};\n duration.ms = diffRes.milliseconds;\n duration.M = diffRes.months;\n }\n\n ret = new Duration(duration);\n\n if (isDuration(input) && hasOwnProp(input, '_locale')) {\n ret._locale = input._locale;\n }\n\n if (isDuration(input) && hasOwnProp(input, '_isValid')) {\n ret._isValid = input._isValid;\n }\n\n return ret;\n }\n\n createDuration.fn = Duration.prototype;\n createDuration.invalid = createInvalid$1;\n\n function parseIso(inp, sign) {\n // We'd normally use ~~inp for this, but unfortunately it also\n // converts floats to ints.\n // inp may be undefined, so careful calling replace on it.\n var res = inp && parseFloat(inp.replace(',', '.'));\n // apply sign while we're at it\n return (isNaN(res) ? 0 : res) * sign;\n }\n\n function positiveMomentsDifference(base, other) {\n var res = {};\n\n res.months =\n other.month() - base.month() + (other.year() - base.year()) * 12;\n if (base.clone().add(res.months, 'M').isAfter(other)) {\n --res.months;\n }\n\n res.milliseconds = +other - +base.clone().add(res.months, 'M');\n\n return res;\n }\n\n function momentsDifference(base, other) {\n var res;\n if (!(base.isValid() && other.isValid())) {\n return { milliseconds: 0, months: 0 };\n }\n\n other = cloneWithOffset(other, base);\n if (base.isBefore(other)) {\n res = positiveMomentsDifference(base, other);\n } else {\n res = positiveMomentsDifference(other, base);\n res.milliseconds = -res.milliseconds;\n res.months = -res.months;\n }\n\n return res;\n }\n\n // TODO: remove 'name' arg after deprecation is removed\n function createAdder(direction, name) {\n return function (val, period) {\n var dur, tmp;\n //invert the arguments, but complain about it\n if (period !== null && !isNaN(+period)) {\n deprecateSimple(\n name,\n 'moment().' +\n name +\n '(period, number) is deprecated. Please use moment().' +\n name +\n '(number, period). ' +\n 'See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.'\n );\n tmp = val;\n val = period;\n period = tmp;\n }\n\n dur = createDuration(val, period);\n addSubtract(this, dur, direction);\n return this;\n };\n }\n\n function addSubtract(mom, duration, isAdding, updateOffset) {\n var milliseconds = duration._milliseconds,\n days = absRound(duration._days),\n months = absRound(duration._months);\n\n if (!mom.isValid()) {\n // No op\n return;\n }\n\n updateOffset = updateOffset == null ? true : updateOffset;\n\n if (months) {\n setMonth(mom, get(mom, 'Month') + months * isAdding);\n }\n if (days) {\n set$1(mom, 'Date', get(mom, 'Date') + days * isAdding);\n }\n if (milliseconds) {\n mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding);\n }\n if (updateOffset) {\n hooks.updateOffset(mom, days || months);\n }\n }\n\n var add = createAdder(1, 'add'),\n subtract = createAdder(-1, 'subtract');\n\n function isString(input) {\n return typeof input === 'string' || input instanceof String;\n }\n\n // type MomentInput = Moment | Date | string | number | (number | string)[] | MomentInputObject | void; // null | undefined\n function isMomentInput(input) {\n return (\n isMoment(input) ||\n isDate(input) ||\n isString(input) ||\n isNumber(input) ||\n isNumberOrStringArray(input) ||\n isMomentInputObject(input) ||\n input === null ||\n input === undefined\n );\n }\n\n function isMomentInputObject(input) {\n var objectTest = isObject(input) && !isObjectEmpty(input),\n propertyTest = false,\n properties = [\n 'years',\n 'year',\n 'y',\n 'months',\n 'month',\n 'M',\n 'days',\n 'day',\n 'd',\n 'dates',\n 'date',\n 'D',\n 'hours',\n 'hour',\n 'h',\n 'minutes',\n 'minute',\n 'm',\n 'seconds',\n 'second',\n 's',\n 'milliseconds',\n 'millisecond',\n 'ms',\n ],\n i,\n property,\n propertyLen = properties.length;\n\n for (i = 0; i < propertyLen; i += 1) {\n property = properties[i];\n propertyTest = propertyTest || hasOwnProp(input, property);\n }\n\n return objectTest && propertyTest;\n }\n\n function isNumberOrStringArray(input) {\n var arrayTest = isArray(input),\n dataTypeTest = false;\n if (arrayTest) {\n dataTypeTest =\n input.filter(function (item) {\n return !isNumber(item) && isString(input);\n }).length === 0;\n }\n return arrayTest && dataTypeTest;\n }\n\n function isCalendarSpec(input) {\n var objectTest = isObject(input) && !isObjectEmpty(input),\n propertyTest = false,\n properties = [\n 'sameDay',\n 'nextDay',\n 'lastDay',\n 'nextWeek',\n 'lastWeek',\n 'sameElse',\n ],\n i,\n property;\n\n for (i = 0; i < properties.length; i += 1) {\n property = properties[i];\n propertyTest = propertyTest || hasOwnProp(input, property);\n }\n\n return objectTest && propertyTest;\n }\n\n function getCalendarFormat(myMoment, now) {\n var diff = myMoment.diff(now, 'days', true);\n return diff < -6\n ? 'sameElse'\n : diff < -1\n ? 'lastWeek'\n : diff < 0\n ? 'lastDay'\n : diff < 1\n ? 'sameDay'\n : diff < 2\n ? 'nextDay'\n : diff < 7\n ? 'nextWeek'\n : 'sameElse';\n }\n\n function calendar$1(time, formats) {\n // Support for single parameter, formats only overload to the calendar function\n if (arguments.length === 1) {\n if (!arguments[0]) {\n time = undefined;\n formats = undefined;\n } else if (isMomentInput(arguments[0])) {\n time = arguments[0];\n formats = undefined;\n } else if (isCalendarSpec(arguments[0])) {\n formats = arguments[0];\n time = undefined;\n }\n }\n // We want to compare the start of today, vs this.\n // Getting start-of-today depends on whether we're local/utc/offset or not.\n var now = time || createLocal(),\n sod = cloneWithOffset(now, this).startOf('day'),\n format = hooks.calendarFormat(this, sod) || 'sameElse',\n output =\n formats &&\n (isFunction(formats[format])\n ? formats[format].call(this, now)\n : formats[format]);\n\n return this.format(\n output || this.localeData().calendar(format, this, createLocal(now))\n );\n }\n\n function clone() {\n return new Moment(this);\n }\n\n function isAfter(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() > localInput.valueOf();\n } else {\n return localInput.valueOf() < this.clone().startOf(units).valueOf();\n }\n }\n\n function isBefore(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() < localInput.valueOf();\n } else {\n return this.clone().endOf(units).valueOf() < localInput.valueOf();\n }\n }\n\n function isBetween(from, to, units, inclusivity) {\n var localFrom = isMoment(from) ? from : createLocal(from),\n localTo = isMoment(to) ? to : createLocal(to);\n if (!(this.isValid() && localFrom.isValid() && localTo.isValid())) {\n return false;\n }\n inclusivity = inclusivity || '()';\n return (\n (inclusivity[0] === '('\n ? this.isAfter(localFrom, units)\n : !this.isBefore(localFrom, units)) &&\n (inclusivity[1] === ')'\n ? this.isBefore(localTo, units)\n : !this.isAfter(localTo, units))\n );\n }\n\n function isSame(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input),\n inputMs;\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() === localInput.valueOf();\n } else {\n inputMs = localInput.valueOf();\n return (\n this.clone().startOf(units).valueOf() <= inputMs &&\n inputMs <= this.clone().endOf(units).valueOf()\n );\n }\n }\n\n function isSameOrAfter(input, units) {\n return this.isSame(input, units) || this.isAfter(input, units);\n }\n\n function isSameOrBefore(input, units) {\n return this.isSame(input, units) || this.isBefore(input, units);\n }\n\n function diff(input, units, asFloat) {\n var that, zoneDelta, output;\n\n if (!this.isValid()) {\n return NaN;\n }\n\n that = cloneWithOffset(input, this);\n\n if (!that.isValid()) {\n return NaN;\n }\n\n zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4;\n\n units = normalizeUnits(units);\n\n switch (units) {\n case 'year':\n output = monthDiff(this, that) / 12;\n break;\n case 'month':\n output = monthDiff(this, that);\n break;\n case 'quarter':\n output = monthDiff(this, that) / 3;\n break;\n case 'second':\n output = (this - that) / 1e3;\n break; // 1000\n case 'minute':\n output = (this - that) / 6e4;\n break; // 1000 * 60\n case 'hour':\n output = (this - that) / 36e5;\n break; // 1000 * 60 * 60\n case 'day':\n output = (this - that - zoneDelta) / 864e5;\n break; // 1000 * 60 * 60 * 24, negate dst\n case 'week':\n output = (this - that - zoneDelta) / 6048e5;\n break; // 1000 * 60 * 60 * 24 * 7, negate dst\n default:\n output = this - that;\n }\n\n return asFloat ? output : absFloor(output);\n }\n\n function monthDiff(a, b) {\n if (a.date() < b.date()) {\n // end-of-month calculations work correct when the start month has more\n // days than the end month.\n return -monthDiff(b, a);\n }\n // difference in months\n var wholeMonthDiff = (b.year() - a.year()) * 12 + (b.month() - a.month()),\n // b is in (anchor - 1 month, anchor + 1 month)\n anchor = a.clone().add(wholeMonthDiff, 'months'),\n anchor2,\n adjust;\n\n if (b - anchor < 0) {\n anchor2 = a.clone().add(wholeMonthDiff - 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor - anchor2);\n } else {\n anchor2 = a.clone().add(wholeMonthDiff + 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor2 - anchor);\n }\n\n //check for negative zero, return zero if negative zero\n return -(wholeMonthDiff + adjust) || 0;\n }\n\n hooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ';\n hooks.defaultFormatUtc = 'YYYY-MM-DDTHH:mm:ss[Z]';\n\n function toString() {\n return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');\n }\n\n function toISOString(keepOffset) {\n if (!this.isValid()) {\n return null;\n }\n var utc = keepOffset !== true,\n m = utc ? this.clone().utc() : this;\n if (m.year() < 0 || m.year() > 9999) {\n return formatMoment(\n m,\n utc\n ? 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]'\n : 'YYYYYY-MM-DD[T]HH:mm:ss.SSSZ'\n );\n }\n if (isFunction(Date.prototype.toISOString)) {\n // native implementation is ~50x faster, use it when we can\n if (utc) {\n return this.toDate().toISOString();\n } else {\n return new Date(this.valueOf() + this.utcOffset() * 60 * 1000)\n .toISOString()\n .replace('Z', formatMoment(m, 'Z'));\n }\n }\n return formatMoment(\n m,\n utc ? 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYY-MM-DD[T]HH:mm:ss.SSSZ'\n );\n }\n\n /**\n * Return a human readable representation of a moment that can\n * also be evaluated to get a new moment which is the same\n *\n * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects\n */\n function inspect() {\n if (!this.isValid()) {\n return 'moment.invalid(/* ' + this._i + ' */)';\n }\n var func = 'moment',\n zone = '',\n prefix,\n year,\n datetime,\n suffix;\n if (!this.isLocal()) {\n func = this.utcOffset() === 0 ? 'moment.utc' : 'moment.parseZone';\n zone = 'Z';\n }\n prefix = '[' + func + '(\"]';\n year = 0 <= this.year() && this.year() <= 9999 ? 'YYYY' : 'YYYYYY';\n datetime = '-MM-DD[T]HH:mm:ss.SSS';\n suffix = zone + '[\")]';\n\n return this.format(prefix + year + datetime + suffix);\n }\n\n function format(inputString) {\n if (!inputString) {\n inputString = this.isUtc()\n ? hooks.defaultFormatUtc\n : hooks.defaultFormat;\n }\n var output = formatMoment(this, inputString);\n return this.localeData().postformat(output);\n }\n\n function from(time, withoutSuffix) {\n if (\n this.isValid() &&\n ((isMoment(time) && time.isValid()) || createLocal(time).isValid())\n ) {\n return createDuration({ to: this, from: time })\n .locale(this.locale())\n .humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n }\n\n function fromNow(withoutSuffix) {\n return this.from(createLocal(), withoutSuffix);\n }\n\n function to(time, withoutSuffix) {\n if (\n this.isValid() &&\n ((isMoment(time) && time.isValid()) || createLocal(time).isValid())\n ) {\n return createDuration({ from: this, to: time })\n .locale(this.locale())\n .humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n }\n\n function toNow(withoutSuffix) {\n return this.to(createLocal(), withoutSuffix);\n }\n\n // If passed a locale key, it will set the locale for this\n // instance. Otherwise, it will return the locale configuration\n // variables for this instance.\n function locale(key) {\n var newLocaleData;\n\n if (key === undefined) {\n return this._locale._abbr;\n } else {\n newLocaleData = getLocale(key);\n if (newLocaleData != null) {\n this._locale = newLocaleData;\n }\n return this;\n }\n }\n\n var lang = deprecate(\n 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.',\n function (key) {\n if (key === undefined) {\n return this.localeData();\n } else {\n return this.locale(key);\n }\n }\n );\n\n function localeData() {\n return this._locale;\n }\n\n var MS_PER_SECOND = 1000,\n MS_PER_MINUTE = 60 * MS_PER_SECOND,\n MS_PER_HOUR = 60 * MS_PER_MINUTE,\n MS_PER_400_YEARS = (365 * 400 + 97) * 24 * MS_PER_HOUR;\n\n // actual modulo - handles negative numbers (for dates before 1970):\n function mod$1(dividend, divisor) {\n return ((dividend % divisor) + divisor) % divisor;\n }\n\n function localStartOfDate(y, m, d) {\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n return new Date(y + 400, m, d) - MS_PER_400_YEARS;\n } else {\n return new Date(y, m, d).valueOf();\n }\n }\n\n function utcStartOfDate(y, m, d) {\n // Date.UTC remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n return Date.UTC(y + 400, m, d) - MS_PER_400_YEARS;\n } else {\n return Date.UTC(y, m, d);\n }\n }\n\n function startOf(units) {\n var time, startOfDate;\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond' || !this.isValid()) {\n return this;\n }\n\n startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;\n\n switch (units) {\n case 'year':\n time = startOfDate(this.year(), 0, 1);\n break;\n case 'quarter':\n time = startOfDate(\n this.year(),\n this.month() - (this.month() % 3),\n 1\n );\n break;\n case 'month':\n time = startOfDate(this.year(), this.month(), 1);\n break;\n case 'week':\n time = startOfDate(\n this.year(),\n this.month(),\n this.date() - this.weekday()\n );\n break;\n case 'isoWeek':\n time = startOfDate(\n this.year(),\n this.month(),\n this.date() - (this.isoWeekday() - 1)\n );\n break;\n case 'day':\n case 'date':\n time = startOfDate(this.year(), this.month(), this.date());\n break;\n case 'hour':\n time = this._d.valueOf();\n time -= mod$1(\n time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE),\n MS_PER_HOUR\n );\n break;\n case 'minute':\n time = this._d.valueOf();\n time -= mod$1(time, MS_PER_MINUTE);\n break;\n case 'second':\n time = this._d.valueOf();\n time -= mod$1(time, MS_PER_SECOND);\n break;\n }\n\n this._d.setTime(time);\n hooks.updateOffset(this, true);\n return this;\n }\n\n function endOf(units) {\n var time, startOfDate;\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond' || !this.isValid()) {\n return this;\n }\n\n startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;\n\n switch (units) {\n case 'year':\n time = startOfDate(this.year() + 1, 0, 1) - 1;\n break;\n case 'quarter':\n time =\n startOfDate(\n this.year(),\n this.month() - (this.month() % 3) + 3,\n 1\n ) - 1;\n break;\n case 'month':\n time = startOfDate(this.year(), this.month() + 1, 1) - 1;\n break;\n case 'week':\n time =\n startOfDate(\n this.year(),\n this.month(),\n this.date() - this.weekday() + 7\n ) - 1;\n break;\n case 'isoWeek':\n time =\n startOfDate(\n this.year(),\n this.month(),\n this.date() - (this.isoWeekday() - 1) + 7\n ) - 1;\n break;\n case 'day':\n case 'date':\n time = startOfDate(this.year(), this.month(), this.date() + 1) - 1;\n break;\n case 'hour':\n time = this._d.valueOf();\n time +=\n MS_PER_HOUR -\n mod$1(\n time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE),\n MS_PER_HOUR\n ) -\n 1;\n break;\n case 'minute':\n time = this._d.valueOf();\n time += MS_PER_MINUTE - mod$1(time, MS_PER_MINUTE) - 1;\n break;\n case 'second':\n time = this._d.valueOf();\n time += MS_PER_SECOND - mod$1(time, MS_PER_SECOND) - 1;\n break;\n }\n\n this._d.setTime(time);\n hooks.updateOffset(this, true);\n return this;\n }\n\n function valueOf() {\n return this._d.valueOf() - (this._offset || 0) * 60000;\n }\n\n function unix() {\n return Math.floor(this.valueOf() / 1000);\n }\n\n function toDate() {\n return new Date(this.valueOf());\n }\n\n function toArray() {\n var m = this;\n return [\n m.year(),\n m.month(),\n m.date(),\n m.hour(),\n m.minute(),\n m.second(),\n m.millisecond(),\n ];\n }\n\n function toObject() {\n var m = this;\n return {\n years: m.year(),\n months: m.month(),\n date: m.date(),\n hours: m.hours(),\n minutes: m.minutes(),\n seconds: m.seconds(),\n milliseconds: m.milliseconds(),\n };\n }\n\n function toJSON() {\n // new Date(NaN).toJSON() === null\n return this.isValid() ? this.toISOString() : null;\n }\n\n function isValid$2() {\n return isValid(this);\n }\n\n function parsingFlags() {\n return extend({}, getParsingFlags(this));\n }\n\n function invalidAt() {\n return getParsingFlags(this).overflow;\n }\n\n function creationData() {\n return {\n input: this._i,\n format: this._f,\n locale: this._locale,\n isUTC: this._isUTC,\n strict: this._strict,\n };\n }\n\n addFormatToken('N', 0, 0, 'eraAbbr');\n addFormatToken('NN', 0, 0, 'eraAbbr');\n addFormatToken('NNN', 0, 0, 'eraAbbr');\n addFormatToken('NNNN', 0, 0, 'eraName');\n addFormatToken('NNNNN', 0, 0, 'eraNarrow');\n\n addFormatToken('y', ['y', 1], 'yo', 'eraYear');\n addFormatToken('y', ['yy', 2], 0, 'eraYear');\n addFormatToken('y', ['yyy', 3], 0, 'eraYear');\n addFormatToken('y', ['yyyy', 4], 0, 'eraYear');\n\n addRegexToken('N', matchEraAbbr);\n addRegexToken('NN', matchEraAbbr);\n addRegexToken('NNN', matchEraAbbr);\n addRegexToken('NNNN', matchEraName);\n addRegexToken('NNNNN', matchEraNarrow);\n\n addParseToken(\n ['N', 'NN', 'NNN', 'NNNN', 'NNNNN'],\n function (input, array, config, token) {\n var era = config._locale.erasParse(input, token, config._strict);\n if (era) {\n getParsingFlags(config).era = era;\n } else {\n getParsingFlags(config).invalidEra = input;\n }\n }\n );\n\n addRegexToken('y', matchUnsigned);\n addRegexToken('yy', matchUnsigned);\n addRegexToken('yyy', matchUnsigned);\n addRegexToken('yyyy', matchUnsigned);\n addRegexToken('yo', matchEraYearOrdinal);\n\n addParseToken(['y', 'yy', 'yyy', 'yyyy'], YEAR);\n addParseToken(['yo'], function (input, array, config, token) {\n var match;\n if (config._locale._eraYearOrdinalRegex) {\n match = input.match(config._locale._eraYearOrdinalRegex);\n }\n\n if (config._locale.eraYearOrdinalParse) {\n array[YEAR] = config._locale.eraYearOrdinalParse(input, match);\n } else {\n array[YEAR] = parseInt(input, 10);\n }\n });\n\n function localeEras(m, format) {\n var i,\n l,\n date,\n eras = this._eras || getLocale('en')._eras;\n for (i = 0, l = eras.length; i < l; ++i) {\n switch (typeof eras[i].since) {\n case 'string':\n // truncate time\n date = hooks(eras[i].since).startOf('day');\n eras[i].since = date.valueOf();\n break;\n }\n\n switch (typeof eras[i].until) {\n case 'undefined':\n eras[i].until = +Infinity;\n break;\n case 'string':\n // truncate time\n date = hooks(eras[i].until).startOf('day').valueOf();\n eras[i].until = date.valueOf();\n break;\n }\n }\n return eras;\n }\n\n function localeErasParse(eraName, format, strict) {\n var i,\n l,\n eras = this.eras(),\n name,\n abbr,\n narrow;\n eraName = eraName.toUpperCase();\n\n for (i = 0, l = eras.length; i < l; ++i) {\n name = eras[i].name.toUpperCase();\n abbr = eras[i].abbr.toUpperCase();\n narrow = eras[i].narrow.toUpperCase();\n\n if (strict) {\n switch (format) {\n case 'N':\n case 'NN':\n case 'NNN':\n if (abbr === eraName) {\n return eras[i];\n }\n break;\n\n case 'NNNN':\n if (name === eraName) {\n return eras[i];\n }\n break;\n\n case 'NNNNN':\n if (narrow === eraName) {\n return eras[i];\n }\n break;\n }\n } else if ([name, abbr, narrow].indexOf(eraName) >= 0) {\n return eras[i];\n }\n }\n }\n\n function localeErasConvertYear(era, year) {\n var dir = era.since <= era.until ? +1 : -1;\n if (year === undefined) {\n return hooks(era.since).year();\n } else {\n return hooks(era.since).year() + (year - era.offset) * dir;\n }\n }\n\n function getEraName() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].name;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].name;\n }\n }\n\n return '';\n }\n\n function getEraNarrow() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].narrow;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].narrow;\n }\n }\n\n return '';\n }\n\n function getEraAbbr() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].abbr;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].abbr;\n }\n }\n\n return '';\n }\n\n function getEraYear() {\n var i,\n l,\n dir,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n dir = eras[i].since <= eras[i].until ? +1 : -1;\n\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (\n (eras[i].since <= val && val <= eras[i].until) ||\n (eras[i].until <= val && val <= eras[i].since)\n ) {\n return (\n (this.year() - hooks(eras[i].since).year()) * dir +\n eras[i].offset\n );\n }\n }\n\n return this.year();\n }\n\n function erasNameRegex(isStrict) {\n if (!hasOwnProp(this, '_erasNameRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasNameRegex : this._erasRegex;\n }\n\n function erasAbbrRegex(isStrict) {\n if (!hasOwnProp(this, '_erasAbbrRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasAbbrRegex : this._erasRegex;\n }\n\n function erasNarrowRegex(isStrict) {\n if (!hasOwnProp(this, '_erasNarrowRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasNarrowRegex : this._erasRegex;\n }\n\n function matchEraAbbr(isStrict, locale) {\n return locale.erasAbbrRegex(isStrict);\n }\n\n function matchEraName(isStrict, locale) {\n return locale.erasNameRegex(isStrict);\n }\n\n function matchEraNarrow(isStrict, locale) {\n return locale.erasNarrowRegex(isStrict);\n }\n\n function matchEraYearOrdinal(isStrict, locale) {\n return locale._eraYearOrdinalRegex || matchUnsigned;\n }\n\n function computeErasParse() {\n var abbrPieces = [],\n namePieces = [],\n narrowPieces = [],\n mixedPieces = [],\n i,\n l,\n eras = this.eras();\n\n for (i = 0, l = eras.length; i < l; ++i) {\n namePieces.push(regexEscape(eras[i].name));\n abbrPieces.push(regexEscape(eras[i].abbr));\n narrowPieces.push(regexEscape(eras[i].narrow));\n\n mixedPieces.push(regexEscape(eras[i].name));\n mixedPieces.push(regexEscape(eras[i].abbr));\n mixedPieces.push(regexEscape(eras[i].narrow));\n }\n\n this._erasRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._erasNameRegex = new RegExp('^(' + namePieces.join('|') + ')', 'i');\n this._erasAbbrRegex = new RegExp('^(' + abbrPieces.join('|') + ')', 'i');\n this._erasNarrowRegex = new RegExp(\n '^(' + narrowPieces.join('|') + ')',\n 'i'\n );\n }\n\n // FORMATTING\n\n addFormatToken(0, ['gg', 2], 0, function () {\n return this.weekYear() % 100;\n });\n\n addFormatToken(0, ['GG', 2], 0, function () {\n return this.isoWeekYear() % 100;\n });\n\n function addWeekYearFormatToken(token, getter) {\n addFormatToken(0, [token, token.length], 0, getter);\n }\n\n addWeekYearFormatToken('gggg', 'weekYear');\n addWeekYearFormatToken('ggggg', 'weekYear');\n addWeekYearFormatToken('GGGG', 'isoWeekYear');\n addWeekYearFormatToken('GGGGG', 'isoWeekYear');\n\n // ALIASES\n\n addUnitAlias('weekYear', 'gg');\n addUnitAlias('isoWeekYear', 'GG');\n\n // PRIORITY\n\n addUnitPriority('weekYear', 1);\n addUnitPriority('isoWeekYear', 1);\n\n // PARSING\n\n addRegexToken('G', matchSigned);\n addRegexToken('g', matchSigned);\n addRegexToken('GG', match1to2, match2);\n addRegexToken('gg', match1to2, match2);\n addRegexToken('GGGG', match1to4, match4);\n addRegexToken('gggg', match1to4, match4);\n addRegexToken('GGGGG', match1to6, match6);\n addRegexToken('ggggg', match1to6, match6);\n\n addWeekParseToken(\n ['gggg', 'ggggg', 'GGGG', 'GGGGG'],\n function (input, week, config, token) {\n week[token.substr(0, 2)] = toInt(input);\n }\n );\n\n addWeekParseToken(['gg', 'GG'], function (input, week, config, token) {\n week[token] = hooks.parseTwoDigitYear(input);\n });\n\n // MOMENTS\n\n function getSetWeekYear(input) {\n return getSetWeekYearHelper.call(\n this,\n input,\n this.week(),\n this.weekday(),\n this.localeData()._week.dow,\n this.localeData()._week.doy\n );\n }\n\n function getSetISOWeekYear(input) {\n return getSetWeekYearHelper.call(\n this,\n input,\n this.isoWeek(),\n this.isoWeekday(),\n 1,\n 4\n );\n }\n\n function getISOWeeksInYear() {\n return weeksInYear(this.year(), 1, 4);\n }\n\n function getISOWeeksInISOWeekYear() {\n return weeksInYear(this.isoWeekYear(), 1, 4);\n }\n\n function getWeeksInYear() {\n var weekInfo = this.localeData()._week;\n return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy);\n }\n\n function getWeeksInWeekYear() {\n var weekInfo = this.localeData()._week;\n return weeksInYear(this.weekYear(), weekInfo.dow, weekInfo.doy);\n }\n\n function getSetWeekYearHelper(input, week, weekday, dow, doy) {\n var weeksTarget;\n if (input == null) {\n return weekOfYear(this, dow, doy).year;\n } else {\n weeksTarget = weeksInYear(input, dow, doy);\n if (week > weeksTarget) {\n week = weeksTarget;\n }\n return setWeekAll.call(this, input, week, weekday, dow, doy);\n }\n }\n\n function setWeekAll(weekYear, week, weekday, dow, doy) {\n var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy),\n date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear);\n\n this.year(date.getUTCFullYear());\n this.month(date.getUTCMonth());\n this.date(date.getUTCDate());\n return this;\n }\n\n // FORMATTING\n\n addFormatToken('Q', 0, 'Qo', 'quarter');\n\n // ALIASES\n\n addUnitAlias('quarter', 'Q');\n\n // PRIORITY\n\n addUnitPriority('quarter', 7);\n\n // PARSING\n\n addRegexToken('Q', match1);\n addParseToken('Q', function (input, array) {\n array[MONTH] = (toInt(input) - 1) * 3;\n });\n\n // MOMENTS\n\n function getSetQuarter(input) {\n return input == null\n ? Math.ceil((this.month() + 1) / 3)\n : this.month((input - 1) * 3 + (this.month() % 3));\n }\n\n // FORMATTING\n\n addFormatToken('D', ['DD', 2], 'Do', 'date');\n\n // ALIASES\n\n addUnitAlias('date', 'D');\n\n // PRIORITY\n addUnitPriority('date', 9);\n\n // PARSING\n\n addRegexToken('D', match1to2);\n addRegexToken('DD', match1to2, match2);\n addRegexToken('Do', function (isStrict, locale) {\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n return isStrict\n ? locale._dayOfMonthOrdinalParse || locale._ordinalParse\n : locale._dayOfMonthOrdinalParseLenient;\n });\n\n addParseToken(['D', 'DD'], DATE);\n addParseToken('Do', function (input, array) {\n array[DATE] = toInt(input.match(match1to2)[0]);\n });\n\n // MOMENTS\n\n var getSetDayOfMonth = makeGetSet('Date', true);\n\n // FORMATTING\n\n addFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear');\n\n // ALIASES\n\n addUnitAlias('dayOfYear', 'DDD');\n\n // PRIORITY\n addUnitPriority('dayOfYear', 4);\n\n // PARSING\n\n addRegexToken('DDD', match1to3);\n addRegexToken('DDDD', match3);\n addParseToken(['DDD', 'DDDD'], function (input, array, config) {\n config._dayOfYear = toInt(input);\n });\n\n // HELPERS\n\n // MOMENTS\n\n function getSetDayOfYear(input) {\n var dayOfYear =\n Math.round(\n (this.clone().startOf('day') - this.clone().startOf('year')) / 864e5\n ) + 1;\n return input == null ? dayOfYear : this.add(input - dayOfYear, 'd');\n }\n\n // FORMATTING\n\n addFormatToken('m', ['mm', 2], 0, 'minute');\n\n // ALIASES\n\n addUnitAlias('minute', 'm');\n\n // PRIORITY\n\n addUnitPriority('minute', 14);\n\n // PARSING\n\n addRegexToken('m', match1to2);\n addRegexToken('mm', match1to2, match2);\n addParseToken(['m', 'mm'], MINUTE);\n\n // MOMENTS\n\n var getSetMinute = makeGetSet('Minutes', false);\n\n // FORMATTING\n\n addFormatToken('s', ['ss', 2], 0, 'second');\n\n // ALIASES\n\n addUnitAlias('second', 's');\n\n // PRIORITY\n\n addUnitPriority('second', 15);\n\n // PARSING\n\n addRegexToken('s', match1to2);\n addRegexToken('ss', match1to2, match2);\n addParseToken(['s', 'ss'], SECOND);\n\n // MOMENTS\n\n var getSetSecond = makeGetSet('Seconds', false);\n\n // FORMATTING\n\n addFormatToken('S', 0, 0, function () {\n return ~~(this.millisecond() / 100);\n });\n\n addFormatToken(0, ['SS', 2], 0, function () {\n return ~~(this.millisecond() / 10);\n });\n\n addFormatToken(0, ['SSS', 3], 0, 'millisecond');\n addFormatToken(0, ['SSSS', 4], 0, function () {\n return this.millisecond() * 10;\n });\n addFormatToken(0, ['SSSSS', 5], 0, function () {\n return this.millisecond() * 100;\n });\n addFormatToken(0, ['SSSSSS', 6], 0, function () {\n return this.millisecond() * 1000;\n });\n addFormatToken(0, ['SSSSSSS', 7], 0, function () {\n return this.millisecond() * 10000;\n });\n addFormatToken(0, ['SSSSSSSS', 8], 0, function () {\n return this.millisecond() * 100000;\n });\n addFormatToken(0, ['SSSSSSSSS', 9], 0, function () {\n return this.millisecond() * 1000000;\n });\n\n // ALIASES\n\n addUnitAlias('millisecond', 'ms');\n\n // PRIORITY\n\n addUnitPriority('millisecond', 16);\n\n // PARSING\n\n addRegexToken('S', match1to3, match1);\n addRegexToken('SS', match1to3, match2);\n addRegexToken('SSS', match1to3, match3);\n\n var token, getSetMillisecond;\n for (token = 'SSSS'; token.length <= 9; token += 'S') {\n addRegexToken(token, matchUnsigned);\n }\n\n function parseMs(input, array) {\n array[MILLISECOND] = toInt(('0.' + input) * 1000);\n }\n\n for (token = 'S'; token.length <= 9; token += 'S') {\n addParseToken(token, parseMs);\n }\n\n getSetMillisecond = makeGetSet('Milliseconds', false);\n\n // FORMATTING\n\n addFormatToken('z', 0, 0, 'zoneAbbr');\n addFormatToken('zz', 0, 0, 'zoneName');\n\n // MOMENTS\n\n function getZoneAbbr() {\n return this._isUTC ? 'UTC' : '';\n }\n\n function getZoneName() {\n return this._isUTC ? 'Coordinated Universal Time' : '';\n }\n\n var proto = Moment.prototype;\n\n proto.add = add;\n proto.calendar = calendar$1;\n proto.clone = clone;\n proto.diff = diff;\n proto.endOf = endOf;\n proto.format = format;\n proto.from = from;\n proto.fromNow = fromNow;\n proto.to = to;\n proto.toNow = toNow;\n proto.get = stringGet;\n proto.invalidAt = invalidAt;\n proto.isAfter = isAfter;\n proto.isBefore = isBefore;\n proto.isBetween = isBetween;\n proto.isSame = isSame;\n proto.isSameOrAfter = isSameOrAfter;\n proto.isSameOrBefore = isSameOrBefore;\n proto.isValid = isValid$2;\n proto.lang = lang;\n proto.locale = locale;\n proto.localeData = localeData;\n proto.max = prototypeMax;\n proto.min = prototypeMin;\n proto.parsingFlags = parsingFlags;\n proto.set = stringSet;\n proto.startOf = startOf;\n proto.subtract = subtract;\n proto.toArray = toArray;\n proto.toObject = toObject;\n proto.toDate = toDate;\n proto.toISOString = toISOString;\n proto.inspect = inspect;\n if (typeof Symbol !== 'undefined' && Symbol.for != null) {\n proto[Symbol.for('nodejs.util.inspect.custom')] = function () {\n return 'Moment<' + this.format() + '>';\n };\n }\n proto.toJSON = toJSON;\n proto.toString = toString;\n proto.unix = unix;\n proto.valueOf = valueOf;\n proto.creationData = creationData;\n proto.eraName = getEraName;\n proto.eraNarrow = getEraNarrow;\n proto.eraAbbr = getEraAbbr;\n proto.eraYear = getEraYear;\n proto.year = getSetYear;\n proto.isLeapYear = getIsLeapYear;\n proto.weekYear = getSetWeekYear;\n proto.isoWeekYear = getSetISOWeekYear;\n proto.quarter = proto.quarters = getSetQuarter;\n proto.month = getSetMonth;\n proto.daysInMonth = getDaysInMonth;\n proto.week = proto.weeks = getSetWeek;\n proto.isoWeek = proto.isoWeeks = getSetISOWeek;\n proto.weeksInYear = getWeeksInYear;\n proto.weeksInWeekYear = getWeeksInWeekYear;\n proto.isoWeeksInYear = getISOWeeksInYear;\n proto.isoWeeksInISOWeekYear = getISOWeeksInISOWeekYear;\n proto.date = getSetDayOfMonth;\n proto.day = proto.days = getSetDayOfWeek;\n proto.weekday = getSetLocaleDayOfWeek;\n proto.isoWeekday = getSetISODayOfWeek;\n proto.dayOfYear = getSetDayOfYear;\n proto.hour = proto.hours = getSetHour;\n proto.minute = proto.minutes = getSetMinute;\n proto.second = proto.seconds = getSetSecond;\n proto.millisecond = proto.milliseconds = getSetMillisecond;\n proto.utcOffset = getSetOffset;\n proto.utc = setOffsetToUTC;\n proto.local = setOffsetToLocal;\n proto.parseZone = setOffsetToParsedOffset;\n proto.hasAlignedHourOffset = hasAlignedHourOffset;\n proto.isDST = isDaylightSavingTime;\n proto.isLocal = isLocal;\n proto.isUtcOffset = isUtcOffset;\n proto.isUtc = isUtc;\n proto.isUTC = isUtc;\n proto.zoneAbbr = getZoneAbbr;\n proto.zoneName = getZoneName;\n proto.dates = deprecate(\n 'dates accessor is deprecated. Use date instead.',\n getSetDayOfMonth\n );\n proto.months = deprecate(\n 'months accessor is deprecated. Use month instead',\n getSetMonth\n );\n proto.years = deprecate(\n 'years accessor is deprecated. Use year instead',\n getSetYear\n );\n proto.zone = deprecate(\n 'moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/',\n getSetZone\n );\n proto.isDSTShifted = deprecate(\n 'isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information',\n isDaylightSavingTimeShifted\n );\n\n function createUnix(input) {\n return createLocal(input * 1000);\n }\n\n function createInZone() {\n return createLocal.apply(null, arguments).parseZone();\n }\n\n function preParsePostFormat(string) {\n return string;\n }\n\n var proto$1 = Locale.prototype;\n\n proto$1.calendar = calendar;\n proto$1.longDateFormat = longDateFormat;\n proto$1.invalidDate = invalidDate;\n proto$1.ordinal = ordinal;\n proto$1.preparse = preParsePostFormat;\n proto$1.postformat = preParsePostFormat;\n proto$1.relativeTime = relativeTime;\n proto$1.pastFuture = pastFuture;\n proto$1.set = set;\n proto$1.eras = localeEras;\n proto$1.erasParse = localeErasParse;\n proto$1.erasConvertYear = localeErasConvertYear;\n proto$1.erasAbbrRegex = erasAbbrRegex;\n proto$1.erasNameRegex = erasNameRegex;\n proto$1.erasNarrowRegex = erasNarrowRegex;\n\n proto$1.months = localeMonths;\n proto$1.monthsShort = localeMonthsShort;\n proto$1.monthsParse = localeMonthsParse;\n proto$1.monthsRegex = monthsRegex;\n proto$1.monthsShortRegex = monthsShortRegex;\n proto$1.week = localeWeek;\n proto$1.firstDayOfYear = localeFirstDayOfYear;\n proto$1.firstDayOfWeek = localeFirstDayOfWeek;\n\n proto$1.weekdays = localeWeekdays;\n proto$1.weekdaysMin = localeWeekdaysMin;\n proto$1.weekdaysShort = localeWeekdaysShort;\n proto$1.weekdaysParse = localeWeekdaysParse;\n\n proto$1.weekdaysRegex = weekdaysRegex;\n proto$1.weekdaysShortRegex = weekdaysShortRegex;\n proto$1.weekdaysMinRegex = weekdaysMinRegex;\n\n proto$1.isPM = localeIsPM;\n proto$1.meridiem = localeMeridiem;\n\n function get$1(format, index, field, setter) {\n var locale = getLocale(),\n utc = createUTC().set(setter, index);\n return locale[field](utc, format);\n }\n\n function listMonthsImpl(format, index, field) {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n\n if (index != null) {\n return get$1(format, index, field, 'month');\n }\n\n var i,\n out = [];\n for (i = 0; i < 12; i++) {\n out[i] = get$1(format, i, field, 'month');\n }\n return out;\n }\n\n // ()\n // (5)\n // (fmt, 5)\n // (fmt)\n // (true)\n // (true, 5)\n // (true, fmt, 5)\n // (true, fmt)\n function listWeekdaysImpl(localeSorted, format, index, field) {\n if (typeof localeSorted === 'boolean') {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n } else {\n format = localeSorted;\n index = format;\n localeSorted = false;\n\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n }\n\n var locale = getLocale(),\n shift = localeSorted ? locale._week.dow : 0,\n i,\n out = [];\n\n if (index != null) {\n return get$1(format, (index + shift) % 7, field, 'day');\n }\n\n for (i = 0; i < 7; i++) {\n out[i] = get$1(format, (i + shift) % 7, field, 'day');\n }\n return out;\n }\n\n function listMonths(format, index) {\n return listMonthsImpl(format, index, 'months');\n }\n\n function listMonthsShort(format, index) {\n return listMonthsImpl(format, index, 'monthsShort');\n }\n\n function listWeekdays(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdays');\n }\n\n function listWeekdaysShort(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysShort');\n }\n\n function listWeekdaysMin(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysMin');\n }\n\n getSetGlobalLocale('en', {\n eras: [\n {\n since: '0001-01-01',\n until: +Infinity,\n offset: 1,\n name: 'Anno Domini',\n narrow: 'AD',\n abbr: 'AD',\n },\n {\n since: '0000-12-31',\n until: -Infinity,\n offset: 1,\n name: 'Before Christ',\n narrow: 'BC',\n abbr: 'BC',\n },\n ],\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n toInt((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n });\n\n // Side effect imports\n\n hooks.lang = deprecate(\n 'moment.lang is deprecated. Use moment.locale instead.',\n getSetGlobalLocale\n );\n hooks.langData = deprecate(\n 'moment.langData is deprecated. Use moment.localeData instead.',\n getLocale\n );\n\n var mathAbs = Math.abs;\n\n function abs() {\n var data = this._data;\n\n this._milliseconds = mathAbs(this._milliseconds);\n this._days = mathAbs(this._days);\n this._months = mathAbs(this._months);\n\n data.milliseconds = mathAbs(data.milliseconds);\n data.seconds = mathAbs(data.seconds);\n data.minutes = mathAbs(data.minutes);\n data.hours = mathAbs(data.hours);\n data.months = mathAbs(data.months);\n data.years = mathAbs(data.years);\n\n return this;\n }\n\n function addSubtract$1(duration, input, value, direction) {\n var other = createDuration(input, value);\n\n duration._milliseconds += direction * other._milliseconds;\n duration._days += direction * other._days;\n duration._months += direction * other._months;\n\n return duration._bubble();\n }\n\n // supports only 2.0-style add(1, 's') or add(duration)\n function add$1(input, value) {\n return addSubtract$1(this, input, value, 1);\n }\n\n // supports only 2.0-style subtract(1, 's') or subtract(duration)\n function subtract$1(input, value) {\n return addSubtract$1(this, input, value, -1);\n }\n\n function absCeil(number) {\n if (number < 0) {\n return Math.floor(number);\n } else {\n return Math.ceil(number);\n }\n }\n\n function bubble() {\n var milliseconds = this._milliseconds,\n days = this._days,\n months = this._months,\n data = this._data,\n seconds,\n minutes,\n hours,\n years,\n monthsFromDays;\n\n // if we have a mix of positive and negative values, bubble down first\n // check: https://github.com/moment/moment/issues/2166\n if (\n !(\n (milliseconds >= 0 && days >= 0 && months >= 0) ||\n (milliseconds <= 0 && days <= 0 && months <= 0)\n )\n ) {\n milliseconds += absCeil(monthsToDays(months) + days) * 864e5;\n days = 0;\n months = 0;\n }\n\n // The following code bubbles up values, see the tests for\n // examples of what that means.\n data.milliseconds = milliseconds % 1000;\n\n seconds = absFloor(milliseconds / 1000);\n data.seconds = seconds % 60;\n\n minutes = absFloor(seconds / 60);\n data.minutes = minutes % 60;\n\n hours = absFloor(minutes / 60);\n data.hours = hours % 24;\n\n days += absFloor(hours / 24);\n\n // convert days to months\n monthsFromDays = absFloor(daysToMonths(days));\n months += monthsFromDays;\n days -= absCeil(monthsToDays(monthsFromDays));\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n data.days = days;\n data.months = months;\n data.years = years;\n\n return this;\n }\n\n function daysToMonths(days) {\n // 400 years have 146097 days (taking into account leap year rules)\n // 400 years have 12 months === 4800\n return (days * 4800) / 146097;\n }\n\n function monthsToDays(months) {\n // the reverse of daysToMonths\n return (months * 146097) / 4800;\n }\n\n function as(units) {\n if (!this.isValid()) {\n return NaN;\n }\n var days,\n months,\n milliseconds = this._milliseconds;\n\n units = normalizeUnits(units);\n\n if (units === 'month' || units === 'quarter' || units === 'year') {\n days = this._days + milliseconds / 864e5;\n months = this._months + daysToMonths(days);\n switch (units) {\n case 'month':\n return months;\n case 'quarter':\n return months / 3;\n case 'year':\n return months / 12;\n }\n } else {\n // handle milliseconds separately because of floating point math errors (issue #1867)\n days = this._days + Math.round(monthsToDays(this._months));\n switch (units) {\n case 'week':\n return days / 7 + milliseconds / 6048e5;\n case 'day':\n return days + milliseconds / 864e5;\n case 'hour':\n return days * 24 + milliseconds / 36e5;\n case 'minute':\n return days * 1440 + milliseconds / 6e4;\n case 'second':\n return days * 86400 + milliseconds / 1000;\n // Math.floor prevents floating point math errors here\n case 'millisecond':\n return Math.floor(days * 864e5) + milliseconds;\n default:\n throw new Error('Unknown unit ' + units);\n }\n }\n }\n\n // TODO: Use this.as('ms')?\n function valueOf$1() {\n if (!this.isValid()) {\n return NaN;\n }\n return (\n this._milliseconds +\n this._days * 864e5 +\n (this._months % 12) * 2592e6 +\n toInt(this._months / 12) * 31536e6\n );\n }\n\n function makeAs(alias) {\n return function () {\n return this.as(alias);\n };\n }\n\n var asMilliseconds = makeAs('ms'),\n asSeconds = makeAs('s'),\n asMinutes = makeAs('m'),\n asHours = makeAs('h'),\n asDays = makeAs('d'),\n asWeeks = makeAs('w'),\n asMonths = makeAs('M'),\n asQuarters = makeAs('Q'),\n asYears = makeAs('y');\n\n function clone$1() {\n return createDuration(this);\n }\n\n function get$2(units) {\n units = normalizeUnits(units);\n return this.isValid() ? this[units + 's']() : NaN;\n }\n\n function makeGetter(name) {\n return function () {\n return this.isValid() ? this._data[name] : NaN;\n };\n }\n\n var milliseconds = makeGetter('milliseconds'),\n seconds = makeGetter('seconds'),\n minutes = makeGetter('minutes'),\n hours = makeGetter('hours'),\n days = makeGetter('days'),\n months = makeGetter('months'),\n years = makeGetter('years');\n\n function weeks() {\n return absFloor(this.days() / 7);\n }\n\n var round = Math.round,\n thresholds = {\n ss: 44, // a few seconds to seconds\n s: 45, // seconds to minute\n m: 45, // minutes to hour\n h: 22, // hours to day\n d: 26, // days to month/week\n w: null, // weeks to month\n M: 11, // months to year\n };\n\n // helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize\n function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) {\n return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture);\n }\n\n function relativeTime$1(posNegDuration, withoutSuffix, thresholds, locale) {\n var duration = createDuration(posNegDuration).abs(),\n seconds = round(duration.as('s')),\n minutes = round(duration.as('m')),\n hours = round(duration.as('h')),\n days = round(duration.as('d')),\n months = round(duration.as('M')),\n weeks = round(duration.as('w')),\n years = round(duration.as('y')),\n a =\n (seconds <= thresholds.ss && ['s', seconds]) ||\n (seconds < thresholds.s && ['ss', seconds]) ||\n (minutes <= 1 && ['m']) ||\n (minutes < thresholds.m && ['mm', minutes]) ||\n (hours <= 1 && ['h']) ||\n (hours < thresholds.h && ['hh', hours]) ||\n (days <= 1 && ['d']) ||\n (days < thresholds.d && ['dd', days]);\n\n if (thresholds.w != null) {\n a =\n a ||\n (weeks <= 1 && ['w']) ||\n (weeks < thresholds.w && ['ww', weeks]);\n }\n a = a ||\n (months <= 1 && ['M']) ||\n (months < thresholds.M && ['MM', months]) ||\n (years <= 1 && ['y']) || ['yy', years];\n\n a[2] = withoutSuffix;\n a[3] = +posNegDuration > 0;\n a[4] = locale;\n return substituteTimeAgo.apply(null, a);\n }\n\n // This function allows you to set the rounding function for relative time strings\n function getSetRelativeTimeRounding(roundingFunction) {\n if (roundingFunction === undefined) {\n return round;\n }\n if (typeof roundingFunction === 'function') {\n round = roundingFunction;\n return true;\n }\n return false;\n }\n\n // This function allows you to set a threshold for relative time strings\n function getSetRelativeTimeThreshold(threshold, limit) {\n if (thresholds[threshold] === undefined) {\n return false;\n }\n if (limit === undefined) {\n return thresholds[threshold];\n }\n thresholds[threshold] = limit;\n if (threshold === 's') {\n thresholds.ss = limit - 1;\n }\n return true;\n }\n\n function humanize(argWithSuffix, argThresholds) {\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var withSuffix = false,\n th = thresholds,\n locale,\n output;\n\n if (typeof argWithSuffix === 'object') {\n argThresholds = argWithSuffix;\n argWithSuffix = false;\n }\n if (typeof argWithSuffix === 'boolean') {\n withSuffix = argWithSuffix;\n }\n if (typeof argThresholds === 'object') {\n th = Object.assign({}, thresholds, argThresholds);\n if (argThresholds.s != null && argThresholds.ss == null) {\n th.ss = argThresholds.s - 1;\n }\n }\n\n locale = this.localeData();\n output = relativeTime$1(this, !withSuffix, th, locale);\n\n if (withSuffix) {\n output = locale.pastFuture(+this, output);\n }\n\n return locale.postformat(output);\n }\n\n var abs$1 = Math.abs;\n\n function sign(x) {\n return (x > 0) - (x < 0) || +x;\n }\n\n function toISOString$1() {\n // for ISO strings we do not use the normal bubbling rules:\n // * milliseconds bubble up until they become hours\n // * days do not bubble at all\n // * months bubble up until they become years\n // This is because there is no context-free conversion between hours and days\n // (think of clock changes)\n // and also not between days and months (28-31 days per month)\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var seconds = abs$1(this._milliseconds) / 1000,\n days = abs$1(this._days),\n months = abs$1(this._months),\n minutes,\n hours,\n years,\n s,\n total = this.asSeconds(),\n totalSign,\n ymSign,\n daysSign,\n hmsSign;\n\n if (!total) {\n // this is the same as C#'s (Noda) and python (isodate)...\n // but not other JS (goog.date)\n return 'P0D';\n }\n\n // 3600 seconds -> 60 minutes -> 1 hour\n minutes = absFloor(seconds / 60);\n hours = absFloor(minutes / 60);\n seconds %= 60;\n minutes %= 60;\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js\n s = seconds ? seconds.toFixed(3).replace(/\\.?0+$/, '') : '';\n\n totalSign = total < 0 ? '-' : '';\n ymSign = sign(this._months) !== sign(total) ? '-' : '';\n daysSign = sign(this._days) !== sign(total) ? '-' : '';\n hmsSign = sign(this._milliseconds) !== sign(total) ? '-' : '';\n\n return (\n totalSign +\n 'P' +\n (years ? ymSign + years + 'Y' : '') +\n (months ? ymSign + months + 'M' : '') +\n (days ? daysSign + days + 'D' : '') +\n (hours || minutes || seconds ? 'T' : '') +\n (hours ? hmsSign + hours + 'H' : '') +\n (minutes ? hmsSign + minutes + 'M' : '') +\n (seconds ? hmsSign + s + 'S' : '')\n );\n }\n\n var proto$2 = Duration.prototype;\n\n proto$2.isValid = isValid$1;\n proto$2.abs = abs;\n proto$2.add = add$1;\n proto$2.subtract = subtract$1;\n proto$2.as = as;\n proto$2.asMilliseconds = asMilliseconds;\n proto$2.asSeconds = asSeconds;\n proto$2.asMinutes = asMinutes;\n proto$2.asHours = asHours;\n proto$2.asDays = asDays;\n proto$2.asWeeks = asWeeks;\n proto$2.asMonths = asMonths;\n proto$2.asQuarters = asQuarters;\n proto$2.asYears = asYears;\n proto$2.valueOf = valueOf$1;\n proto$2._bubble = bubble;\n proto$2.clone = clone$1;\n proto$2.get = get$2;\n proto$2.milliseconds = milliseconds;\n proto$2.seconds = seconds;\n proto$2.minutes = minutes;\n proto$2.hours = hours;\n proto$2.days = days;\n proto$2.weeks = weeks;\n proto$2.months = months;\n proto$2.years = years;\n proto$2.humanize = humanize;\n proto$2.toISOString = toISOString$1;\n proto$2.toString = toISOString$1;\n proto$2.toJSON = toISOString$1;\n proto$2.locale = locale;\n proto$2.localeData = localeData;\n\n proto$2.toIsoString = deprecate(\n 'toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)',\n toISOString$1\n );\n proto$2.lang = lang;\n\n // FORMATTING\n\n addFormatToken('X', 0, 0, 'unix');\n addFormatToken('x', 0, 0, 'valueOf');\n\n // PARSING\n\n addRegexToken('x', matchSigned);\n addRegexToken('X', matchTimestamp);\n addParseToken('X', function (input, array, config) {\n config._d = new Date(parseFloat(input) * 1000);\n });\n addParseToken('x', function (input, array, config) {\n config._d = new Date(toInt(input));\n });\n\n //! moment.js\n\n hooks.version = '2.29.4';\n\n setHookCallback(createLocal);\n\n hooks.fn = proto;\n hooks.min = min;\n hooks.max = max;\n hooks.now = now;\n hooks.utc = createUTC;\n hooks.unix = createUnix;\n hooks.months = listMonths;\n hooks.isDate = isDate;\n hooks.locale = getSetGlobalLocale;\n hooks.invalid = createInvalid;\n hooks.duration = createDuration;\n hooks.isMoment = isMoment;\n hooks.weekdays = listWeekdays;\n hooks.parseZone = createInZone;\n hooks.localeData = getLocale;\n hooks.isDuration = isDuration;\n hooks.monthsShort = listMonthsShort;\n hooks.weekdaysMin = listWeekdaysMin;\n hooks.defineLocale = defineLocale;\n hooks.updateLocale = updateLocale;\n hooks.locales = listLocales;\n hooks.weekdaysShort = listWeekdaysShort;\n hooks.normalizeUnits = normalizeUnits;\n hooks.relativeTimeRounding = getSetRelativeTimeRounding;\n hooks.relativeTimeThreshold = getSetRelativeTimeThreshold;\n hooks.calendarFormat = getCalendarFormat;\n hooks.prototype = proto;\n\n // currently HTML5 input type only supports 24-hour formats\n hooks.HTML5_FMT = {\n DATETIME_LOCAL: 'YYYY-MM-DDTHH:mm', // \n DATETIME_LOCAL_SECONDS: 'YYYY-MM-DDTHH:mm:ss', // \n DATETIME_LOCAL_MS: 'YYYY-MM-DDTHH:mm:ss.SSS', // \n DATE: 'YYYY-MM-DD', // \n TIME: 'HH:mm', // \n TIME_SECONDS: 'HH:mm:ss', // \n TIME_MS: 'HH:mm:ss.SSS', // \n WEEK: 'GGGG-[W]WW', // \n MONTH: 'YYYY-MM', // \n };\n\n return hooks;\n\n})));\n","'use strict';\n\nvar get = require('lodash.get');\nvar plurals = require('./plurals');\n\nmodule.exports = Gettext;\n\n/**\n * Creates and returns a new Gettext instance.\n *\n * @constructor\n * @param {Object} [options] A set of options\n * @param {String} options.sourceLocale The locale that the source code and its\n * texts are written in. Translations for\n * this locale is not necessary.\n * @param {Boolean} options.debug Whether to output debug info into the\n * console.\n * @return {Object} A Gettext instance\n */\nfunction Gettext(options) {\n options = options || {};\n\n this.catalogs = {};\n this.locale = '';\n this.domain = 'messages';\n\n this.listeners = [];\n\n // Set source locale\n this.sourceLocale = '';\n if (options.sourceLocale) {\n if (typeof options.sourceLocale === 'string') {\n this.sourceLocale = options.sourceLocale;\n }\n else {\n this.warn('The `sourceLocale` option should be a string');\n }\n }\n\n // Set debug flag\n this.debug = 'debug' in options && options.debug === true;\n}\n\n/**\n * Adds an event listener.\n *\n * @param {String} eventName An event name\n * @param {Function} callback An event handler function\n */\nGettext.prototype.on = function(eventName, callback) {\n this.listeners.push({\n eventName: eventName,\n callback: callback\n });\n};\n\n/**\n * Removes an event listener.\n *\n * @param {String} eventName An event name\n * @param {Function} callback A previously registered event handler function\n */\nGettext.prototype.off = function(eventName, callback) {\n this.listeners = this.listeners.filter(function(listener) {\n return (\n listener.eventName === eventName &&\n listener.callback === callback\n ) === false;\n });\n};\n\n/**\n * Emits an event to all registered event listener.\n *\n * @private\n * @param {String} eventName An event name\n * @param {any} eventData Data to pass to event listeners\n */\nGettext.prototype.emit = function(eventName, eventData) {\n for (var i = 0; i < this.listeners.length; i++) {\n var listener = this.listeners[i];\n if (listener.eventName === eventName) {\n listener.callback(eventData);\n }\n }\n};\n\n/**\n * Logs a warning to the console if debug mode is enabled.\n *\n * @ignore\n * @param {String} message A warning message\n */\nGettext.prototype.warn = function(message) {\n if (this.debug) {\n console.warn(message);\n }\n\n this.emit('error', new Error(message));\n};\n\n/**\n * Stores a set of translations in the set of gettext\n * catalogs.\n *\n * @example\n * gt.addTranslations('sv-SE', 'messages', translationsObject)\n *\n * @param {String} locale A locale string\n * @param {String} domain A domain name\n * @param {Object} translations An object of gettext-parser JSON shape\n */\nGettext.prototype.addTranslations = function(locale, domain, translations) {\n if (!this.catalogs[locale]) {\n this.catalogs[locale] = {};\n }\n\n this.catalogs[locale][domain] = translations;\n};\n\n/**\n * Sets the locale to get translated messages for.\n *\n * @example\n * gt.setLocale('sv-SE')\n *\n * @param {String} locale A locale\n */\nGettext.prototype.setLocale = function(locale) {\n if (typeof locale !== 'string') {\n this.warn(\n 'You called setLocale() with an argument of type ' + (typeof locale) + '. ' +\n 'The locale must be a string.'\n );\n return;\n }\n\n if (locale.trim() === '') {\n this.warn('You called setLocale() with an empty value, which makes little sense.');\n }\n\n if (locale !== this.sourceLocale && !this.catalogs[locale]) {\n this.warn('You called setLocale() with \"' + locale + '\", but no translations for that locale has been added.');\n }\n\n this.locale = locale;\n};\n\n/**\n * Sets the default gettext domain.\n *\n * @example\n * gt.setTextDomain('domainname')\n *\n * @param {String} domain A gettext domain name\n */\nGettext.prototype.setTextDomain = function(domain) {\n if (typeof domain !== 'string') {\n this.warn(\n 'You called setTextDomain() with an argument of type ' + (typeof domain) + '. ' +\n 'The domain must be a string.'\n );\n return;\n }\n\n if (domain.trim() === '') {\n this.warn('You called setTextDomain() with an empty `domain` value.');\n }\n\n this.domain = domain;\n};\n\n/**\n * Translates a string using the default textdomain\n *\n * @example\n * gt.gettext('Some text')\n *\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.gettext = function(msgid) {\n return this.dnpgettext(this.domain, '', msgid);\n};\n\n/**\n * Translates a string using a specific domain\n *\n * @example\n * gt.dgettext('domainname', 'Some text')\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dgettext = function(domain, msgid) {\n return this.dnpgettext(domain, '', msgid);\n};\n\n/**\n * Translates a plural string using the default textdomain\n *\n * @example\n * gt.ngettext('One thing', 'Many things', numberOfThings)\n *\n * @param {String} msgid String to be translated when count is not plural\n * @param {String} msgidPlural String to be translated when count is plural\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.ngettext = function(msgid, msgidPlural, count) {\n return this.dnpgettext(this.domain, '', msgid, msgidPlural, count);\n};\n\n/**\n * Translates a plural string using a specific textdomain\n *\n * @example\n * gt.dngettext('domainname', 'One thing', 'Many things', numberOfThings)\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgid String to be translated when count is not plural\n * @param {String} msgidPlural String to be translated when count is plural\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dngettext = function(domain, msgid, msgidPlural, count) {\n return this.dnpgettext(domain, '', msgid, msgidPlural, count);\n};\n\n/**\n * Translates a string from a specific context using the default textdomain\n *\n * @example\n * gt.pgettext('sports', 'Back')\n *\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.pgettext = function(msgctxt, msgid) {\n return this.dnpgettext(this.domain, msgctxt, msgid);\n};\n\n/**\n * Translates a string from a specific context using s specific textdomain\n *\n * @example\n * gt.dpgettext('domainname', 'sports', 'Back')\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dpgettext = function(domain, msgctxt, msgid) {\n return this.dnpgettext(domain, msgctxt, msgid);\n};\n\n/**\n * Translates a plural string from a specific context using the default textdomain\n *\n * @example\n * gt.npgettext('sports', 'Back', '%d backs', numberOfBacks)\n *\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated when count is not plural\n * @param {String} msgidPlural String to be translated when count is plural\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.npgettext = function(msgctxt, msgid, msgidPlural, count) {\n return this.dnpgettext(this.domain, msgctxt, msgid, msgidPlural, count);\n};\n\n/**\n * Translates a plural string from a specifi context using a specific textdomain\n *\n * @example\n * gt.dnpgettext('domainname', 'sports', 'Back', '%d backs', numberOfBacks)\n *\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @param {String} msgidPlural If no translation was found, return this on count!=1\n * @param {Number} count Number count for the plural\n * @return {String} Translation or the original string if no translation was found\n */\nGettext.prototype.dnpgettext = function(domain, msgctxt, msgid, msgidPlural, count) {\n var defaultTranslation = msgid;\n var translation;\n var index;\n\n msgctxt = msgctxt || '';\n\n if (!isNaN(count) && count !== 1) {\n defaultTranslation = msgidPlural || msgid;\n }\n\n translation = this._getTranslation(domain, msgctxt, msgid);\n\n if (translation) {\n if (typeof count === 'number') {\n var pluralsFunc = plurals[Gettext.getLanguageCode(this.locale)].pluralsFunc;\n index = pluralsFunc(count);\n if (typeof index === 'boolean') {\n index = index ? 1 : 0;\n }\n } else {\n index = 0;\n }\n\n return translation.msgstr[index] || defaultTranslation;\n }\n else if (!this.sourceLocale || this.locale !== this.sourceLocale) {\n this.warn('No translation was found for msgid \"' + msgid + '\" in msgctxt \"' + msgctxt + '\" and domain \"' + domain + '\"');\n }\n\n return defaultTranslation;\n};\n\n/**\n * Retrieves comments object for a translation. The comments object\n * has the shape `{ translator, extracted, reference, flag, previous }`.\n *\n * @example\n * const comment = gt.getComment('domainname', 'sports', 'Backs')\n *\n * @private\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {Object} Comments object or false if not found\n */\nGettext.prototype.getComment = function(domain, msgctxt, msgid) {\n var translation;\n\n translation = this._getTranslation(domain, msgctxt, msgid);\n if (translation) {\n return translation.comments || {};\n }\n\n return {};\n};\n\n/**\n * Retrieves translation object from the domain and context\n *\n * @private\n * @param {String} domain A gettext domain name\n * @param {String} msgctxt Translation context\n * @param {String} msgid String to be translated\n * @return {Object} Translation object or false if not found\n */\nGettext.prototype._getTranslation = function(domain, msgctxt, msgid) {\n msgctxt = msgctxt || '';\n\n return get(this.catalogs, [this.locale, domain, 'translations', msgctxt, msgid]);\n};\n\n/**\n * Returns the language code part of a locale\n *\n * @example\n * Gettext.getLanguageCode('sv-SE')\n * // -> \"sv\"\n *\n * @private\n * @param {String} locale A case-insensitive locale string\n * @returns {String} A language code\n */\nGettext.getLanguageCode = function(locale) {\n return locale.split(/[\\-_]/)[0].toLowerCase();\n};\n\n/* C-style aliases */\n\n/**\n * C-style alias for [setTextDomain](#gettextsettextdomaindomain)\n *\n * @see Gettext#setTextDomain\n */\nGettext.prototype.textdomain = function(domain) {\n if (this.debug) {\n console.warn('textdomain(domain) was used to set locales in node-gettext v1. ' +\n 'Make sure you are using it for domains, and switch to setLocale(locale) if you are not.\\n\\n ' +\n 'To read more about the migration from node-gettext v1 to v2, ' +\n 'see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x\\n\\n' +\n 'This warning will be removed in the final 2.0.0');\n }\n\n this.setTextDomain(domain);\n};\n\n/**\n * C-style alias for [setLocale](#gettextsetlocalelocale)\n *\n * @see Gettext#setLocale\n */\nGettext.prototype.setlocale = function(locale) {\n this.setLocale(locale);\n};\n\n/* Deprecated functions */\n\n/**\n * This function will be removed in the final 2.0.0 release.\n *\n * @deprecated\n */\nGettext.prototype.addTextdomain = function() {\n console.error('addTextdomain() is deprecated.\\n\\n' +\n '* To add translations, use addTranslations()\\n' +\n '* To set the default domain, use setTextDomain() (or its alias textdomain())\\n' +\n '\\n' +\n 'To read more about the migration from node-gettext v1 to v2, ' +\n 'see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x');\n};\n","'use strict';\n\nmodule.exports = {\n ach: {\n name: 'Acholi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n af: {\n name: 'Afrikaans',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ak: {\n name: 'Akan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n am: {\n name: 'Amharic',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n an: {\n name: 'Aragonese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ar: {\n name: 'Arabic',\n examples: [{\n plural: 0,\n sample: 0\n }, {\n plural: 1,\n sample: 1\n }, {\n plural: 2,\n sample: 2\n }, {\n plural: 3,\n sample: 3\n }, {\n plural: 4,\n sample: 11\n }, {\n plural: 5,\n sample: 100\n }],\n nplurals: 6,\n pluralsText: 'nplurals = 6; plural = (n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5)',\n pluralsFunc: function(n) {\n return (n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5);\n }\n },\n arn: {\n name: 'Mapudungun',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n ast: {\n name: 'Asturian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ay: {\n name: 'Aymará',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n az: {\n name: 'Azerbaijani',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n be: {\n name: 'Belarusian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n bg: {\n name: 'Bulgarian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n bn: {\n name: 'Bengali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n bo: {\n name: 'Tibetan',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n br: {\n name: 'Breton',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n brx: {\n name: 'Bodo',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n bs: {\n name: 'Bosnian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n ca: {\n name: 'Catalan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n cgg: {\n name: 'Chiga',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n cs: {\n name: 'Czech',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2);\n }\n },\n csb: {\n name: 'Kashubian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n cy: {\n name: 'Welsh',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 8\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : (n !== 8 && n !== 11) ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 2 ? 1 : (n !== 8 && n !== 11) ? 2 : 3);\n }\n },\n da: {\n name: 'Danish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n de: {\n name: 'German',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n doi: {\n name: 'Dogri',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n dz: {\n name: 'Dzongkha',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n el: {\n name: 'Greek',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n en: {\n name: 'English',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n eo: {\n name: 'Esperanto',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n es: {\n name: 'Spanish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n et: {\n name: 'Estonian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n eu: {\n name: 'Basque',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fa: {\n name: 'Persian',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ff: {\n name: 'Fulah',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fi: {\n name: 'Finnish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fil: {\n name: 'Filipino',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n fo: {\n name: 'Faroese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fr: {\n name: 'French',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n fur: {\n name: 'Friulian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n fy: {\n name: 'Frisian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ga: {\n name: 'Irish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 7\n }, {\n plural: 4,\n sample: 11\n }],\n nplurals: 5,\n pluralsText: 'nplurals = 5; plural = (n === 1 ? 0 : n === 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4);\n }\n },\n gd: {\n name: 'Scottish Gaelic',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 20\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = ((n === 1 || n === 11) ? 0 : (n === 2 || n === 12) ? 1 : (n > 2 && n < 20) ? 2 : 3)',\n pluralsFunc: function(n) {\n return ((n === 1 || n === 11) ? 0 : (n === 2 || n === 12) ? 1 : (n > 2 && n < 20) ? 2 : 3);\n }\n },\n gl: {\n name: 'Galician',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n gu: {\n name: 'Gujarati',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n gun: {\n name: 'Gun',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n ha: {\n name: 'Hausa',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n he: {\n name: 'Hebrew',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hi: {\n name: 'Hindi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hne: {\n name: 'Chhattisgarhi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hr: {\n name: 'Croatian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n hu: {\n name: 'Hungarian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n hy: {\n name: 'Armenian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n id: {\n name: 'Indonesian',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n is: {\n name: 'Icelandic',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n % 10 !== 1 || n % 100 === 11)',\n pluralsFunc: function(n) {\n return (n % 10 !== 1 || n % 100 === 11);\n }\n },\n it: {\n name: 'Italian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ja: {\n name: 'Japanese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n jbo: {\n name: 'Lojban',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n jv: {\n name: 'Javanese',\n examples: [{\n plural: 0,\n sample: 0\n }, {\n plural: 1,\n sample: 1\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 0)',\n pluralsFunc: function(n) {\n return (n !== 0);\n }\n },\n ka: {\n name: 'Georgian',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n kk: {\n name: 'Kazakh',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n km: {\n name: 'Khmer',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n kn: {\n name: 'Kannada',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ko: {\n name: 'Korean',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ku: {\n name: 'Kurdish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n kw: {\n name: 'Cornish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 4\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : n === 3 ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 2 ? 1 : n === 3 ? 2 : 3);\n }\n },\n ky: {\n name: 'Kyrgyz',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n lb: {\n name: 'Letzeburgesch',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ln: {\n name: 'Lingala',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n lo: {\n name: 'Lao',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n lt: {\n name: 'Lithuanian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 10\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n lv: {\n name: 'Latvian',\n examples: [{\n plural: 2,\n sample: 0\n }, {\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n !== 0 ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n !== 0 ? 1 : 2);\n }\n },\n mai: {\n name: 'Maithili',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mfe: {\n name: 'Mauritian Creole',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n mg: {\n name: 'Malagasy',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n mi: {\n name: 'Maori',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n mk: {\n name: 'Macedonian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n === 1 || n % 10 === 1 ? 0 : 1)',\n pluralsFunc: function(n) {\n return (n === 1 || n % 10 === 1 ? 0 : 1);\n }\n },\n ml: {\n name: 'Malayalam',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mn: {\n name: 'Mongolian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mni: {\n name: 'Manipuri',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n mnk: {\n name: 'Mandinka',\n examples: [{\n plural: 0,\n sample: 0\n }, {\n plural: 1,\n sample: 1\n }, {\n plural: 2,\n sample: 2\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 0 ? 0 : n === 1 ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 0 ? 0 : n === 1 ? 1 : 2);\n }\n },\n mr: {\n name: 'Marathi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ms: {\n name: 'Malay',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n mt: {\n name: 'Maltese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 11\n }, {\n plural: 3,\n sample: 20\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n === 1 ? 0 : n === 0 || ( n % 100 > 1 && n % 100 < 11) ? 1 : (n % 100 > 10 && n % 100 < 20 ) ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n === 0 || (n % 100 > 1 && n % 100 < 11) ? 1 : (n % 100 > 10 && n % 100 < 20) ? 2 : 3);\n }\n },\n my: {\n name: 'Burmese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n nah: {\n name: 'Nahuatl',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nap: {\n name: 'Neapolitan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nb: {\n name: 'Norwegian Bokmal',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ne: {\n name: 'Nepali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nl: {\n name: 'Dutch',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nn: {\n name: 'Norwegian Nynorsk',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n no: {\n name: 'Norwegian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n nso: {\n name: 'Northern Sotho',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n oc: {\n name: 'Occitan',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n or: {\n name: 'Oriya',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pa: {\n name: 'Punjabi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pap: {\n name: 'Papiamento',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pl: {\n name: 'Polish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n pms: {\n name: 'Piemontese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ps: {\n name: 'Pashto',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n pt: {\n name: 'Portuguese',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n rm: {\n name: 'Romansh',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ro: {\n name: 'Romanian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 20\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : (n === 0 || (n % 100 > 0 && n % 100 < 20)) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : (n === 0 || (n % 100 > 0 && n % 100 < 20)) ? 1 : 2);\n }\n },\n ru: {\n name: 'Russian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n rw: {\n name: 'Kinyarwanda',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sah: {\n name: 'Yakut',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n sat: {\n name: 'Santali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sco: {\n name: 'Scots',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sd: {\n name: 'Sindhi',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n se: {\n name: 'Northern Sami',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n si: {\n name: 'Sinhala',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sk: {\n name: 'Slovak',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2);\n }\n },\n sl: {\n name: 'Slovenian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 3\n }, {\n plural: 3,\n sample: 5\n }],\n nplurals: 4,\n pluralsText: 'nplurals = 4; plural = (n % 100 === 1 ? 0 : n % 100 === 2 ? 1 : n % 100 === 3 || n % 100 === 4 ? 2 : 3)',\n pluralsFunc: function(n) {\n return (n % 100 === 1 ? 0 : n % 100 === 2 ? 1 : n % 100 === 3 || n % 100 === 4 ? 2 : 3);\n }\n },\n so: {\n name: 'Somali',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n son: {\n name: 'Songhay',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sq: {\n name: 'Albanian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sr: {\n name: 'Serbian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n su: {\n name: 'Sundanese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n sv: {\n name: 'Swedish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n sw: {\n name: 'Swahili',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n ta: {\n name: 'Tamil',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n te: {\n name: 'Telugu',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n tg: {\n name: 'Tajik',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n th: {\n name: 'Thai',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ti: {\n name: 'Tigrinya',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n tk: {\n name: 'Turkmen',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n tr: {\n name: 'Turkish',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n tt: {\n name: 'Tatar',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n ug: {\n name: 'Uyghur',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n uk: {\n name: 'Ukrainian',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }, {\n plural: 2,\n sample: 5\n }],\n nplurals: 3,\n pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)',\n pluralsFunc: function(n) {\n return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);\n }\n },\n ur: {\n name: 'Urdu',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n uz: {\n name: 'Uzbek',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n vi: {\n name: 'Vietnamese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n wa: {\n name: 'Walloon',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n > 1)',\n pluralsFunc: function(n) {\n return (n > 1);\n }\n },\n wo: {\n name: 'Wolof',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n },\n yo: {\n name: 'Yoruba',\n examples: [{\n plural: 0,\n sample: 1\n }, {\n plural: 1,\n sample: 2\n }],\n nplurals: 2,\n pluralsText: 'nplurals = 2; plural = (n !== 1)',\n pluralsFunc: function(n) {\n return (n !== 1);\n }\n },\n zh: {\n name: 'Chinese',\n examples: [{\n plural: 0,\n sample: 1\n }],\n nplurals: 1,\n pluralsText: 'nplurals = 1; plural = 0',\n pluralsFunc: function() {\n return 0;\n }\n }\n};\n","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nconst base64 = require('base64-js')\nconst ieee754 = require('ieee754')\nconst customInspectSymbol =\n (typeof Symbol === 'function' && typeof Symbol['for'] === 'function') // eslint-disable-line dot-notation\n ? Symbol['for']('nodejs.util.inspect.custom') // eslint-disable-line dot-notation\n : null\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\nconst K_MAX_LENGTH = 0x7fffffff\nexports.kMaxLength = K_MAX_LENGTH\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Print warning and recommend using `buffer` v4.x which has an Object\n * implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * We report that the browser does not support typed arrays if the are not subclassable\n * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n * for __proto__ and has a buggy typed array implementation.\n */\nBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport()\n\nif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n typeof console.error === 'function') {\n console.error(\n 'This browser lacks typed array (Uint8Array) support which is required by ' +\n '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n )\n}\n\nfunction typedArraySupport () {\n // Can typed array instances can be augmented?\n try {\n const arr = new Uint8Array(1)\n const proto = { foo: function () { return 42 } }\n Object.setPrototypeOf(proto, Uint8Array.prototype)\n Object.setPrototypeOf(arr, proto)\n return arr.foo() === 42\n } catch (e) {\n return false\n }\n}\n\nObject.defineProperty(Buffer.prototype, 'parent', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.buffer\n }\n})\n\nObject.defineProperty(Buffer.prototype, 'offset', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.byteOffset\n }\n})\n\nfunction createBuffer (length) {\n if (length > K_MAX_LENGTH) {\n throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n }\n // Return an augmented `Uint8Array` instance\n const buf = new Uint8Array(length)\n Object.setPrototypeOf(buf, Buffer.prototype)\n return buf\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new TypeError(\n 'The \"string\" argument must be of type string. Received type number'\n )\n }\n return allocUnsafe(arg)\n }\n return from(arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\nfunction from (value, encodingOrOffset, length) {\n if (typeof value === 'string') {\n return fromString(value, encodingOrOffset)\n }\n\n if (ArrayBuffer.isView(value)) {\n return fromArrayView(value)\n }\n\n if (value == null) {\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n }\n\n if (isInstance(value, ArrayBuffer) ||\n (value && isInstance(value.buffer, ArrayBuffer))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof SharedArrayBuffer !== 'undefined' &&\n (isInstance(value, SharedArrayBuffer) ||\n (value && isInstance(value.buffer, SharedArrayBuffer)))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof value === 'number') {\n throw new TypeError(\n 'The \"value\" argument must not be of type number. Received type number'\n )\n }\n\n const valueOf = value.valueOf && value.valueOf()\n if (valueOf != null && valueOf !== value) {\n return Buffer.from(valueOf, encodingOrOffset, length)\n }\n\n const b = fromObject(value)\n if (b) return b\n\n if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n typeof value[Symbol.toPrimitive] === 'function') {\n return Buffer.from(value[Symbol.toPrimitive]('string'), encodingOrOffset, length)\n }\n\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(value, encodingOrOffset, length)\n}\n\n// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n// https://github.com/feross/buffer/pull/148\nObject.setPrototypeOf(Buffer.prototype, Uint8Array.prototype)\nObject.setPrototypeOf(Buffer, Uint8Array)\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be of type number')\n } else if (size < 0) {\n throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n }\n}\n\nfunction alloc (size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpreted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(size).fill(fill, encoding)\n : createBuffer(size).fill(fill)\n }\n return createBuffer(size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(size, fill, encoding)\n}\n\nfunction allocUnsafe (size) {\n assertSize(size)\n return createBuffer(size < 0 ? 0 : checked(size) | 0)\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(size)\n}\n\nfunction fromString (string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n\n const length = byteLength(string, encoding) | 0\n let buf = createBuffer(length)\n\n const actual = buf.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n buf = buf.slice(0, actual)\n }\n\n return buf\n}\n\nfunction fromArrayLike (array) {\n const length = array.length < 0 ? 0 : checked(array.length) | 0\n const buf = createBuffer(length)\n for (let i = 0; i < length; i += 1) {\n buf[i] = array[i] & 255\n }\n return buf\n}\n\nfunction fromArrayView (arrayView) {\n if (isInstance(arrayView, Uint8Array)) {\n const copy = new Uint8Array(arrayView)\n return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength)\n }\n return fromArrayLike(arrayView)\n}\n\nfunction fromArrayBuffer (array, byteOffset, length) {\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\"offset\" is outside of buffer bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\"length\" is outside of buffer bounds')\n }\n\n let buf\n if (byteOffset === undefined && length === undefined) {\n buf = new Uint8Array(array)\n } else if (length === undefined) {\n buf = new Uint8Array(array, byteOffset)\n } else {\n buf = new Uint8Array(array, byteOffset, length)\n }\n\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(buf, Buffer.prototype)\n\n return buf\n}\n\nfunction fromObject (obj) {\n if (Buffer.isBuffer(obj)) {\n const len = checked(obj.length) | 0\n const buf = createBuffer(len)\n\n if (buf.length === 0) {\n return buf\n }\n\n obj.copy(buf, 0, 0, len)\n return buf\n }\n\n if (obj.length !== undefined) {\n if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n return createBuffer(0)\n }\n return fromArrayLike(obj)\n }\n\n if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n return fromArrayLike(obj.data)\n }\n}\n\nfunction checked (length) {\n // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= K_MAX_LENGTH) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return b != null && b._isBuffer === true &&\n b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n}\n\nBuffer.compare = function compare (a, b) {\n if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength)\n if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength)\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError(\n 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n )\n }\n\n if (a === b) return 0\n\n let x = a.length\n let y = b.length\n\n for (let i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!Array.isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n let i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n const buffer = Buffer.allocUnsafe(length)\n let pos = 0\n for (i = 0; i < list.length; ++i) {\n let buf = list[i]\n if (isInstance(buf, Uint8Array)) {\n if (pos + buf.length > buffer.length) {\n if (!Buffer.isBuffer(buf)) buf = Buffer.from(buf)\n buf.copy(buffer, pos)\n } else {\n Uint8Array.prototype.set.call(\n buffer,\n buf,\n pos\n )\n }\n } else if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n } else {\n buf.copy(buffer, pos)\n }\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n throw new TypeError(\n 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n 'Received type ' + typeof string\n )\n }\n\n const len = string.length\n const mustMatch = (arguments.length > 2 && arguments[2] === true)\n if (!mustMatch && len === 0) return 0\n\n // Use a for loop to avoid recursion\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) {\n return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n }\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n let loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coercion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n// reliably in a browserify context because there could be multiple different\n// copies of the 'buffer' package in use. This method works even for Buffer\n// instances that were created from another copy of the `buffer` package.\n// See: https://github.com/feross/buffer/issues/154\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n const i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n const len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (let i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n const len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (let i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n const len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (let i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n const length = this.length\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.toLocaleString = Buffer.prototype.toString\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n let str = ''\n const max = exports.INSPECT_MAX_BYTES\n str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim()\n if (this.length > max) str += ' ... '\n return ''\n}\nif (customInspectSymbol) {\n Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (isInstance(target, Uint8Array)) {\n target = Buffer.from(target, target.offset, target.byteLength)\n }\n if (!Buffer.isBuffer(target)) {\n throw new TypeError(\n 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n 'Received type ' + (typeof target)\n )\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n let x = thisEnd - thisStart\n let y = end - start\n const len = Math.min(x, y)\n\n const thisCopy = this.slice(thisStart, thisEnd)\n const targetCopy = target.slice(start, end)\n\n for (let i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (numberIsNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [val], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n let indexSize = 1\n let arrLength = arr.length\n let valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n let i\n if (dir) {\n let foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n let found = true\n for (let j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n const remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n const strLen = string.length\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n let i\n for (i = 0; i < length; ++i) {\n const parsed = parseInt(string.substr(i * 2, 2), 16)\n if (numberIsNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset >>> 0\n if (isFinite(length)) {\n length = length >>> 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n const remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n case 'latin1':\n case 'binary':\n return asciiWrite(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n const res = []\n\n let i = start\n while (i < end) {\n const firstByte = buf[i]\n let codePoint = null\n let bytesPerSequence = (firstByte > 0xEF)\n ? 4\n : (firstByte > 0xDF)\n ? 3\n : (firstByte > 0xBF)\n ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n let secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nconst MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n const len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n let res = ''\n let i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n const len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n let out = ''\n for (let i = start; i < end; ++i) {\n out += hexSliceLookupTable[buf[i]]\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n const bytes = buf.slice(start, end)\n let res = ''\n // If bytes.length is odd, the last 8 bits must be ignored (same as node.js)\n for (let i = 0; i < bytes.length - 1; i += 2) {\n res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256))\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n const len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n const newBuf = this.subarray(start, end)\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(newBuf, Buffer.prototype)\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUintLE =\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUintBE =\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n let val = this[offset + --byteLength]\n let mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUint8 =\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUint16LE =\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUint16BE =\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUint32LE =\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUint32BE =\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const lo = first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24\n\n const hi = this[++offset] +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n last * 2 ** 24\n\n return BigInt(lo) + (BigInt(hi) << BigInt(32))\n})\n\nBuffer.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const hi = first * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n const lo = this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last\n\n return (BigInt(hi) << BigInt(32)) + BigInt(lo)\n})\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let i = byteLength\n let mul = 1\n let val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = this[offset + 4] +\n this[offset + 5] * 2 ** 8 +\n this[offset + 6] * 2 ** 16 +\n (last << 24) // Overflow\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24)\n})\n\nBuffer.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = (first << 24) + // Overflow\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last)\n})\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUintLE =\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let mul = 1\n let i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUintBE =\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let i = byteLength - 1\n let mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUint8 =\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeUint16LE =\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeUint16BE =\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeUint32LE =\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeUint32BE =\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nfunction wrtBigUInt64LE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n return offset\n}\n\nfunction wrtBigUInt64BE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset + 7] = lo\n lo = lo >> 8\n buf[offset + 6] = lo\n lo = lo >> 8\n buf[offset + 5] = lo\n lo = lo >> 8\n buf[offset + 4] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset + 3] = hi\n hi = hi >> 8\n buf[offset + 2] = hi\n hi = hi >> 8\n buf[offset + 1] = hi\n hi = hi >> 8\n buf[offset] = hi\n return offset + 8\n}\n\nBuffer.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = 0\n let mul = 1\n let sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = byteLength - 1\n let mul = 1\n let sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nBuffer.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n const len = end - start\n\n if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') {\n // Use built-in when available, missing from IE11\n this.copyWithin(targetStart, start, end)\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, end),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n if (val.length === 1) {\n const code = val.charCodeAt(0)\n if ((encoding === 'utf8' && code < 128) ||\n encoding === 'latin1') {\n // Fast path: If `val` fits into a single byte, use that numeric value.\n val = code\n }\n }\n } else if (typeof val === 'number') {\n val = val & 255\n } else if (typeof val === 'boolean') {\n val = Number(val)\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n let i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n const bytes = Buffer.isBuffer(val)\n ? val\n : Buffer.from(val, encoding)\n const len = bytes.length\n if (len === 0) {\n throw new TypeError('The value \"' + val +\n '\" is invalid for argument \"value\"')\n }\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// CUSTOM ERRORS\n// =============\n\n// Simplified versions from Node, changed for Buffer-only usage\nconst errors = {}\nfunction E (sym, getMessage, Base) {\n errors[sym] = class NodeError extends Base {\n constructor () {\n super()\n\n Object.defineProperty(this, 'message', {\n value: getMessage.apply(this, arguments),\n writable: true,\n configurable: true\n })\n\n // Add the error code to the name to include it in the stack trace.\n this.name = `${this.name} [${sym}]`\n // Access the stack to generate the error message including the error code\n // from the name.\n this.stack // eslint-disable-line no-unused-expressions\n // Reset the name to the actual name.\n delete this.name\n }\n\n get code () {\n return sym\n }\n\n set code (value) {\n Object.defineProperty(this, 'code', {\n configurable: true,\n enumerable: true,\n value,\n writable: true\n })\n }\n\n toString () {\n return `${this.name} [${sym}]: ${this.message}`\n }\n }\n}\n\nE('ERR_BUFFER_OUT_OF_BOUNDS',\n function (name) {\n if (name) {\n return `${name} is outside of buffer bounds`\n }\n\n return 'Attempt to access memory outside buffer bounds'\n }, RangeError)\nE('ERR_INVALID_ARG_TYPE',\n function (name, actual) {\n return `The \"${name}\" argument must be of type number. Received type ${typeof actual}`\n }, TypeError)\nE('ERR_OUT_OF_RANGE',\n function (str, range, input) {\n let msg = `The value of \"${str}\" is out of range.`\n let received = input\n if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) {\n received = addNumericalSeparator(String(input))\n } else if (typeof input === 'bigint') {\n received = String(input)\n if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) {\n received = addNumericalSeparator(received)\n }\n received += 'n'\n }\n msg += ` It must be ${range}. Received ${received}`\n return msg\n }, RangeError)\n\nfunction addNumericalSeparator (val) {\n let res = ''\n let i = val.length\n const start = val[0] === '-' ? 1 : 0\n for (; i >= start + 4; i -= 3) {\n res = `_${val.slice(i - 3, i)}${res}`\n }\n return `${val.slice(0, i)}${res}`\n}\n\n// CHECK FUNCTIONS\n// ===============\n\nfunction checkBounds (buf, offset, byteLength) {\n validateNumber(offset, 'offset')\n if (buf[offset] === undefined || buf[offset + byteLength] === undefined) {\n boundsError(offset, buf.length - (byteLength + 1))\n }\n}\n\nfunction checkIntBI (value, min, max, buf, offset, byteLength) {\n if (value > max || value < min) {\n const n = typeof min === 'bigint' ? 'n' : ''\n let range\n if (byteLength > 3) {\n if (min === 0 || min === BigInt(0)) {\n range = `>= 0${n} and < 2${n} ** ${(byteLength + 1) * 8}${n}`\n } else {\n range = `>= -(2${n} ** ${(byteLength + 1) * 8 - 1}${n}) and < 2 ** ` +\n `${(byteLength + 1) * 8 - 1}${n}`\n }\n } else {\n range = `>= ${min}${n} and <= ${max}${n}`\n }\n throw new errors.ERR_OUT_OF_RANGE('value', range, value)\n }\n checkBounds(buf, offset, byteLength)\n}\n\nfunction validateNumber (value, name) {\n if (typeof value !== 'number') {\n throw new errors.ERR_INVALID_ARG_TYPE(name, 'number', value)\n }\n}\n\nfunction boundsError (value, length, type) {\n if (Math.floor(value) !== value) {\n validateNumber(value, type)\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset', 'an integer', value)\n }\n\n if (length < 0) {\n throw new errors.ERR_BUFFER_OUT_OF_BOUNDS()\n }\n\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset',\n `>= ${type ? 1 : 0} and <= ${length}`,\n value)\n}\n\n// HELPER FUNCTIONS\n// ================\n\nconst INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node takes equal signs as end of the Base64 encoding\n str = str.split('=')[0]\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = str.trim().replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n let codePoint\n const length = string.length\n let leadSurrogate = null\n const bytes = []\n\n for (let i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n let c, hi, lo\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n let i\n for (i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\n// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n// the `instanceof` check but they should be treated as of that type.\n// See: https://github.com/feross/buffer/issues/166\nfunction isInstance (obj, type) {\n return obj instanceof type ||\n (obj != null && obj.constructor != null && obj.constructor.name != null &&\n obj.constructor.name === type.name)\n}\nfunction numberIsNaN (obj) {\n // For IE11 support\n return obj !== obj // eslint-disable-line no-self-compare\n}\n\n// Create lookup table for `toString('hex')`\n// See: https://github.com/feross/buffer/issues/219\nconst hexSliceLookupTable = (function () {\n const alphabet = '0123456789abcdef'\n const table = new Array(256)\n for (let i = 0; i < 16; ++i) {\n const i16 = i * 16\n for (let j = 0; j < 16; ++j) {\n table[i16 + j] = alphabet[i] + alphabet[j]\n }\n }\n return table\n})()\n\n// Return not function with Error if BigInt not supported\nfunction defineBigIntMethod (fn) {\n return typeof BigInt === 'undefined' ? BufferBigIntNotDefined : fn\n}\n\nfunction BufferBigIntNotDefined () {\n throw new Error('BigInt not supported')\n}\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","\"use strict\";\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};","\"use strict\";\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;","\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{class:{ 'icon-loading': _vm.loading }},[(_vm.error)?_c('NcEmptyContent',{attrs:{\"title\":_vm.error},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('span',{staticClass:\"icon-error\"})]},proxy:true}],null,false,3191801335)}):[_c('ul',_vm._l((_vm.activities),function(activity){return _c('Activity',{key:activity.id,attrs:{\"activity\":activity}})}),1),_vm._v(\" \"),(_vm.activities.length === 0 && !_vm.loading)?_c('NcEmptyContent',{attrs:{\"title\":_vm.t('activity', 'No activity yet')},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('span',{staticClass:\"icon-activity\"})]},proxy:true}],null,false,999709570)}):_vm._e()]],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","'use strict';\n\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n","'use strict';\n\nimport bind from './helpers/bind.js';\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst {toString} = Object.prototype;\nconst {getPrototypeOf} = Object;\n\nconst kindOf = (cache => thing => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type\n}\n\nconst typeOfTest = type => thing => typeof thing === type;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst {isArray} = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = thing => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nconst isFormData = (thing) => {\n let kind;\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) || (\n isFunction(thing.append) && (\n (kind = kindOf(thing)) === 'formdata' ||\n // detect form-data instance\n (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')\n )\n )\n )\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => str.trim ?\n str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Boolean} [allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, {allOwnKeys = false} = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== \"undefined\") return globalThis;\n return typeof self !== \"undefined\" ? self : (typeof window !== 'undefined' ? window : global)\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n const {caseless} = isContextDefined(this) && this || {};\n const result = {};\n const assignValue = (val, key) => {\n const targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n }\n\n for (let i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Boolean} [allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, {allOwnKeys}= {}) => {\n forEach(b, (val, key) => {\n if (thisArg && isFunction(val)) {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n }, {allOwnKeys});\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', {\n value: superConstructor.prototype\n });\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = (TypedArray => {\n // eslint-disable-next-line func-names\n return thing => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[Symbol.iterator];\n\n const iterator = generator.call(obj);\n\n let result;\n\n while ((result = iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n}\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n}\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = str => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g,\n function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n }\n );\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n if (reducer(descriptor, name, obj) !== false) {\n reducedDescriptors[name] = descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n}\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n}\n\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach(value => {\n obj[value] = true;\n });\n }\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n}\n\nconst noop = () => {}\n\nconst toFiniteNumber = (value, defaultValue) => {\n value = +value;\n return Number.isFinite(value) ? value : defaultValue;\n}\n\nconst ALPHA = 'abcdefghijklmnopqrstuvwxyz'\n\nconst DIGIT = '0123456789';\n\nconst ALPHABET = {\n DIGIT,\n ALPHA,\n ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT\n}\n\nconst generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {\n let str = '';\n const {length} = alphabet;\n while (size--) {\n str += alphabet[Math.random() * length|0]\n }\n\n return str;\n}\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\n}\n\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n if(!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n }\n\n return visit(obj, 0);\n}\n\nconst isAsyncFn = kindOfTest('AsyncFunction');\n\nconst isThenable = (thing) =>\n thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);\n\nexport default {\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isUndefined,\n isDate,\n isFile,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n ALPHABET,\n generateString,\n isSpecCompliantForm,\n toJSONObject,\n isAsyncFn,\n isThenable\n};\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = (new Error()).stack;\n }\n\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n response && (this.response = response);\n}\n\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: utils.toJSONObject(this.config),\n code: this.code,\n status: this.response && this.response.status ? this.response.status : null\n };\n }\n});\n\nconst prototype = AxiosError.prototype;\nconst descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n// eslint-disable-next-line func-names\n].forEach(code => {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = (error, code, config, request, response, customProps) => {\n const axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, prop => {\n return prop !== 'isAxiosError';\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.cause = error;\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nexport default AxiosError;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\nimport PlatformFormData from '../platform/node/classes/FormData.js';\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path.concat(key).map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (PlatformFormData || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = utils.toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !utils.isUndefined(source[option]);\n });\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n const useBlob = _Blob && utils.isSpecCompliantForm(formData);\n\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (value && !path && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (utils.isArray(value) && isFlatArray(value)) ||\n ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))\n )) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) && formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable\n });\n\n function build(value, path) {\n if (utils.isUndefined(value)) return;\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n utils.forEach(value, function each(el, key) {\n const result = !(utils.isUndefined(el) || el === null) && visitor.call(\n formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers\n );\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n\n stack.pop();\n }\n\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\nexport default toFormData;\n","'use strict';\n\nimport toFormData from './toFormData.js';\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object} params - The parameters to be converted to a FormData object.\n * @param {Object} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && toFormData(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder ? function(value) {\n return encoder.call(this, value, encode);\n } : encode;\n\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\n\nexport default AxiosURLSearchParams;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\n\n/**\n * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their\n * URI encoded counterparts\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?object} options\n *\n * @returns {string} The formatted url\n */\nexport default function buildURL(url, params, options) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n \n const _encode = options && options.encode || encode;\n\n const serializeFn = options && options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = utils.isURLSearchParams(params) ?\n params.toString() :\n new AxiosURLSearchParams(params, options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf(\"#\");\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\nexport default InterceptorManager;\n","'use strict';\n\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n","import URLSearchParams from './classes/URLSearchParams.js'\nimport FormData from './classes/FormData.js'\nimport Blob from './classes/Blob.js'\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst isStandardBrowserEnv = (() => {\n let product;\n if (typeof navigator !== 'undefined' && (\n (product = navigator.product) === 'ReactNative' ||\n product === 'NativeScript' ||\n product === 'NS')\n ) {\n return false;\n }\n\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n})();\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\n const isStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\n\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams,\n FormData,\n Blob\n },\n isStandardBrowserEnv,\n isStandardBrowserWebWorkerEnv,\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data']\n};\n","'use strict';\n\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;\n","'use strict';\n\nexport default typeof FormData !== 'undefined' ? FormData : null;\n","'use strict'\n\nexport default typeof Blob !== 'undefined' ? Blob : null\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map(match => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n const obj = {};\n\n utils.forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\nexport default formDataToJSON;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\n\nconst DEFAULT_CONTENT_TYPE = {\n 'Content-Type': undefined\n};\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n\n transitional: transitionalDefaults,\n\n adapter: ['xhr', 'http'],\n\n transformRequest: [function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = utils.isObject(data);\n\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = utils.isFormData(data);\n\n if (isFormData) {\n if (!hasJSONContentType) {\n return data;\n }\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n\n if (utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, this.formSerializer).toString();\n }\n\n if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n const _FormData = this.env && this.env.FormData;\n\n return toFormData(\n isFileList ? {'files[]': data} : data,\n _FormData && new _FormData(),\n this.formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType ) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n const transitional = this.transitional || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const JSONRequested = this.responseType === 'json';\n\n if (data && utils.isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nexport default defaults;\n","'use strict';\n\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\n\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\n visitor: function(value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = utils.toObjectSet([\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\nexport default rawHeaders => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\n\nconst $internals = Symbol('internals');\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!utils.isString(value)) return;\n\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header.trim()\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = utils.toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach(methodName => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = utils.findKey(self, lHeader);\n\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite)\n } else if(utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = utils.findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n utils.forEach(this, (value, header) => {\n const key = utils.findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n utils.forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals = this[$internals] = (this[$internals] = {\n accessors: {}\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\n\nutils.freezeMethods(AxiosHeaders.prototype);\nutils.freezeMethods(AxiosHeaders);\n\nexport default AxiosHeaders;\n","'use strict';\n\nimport utils from './../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nexport default function transformData(fns, response) {\n const config = this || defaults;\n const context = response || config;\n const headers = AxiosHeaders.from(context.headers);\n let data = context.data;\n\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n","'use strict';\n\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n","'use strict';\n\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\nfunction CanceledError(message, config, request) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nexport default CanceledError;\n","'use strict';\n\nimport utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.isStandardBrowserEnv ?\n\n// Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n const cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n const match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n// Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })();\n","'use strict';\n\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nexport default function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nexport default function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n","'use strict';\n\nimport utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.isStandardBrowserEnv ?\n\n// Standard browser envs have full support of the APIs needed to test\n// whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n const msie = /(msie|trident)/i.test(navigator.userAgent);\n const urlParsingNode = document.createElement('a');\n let originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n let href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n const parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })();\n","'use strict';\n\nimport utils from './../utils.js';\nimport settle from './../core/settle.js';\nimport cookies from './../helpers/cookies.js';\nimport buildURL from './../helpers/buildURL.js';\nimport buildFullPath from '../core/buildFullPath.js';\nimport isURLSameOrigin from './../helpers/isURLSameOrigin.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport speedometer from '../helpers/speedometer.js';\n\nfunction progressEventReducer(listener, isDownloadStream) {\n let bytesNotified = 0;\n const _speedometer = speedometer(50, 250);\n\n return e => {\n const loaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const progressBytes = loaded - bytesNotified;\n const rate = _speedometer(progressBytes);\n const inRange = loaded <= total;\n\n bytesNotified = loaded;\n\n const data = {\n loaded,\n total,\n progress: total ? (loaded / total) : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e\n };\n\n data[isDownloadStream ? 'download' : 'upload'] = true;\n\n listener(data);\n };\n}\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\nexport default isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n let requestData = config.data;\n const requestHeaders = AxiosHeaders.from(config.headers).normalize();\n const responseType = config.responseType;\n let onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n\n if (utils.isFormData(requestData)) {\n if (platform.isStandardBrowserEnv || platform.isStandardBrowserWebWorkerEnv) {\n requestHeaders.setContentType(false); // Let the browser set it\n } else {\n requestHeaders.setContentType('multipart/form-data;', false); // mobile/desktop app frameworks\n }\n }\n\n let request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n const username = config.auth.username || '';\n const password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.set('Authorization', 'Basic ' + btoa(username + ':' + password));\n }\n\n const fullPath = buildFullPath(config.baseURL, config.url);\n\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = AxiosHeaders.from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';\n const transitional = config.transitional || transitionalDefaults;\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (platform.isStandardBrowserEnv) {\n // Add xsrf header\n const xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath))\n && config.xsrfCookieName && cookies.read(config.xsrfCookieName);\n\n if (xsrfValue) {\n requestHeaders.set(config.xsrfHeaderName, xsrfValue);\n }\n }\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', progressEventReducer(config.onDownloadProgress, true));\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', progressEventReducer(config.onUploadProgress));\n }\n\n if (config.cancelToken || config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = cancel => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n request = null;\n };\n\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = parseProtocol(fullPath);\n\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData || null);\n });\n}\n","'use strict';\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\n\nexport default speedometer;\n","import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport AxiosError from \"../core/AxiosError.js\";\n\nconst knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter\n}\n\nutils.forEach(knownAdapters, (fn, value) => {\n if(fn) {\n try {\n Object.defineProperty(fn, 'name', {value});\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', {value});\n }\n});\n\nexport default {\n getAdapter: (adapters) => {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n\n const {length} = adapters;\n let nameOrAdapter;\n let adapter;\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n if((adapter = utils.isString(nameOrAdapter) ? knownAdapters[nameOrAdapter.toLowerCase()] : nameOrAdapter)) {\n break;\n }\n }\n\n if (!adapter) {\n if (adapter === false) {\n throw new AxiosError(\n `Adapter ${nameOrAdapter} is not supported by the environment`,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n throw new Error(\n utils.hasOwnProp(knownAdapters, nameOrAdapter) ?\n `Adapter '${nameOrAdapter}' is not available in the build` :\n `Unknown adapter '${nameOrAdapter}'`\n );\n }\n\n if (!utils.isFunction(adapter)) {\n throw new TypeError('adapter is not a function');\n }\n\n return adapter;\n },\n adapters: knownAdapters\n}\n","// eslint-disable-next-line strict\nexport default null;\n","'use strict';\n\nimport AxiosError from './AxiosError.js';\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nexport default function settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n}\n","'use strict';\n\nexport default function parseProtocol(url) {\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}\n","'use strict';\n\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from \"../adapters/adapters.js\";\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = AxiosHeaders.from(config.headers);\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.transformRequest\n );\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter);\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n config.transformResponse,\n response\n );\n\n response.headers = AxiosHeaders.from(response.headers);\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n config.transformResponse,\n reason.response\n );\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n });\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from \"./AxiosHeaders.js\";\n\nconst headersToObject = (thing) => thing instanceof AxiosHeaders ? thing.toJSON() : thing;\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nexport default function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n const config = {};\n\n function getMergedValue(target, source, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({caseless}, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(a, b, caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b) => mergeDeepProperties(headersToObject(a), headersToObject(b), true)\n };\n\n utils.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\n const merge = mergeMap[prop] || mergeDeepProperties;\n const configValue = merge(config1[prop], config2[prop], prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n","export const VERSION = \"1.4.0\";","'use strict';\n\nimport {VERSION} from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n const validator = schema[opt];\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nexport default {\n assertOptions,\n validators\n};\n","'use strict';\n\nimport utils from './../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst validators = validator.validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n const {transitional, paramsSerializer, headers} = config;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n if (paramsSerializer != null) {\n if (utils.isFunction(paramsSerializer)) {\n config.paramsSerializer = {\n serialize: paramsSerializer\n }\n } else {\n validator.assertOptions(paramsSerializer, {\n encode: validators.function,\n serialize: validators.function\n }, true);\n }\n }\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n let contextHeaders;\n\n // Flatten headers\n contextHeaders = headers && utils.merge(\n headers.common,\n headers[config.method]\n );\n\n contextHeaders && utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n (method) => {\n delete headers[method];\n }\n );\n\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [dispatchRequest.bind(this), undefined];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n i = 0;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = mergeConfig(this.defaults, config);\n const fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url,\n data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nexport default Axios;\n","'use strict';\n\nimport CanceledError from './CanceledError.js';\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(cancel => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = onfulfilled => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise(resolve => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel\n };\n }\n}\n\nexport default CancelToken;\n","const HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\nexport default HttpStatusCode;\n","'use strict';\n\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport {VERSION} from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from \"./core/AxiosHeaders.js\";\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new Axios(defaultConfig);\n const instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context, {allOwnKeys: true});\n\n // Copy context to instance\n utils.extend(instance, context, null, {allOwnKeys: true});\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\n\n// Expose AxiosError class\naxios.AxiosError = AxiosError;\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = spread;\n\n// Expose isAxiosError\naxios.isAxiosError = isAxiosError;\n\n// Expose mergeConfig\naxios.mergeConfig = mergeConfig;\n\naxios.AxiosHeaders = AxiosHeaders;\n\naxios.formToJSON = thing => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.HttpStatusCode = HttpStatusCode;\n\naxios.default = axios;\n\n// this module should only have a default export\nexport default axios\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && (payload.isAxiosError === true);\n}\n","import valid from 'semver/functions/valid.js';\nimport major from 'semver/functions/major.js';\n\nclass ProxyBus {\n bus;\n constructor(bus) {\n if (typeof bus.getVersion !== 'function' || !valid(bus.getVersion())) {\n console.warn('Proxying an event bus with an unknown or invalid version');\n }\n else if (major(bus.getVersion()) !== major(this.getVersion())) {\n console.warn('Proxying an event bus of version ' + bus.getVersion() + ' with ' + this.getVersion());\n }\n this.bus = bus;\n }\n getVersion() {\n return \"3.1.0\";\n }\n subscribe(name, handler) {\n this.bus.subscribe(name, handler);\n }\n unsubscribe(name, handler) {\n this.bus.unsubscribe(name, handler);\n }\n emit(name, event) {\n this.bus.emit(name, event);\n }\n}\n\nclass SimpleBus {\n handlers = new Map();\n getVersion() {\n return \"3.1.0\";\n }\n subscribe(name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).concat(handler));\n }\n unsubscribe(name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).filter(h => h != handler));\n }\n emit(name, event) {\n (this.handlers.get(name) || []).forEach(h => {\n try {\n h(event);\n }\n catch (e) {\n console.error('could not invoke event listener', e);\n }\n });\n }\n}\n\nlet bus = null;\nfunction getBus() {\n if (bus !== null) {\n return bus;\n }\n if (typeof window === 'undefined') {\n // testing or SSR\n return new Proxy({}, {\n get: () => {\n return () => console.error('Window not available, EventBus can not be established!');\n }\n });\n }\n if (typeof window.OC !== 'undefined' && window.OC._eventBus && typeof window._nc_event_bus === 'undefined') {\n console.warn('found old event bus instance at OC._eventBus. Update your version!');\n window._nc_event_bus = window.OC._eventBus;\n }\n // Either use an existing event bus instance or create one\n if (typeof window?._nc_event_bus !== 'undefined') {\n bus = new ProxyBus(window._nc_event_bus);\n }\n else {\n bus = window._nc_event_bus = new SimpleBus();\n }\n return bus;\n}\n/**\n * Register an event listener\n *\n * @param name name of the event\n * @param handler callback invoked for every matching event emitted on the bus\n */\nfunction subscribe(name, handler) {\n getBus().subscribe(name, handler);\n}\n/**\n * Unregister a previously registered event listener\n *\n * Note: doesn't work with anonymous functions (closures). Use method of an object or store listener function in variable.\n *\n * @param name name of the event\n * @param handler callback passed to `subscribed`\n */\nfunction unsubscribe(name, handler) {\n getBus().unsubscribe(name, handler);\n}\n/**\n * Emit an event\n *\n * @param name name of the event\n * @param event event payload\n */\nfunction emit(name, event) {\n getBus().emit(name, event);\n}\n\nexport { ProxyBus, SimpleBus, emit, subscribe, unsubscribe };\n//# sourceMappingURL=index.mjs.map\n","import { subscribe } from '@nextcloud/event-bus';\n\nlet token = undefined;\nconst observers = [];\n/**\n * Get current request token\n *\n * @return {string|null} Current request token or null if not set\n */\nfunction getRequestToken() {\n if (token === undefined) {\n // Only on first load, try to get token from document\n const tokenElement = document?.getElementsByTagName('head')[0];\n token = tokenElement ? tokenElement.getAttribute('data-requesttoken') : null;\n }\n return token;\n}\n/**\n * Add an observer which is called when the CSRF token changes\n *\n * @param observer The observer\n */\nfunction onRequestTokenUpdate(observer) {\n observers.push(observer);\n}\n// Listen to server event and keep token in sync\nsubscribe('csrf-token-update', e => {\n token = e.token;\n observers.forEach(observer => {\n try {\n observer(e.token);\n }\n catch (e) {\n console.error('error updating CSRF token observer', e);\n }\n });\n});\n\n/// \nconst getAttribute = (el, attribute) => {\n if (el) {\n return el.getAttribute(attribute);\n }\n return null;\n};\nlet currentUser = undefined;\nfunction getCurrentUser() {\n if (currentUser !== undefined) {\n return currentUser;\n }\n const head = document?.getElementsByTagName('head')[0];\n if (!head) {\n return null;\n }\n // No user logged in so cache and return null\n const uid = getAttribute(head, 'data-user');\n if (uid === null) {\n currentUser = null;\n return currentUser;\n }\n currentUser = {\n uid,\n displayName: getAttribute(head, 'data-user-displayname'),\n isAdmin: (typeof OC === 'undefined') ? false : OC.isUserAdmin(),\n };\n return currentUser;\n}\n\nexport { getCurrentUser, getRequestToken, onRequestTokenUpdate };\n//# sourceMappingURL=index.es.mjs.map\n","import Axios from 'axios';\nimport { getRequestToken, onRequestTokenUpdate } from '@nextcloud/auth';\nimport { generateUrl } from '@nextcloud/router';\n\n/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\n\r\nvar __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\r\n\r\nfunction __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nfunction __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\ntypeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\n\nvar RETRY_KEY = Symbol('csrf-retry');\nvar onError$2 = function (axios) { return function (error) { return __awaiter(void 0, void 0, void 0, function () {\n var config, response, request, responseURL, status, token;\n var _a;\n var _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n config = error.config, response = error.response, request = error.request;\n responseURL = request === null || request === void 0 ? void 0 : request.responseURL;\n status = response === null || response === void 0 ? void 0 : response.status;\n if (!(status === 412\n && ((_b = response === null || response === void 0 ? void 0 : response.data) === null || _b === void 0 ? void 0 : _b.message) === 'CSRF check failed'\n && config[RETRY_KEY] === undefined)) return [3 /*break*/, 2];\n console.warn(\"Request to \".concat(responseURL, \" failed because of a CSRF mismatch. Fetching a new token\"));\n return [4 /*yield*/, axios.get(generateUrl('/csrftoken'))];\n case 1:\n token = (_c.sent()).data.token;\n console.debug(\"New request token \".concat(token, \" fetched\"));\n axios.defaults.headers.requesttoken = token;\n return [2 /*return*/, axios(__assign(__assign({}, config), (_a = { headers: __assign(__assign({}, config.headers), { requesttoken: token }) }, _a[RETRY_KEY] = true, _a)))];\n case 2: return [2 /*return*/, Promise.reject(error)];\n }\n });\n}); }; };\n\nvar RETRY_DELAY_KEY = Symbol('retryDelay');\nvar onError$1 = function (axios) { return function (error) { return __awaiter(void 0, void 0, void 0, function () {\n var config, response, request, responseURL, status, headers, retryDelay_1;\n var _a;\n var _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n config = error.config, response = error.response, request = error.request;\n responseURL = request === null || request === void 0 ? void 0 : request.responseURL;\n status = response === null || response === void 0 ? void 0 : response.status;\n headers = response === null || response === void 0 ? void 0 : response.headers;\n if (!(status === 503\n && headers['x-nextcloud-maintenance-mode'] === '1'\n && config.retryIfMaintenanceMode\n && (!config[RETRY_DELAY_KEY] || config[RETRY_DELAY_KEY] <= 32))) return [3 /*break*/, 2];\n retryDelay_1 = ((_b = config[RETRY_DELAY_KEY]) !== null && _b !== void 0 ? _b : 1) * 2;\n console.warn(\"Request to \".concat(responseURL, \" failed because of maintenance mode. Retrying in \").concat(retryDelay_1, \"s\"));\n return [4 /*yield*/, new Promise(function (resolve) {\n setTimeout(resolve, retryDelay_1 * 1000);\n })];\n case 1:\n _c.sent();\n return [2 /*return*/, axios(__assign(__assign({}, config), (_a = {}, _a[RETRY_DELAY_KEY] = retryDelay_1, _a)))];\n case 2: return [2 /*return*/, Promise.reject(error)];\n }\n });\n}); }; };\n\nvar onError = function (error) { return __awaiter(void 0, void 0, void 0, function () {\n var config, response, request, responseURL, status;\n var _a;\n return __generator(this, function (_b) {\n config = error.config, response = error.response, request = error.request;\n responseURL = request === null || request === void 0 ? void 0 : request.responseURL;\n status = response === null || response === void 0 ? void 0 : response.status;\n if (status === 401\n && ((_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.message) === 'Current user is not logged in'\n && config.reloadExpiredSession\n && (window === null || window === void 0 ? void 0 : window.location)) {\n console.error(\"Request to \".concat(responseURL, \" failed because the user session expired. Reloading the page \\u2026\"));\n window.location.reload();\n }\n return [2 /*return*/, Promise.reject(error)];\n });\n}); };\n\nvar _a;\nvar client = Axios.create({\n headers: {\n requesttoken: (_a = getRequestToken()) !== null && _a !== void 0 ? _a : '',\n },\n});\nvar cancelableClient = Object.assign(client, {\n CancelToken: Axios.CancelToken,\n isCancel: Axios.isCancel,\n});\ncancelableClient.interceptors.response.use(function (r) { return r; }, onError$2(cancelableClient));\ncancelableClient.interceptors.response.use(function (r) { return r; }, onError$1(cancelableClient));\ncancelableClient.interceptors.response.use(function (r) { return r; }, onError);\nonRequestTokenUpdate(function (token) { client.defaults.headers.requesttoken = token; });\n\nexport { cancelableClient as default };\n//# sourceMappingURL=index.es.mjs.map\n","import axios from \"@nextcloud/axios\";\nimport { generateOcsUrl } from \"@nextcloud/router\";\nfunction bail(error) {\n if (error) {\n throw error;\n }\n}\n/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\nvar isBuffer$1 = function isBuffer(obj) {\n return obj != null && obj.constructor != null && typeof obj.constructor.isBuffer === \"function\" && obj.constructor.isBuffer(obj);\n};\nvar hasOwn = Object.prototype.hasOwnProperty;\nvar toStr = Object.prototype.toString;\nvar defineProperty = Object.defineProperty;\nvar gOPD = Object.getOwnPropertyDescriptor;\nvar isArray = function isArray2(arr) {\n if (typeof Array.isArray === \"function\") {\n return Array.isArray(arr);\n }\n return toStr.call(arr) === \"[object Array]\";\n};\nvar isPlainObject$1 = function isPlainObject(obj) {\n if (!obj || toStr.call(obj) !== \"[object Object]\") {\n return false;\n }\n var hasOwnConstructor = hasOwn.call(obj, \"constructor\");\n var hasIsPrototypeOf = obj.constructor && obj.constructor.prototype && hasOwn.call(obj.constructor.prototype, \"isPrototypeOf\");\n if (obj.constructor && !hasOwnConstructor && !hasIsPrototypeOf) {\n return false;\n }\n var key;\n for (key in obj) {\n }\n return typeof key === \"undefined\" || hasOwn.call(obj, key);\n};\nvar setProperty = function setProperty2(target, options) {\n if (defineProperty && options.name === \"__proto__\") {\n defineProperty(target, options.name, {\n enumerable: true,\n configurable: true,\n value: options.newValue,\n writable: true\n });\n } else {\n target[options.name] = options.newValue;\n }\n};\nvar getProperty = function getProperty2(obj, name) {\n if (name === \"__proto__\") {\n if (!hasOwn.call(obj, name)) {\n return void 0;\n } else if (gOPD) {\n return gOPD(obj, name).value;\n }\n }\n return obj[name];\n};\nvar extend = function extend2() {\n var options, name, src, copy, copyIsArray, clone;\n var target = arguments[0];\n var i = 1;\n var length = arguments.length;\n var deep = false;\n if (typeof target === \"boolean\") {\n deep = target;\n target = arguments[1] || {};\n i = 2;\n }\n if (target == null || typeof target !== \"object\" && typeof target !== \"function\") {\n target = {};\n }\n for (; i < length; ++i) {\n options = arguments[i];\n if (options != null) {\n for (name in options) {\n src = getProperty(target, name);\n copy = getProperty(options, name);\n if (target !== copy) {\n if (deep && copy && (isPlainObject$1(copy) || (copyIsArray = isArray(copy)))) {\n if (copyIsArray) {\n copyIsArray = false;\n clone = src && isArray(src) ? src : [];\n } else {\n clone = src && isPlainObject$1(src) ? src : {};\n }\n setProperty(target, { name, newValue: extend2(deep, clone, copy) });\n } else if (typeof copy !== \"undefined\") {\n setProperty(target, { name, newValue: copy });\n }\n }\n }\n }\n }\n return target;\n};\nfunction isPlainObject2(value) {\n if (typeof value !== \"object\" || value === null) {\n return false;\n }\n const prototype = Object.getPrototypeOf(value);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in value) && !(Symbol.iterator in value);\n}\nfunction trough() {\n const fns = [];\n const pipeline = { run, use };\n return pipeline;\n function run(...values) {\n let middlewareIndex = -1;\n const callback = values.pop();\n if (typeof callback !== \"function\") {\n throw new TypeError(\"Expected function as last argument, not \" + callback);\n }\n next(null, ...values);\n function next(error, ...output) {\n const fn = fns[++middlewareIndex];\n let index2 = -1;\n if (error) {\n callback(error);\n return;\n }\n while (++index2 < values.length) {\n if (output[index2] === null || output[index2] === void 0) {\n output[index2] = values[index2];\n }\n }\n values = output;\n if (fn) {\n wrap$1(fn, next)(...output);\n } else {\n callback(null, ...output);\n }\n }\n }\n function use(middelware) {\n if (typeof middelware !== \"function\") {\n throw new TypeError(\n \"Expected `middelware` to be a function, not \" + middelware\n );\n }\n fns.push(middelware);\n return pipeline;\n }\n}\nfunction wrap$1(middleware, callback) {\n let called;\n return wrapped;\n function wrapped(...parameters) {\n const fnExpectsCallback = middleware.length > parameters.length;\n let result;\n if (fnExpectsCallback) {\n parameters.push(done);\n }\n try {\n result = middleware.apply(this, parameters);\n } catch (error) {\n const exception = error;\n if (fnExpectsCallback && called) {\n throw exception;\n }\n return done(exception);\n }\n if (!fnExpectsCallback) {\n if (result instanceof Promise) {\n result.then(then, done);\n } else if (result instanceof Error) {\n done(result);\n } else {\n then(result);\n }\n }\n }\n function done(error, ...output) {\n if (!called) {\n called = true;\n callback(error, ...output);\n }\n }\n function then(value) {\n done(null, value);\n }\n}\n/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\nvar isBuffer2 = function isBuffer3(obj) {\n return obj != null && obj.constructor != null && typeof obj.constructor.isBuffer === \"function\" && obj.constructor.isBuffer(obj);\n};\nfunction stringifyPosition(value) {\n if (!value || typeof value !== \"object\") {\n return \"\";\n }\n if (\"position\" in value || \"type\" in value) {\n return position(value.position);\n }\n if (\"start\" in value || \"end\" in value) {\n return position(value);\n }\n if (\"line\" in value || \"column\" in value) {\n return point$1(value);\n }\n return \"\";\n}\nfunction point$1(point2) {\n return index(point2 && point2.line) + \":\" + index(point2 && point2.column);\n}\nfunction position(pos) {\n return point$1(pos && pos.start) + \"-\" + point$1(pos && pos.end);\n}\nfunction index(value) {\n return value && typeof value === \"number\" ? value : 1;\n}\nclass VFileMessage extends Error {\n constructor(reason, place, origin) {\n const parts = [null, null];\n let position2 = {\n start: { line: null, column: null },\n end: { line: null, column: null }\n };\n super();\n if (typeof place === \"string\") {\n origin = place;\n place = void 0;\n }\n if (typeof origin === \"string\") {\n const index2 = origin.indexOf(\":\");\n if (index2 === -1) {\n parts[1] = origin;\n } else {\n parts[0] = origin.slice(0, index2);\n parts[1] = origin.slice(index2 + 1);\n }\n }\n if (place) {\n if (\"type\" in place || \"position\" in place) {\n if (place.position) {\n position2 = place.position;\n }\n } else if (\"start\" in place || \"end\" in place) {\n position2 = place;\n } else if (\"line\" in place || \"column\" in place) {\n position2.start = place;\n }\n }\n this.name = stringifyPosition(place) || \"1:1\";\n this.message = typeof reason === \"object\" ? reason.message : reason;\n this.stack = typeof reason === \"object\" ? reason.stack : \"\";\n this.reason = this.message;\n this.fatal;\n this.line = position2.start.line;\n this.column = position2.start.column;\n this.source = parts[0];\n this.ruleId = parts[1];\n this.position = position2;\n this.actual;\n this.expected;\n this.file;\n this.url;\n this.note;\n }\n}\nVFileMessage.prototype.file = \"\";\nVFileMessage.prototype.name = \"\";\nVFileMessage.prototype.reason = \"\";\nVFileMessage.prototype.message = \"\";\nVFileMessage.prototype.stack = \"\";\nVFileMessage.prototype.fatal = null;\nVFileMessage.prototype.column = null;\nVFileMessage.prototype.line = null;\nVFileMessage.prototype.source = null;\nVFileMessage.prototype.ruleId = null;\nVFileMessage.prototype.position = null;\nconst path = { basename, dirname, extname, join, sep: \"/\" };\nfunction basename(path2, ext) {\n if (ext !== void 0 && typeof ext !== \"string\") {\n throw new TypeError('\"ext\" argument must be a string');\n }\n assertPath$1(path2);\n let start = 0;\n let end = -1;\n let index2 = path2.length;\n let seenNonSlash;\n if (ext === void 0 || ext.length === 0 || ext.length > path2.length) {\n while (index2--) {\n if (path2.charCodeAt(index2) === 47) {\n if (seenNonSlash) {\n start = index2 + 1;\n break;\n }\n } else if (end < 0) {\n seenNonSlash = true;\n end = index2 + 1;\n }\n }\n return end < 0 ? \"\" : path2.slice(start, end);\n }\n if (ext === path2) {\n return \"\";\n }\n let firstNonSlashEnd = -1;\n let extIndex = ext.length - 1;\n while (index2--) {\n if (path2.charCodeAt(index2) === 47) {\n if (seenNonSlash) {\n start = index2 + 1;\n break;\n }\n } else {\n if (firstNonSlashEnd < 0) {\n seenNonSlash = true;\n firstNonSlashEnd = index2 + 1;\n }\n if (extIndex > -1) {\n if (path2.charCodeAt(index2) === ext.charCodeAt(extIndex--)) {\n if (extIndex < 0) {\n end = index2;\n }\n } else {\n extIndex = -1;\n end = firstNonSlashEnd;\n }\n }\n }\n }\n if (start === end) {\n end = firstNonSlashEnd;\n } else if (end < 0) {\n end = path2.length;\n }\n return path2.slice(start, end);\n}\nfunction dirname(path2) {\n assertPath$1(path2);\n if (path2.length === 0) {\n return \".\";\n }\n let end = -1;\n let index2 = path2.length;\n let unmatchedSlash;\n while (--index2) {\n if (path2.charCodeAt(index2) === 47) {\n if (unmatchedSlash) {\n end = index2;\n break;\n }\n } else if (!unmatchedSlash) {\n unmatchedSlash = true;\n }\n }\n return end < 0 ? path2.charCodeAt(0) === 47 ? \"/\" : \".\" : end === 1 && path2.charCodeAt(0) === 47 ? \"//\" : path2.slice(0, end);\n}\nfunction extname(path2) {\n assertPath$1(path2);\n let index2 = path2.length;\n let end = -1;\n let startPart = 0;\n let startDot = -1;\n let preDotState = 0;\n let unmatchedSlash;\n while (index2--) {\n const code2 = path2.charCodeAt(index2);\n if (code2 === 47) {\n if (unmatchedSlash) {\n startPart = index2 + 1;\n break;\n }\n continue;\n }\n if (end < 0) {\n unmatchedSlash = true;\n end = index2 + 1;\n }\n if (code2 === 46) {\n if (startDot < 0) {\n startDot = index2;\n } else if (preDotState !== 1) {\n preDotState = 1;\n }\n } else if (startDot > -1) {\n preDotState = -1;\n }\n }\n if (startDot < 0 || end < 0 || preDotState === 0 || preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {\n return \"\";\n }\n return path2.slice(startDot, end);\n}\nfunction join(...segments) {\n let index2 = -1;\n let joined;\n while (++index2 < segments.length) {\n assertPath$1(segments[index2]);\n if (segments[index2]) {\n joined = joined === void 0 ? segments[index2] : joined + \"/\" + segments[index2];\n }\n }\n return joined === void 0 ? \".\" : normalize$1(joined);\n}\nfunction normalize$1(path2) {\n assertPath$1(path2);\n const absolute = path2.charCodeAt(0) === 47;\n let value = normalizeString(path2, !absolute);\n if (value.length === 0 && !absolute) {\n value = \".\";\n }\n if (value.length > 0 && path2.charCodeAt(path2.length - 1) === 47) {\n value += \"/\";\n }\n return absolute ? \"/\" + value : value;\n}\nfunction normalizeString(path2, allowAboveRoot) {\n let result = \"\";\n let lastSegmentLength = 0;\n let lastSlash = -1;\n let dots = 0;\n let index2 = -1;\n let code2;\n let lastSlashIndex;\n while (++index2 <= path2.length) {\n if (index2 < path2.length) {\n code2 = path2.charCodeAt(index2);\n } else if (code2 === 47) {\n break;\n } else {\n code2 = 47;\n }\n if (code2 === 47) {\n if (lastSlash === index2 - 1 || dots === 1)\n ;\n else if (lastSlash !== index2 - 1 && dots === 2) {\n if (result.length < 2 || lastSegmentLength !== 2 || result.charCodeAt(result.length - 1) !== 46 || result.charCodeAt(result.length - 2) !== 46) {\n if (result.length > 2) {\n lastSlashIndex = result.lastIndexOf(\"/\");\n if (lastSlashIndex !== result.length - 1) {\n if (lastSlashIndex < 0) {\n result = \"\";\n lastSegmentLength = 0;\n } else {\n result = result.slice(0, lastSlashIndex);\n lastSegmentLength = result.length - 1 - result.lastIndexOf(\"/\");\n }\n lastSlash = index2;\n dots = 0;\n continue;\n }\n } else if (result.length > 0) {\n result = \"\";\n lastSegmentLength = 0;\n lastSlash = index2;\n dots = 0;\n continue;\n }\n }\n if (allowAboveRoot) {\n result = result.length > 0 ? result + \"/..\" : \"..\";\n lastSegmentLength = 2;\n }\n } else {\n if (result.length > 0) {\n result += \"/\" + path2.slice(lastSlash + 1, index2);\n } else {\n result = path2.slice(lastSlash + 1, index2);\n }\n lastSegmentLength = index2 - lastSlash - 1;\n }\n lastSlash = index2;\n dots = 0;\n } else if (code2 === 46 && dots > -1) {\n dots++;\n } else {\n dots = -1;\n }\n }\n return result;\n}\nfunction assertPath$1(path2) {\n if (typeof path2 !== \"string\") {\n throw new TypeError(\n \"Path must be a string. Received \" + JSON.stringify(path2)\n );\n }\n}\nconst proc = { cwd };\nfunction cwd() {\n return \"/\";\n}\nfunction isUrl(fileURLOrPath) {\n return fileURLOrPath !== null && typeof fileURLOrPath === \"object\" && fileURLOrPath.href && fileURLOrPath.origin;\n}\nfunction urlToPath(path2) {\n if (typeof path2 === \"string\") {\n path2 = new URL(path2);\n } else if (!isUrl(path2)) {\n const error = new TypeError(\n 'The \"path\" argument must be of type string or an instance of URL. Received `' + path2 + \"`\"\n );\n error.code = \"ERR_INVALID_ARG_TYPE\";\n throw error;\n }\n if (path2.protocol !== \"file:\") {\n const error = new TypeError(\"The URL must be of scheme file\");\n error.code = \"ERR_INVALID_URL_SCHEME\";\n throw error;\n }\n return getPathFromURLPosix(path2);\n}\nfunction getPathFromURLPosix(url) {\n if (url.hostname !== \"\") {\n const error = new TypeError(\n 'File URL host must be \"localhost\" or empty on darwin'\n );\n error.code = \"ERR_INVALID_FILE_URL_HOST\";\n throw error;\n }\n const pathname = url.pathname;\n let index2 = -1;\n while (++index2 < pathname.length) {\n if (pathname.charCodeAt(index2) === 37 && pathname.charCodeAt(index2 + 1) === 50) {\n const third = pathname.charCodeAt(index2 + 2);\n if (third === 70 || third === 102) {\n const error = new TypeError(\n \"File URL path must not include encoded / characters\"\n );\n error.code = \"ERR_INVALID_FILE_URL_PATH\";\n throw error;\n }\n }\n }\n return decodeURIComponent(pathname);\n}\nconst order = [\"history\", \"path\", \"basename\", \"stem\", \"extname\", \"dirname\"];\nclass VFile {\n constructor(value) {\n let options;\n if (!value) {\n options = {};\n } else if (typeof value === \"string\" || isBuffer2(value)) {\n options = { value };\n } else if (isUrl(value)) {\n options = { path: value };\n } else {\n options = value;\n }\n this.data = {};\n this.messages = [];\n this.history = [];\n this.cwd = proc.cwd();\n this.value;\n this.stored;\n this.result;\n this.map;\n let index2 = -1;\n while (++index2 < order.length) {\n const prop2 = order[index2];\n if (prop2 in options && options[prop2] !== void 0) {\n this[prop2] = prop2 === \"history\" ? [...options[prop2]] : options[prop2];\n }\n }\n let prop;\n for (prop in options) {\n if (!order.includes(prop))\n this[prop] = options[prop];\n }\n }\n get path() {\n return this.history[this.history.length - 1];\n }\n set path(path2) {\n if (isUrl(path2)) {\n path2 = urlToPath(path2);\n }\n assertNonEmpty(path2, \"path\");\n if (this.path !== path2) {\n this.history.push(path2);\n }\n }\n get dirname() {\n return typeof this.path === \"string\" ? path.dirname(this.path) : void 0;\n }\n set dirname(dirname2) {\n assertPath(this.basename, \"dirname\");\n this.path = path.join(dirname2 || \"\", this.basename);\n }\n get basename() {\n return typeof this.path === \"string\" ? path.basename(this.path) : void 0;\n }\n set basename(basename2) {\n assertNonEmpty(basename2, \"basename\");\n assertPart(basename2, \"basename\");\n this.path = path.join(this.dirname || \"\", basename2);\n }\n get extname() {\n return typeof this.path === \"string\" ? path.extname(this.path) : void 0;\n }\n set extname(extname2) {\n assertPart(extname2, \"extname\");\n assertPath(this.dirname, \"extname\");\n if (extname2) {\n if (extname2.charCodeAt(0) !== 46) {\n throw new Error(\"`extname` must start with `.`\");\n }\n if (extname2.includes(\".\", 1)) {\n throw new Error(\"`extname` cannot contain multiple dots\");\n }\n }\n this.path = path.join(this.dirname, this.stem + (extname2 || \"\"));\n }\n get stem() {\n return typeof this.path === \"string\" ? path.basename(this.path, this.extname) : void 0;\n }\n set stem(stem) {\n assertNonEmpty(stem, \"stem\");\n assertPart(stem, \"stem\");\n this.path = path.join(this.dirname || \"\", stem + (this.extname || \"\"));\n }\n toString(encoding) {\n return (this.value || \"\").toString(encoding);\n }\n message(reason, place, origin) {\n const message = new VFileMessage(reason, place, origin);\n if (this.path) {\n message.name = this.path + \":\" + message.name;\n message.file = this.path;\n }\n message.fatal = false;\n this.messages.push(message);\n return message;\n }\n info(reason, place, origin) {\n const message = this.message(reason, place, origin);\n message.fatal = null;\n return message;\n }\n fail(reason, place, origin) {\n const message = this.message(reason, place, origin);\n message.fatal = true;\n throw message;\n }\n}\nfunction assertPart(part, name) {\n if (part && part.includes(path.sep)) {\n throw new Error(\n \"`\" + name + \"` cannot be a path: did not expect `\" + path.sep + \"`\"\n );\n }\n}\nfunction assertNonEmpty(part, name) {\n if (!part) {\n throw new Error(\"`\" + name + \"` cannot be empty\");\n }\n}\nfunction assertPath(path2, name) {\n if (!path2) {\n throw new Error(\"Setting `\" + name + \"` requires `path` to be set too\");\n }\n}\nconst unified = base().freeze();\nconst own$7 = {}.hasOwnProperty;\nfunction base() {\n const transformers = trough();\n const attachers = [];\n let namespace = {};\n let frozen;\n let freezeIndex = -1;\n processor.data = data;\n processor.Parser = void 0;\n processor.Compiler = void 0;\n processor.freeze = freeze;\n processor.attachers = attachers;\n processor.use = use;\n processor.parse = parse2;\n processor.stringify = stringify2;\n processor.run = run;\n processor.runSync = runSync;\n processor.process = process;\n processor.processSync = processSync;\n return processor;\n function processor() {\n const destination = base();\n let index2 = -1;\n while (++index2 < attachers.length) {\n destination.use(...attachers[index2]);\n }\n destination.data(extend(true, {}, namespace));\n return destination;\n }\n function data(key, value) {\n if (typeof key === \"string\") {\n if (arguments.length === 2) {\n assertUnfrozen(\"data\", frozen);\n namespace[key] = value;\n return processor;\n }\n return own$7.call(namespace, key) && namespace[key] || null;\n }\n if (key) {\n assertUnfrozen(\"data\", frozen);\n namespace = key;\n return processor;\n }\n return namespace;\n }\n function freeze() {\n if (frozen) {\n return processor;\n }\n while (++freezeIndex < attachers.length) {\n const [attacher, ...options] = attachers[freezeIndex];\n if (options[0] === false) {\n continue;\n }\n if (options[0] === true) {\n options[0] = void 0;\n }\n const transformer = attacher.call(processor, ...options);\n if (typeof transformer === \"function\") {\n transformers.use(transformer);\n }\n }\n frozen = true;\n freezeIndex = Number.POSITIVE_INFINITY;\n return processor;\n }\n function use(value, ...options) {\n let settings;\n assertUnfrozen(\"use\", frozen);\n if (value === null || value === void 0)\n ;\n else if (typeof value === \"function\") {\n addPlugin(value, ...options);\n } else if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n addList(value);\n } else {\n addPreset(value);\n }\n } else {\n throw new TypeError(\"Expected usable value, not `\" + value + \"`\");\n }\n if (settings) {\n namespace.settings = Object.assign(namespace.settings || {}, settings);\n }\n return processor;\n function add(value2) {\n if (typeof value2 === \"function\") {\n addPlugin(value2);\n } else if (typeof value2 === \"object\") {\n if (Array.isArray(value2)) {\n const [plugin, ...options2] = value2;\n addPlugin(plugin, ...options2);\n } else {\n addPreset(value2);\n }\n } else {\n throw new TypeError(\"Expected usable value, not `\" + value2 + \"`\");\n }\n }\n function addPreset(result) {\n addList(result.plugins);\n if (result.settings) {\n settings = Object.assign(settings || {}, result.settings);\n }\n }\n function addList(plugins) {\n let index2 = -1;\n if (plugins === null || plugins === void 0)\n ;\n else if (Array.isArray(plugins)) {\n while (++index2 < plugins.length) {\n const thing = plugins[index2];\n add(thing);\n }\n } else {\n throw new TypeError(\"Expected a list of plugins, not `\" + plugins + \"`\");\n }\n }\n function addPlugin(plugin, value2) {\n let index2 = -1;\n let entry;\n while (++index2 < attachers.length) {\n if (attachers[index2][0] === plugin) {\n entry = attachers[index2];\n break;\n }\n }\n if (entry) {\n if (isPlainObject2(entry[1]) && isPlainObject2(value2)) {\n value2 = extend(true, entry[1], value2);\n }\n entry[1] = value2;\n } else {\n attachers.push([...arguments]);\n }\n }\n }\n function parse2(doc) {\n processor.freeze();\n const file = vfile(doc);\n const Parser = processor.Parser;\n assertParser(\"parse\", Parser);\n if (newable(Parser, \"parse\")) {\n return new Parser(String(file), file).parse();\n }\n return Parser(String(file), file);\n }\n function stringify2(node, doc) {\n processor.freeze();\n const file = vfile(doc);\n const Compiler = processor.Compiler;\n assertCompiler(\"stringify\", Compiler);\n assertNode(node);\n if (newable(Compiler, \"compile\")) {\n return new Compiler(node, file).compile();\n }\n return Compiler(node, file);\n }\n function run(node, doc, callback) {\n assertNode(node);\n processor.freeze();\n if (!callback && typeof doc === \"function\") {\n callback = doc;\n doc = void 0;\n }\n if (!callback) {\n return new Promise(executor);\n }\n executor(null, callback);\n function executor(resolve, reject) {\n transformers.run(node, vfile(doc), done);\n function done(error, tree, file) {\n tree = tree || node;\n if (error) {\n reject(error);\n } else if (resolve) {\n resolve(tree);\n } else {\n callback(null, tree, file);\n }\n }\n }\n }\n function runSync(node, file) {\n let result;\n let complete;\n processor.run(node, file, done);\n assertDone(\"runSync\", \"run\", complete);\n return result;\n function done(error, tree) {\n bail(error);\n result = tree;\n complete = true;\n }\n }\n function process(doc, callback) {\n processor.freeze();\n assertParser(\"process\", processor.Parser);\n assertCompiler(\"process\", processor.Compiler);\n if (!callback) {\n return new Promise(executor);\n }\n executor(null, callback);\n function executor(resolve, reject) {\n const file = vfile(doc);\n processor.run(processor.parse(file), file, (error, tree, file2) => {\n if (error || !tree || !file2) {\n done(error);\n } else {\n const result = processor.stringify(tree, file2);\n if (result === void 0 || result === null)\n ;\n else if (looksLikeAVFileValue(result)) {\n file2.value = result;\n } else {\n file2.result = result;\n }\n done(error, file2);\n }\n });\n function done(error, file2) {\n if (error || !file2) {\n reject(error);\n } else if (resolve) {\n resolve(file2);\n } else {\n callback(null, file2);\n }\n }\n }\n }\n function processSync(doc) {\n let complete;\n processor.freeze();\n assertParser(\"processSync\", processor.Parser);\n assertCompiler(\"processSync\", processor.Compiler);\n const file = vfile(doc);\n processor.process(file, done);\n assertDone(\"processSync\", \"process\", complete);\n return file;\n function done(error) {\n complete = true;\n bail(error);\n }\n }\n}\nfunction newable(value, name) {\n return typeof value === \"function\" && value.prototype && (keys(value.prototype) || name in value.prototype);\n}\nfunction keys(value) {\n let key;\n for (key in value) {\n if (own$7.call(value, key)) {\n return true;\n }\n }\n return false;\n}\nfunction assertParser(name, value) {\n if (typeof value !== \"function\") {\n throw new TypeError(\"Cannot `\" + name + \"` without `Parser`\");\n }\n}\nfunction assertCompiler(name, value) {\n if (typeof value !== \"function\") {\n throw new TypeError(\"Cannot `\" + name + \"` without `Compiler`\");\n }\n}\nfunction assertUnfrozen(name, frozen) {\n if (frozen) {\n throw new Error(\n \"Cannot call `\" + name + \"` on a frozen processor.\\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.\"\n );\n }\n}\nfunction assertNode(node) {\n if (!isPlainObject2(node) || typeof node.type !== \"string\") {\n throw new TypeError(\"Expected node, got `\" + node + \"`\");\n }\n}\nfunction assertDone(name, asyncName, complete) {\n if (!complete) {\n throw new Error(\n \"`\" + name + \"` finished async. Use `\" + asyncName + \"` instead\"\n );\n }\n}\nfunction vfile(value) {\n return looksLikeAVFile(value) ? value : new VFile(value);\n}\nfunction looksLikeAVFile(value) {\n return Boolean(\n value && typeof value === \"object\" && \"message\" in value && \"messages\" in value\n );\n}\nfunction looksLikeAVFileValue(value) {\n return typeof value === \"string\" || isBuffer$1(value);\n}\nif (!window._vue_richtext_widgets) {\n window._vue_richtext_widgets = {};\n}\nconst isWidgetRegistered = (id) => {\n return !!window._vue_richtext_widgets[id];\n};\nconst registerWidget = (id, callback, onDestroy = (el) => {\n}) => {\n if (window._vue_richtext_widgets[id]) {\n console.error(\"Widget for id \" + id + \" already registered\");\n return;\n }\n window._vue_richtext_widgets[id] = {\n id,\n callback,\n onDestroy\n };\n};\nconst renderWidget = (el, { richObjectType, richObject, accessible }) => {\n if (richObjectType === \"open-graph\") {\n return;\n }\n if (!window._vue_richtext_widgets[richObjectType]) {\n console.error(\"Widget for rich object type \" + richObjectType + \" not registered\");\n return;\n }\n window._vue_richtext_widgets[richObjectType].callback(el, { richObjectType, richObject, accessible });\n};\nconst destroyWidget = (richObjectType, el) => {\n if (richObjectType === \"open-graph\") {\n return;\n }\n if (!window._vue_richtext_widgets[richObjectType]) {\n return;\n }\n window._vue_richtext_widgets[richObjectType].onDestroy(el);\n};\nwindow._registerWidget = registerWidget;\nconst ReferenceWidget_vue_vue_type_style_index_0_scoped_de8147ea_lang = \"\";\nfunction normalizeComponent(scriptExports, render3, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {\n var options = typeof scriptExports === \"function\" ? scriptExports.options : scriptExports;\n if (render3) {\n options.render = render3;\n options.staticRenderFns = staticRenderFns;\n options._compiled = true;\n }\n if (functionalTemplate) {\n options.functional = true;\n }\n if (scopeId) {\n options._scopeId = \"data-v-\" + scopeId;\n }\n var hook;\n if (moduleIdentifier) {\n hook = function(context) {\n context = context || this.$vnode && this.$vnode.ssrContext || this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext;\n if (!context && typeof __VUE_SSR_CONTEXT__ !== \"undefined\") {\n context = __VUE_SSR_CONTEXT__;\n }\n if (injectStyles) {\n injectStyles.call(this, context);\n }\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n };\n options._ssrRegister = hook;\n } else if (injectStyles) {\n hook = shadowMode ? function() {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n );\n } : injectStyles;\n }\n if (hook) {\n if (options.functional) {\n options._injectStyles = hook;\n var originalRender = options.render;\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n return {\n exports: scriptExports,\n options\n };\n}\nconst _sfc_main$2 = {\n name: \"ReferenceWidget\",\n props: {\n reference: {\n type: Object,\n required: true\n }\n },\n data() {\n return {\n compact: 3\n };\n },\n computed: {\n hasCustomWidget() {\n return isWidgetRegistered(this.reference.richObjectType);\n },\n noAccess() {\n return this.reference && !this.reference.accessible;\n },\n descriptionStyle() {\n if (this.compact === 0) {\n return {\n display: \"none\"\n };\n }\n const lineClamp = this.compact < 4 ? this.compact : 3;\n return {\n lineClamp,\n webkitLineClamp: lineClamp\n };\n },\n compactLink() {\n const link2 = this.reference.openGraphObject.link;\n if (!link2) {\n return \"\";\n }\n if (link2.startsWith(\"https://\")) {\n return link2.substring(8);\n }\n if (link2.startsWith(\"http://\")) {\n return link2.substring(7);\n }\n return link2;\n }\n },\n mounted() {\n this.renderWidget();\n this.observer = new ResizeObserver((entries) => {\n if (entries[0].contentRect.width < 450) {\n this.compact = 0;\n } else if (entries[0].contentRect.width < 550) {\n this.compact = 1;\n } else if (entries[0].contentRect.width < 650) {\n this.compact = 2;\n } else {\n this.compact = 3;\n }\n });\n this.observer.observe(this.$el);\n },\n beforeDestroy() {\n this.observer.disconnect();\n destroyWidget(this.reference.richObjectType, this.$el);\n },\n methods: {\n renderWidget() {\n var _a;\n if (this.$refs.customWidget) {\n this.$refs.customWidget.innerHTML = \"\";\n }\n if (((_a = this == null ? void 0 : this.reference) == null ? void 0 : _a.richObjectType) === \"open-graph\") {\n return;\n }\n this.$nextTick(() => {\n renderWidget(this.$refs.customWidget, this.reference);\n });\n }\n }\n};\nvar _sfc_render$2 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", [_vm.reference && _vm.hasCustomWidget ? _c(\"div\", { staticClass: \"widget-custom\" }, [_c(\"div\", { ref: \"customWidget\" })]) : !_vm.noAccess && _vm.reference && _vm.reference.openGraphObject && !_vm.hasCustomWidget ? _c(\"a\", { staticClass: \"widget-default\", attrs: { \"href\": _vm.reference.openGraphObject.link, \"rel\": \"noopener noreferrer\", \"target\": \"_blank\" } }, [_vm.reference.openGraphObject.thumb ? _c(\"img\", { staticClass: \"widget-default--image\", attrs: { \"src\": _vm.reference.openGraphObject.thumb } }) : _vm._e(), _c(\"div\", { staticClass: \"widget-default--details\" }, [_c(\"p\", { staticClass: \"widget-default--title\" }, [_vm._v(_vm._s(_vm.reference.openGraphObject.name))]), _c(\"p\", { staticClass: \"widget-default--description\", style: _vm.descriptionStyle }, [_vm._v(_vm._s(_vm.reference.openGraphObject.description))]), _c(\"p\", { staticClass: \"widget-default--link\" }, [_vm._v(_vm._s(_vm.compactLink))])])]) : _vm._e()]);\n};\nvar _sfc_staticRenderFns$2 = [];\nvar __component__$2 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$2,\n _sfc_render$2,\n _sfc_staticRenderFns$2,\n false,\n null,\n \"de8147ea\",\n null,\n null\n);\nconst ReferenceWidget = __component__$2.exports;\nconst URL_PATTERN = /(\\s|^)(https?:\\/\\/)((?:[-A-Z0-9+_]+\\.)+[-A-Z]+(?:\\/[-A-Z0-9+&@#%?=~_|!:,.;()]*)*)(\\s|$)/ig;\nconst URL_PATTERN_AUTOLINK = /(\\s|\\(|^)((https?:\\/\\/)((?:[-A-Z0-9+_]+\\.)+[-A-Z]+(?::[0-9]+)?(?:\\/[-A-Z0-9+&@#%?=~_|!:,.;()]*)*))(?=\\s|\\)|$)/ig;\nconst ReferenceList_vue_vue_type_style_index_0_scoped_5a4fd40e_lang = \"\";\nconst _sfc_main$1 = {\n name: \"ReferenceList\",\n components: { ReferenceWidget },\n props: {\n text: {\n type: String,\n default: \"\"\n },\n referenceData: {\n type: Object,\n default: null\n },\n limit: {\n type: Number,\n default: 1\n }\n },\n data() {\n return {\n references: null,\n loading: true\n };\n },\n computed: {\n values() {\n return this.referenceData ? this.referenceData : this.references ? Object.values(this.references) : [];\n },\n firstReference() {\n var _a;\n return (_a = this.values[0]) != null ? _a : null;\n },\n displayedReferences() {\n return this.values.slice(0, this.limit);\n }\n },\n watch: {\n text: \"fetch\"\n },\n mounted() {\n this.fetch();\n },\n methods: {\n fetch() {\n this.loading = true;\n if (this.referenceData) {\n this.loading = false;\n return;\n }\n if (!new RegExp(URL_PATTERN).exec(this.text)) {\n this.loading = false;\n return;\n }\n this.resolve().then((response) => {\n this.references = response.data.ocs.data.references;\n this.loading = false;\n }).catch((error) => {\n console.error(\"Failed to extract references\", error);\n this.loading = false;\n });\n },\n resolve() {\n const match = new RegExp(URL_PATTERN).exec(this.text.trim());\n if (this.limit === 1 && match) {\n return axios.get(generateOcsUrl(\"references/resolve\", 2) + `?reference=${encodeURIComponent(match[0])}`);\n }\n return axios.post(generateOcsUrl(\"references/extract\", 2), {\n text: this.text,\n resolve: true,\n limit: this.limit\n });\n }\n }\n};\nvar _sfc_render$1 = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"div\", { staticClass: \"widgets--list\", class: { \"icon-loading\": _vm.loading } }, _vm._l(_vm.displayedReferences, function(reference) {\n return _c(\"div\", { key: reference.openGraphObject.id }, [_c(\"ReferenceWidget\", { attrs: { \"reference\": reference } })], 1);\n }), 0);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n \"5a4fd40e\",\n null,\n null\n);\nconst ReferenceList = __component__$1.exports;\nfunction toString(node, options) {\n var { includeImageAlt = true } = options || {};\n return one$1(node, includeImageAlt);\n}\nfunction one$1(node, includeImageAlt) {\n return node && typeof node === \"object\" && (node.value || (includeImageAlt ? node.alt : \"\") || \"children\" in node && all$1(node.children, includeImageAlt) || Array.isArray(node) && all$1(node, includeImageAlt)) || \"\";\n}\nfunction all$1(values, includeImageAlt) {\n var result = [];\n var index2 = -1;\n while (++index2 < values.length) {\n result[index2] = one$1(values[index2], includeImageAlt);\n }\n return result.join(\"\");\n}\nfunction splice(list2, start, remove, items) {\n const end = list2.length;\n let chunkStart = 0;\n let parameters;\n if (start < 0) {\n start = -start > end ? 0 : end + start;\n } else {\n start = start > end ? end : start;\n }\n remove = remove > 0 ? remove : 0;\n if (items.length < 1e4) {\n parameters = Array.from(items);\n parameters.unshift(start, remove);\n [].splice.apply(list2, parameters);\n } else {\n if (remove)\n [].splice.apply(list2, [start, remove]);\n while (chunkStart < items.length) {\n parameters = items.slice(chunkStart, chunkStart + 1e4);\n parameters.unshift(start, 0);\n [].splice.apply(list2, parameters);\n chunkStart += 1e4;\n start += 1e4;\n }\n }\n}\nfunction push(list2, items) {\n if (list2.length > 0) {\n splice(list2, list2.length, 0, items);\n return list2;\n }\n return items;\n}\nconst hasOwnProperty$1 = {}.hasOwnProperty;\nfunction combineExtensions(extensions) {\n const all2 = {};\n let index2 = -1;\n while (++index2 < extensions.length) {\n syntaxExtension(all2, extensions[index2]);\n }\n return all2;\n}\nfunction syntaxExtension(all2, extension2) {\n let hook;\n for (hook in extension2) {\n const maybe = hasOwnProperty$1.call(all2, hook) ? all2[hook] : void 0;\n const left = maybe || (all2[hook] = {});\n const right = extension2[hook];\n let code2;\n for (code2 in right) {\n if (!hasOwnProperty$1.call(left, code2))\n left[code2] = [];\n const value = right[code2];\n constructs(\n left[code2],\n Array.isArray(value) ? value : value ? [value] : []\n );\n }\n }\n}\nfunction constructs(existing, list2) {\n let index2 = -1;\n const before = [];\n while (++index2 < list2.length) {\n (list2[index2].add === \"after\" ? existing : before).push(list2[index2]);\n }\n splice(existing, 0, 0, before);\n}\nconst unicodePunctuationRegex = /[!-/:-@[-`{-~\\u00A1\\u00A7\\u00AB\\u00B6\\u00B7\\u00BB\\u00BF\\u037E\\u0387\\u055A-\\u055F\\u0589\\u058A\\u05BE\\u05C0\\u05C3\\u05C6\\u05F3\\u05F4\\u0609\\u060A\\u060C\\u060D\\u061B\\u061E\\u061F\\u066A-\\u066D\\u06D4\\u0700-\\u070D\\u07F7-\\u07F9\\u0830-\\u083E\\u085E\\u0964\\u0965\\u0970\\u09FD\\u0A76\\u0AF0\\u0C77\\u0C84\\u0DF4\\u0E4F\\u0E5A\\u0E5B\\u0F04-\\u0F12\\u0F14\\u0F3A-\\u0F3D\\u0F85\\u0FD0-\\u0FD4\\u0FD9\\u0FDA\\u104A-\\u104F\\u10FB\\u1360-\\u1368\\u1400\\u166E\\u169B\\u169C\\u16EB-\\u16ED\\u1735\\u1736\\u17D4-\\u17D6\\u17D8-\\u17DA\\u1800-\\u180A\\u1944\\u1945\\u1A1E\\u1A1F\\u1AA0-\\u1AA6\\u1AA8-\\u1AAD\\u1B5A-\\u1B60\\u1BFC-\\u1BFF\\u1C3B-\\u1C3F\\u1C7E\\u1C7F\\u1CC0-\\u1CC7\\u1CD3\\u2010-\\u2027\\u2030-\\u2043\\u2045-\\u2051\\u2053-\\u205E\\u207D\\u207E\\u208D\\u208E\\u2308-\\u230B\\u2329\\u232A\\u2768-\\u2775\\u27C5\\u27C6\\u27E6-\\u27EF\\u2983-\\u2998\\u29D8-\\u29DB\\u29FC\\u29FD\\u2CF9-\\u2CFC\\u2CFE\\u2CFF\\u2D70\\u2E00-\\u2E2E\\u2E30-\\u2E4F\\u2E52\\u3001-\\u3003\\u3008-\\u3011\\u3014-\\u301F\\u3030\\u303D\\u30A0\\u30FB\\uA4FE\\uA4FF\\uA60D-\\uA60F\\uA673\\uA67E\\uA6F2-\\uA6F7\\uA874-\\uA877\\uA8CE\\uA8CF\\uA8F8-\\uA8FA\\uA8FC\\uA92E\\uA92F\\uA95F\\uA9C1-\\uA9CD\\uA9DE\\uA9DF\\uAA5C-\\uAA5F\\uAADE\\uAADF\\uAAF0\\uAAF1\\uABEB\\uFD3E\\uFD3F\\uFE10-\\uFE19\\uFE30-\\uFE52\\uFE54-\\uFE61\\uFE63\\uFE68\\uFE6A\\uFE6B\\uFF01-\\uFF03\\uFF05-\\uFF0A\\uFF0C-\\uFF0F\\uFF1A\\uFF1B\\uFF1F\\uFF20\\uFF3B-\\uFF3D\\uFF3F\\uFF5B\\uFF5D\\uFF5F-\\uFF65]/;\nconst asciiAlpha = regexCheck(/[A-Za-z]/);\nconst asciiDigit = regexCheck(/\\d/);\nconst asciiHexDigit = regexCheck(/[\\dA-Fa-f]/);\nconst asciiAlphanumeric = regexCheck(/[\\dA-Za-z]/);\nconst asciiPunctuation = regexCheck(/[!-/:-@[-`{-~]/);\nconst asciiAtext = regexCheck(/[#-'*+\\--9=?A-Z^-~]/);\nfunction asciiControl(code2) {\n return code2 !== null && (code2 < 32 || code2 === 127);\n}\nfunction markdownLineEndingOrSpace(code2) {\n return code2 !== null && (code2 < 0 || code2 === 32);\n}\nfunction markdownLineEnding(code2) {\n return code2 !== null && code2 < -2;\n}\nfunction markdownSpace(code2) {\n return code2 === -2 || code2 === -1 || code2 === 32;\n}\nconst unicodeWhitespace = regexCheck(/\\s/);\nconst unicodePunctuation = regexCheck(unicodePunctuationRegex);\nfunction regexCheck(regex) {\n return check;\n function check(code2) {\n return code2 !== null && regex.test(String.fromCharCode(code2));\n }\n}\nfunction factorySpace(effects, ok2, type, max) {\n const limit = max ? max - 1 : Number.POSITIVE_INFINITY;\n let size = 0;\n return start;\n function start(code2) {\n if (markdownSpace(code2)) {\n effects.enter(type);\n return prefix(code2);\n }\n return ok2(code2);\n }\n function prefix(code2) {\n if (markdownSpace(code2) && size++ < limit) {\n effects.consume(code2);\n return prefix;\n }\n effects.exit(type);\n return ok2(code2);\n }\n}\nconst content$1 = {\n tokenize: initializeContent\n};\nfunction initializeContent(effects) {\n const contentStart = effects.attempt(\n this.parser.constructs.contentInitial,\n afterContentStartConstruct,\n paragraphInitial\n );\n let previous2;\n return contentStart;\n function afterContentStartConstruct(code2) {\n if (code2 === null) {\n effects.consume(code2);\n return;\n }\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n return factorySpace(effects, contentStart, \"linePrefix\");\n }\n function paragraphInitial(code2) {\n effects.enter(\"paragraph\");\n return lineStart(code2);\n }\n function lineStart(code2) {\n const token = effects.enter(\"chunkText\", {\n contentType: \"text\",\n previous: previous2\n });\n if (previous2) {\n previous2.next = token;\n }\n previous2 = token;\n return data(code2);\n }\n function data(code2) {\n if (code2 === null) {\n effects.exit(\"chunkText\");\n effects.exit(\"paragraph\");\n effects.consume(code2);\n return;\n }\n if (markdownLineEnding(code2)) {\n effects.consume(code2);\n effects.exit(\"chunkText\");\n return lineStart;\n }\n effects.consume(code2);\n return data;\n }\n}\nconst document$2 = {\n tokenize: initializeDocument\n};\nconst containerConstruct = {\n tokenize: tokenizeContainer\n};\nfunction initializeDocument(effects) {\n const self = this;\n const stack = [];\n let continued = 0;\n let childFlow;\n let childToken;\n let lineStartOffset;\n return start;\n function start(code2) {\n if (continued < stack.length) {\n const item = stack[continued];\n self.containerState = item[1];\n return effects.attempt(\n item[0].continuation,\n documentContinue,\n checkNewContainers\n )(code2);\n }\n return checkNewContainers(code2);\n }\n function documentContinue(code2) {\n continued++;\n if (self.containerState._closeFlow) {\n self.containerState._closeFlow = void 0;\n if (childFlow) {\n closeFlow();\n }\n const indexBeforeExits = self.events.length;\n let indexBeforeFlow = indexBeforeExits;\n let point2;\n while (indexBeforeFlow--) {\n if (self.events[indexBeforeFlow][0] === \"exit\" && self.events[indexBeforeFlow][1].type === \"chunkFlow\") {\n point2 = self.events[indexBeforeFlow][1].end;\n break;\n }\n }\n exitContainers(continued);\n let index2 = indexBeforeExits;\n while (index2 < self.events.length) {\n self.events[index2][1].end = Object.assign({}, point2);\n index2++;\n }\n splice(\n self.events,\n indexBeforeFlow + 1,\n 0,\n self.events.slice(indexBeforeExits)\n );\n self.events.length = index2;\n return checkNewContainers(code2);\n }\n return start(code2);\n }\n function checkNewContainers(code2) {\n if (continued === stack.length) {\n if (!childFlow) {\n return documentContinued(code2);\n }\n if (childFlow.currentConstruct && childFlow.currentConstruct.concrete) {\n return flowStart(code2);\n }\n self.interrupt = Boolean(\n childFlow.currentConstruct && !childFlow._gfmTableDynamicInterruptHack\n );\n }\n self.containerState = {};\n return effects.check(\n containerConstruct,\n thereIsANewContainer,\n thereIsNoNewContainer\n )(code2);\n }\n function thereIsANewContainer(code2) {\n if (childFlow)\n closeFlow();\n exitContainers(continued);\n return documentContinued(code2);\n }\n function thereIsNoNewContainer(code2) {\n self.parser.lazy[self.now().line] = continued !== stack.length;\n lineStartOffset = self.now().offset;\n return flowStart(code2);\n }\n function documentContinued(code2) {\n self.containerState = {};\n return effects.attempt(\n containerConstruct,\n containerContinue,\n flowStart\n )(code2);\n }\n function containerContinue(code2) {\n continued++;\n stack.push([self.currentConstruct, self.containerState]);\n return documentContinued(code2);\n }\n function flowStart(code2) {\n if (code2 === null) {\n if (childFlow)\n closeFlow();\n exitContainers(0);\n effects.consume(code2);\n return;\n }\n childFlow = childFlow || self.parser.flow(self.now());\n effects.enter(\"chunkFlow\", {\n contentType: \"flow\",\n previous: childToken,\n _tokenizer: childFlow\n });\n return flowContinue(code2);\n }\n function flowContinue(code2) {\n if (code2 === null) {\n writeToChild(effects.exit(\"chunkFlow\"), true);\n exitContainers(0);\n effects.consume(code2);\n return;\n }\n if (markdownLineEnding(code2)) {\n effects.consume(code2);\n writeToChild(effects.exit(\"chunkFlow\"));\n continued = 0;\n self.interrupt = void 0;\n return start;\n }\n effects.consume(code2);\n return flowContinue;\n }\n function writeToChild(token, eof) {\n const stream = self.sliceStream(token);\n if (eof)\n stream.push(null);\n token.previous = childToken;\n if (childToken)\n childToken.next = token;\n childToken = token;\n childFlow.defineSkip(token.start);\n childFlow.write(stream);\n if (self.parser.lazy[token.start.line]) {\n let index2 = childFlow.events.length;\n while (index2--) {\n if (childFlow.events[index2][1].start.offset < lineStartOffset && (!childFlow.events[index2][1].end || childFlow.events[index2][1].end.offset > lineStartOffset)) {\n return;\n }\n }\n const indexBeforeExits = self.events.length;\n let indexBeforeFlow = indexBeforeExits;\n let seen;\n let point2;\n while (indexBeforeFlow--) {\n if (self.events[indexBeforeFlow][0] === \"exit\" && self.events[indexBeforeFlow][1].type === \"chunkFlow\") {\n if (seen) {\n point2 = self.events[indexBeforeFlow][1].end;\n break;\n }\n seen = true;\n }\n }\n exitContainers(continued);\n index2 = indexBeforeExits;\n while (index2 < self.events.length) {\n self.events[index2][1].end = Object.assign({}, point2);\n index2++;\n }\n splice(\n self.events,\n indexBeforeFlow + 1,\n 0,\n self.events.slice(indexBeforeExits)\n );\n self.events.length = index2;\n }\n }\n function exitContainers(size) {\n let index2 = stack.length;\n while (index2-- > size) {\n const entry = stack[index2];\n self.containerState = entry[1];\n entry[0].exit.call(self, effects);\n }\n stack.length = size;\n }\n function closeFlow() {\n childFlow.write([null]);\n childToken = void 0;\n childFlow = void 0;\n self.containerState._closeFlow = void 0;\n }\n}\nfunction tokenizeContainer(effects, ok2, nok) {\n return factorySpace(\n effects,\n effects.attempt(this.parser.constructs.document, ok2, nok),\n \"linePrefix\",\n this.parser.constructs.disable.null.includes(\"codeIndented\") ? void 0 : 4\n );\n}\nfunction classifyCharacter(code2) {\n if (code2 === null || markdownLineEndingOrSpace(code2) || unicodeWhitespace(code2)) {\n return 1;\n }\n if (unicodePunctuation(code2)) {\n return 2;\n }\n}\nfunction resolveAll(constructs2, events, context) {\n const called = [];\n let index2 = -1;\n while (++index2 < constructs2.length) {\n const resolve = constructs2[index2].resolveAll;\n if (resolve && !called.includes(resolve)) {\n events = resolve(events, context);\n called.push(resolve);\n }\n }\n return events;\n}\nconst attention = {\n name: \"attention\",\n tokenize: tokenizeAttention,\n resolveAll: resolveAllAttention\n};\nfunction resolveAllAttention(events, context) {\n let index2 = -1;\n let open;\n let group;\n let text2;\n let openingSequence;\n let closingSequence;\n let use;\n let nextEvents;\n let offset;\n while (++index2 < events.length) {\n if (events[index2][0] === \"enter\" && events[index2][1].type === \"attentionSequence\" && events[index2][1]._close) {\n open = index2;\n while (open--) {\n if (events[open][0] === \"exit\" && events[open][1].type === \"attentionSequence\" && events[open][1]._open && context.sliceSerialize(events[open][1]).charCodeAt(0) === context.sliceSerialize(events[index2][1]).charCodeAt(0)) {\n if ((events[open][1]._close || events[index2][1]._open) && (events[index2][1].end.offset - events[index2][1].start.offset) % 3 && !((events[open][1].end.offset - events[open][1].start.offset + events[index2][1].end.offset - events[index2][1].start.offset) % 3)) {\n continue;\n }\n use = events[open][1].end.offset - events[open][1].start.offset > 1 && events[index2][1].end.offset - events[index2][1].start.offset > 1 ? 2 : 1;\n const start = Object.assign({}, events[open][1].end);\n const end = Object.assign({}, events[index2][1].start);\n movePoint(start, -use);\n movePoint(end, use);\n openingSequence = {\n type: use > 1 ? \"strongSequence\" : \"emphasisSequence\",\n start,\n end: Object.assign({}, events[open][1].end)\n };\n closingSequence = {\n type: use > 1 ? \"strongSequence\" : \"emphasisSequence\",\n start: Object.assign({}, events[index2][1].start),\n end\n };\n text2 = {\n type: use > 1 ? \"strongText\" : \"emphasisText\",\n start: Object.assign({}, events[open][1].end),\n end: Object.assign({}, events[index2][1].start)\n };\n group = {\n type: use > 1 ? \"strong\" : \"emphasis\",\n start: Object.assign({}, openingSequence.start),\n end: Object.assign({}, closingSequence.end)\n };\n events[open][1].end = Object.assign({}, openingSequence.start);\n events[index2][1].start = Object.assign({}, closingSequence.end);\n nextEvents = [];\n if (events[open][1].end.offset - events[open][1].start.offset) {\n nextEvents = push(nextEvents, [\n [\"enter\", events[open][1], context],\n [\"exit\", events[open][1], context]\n ]);\n }\n nextEvents = push(nextEvents, [\n [\"enter\", group, context],\n [\"enter\", openingSequence, context],\n [\"exit\", openingSequence, context],\n [\"enter\", text2, context]\n ]);\n nextEvents = push(\n nextEvents,\n resolveAll(\n context.parser.constructs.insideSpan.null,\n events.slice(open + 1, index2),\n context\n )\n );\n nextEvents = push(nextEvents, [\n [\"exit\", text2, context],\n [\"enter\", closingSequence, context],\n [\"exit\", closingSequence, context],\n [\"exit\", group, context]\n ]);\n if (events[index2][1].end.offset - events[index2][1].start.offset) {\n offset = 2;\n nextEvents = push(nextEvents, [\n [\"enter\", events[index2][1], context],\n [\"exit\", events[index2][1], context]\n ]);\n } else {\n offset = 0;\n }\n splice(events, open - 1, index2 - open + 3, nextEvents);\n index2 = open + nextEvents.length - offset - 2;\n break;\n }\n }\n }\n }\n index2 = -1;\n while (++index2 < events.length) {\n if (events[index2][1].type === \"attentionSequence\") {\n events[index2][1].type = \"data\";\n }\n }\n return events;\n}\nfunction tokenizeAttention(effects, ok2) {\n const attentionMarkers2 = this.parser.constructs.attentionMarkers.null;\n const previous2 = this.previous;\n const before = classifyCharacter(previous2);\n let marker;\n return start;\n function start(code2) {\n effects.enter(\"attentionSequence\");\n marker = code2;\n return sequence(code2);\n }\n function sequence(code2) {\n if (code2 === marker) {\n effects.consume(code2);\n return sequence;\n }\n const token = effects.exit(\"attentionSequence\");\n const after = classifyCharacter(code2);\n const open = !after || after === 2 && before || attentionMarkers2.includes(code2);\n const close = !before || before === 2 && after || attentionMarkers2.includes(previous2);\n token._open = Boolean(marker === 42 ? open : open && (before || !close));\n token._close = Boolean(marker === 42 ? close : close && (after || !open));\n return ok2(code2);\n }\n}\nfunction movePoint(point2, offset) {\n point2.column += offset;\n point2.offset += offset;\n point2._bufferIndex += offset;\n}\nconst autolink = {\n name: \"autolink\",\n tokenize: tokenizeAutolink\n};\nfunction tokenizeAutolink(effects, ok2, nok) {\n let size = 1;\n return start;\n function start(code2) {\n effects.enter(\"autolink\");\n effects.enter(\"autolinkMarker\");\n effects.consume(code2);\n effects.exit(\"autolinkMarker\");\n effects.enter(\"autolinkProtocol\");\n return open;\n }\n function open(code2) {\n if (asciiAlpha(code2)) {\n effects.consume(code2);\n return schemeOrEmailAtext;\n }\n return asciiAtext(code2) ? emailAtext(code2) : nok(code2);\n }\n function schemeOrEmailAtext(code2) {\n return code2 === 43 || code2 === 45 || code2 === 46 || asciiAlphanumeric(code2) ? schemeInsideOrEmailAtext(code2) : emailAtext(code2);\n }\n function schemeInsideOrEmailAtext(code2) {\n if (code2 === 58) {\n effects.consume(code2);\n return urlInside;\n }\n if ((code2 === 43 || code2 === 45 || code2 === 46 || asciiAlphanumeric(code2)) && size++ < 32) {\n effects.consume(code2);\n return schemeInsideOrEmailAtext;\n }\n return emailAtext(code2);\n }\n function urlInside(code2) {\n if (code2 === 62) {\n effects.exit(\"autolinkProtocol\");\n return end(code2);\n }\n if (code2 === null || code2 === 32 || code2 === 60 || asciiControl(code2)) {\n return nok(code2);\n }\n effects.consume(code2);\n return urlInside;\n }\n function emailAtext(code2) {\n if (code2 === 64) {\n effects.consume(code2);\n size = 0;\n return emailAtSignOrDot;\n }\n if (asciiAtext(code2)) {\n effects.consume(code2);\n return emailAtext;\n }\n return nok(code2);\n }\n function emailAtSignOrDot(code2) {\n return asciiAlphanumeric(code2) ? emailLabel(code2) : nok(code2);\n }\n function emailLabel(code2) {\n if (code2 === 46) {\n effects.consume(code2);\n size = 0;\n return emailAtSignOrDot;\n }\n if (code2 === 62) {\n effects.exit(\"autolinkProtocol\").type = \"autolinkEmail\";\n return end(code2);\n }\n return emailValue(code2);\n }\n function emailValue(code2) {\n if ((code2 === 45 || asciiAlphanumeric(code2)) && size++ < 63) {\n effects.consume(code2);\n return code2 === 45 ? emailValue : emailLabel;\n }\n return nok(code2);\n }\n function end(code2) {\n effects.enter(\"autolinkMarker\");\n effects.consume(code2);\n effects.exit(\"autolinkMarker\");\n effects.exit(\"autolink\");\n return ok2;\n }\n}\nconst blankLine = {\n tokenize: tokenizeBlankLine,\n partial: true\n};\nfunction tokenizeBlankLine(effects, ok2, nok) {\n return factorySpace(effects, afterWhitespace, \"linePrefix\");\n function afterWhitespace(code2) {\n return code2 === null || markdownLineEnding(code2) ? ok2(code2) : nok(code2);\n }\n}\nconst blockQuote = {\n name: \"blockQuote\",\n tokenize: tokenizeBlockQuoteStart,\n continuation: {\n tokenize: tokenizeBlockQuoteContinuation\n },\n exit\n};\nfunction tokenizeBlockQuoteStart(effects, ok2, nok) {\n const self = this;\n return start;\n function start(code2) {\n if (code2 === 62) {\n const state = self.containerState;\n if (!state.open) {\n effects.enter(\"blockQuote\", {\n _container: true\n });\n state.open = true;\n }\n effects.enter(\"blockQuotePrefix\");\n effects.enter(\"blockQuoteMarker\");\n effects.consume(code2);\n effects.exit(\"blockQuoteMarker\");\n return after;\n }\n return nok(code2);\n }\n function after(code2) {\n if (markdownSpace(code2)) {\n effects.enter(\"blockQuotePrefixWhitespace\");\n effects.consume(code2);\n effects.exit(\"blockQuotePrefixWhitespace\");\n effects.exit(\"blockQuotePrefix\");\n return ok2;\n }\n effects.exit(\"blockQuotePrefix\");\n return ok2(code2);\n }\n}\nfunction tokenizeBlockQuoteContinuation(effects, ok2, nok) {\n return factorySpace(\n effects,\n effects.attempt(blockQuote, ok2, nok),\n \"linePrefix\",\n this.parser.constructs.disable.null.includes(\"codeIndented\") ? void 0 : 4\n );\n}\nfunction exit(effects) {\n effects.exit(\"blockQuote\");\n}\nconst characterEscape = {\n name: \"characterEscape\",\n tokenize: tokenizeCharacterEscape\n};\nfunction tokenizeCharacterEscape(effects, ok2, nok) {\n return start;\n function start(code2) {\n effects.enter(\"characterEscape\");\n effects.enter(\"escapeMarker\");\n effects.consume(code2);\n effects.exit(\"escapeMarker\");\n return open;\n }\n function open(code2) {\n if (asciiPunctuation(code2)) {\n effects.enter(\"characterEscapeValue\");\n effects.consume(code2);\n effects.exit(\"characterEscapeValue\");\n effects.exit(\"characterEscape\");\n return ok2;\n }\n return nok(code2);\n }\n}\nconst element$1 = document.createElement(\"i\");\nfunction decodeNamedCharacterReference(value) {\n const characterReference2 = \"&\" + value + \";\";\n element$1.innerHTML = characterReference2;\n const char = element$1.textContent;\n if (char.charCodeAt(char.length - 1) === 59 && value !== \"semi\") {\n return false;\n }\n return char === characterReference2 ? false : char;\n}\nconst characterReference = {\n name: \"characterReference\",\n tokenize: tokenizeCharacterReference\n};\nfunction tokenizeCharacterReference(effects, ok2, nok) {\n const self = this;\n let size = 0;\n let max;\n let test;\n return start;\n function start(code2) {\n effects.enter(\"characterReference\");\n effects.enter(\"characterReferenceMarker\");\n effects.consume(code2);\n effects.exit(\"characterReferenceMarker\");\n return open;\n }\n function open(code2) {\n if (code2 === 35) {\n effects.enter(\"characterReferenceMarkerNumeric\");\n effects.consume(code2);\n effects.exit(\"characterReferenceMarkerNumeric\");\n return numeric;\n }\n effects.enter(\"characterReferenceValue\");\n max = 31;\n test = asciiAlphanumeric;\n return value(code2);\n }\n function numeric(code2) {\n if (code2 === 88 || code2 === 120) {\n effects.enter(\"characterReferenceMarkerHexadecimal\");\n effects.consume(code2);\n effects.exit(\"characterReferenceMarkerHexadecimal\");\n effects.enter(\"characterReferenceValue\");\n max = 6;\n test = asciiHexDigit;\n return value;\n }\n effects.enter(\"characterReferenceValue\");\n max = 7;\n test = asciiDigit;\n return value(code2);\n }\n function value(code2) {\n let token;\n if (code2 === 59 && size) {\n token = effects.exit(\"characterReferenceValue\");\n if (test === asciiAlphanumeric && !decodeNamedCharacterReference(self.sliceSerialize(token))) {\n return nok(code2);\n }\n effects.enter(\"characterReferenceMarker\");\n effects.consume(code2);\n effects.exit(\"characterReferenceMarker\");\n effects.exit(\"characterReference\");\n return ok2;\n }\n if (test(code2) && size++ < max) {\n effects.consume(code2);\n return value;\n }\n return nok(code2);\n }\n}\nconst codeFenced = {\n name: \"codeFenced\",\n tokenize: tokenizeCodeFenced,\n concrete: true\n};\nfunction tokenizeCodeFenced(effects, ok2, nok) {\n const self = this;\n const closingFenceConstruct = {\n tokenize: tokenizeClosingFence,\n partial: true\n };\n const nonLazyLine = {\n tokenize: tokenizeNonLazyLine,\n partial: true\n };\n const tail = this.events[this.events.length - 1];\n const initialPrefix = tail && tail[1].type === \"linePrefix\" ? tail[2].sliceSerialize(tail[1], true).length : 0;\n let sizeOpen = 0;\n let marker;\n return start;\n function start(code2) {\n effects.enter(\"codeFenced\");\n effects.enter(\"codeFencedFence\");\n effects.enter(\"codeFencedFenceSequence\");\n marker = code2;\n return sequenceOpen(code2);\n }\n function sequenceOpen(code2) {\n if (code2 === marker) {\n effects.consume(code2);\n sizeOpen++;\n return sequenceOpen;\n }\n effects.exit(\"codeFencedFenceSequence\");\n return sizeOpen < 3 ? nok(code2) : factorySpace(effects, infoOpen, \"whitespace\")(code2);\n }\n function infoOpen(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n return openAfter(code2);\n }\n effects.enter(\"codeFencedFenceInfo\");\n effects.enter(\"chunkString\", {\n contentType: \"string\"\n });\n return info(code2);\n }\n function info(code2) {\n if (code2 === null || markdownLineEndingOrSpace(code2)) {\n effects.exit(\"chunkString\");\n effects.exit(\"codeFencedFenceInfo\");\n return factorySpace(effects, infoAfter, \"whitespace\")(code2);\n }\n if (code2 === 96 && code2 === marker)\n return nok(code2);\n effects.consume(code2);\n return info;\n }\n function infoAfter(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n return openAfter(code2);\n }\n effects.enter(\"codeFencedFenceMeta\");\n effects.enter(\"chunkString\", {\n contentType: \"string\"\n });\n return meta(code2);\n }\n function meta(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n effects.exit(\"chunkString\");\n effects.exit(\"codeFencedFenceMeta\");\n return openAfter(code2);\n }\n if (code2 === 96 && code2 === marker)\n return nok(code2);\n effects.consume(code2);\n return meta;\n }\n function openAfter(code2) {\n effects.exit(\"codeFencedFence\");\n return self.interrupt ? ok2(code2) : contentStart(code2);\n }\n function contentStart(code2) {\n if (code2 === null) {\n return after(code2);\n }\n if (markdownLineEnding(code2)) {\n return effects.attempt(\n nonLazyLine,\n effects.attempt(\n closingFenceConstruct,\n after,\n initialPrefix ? factorySpace(\n effects,\n contentStart,\n \"linePrefix\",\n initialPrefix + 1\n ) : contentStart\n ),\n after\n )(code2);\n }\n effects.enter(\"codeFlowValue\");\n return contentContinue(code2);\n }\n function contentContinue(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n effects.exit(\"codeFlowValue\");\n return contentStart(code2);\n }\n effects.consume(code2);\n return contentContinue;\n }\n function after(code2) {\n effects.exit(\"codeFenced\");\n return ok2(code2);\n }\n function tokenizeNonLazyLine(effects2, ok3, nok2) {\n const self2 = this;\n return start2;\n function start2(code2) {\n effects2.enter(\"lineEnding\");\n effects2.consume(code2);\n effects2.exit(\"lineEnding\");\n return lineStart;\n }\n function lineStart(code2) {\n return self2.parser.lazy[self2.now().line] ? nok2(code2) : ok3(code2);\n }\n }\n function tokenizeClosingFence(effects2, ok3, nok2) {\n let size = 0;\n return factorySpace(\n effects2,\n closingSequenceStart,\n \"linePrefix\",\n this.parser.constructs.disable.null.includes(\"codeIndented\") ? void 0 : 4\n );\n function closingSequenceStart(code2) {\n effects2.enter(\"codeFencedFence\");\n effects2.enter(\"codeFencedFenceSequence\");\n return closingSequence(code2);\n }\n function closingSequence(code2) {\n if (code2 === marker) {\n effects2.consume(code2);\n size++;\n return closingSequence;\n }\n if (size < sizeOpen)\n return nok2(code2);\n effects2.exit(\"codeFencedFenceSequence\");\n return factorySpace(effects2, closingSequenceEnd, \"whitespace\")(code2);\n }\n function closingSequenceEnd(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n effects2.exit(\"codeFencedFence\");\n return ok3(code2);\n }\n return nok2(code2);\n }\n }\n}\nconst codeIndented = {\n name: \"codeIndented\",\n tokenize: tokenizeCodeIndented\n};\nconst indentedContent = {\n tokenize: tokenizeIndentedContent,\n partial: true\n};\nfunction tokenizeCodeIndented(effects, ok2, nok) {\n const self = this;\n return start;\n function start(code2) {\n effects.enter(\"codeIndented\");\n return factorySpace(effects, afterStartPrefix, \"linePrefix\", 4 + 1)(code2);\n }\n function afterStartPrefix(code2) {\n const tail = self.events[self.events.length - 1];\n return tail && tail[1].type === \"linePrefix\" && tail[2].sliceSerialize(tail[1], true).length >= 4 ? afterPrefix(code2) : nok(code2);\n }\n function afterPrefix(code2) {\n if (code2 === null) {\n return after(code2);\n }\n if (markdownLineEnding(code2)) {\n return effects.attempt(indentedContent, afterPrefix, after)(code2);\n }\n effects.enter(\"codeFlowValue\");\n return content2(code2);\n }\n function content2(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n effects.exit(\"codeFlowValue\");\n return afterPrefix(code2);\n }\n effects.consume(code2);\n return content2;\n }\n function after(code2) {\n effects.exit(\"codeIndented\");\n return ok2(code2);\n }\n}\nfunction tokenizeIndentedContent(effects, ok2, nok) {\n const self = this;\n return start;\n function start(code2) {\n if (self.parser.lazy[self.now().line]) {\n return nok(code2);\n }\n if (markdownLineEnding(code2)) {\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n return start;\n }\n return factorySpace(effects, afterPrefix, \"linePrefix\", 4 + 1)(code2);\n }\n function afterPrefix(code2) {\n const tail = self.events[self.events.length - 1];\n return tail && tail[1].type === \"linePrefix\" && tail[2].sliceSerialize(tail[1], true).length >= 4 ? ok2(code2) : markdownLineEnding(code2) ? start(code2) : nok(code2);\n }\n}\nconst codeText = {\n name: \"codeText\",\n tokenize: tokenizeCodeText,\n resolve: resolveCodeText,\n previous\n};\nfunction resolveCodeText(events) {\n let tailExitIndex = events.length - 4;\n let headEnterIndex = 3;\n let index2;\n let enter;\n if ((events[headEnterIndex][1].type === \"lineEnding\" || events[headEnterIndex][1].type === \"space\") && (events[tailExitIndex][1].type === \"lineEnding\" || events[tailExitIndex][1].type === \"space\")) {\n index2 = headEnterIndex;\n while (++index2 < tailExitIndex) {\n if (events[index2][1].type === \"codeTextData\") {\n events[headEnterIndex][1].type = \"codeTextPadding\";\n events[tailExitIndex][1].type = \"codeTextPadding\";\n headEnterIndex += 2;\n tailExitIndex -= 2;\n break;\n }\n }\n }\n index2 = headEnterIndex - 1;\n tailExitIndex++;\n while (++index2 <= tailExitIndex) {\n if (enter === void 0) {\n if (index2 !== tailExitIndex && events[index2][1].type !== \"lineEnding\") {\n enter = index2;\n }\n } else if (index2 === tailExitIndex || events[index2][1].type === \"lineEnding\") {\n events[enter][1].type = \"codeTextData\";\n if (index2 !== enter + 2) {\n events[enter][1].end = events[index2 - 1][1].end;\n events.splice(enter + 2, index2 - enter - 2);\n tailExitIndex -= index2 - enter - 2;\n index2 = enter + 2;\n }\n enter = void 0;\n }\n }\n return events;\n}\nfunction previous(code2) {\n return code2 !== 96 || this.events[this.events.length - 1][1].type === \"characterEscape\";\n}\nfunction tokenizeCodeText(effects, ok2, nok) {\n let sizeOpen = 0;\n let size;\n let token;\n return start;\n function start(code2) {\n effects.enter(\"codeText\");\n effects.enter(\"codeTextSequence\");\n return openingSequence(code2);\n }\n function openingSequence(code2) {\n if (code2 === 96) {\n effects.consume(code2);\n sizeOpen++;\n return openingSequence;\n }\n effects.exit(\"codeTextSequence\");\n return gap(code2);\n }\n function gap(code2) {\n if (code2 === null) {\n return nok(code2);\n }\n if (code2 === 96) {\n token = effects.enter(\"codeTextSequence\");\n size = 0;\n return closingSequence(code2);\n }\n if (code2 === 32) {\n effects.enter(\"space\");\n effects.consume(code2);\n effects.exit(\"space\");\n return gap;\n }\n if (markdownLineEnding(code2)) {\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n return gap;\n }\n effects.enter(\"codeTextData\");\n return data(code2);\n }\n function data(code2) {\n if (code2 === null || code2 === 32 || code2 === 96 || markdownLineEnding(code2)) {\n effects.exit(\"codeTextData\");\n return gap(code2);\n }\n effects.consume(code2);\n return data;\n }\n function closingSequence(code2) {\n if (code2 === 96) {\n effects.consume(code2);\n size++;\n return closingSequence;\n }\n if (size === sizeOpen) {\n effects.exit(\"codeTextSequence\");\n effects.exit(\"codeText\");\n return ok2(code2);\n }\n token.type = \"codeTextData\";\n return data(code2);\n }\n}\nfunction subtokenize(events) {\n const jumps = {};\n let index2 = -1;\n let event;\n let lineIndex;\n let otherIndex;\n let otherEvent;\n let parameters;\n let subevents;\n let more;\n while (++index2 < events.length) {\n while (index2 in jumps) {\n index2 = jumps[index2];\n }\n event = events[index2];\n if (index2 && event[1].type === \"chunkFlow\" && events[index2 - 1][1].type === \"listItemPrefix\") {\n subevents = event[1]._tokenizer.events;\n otherIndex = 0;\n if (otherIndex < subevents.length && subevents[otherIndex][1].type === \"lineEndingBlank\") {\n otherIndex += 2;\n }\n if (otherIndex < subevents.length && subevents[otherIndex][1].type === \"content\") {\n while (++otherIndex < subevents.length) {\n if (subevents[otherIndex][1].type === \"content\") {\n break;\n }\n if (subevents[otherIndex][1].type === \"chunkText\") {\n subevents[otherIndex][1]._isInFirstContentOfListItem = true;\n otherIndex++;\n }\n }\n }\n }\n if (event[0] === \"enter\") {\n if (event[1].contentType) {\n Object.assign(jumps, subcontent(events, index2));\n index2 = jumps[index2];\n more = true;\n }\n } else if (event[1]._container) {\n otherIndex = index2;\n lineIndex = void 0;\n while (otherIndex--) {\n otherEvent = events[otherIndex];\n if (otherEvent[1].type === \"lineEnding\" || otherEvent[1].type === \"lineEndingBlank\") {\n if (otherEvent[0] === \"enter\") {\n if (lineIndex) {\n events[lineIndex][1].type = \"lineEndingBlank\";\n }\n otherEvent[1].type = \"lineEnding\";\n lineIndex = otherIndex;\n }\n } else {\n break;\n }\n }\n if (lineIndex) {\n event[1].end = Object.assign({}, events[lineIndex][1].start);\n parameters = events.slice(lineIndex, index2);\n parameters.unshift(event);\n splice(events, lineIndex, index2 - lineIndex + 1, parameters);\n }\n }\n }\n return !more;\n}\nfunction subcontent(events, eventIndex) {\n const token = events[eventIndex][1];\n const context = events[eventIndex][2];\n let startPosition = eventIndex - 1;\n const startPositions = [];\n const tokenizer = token._tokenizer || context.parser[token.contentType](token.start);\n const childEvents = tokenizer.events;\n const jumps = [];\n const gaps = {};\n let stream;\n let previous2;\n let index2 = -1;\n let current = token;\n let adjust = 0;\n let start = 0;\n const breaks = [start];\n while (current) {\n while (events[++startPosition][1] !== current) {\n }\n startPositions.push(startPosition);\n if (!current._tokenizer) {\n stream = context.sliceStream(current);\n if (!current.next) {\n stream.push(null);\n }\n if (previous2) {\n tokenizer.defineSkip(current.start);\n }\n if (current._isInFirstContentOfListItem) {\n tokenizer._gfmTasklistFirstContentOfListItem = true;\n }\n tokenizer.write(stream);\n if (current._isInFirstContentOfListItem) {\n tokenizer._gfmTasklistFirstContentOfListItem = void 0;\n }\n }\n previous2 = current;\n current = current.next;\n }\n current = token;\n while (++index2 < childEvents.length) {\n if (childEvents[index2][0] === \"exit\" && childEvents[index2 - 1][0] === \"enter\" && childEvents[index2][1].type === childEvents[index2 - 1][1].type && childEvents[index2][1].start.line !== childEvents[index2][1].end.line) {\n start = index2 + 1;\n breaks.push(start);\n current._tokenizer = void 0;\n current.previous = void 0;\n current = current.next;\n }\n }\n tokenizer.events = [];\n if (current) {\n current._tokenizer = void 0;\n current.previous = void 0;\n } else {\n breaks.pop();\n }\n index2 = breaks.length;\n while (index2--) {\n const slice = childEvents.slice(breaks[index2], breaks[index2 + 1]);\n const start2 = startPositions.pop();\n jumps.unshift([start2, start2 + slice.length - 1]);\n splice(events, start2, 2, slice);\n }\n index2 = -1;\n while (++index2 < jumps.length) {\n gaps[adjust + jumps[index2][0]] = adjust + jumps[index2][1];\n adjust += jumps[index2][1] - jumps[index2][0] - 1;\n }\n return gaps;\n}\nconst content = {\n tokenize: tokenizeContent,\n resolve: resolveContent\n};\nconst continuationConstruct = {\n tokenize: tokenizeContinuation,\n partial: true\n};\nfunction resolveContent(events) {\n subtokenize(events);\n return events;\n}\nfunction tokenizeContent(effects, ok2) {\n let previous2;\n return start;\n function start(code2) {\n effects.enter(\"content\");\n previous2 = effects.enter(\"chunkContent\", {\n contentType: \"content\"\n });\n return data(code2);\n }\n function data(code2) {\n if (code2 === null) {\n return contentEnd(code2);\n }\n if (markdownLineEnding(code2)) {\n return effects.check(\n continuationConstruct,\n contentContinue,\n contentEnd\n )(code2);\n }\n effects.consume(code2);\n return data;\n }\n function contentEnd(code2) {\n effects.exit(\"chunkContent\");\n effects.exit(\"content\");\n return ok2(code2);\n }\n function contentContinue(code2) {\n effects.consume(code2);\n effects.exit(\"chunkContent\");\n previous2.next = effects.enter(\"chunkContent\", {\n contentType: \"content\",\n previous: previous2\n });\n previous2 = previous2.next;\n return data;\n }\n}\nfunction tokenizeContinuation(effects, ok2, nok) {\n const self = this;\n return startLookahead;\n function startLookahead(code2) {\n effects.exit(\"chunkContent\");\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n return factorySpace(effects, prefixed, \"linePrefix\");\n }\n function prefixed(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n return nok(code2);\n }\n const tail = self.events[self.events.length - 1];\n if (!self.parser.constructs.disable.null.includes(\"codeIndented\") && tail && tail[1].type === \"linePrefix\" && tail[2].sliceSerialize(tail[1], true).length >= 4) {\n return ok2(code2);\n }\n return effects.interrupt(self.parser.constructs.flow, nok, ok2)(code2);\n }\n}\nfunction factoryDestination(effects, ok2, nok, type, literalType, literalMarkerType, rawType, stringType, max) {\n const limit = max || Number.POSITIVE_INFINITY;\n let balance = 0;\n return start;\n function start(code2) {\n if (code2 === 60) {\n effects.enter(type);\n effects.enter(literalType);\n effects.enter(literalMarkerType);\n effects.consume(code2);\n effects.exit(literalMarkerType);\n return destinationEnclosedBefore;\n }\n if (code2 === null || code2 === 41 || asciiControl(code2)) {\n return nok(code2);\n }\n effects.enter(type);\n effects.enter(rawType);\n effects.enter(stringType);\n effects.enter(\"chunkString\", {\n contentType: \"string\"\n });\n return destinationRaw(code2);\n }\n function destinationEnclosedBefore(code2) {\n if (code2 === 62) {\n effects.enter(literalMarkerType);\n effects.consume(code2);\n effects.exit(literalMarkerType);\n effects.exit(literalType);\n effects.exit(type);\n return ok2;\n }\n effects.enter(stringType);\n effects.enter(\"chunkString\", {\n contentType: \"string\"\n });\n return destinationEnclosed(code2);\n }\n function destinationEnclosed(code2) {\n if (code2 === 62) {\n effects.exit(\"chunkString\");\n effects.exit(stringType);\n return destinationEnclosedBefore(code2);\n }\n if (code2 === null || code2 === 60 || markdownLineEnding(code2)) {\n return nok(code2);\n }\n effects.consume(code2);\n return code2 === 92 ? destinationEnclosedEscape : destinationEnclosed;\n }\n function destinationEnclosedEscape(code2) {\n if (code2 === 60 || code2 === 62 || code2 === 92) {\n effects.consume(code2);\n return destinationEnclosed;\n }\n return destinationEnclosed(code2);\n }\n function destinationRaw(code2) {\n if (code2 === 40) {\n if (++balance > limit)\n return nok(code2);\n effects.consume(code2);\n return destinationRaw;\n }\n if (code2 === 41) {\n if (!balance--) {\n effects.exit(\"chunkString\");\n effects.exit(stringType);\n effects.exit(rawType);\n effects.exit(type);\n return ok2(code2);\n }\n effects.consume(code2);\n return destinationRaw;\n }\n if (code2 === null || markdownLineEndingOrSpace(code2)) {\n if (balance)\n return nok(code2);\n effects.exit(\"chunkString\");\n effects.exit(stringType);\n effects.exit(rawType);\n effects.exit(type);\n return ok2(code2);\n }\n if (asciiControl(code2))\n return nok(code2);\n effects.consume(code2);\n return code2 === 92 ? destinationRawEscape : destinationRaw;\n }\n function destinationRawEscape(code2) {\n if (code2 === 40 || code2 === 41 || code2 === 92) {\n effects.consume(code2);\n return destinationRaw;\n }\n return destinationRaw(code2);\n }\n}\nfunction factoryLabel(effects, ok2, nok, type, markerType, stringType) {\n const self = this;\n let size = 0;\n let data;\n return start;\n function start(code2) {\n effects.enter(type);\n effects.enter(markerType);\n effects.consume(code2);\n effects.exit(markerType);\n effects.enter(stringType);\n return atBreak;\n }\n function atBreak(code2) {\n if (code2 === null || code2 === 91 || code2 === 93 && !data || code2 === 94 && !size && \"_hiddenFootnoteSupport\" in self.parser.constructs || size > 999) {\n return nok(code2);\n }\n if (code2 === 93) {\n effects.exit(stringType);\n effects.enter(markerType);\n effects.consume(code2);\n effects.exit(markerType);\n effects.exit(type);\n return ok2;\n }\n if (markdownLineEnding(code2)) {\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n return atBreak;\n }\n effects.enter(\"chunkString\", {\n contentType: \"string\"\n });\n return label(code2);\n }\n function label(code2) {\n if (code2 === null || code2 === 91 || code2 === 93 || markdownLineEnding(code2) || size++ > 999) {\n effects.exit(\"chunkString\");\n return atBreak(code2);\n }\n effects.consume(code2);\n data = data || !markdownSpace(code2);\n return code2 === 92 ? labelEscape : label;\n }\n function labelEscape(code2) {\n if (code2 === 91 || code2 === 92 || code2 === 93) {\n effects.consume(code2);\n size++;\n return label;\n }\n return label(code2);\n }\n}\nfunction factoryTitle(effects, ok2, nok, type, markerType, stringType) {\n let marker;\n return start;\n function start(code2) {\n effects.enter(type);\n effects.enter(markerType);\n effects.consume(code2);\n effects.exit(markerType);\n marker = code2 === 40 ? 41 : code2;\n return atFirstTitleBreak;\n }\n function atFirstTitleBreak(code2) {\n if (code2 === marker) {\n effects.enter(markerType);\n effects.consume(code2);\n effects.exit(markerType);\n effects.exit(type);\n return ok2;\n }\n effects.enter(stringType);\n return atTitleBreak(code2);\n }\n function atTitleBreak(code2) {\n if (code2 === marker) {\n effects.exit(stringType);\n return atFirstTitleBreak(marker);\n }\n if (code2 === null) {\n return nok(code2);\n }\n if (markdownLineEnding(code2)) {\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n return factorySpace(effects, atTitleBreak, \"linePrefix\");\n }\n effects.enter(\"chunkString\", {\n contentType: \"string\"\n });\n return title(code2);\n }\n function title(code2) {\n if (code2 === marker || code2 === null || markdownLineEnding(code2)) {\n effects.exit(\"chunkString\");\n return atTitleBreak(code2);\n }\n effects.consume(code2);\n return code2 === 92 ? titleEscape : title;\n }\n function titleEscape(code2) {\n if (code2 === marker || code2 === 92) {\n effects.consume(code2);\n return title;\n }\n return title(code2);\n }\n}\nfunction factoryWhitespace(effects, ok2) {\n let seen;\n return start;\n function start(code2) {\n if (markdownLineEnding(code2)) {\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n seen = true;\n return start;\n }\n if (markdownSpace(code2)) {\n return factorySpace(\n effects,\n start,\n seen ? \"linePrefix\" : \"lineSuffix\"\n )(code2);\n }\n return ok2(code2);\n }\n}\nfunction normalizeIdentifier(value) {\n return value.replace(/[\\t\\n\\r ]+/g, \" \").replace(/^ | $/g, \"\").toLowerCase().toUpperCase();\n}\nconst definition = {\n name: \"definition\",\n tokenize: tokenizeDefinition\n};\nconst titleConstruct = {\n tokenize: tokenizeTitle,\n partial: true\n};\nfunction tokenizeDefinition(effects, ok2, nok) {\n const self = this;\n let identifier;\n return start;\n function start(code2) {\n effects.enter(\"definition\");\n return factoryLabel.call(\n self,\n effects,\n labelAfter,\n nok,\n \"definitionLabel\",\n \"definitionLabelMarker\",\n \"definitionLabelString\"\n )(code2);\n }\n function labelAfter(code2) {\n identifier = normalizeIdentifier(\n self.sliceSerialize(self.events[self.events.length - 1][1]).slice(1, -1)\n );\n if (code2 === 58) {\n effects.enter(\"definitionMarker\");\n effects.consume(code2);\n effects.exit(\"definitionMarker\");\n return factoryWhitespace(\n effects,\n factoryDestination(\n effects,\n effects.attempt(\n titleConstruct,\n factorySpace(effects, after, \"whitespace\"),\n factorySpace(effects, after, \"whitespace\")\n ),\n nok,\n \"definitionDestination\",\n \"definitionDestinationLiteral\",\n \"definitionDestinationLiteralMarker\",\n \"definitionDestinationRaw\",\n \"definitionDestinationString\"\n )\n );\n }\n return nok(code2);\n }\n function after(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n effects.exit(\"definition\");\n if (!self.parser.defined.includes(identifier)) {\n self.parser.defined.push(identifier);\n }\n return ok2(code2);\n }\n return nok(code2);\n }\n}\nfunction tokenizeTitle(effects, ok2, nok) {\n return start;\n function start(code2) {\n return markdownLineEndingOrSpace(code2) ? factoryWhitespace(effects, before)(code2) : nok(code2);\n }\n function before(code2) {\n if (code2 === 34 || code2 === 39 || code2 === 40) {\n return factoryTitle(\n effects,\n factorySpace(effects, after, \"whitespace\"),\n nok,\n \"definitionTitle\",\n \"definitionTitleMarker\",\n \"definitionTitleString\"\n )(code2);\n }\n return nok(code2);\n }\n function after(code2) {\n return code2 === null || markdownLineEnding(code2) ? ok2(code2) : nok(code2);\n }\n}\nconst hardBreakEscape = {\n name: \"hardBreakEscape\",\n tokenize: tokenizeHardBreakEscape\n};\nfunction tokenizeHardBreakEscape(effects, ok2, nok) {\n return start;\n function start(code2) {\n effects.enter(\"hardBreakEscape\");\n effects.enter(\"escapeMarker\");\n effects.consume(code2);\n return open;\n }\n function open(code2) {\n if (markdownLineEnding(code2)) {\n effects.exit(\"escapeMarker\");\n effects.exit(\"hardBreakEscape\");\n return ok2(code2);\n }\n return nok(code2);\n }\n}\nconst headingAtx = {\n name: \"headingAtx\",\n tokenize: tokenizeHeadingAtx,\n resolve: resolveHeadingAtx\n};\nfunction resolveHeadingAtx(events, context) {\n let contentEnd = events.length - 2;\n let contentStart = 3;\n let content2;\n let text2;\n if (events[contentStart][1].type === \"whitespace\") {\n contentStart += 2;\n }\n if (contentEnd - 2 > contentStart && events[contentEnd][1].type === \"whitespace\") {\n contentEnd -= 2;\n }\n if (events[contentEnd][1].type === \"atxHeadingSequence\" && (contentStart === contentEnd - 1 || contentEnd - 4 > contentStart && events[contentEnd - 2][1].type === \"whitespace\")) {\n contentEnd -= contentStart + 1 === contentEnd ? 2 : 4;\n }\n if (contentEnd > contentStart) {\n content2 = {\n type: \"atxHeadingText\",\n start: events[contentStart][1].start,\n end: events[contentEnd][1].end\n };\n text2 = {\n type: \"chunkText\",\n start: events[contentStart][1].start,\n end: events[contentEnd][1].end,\n contentType: \"text\"\n };\n splice(events, contentStart, contentEnd - contentStart + 1, [\n [\"enter\", content2, context],\n [\"enter\", text2, context],\n [\"exit\", text2, context],\n [\"exit\", content2, context]\n ]);\n }\n return events;\n}\nfunction tokenizeHeadingAtx(effects, ok2, nok) {\n const self = this;\n let size = 0;\n return start;\n function start(code2) {\n effects.enter(\"atxHeading\");\n effects.enter(\"atxHeadingSequence\");\n return fenceOpenInside(code2);\n }\n function fenceOpenInside(code2) {\n if (code2 === 35 && size++ < 6) {\n effects.consume(code2);\n return fenceOpenInside;\n }\n if (code2 === null || markdownLineEndingOrSpace(code2)) {\n effects.exit(\"atxHeadingSequence\");\n return self.interrupt ? ok2(code2) : headingBreak(code2);\n }\n return nok(code2);\n }\n function headingBreak(code2) {\n if (code2 === 35) {\n effects.enter(\"atxHeadingSequence\");\n return sequence(code2);\n }\n if (code2 === null || markdownLineEnding(code2)) {\n effects.exit(\"atxHeading\");\n return ok2(code2);\n }\n if (markdownSpace(code2)) {\n return factorySpace(effects, headingBreak, \"whitespace\")(code2);\n }\n effects.enter(\"atxHeadingText\");\n return data(code2);\n }\n function sequence(code2) {\n if (code2 === 35) {\n effects.consume(code2);\n return sequence;\n }\n effects.exit(\"atxHeadingSequence\");\n return headingBreak(code2);\n }\n function data(code2) {\n if (code2 === null || code2 === 35 || markdownLineEndingOrSpace(code2)) {\n effects.exit(\"atxHeadingText\");\n return headingBreak(code2);\n }\n effects.consume(code2);\n return data;\n }\n}\nconst htmlBlockNames = [\n \"address\",\n \"article\",\n \"aside\",\n \"base\",\n \"basefont\",\n \"blockquote\",\n \"body\",\n \"caption\",\n \"center\",\n \"col\",\n \"colgroup\",\n \"dd\",\n \"details\",\n \"dialog\",\n \"dir\",\n \"div\",\n \"dl\",\n \"dt\",\n \"fieldset\",\n \"figcaption\",\n \"figure\",\n \"footer\",\n \"form\",\n \"frame\",\n \"frameset\",\n \"h1\",\n \"h2\",\n \"h3\",\n \"h4\",\n \"h5\",\n \"h6\",\n \"head\",\n \"header\",\n \"hr\",\n \"html\",\n \"iframe\",\n \"legend\",\n \"li\",\n \"link\",\n \"main\",\n \"menu\",\n \"menuitem\",\n \"nav\",\n \"noframes\",\n \"ol\",\n \"optgroup\",\n \"option\",\n \"p\",\n \"param\",\n \"section\",\n \"summary\",\n \"table\",\n \"tbody\",\n \"td\",\n \"tfoot\",\n \"th\",\n \"thead\",\n \"title\",\n \"tr\",\n \"track\",\n \"ul\"\n];\nconst htmlRawNames = [\"pre\", \"script\", \"style\", \"textarea\"];\nconst htmlFlow = {\n name: \"htmlFlow\",\n tokenize: tokenizeHtmlFlow,\n resolveTo: resolveToHtmlFlow,\n concrete: true\n};\nconst nextBlankConstruct = {\n tokenize: tokenizeNextBlank,\n partial: true\n};\nfunction resolveToHtmlFlow(events) {\n let index2 = events.length;\n while (index2--) {\n if (events[index2][0] === \"enter\" && events[index2][1].type === \"htmlFlow\") {\n break;\n }\n }\n if (index2 > 1 && events[index2 - 2][1].type === \"linePrefix\") {\n events[index2][1].start = events[index2 - 2][1].start;\n events[index2 + 1][1].start = events[index2 - 2][1].start;\n events.splice(index2 - 2, 2);\n }\n return events;\n}\nfunction tokenizeHtmlFlow(effects, ok2, nok) {\n const self = this;\n let kind;\n let startTag;\n let buffer;\n let index2;\n let marker;\n return start;\n function start(code2) {\n effects.enter(\"htmlFlow\");\n effects.enter(\"htmlFlowData\");\n effects.consume(code2);\n return open;\n }\n function open(code2) {\n if (code2 === 33) {\n effects.consume(code2);\n return declarationStart;\n }\n if (code2 === 47) {\n effects.consume(code2);\n return tagCloseStart;\n }\n if (code2 === 63) {\n effects.consume(code2);\n kind = 3;\n return self.interrupt ? ok2 : continuationDeclarationInside;\n }\n if (asciiAlpha(code2)) {\n effects.consume(code2);\n buffer = String.fromCharCode(code2);\n startTag = true;\n return tagName;\n }\n return nok(code2);\n }\n function declarationStart(code2) {\n if (code2 === 45) {\n effects.consume(code2);\n kind = 2;\n return commentOpenInside;\n }\n if (code2 === 91) {\n effects.consume(code2);\n kind = 5;\n buffer = \"CDATA[\";\n index2 = 0;\n return cdataOpenInside;\n }\n if (asciiAlpha(code2)) {\n effects.consume(code2);\n kind = 4;\n return self.interrupt ? ok2 : continuationDeclarationInside;\n }\n return nok(code2);\n }\n function commentOpenInside(code2) {\n if (code2 === 45) {\n effects.consume(code2);\n return self.interrupt ? ok2 : continuationDeclarationInside;\n }\n return nok(code2);\n }\n function cdataOpenInside(code2) {\n if (code2 === buffer.charCodeAt(index2++)) {\n effects.consume(code2);\n return index2 === buffer.length ? self.interrupt ? ok2 : continuation : cdataOpenInside;\n }\n return nok(code2);\n }\n function tagCloseStart(code2) {\n if (asciiAlpha(code2)) {\n effects.consume(code2);\n buffer = String.fromCharCode(code2);\n return tagName;\n }\n return nok(code2);\n }\n function tagName(code2) {\n if (code2 === null || code2 === 47 || code2 === 62 || markdownLineEndingOrSpace(code2)) {\n if (code2 !== 47 && startTag && htmlRawNames.includes(buffer.toLowerCase())) {\n kind = 1;\n return self.interrupt ? ok2(code2) : continuation(code2);\n }\n if (htmlBlockNames.includes(buffer.toLowerCase())) {\n kind = 6;\n if (code2 === 47) {\n effects.consume(code2);\n return basicSelfClosing;\n }\n return self.interrupt ? ok2(code2) : continuation(code2);\n }\n kind = 7;\n return self.interrupt && !self.parser.lazy[self.now().line] ? nok(code2) : startTag ? completeAttributeNameBefore(code2) : completeClosingTagAfter(code2);\n }\n if (code2 === 45 || asciiAlphanumeric(code2)) {\n effects.consume(code2);\n buffer += String.fromCharCode(code2);\n return tagName;\n }\n return nok(code2);\n }\n function basicSelfClosing(code2) {\n if (code2 === 62) {\n effects.consume(code2);\n return self.interrupt ? ok2 : continuation;\n }\n return nok(code2);\n }\n function completeClosingTagAfter(code2) {\n if (markdownSpace(code2)) {\n effects.consume(code2);\n return completeClosingTagAfter;\n }\n return completeEnd(code2);\n }\n function completeAttributeNameBefore(code2) {\n if (code2 === 47) {\n effects.consume(code2);\n return completeEnd;\n }\n if (code2 === 58 || code2 === 95 || asciiAlpha(code2)) {\n effects.consume(code2);\n return completeAttributeName;\n }\n if (markdownSpace(code2)) {\n effects.consume(code2);\n return completeAttributeNameBefore;\n }\n return completeEnd(code2);\n }\n function completeAttributeName(code2) {\n if (code2 === 45 || code2 === 46 || code2 === 58 || code2 === 95 || asciiAlphanumeric(code2)) {\n effects.consume(code2);\n return completeAttributeName;\n }\n return completeAttributeNameAfter(code2);\n }\n function completeAttributeNameAfter(code2) {\n if (code2 === 61) {\n effects.consume(code2);\n return completeAttributeValueBefore;\n }\n if (markdownSpace(code2)) {\n effects.consume(code2);\n return completeAttributeNameAfter;\n }\n return completeAttributeNameBefore(code2);\n }\n function completeAttributeValueBefore(code2) {\n if (code2 === null || code2 === 60 || code2 === 61 || code2 === 62 || code2 === 96) {\n return nok(code2);\n }\n if (code2 === 34 || code2 === 39) {\n effects.consume(code2);\n marker = code2;\n return completeAttributeValueQuoted;\n }\n if (markdownSpace(code2)) {\n effects.consume(code2);\n return completeAttributeValueBefore;\n }\n marker = null;\n return completeAttributeValueUnquoted(code2);\n }\n function completeAttributeValueQuoted(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n return nok(code2);\n }\n if (code2 === marker) {\n effects.consume(code2);\n return completeAttributeValueQuotedAfter;\n }\n effects.consume(code2);\n return completeAttributeValueQuoted;\n }\n function completeAttributeValueUnquoted(code2) {\n if (code2 === null || code2 === 34 || code2 === 39 || code2 === 60 || code2 === 61 || code2 === 62 || code2 === 96 || markdownLineEndingOrSpace(code2)) {\n return completeAttributeNameAfter(code2);\n }\n effects.consume(code2);\n return completeAttributeValueUnquoted;\n }\n function completeAttributeValueQuotedAfter(code2) {\n if (code2 === 47 || code2 === 62 || markdownSpace(code2)) {\n return completeAttributeNameBefore(code2);\n }\n return nok(code2);\n }\n function completeEnd(code2) {\n if (code2 === 62) {\n effects.consume(code2);\n return completeAfter;\n }\n return nok(code2);\n }\n function completeAfter(code2) {\n if (markdownSpace(code2)) {\n effects.consume(code2);\n return completeAfter;\n }\n return code2 === null || markdownLineEnding(code2) ? continuation(code2) : nok(code2);\n }\n function continuation(code2) {\n if (code2 === 45 && kind === 2) {\n effects.consume(code2);\n return continuationCommentInside;\n }\n if (code2 === 60 && kind === 1) {\n effects.consume(code2);\n return continuationRawTagOpen;\n }\n if (code2 === 62 && kind === 4) {\n effects.consume(code2);\n return continuationClose;\n }\n if (code2 === 63 && kind === 3) {\n effects.consume(code2);\n return continuationDeclarationInside;\n }\n if (code2 === 93 && kind === 5) {\n effects.consume(code2);\n return continuationCharacterDataInside;\n }\n if (markdownLineEnding(code2) && (kind === 6 || kind === 7)) {\n return effects.check(\n nextBlankConstruct,\n continuationClose,\n continuationAtLineEnding\n )(code2);\n }\n if (code2 === null || markdownLineEnding(code2)) {\n return continuationAtLineEnding(code2);\n }\n effects.consume(code2);\n return continuation;\n }\n function continuationAtLineEnding(code2) {\n effects.exit(\"htmlFlowData\");\n return htmlContinueStart(code2);\n }\n function htmlContinueStart(code2) {\n if (code2 === null) {\n return done(code2);\n }\n if (markdownLineEnding(code2)) {\n return effects.attempt(\n {\n tokenize: htmlLineEnd,\n partial: true\n },\n htmlContinueStart,\n done\n )(code2);\n }\n effects.enter(\"htmlFlowData\");\n return continuation(code2);\n }\n function htmlLineEnd(effects2, ok3, nok2) {\n return start2;\n function start2(code2) {\n effects2.enter(\"lineEnding\");\n effects2.consume(code2);\n effects2.exit(\"lineEnding\");\n return lineStart;\n }\n function lineStart(code2) {\n return self.parser.lazy[self.now().line] ? nok2(code2) : ok3(code2);\n }\n }\n function continuationCommentInside(code2) {\n if (code2 === 45) {\n effects.consume(code2);\n return continuationDeclarationInside;\n }\n return continuation(code2);\n }\n function continuationRawTagOpen(code2) {\n if (code2 === 47) {\n effects.consume(code2);\n buffer = \"\";\n return continuationRawEndTag;\n }\n return continuation(code2);\n }\n function continuationRawEndTag(code2) {\n if (code2 === 62 && htmlRawNames.includes(buffer.toLowerCase())) {\n effects.consume(code2);\n return continuationClose;\n }\n if (asciiAlpha(code2) && buffer.length < 8) {\n effects.consume(code2);\n buffer += String.fromCharCode(code2);\n return continuationRawEndTag;\n }\n return continuation(code2);\n }\n function continuationCharacterDataInside(code2) {\n if (code2 === 93) {\n effects.consume(code2);\n return continuationDeclarationInside;\n }\n return continuation(code2);\n }\n function continuationDeclarationInside(code2) {\n if (code2 === 62) {\n effects.consume(code2);\n return continuationClose;\n }\n if (code2 === 45 && kind === 2) {\n effects.consume(code2);\n return continuationDeclarationInside;\n }\n return continuation(code2);\n }\n function continuationClose(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n effects.exit(\"htmlFlowData\");\n return done(code2);\n }\n effects.consume(code2);\n return continuationClose;\n }\n function done(code2) {\n effects.exit(\"htmlFlow\");\n return ok2(code2);\n }\n}\nfunction tokenizeNextBlank(effects, ok2, nok) {\n return start;\n function start(code2) {\n effects.exit(\"htmlFlowData\");\n effects.enter(\"lineEndingBlank\");\n effects.consume(code2);\n effects.exit(\"lineEndingBlank\");\n return effects.attempt(blankLine, ok2, nok);\n }\n}\nconst htmlText = {\n name: \"htmlText\",\n tokenize: tokenizeHtmlText\n};\nfunction tokenizeHtmlText(effects, ok2, nok) {\n const self = this;\n let marker;\n let buffer;\n let index2;\n let returnState;\n return start;\n function start(code2) {\n effects.enter(\"htmlText\");\n effects.enter(\"htmlTextData\");\n effects.consume(code2);\n return open;\n }\n function open(code2) {\n if (code2 === 33) {\n effects.consume(code2);\n return declarationOpen;\n }\n if (code2 === 47) {\n effects.consume(code2);\n return tagCloseStart;\n }\n if (code2 === 63) {\n effects.consume(code2);\n return instruction;\n }\n if (asciiAlpha(code2)) {\n effects.consume(code2);\n return tagOpen;\n }\n return nok(code2);\n }\n function declarationOpen(code2) {\n if (code2 === 45) {\n effects.consume(code2);\n return commentOpen;\n }\n if (code2 === 91) {\n effects.consume(code2);\n buffer = \"CDATA[\";\n index2 = 0;\n return cdataOpen;\n }\n if (asciiAlpha(code2)) {\n effects.consume(code2);\n return declaration;\n }\n return nok(code2);\n }\n function commentOpen(code2) {\n if (code2 === 45) {\n effects.consume(code2);\n return commentStart;\n }\n return nok(code2);\n }\n function commentStart(code2) {\n if (code2 === null || code2 === 62) {\n return nok(code2);\n }\n if (code2 === 45) {\n effects.consume(code2);\n return commentStartDash;\n }\n return comment(code2);\n }\n function commentStartDash(code2) {\n if (code2 === null || code2 === 62) {\n return nok(code2);\n }\n return comment(code2);\n }\n function comment(code2) {\n if (code2 === null) {\n return nok(code2);\n }\n if (code2 === 45) {\n effects.consume(code2);\n return commentClose;\n }\n if (markdownLineEnding(code2)) {\n returnState = comment;\n return atLineEnding(code2);\n }\n effects.consume(code2);\n return comment;\n }\n function commentClose(code2) {\n if (code2 === 45) {\n effects.consume(code2);\n return end;\n }\n return comment(code2);\n }\n function cdataOpen(code2) {\n if (code2 === buffer.charCodeAt(index2++)) {\n effects.consume(code2);\n return index2 === buffer.length ? cdata : cdataOpen;\n }\n return nok(code2);\n }\n function cdata(code2) {\n if (code2 === null) {\n return nok(code2);\n }\n if (code2 === 93) {\n effects.consume(code2);\n return cdataClose;\n }\n if (markdownLineEnding(code2)) {\n returnState = cdata;\n return atLineEnding(code2);\n }\n effects.consume(code2);\n return cdata;\n }\n function cdataClose(code2) {\n if (code2 === 93) {\n effects.consume(code2);\n return cdataEnd;\n }\n return cdata(code2);\n }\n function cdataEnd(code2) {\n if (code2 === 62) {\n return end(code2);\n }\n if (code2 === 93) {\n effects.consume(code2);\n return cdataEnd;\n }\n return cdata(code2);\n }\n function declaration(code2) {\n if (code2 === null || code2 === 62) {\n return end(code2);\n }\n if (markdownLineEnding(code2)) {\n returnState = declaration;\n return atLineEnding(code2);\n }\n effects.consume(code2);\n return declaration;\n }\n function instruction(code2) {\n if (code2 === null) {\n return nok(code2);\n }\n if (code2 === 63) {\n effects.consume(code2);\n return instructionClose;\n }\n if (markdownLineEnding(code2)) {\n returnState = instruction;\n return atLineEnding(code2);\n }\n effects.consume(code2);\n return instruction;\n }\n function instructionClose(code2) {\n return code2 === 62 ? end(code2) : instruction(code2);\n }\n function tagCloseStart(code2) {\n if (asciiAlpha(code2)) {\n effects.consume(code2);\n return tagClose;\n }\n return nok(code2);\n }\n function tagClose(code2) {\n if (code2 === 45 || asciiAlphanumeric(code2)) {\n effects.consume(code2);\n return tagClose;\n }\n return tagCloseBetween(code2);\n }\n function tagCloseBetween(code2) {\n if (markdownLineEnding(code2)) {\n returnState = tagCloseBetween;\n return atLineEnding(code2);\n }\n if (markdownSpace(code2)) {\n effects.consume(code2);\n return tagCloseBetween;\n }\n return end(code2);\n }\n function tagOpen(code2) {\n if (code2 === 45 || asciiAlphanumeric(code2)) {\n effects.consume(code2);\n return tagOpen;\n }\n if (code2 === 47 || code2 === 62 || markdownLineEndingOrSpace(code2)) {\n return tagOpenBetween(code2);\n }\n return nok(code2);\n }\n function tagOpenBetween(code2) {\n if (code2 === 47) {\n effects.consume(code2);\n return end;\n }\n if (code2 === 58 || code2 === 95 || asciiAlpha(code2)) {\n effects.consume(code2);\n return tagOpenAttributeName;\n }\n if (markdownLineEnding(code2)) {\n returnState = tagOpenBetween;\n return atLineEnding(code2);\n }\n if (markdownSpace(code2)) {\n effects.consume(code2);\n return tagOpenBetween;\n }\n return end(code2);\n }\n function tagOpenAttributeName(code2) {\n if (code2 === 45 || code2 === 46 || code2 === 58 || code2 === 95 || asciiAlphanumeric(code2)) {\n effects.consume(code2);\n return tagOpenAttributeName;\n }\n return tagOpenAttributeNameAfter(code2);\n }\n function tagOpenAttributeNameAfter(code2) {\n if (code2 === 61) {\n effects.consume(code2);\n return tagOpenAttributeValueBefore;\n }\n if (markdownLineEnding(code2)) {\n returnState = tagOpenAttributeNameAfter;\n return atLineEnding(code2);\n }\n if (markdownSpace(code2)) {\n effects.consume(code2);\n return tagOpenAttributeNameAfter;\n }\n return tagOpenBetween(code2);\n }\n function tagOpenAttributeValueBefore(code2) {\n if (code2 === null || code2 === 60 || code2 === 61 || code2 === 62 || code2 === 96) {\n return nok(code2);\n }\n if (code2 === 34 || code2 === 39) {\n effects.consume(code2);\n marker = code2;\n return tagOpenAttributeValueQuoted;\n }\n if (markdownLineEnding(code2)) {\n returnState = tagOpenAttributeValueBefore;\n return atLineEnding(code2);\n }\n if (markdownSpace(code2)) {\n effects.consume(code2);\n return tagOpenAttributeValueBefore;\n }\n effects.consume(code2);\n marker = void 0;\n return tagOpenAttributeValueUnquoted;\n }\n function tagOpenAttributeValueQuoted(code2) {\n if (code2 === marker) {\n effects.consume(code2);\n return tagOpenAttributeValueQuotedAfter;\n }\n if (code2 === null) {\n return nok(code2);\n }\n if (markdownLineEnding(code2)) {\n returnState = tagOpenAttributeValueQuoted;\n return atLineEnding(code2);\n }\n effects.consume(code2);\n return tagOpenAttributeValueQuoted;\n }\n function tagOpenAttributeValueQuotedAfter(code2) {\n if (code2 === 62 || code2 === 47 || markdownLineEndingOrSpace(code2)) {\n return tagOpenBetween(code2);\n }\n return nok(code2);\n }\n function tagOpenAttributeValueUnquoted(code2) {\n if (code2 === null || code2 === 34 || code2 === 39 || code2 === 60 || code2 === 61 || code2 === 96) {\n return nok(code2);\n }\n if (code2 === 62 || markdownLineEndingOrSpace(code2)) {\n return tagOpenBetween(code2);\n }\n effects.consume(code2);\n return tagOpenAttributeValueUnquoted;\n }\n function atLineEnding(code2) {\n effects.exit(\"htmlTextData\");\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n return factorySpace(\n effects,\n afterPrefix,\n \"linePrefix\",\n self.parser.constructs.disable.null.includes(\"codeIndented\") ? void 0 : 4\n );\n }\n function afterPrefix(code2) {\n effects.enter(\"htmlTextData\");\n return returnState(code2);\n }\n function end(code2) {\n if (code2 === 62) {\n effects.consume(code2);\n effects.exit(\"htmlTextData\");\n effects.exit(\"htmlText\");\n return ok2;\n }\n return nok(code2);\n }\n}\nconst labelEnd = {\n name: \"labelEnd\",\n tokenize: tokenizeLabelEnd,\n resolveTo: resolveToLabelEnd,\n resolveAll: resolveAllLabelEnd\n};\nconst resourceConstruct = {\n tokenize: tokenizeResource\n};\nconst fullReferenceConstruct = {\n tokenize: tokenizeFullReference\n};\nconst collapsedReferenceConstruct = {\n tokenize: tokenizeCollapsedReference\n};\nfunction resolveAllLabelEnd(events) {\n let index2 = -1;\n let token;\n while (++index2 < events.length) {\n token = events[index2][1];\n if (token.type === \"labelImage\" || token.type === \"labelLink\" || token.type === \"labelEnd\") {\n events.splice(index2 + 1, token.type === \"labelImage\" ? 4 : 2);\n token.type = \"data\";\n index2++;\n }\n }\n return events;\n}\nfunction resolveToLabelEnd(events, context) {\n let index2 = events.length;\n let offset = 0;\n let token;\n let open;\n let close;\n let media;\n while (index2--) {\n token = events[index2][1];\n if (open) {\n if (token.type === \"link\" || token.type === \"labelLink\" && token._inactive) {\n break;\n }\n if (events[index2][0] === \"enter\" && token.type === \"labelLink\") {\n token._inactive = true;\n }\n } else if (close) {\n if (events[index2][0] === \"enter\" && (token.type === \"labelImage\" || token.type === \"labelLink\") && !token._balanced) {\n open = index2;\n if (token.type !== \"labelLink\") {\n offset = 2;\n break;\n }\n }\n } else if (token.type === \"labelEnd\") {\n close = index2;\n }\n }\n const group = {\n type: events[open][1].type === \"labelLink\" ? \"link\" : \"image\",\n start: Object.assign({}, events[open][1].start),\n end: Object.assign({}, events[events.length - 1][1].end)\n };\n const label = {\n type: \"label\",\n start: Object.assign({}, events[open][1].start),\n end: Object.assign({}, events[close][1].end)\n };\n const text2 = {\n type: \"labelText\",\n start: Object.assign({}, events[open + offset + 2][1].end),\n end: Object.assign({}, events[close - 2][1].start)\n };\n media = [\n [\"enter\", group, context],\n [\"enter\", label, context]\n ];\n media = push(media, events.slice(open + 1, open + offset + 3));\n media = push(media, [[\"enter\", text2, context]]);\n media = push(\n media,\n resolveAll(\n context.parser.constructs.insideSpan.null,\n events.slice(open + offset + 4, close - 3),\n context\n )\n );\n media = push(media, [\n [\"exit\", text2, context],\n events[close - 2],\n events[close - 1],\n [\"exit\", label, context]\n ]);\n media = push(media, events.slice(close + 1));\n media = push(media, [[\"exit\", group, context]]);\n splice(events, open, events.length, media);\n return events;\n}\nfunction tokenizeLabelEnd(effects, ok2, nok) {\n const self = this;\n let index2 = self.events.length;\n let labelStart;\n let defined;\n while (index2--) {\n if ((self.events[index2][1].type === \"labelImage\" || self.events[index2][1].type === \"labelLink\") && !self.events[index2][1]._balanced) {\n labelStart = self.events[index2][1];\n break;\n }\n }\n return start;\n function start(code2) {\n if (!labelStart) {\n return nok(code2);\n }\n if (labelStart._inactive)\n return balanced(code2);\n defined = self.parser.defined.includes(\n normalizeIdentifier(\n self.sliceSerialize({\n start: labelStart.end,\n end: self.now()\n })\n )\n );\n effects.enter(\"labelEnd\");\n effects.enter(\"labelMarker\");\n effects.consume(code2);\n effects.exit(\"labelMarker\");\n effects.exit(\"labelEnd\");\n return afterLabelEnd;\n }\n function afterLabelEnd(code2) {\n if (code2 === 40) {\n return effects.attempt(\n resourceConstruct,\n ok2,\n defined ? ok2 : balanced\n )(code2);\n }\n if (code2 === 91) {\n return effects.attempt(\n fullReferenceConstruct,\n ok2,\n defined ? effects.attempt(collapsedReferenceConstruct, ok2, balanced) : balanced\n )(code2);\n }\n return defined ? ok2(code2) : balanced(code2);\n }\n function balanced(code2) {\n labelStart._balanced = true;\n return nok(code2);\n }\n}\nfunction tokenizeResource(effects, ok2, nok) {\n return start;\n function start(code2) {\n effects.enter(\"resource\");\n effects.enter(\"resourceMarker\");\n effects.consume(code2);\n effects.exit(\"resourceMarker\");\n return factoryWhitespace(effects, open);\n }\n function open(code2) {\n if (code2 === 41) {\n return end(code2);\n }\n return factoryDestination(\n effects,\n destinationAfter,\n nok,\n \"resourceDestination\",\n \"resourceDestinationLiteral\",\n \"resourceDestinationLiteralMarker\",\n \"resourceDestinationRaw\",\n \"resourceDestinationString\",\n 32\n )(code2);\n }\n function destinationAfter(code2) {\n return markdownLineEndingOrSpace(code2) ? factoryWhitespace(effects, between)(code2) : end(code2);\n }\n function between(code2) {\n if (code2 === 34 || code2 === 39 || code2 === 40) {\n return factoryTitle(\n effects,\n factoryWhitespace(effects, end),\n nok,\n \"resourceTitle\",\n \"resourceTitleMarker\",\n \"resourceTitleString\"\n )(code2);\n }\n return end(code2);\n }\n function end(code2) {\n if (code2 === 41) {\n effects.enter(\"resourceMarker\");\n effects.consume(code2);\n effects.exit(\"resourceMarker\");\n effects.exit(\"resource\");\n return ok2;\n }\n return nok(code2);\n }\n}\nfunction tokenizeFullReference(effects, ok2, nok) {\n const self = this;\n return start;\n function start(code2) {\n return factoryLabel.call(\n self,\n effects,\n afterLabel,\n nok,\n \"reference\",\n \"referenceMarker\",\n \"referenceString\"\n )(code2);\n }\n function afterLabel(code2) {\n return self.parser.defined.includes(\n normalizeIdentifier(\n self.sliceSerialize(self.events[self.events.length - 1][1]).slice(1, -1)\n )\n ) ? ok2(code2) : nok(code2);\n }\n}\nfunction tokenizeCollapsedReference(effects, ok2, nok) {\n return start;\n function start(code2) {\n effects.enter(\"reference\");\n effects.enter(\"referenceMarker\");\n effects.consume(code2);\n effects.exit(\"referenceMarker\");\n return open;\n }\n function open(code2) {\n if (code2 === 93) {\n effects.enter(\"referenceMarker\");\n effects.consume(code2);\n effects.exit(\"referenceMarker\");\n effects.exit(\"reference\");\n return ok2;\n }\n return nok(code2);\n }\n}\nconst labelStartImage = {\n name: \"labelStartImage\",\n tokenize: tokenizeLabelStartImage,\n resolveAll: labelEnd.resolveAll\n};\nfunction tokenizeLabelStartImage(effects, ok2, nok) {\n const self = this;\n return start;\n function start(code2) {\n effects.enter(\"labelImage\");\n effects.enter(\"labelImageMarker\");\n effects.consume(code2);\n effects.exit(\"labelImageMarker\");\n return open;\n }\n function open(code2) {\n if (code2 === 91) {\n effects.enter(\"labelMarker\");\n effects.consume(code2);\n effects.exit(\"labelMarker\");\n effects.exit(\"labelImage\");\n return after;\n }\n return nok(code2);\n }\n function after(code2) {\n return code2 === 94 && \"_hiddenFootnoteSupport\" in self.parser.constructs ? nok(code2) : ok2(code2);\n }\n}\nconst labelStartLink = {\n name: \"labelStartLink\",\n tokenize: tokenizeLabelStartLink,\n resolveAll: labelEnd.resolveAll\n};\nfunction tokenizeLabelStartLink(effects, ok2, nok) {\n const self = this;\n return start;\n function start(code2) {\n effects.enter(\"labelLink\");\n effects.enter(\"labelMarker\");\n effects.consume(code2);\n effects.exit(\"labelMarker\");\n effects.exit(\"labelLink\");\n return after;\n }\n function after(code2) {\n return code2 === 94 && \"_hiddenFootnoteSupport\" in self.parser.constructs ? nok(code2) : ok2(code2);\n }\n}\nconst lineEnding = {\n name: \"lineEnding\",\n tokenize: tokenizeLineEnding\n};\nfunction tokenizeLineEnding(effects, ok2) {\n return start;\n function start(code2) {\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n return factorySpace(effects, ok2, \"linePrefix\");\n }\n}\nconst thematicBreak$1 = {\n name: \"thematicBreak\",\n tokenize: tokenizeThematicBreak\n};\nfunction tokenizeThematicBreak(effects, ok2, nok) {\n let size = 0;\n let marker;\n return start;\n function start(code2) {\n effects.enter(\"thematicBreak\");\n marker = code2;\n return atBreak(code2);\n }\n function atBreak(code2) {\n if (code2 === marker) {\n effects.enter(\"thematicBreakSequence\");\n return sequence(code2);\n }\n if (markdownSpace(code2)) {\n return factorySpace(effects, atBreak, \"whitespace\")(code2);\n }\n if (size < 3 || code2 !== null && !markdownLineEnding(code2)) {\n return nok(code2);\n }\n effects.exit(\"thematicBreak\");\n return ok2(code2);\n }\n function sequence(code2) {\n if (code2 === marker) {\n effects.consume(code2);\n size++;\n return sequence;\n }\n effects.exit(\"thematicBreakSequence\");\n return atBreak(code2);\n }\n}\nconst list$1 = {\n name: \"list\",\n tokenize: tokenizeListStart,\n continuation: {\n tokenize: tokenizeListContinuation\n },\n exit: tokenizeListEnd\n};\nconst listItemPrefixWhitespaceConstruct = {\n tokenize: tokenizeListItemPrefixWhitespace,\n partial: true\n};\nconst indentConstruct = {\n tokenize: tokenizeIndent,\n partial: true\n};\nfunction tokenizeListStart(effects, ok2, nok) {\n const self = this;\n const tail = self.events[self.events.length - 1];\n let initialSize = tail && tail[1].type === \"linePrefix\" ? tail[2].sliceSerialize(tail[1], true).length : 0;\n let size = 0;\n return start;\n function start(code2) {\n const kind = self.containerState.type || (code2 === 42 || code2 === 43 || code2 === 45 ? \"listUnordered\" : \"listOrdered\");\n if (kind === \"listUnordered\" ? !self.containerState.marker || code2 === self.containerState.marker : asciiDigit(code2)) {\n if (!self.containerState.type) {\n self.containerState.type = kind;\n effects.enter(kind, {\n _container: true\n });\n }\n if (kind === \"listUnordered\") {\n effects.enter(\"listItemPrefix\");\n return code2 === 42 || code2 === 45 ? effects.check(thematicBreak$1, nok, atMarker)(code2) : atMarker(code2);\n }\n if (!self.interrupt || code2 === 49) {\n effects.enter(\"listItemPrefix\");\n effects.enter(\"listItemValue\");\n return inside(code2);\n }\n }\n return nok(code2);\n }\n function inside(code2) {\n if (asciiDigit(code2) && ++size < 10) {\n effects.consume(code2);\n return inside;\n }\n if ((!self.interrupt || size < 2) && (self.containerState.marker ? code2 === self.containerState.marker : code2 === 41 || code2 === 46)) {\n effects.exit(\"listItemValue\");\n return atMarker(code2);\n }\n return nok(code2);\n }\n function atMarker(code2) {\n effects.enter(\"listItemMarker\");\n effects.consume(code2);\n effects.exit(\"listItemMarker\");\n self.containerState.marker = self.containerState.marker || code2;\n return effects.check(\n blankLine,\n self.interrupt ? nok : onBlank,\n effects.attempt(\n listItemPrefixWhitespaceConstruct,\n endOfPrefix,\n otherPrefix\n )\n );\n }\n function onBlank(code2) {\n self.containerState.initialBlankLine = true;\n initialSize++;\n return endOfPrefix(code2);\n }\n function otherPrefix(code2) {\n if (markdownSpace(code2)) {\n effects.enter(\"listItemPrefixWhitespace\");\n effects.consume(code2);\n effects.exit(\"listItemPrefixWhitespace\");\n return endOfPrefix;\n }\n return nok(code2);\n }\n function endOfPrefix(code2) {\n self.containerState.size = initialSize + self.sliceSerialize(effects.exit(\"listItemPrefix\"), true).length;\n return ok2(code2);\n }\n}\nfunction tokenizeListContinuation(effects, ok2, nok) {\n const self = this;\n self.containerState._closeFlow = void 0;\n return effects.check(blankLine, onBlank, notBlank);\n function onBlank(code2) {\n self.containerState.furtherBlankLines = self.containerState.furtherBlankLines || self.containerState.initialBlankLine;\n return factorySpace(\n effects,\n ok2,\n \"listItemIndent\",\n self.containerState.size + 1\n )(code2);\n }\n function notBlank(code2) {\n if (self.containerState.furtherBlankLines || !markdownSpace(code2)) {\n self.containerState.furtherBlankLines = void 0;\n self.containerState.initialBlankLine = void 0;\n return notInCurrentItem(code2);\n }\n self.containerState.furtherBlankLines = void 0;\n self.containerState.initialBlankLine = void 0;\n return effects.attempt(indentConstruct, ok2, notInCurrentItem)(code2);\n }\n function notInCurrentItem(code2) {\n self.containerState._closeFlow = true;\n self.interrupt = void 0;\n return factorySpace(\n effects,\n effects.attempt(list$1, ok2, nok),\n \"linePrefix\",\n self.parser.constructs.disable.null.includes(\"codeIndented\") ? void 0 : 4\n )(code2);\n }\n}\nfunction tokenizeIndent(effects, ok2, nok) {\n const self = this;\n return factorySpace(\n effects,\n afterPrefix,\n \"listItemIndent\",\n self.containerState.size + 1\n );\n function afterPrefix(code2) {\n const tail = self.events[self.events.length - 1];\n return tail && tail[1].type === \"listItemIndent\" && tail[2].sliceSerialize(tail[1], true).length === self.containerState.size ? ok2(code2) : nok(code2);\n }\n}\nfunction tokenizeListEnd(effects) {\n effects.exit(this.containerState.type);\n}\nfunction tokenizeListItemPrefixWhitespace(effects, ok2, nok) {\n const self = this;\n return factorySpace(\n effects,\n afterPrefix,\n \"listItemPrefixWhitespace\",\n self.parser.constructs.disable.null.includes(\"codeIndented\") ? void 0 : 4 + 1\n );\n function afterPrefix(code2) {\n const tail = self.events[self.events.length - 1];\n return !markdownSpace(code2) && tail && tail[1].type === \"listItemPrefixWhitespace\" ? ok2(code2) : nok(code2);\n }\n}\nconst setextUnderline = {\n name: \"setextUnderline\",\n tokenize: tokenizeSetextUnderline,\n resolveTo: resolveToSetextUnderline\n};\nfunction resolveToSetextUnderline(events, context) {\n let index2 = events.length;\n let content2;\n let text2;\n let definition2;\n while (index2--) {\n if (events[index2][0] === \"enter\") {\n if (events[index2][1].type === \"content\") {\n content2 = index2;\n break;\n }\n if (events[index2][1].type === \"paragraph\") {\n text2 = index2;\n }\n } else {\n if (events[index2][1].type === \"content\") {\n events.splice(index2, 1);\n }\n if (!definition2 && events[index2][1].type === \"definition\") {\n definition2 = index2;\n }\n }\n }\n const heading2 = {\n type: \"setextHeading\",\n start: Object.assign({}, events[text2][1].start),\n end: Object.assign({}, events[events.length - 1][1].end)\n };\n events[text2][1].type = \"setextHeadingText\";\n if (definition2) {\n events.splice(text2, 0, [\"enter\", heading2, context]);\n events.splice(definition2 + 1, 0, [\"exit\", events[content2][1], context]);\n events[content2][1].end = Object.assign({}, events[definition2][1].end);\n } else {\n events[content2][1] = heading2;\n }\n events.push([\"exit\", heading2, context]);\n return events;\n}\nfunction tokenizeSetextUnderline(effects, ok2, nok) {\n const self = this;\n let index2 = self.events.length;\n let marker;\n let paragraph2;\n while (index2--) {\n if (self.events[index2][1].type !== \"lineEnding\" && self.events[index2][1].type !== \"linePrefix\" && self.events[index2][1].type !== \"content\") {\n paragraph2 = self.events[index2][1].type === \"paragraph\";\n break;\n }\n }\n return start;\n function start(code2) {\n if (!self.parser.lazy[self.now().line] && (self.interrupt || paragraph2)) {\n effects.enter(\"setextHeadingLine\");\n effects.enter(\"setextHeadingLineSequence\");\n marker = code2;\n return closingSequence(code2);\n }\n return nok(code2);\n }\n function closingSequence(code2) {\n if (code2 === marker) {\n effects.consume(code2);\n return closingSequence;\n }\n effects.exit(\"setextHeadingLineSequence\");\n return factorySpace(effects, closingSequenceEnd, \"lineSuffix\")(code2);\n }\n function closingSequenceEnd(code2) {\n if (code2 === null || markdownLineEnding(code2)) {\n effects.exit(\"setextHeadingLine\");\n return ok2(code2);\n }\n return nok(code2);\n }\n}\nconst flow$1 = {\n tokenize: initializeFlow\n};\nfunction initializeFlow(effects) {\n const self = this;\n const initial = effects.attempt(\n blankLine,\n atBlankEnding,\n effects.attempt(\n this.parser.constructs.flowInitial,\n afterConstruct,\n factorySpace(\n effects,\n effects.attempt(\n this.parser.constructs.flow,\n afterConstruct,\n effects.attempt(content, afterConstruct)\n ),\n \"linePrefix\"\n )\n )\n );\n return initial;\n function atBlankEnding(code2) {\n if (code2 === null) {\n effects.consume(code2);\n return;\n }\n effects.enter(\"lineEndingBlank\");\n effects.consume(code2);\n effects.exit(\"lineEndingBlank\");\n self.currentConstruct = void 0;\n return initial;\n }\n function afterConstruct(code2) {\n if (code2 === null) {\n effects.consume(code2);\n return;\n }\n effects.enter(\"lineEnding\");\n effects.consume(code2);\n effects.exit(\"lineEnding\");\n self.currentConstruct = void 0;\n return initial;\n }\n}\nconst resolver = {\n resolveAll: createResolver()\n};\nconst string$1 = initializeFactory(\"string\");\nconst text$3 = initializeFactory(\"text\");\nfunction initializeFactory(field) {\n return {\n tokenize: initializeText,\n resolveAll: createResolver(\n field === \"text\" ? resolveAllLineSuffixes : void 0\n )\n };\n function initializeText(effects) {\n const self = this;\n const constructs2 = this.parser.constructs[field];\n const text2 = effects.attempt(constructs2, start, notText);\n return start;\n function start(code2) {\n return atBreak(code2) ? text2(code2) : notText(code2);\n }\n function notText(code2) {\n if (code2 === null) {\n effects.consume(code2);\n return;\n }\n effects.enter(\"data\");\n effects.consume(code2);\n return data;\n }\n function data(code2) {\n if (atBreak(code2)) {\n effects.exit(\"data\");\n return text2(code2);\n }\n effects.consume(code2);\n return data;\n }\n function atBreak(code2) {\n if (code2 === null) {\n return true;\n }\n const list2 = constructs2[code2];\n let index2 = -1;\n if (list2) {\n while (++index2 < list2.length) {\n const item = list2[index2];\n if (!item.previous || item.previous.call(self, self.previous)) {\n return true;\n }\n }\n }\n return false;\n }\n }\n}\nfunction createResolver(extraResolver) {\n return resolveAllText;\n function resolveAllText(events, context) {\n let index2 = -1;\n let enter;\n while (++index2 <= events.length) {\n if (enter === void 0) {\n if (events[index2] && events[index2][1].type === \"data\") {\n enter = index2;\n index2++;\n }\n } else if (!events[index2] || events[index2][1].type !== \"data\") {\n if (index2 !== enter + 2) {\n events[enter][1].end = events[index2 - 1][1].end;\n events.splice(enter + 2, index2 - enter - 2);\n index2 = enter + 2;\n }\n enter = void 0;\n }\n }\n return extraResolver ? extraResolver(events, context) : events;\n }\n}\nfunction resolveAllLineSuffixes(events, context) {\n let eventIndex = 0;\n while (++eventIndex <= events.length) {\n if ((eventIndex === events.length || events[eventIndex][1].type === \"lineEnding\") && events[eventIndex - 1][1].type === \"data\") {\n const data = events[eventIndex - 1][1];\n const chunks = context.sliceStream(data);\n let index2 = chunks.length;\n let bufferIndex = -1;\n let size = 0;\n let tabs;\n while (index2--) {\n const chunk = chunks[index2];\n if (typeof chunk === \"string\") {\n bufferIndex = chunk.length;\n while (chunk.charCodeAt(bufferIndex - 1) === 32) {\n size++;\n bufferIndex--;\n }\n if (bufferIndex)\n break;\n bufferIndex = -1;\n } else if (chunk === -2) {\n tabs = true;\n size++;\n } else if (chunk === -1)\n ;\n else {\n index2++;\n break;\n }\n }\n if (size) {\n const token = {\n type: eventIndex === events.length || tabs || size < 2 ? \"lineSuffix\" : \"hardBreakTrailing\",\n start: {\n line: data.end.line,\n column: data.end.column - size,\n offset: data.end.offset - size,\n _index: data.start._index + index2,\n _bufferIndex: index2 ? bufferIndex : data.start._bufferIndex + bufferIndex\n },\n end: Object.assign({}, data.end)\n };\n data.end = Object.assign({}, token.start);\n if (data.start.offset === data.end.offset) {\n Object.assign(data, token);\n } else {\n events.splice(\n eventIndex,\n 0,\n [\"enter\", token, context],\n [\"exit\", token, context]\n );\n eventIndex += 2;\n }\n }\n eventIndex++;\n }\n }\n return events;\n}\nfunction createTokenizer(parser, initialize, from) {\n let point2 = Object.assign(\n from ? Object.assign({}, from) : {\n line: 1,\n column: 1,\n offset: 0\n },\n {\n _index: 0,\n _bufferIndex: -1\n }\n );\n const columnStart = {};\n const resolveAllConstructs = [];\n let chunks = [];\n let stack = [];\n const effects = {\n consume,\n enter,\n exit: exit2,\n attempt: constructFactory(onsuccessfulconstruct),\n check: constructFactory(onsuccessfulcheck),\n interrupt: constructFactory(onsuccessfulcheck, {\n interrupt: true\n })\n };\n const context = {\n previous: null,\n code: null,\n containerState: {},\n events: [],\n parser,\n sliceStream,\n sliceSerialize,\n now,\n defineSkip,\n write\n };\n let state = initialize.tokenize.call(context, effects);\n if (initialize.resolveAll) {\n resolveAllConstructs.push(initialize);\n }\n return context;\n function write(slice) {\n chunks = push(chunks, slice);\n main();\n if (chunks[chunks.length - 1] !== null) {\n return [];\n }\n addResult(initialize, 0);\n context.events = resolveAll(resolveAllConstructs, context.events, context);\n return context.events;\n }\n function sliceSerialize(token, expandTabs) {\n return serializeChunks(sliceStream(token), expandTabs);\n }\n function sliceStream(token) {\n return sliceChunks(chunks, token);\n }\n function now() {\n return Object.assign({}, point2);\n }\n function defineSkip(value) {\n columnStart[value.line] = value.column;\n accountForPotentialSkip();\n }\n function main() {\n let chunkIndex;\n while (point2._index < chunks.length) {\n const chunk = chunks[point2._index];\n if (typeof chunk === \"string\") {\n chunkIndex = point2._index;\n if (point2._bufferIndex < 0) {\n point2._bufferIndex = 0;\n }\n while (point2._index === chunkIndex && point2._bufferIndex < chunk.length) {\n go(chunk.charCodeAt(point2._bufferIndex));\n }\n } else {\n go(chunk);\n }\n }\n }\n function go(code2) {\n state = state(code2);\n }\n function consume(code2) {\n if (markdownLineEnding(code2)) {\n point2.line++;\n point2.column = 1;\n point2.offset += code2 === -3 ? 2 : 1;\n accountForPotentialSkip();\n } else if (code2 !== -1) {\n point2.column++;\n point2.offset++;\n }\n if (point2._bufferIndex < 0) {\n point2._index++;\n } else {\n point2._bufferIndex++;\n if (point2._bufferIndex === chunks[point2._index].length) {\n point2._bufferIndex = -1;\n point2._index++;\n }\n }\n context.previous = code2;\n }\n function enter(type, fields) {\n const token = fields || {};\n token.type = type;\n token.start = now();\n context.events.push([\"enter\", token, context]);\n stack.push(token);\n return token;\n }\n function exit2(type) {\n const token = stack.pop();\n token.end = now();\n context.events.push([\"exit\", token, context]);\n return token;\n }\n function onsuccessfulconstruct(construct, info) {\n addResult(construct, info.from);\n }\n function onsuccessfulcheck(_, info) {\n info.restore();\n }\n function constructFactory(onreturn, fields) {\n return hook;\n function hook(constructs2, returnState, bogusState) {\n let listOfConstructs;\n let constructIndex;\n let currentConstruct;\n let info;\n return Array.isArray(constructs2) ? handleListOfConstructs(constructs2) : \"tokenize\" in constructs2 ? handleListOfConstructs([constructs2]) : handleMapOfConstructs(constructs2);\n function handleMapOfConstructs(map) {\n return start;\n function start(code2) {\n const def = code2 !== null && map[code2];\n const all2 = code2 !== null && map.null;\n const list2 = [\n ...Array.isArray(def) ? def : def ? [def] : [],\n ...Array.isArray(all2) ? all2 : all2 ? [all2] : []\n ];\n return handleListOfConstructs(list2)(code2);\n }\n }\n function handleListOfConstructs(list2) {\n listOfConstructs = list2;\n constructIndex = 0;\n if (list2.length === 0) {\n return bogusState;\n }\n return handleConstruct(list2[constructIndex]);\n }\n function handleConstruct(construct) {\n return start;\n function start(code2) {\n info = store();\n currentConstruct = construct;\n if (!construct.partial) {\n context.currentConstruct = construct;\n }\n if (construct.name && context.parser.constructs.disable.null.includes(construct.name)) {\n return nok();\n }\n return construct.tokenize.call(\n fields ? Object.assign(Object.create(context), fields) : context,\n effects,\n ok2,\n nok\n )(code2);\n }\n }\n function ok2(code2) {\n onreturn(currentConstruct, info);\n return returnState;\n }\n function nok(code2) {\n info.restore();\n if (++constructIndex < listOfConstructs.length) {\n return handleConstruct(listOfConstructs[constructIndex]);\n }\n return bogusState;\n }\n }\n }\n function addResult(construct, from2) {\n if (construct.resolveAll && !resolveAllConstructs.includes(construct)) {\n resolveAllConstructs.push(construct);\n }\n if (construct.resolve) {\n splice(\n context.events,\n from2,\n context.events.length - from2,\n construct.resolve(context.events.slice(from2), context)\n );\n }\n if (construct.resolveTo) {\n context.events = construct.resolveTo(context.events, context);\n }\n }\n function store() {\n const startPoint = now();\n const startPrevious = context.previous;\n const startCurrentConstruct = context.currentConstruct;\n const startEventsIndex = context.events.length;\n const startStack = Array.from(stack);\n return {\n restore,\n from: startEventsIndex\n };\n function restore() {\n point2 = startPoint;\n context.previous = startPrevious;\n context.currentConstruct = startCurrentConstruct;\n context.events.length = startEventsIndex;\n stack = startStack;\n accountForPotentialSkip();\n }\n }\n function accountForPotentialSkip() {\n if (point2.line in columnStart && point2.column < 2) {\n point2.column = columnStart[point2.line];\n point2.offset += columnStart[point2.line] - 1;\n }\n }\n}\nfunction sliceChunks(chunks, token) {\n const startIndex = token.start._index;\n const startBufferIndex = token.start._bufferIndex;\n const endIndex = token.end._index;\n const endBufferIndex = token.end._bufferIndex;\n let view;\n if (startIndex === endIndex) {\n view = [chunks[startIndex].slice(startBufferIndex, endBufferIndex)];\n } else {\n view = chunks.slice(startIndex, endIndex);\n if (startBufferIndex > -1) {\n view[0] = view[0].slice(startBufferIndex);\n }\n if (endBufferIndex > 0) {\n view.push(chunks[endIndex].slice(0, endBufferIndex));\n }\n }\n return view;\n}\nfunction serializeChunks(chunks, expandTabs) {\n let index2 = -1;\n const result = [];\n let atTab;\n while (++index2 < chunks.length) {\n const chunk = chunks[index2];\n let value;\n if (typeof chunk === \"string\") {\n value = chunk;\n } else\n switch (chunk) {\n case -5: {\n value = \"\\r\";\n break;\n }\n case -4: {\n value = \"\\n\";\n break;\n }\n case -3: {\n value = \"\\r\\n\";\n break;\n }\n case -2: {\n value = expandTabs ? \" \" : \"\t\";\n break;\n }\n case -1: {\n if (!expandTabs && atTab)\n continue;\n value = \" \";\n break;\n }\n default: {\n value = String.fromCharCode(chunk);\n }\n }\n atTab = chunk === -2;\n result.push(value);\n }\n return result.join(\"\");\n}\nconst document$1 = {\n [42]: list$1,\n [43]: list$1,\n [45]: list$1,\n [48]: list$1,\n [49]: list$1,\n [50]: list$1,\n [51]: list$1,\n [52]: list$1,\n [53]: list$1,\n [54]: list$1,\n [55]: list$1,\n [56]: list$1,\n [57]: list$1,\n [62]: blockQuote\n};\nconst contentInitial = {\n [91]: definition\n};\nconst flowInitial = {\n [-2]: codeIndented,\n [-1]: codeIndented,\n [32]: codeIndented\n};\nconst flow = {\n [35]: headingAtx,\n [42]: thematicBreak$1,\n [45]: [setextUnderline, thematicBreak$1],\n [60]: htmlFlow,\n [61]: setextUnderline,\n [95]: thematicBreak$1,\n [96]: codeFenced,\n [126]: codeFenced\n};\nconst string = {\n [38]: characterReference,\n [92]: characterEscape\n};\nconst text$2 = {\n [-5]: lineEnding,\n [-4]: lineEnding,\n [-3]: lineEnding,\n [33]: labelStartImage,\n [38]: characterReference,\n [42]: attention,\n [60]: [autolink, htmlText],\n [91]: labelStartLink,\n [92]: [hardBreakEscape, characterEscape],\n [93]: labelEnd,\n [95]: attention,\n [96]: codeText\n};\nconst insideSpan = {\n null: [attention, resolver]\n};\nconst attentionMarkers = {\n null: [42, 95]\n};\nconst disable = {\n null: []\n};\nconst defaultConstructs = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n __proto__: null,\n document: document$1,\n contentInitial,\n flowInitial,\n flow,\n string,\n text: text$2,\n insideSpan,\n attentionMarkers,\n disable\n}, Symbol.toStringTag, { value: \"Module\" }));\nfunction parse$2(options = {}) {\n const constructs2 = combineExtensions(\n [defaultConstructs].concat(options.extensions || [])\n );\n const parser = {\n defined: [],\n lazy: {},\n constructs: constructs2,\n content: create2(content$1),\n document: create2(document$2),\n flow: create2(flow$1),\n string: create2(string$1),\n text: create2(text$3)\n };\n return parser;\n function create2(initial) {\n return creator;\n function creator(from) {\n return createTokenizer(parser, initial, from);\n }\n }\n}\nconst search = /[\\0\\t\\n\\r]/g;\nfunction preprocess() {\n let column = 1;\n let buffer = \"\";\n let start = true;\n let atCarriageReturn;\n return preprocessor;\n function preprocessor(value, encoding, end) {\n const chunks = [];\n let match;\n let next;\n let startPosition;\n let endPosition;\n let code2;\n value = buffer + value.toString(encoding);\n startPosition = 0;\n buffer = \"\";\n if (start) {\n if (value.charCodeAt(0) === 65279) {\n startPosition++;\n }\n start = void 0;\n }\n while (startPosition < value.length) {\n search.lastIndex = startPosition;\n match = search.exec(value);\n endPosition = match && match.index !== void 0 ? match.index : value.length;\n code2 = value.charCodeAt(endPosition);\n if (!match) {\n buffer = value.slice(startPosition);\n break;\n }\n if (code2 === 10 && startPosition === endPosition && atCarriageReturn) {\n chunks.push(-3);\n atCarriageReturn = void 0;\n } else {\n if (atCarriageReturn) {\n chunks.push(-5);\n atCarriageReturn = void 0;\n }\n if (startPosition < endPosition) {\n chunks.push(value.slice(startPosition, endPosition));\n column += endPosition - startPosition;\n }\n switch (code2) {\n case 0: {\n chunks.push(65533);\n column++;\n break;\n }\n case 9: {\n next = Math.ceil(column / 4) * 4;\n chunks.push(-2);\n while (column++ < next)\n chunks.push(-1);\n break;\n }\n case 10: {\n chunks.push(-4);\n column = 1;\n break;\n }\n default: {\n atCarriageReturn = true;\n column = 1;\n }\n }\n }\n startPosition = endPosition + 1;\n }\n if (end) {\n if (atCarriageReturn)\n chunks.push(-5);\n if (buffer)\n chunks.push(buffer);\n chunks.push(null);\n }\n return chunks;\n }\n}\nfunction postprocess(events) {\n while (!subtokenize(events)) {\n }\n return events;\n}\nfunction decodeNumericCharacterReference(value, base2) {\n const code2 = Number.parseInt(value, base2);\n if (code2 < 9 || code2 === 11 || code2 > 13 && code2 < 32 || code2 > 126 && code2 < 160 || code2 > 55295 && code2 < 57344 || code2 > 64975 && code2 < 65008 || (code2 & 65535) === 65535 || (code2 & 65535) === 65534 || code2 > 1114111) {\n return \"\\uFFFD\";\n }\n return String.fromCharCode(code2);\n}\nconst characterEscapeOrReference = /\\\\([!-/:-@[-`{-~])|&(#(?:\\d{1,7}|x[\\da-f]{1,6})|[\\da-z]{1,31});/gi;\nfunction decodeString(value) {\n return value.replace(characterEscapeOrReference, decode);\n}\nfunction decode($0, $1, $2) {\n if ($1) {\n return $1;\n }\n const head = $2.charCodeAt(0);\n if (head === 35) {\n const head2 = $2.charCodeAt(1);\n const hex = head2 === 120 || head2 === 88;\n return decodeNumericCharacterReference($2.slice(hex ? 2 : 1), hex ? 16 : 10);\n }\n return decodeNamedCharacterReference($2) || $0;\n}\nconst own$6 = {}.hasOwnProperty;\nconst fromMarkdown = function(value, encoding, options) {\n if (typeof encoding !== \"string\") {\n options = encoding;\n encoding = void 0;\n }\n return compiler(options)(\n postprocess(\n parse$2(options).document().write(preprocess()(value, encoding, true))\n )\n );\n};\nfunction compiler(options = {}) {\n const config = configure(\n {\n transforms: [],\n canContainEols: [\n \"emphasis\",\n \"fragment\",\n \"heading\",\n \"paragraph\",\n \"strong\"\n ],\n enter: {\n autolink: opener(link2),\n autolinkProtocol: onenterdata,\n autolinkEmail: onenterdata,\n atxHeading: opener(heading2),\n blockQuote: opener(blockQuote2),\n characterEscape: onenterdata,\n characterReference: onenterdata,\n codeFenced: opener(codeFlow),\n codeFencedFenceInfo: buffer,\n codeFencedFenceMeta: buffer,\n codeIndented: opener(codeFlow, buffer),\n codeText: opener(codeText2, buffer),\n codeTextData: onenterdata,\n data: onenterdata,\n codeFlowValue: onenterdata,\n definition: opener(definition2),\n definitionDestinationString: buffer,\n definitionLabelString: buffer,\n definitionTitleString: buffer,\n emphasis: opener(emphasis2),\n hardBreakEscape: opener(hardBreak2),\n hardBreakTrailing: opener(hardBreak2),\n htmlFlow: opener(html2, buffer),\n htmlFlowData: onenterdata,\n htmlText: opener(html2, buffer),\n htmlTextData: onenterdata,\n image: opener(image2),\n label: buffer,\n link: opener(link2),\n listItem: opener(listItem2),\n listItemValue: onenterlistitemvalue,\n listOrdered: opener(list2, onenterlistordered),\n listUnordered: opener(list2),\n paragraph: opener(paragraph2),\n reference: onenterreference,\n referenceString: buffer,\n resourceDestinationString: buffer,\n resourceTitleString: buffer,\n setextHeading: opener(heading2),\n strong: opener(strong2),\n thematicBreak: opener(thematicBreak2)\n },\n exit: {\n atxHeading: closer(),\n atxHeadingSequence: onexitatxheadingsequence,\n autolink: closer(),\n autolinkEmail: onexitautolinkemail,\n autolinkProtocol: onexitautolinkprotocol,\n blockQuote: closer(),\n characterEscapeValue: onexitdata,\n characterReferenceMarkerHexadecimal: onexitcharacterreferencemarker,\n characterReferenceMarkerNumeric: onexitcharacterreferencemarker,\n characterReferenceValue: onexitcharacterreferencevalue,\n codeFenced: closer(onexitcodefenced),\n codeFencedFence: onexitcodefencedfence,\n codeFencedFenceInfo: onexitcodefencedfenceinfo,\n codeFencedFenceMeta: onexitcodefencedfencemeta,\n codeFlowValue: onexitdata,\n codeIndented: closer(onexitcodeindented),\n codeText: closer(onexitcodetext),\n codeTextData: onexitdata,\n data: onexitdata,\n definition: closer(),\n definitionDestinationString: onexitdefinitiondestinationstring,\n definitionLabelString: onexitdefinitionlabelstring,\n definitionTitleString: onexitdefinitiontitlestring,\n emphasis: closer(),\n hardBreakEscape: closer(onexithardbreak),\n hardBreakTrailing: closer(onexithardbreak),\n htmlFlow: closer(onexithtmlflow),\n htmlFlowData: onexitdata,\n htmlText: closer(onexithtmltext),\n htmlTextData: onexitdata,\n image: closer(onexitimage),\n label: onexitlabel,\n labelText: onexitlabeltext,\n lineEnding: onexitlineending,\n link: closer(onexitlink),\n listItem: closer(),\n listOrdered: closer(),\n listUnordered: closer(),\n paragraph: closer(),\n referenceString: onexitreferencestring,\n resourceDestinationString: onexitresourcedestinationstring,\n resourceTitleString: onexitresourcetitlestring,\n resource: onexitresource,\n setextHeading: closer(onexitsetextheading),\n setextHeadingLineSequence: onexitsetextheadinglinesequence,\n setextHeadingText: onexitsetextheadingtext,\n strong: closer(),\n thematicBreak: closer()\n }\n },\n options.mdastExtensions || []\n );\n const data = {};\n return compile;\n function compile(events) {\n let tree = {\n type: \"root\",\n children: []\n };\n const stack = [tree];\n const tokenStack = [];\n const listStack = [];\n const context = {\n stack,\n tokenStack,\n config,\n enter,\n exit: exit2,\n buffer,\n resume,\n setData,\n getData\n };\n let index2 = -1;\n while (++index2 < events.length) {\n if (events[index2][1].type === \"listOrdered\" || events[index2][1].type === \"listUnordered\") {\n if (events[index2][0] === \"enter\") {\n listStack.push(index2);\n } else {\n const tail = listStack.pop();\n index2 = prepareList(events, tail, index2);\n }\n }\n }\n index2 = -1;\n while (++index2 < events.length) {\n const handler = config[events[index2][0]];\n if (own$6.call(handler, events[index2][1].type)) {\n handler[events[index2][1].type].call(\n Object.assign(\n {\n sliceSerialize: events[index2][2].sliceSerialize\n },\n context\n ),\n events[index2][1]\n );\n }\n }\n if (tokenStack.length > 0) {\n const tail = tokenStack[tokenStack.length - 1];\n const handler = tail[1] || defaultOnError;\n handler.call(context, void 0, tail[0]);\n }\n tree.position = {\n start: point2(\n events.length > 0 ? events[0][1].start : {\n line: 1,\n column: 1,\n offset: 0\n }\n ),\n end: point2(\n events.length > 0 ? events[events.length - 2][1].end : {\n line: 1,\n column: 1,\n offset: 0\n }\n )\n };\n index2 = -1;\n while (++index2 < config.transforms.length) {\n tree = config.transforms[index2](tree) || tree;\n }\n return tree;\n }\n function prepareList(events, start, length) {\n let index2 = start - 1;\n let containerBalance = -1;\n let listSpread = false;\n let listItem3;\n let lineIndex;\n let firstBlankLineIndex;\n let atMarker;\n while (++index2 <= length) {\n const event = events[index2];\n if (event[1].type === \"listUnordered\" || event[1].type === \"listOrdered\" || event[1].type === \"blockQuote\") {\n if (event[0] === \"enter\") {\n containerBalance++;\n } else {\n containerBalance--;\n }\n atMarker = void 0;\n } else if (event[1].type === \"lineEndingBlank\") {\n if (event[0] === \"enter\") {\n if (listItem3 && !atMarker && !containerBalance && !firstBlankLineIndex) {\n firstBlankLineIndex = index2;\n }\n atMarker = void 0;\n }\n } else if (event[1].type === \"linePrefix\" || event[1].type === \"listItemValue\" || event[1].type === \"listItemMarker\" || event[1].type === \"listItemPrefix\" || event[1].type === \"listItemPrefixWhitespace\")\n ;\n else {\n atMarker = void 0;\n }\n if (!containerBalance && event[0] === \"enter\" && event[1].type === \"listItemPrefix\" || containerBalance === -1 && event[0] === \"exit\" && (event[1].type === \"listUnordered\" || event[1].type === \"listOrdered\")) {\n if (listItem3) {\n let tailIndex = index2;\n lineIndex = void 0;\n while (tailIndex--) {\n const tailEvent = events[tailIndex];\n if (tailEvent[1].type === \"lineEnding\" || tailEvent[1].type === \"lineEndingBlank\") {\n if (tailEvent[0] === \"exit\")\n continue;\n if (lineIndex) {\n events[lineIndex][1].type = \"lineEndingBlank\";\n listSpread = true;\n }\n tailEvent[1].type = \"lineEnding\";\n lineIndex = tailIndex;\n } else if (tailEvent[1].type === \"linePrefix\" || tailEvent[1].type === \"blockQuotePrefix\" || tailEvent[1].type === \"blockQuotePrefixWhitespace\" || tailEvent[1].type === \"blockQuoteMarker\" || tailEvent[1].type === \"listItemIndent\")\n ;\n else {\n break;\n }\n }\n if (firstBlankLineIndex && (!lineIndex || firstBlankLineIndex < lineIndex)) {\n listItem3._spread = true;\n }\n listItem3.end = Object.assign(\n {},\n lineIndex ? events[lineIndex][1].start : event[1].end\n );\n events.splice(lineIndex || index2, 0, [\"exit\", listItem3, event[2]]);\n index2++;\n length++;\n }\n if (event[1].type === \"listItemPrefix\") {\n listItem3 = {\n type: \"listItem\",\n _spread: false,\n start: Object.assign({}, event[1].start)\n };\n events.splice(index2, 0, [\"enter\", listItem3, event[2]]);\n index2++;\n length++;\n firstBlankLineIndex = void 0;\n atMarker = true;\n }\n }\n }\n events[start][1]._spread = listSpread;\n return length;\n }\n function setData(key, value) {\n data[key] = value;\n }\n function getData(key) {\n return data[key];\n }\n function point2(d) {\n return {\n line: d.line,\n column: d.column,\n offset: d.offset\n };\n }\n function opener(create2, and) {\n return open;\n function open(token) {\n enter.call(this, create2(token), token);\n if (and)\n and.call(this, token);\n }\n }\n function buffer() {\n this.stack.push({\n type: \"fragment\",\n children: []\n });\n }\n function enter(node, token, errorHandler) {\n const parent = this.stack[this.stack.length - 1];\n parent.children.push(node);\n this.stack.push(node);\n this.tokenStack.push([token, errorHandler]);\n node.position = {\n start: point2(token.start)\n };\n return node;\n }\n function closer(and) {\n return close;\n function close(token) {\n if (and)\n and.call(this, token);\n exit2.call(this, token);\n }\n }\n function exit2(token, onExitError) {\n const node = this.stack.pop();\n const open = this.tokenStack.pop();\n if (!open) {\n throw new Error(\n \"Cannot close `\" + token.type + \"` (\" + stringifyPosition({\n start: token.start,\n end: token.end\n }) + \"): it\\u2019s not open\"\n );\n } else if (open[0].type !== token.type) {\n if (onExitError) {\n onExitError.call(this, token, open[0]);\n } else {\n const handler = open[1] || defaultOnError;\n handler.call(this, token, open[0]);\n }\n }\n node.position.end = point2(token.end);\n return node;\n }\n function resume() {\n return toString(this.stack.pop());\n }\n function onenterlistordered() {\n setData(\"expectingFirstListItemValue\", true);\n }\n function onenterlistitemvalue(token) {\n if (getData(\"expectingFirstListItemValue\")) {\n const ancestor = this.stack[this.stack.length - 2];\n ancestor.start = Number.parseInt(this.sliceSerialize(token), 10);\n setData(\"expectingFirstListItemValue\");\n }\n }\n function onexitcodefencedfenceinfo() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.lang = data2;\n }\n function onexitcodefencedfencemeta() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.meta = data2;\n }\n function onexitcodefencedfence() {\n if (getData(\"flowCodeInside\"))\n return;\n this.buffer();\n setData(\"flowCodeInside\", true);\n }\n function onexitcodefenced() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.value = data2.replace(/^(\\r?\\n|\\r)|(\\r?\\n|\\r)$/g, \"\");\n setData(\"flowCodeInside\");\n }\n function onexitcodeindented() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.value = data2.replace(/(\\r?\\n|\\r)$/g, \"\");\n }\n function onexitdefinitionlabelstring(token) {\n const label = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.label = label;\n node.identifier = normalizeIdentifier(\n this.sliceSerialize(token)\n ).toLowerCase();\n }\n function onexitdefinitiontitlestring() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.title = data2;\n }\n function onexitdefinitiondestinationstring() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.url = data2;\n }\n function onexitatxheadingsequence(token) {\n const node = this.stack[this.stack.length - 1];\n if (!node.depth) {\n const depth = this.sliceSerialize(token).length;\n node.depth = depth;\n }\n }\n function onexitsetextheadingtext() {\n setData(\"setextHeadingSlurpLineEnding\", true);\n }\n function onexitsetextheadinglinesequence(token) {\n const node = this.stack[this.stack.length - 1];\n node.depth = this.sliceSerialize(token).charCodeAt(0) === 61 ? 1 : 2;\n }\n function onexitsetextheading() {\n setData(\"setextHeadingSlurpLineEnding\");\n }\n function onenterdata(token) {\n const parent = this.stack[this.stack.length - 1];\n let tail = parent.children[parent.children.length - 1];\n if (!tail || tail.type !== \"text\") {\n tail = text2();\n tail.position = {\n start: point2(token.start)\n };\n parent.children.push(tail);\n }\n this.stack.push(tail);\n }\n function onexitdata(token) {\n const tail = this.stack.pop();\n tail.value += this.sliceSerialize(token);\n tail.position.end = point2(token.end);\n }\n function onexitlineending(token) {\n const context = this.stack[this.stack.length - 1];\n if (getData(\"atHardBreak\")) {\n const tail = context.children[context.children.length - 1];\n tail.position.end = point2(token.end);\n setData(\"atHardBreak\");\n return;\n }\n if (!getData(\"setextHeadingSlurpLineEnding\") && config.canContainEols.includes(context.type)) {\n onenterdata.call(this, token);\n onexitdata.call(this, token);\n }\n }\n function onexithardbreak() {\n setData(\"atHardBreak\", true);\n }\n function onexithtmlflow() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.value = data2;\n }\n function onexithtmltext() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.value = data2;\n }\n function onexitcodetext() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.value = data2;\n }\n function onexitlink() {\n const context = this.stack[this.stack.length - 1];\n if (getData(\"inReference\")) {\n context.type += \"Reference\";\n context.referenceType = getData(\"referenceType\") || \"shortcut\";\n delete context.url;\n delete context.title;\n } else {\n delete context.identifier;\n delete context.label;\n }\n setData(\"referenceType\");\n }\n function onexitimage() {\n const context = this.stack[this.stack.length - 1];\n if (getData(\"inReference\")) {\n context.type += \"Reference\";\n context.referenceType = getData(\"referenceType\") || \"shortcut\";\n delete context.url;\n delete context.title;\n } else {\n delete context.identifier;\n delete context.label;\n }\n setData(\"referenceType\");\n }\n function onexitlabeltext(token) {\n const ancestor = this.stack[this.stack.length - 2];\n const string2 = this.sliceSerialize(token);\n ancestor.label = decodeString(string2);\n ancestor.identifier = normalizeIdentifier(string2).toLowerCase();\n }\n function onexitlabel() {\n const fragment = this.stack[this.stack.length - 1];\n const value = this.resume();\n const node = this.stack[this.stack.length - 1];\n setData(\"inReference\", true);\n if (node.type === \"link\") {\n node.children = fragment.children;\n } else {\n node.alt = value;\n }\n }\n function onexitresourcedestinationstring() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.url = data2;\n }\n function onexitresourcetitlestring() {\n const data2 = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.title = data2;\n }\n function onexitresource() {\n setData(\"inReference\");\n }\n function onenterreference() {\n setData(\"referenceType\", \"collapsed\");\n }\n function onexitreferencestring(token) {\n const label = this.resume();\n const node = this.stack[this.stack.length - 1];\n node.label = label;\n node.identifier = normalizeIdentifier(\n this.sliceSerialize(token)\n ).toLowerCase();\n setData(\"referenceType\", \"full\");\n }\n function onexitcharacterreferencemarker(token) {\n setData(\"characterReferenceType\", token.type);\n }\n function onexitcharacterreferencevalue(token) {\n const data2 = this.sliceSerialize(token);\n const type = getData(\"characterReferenceType\");\n let value;\n if (type) {\n value = decodeNumericCharacterReference(\n data2,\n type === \"characterReferenceMarkerNumeric\" ? 10 : 16\n );\n setData(\"characterReferenceType\");\n } else {\n value = decodeNamedCharacterReference(data2);\n }\n const tail = this.stack.pop();\n tail.value += value;\n tail.position.end = point2(token.end);\n }\n function onexitautolinkprotocol(token) {\n onexitdata.call(this, token);\n const node = this.stack[this.stack.length - 1];\n node.url = this.sliceSerialize(token);\n }\n function onexitautolinkemail(token) {\n onexitdata.call(this, token);\n const node = this.stack[this.stack.length - 1];\n node.url = \"mailto:\" + this.sliceSerialize(token);\n }\n function blockQuote2() {\n return {\n type: \"blockquote\",\n children: []\n };\n }\n function codeFlow() {\n return {\n type: \"code\",\n lang: null,\n meta: null,\n value: \"\"\n };\n }\n function codeText2() {\n return {\n type: \"inlineCode\",\n value: \"\"\n };\n }\n function definition2() {\n return {\n type: \"definition\",\n identifier: \"\",\n label: null,\n title: null,\n url: \"\"\n };\n }\n function emphasis2() {\n return {\n type: \"emphasis\",\n children: []\n };\n }\n function heading2() {\n return {\n type: \"heading\",\n depth: void 0,\n children: []\n };\n }\n function hardBreak2() {\n return {\n type: \"break\"\n };\n }\n function html2() {\n return {\n type: \"html\",\n value: \"\"\n };\n }\n function image2() {\n return {\n type: \"image\",\n title: null,\n url: \"\",\n alt: null\n };\n }\n function link2() {\n return {\n type: \"link\",\n title: null,\n url: \"\",\n children: []\n };\n }\n function list2(token) {\n return {\n type: \"list\",\n ordered: token.type === \"listOrdered\",\n start: null,\n spread: token._spread,\n children: []\n };\n }\n function listItem2(token) {\n return {\n type: \"listItem\",\n spread: token._spread,\n checked: null,\n children: []\n };\n }\n function paragraph2() {\n return {\n type: \"paragraph\",\n children: []\n };\n }\n function strong2() {\n return {\n type: \"strong\",\n children: []\n };\n }\n function text2() {\n return {\n type: \"text\",\n value: \"\"\n };\n }\n function thematicBreak2() {\n return {\n type: \"thematicBreak\"\n };\n }\n}\nfunction configure(combined, extensions) {\n let index2 = -1;\n while (++index2 < extensions.length) {\n const value = extensions[index2];\n if (Array.isArray(value)) {\n configure(combined, value);\n } else {\n extension(combined, value);\n }\n }\n return combined;\n}\nfunction extension(combined, extension2) {\n let key;\n for (key in extension2) {\n if (own$6.call(extension2, key)) {\n const list2 = key === \"canContainEols\" || key === \"transforms\";\n const maybe = own$6.call(combined, key) ? combined[key] : void 0;\n const left = maybe || (combined[key] = list2 ? [] : {});\n const right = extension2[key];\n if (right) {\n if (list2) {\n combined[key] = [...left, ...right];\n } else {\n Object.assign(left, right);\n }\n }\n }\n }\n}\nfunction defaultOnError(left, right) {\n if (left) {\n throw new Error(\n \"Cannot close `\" + left.type + \"` (\" + stringifyPosition({\n start: left.start,\n end: left.end\n }) + \"): a different token (`\" + right.type + \"`, \" + stringifyPosition({\n start: right.start,\n end: right.end\n }) + \") is open\"\n );\n } else {\n throw new Error(\n \"Cannot close document, a token (`\" + right.type + \"`, \" + stringifyPosition({\n start: right.start,\n end: right.end\n }) + \") is still open\"\n );\n }\n}\nfunction remarkParse(options) {\n const parser = (doc) => {\n const settings = this.data(\"settings\");\n return fromMarkdown(\n doc,\n Object.assign({}, settings, options, {\n extensions: this.data(\"micromarkExtensions\") || [],\n mdastExtensions: this.data(\"fromMarkdownExtensions\") || []\n })\n );\n };\n Object.assign(this, { Parser: parser });\n}\nconst convert$2 = function(test) {\n if (test === void 0 || test === null) {\n return ok$1;\n }\n if (typeof test === \"string\") {\n return typeFactory$1(test);\n }\n if (typeof test === \"object\") {\n return Array.isArray(test) ? anyFactory$1(test) : propsFactory(test);\n }\n if (typeof test === \"function\") {\n return castFactory(test);\n }\n throw new Error(\"Expected function, string, or object as test\");\n};\nfunction anyFactory$1(tests) {\n const checks2 = [];\n let index2 = -1;\n while (++index2 < tests.length) {\n checks2[index2] = convert$2(tests[index2]);\n }\n return castFactory(any);\n function any(...parameters) {\n let index3 = -1;\n while (++index3 < checks2.length) {\n if (checks2[index3].call(this, ...parameters))\n return true;\n }\n return false;\n }\n}\nfunction propsFactory(check) {\n return castFactory(all2);\n function all2(node) {\n let key;\n for (key in check) {\n if (node[key] !== check[key])\n return false;\n }\n return true;\n }\n}\nfunction typeFactory$1(check) {\n return castFactory(type);\n function type(node) {\n return node && node.type === check;\n }\n}\nfunction castFactory(check) {\n return assertion;\n function assertion(...parameters) {\n return Boolean(check.call(this, ...parameters));\n }\n}\nfunction ok$1() {\n return true;\n}\nfunction color(d) {\n return d;\n}\nconst CONTINUE$2 = true;\nconst SKIP$2 = \"skip\";\nconst EXIT$2 = false;\nconst visitParents$2 = function(tree, test, visitor2, reverse) {\n if (typeof test === \"function\" && typeof visitor2 !== \"function\") {\n reverse = visitor2;\n visitor2 = test;\n test = null;\n }\n const is = convert$2(test);\n const step = reverse ? -1 : 1;\n factory2(tree, null, [])();\n function factory2(node, index2, parents) {\n const value = typeof node === \"object\" && node !== null ? node : {};\n let name;\n if (typeof value.type === \"string\") {\n name = typeof value.tagName === \"string\" ? value.tagName : typeof value.name === \"string\" ? value.name : void 0;\n Object.defineProperty(visit2, \"name\", {\n value: \"node (\" + color(value.type + (name ? \"<\" + name + \">\" : \"\")) + \")\"\n });\n }\n return visit2;\n function visit2() {\n let result = [];\n let subresult;\n let offset;\n let grandparents;\n if (!test || is(node, index2, parents[parents.length - 1] || null)) {\n result = toResult$1(visitor2(node, parents));\n if (result[0] === EXIT$2) {\n return result;\n }\n }\n if (node.children && result[0] !== SKIP$2) {\n offset = (reverse ? node.children.length : -1) + step;\n grandparents = parents.concat(node);\n while (offset > -1 && offset < node.children.length) {\n subresult = factory2(node.children[offset], offset, grandparents)();\n if (subresult[0] === EXIT$2) {\n return subresult;\n }\n offset = typeof subresult[1] === \"number\" ? subresult[1] : offset + step;\n }\n }\n return result;\n }\n }\n};\nfunction toResult$1(value) {\n if (Array.isArray(value)) {\n return value;\n }\n if (typeof value === \"number\") {\n return [CONTINUE$2, value];\n }\n return [value];\n}\nconst visit$2 = function(tree, test, visitor2, reverse) {\n if (typeof test === \"function\" && typeof visitor2 !== \"function\") {\n reverse = visitor2;\n visitor2 = test;\n test = null;\n }\n visitParents$2(tree, test, overload, reverse);\n function overload(node, parents) {\n const parent = parents[parents.length - 1];\n return visitor2(\n node,\n parent ? parent.children.indexOf(node) : null,\n parent\n );\n }\n};\nconst find$1 = /[\\t ]*(?:\\r?\\n|\\r)/g;\nfunction remarkBreaks() {\n return (tree) => {\n visit$2(tree, \"text\", (node, index2, parent) => {\n const result = [];\n let start = 0;\n find$1.lastIndex = 0;\n let match = find$1.exec(node.value);\n while (match) {\n const position2 = match.index;\n if (start !== position2) {\n result.push({ type: \"text\", value: node.value.slice(start, position2) });\n }\n result.push({ type: \"break\" });\n start = position2 + match[0].length;\n match = find$1.exec(node.value);\n }\n if (result.length > 0 && parent && typeof index2 === \"number\") {\n if (start < node.value.length) {\n result.push({ type: \"text\", value: node.value.slice(start) });\n }\n parent.children.splice(index2, 1, ...result);\n return index2 + result.length;\n }\n });\n };\n}\nvar u = function(type, props, value) {\n var node = { type: String(type) };\n if ((value === void 0 || value === null) && (typeof props === \"string\" || Array.isArray(props))) {\n value = props;\n } else {\n Object.assign(node, props);\n }\n if (Array.isArray(value)) {\n node.children = value;\n } else if (value !== void 0 && value !== null) {\n node.value = String(value);\n }\n return node;\n};\nconst own$5 = {}.hasOwnProperty;\nfunction unknown(h, node) {\n const data = node.data || {};\n if (\"value\" in node && !(own$5.call(data, \"hName\") || own$5.call(data, \"hProperties\") || own$5.call(data, \"hChildren\"))) {\n return h.augment(node, u(\"text\", node.value));\n }\n return h(node, \"div\", all(h, node));\n}\nfunction one(h, node, parent) {\n const type = node && node.type;\n let fn;\n if (!type) {\n throw new Error(\"Expected node, got `\" + node + \"`\");\n }\n if (own$5.call(h.handlers, type)) {\n fn = h.handlers[type];\n } else if (h.passThrough && h.passThrough.includes(type)) {\n fn = returnNode;\n } else {\n fn = h.unknownHandler;\n }\n return (typeof fn === \"function\" ? fn : unknown)(h, node, parent);\n}\nfunction returnNode(h, node) {\n return \"children\" in node ? { ...node, children: all(h, node) } : node;\n}\nfunction all(h, parent) {\n const values = [];\n if (\"children\" in parent) {\n const nodes = parent.children;\n let index2 = -1;\n while (++index2 < nodes.length) {\n const result = one(h, nodes[index2], parent);\n if (result) {\n if (index2 && nodes[index2 - 1].type === \"break\") {\n if (!Array.isArray(result) && result.type === \"text\") {\n result.value = result.value.replace(/^\\s+/, \"\");\n }\n if (!Array.isArray(result) && result.type === \"element\") {\n const head = result.children[0];\n if (head && head.type === \"text\") {\n head.value = head.value.replace(/^\\s+/, \"\");\n }\n }\n }\n if (Array.isArray(result)) {\n values.push(...result);\n } else {\n values.push(result);\n }\n }\n }\n }\n return values;\n}\nconst pointStart = point(\"start\");\nconst pointEnd = point(\"end\");\nfunction point(type) {\n return point2;\n function point2(node) {\n const point3 = node && node.position && node.position[type] || {};\n return {\n line: point3.line || null,\n column: point3.column || null,\n offset: point3.offset > -1 ? point3.offset : null\n };\n }\n}\nfunction generated(node) {\n return !node || !node.position || !node.position.start || !node.position.start.line || !node.position.start.column || !node.position.end || !node.position.end.line || !node.position.end.column;\n}\nconst own$4 = {}.hasOwnProperty;\nfunction definitions(node) {\n const cache = /* @__PURE__ */ Object.create(null);\n if (!node || !node.type) {\n throw new Error(\"mdast-util-definitions expected node\");\n }\n visit$2(node, \"definition\", (definition3) => {\n const id = clean(definition3.identifier);\n if (id && !own$4.call(cache, id)) {\n cache[id] = definition3;\n }\n });\n return definition2;\n function definition2(identifier) {\n const id = clean(identifier);\n return id && own$4.call(cache, id) ? cache[id] : null;\n }\n}\nfunction clean(value) {\n return String(value || \"\").toUpperCase();\n}\nconst characterReferences = { '\"': \"quot\", \"&\": \"amp\", \"<\": \"lt\", \">\": \"gt\" };\nfunction encode$1(value) {\n return value.replace(/[\"&<>]/g, replace);\n function replace(value2) {\n return \"&\" + characterReferences[value2] + \";\";\n }\n}\nfunction sanitizeUri(url, protocol) {\n const value = encode$1(normalizeUri(url || \"\"));\n if (!protocol) {\n return value;\n }\n const colon = value.indexOf(\":\");\n const questionMark = value.indexOf(\"?\");\n const numberSign = value.indexOf(\"#\");\n const slash = value.indexOf(\"/\");\n if (colon < 0 || slash > -1 && colon > slash || questionMark > -1 && colon > questionMark || numberSign > -1 && colon > numberSign || protocol.test(value.slice(0, colon))) {\n return value;\n }\n return \"\";\n}\nfunction normalizeUri(value) {\n const result = [];\n let index2 = -1;\n let start = 0;\n let skip = 0;\n while (++index2 < value.length) {\n const code2 = value.charCodeAt(index2);\n let replace = \"\";\n if (code2 === 37 && asciiAlphanumeric(value.charCodeAt(index2 + 1)) && asciiAlphanumeric(value.charCodeAt(index2 + 2))) {\n skip = 2;\n } else if (code2 < 128) {\n if (!/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(code2))) {\n replace = String.fromCharCode(code2);\n }\n } else if (code2 > 55295 && code2 < 57344) {\n const next = value.charCodeAt(index2 + 1);\n if (code2 < 56320 && next > 56319 && next < 57344) {\n replace = String.fromCharCode(code2, next);\n skip = 1;\n } else {\n replace = \"\\uFFFD\";\n }\n } else {\n replace = String.fromCharCode(code2);\n }\n if (replace) {\n result.push(value.slice(start, index2), encodeURIComponent(replace));\n start = index2 + skip + 1;\n replace = \"\";\n }\n if (skip) {\n index2 += skip;\n skip = 0;\n }\n }\n return result.join(\"\") + value.slice(start);\n}\nfunction wrap(nodes, loose) {\n const result = [];\n let index2 = -1;\n if (loose) {\n result.push(u(\"text\", \"\\n\"));\n }\n while (++index2 < nodes.length) {\n if (index2)\n result.push(u(\"text\", \"\\n\"));\n result.push(nodes[index2]);\n }\n if (loose && nodes.length > 0) {\n result.push(u(\"text\", \"\\n\"));\n }\n return result;\n}\nfunction footer(h) {\n let index2 = -1;\n const listItems = [];\n while (++index2 < h.footnoteOrder.length) {\n const def = h.footnoteById[h.footnoteOrder[index2].toUpperCase()];\n if (!def) {\n continue;\n }\n const content2 = all(h, def);\n const id = String(def.identifier);\n const safeId = sanitizeUri(id.toLowerCase());\n let referenceIndex = 0;\n const backReferences = [];\n while (++referenceIndex <= h.footnoteCounts[id]) {\n const backReference = {\n type: \"element\",\n tagName: \"a\",\n properties: {\n href: \"#\" + h.clobberPrefix + \"fnref-\" + safeId + (referenceIndex > 1 ? \"-\" + referenceIndex : \"\"),\n dataFootnoteBackref: true,\n className: [\"data-footnote-backref\"],\n ariaLabel: h.footnoteBackLabel\n },\n children: [{ type: \"text\", value: \"\\u21A9\" }]\n };\n if (referenceIndex > 1) {\n backReference.children.push({\n type: \"element\",\n tagName: \"sup\",\n children: [{ type: \"text\", value: String(referenceIndex) }]\n });\n }\n if (backReferences.length > 0) {\n backReferences.push({ type: \"text\", value: \" \" });\n }\n backReferences.push(backReference);\n }\n const tail = content2[content2.length - 1];\n if (tail && tail.type === \"element\" && tail.tagName === \"p\") {\n const tailTail = tail.children[tail.children.length - 1];\n if (tailTail && tailTail.type === \"text\") {\n tailTail.value += \" \";\n } else {\n tail.children.push({ type: \"text\", value: \" \" });\n }\n tail.children.push(...backReferences);\n } else {\n content2.push(...backReferences);\n }\n const listItem2 = {\n type: \"element\",\n tagName: \"li\",\n properties: { id: h.clobberPrefix + \"fn-\" + safeId },\n children: wrap(content2, true)\n };\n if (def.position) {\n listItem2.position = def.position;\n }\n listItems.push(listItem2);\n }\n if (listItems.length === 0) {\n return null;\n }\n return {\n type: \"element\",\n tagName: \"section\",\n properties: { dataFootnotes: true, className: [\"footnotes\"] },\n children: [\n {\n type: \"element\",\n tagName: h.footnoteLabelTagName,\n properties: JSON.parse(JSON.stringify(h.footnoteLabelProperties)),\n children: [u(\"text\", h.footnoteLabel)]\n },\n { type: \"text\", value: \"\\n\" },\n {\n type: \"element\",\n tagName: \"ol\",\n properties: {},\n children: wrap(listItems, true)\n },\n { type: \"text\", value: \"\\n\" }\n ]\n };\n}\nfunction blockquote(h, node) {\n return h(node, \"blockquote\", wrap(all(h, node), true));\n}\nfunction hardBreak(h, node) {\n return [h(node, \"br\"), u(\"text\", \"\\n\")];\n}\nfunction code(h, node) {\n const value = node.value ? node.value + \"\\n\" : \"\";\n const lang = node.lang && node.lang.match(/^[^ \\t]+(?=[ \\t]|$)/);\n const props = {};\n if (lang) {\n props.className = [\"language-\" + lang];\n }\n const code2 = h(node, \"code\", props, [u(\"text\", value)]);\n if (node.meta) {\n code2.data = { meta: node.meta };\n }\n return h(node.position, \"pre\", [code2]);\n}\nfunction strikethrough(h, node) {\n return h(node, \"del\", all(h, node));\n}\nfunction emphasis(h, node) {\n return h(node, \"em\", all(h, node));\n}\nfunction footnoteReference(h, node) {\n const id = String(node.identifier);\n const safeId = sanitizeUri(id.toLowerCase());\n const index2 = h.footnoteOrder.indexOf(id);\n let counter;\n if (index2 === -1) {\n h.footnoteOrder.push(id);\n h.footnoteCounts[id] = 1;\n counter = h.footnoteOrder.length;\n } else {\n h.footnoteCounts[id]++;\n counter = index2 + 1;\n }\n const reuseCounter = h.footnoteCounts[id];\n return h(node, \"sup\", [\n h(\n node.position,\n \"a\",\n {\n href: \"#\" + h.clobberPrefix + \"fn-\" + safeId,\n id: h.clobberPrefix + \"fnref-\" + safeId + (reuseCounter > 1 ? \"-\" + reuseCounter : \"\"),\n dataFootnoteRef: true,\n ariaDescribedBy: \"footnote-label\"\n },\n [u(\"text\", String(counter))]\n )\n ]);\n}\nfunction footnote(h, node) {\n const footnoteById = h.footnoteById;\n let no = 1;\n while (no in footnoteById)\n no++;\n const identifier = String(no);\n footnoteById[identifier] = {\n type: \"footnoteDefinition\",\n identifier,\n children: [{ type: \"paragraph\", children: node.children }],\n position: node.position\n };\n return footnoteReference(h, {\n type: \"footnoteReference\",\n identifier,\n position: node.position\n });\n}\nfunction heading(h, node) {\n return h(node, \"h\" + node.depth, all(h, node));\n}\nfunction html$2(h, node) {\n return h.dangerous ? h.augment(node, u(\"raw\", node.value)) : null;\n}\nvar encodeCache = {};\nfunction getEncodeCache(exclude) {\n var i, ch, cache = encodeCache[exclude];\n if (cache) {\n return cache;\n }\n cache = encodeCache[exclude] = [];\n for (i = 0; i < 128; i++) {\n ch = String.fromCharCode(i);\n if (/^[0-9a-z]$/i.test(ch)) {\n cache.push(ch);\n } else {\n cache.push(\"%\" + (\"0\" + i.toString(16).toUpperCase()).slice(-2));\n }\n }\n for (i = 0; i < exclude.length; i++) {\n cache[exclude.charCodeAt(i)] = exclude[i];\n }\n return cache;\n}\nfunction encode(string2, exclude, keepEscaped) {\n var i, l, code2, nextCode, cache, result = \"\";\n if (typeof exclude !== \"string\") {\n keepEscaped = exclude;\n exclude = encode.defaultChars;\n }\n if (typeof keepEscaped === \"undefined\") {\n keepEscaped = true;\n }\n cache = getEncodeCache(exclude);\n for (i = 0, l = string2.length; i < l; i++) {\n code2 = string2.charCodeAt(i);\n if (keepEscaped && code2 === 37 && i + 2 < l) {\n if (/^[0-9a-f]{2}$/i.test(string2.slice(i + 1, i + 3))) {\n result += string2.slice(i, i + 3);\n i += 2;\n continue;\n }\n }\n if (code2 < 128) {\n result += cache[code2];\n continue;\n }\n if (code2 >= 55296 && code2 <= 57343) {\n if (code2 >= 55296 && code2 <= 56319 && i + 1 < l) {\n nextCode = string2.charCodeAt(i + 1);\n if (nextCode >= 56320 && nextCode <= 57343) {\n result += encodeURIComponent(string2[i] + string2[i + 1]);\n i++;\n continue;\n }\n }\n result += \"%EF%BF%BD\";\n continue;\n }\n result += encodeURIComponent(string2[i]);\n }\n return result;\n}\nencode.defaultChars = \";/?:@&=+$,-_.!~*'()#\";\nencode.componentChars = \"-_.!~*'()\";\nvar encode_1 = encode;\nfunction revert(h, node) {\n const subtype = node.referenceType;\n let suffix = \"]\";\n if (subtype === \"collapsed\") {\n suffix += \"[]\";\n } else if (subtype === \"full\") {\n suffix += \"[\" + (node.label || node.identifier) + \"]\";\n }\n if (node.type === \"imageReference\") {\n return u(\"text\", \"![\" + node.alt + suffix);\n }\n const contents = all(h, node);\n const head = contents[0];\n if (head && head.type === \"text\") {\n head.value = \"[\" + head.value;\n } else {\n contents.unshift(u(\"text\", \"[\"));\n }\n const tail = contents[contents.length - 1];\n if (tail && tail.type === \"text\") {\n tail.value += suffix;\n } else {\n contents.push(u(\"text\", suffix));\n }\n return contents;\n}\nfunction imageReference(h, node) {\n const def = h.definition(node.identifier);\n if (!def) {\n return revert(h, node);\n }\n const props = { src: encode_1(def.url || \"\"), alt: node.alt };\n if (def.title !== null && def.title !== void 0) {\n props.title = def.title;\n }\n return h(node, \"img\", props);\n}\nfunction image(h, node) {\n const props = { src: encode_1(node.url), alt: node.alt };\n if (node.title !== null && node.title !== void 0) {\n props.title = node.title;\n }\n return h(node, \"img\", props);\n}\nfunction inlineCode(h, node) {\n return h(node, \"code\", [u(\"text\", node.value.replace(/\\r?\\n|\\r/g, \" \"))]);\n}\nfunction linkReference(h, node) {\n const def = h.definition(node.identifier);\n if (!def) {\n return revert(h, node);\n }\n const props = { href: encode_1(def.url || \"\") };\n if (def.title !== null && def.title !== void 0) {\n props.title = def.title;\n }\n return h(node, \"a\", props, all(h, node));\n}\nfunction link(h, node) {\n const props = { href: encode_1(node.url) };\n if (node.title !== null && node.title !== void 0) {\n props.title = node.title;\n }\n return h(node, \"a\", props, all(h, node));\n}\nfunction listItem(h, node, parent) {\n const result = all(h, node);\n const loose = parent ? listLoose(parent) : listItemLoose(node);\n const props = {};\n const wrapped = [];\n if (typeof node.checked === \"boolean\") {\n let paragraph2;\n if (result[0] && result[0].type === \"element\" && result[0].tagName === \"p\") {\n paragraph2 = result[0];\n } else {\n paragraph2 = h(null, \"p\", []);\n result.unshift(paragraph2);\n }\n if (paragraph2.children.length > 0) {\n paragraph2.children.unshift(u(\"text\", \" \"));\n }\n paragraph2.children.unshift(\n h(null, \"input\", {\n type: \"checkbox\",\n checked: node.checked,\n disabled: true\n })\n );\n props.className = [\"task-list-item\"];\n }\n let index2 = -1;\n while (++index2 < result.length) {\n const child = result[index2];\n if (loose || index2 !== 0 || child.type !== \"element\" || child.tagName !== \"p\") {\n wrapped.push(u(\"text\", \"\\n\"));\n }\n if (child.type === \"element\" && child.tagName === \"p\" && !loose) {\n wrapped.push(...child.children);\n } else {\n wrapped.push(child);\n }\n }\n const tail = result[result.length - 1];\n if (tail && (loose || !(\"tagName\" in tail) || tail.tagName !== \"p\")) {\n wrapped.push(u(\"text\", \"\\n\"));\n }\n return h(node, \"li\", props, wrapped);\n}\nfunction listLoose(node) {\n let loose = node.spread;\n const children = node.children;\n let index2 = -1;\n while (!loose && ++index2 < children.length) {\n loose = listItemLoose(children[index2]);\n }\n return Boolean(loose);\n}\nfunction listItemLoose(node) {\n const spread = node.spread;\n return spread === void 0 || spread === null ? node.children.length > 1 : spread;\n}\nfunction list(h, node) {\n const props = {};\n const name = node.ordered ? \"ol\" : \"ul\";\n const items = all(h, node);\n let index2 = -1;\n if (typeof node.start === \"number\" && node.start !== 1) {\n props.start = node.start;\n }\n while (++index2 < items.length) {\n const item = items[index2];\n if (item.type === \"element\" && item.tagName === \"li\" && item.properties && Array.isArray(item.properties.className) && item.properties.className.includes(\"task-list-item\")) {\n props.className = [\"contains-task-list\"];\n break;\n }\n }\n return h(node, name, props, wrap(items, true));\n}\nfunction paragraph(h, node) {\n return h(node, \"p\", all(h, node));\n}\nfunction root$1(h, node) {\n return h.augment(node, u(\"root\", wrap(all(h, node))));\n}\nfunction strong(h, node) {\n return h(node, \"strong\", all(h, node));\n}\nfunction table(h, node) {\n const rows = node.children;\n let index2 = -1;\n const align = node.align || [];\n const result = [];\n while (++index2 < rows.length) {\n const row = rows[index2].children;\n const name = index2 === 0 ? \"th\" : \"td\";\n const out = [];\n let cellIndex = -1;\n const length = node.align ? align.length : row.length;\n while (++cellIndex < length) {\n const cell = row[cellIndex];\n out.push(\n h(cell, name, { align: align[cellIndex] }, cell ? all(h, cell) : [])\n );\n }\n result[index2] = h(rows[index2], \"tr\", wrap(out, true));\n }\n return h(\n node,\n \"table\",\n wrap(\n [h(result[0].position, \"thead\", wrap([result[0]], true))].concat(\n result[1] ? h(\n {\n start: pointStart(result[1]),\n end: pointEnd(result[result.length - 1])\n },\n \"tbody\",\n wrap(result.slice(1), true)\n ) : []\n ),\n true\n )\n );\n}\nconst tab = 9;\nconst space = 32;\nfunction trimLines(value) {\n const source = String(value);\n const search2 = /\\r?\\n|\\r/g;\n let match = search2.exec(source);\n let last = 0;\n const lines = [];\n while (match) {\n lines.push(\n trimLine(source.slice(last, match.index), last > 0, true),\n match[0]\n );\n last = match.index + match[0].length;\n match = search2.exec(source);\n }\n lines.push(trimLine(source.slice(last), last > 0, false));\n return lines.join(\"\");\n}\nfunction trimLine(value, start, end) {\n let startIndex = 0;\n let endIndex = value.length;\n if (start) {\n let code2 = value.codePointAt(startIndex);\n while (code2 === tab || code2 === space) {\n startIndex++;\n code2 = value.codePointAt(startIndex);\n }\n }\n if (end) {\n let code2 = value.codePointAt(endIndex - 1);\n while (code2 === tab || code2 === space) {\n endIndex--;\n code2 = value.codePointAt(endIndex - 1);\n }\n }\n return endIndex > startIndex ? value.slice(startIndex, endIndex) : \"\";\n}\nfunction text$1(h, node) {\n return h.augment(node, u(\"text\", trimLines(String(node.value))));\n}\nfunction thematicBreak(h, node) {\n return h(node, \"hr\");\n}\nconst handlers = {\n blockquote,\n break: hardBreak,\n code,\n delete: strikethrough,\n emphasis,\n footnoteReference,\n footnote,\n heading,\n html: html$2,\n imageReference,\n image,\n inlineCode,\n linkReference,\n link,\n listItem,\n list,\n paragraph,\n root: root$1,\n strong,\n table,\n text: text$1,\n thematicBreak,\n toml: ignore,\n yaml: ignore,\n definition: ignore,\n footnoteDefinition: ignore\n};\nfunction ignore() {\n return null;\n}\nconst own$3 = {}.hasOwnProperty;\nfunction factory(tree, options) {\n const settings = options || {};\n const dangerous = settings.allowDangerousHtml || false;\n const footnoteById = {};\n h.dangerous = dangerous;\n h.clobberPrefix = settings.clobberPrefix === void 0 || settings.clobberPrefix === null ? \"user-content-\" : settings.clobberPrefix;\n h.footnoteLabel = settings.footnoteLabel || \"Footnotes\";\n h.footnoteLabelTagName = settings.footnoteLabelTagName || \"h2\";\n h.footnoteLabelProperties = settings.footnoteLabelProperties || {\n id: \"footnote-label\",\n className: [\"sr-only\"]\n };\n h.footnoteBackLabel = settings.footnoteBackLabel || \"Back to content\";\n h.definition = definitions(tree);\n h.footnoteById = footnoteById;\n h.footnoteOrder = [];\n h.footnoteCounts = {};\n h.augment = augment;\n h.handlers = { ...handlers, ...settings.handlers };\n h.unknownHandler = settings.unknownHandler;\n h.passThrough = settings.passThrough;\n visit$2(tree, \"footnoteDefinition\", (definition2) => {\n const id = String(definition2.identifier).toUpperCase();\n if (!own$3.call(footnoteById, id)) {\n footnoteById[id] = definition2;\n }\n });\n return h;\n function augment(left, right) {\n if (left && \"data\" in left && left.data) {\n const data = left.data;\n if (data.hName) {\n if (right.type !== \"element\") {\n right = {\n type: \"element\",\n tagName: \"\",\n properties: {},\n children: []\n };\n }\n right.tagName = data.hName;\n }\n if (right.type === \"element\" && data.hProperties) {\n right.properties = { ...right.properties, ...data.hProperties };\n }\n if (\"children\" in right && right.children && data.hChildren) {\n right.children = data.hChildren;\n }\n }\n if (left) {\n const ctx = \"type\" in left ? left : { position: left };\n if (!generated(ctx)) {\n right.position = { start: pointStart(ctx), end: pointEnd(ctx) };\n }\n }\n return right;\n }\n function h(node, tagName, props, children) {\n if (Array.isArray(props)) {\n children = props;\n props = {};\n }\n return augment(node, {\n type: \"element\",\n tagName,\n properties: props || {},\n children: children || []\n });\n }\n}\nfunction toHast(tree, options) {\n const h = factory(tree, options);\n const node = one(h, tree, null);\n const foot = footer(h);\n if (foot) {\n node.children.push(u(\"text\", \"\\n\"), foot);\n }\n return Array.isArray(node) ? { type: \"root\", children: node } : node;\n}\nconst remarkRehype = function(destination, options) {\n return destination && \"run\" in destination ? bridge(destination, options) : mutate(destination || options);\n};\nconst remark2rehype = remarkRehype;\nfunction bridge(destination, options) {\n return (node, file, next) => {\n destination.run(toHast(node, options), file, (error) => {\n next(error);\n });\n };\n}\nfunction mutate(options) {\n return (node) => toHast(node, options);\n}\nclass Schema {\n constructor(property, normal, space2) {\n this.property = property;\n this.normal = normal;\n if (space2) {\n this.space = space2;\n }\n }\n}\nSchema.prototype.property = {};\nSchema.prototype.normal = {};\nSchema.prototype.space = null;\nfunction merge(definitions2, space2) {\n const property = {};\n const normal = {};\n let index2 = -1;\n while (++index2 < definitions2.length) {\n Object.assign(property, definitions2[index2].property);\n Object.assign(normal, definitions2[index2].normal);\n }\n return new Schema(property, normal, space2);\n}\nfunction normalize(value) {\n return value.toLowerCase();\n}\nclass Info {\n constructor(property, attribute) {\n this.property = property;\n this.attribute = attribute;\n }\n}\nInfo.prototype.space = null;\nInfo.prototype.boolean = false;\nInfo.prototype.booleanish = false;\nInfo.prototype.overloadedBoolean = false;\nInfo.prototype.number = false;\nInfo.prototype.commaSeparated = false;\nInfo.prototype.spaceSeparated = false;\nInfo.prototype.commaOrSpaceSeparated = false;\nInfo.prototype.mustUseProperty = false;\nInfo.prototype.defined = false;\nlet powers = 0;\nconst boolean = increment();\nconst booleanish = increment();\nconst overloadedBoolean = increment();\nconst number = increment();\nconst spaceSeparated = increment();\nconst commaSeparated = increment();\nconst commaOrSpaceSeparated = increment();\nfunction increment() {\n return 2 ** ++powers;\n}\nconst types = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n __proto__: null,\n boolean,\n booleanish,\n overloadedBoolean,\n number,\n spaceSeparated,\n commaSeparated,\n commaOrSpaceSeparated\n}, Symbol.toStringTag, { value: \"Module\" }));\nconst checks = Object.keys(types);\nclass DefinedInfo extends Info {\n constructor(property, attribute, mask, space2) {\n let index2 = -1;\n super(property, attribute);\n mark(this, \"space\", space2);\n if (typeof mask === \"number\") {\n while (++index2 < checks.length) {\n const check = checks[index2];\n mark(this, checks[index2], (mask & types[check]) === types[check]);\n }\n }\n }\n}\nDefinedInfo.prototype.defined = true;\nfunction mark(values, key, value) {\n if (value) {\n values[key] = value;\n }\n}\nconst own$2 = {}.hasOwnProperty;\nfunction create(definition2) {\n const property = {};\n const normal = {};\n let prop;\n for (prop in definition2.properties) {\n if (own$2.call(definition2.properties, prop)) {\n const value = definition2.properties[prop];\n const info = new DefinedInfo(\n prop,\n definition2.transform(definition2.attributes || {}, prop),\n value,\n definition2.space\n );\n if (definition2.mustUseProperty && definition2.mustUseProperty.includes(prop)) {\n info.mustUseProperty = true;\n }\n property[prop] = info;\n normal[normalize(prop)] = prop;\n normal[normalize(info.attribute)] = prop;\n }\n }\n return new Schema(property, normal, definition2.space);\n}\nconst xlink = create({\n space: \"xlink\",\n transform(_, prop) {\n return \"xlink:\" + prop.slice(5).toLowerCase();\n },\n properties: {\n xLinkActuate: null,\n xLinkArcRole: null,\n xLinkHref: null,\n xLinkRole: null,\n xLinkShow: null,\n xLinkTitle: null,\n xLinkType: null\n }\n});\nconst xml = create({\n space: \"xml\",\n transform(_, prop) {\n return \"xml:\" + prop.slice(3).toLowerCase();\n },\n properties: { xmlLang: null, xmlBase: null, xmlSpace: null }\n});\nfunction caseSensitiveTransform(attributes, attribute) {\n return attribute in attributes ? attributes[attribute] : attribute;\n}\nfunction caseInsensitiveTransform(attributes, property) {\n return caseSensitiveTransform(attributes, property.toLowerCase());\n}\nconst xmlns = create({\n space: \"xmlns\",\n attributes: { xmlnsxlink: \"xmlns:xlink\" },\n transform: caseInsensitiveTransform,\n properties: { xmlns: null, xmlnsXLink: null }\n});\nconst aria = create({\n transform(_, prop) {\n return prop === \"role\" ? prop : \"aria-\" + prop.slice(4).toLowerCase();\n },\n properties: {\n ariaActiveDescendant: null,\n ariaAtomic: booleanish,\n ariaAutoComplete: null,\n ariaBusy: booleanish,\n ariaChecked: booleanish,\n ariaColCount: number,\n ariaColIndex: number,\n ariaColSpan: number,\n ariaControls: spaceSeparated,\n ariaCurrent: null,\n ariaDescribedBy: spaceSeparated,\n ariaDetails: null,\n ariaDisabled: booleanish,\n ariaDropEffect: spaceSeparated,\n ariaErrorMessage: null,\n ariaExpanded: booleanish,\n ariaFlowTo: spaceSeparated,\n ariaGrabbed: booleanish,\n ariaHasPopup: null,\n ariaHidden: booleanish,\n ariaInvalid: null,\n ariaKeyShortcuts: null,\n ariaLabel: null,\n ariaLabelledBy: spaceSeparated,\n ariaLevel: number,\n ariaLive: null,\n ariaModal: booleanish,\n ariaMultiLine: booleanish,\n ariaMultiSelectable: booleanish,\n ariaOrientation: null,\n ariaOwns: spaceSeparated,\n ariaPlaceholder: null,\n ariaPosInSet: number,\n ariaPressed: booleanish,\n ariaReadOnly: booleanish,\n ariaRelevant: null,\n ariaRequired: booleanish,\n ariaRoleDescription: spaceSeparated,\n ariaRowCount: number,\n ariaRowIndex: number,\n ariaRowSpan: number,\n ariaSelected: booleanish,\n ariaSetSize: number,\n ariaSort: null,\n ariaValueMax: number,\n ariaValueMin: number,\n ariaValueNow: number,\n ariaValueText: null,\n role: null\n }\n});\nconst html$1 = create({\n space: \"html\",\n attributes: {\n acceptcharset: \"accept-charset\",\n classname: \"class\",\n htmlfor: \"for\",\n httpequiv: \"http-equiv\"\n },\n transform: caseInsensitiveTransform,\n mustUseProperty: [\"checked\", \"multiple\", \"muted\", \"selected\"],\n properties: {\n abbr: null,\n accept: commaSeparated,\n acceptCharset: spaceSeparated,\n accessKey: spaceSeparated,\n action: null,\n allow: null,\n allowFullScreen: boolean,\n allowPaymentRequest: boolean,\n allowUserMedia: boolean,\n alt: null,\n as: null,\n async: boolean,\n autoCapitalize: null,\n autoComplete: spaceSeparated,\n autoFocus: boolean,\n autoPlay: boolean,\n capture: boolean,\n charSet: null,\n checked: boolean,\n cite: null,\n className: spaceSeparated,\n cols: number,\n colSpan: null,\n content: null,\n contentEditable: booleanish,\n controls: boolean,\n controlsList: spaceSeparated,\n coords: number | commaSeparated,\n crossOrigin: null,\n data: null,\n dateTime: null,\n decoding: null,\n default: boolean,\n defer: boolean,\n dir: null,\n dirName: null,\n disabled: boolean,\n download: overloadedBoolean,\n draggable: booleanish,\n encType: null,\n enterKeyHint: null,\n form: null,\n formAction: null,\n formEncType: null,\n formMethod: null,\n formNoValidate: boolean,\n formTarget: null,\n headers: spaceSeparated,\n height: number,\n hidden: boolean,\n high: number,\n href: null,\n hrefLang: null,\n htmlFor: spaceSeparated,\n httpEquiv: spaceSeparated,\n id: null,\n imageSizes: null,\n imageSrcSet: null,\n inputMode: null,\n integrity: null,\n is: null,\n isMap: boolean,\n itemId: null,\n itemProp: spaceSeparated,\n itemRef: spaceSeparated,\n itemScope: boolean,\n itemType: spaceSeparated,\n kind: null,\n label: null,\n lang: null,\n language: null,\n list: null,\n loading: null,\n loop: boolean,\n low: number,\n manifest: null,\n max: null,\n maxLength: number,\n media: null,\n method: null,\n min: null,\n minLength: number,\n multiple: boolean,\n muted: boolean,\n name: null,\n nonce: null,\n noModule: boolean,\n noValidate: boolean,\n onAbort: null,\n onAfterPrint: null,\n onAuxClick: null,\n onBeforePrint: null,\n onBeforeUnload: null,\n onBlur: null,\n onCancel: null,\n onCanPlay: null,\n onCanPlayThrough: null,\n onChange: null,\n onClick: null,\n onClose: null,\n onContextLost: null,\n onContextMenu: null,\n onContextRestored: null,\n onCopy: null,\n onCueChange: null,\n onCut: null,\n onDblClick: null,\n onDrag: null,\n onDragEnd: null,\n onDragEnter: null,\n onDragExit: null,\n onDragLeave: null,\n onDragOver: null,\n onDragStart: null,\n onDrop: null,\n onDurationChange: null,\n onEmptied: null,\n onEnded: null,\n onError: null,\n onFocus: null,\n onFormData: null,\n onHashChange: null,\n onInput: null,\n onInvalid: null,\n onKeyDown: null,\n onKeyPress: null,\n onKeyUp: null,\n onLanguageChange: null,\n onLoad: null,\n onLoadedData: null,\n onLoadedMetadata: null,\n onLoadEnd: null,\n onLoadStart: null,\n onMessage: null,\n onMessageError: null,\n onMouseDown: null,\n onMouseEnter: null,\n onMouseLeave: null,\n onMouseMove: null,\n onMouseOut: null,\n onMouseOver: null,\n onMouseUp: null,\n onOffline: null,\n onOnline: null,\n onPageHide: null,\n onPageShow: null,\n onPaste: null,\n onPause: null,\n onPlay: null,\n onPlaying: null,\n onPopState: null,\n onProgress: null,\n onRateChange: null,\n onRejectionHandled: null,\n onReset: null,\n onResize: null,\n onScroll: null,\n onSecurityPolicyViolation: null,\n onSeeked: null,\n onSeeking: null,\n onSelect: null,\n onSlotChange: null,\n onStalled: null,\n onStorage: null,\n onSubmit: null,\n onSuspend: null,\n onTimeUpdate: null,\n onToggle: null,\n onUnhandledRejection: null,\n onUnload: null,\n onVolumeChange: null,\n onWaiting: null,\n onWheel: null,\n open: boolean,\n optimum: number,\n pattern: null,\n ping: spaceSeparated,\n placeholder: null,\n playsInline: boolean,\n poster: null,\n preload: null,\n readOnly: boolean,\n referrerPolicy: null,\n rel: spaceSeparated,\n required: boolean,\n reversed: boolean,\n rows: number,\n rowSpan: number,\n sandbox: spaceSeparated,\n scope: null,\n scoped: boolean,\n seamless: boolean,\n selected: boolean,\n shape: null,\n size: number,\n sizes: null,\n slot: null,\n span: number,\n spellCheck: booleanish,\n src: null,\n srcDoc: null,\n srcLang: null,\n srcSet: null,\n start: number,\n step: null,\n style: null,\n tabIndex: number,\n target: null,\n title: null,\n translate: null,\n type: null,\n typeMustMatch: boolean,\n useMap: null,\n value: booleanish,\n width: number,\n wrap: null,\n align: null,\n aLink: null,\n archive: spaceSeparated,\n axis: null,\n background: null,\n bgColor: null,\n border: number,\n borderColor: null,\n bottomMargin: number,\n cellPadding: null,\n cellSpacing: null,\n char: null,\n charOff: null,\n classId: null,\n clear: null,\n code: null,\n codeBase: null,\n codeType: null,\n color: null,\n compact: boolean,\n declare: boolean,\n event: null,\n face: null,\n frame: null,\n frameBorder: null,\n hSpace: number,\n leftMargin: number,\n link: null,\n longDesc: null,\n lowSrc: null,\n marginHeight: number,\n marginWidth: number,\n noResize: boolean,\n noHref: boolean,\n noShade: boolean,\n noWrap: boolean,\n object: null,\n profile: null,\n prompt: null,\n rev: null,\n rightMargin: number,\n rules: null,\n scheme: null,\n scrolling: booleanish,\n standby: null,\n summary: null,\n text: null,\n topMargin: number,\n valueType: null,\n version: null,\n vAlign: null,\n vLink: null,\n vSpace: number,\n allowTransparency: null,\n autoCorrect: null,\n autoSave: null,\n disablePictureInPicture: boolean,\n disableRemotePlayback: boolean,\n prefix: null,\n property: null,\n results: number,\n security: null,\n unselectable: null\n }\n});\nconst svg$1 = create({\n space: \"svg\",\n attributes: {\n accentHeight: \"accent-height\",\n alignmentBaseline: \"alignment-baseline\",\n arabicForm: \"arabic-form\",\n baselineShift: \"baseline-shift\",\n capHeight: \"cap-height\",\n className: \"class\",\n clipPath: \"clip-path\",\n clipRule: \"clip-rule\",\n colorInterpolation: \"color-interpolation\",\n colorInterpolationFilters: \"color-interpolation-filters\",\n colorProfile: \"color-profile\",\n colorRendering: \"color-rendering\",\n crossOrigin: \"crossorigin\",\n dataType: \"datatype\",\n dominantBaseline: \"dominant-baseline\",\n enableBackground: \"enable-background\",\n fillOpacity: \"fill-opacity\",\n fillRule: \"fill-rule\",\n floodColor: \"flood-color\",\n floodOpacity: \"flood-opacity\",\n fontFamily: \"font-family\",\n fontSize: \"font-size\",\n fontSizeAdjust: \"font-size-adjust\",\n fontStretch: \"font-stretch\",\n fontStyle: \"font-style\",\n fontVariant: \"font-variant\",\n fontWeight: \"font-weight\",\n glyphName: \"glyph-name\",\n glyphOrientationHorizontal: \"glyph-orientation-horizontal\",\n glyphOrientationVertical: \"glyph-orientation-vertical\",\n hrefLang: \"hreflang\",\n horizAdvX: \"horiz-adv-x\",\n horizOriginX: \"horiz-origin-x\",\n horizOriginY: \"horiz-origin-y\",\n imageRendering: \"image-rendering\",\n letterSpacing: \"letter-spacing\",\n lightingColor: \"lighting-color\",\n markerEnd: \"marker-end\",\n markerMid: \"marker-mid\",\n markerStart: \"marker-start\",\n navDown: \"nav-down\",\n navDownLeft: \"nav-down-left\",\n navDownRight: \"nav-down-right\",\n navLeft: \"nav-left\",\n navNext: \"nav-next\",\n navPrev: \"nav-prev\",\n navRight: \"nav-right\",\n navUp: \"nav-up\",\n navUpLeft: \"nav-up-left\",\n navUpRight: \"nav-up-right\",\n onAbort: \"onabort\",\n onActivate: \"onactivate\",\n onAfterPrint: \"onafterprint\",\n onBeforePrint: \"onbeforeprint\",\n onBegin: \"onbegin\",\n onCancel: \"oncancel\",\n onCanPlay: \"oncanplay\",\n onCanPlayThrough: \"oncanplaythrough\",\n onChange: \"onchange\",\n onClick: \"onclick\",\n onClose: \"onclose\",\n onCopy: \"oncopy\",\n onCueChange: \"oncuechange\",\n onCut: \"oncut\",\n onDblClick: \"ondblclick\",\n onDrag: \"ondrag\",\n onDragEnd: \"ondragend\",\n onDragEnter: \"ondragenter\",\n onDragExit: \"ondragexit\",\n onDragLeave: \"ondragleave\",\n onDragOver: \"ondragover\",\n onDragStart: \"ondragstart\",\n onDrop: \"ondrop\",\n onDurationChange: \"ondurationchange\",\n onEmptied: \"onemptied\",\n onEnd: \"onend\",\n onEnded: \"onended\",\n onError: \"onerror\",\n onFocus: \"onfocus\",\n onFocusIn: \"onfocusin\",\n onFocusOut: \"onfocusout\",\n onHashChange: \"onhashchange\",\n onInput: \"oninput\",\n onInvalid: \"oninvalid\",\n onKeyDown: \"onkeydown\",\n onKeyPress: \"onkeypress\",\n onKeyUp: \"onkeyup\",\n onLoad: \"onload\",\n onLoadedData: \"onloadeddata\",\n onLoadedMetadata: \"onloadedmetadata\",\n onLoadStart: \"onloadstart\",\n onMessage: \"onmessage\",\n onMouseDown: \"onmousedown\",\n onMouseEnter: \"onmouseenter\",\n onMouseLeave: \"onmouseleave\",\n onMouseMove: \"onmousemove\",\n onMouseOut: \"onmouseout\",\n onMouseOver: \"onmouseover\",\n onMouseUp: \"onmouseup\",\n onMouseWheel: \"onmousewheel\",\n onOffline: \"onoffline\",\n onOnline: \"ononline\",\n onPageHide: \"onpagehide\",\n onPageShow: \"onpageshow\",\n onPaste: \"onpaste\",\n onPause: \"onpause\",\n onPlay: \"onplay\",\n onPlaying: \"onplaying\",\n onPopState: \"onpopstate\",\n onProgress: \"onprogress\",\n onRateChange: \"onratechange\",\n onRepeat: \"onrepeat\",\n onReset: \"onreset\",\n onResize: \"onresize\",\n onScroll: \"onscroll\",\n onSeeked: \"onseeked\",\n onSeeking: \"onseeking\",\n onSelect: \"onselect\",\n onShow: \"onshow\",\n onStalled: \"onstalled\",\n onStorage: \"onstorage\",\n onSubmit: \"onsubmit\",\n onSuspend: \"onsuspend\",\n onTimeUpdate: \"ontimeupdate\",\n onToggle: \"ontoggle\",\n onUnload: \"onunload\",\n onVolumeChange: \"onvolumechange\",\n onWaiting: \"onwaiting\",\n onZoom: \"onzoom\",\n overlinePosition: \"overline-position\",\n overlineThickness: \"overline-thickness\",\n paintOrder: \"paint-order\",\n panose1: \"panose-1\",\n pointerEvents: \"pointer-events\",\n referrerPolicy: \"referrerpolicy\",\n renderingIntent: \"rendering-intent\",\n shapeRendering: \"shape-rendering\",\n stopColor: \"stop-color\",\n stopOpacity: \"stop-opacity\",\n strikethroughPosition: \"strikethrough-position\",\n strikethroughThickness: \"strikethrough-thickness\",\n strokeDashArray: \"stroke-dasharray\",\n strokeDashOffset: \"stroke-dashoffset\",\n strokeLineCap: \"stroke-linecap\",\n strokeLineJoin: \"stroke-linejoin\",\n strokeMiterLimit: \"stroke-miterlimit\",\n strokeOpacity: \"stroke-opacity\",\n strokeWidth: \"stroke-width\",\n tabIndex: \"tabindex\",\n textAnchor: \"text-anchor\",\n textDecoration: \"text-decoration\",\n textRendering: \"text-rendering\",\n typeOf: \"typeof\",\n underlinePosition: \"underline-position\",\n underlineThickness: \"underline-thickness\",\n unicodeBidi: \"unicode-bidi\",\n unicodeRange: \"unicode-range\",\n unitsPerEm: \"units-per-em\",\n vAlphabetic: \"v-alphabetic\",\n vHanging: \"v-hanging\",\n vIdeographic: \"v-ideographic\",\n vMathematical: \"v-mathematical\",\n vectorEffect: \"vector-effect\",\n vertAdvY: \"vert-adv-y\",\n vertOriginX: \"vert-origin-x\",\n vertOriginY: \"vert-origin-y\",\n wordSpacing: \"word-spacing\",\n writingMode: \"writing-mode\",\n xHeight: \"x-height\",\n playbackOrder: \"playbackorder\",\n timelineBegin: \"timelinebegin\"\n },\n transform: caseSensitiveTransform,\n properties: {\n about: commaOrSpaceSeparated,\n accentHeight: number,\n accumulate: null,\n additive: null,\n alignmentBaseline: null,\n alphabetic: number,\n amplitude: number,\n arabicForm: null,\n ascent: number,\n attributeName: null,\n attributeType: null,\n azimuth: number,\n bandwidth: null,\n baselineShift: null,\n baseFrequency: null,\n baseProfile: null,\n bbox: null,\n begin: null,\n bias: number,\n by: null,\n calcMode: null,\n capHeight: number,\n className: spaceSeparated,\n clip: null,\n clipPath: null,\n clipPathUnits: null,\n clipRule: null,\n color: null,\n colorInterpolation: null,\n colorInterpolationFilters: null,\n colorProfile: null,\n colorRendering: null,\n content: null,\n contentScriptType: null,\n contentStyleType: null,\n crossOrigin: null,\n cursor: null,\n cx: null,\n cy: null,\n d: null,\n dataType: null,\n defaultAction: null,\n descent: number,\n diffuseConstant: number,\n direction: null,\n display: null,\n dur: null,\n divisor: number,\n dominantBaseline: null,\n download: boolean,\n dx: null,\n dy: null,\n edgeMode: null,\n editable: null,\n elevation: number,\n enableBackground: null,\n end: null,\n event: null,\n exponent: number,\n externalResourcesRequired: null,\n fill: null,\n fillOpacity: number,\n fillRule: null,\n filter: null,\n filterRes: null,\n filterUnits: null,\n floodColor: null,\n floodOpacity: null,\n focusable: null,\n focusHighlight: null,\n fontFamily: null,\n fontSize: null,\n fontSizeAdjust: null,\n fontStretch: null,\n fontStyle: null,\n fontVariant: null,\n fontWeight: null,\n format: null,\n fr: null,\n from: null,\n fx: null,\n fy: null,\n g1: commaSeparated,\n g2: commaSeparated,\n glyphName: commaSeparated,\n glyphOrientationHorizontal: null,\n glyphOrientationVertical: null,\n glyphRef: null,\n gradientTransform: null,\n gradientUnits: null,\n handler: null,\n hanging: number,\n hatchContentUnits: null,\n hatchUnits: null,\n height: null,\n href: null,\n hrefLang: null,\n horizAdvX: number,\n horizOriginX: number,\n horizOriginY: number,\n id: null,\n ideographic: number,\n imageRendering: null,\n initialVisibility: null,\n in: null,\n in2: null,\n intercept: number,\n k: number,\n k1: number,\n k2: number,\n k3: number,\n k4: number,\n kernelMatrix: commaOrSpaceSeparated,\n kernelUnitLength: null,\n keyPoints: null,\n keySplines: null,\n keyTimes: null,\n kerning: null,\n lang: null,\n lengthAdjust: null,\n letterSpacing: null,\n lightingColor: null,\n limitingConeAngle: number,\n local: null,\n markerEnd: null,\n markerMid: null,\n markerStart: null,\n markerHeight: null,\n markerUnits: null,\n markerWidth: null,\n mask: null,\n maskContentUnits: null,\n maskUnits: null,\n mathematical: null,\n max: null,\n media: null,\n mediaCharacterEncoding: null,\n mediaContentEncodings: null,\n mediaSize: number,\n mediaTime: null,\n method: null,\n min: null,\n mode: null,\n name: null,\n navDown: null,\n navDownLeft: null,\n navDownRight: null,\n navLeft: null,\n navNext: null,\n navPrev: null,\n navRight: null,\n navUp: null,\n navUpLeft: null,\n navUpRight: null,\n numOctaves: null,\n observer: null,\n offset: null,\n onAbort: null,\n onActivate: null,\n onAfterPrint: null,\n onBeforePrint: null,\n onBegin: null,\n onCancel: null,\n onCanPlay: null,\n onCanPlayThrough: null,\n onChange: null,\n onClick: null,\n onClose: null,\n onCopy: null,\n onCueChange: null,\n onCut: null,\n onDblClick: null,\n onDrag: null,\n onDragEnd: null,\n onDragEnter: null,\n onDragExit: null,\n onDragLeave: null,\n onDragOver: null,\n onDragStart: null,\n onDrop: null,\n onDurationChange: null,\n onEmptied: null,\n onEnd: null,\n onEnded: null,\n onError: null,\n onFocus: null,\n onFocusIn: null,\n onFocusOut: null,\n onHashChange: null,\n onInput: null,\n onInvalid: null,\n onKeyDown: null,\n onKeyPress: null,\n onKeyUp: null,\n onLoad: null,\n onLoadedData: null,\n onLoadedMetadata: null,\n onLoadStart: null,\n onMessage: null,\n onMouseDown: null,\n onMouseEnter: null,\n onMouseLeave: null,\n onMouseMove: null,\n onMouseOut: null,\n onMouseOver: null,\n onMouseUp: null,\n onMouseWheel: null,\n onOffline: null,\n onOnline: null,\n onPageHide: null,\n onPageShow: null,\n onPaste: null,\n onPause: null,\n onPlay: null,\n onPlaying: null,\n onPopState: null,\n onProgress: null,\n onRateChange: null,\n onRepeat: null,\n onReset: null,\n onResize: null,\n onScroll: null,\n onSeeked: null,\n onSeeking: null,\n onSelect: null,\n onShow: null,\n onStalled: null,\n onStorage: null,\n onSubmit: null,\n onSuspend: null,\n onTimeUpdate: null,\n onToggle: null,\n onUnload: null,\n onVolumeChange: null,\n onWaiting: null,\n onZoom: null,\n opacity: null,\n operator: null,\n order: null,\n orient: null,\n orientation: null,\n origin: null,\n overflow: null,\n overlay: null,\n overlinePosition: number,\n overlineThickness: number,\n paintOrder: null,\n panose1: null,\n path: null,\n pathLength: number,\n patternContentUnits: null,\n patternTransform: null,\n patternUnits: null,\n phase: null,\n ping: spaceSeparated,\n pitch: null,\n playbackOrder: null,\n pointerEvents: null,\n points: null,\n pointsAtX: number,\n pointsAtY: number,\n pointsAtZ: number,\n preserveAlpha: null,\n preserveAspectRatio: null,\n primitiveUnits: null,\n propagate: null,\n property: commaOrSpaceSeparated,\n r: null,\n radius: null,\n referrerPolicy: null,\n refX: null,\n refY: null,\n rel: commaOrSpaceSeparated,\n rev: commaOrSpaceSeparated,\n renderingIntent: null,\n repeatCount: null,\n repeatDur: null,\n requiredExtensions: commaOrSpaceSeparated,\n requiredFeatures: commaOrSpaceSeparated,\n requiredFonts: commaOrSpaceSeparated,\n requiredFormats: commaOrSpaceSeparated,\n resource: null,\n restart: null,\n result: null,\n rotate: null,\n rx: null,\n ry: null,\n scale: null,\n seed: null,\n shapeRendering: null,\n side: null,\n slope: null,\n snapshotTime: null,\n specularConstant: number,\n specularExponent: number,\n spreadMethod: null,\n spacing: null,\n startOffset: null,\n stdDeviation: null,\n stemh: null,\n stemv: null,\n stitchTiles: null,\n stopColor: null,\n stopOpacity: null,\n strikethroughPosition: number,\n strikethroughThickness: number,\n string: null,\n stroke: null,\n strokeDashArray: commaOrSpaceSeparated,\n strokeDashOffset: null,\n strokeLineCap: null,\n strokeLineJoin: null,\n strokeMiterLimit: number,\n strokeOpacity: number,\n strokeWidth: null,\n style: null,\n surfaceScale: number,\n syncBehavior: null,\n syncBehaviorDefault: null,\n syncMaster: null,\n syncTolerance: null,\n syncToleranceDefault: null,\n systemLanguage: commaOrSpaceSeparated,\n tabIndex: number,\n tableValues: null,\n target: null,\n targetX: number,\n targetY: number,\n textAnchor: null,\n textDecoration: null,\n textRendering: null,\n textLength: null,\n timelineBegin: null,\n title: null,\n transformBehavior: null,\n type: null,\n typeOf: commaOrSpaceSeparated,\n to: null,\n transform: null,\n u1: null,\n u2: null,\n underlinePosition: number,\n underlineThickness: number,\n unicode: null,\n unicodeBidi: null,\n unicodeRange: null,\n unitsPerEm: number,\n values: null,\n vAlphabetic: number,\n vMathematical: number,\n vectorEffect: null,\n vHanging: number,\n vIdeographic: number,\n version: null,\n vertAdvY: number,\n vertOriginX: number,\n vertOriginY: number,\n viewBox: null,\n viewTarget: null,\n visibility: null,\n width: null,\n widths: null,\n wordSpacing: null,\n writingMode: null,\n x: null,\n x1: null,\n x2: null,\n xChannelSelector: null,\n xHeight: number,\n y: null,\n y1: null,\n y2: null,\n yChannelSelector: null,\n z: null,\n zoomAndPan: null\n }\n});\nconst valid = /^data[-\\w.:]+$/i;\nconst dash = /-[a-z]/g;\nconst cap = /[A-Z]/g;\nfunction find(schema, value) {\n const normal = normalize(value);\n let prop = value;\n let Type = Info;\n if (normal in schema.normal) {\n return schema.property[schema.normal[normal]];\n }\n if (normal.length > 4 && normal.slice(0, 4) === \"data\" && valid.test(value)) {\n if (value.charAt(4) === \"-\") {\n const rest = value.slice(5).replace(dash, camelcase);\n prop = \"data\" + rest.charAt(0).toUpperCase() + rest.slice(1);\n } else {\n const rest = value.slice(4);\n if (!dash.test(rest)) {\n let dashes = rest.replace(cap, kebab);\n if (dashes.charAt(0) !== \"-\") {\n dashes = \"-\" + dashes;\n }\n value = \"data\" + dashes;\n }\n }\n Type = DefinedInfo;\n }\n return new Type(prop, value);\n}\nfunction kebab($0) {\n return \"-\" + $0.toLowerCase();\n}\nfunction camelcase($0) {\n return $0.charAt(1).toUpperCase();\n}\nconst hastToReact = {\n classId: \"classID\",\n dataType: \"datatype\",\n itemId: \"itemID\",\n strokeDashArray: \"strokeDasharray\",\n strokeDashOffset: \"strokeDashoffset\",\n strokeLineCap: \"strokeLinecap\",\n strokeLineJoin: \"strokeLinejoin\",\n strokeMiterLimit: \"strokeMiterlimit\",\n typeOf: \"typeof\",\n xLinkActuate: \"xlinkActuate\",\n xLinkArcRole: \"xlinkArcrole\",\n xLinkHref: \"xlinkHref\",\n xLinkRole: \"xlinkRole\",\n xLinkShow: \"xlinkShow\",\n xLinkTitle: \"xlinkTitle\",\n xLinkType: \"xlinkType\",\n xmlnsXLink: \"xmlnsXlink\"\n};\nconst html = merge([xml, xlink, xmlns, aria, html$1], \"html\");\nconst svg = merge([xml, xlink, xmlns, aria, svg$1], \"svg\");\nfunction stringify$1(values) {\n return values.join(\" \").trim();\n}\nfunction stringify(values, options) {\n var settings = options || {};\n if (values[values.length - 1] === \"\") {\n values = values.concat(\"\");\n }\n return values.join(\n (settings.padRight ? \" \" : \"\") + \",\" + (settings.padLeft === false ? \"\" : \" \")\n ).trim();\n}\nvar COMMENT_REGEX = /\\/\\*[^*]*\\*+([^/*][^*]*\\*+)*\\//g;\nvar NEWLINE_REGEX = /\\n/g;\nvar WHITESPACE_REGEX = /^\\s*/;\nvar PROPERTY_REGEX = /^(\\*?[-#/*\\\\\\w]+(\\[[0-9a-z_-]+\\])?)\\s*/;\nvar COLON_REGEX = /^:\\s*/;\nvar VALUE_REGEX = /^((?:'(?:\\\\'|.)*?'|\"(?:\\\\\"|.)*?\"|\\([^)]*?\\)|[^};])+)/;\nvar SEMICOLON_REGEX = /^[;\\s]*/;\nvar TRIM_REGEX = /^\\s+|\\s+$/g;\nvar NEWLINE = \"\\n\";\nvar FORWARD_SLASH = \"/\";\nvar ASTERISK = \"*\";\nvar EMPTY_STRING = \"\";\nvar TYPE_COMMENT = \"comment\";\nvar TYPE_DECLARATION = \"declaration\";\nvar inlineStyleParser = function(style, options) {\n if (typeof style !== \"string\") {\n throw new TypeError(\"First argument must be a string\");\n }\n if (!style)\n return [];\n options = options || {};\n var lineno = 1;\n var column = 1;\n function updatePosition(str) {\n var lines = str.match(NEWLINE_REGEX);\n if (lines)\n lineno += lines.length;\n var i = str.lastIndexOf(NEWLINE);\n column = ~i ? str.length - i : column + str.length;\n }\n function position2() {\n var start = { line: lineno, column };\n return function(node) {\n node.position = new Position(start);\n whitespace2();\n return node;\n };\n }\n function Position(start) {\n this.start = start;\n this.end = { line: lineno, column };\n this.source = options.source;\n }\n Position.prototype.content = style;\n function error(msg) {\n var err = new Error(\n options.source + \":\" + lineno + \":\" + column + \": \" + msg\n );\n err.reason = msg;\n err.filename = options.source;\n err.line = lineno;\n err.column = column;\n err.source = style;\n if (options.silent)\n ;\n else {\n throw err;\n }\n }\n function match(re) {\n var m = re.exec(style);\n if (!m)\n return;\n var str = m[0];\n updatePosition(str);\n style = style.slice(str.length);\n return m;\n }\n function whitespace2() {\n match(WHITESPACE_REGEX);\n }\n function comments(rules) {\n var c;\n rules = rules || [];\n while (c = comment()) {\n if (c !== false) {\n rules.push(c);\n }\n }\n return rules;\n }\n function comment() {\n var pos = position2();\n if (FORWARD_SLASH != style.charAt(0) || ASTERISK != style.charAt(1))\n return;\n var i = 2;\n while (EMPTY_STRING != style.charAt(i) && (ASTERISK != style.charAt(i) || FORWARD_SLASH != style.charAt(i + 1))) {\n ++i;\n }\n i += 2;\n if (EMPTY_STRING === style.charAt(i - 1)) {\n return error(\"End of comment missing\");\n }\n var str = style.slice(2, i - 2);\n column += 2;\n updatePosition(str);\n style = style.slice(i);\n column += 2;\n return pos({\n type: TYPE_COMMENT,\n comment: str\n });\n }\n function declaration() {\n var pos = position2();\n var prop = match(PROPERTY_REGEX);\n if (!prop)\n return;\n comment();\n if (!match(COLON_REGEX))\n return error(\"property missing ':'\");\n var val = match(VALUE_REGEX);\n var ret = pos({\n type: TYPE_DECLARATION,\n property: trim(prop[0].replace(COMMENT_REGEX, EMPTY_STRING)),\n value: val ? trim(val[0].replace(COMMENT_REGEX, EMPTY_STRING)) : EMPTY_STRING\n });\n match(SEMICOLON_REGEX);\n return ret;\n }\n function declarations() {\n var decls = [];\n comments(decls);\n var decl;\n while (decl = declaration()) {\n if (decl !== false) {\n decls.push(decl);\n comments(decls);\n }\n }\n return decls;\n }\n whitespace2();\n return declarations();\n};\nfunction trim(str) {\n return str ? str.replace(TRIM_REGEX, EMPTY_STRING) : EMPTY_STRING;\n}\nvar parse$1 = inlineStyleParser;\nfunction StyleToObject(style, iterator) {\n var output = null;\n if (!style || typeof style !== \"string\") {\n return output;\n }\n var declaration;\n var declarations = parse$1(style);\n var hasIterator = typeof iterator === \"function\";\n var property;\n var value;\n for (var i = 0, len = declarations.length; i < len; i++) {\n declaration = declarations[i];\n property = declaration.property;\n value = declaration.value;\n if (hasIterator) {\n iterator(property, value, declaration);\n } else if (value) {\n output || (output = {});\n output[property] = value;\n }\n }\n return output;\n}\nvar styleToObject = StyleToObject;\nconst webNamespaces = {\n html: \"http://www.w3.org/1999/xhtml\",\n mathml: \"http://www.w3.org/1998/Math/MathML\",\n svg: \"http://www.w3.org/2000/svg\",\n xlink: \"http://www.w3.org/1999/xlink\",\n xml: \"http://www.w3.org/XML/1998/namespace\",\n xmlns: \"http://www.w3.org/2000/xmlns/\"\n};\nconst ns = webNamespaces;\nconst toReact = hastToReact;\nconst own$1 = {}.hasOwnProperty;\nconst root = convert$2(\"root\");\nconst element = convert$2(\"element\");\nconst text = convert$2(\"text\");\nfunction toH(h, tree, options) {\n if (typeof h !== \"function\") {\n throw new TypeError(\"h is not a function\");\n }\n const r = react(h);\n const v = vue(h);\n const vd = vdom(h);\n let prefix;\n let node;\n if (typeof options === \"string\" || typeof options === \"boolean\") {\n prefix = options;\n options = {};\n } else {\n if (!options)\n options = {};\n prefix = options.prefix;\n }\n if (root(tree)) {\n node = tree.children.length === 1 && element(tree.children[0]) ? tree.children[0] : {\n type: \"element\",\n tagName: \"div\",\n properties: {},\n children: tree.children\n };\n } else if (element(tree)) {\n node = tree;\n } else {\n throw new Error(\n \"Expected root or element, not `\" + (tree && tree.type || tree) + \"`\"\n );\n }\n return transform(h, node, {\n schema: options.space === \"svg\" ? svg : html,\n prefix: prefix === void 0 || prefix === null ? r || v || vd ? \"h-\" : null : typeof prefix === \"string\" ? prefix : prefix ? \"h-\" : null,\n key: 0,\n react: r,\n vue: v,\n vdom: vd,\n hyperscript: hyperscript(h)\n });\n}\nfunction transform(h, node, ctx) {\n const parentSchema = ctx.schema;\n let schema = parentSchema;\n let name = node.tagName;\n const attributes = {};\n const nodes = [];\n let index2 = -1;\n let key;\n if (parentSchema.space === \"html\" && name.toLowerCase() === \"svg\") {\n schema = svg;\n ctx.schema = schema;\n }\n for (key in node.properties) {\n if (node.properties && own$1.call(node.properties, key)) {\n addAttribute(attributes, key, node.properties[key], ctx, name);\n }\n }\n if (ctx.vdom) {\n if (schema.space === \"html\") {\n name = name.toUpperCase();\n } else if (schema.space) {\n attributes.namespace = ns[schema.space];\n }\n }\n if (ctx.prefix) {\n ctx.key++;\n attributes.key = ctx.prefix + ctx.key;\n }\n if (node.children) {\n while (++index2 < node.children.length) {\n const value = node.children[index2];\n if (element(value)) {\n nodes.push(transform(h, value, ctx));\n } else if (text(value)) {\n nodes.push(value.value);\n }\n }\n }\n ctx.schema = parentSchema;\n return nodes.length > 0 ? h.call(node, name, attributes, nodes) : h.call(node, name, attributes);\n}\nfunction addAttribute(props, prop, value, ctx, name) {\n const info = find(ctx.schema, prop);\n let subprop;\n if (value === void 0 || value === null || typeof value === \"number\" && Number.isNaN(value) || value === false && (ctx.vue || ctx.vdom || ctx.hyperscript) || !value && info.boolean && (ctx.vue || ctx.vdom || ctx.hyperscript)) {\n return;\n }\n if (Array.isArray(value)) {\n value = info.commaSeparated ? stringify(value) : stringify$1(value);\n }\n if (info.boolean && ctx.hyperscript) {\n value = \"\";\n }\n if (info.property === \"style\" && typeof value === \"string\" && (ctx.react || ctx.vue || ctx.vdom)) {\n value = parseStyle(value, name);\n }\n if (ctx.vue) {\n if (info.property !== \"style\")\n subprop = \"attrs\";\n } else if (!info.mustUseProperty) {\n if (ctx.vdom) {\n if (info.property !== \"style\")\n subprop = \"attributes\";\n } else if (ctx.hyperscript) {\n subprop = \"attrs\";\n }\n }\n if (subprop) {\n props[subprop] = Object.assign(props[subprop] || {}, {\n [info.attribute]: value\n });\n } else if (info.space && ctx.react) {\n props[toReact[info.property] || info.property] = value;\n } else {\n props[info.attribute] = value;\n }\n}\nfunction react(h) {\n const node = h(\"div\", {});\n return Boolean(\n node && (\"_owner\" in node || \"_store\" in node) && (node.key === void 0 || node.key === null)\n );\n}\nfunction hyperscript(h) {\n return \"context\" in h && \"cleanup\" in h;\n}\nfunction vdom(h) {\n const node = h(\"div\", {});\n return node.type === \"VirtualNode\";\n}\nfunction vue(h) {\n const node = h(\"div\", {});\n return Boolean(node && node.context && node.context._isVue);\n}\nfunction parseStyle(value, tagName) {\n const result = {};\n try {\n styleToObject(value, (name, value2) => {\n if (name.slice(0, 4) === \"-ms-\")\n name = \"ms-\" + name.slice(4);\n result[name.replace(\n /-([a-z])/g,\n (_, $1) => $1.toUpperCase()\n )] = value2;\n });\n } catch (error) {\n error.message = tagName + \"[style]\" + error.message.slice(\"undefined\".length);\n throw error;\n }\n return result;\n}\nvar convert_1 = convert$1;\nfunction convert$1(test) {\n if (typeof test === \"string\") {\n return typeFactory(test);\n }\n if (test === null || test === void 0) {\n return ok;\n }\n if (typeof test === \"object\") {\n return (\"length\" in test ? anyFactory : matchesFactory)(test);\n }\n if (typeof test === \"function\") {\n return test;\n }\n throw new Error(\"Expected function, string, or object as test\");\n}\nfunction convertAll(tests) {\n var results = [];\n var length = tests.length;\n var index2 = -1;\n while (++index2 < length) {\n results[index2] = convert$1(tests[index2]);\n }\n return results;\n}\nfunction matchesFactory(test) {\n return matches;\n function matches(node) {\n var key;\n for (key in test) {\n if (node[key] !== test[key]) {\n return false;\n }\n }\n return true;\n }\n}\nfunction anyFactory(tests) {\n var checks2 = convertAll(tests);\n var length = checks2.length;\n return matches;\n function matches() {\n var index2 = -1;\n while (++index2 < length) {\n if (checks2[index2].apply(this, arguments)) {\n return true;\n }\n }\n return false;\n }\n}\nfunction typeFactory(test) {\n return type;\n function type(node) {\n return Boolean(node && node.type === test);\n }\n}\nfunction ok() {\n return true;\n}\nvar unistUtilVisitParents = visitParents$1;\nvar convert = convert_1;\nvar CONTINUE$1 = true;\nvar SKIP$1 = \"skip\";\nvar EXIT$1 = false;\nvisitParents$1.CONTINUE = CONTINUE$1;\nvisitParents$1.SKIP = SKIP$1;\nvisitParents$1.EXIT = EXIT$1;\nfunction visitParents$1(tree, test, visitor2, reverse) {\n var is;\n if (typeof test === \"function\" && typeof visitor2 !== \"function\") {\n reverse = visitor2;\n visitor2 = test;\n test = null;\n }\n is = convert(test);\n one2(tree, null, []);\n function one2(node, index2, parents) {\n var result = [];\n var subresult;\n if (!test || is(node, index2, parents[parents.length - 1] || null)) {\n result = toResult(visitor2(node, parents));\n if (result[0] === EXIT$1) {\n return result;\n }\n }\n if (node.children && result[0] !== SKIP$1) {\n subresult = toResult(all2(node.children, parents.concat(node)));\n return subresult[0] === EXIT$1 ? subresult : result;\n }\n return result;\n }\n function all2(children, parents) {\n var min = -1;\n var step = reverse ? -1 : 1;\n var index2 = (reverse ? children.length : min) + step;\n var result;\n while (index2 > min && index2 < children.length) {\n result = one2(children[index2], index2, parents);\n if (result[0] === EXIT$1) {\n return result;\n }\n index2 = typeof result[1] === \"number\" ? result[1] : index2 + step;\n }\n }\n}\nfunction toResult(value) {\n if (value !== null && typeof value === \"object\" && \"length\" in value) {\n return value;\n }\n if (typeof value === \"number\") {\n return [CONTINUE$1, value];\n }\n return [value];\n}\nvar unistUtilVisit = visit$1;\nvar visitParents = unistUtilVisitParents;\nvar CONTINUE = visitParents.CONTINUE;\nvar SKIP = visitParents.SKIP;\nvar EXIT = visitParents.EXIT;\nvisit$1.CONTINUE = CONTINUE;\nvisit$1.SKIP = SKIP;\nvisit$1.EXIT = EXIT;\nfunction visit$1(tree, test, visitor2, reverse) {\n if (typeof test === \"function\" && typeof visitor2 !== \"function\") {\n reverse = visitor2;\n visitor2 = test;\n test = null;\n }\n visitParents(tree, test, overload, reverse);\n function overload(node, parents) {\n var parent = parents[parents.length - 1];\n var index2 = parent ? parent.children.indexOf(node) : null;\n return visitor2(node, index2, parent);\n }\n}\nvar visit = unistUtilVisit;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar hastCssPropertyMap = {\n align: \"text-align\",\n valign: \"vertical-align\",\n height: \"height\",\n width: \"width\"\n};\nvar hastUtilTableCellStyle = function tableCellStyle(node) {\n visit(node, \"element\", visitor);\n return node;\n};\nfunction visitor(node) {\n if (node.tagName !== \"tr\" && node.tagName !== \"td\" && node.tagName !== \"th\") {\n return;\n }\n var hastName;\n var cssName;\n for (hastName in hastCssPropertyMap) {\n if (!hasOwnProperty.call(hastCssPropertyMap, hastName) || node.properties[hastName] === void 0) {\n continue;\n }\n cssName = hastCssPropertyMap[hastName];\n appendStyle(node, cssName, node.properties[hastName]);\n delete node.properties[hastName];\n }\n}\nfunction appendStyle(node, property, value) {\n var prevStyle = (node.properties.style || \"\").trim();\n if (prevStyle && !/;\\s*/.test(prevStyle)) {\n prevStyle += \";\";\n }\n if (prevStyle) {\n prevStyle += \" \";\n }\n var nextStyle = prevStyle + property + \": \" + value + \";\";\n node.properties.style = nextStyle;\n}\nconst tableCellStyle2 = hastUtilTableCellStyle;\nfunction whitespace(thing) {\n var value = thing && typeof thing === \"object\" && thing.type === \"text\" ? thing.value || \"\" : thing;\n return typeof value === \"string\" && value.replace(/[ \\t\\n\\f\\r]/g, \"\") === \"\";\n}\nconst own = {}.hasOwnProperty;\nconst tableElements = /* @__PURE__ */ new Set([\n \"table\",\n \"thead\",\n \"tbody\",\n \"tfoot\",\n \"tr\",\n \"th\",\n \"td\"\n]);\nfunction rehypeReact(options) {\n if (!options || typeof options.createElement !== \"function\") {\n throw new TypeError(\"createElement is not a function\");\n }\n const createElement = options.createElement;\n Object.assign(this, { Compiler: compiler2 });\n function compiler2(node) {\n let result = toH(h, tableCellStyle2(node), options.prefix);\n if (node.type === \"root\") {\n result = result && typeof result === \"object\" && \"type\" in result && \"props\" in result && result.type === \"div\" && (node.children.length !== 1 || node.children[0].type !== \"element\") ? result.props.children : [result];\n return createElement(options.Fragment || \"div\", {}, result);\n }\n return result;\n }\n function h(name, props, children) {\n if (children && tableElements.has(name)) {\n children = children.filter((child) => !whitespace(child));\n }\n if (options.components && own.call(options.components, name)) {\n const component = options.components[name];\n if (options.passNode && typeof component === \"function\") {\n props = Object.assign({ node: this }, props);\n }\n return createElement(component, props, children);\n }\n return createElement(name, props, children);\n }\n}\nfunction parse(value) {\n const input = String(value || \"\").trim();\n return input ? input.split(/[ \\t\\n\\r\\f]+/g) : [];\n}\nconst ABSOLUTE_URL_REGEX = /^[a-zA-Z][a-zA-Z\\d+\\-.]*?:/;\nconst WINDOWS_PATH_REGEX = /^[a-zA-Z]:\\\\/;\nfunction isAbsoluteUrl(url) {\n if (typeof url !== \"string\") {\n throw new TypeError(`Expected a \\`string\\`, got \\`${typeof url}\\``);\n }\n if (WINDOWS_PATH_REGEX.test(url)) {\n return false;\n }\n return ABSOLUTE_URL_REGEX.test(url);\n}\nconst defaultTarget = \"_blank\";\nconst defaultRel = [\"nofollow\", \"noopener\", \"noreferrer\"];\nconst defaultProtocols = [\"http\", \"https\"];\nfunction remarkExternalLinks(options = {}) {\n const target = options.target;\n const rel = typeof options.rel === \"string\" ? parse(options.rel) : options.rel;\n const protocols = options.protocols || defaultProtocols;\n const content2 = options.content && !Array.isArray(options.content) ? [options.content] : options.content;\n const contentProperties = options.contentProperties || {};\n return (tree) => {\n const definition2 = definitions(tree);\n visit$2(tree, (node) => {\n if (node.type === \"link\" || node.type === \"linkReference\") {\n const ctx = node.type === \"link\" ? node : definition2(node.identifier);\n if (!ctx)\n return;\n const protocol = ctx.url.slice(0, ctx.url.indexOf(\":\"));\n if (isAbsoluteUrl(ctx.url) && protocols.includes(protocol)) {\n const data = node.data || (node.data = {});\n const props = data.hProperties || (data.hProperties = {});\n if (target !== false) {\n props.target = target || defaultTarget;\n }\n if (rel !== false) {\n props.rel = (rel || defaultRel).concat();\n }\n if (content2) {\n node.children.push({\n type: \"fragment\",\n children: [],\n data: {\n hName: \"span\",\n hProperties: extend(true, contentProperties),\n hChildren: extend(true, content2)\n }\n });\n }\n }\n }\n });\n };\n}\nconst Link = {\n name: \"Link\",\n functional: true,\n props: {\n href: {\n type: String,\n required: true\n }\n },\n render(h, { data, props }) {\n return h(\"a\", {\n attrs: {\n href: props.href,\n rel: \"noopener noreferrer\",\n target: \"_blank\",\n class: \"rich-text--external-link\"\n }\n }, [props.href.trim()]);\n }\n};\nconst remarkAutolink = function({ autolink: autolink2, useMarkdown }) {\n return function(tree) {\n if (!useMarkdown || !autolink2) {\n return;\n }\n visit$2(tree, (node) => node.type === \"text\", (node, index2, parent) => {\n let parsed = parseUrl(node.value);\n parsed = parsed.map((n) => {\n if (typeof n === \"string\") {\n return u(\"text\", n);\n }\n return u(\"link\", {\n url: n.props.href\n }, [u(\"text\", n.props.href)]);\n }).filter((x) => x);\n parent.children.splice(index2, 1, ...parsed.flat());\n return [SKIP$2, index2 + parsed.flat().length];\n });\n };\n};\nconst parseUrl = (text2, linkComponent) => {\n let match = URL_PATTERN_AUTOLINK.exec(text2);\n const list2 = [];\n let start = 0;\n while (match !== null) {\n let href = match[2];\n let textAfter;\n let textBefore = text2.substring(start, match.index + match[1].length);\n if (href[0] === \" \") {\n textBefore += href[0];\n href = href.substring(1).trim();\n }\n const lastChar = href[href.length - 1];\n if (lastChar === \".\" || lastChar === \",\" || lastChar === \";\" || match[0][0] === \"(\" && lastChar === \")\") {\n href = href.substring(0, href.length - 1);\n textAfter = lastChar;\n }\n list2.push(textBefore);\n list2.push({ component: Link, props: { href } });\n if (textAfter) {\n list2.push(textAfter);\n }\n start = match.index + match[0].length;\n match = URL_PATTERN_AUTOLINK.exec(text2);\n }\n list2.push(text2.substring(start));\n const joinedText = list2.map((item) => typeof item === \"string\" ? item : item.props.href).join(\"\");\n if (text2 === joinedText) {\n return list2;\n }\n console.error(\"Failed to reassemble the chunked text: \" + text2);\n return text2;\n};\nconst remarkPlaceholder = function() {\n return function(ast) {\n visit$2(ast, (node) => node.type === \"text\", visitor2);\n function visitor2(node, index2, parent) {\n const placeholders = node.value.split(/(\\{[a-z\\-_.0-9]+\\})/ig).map((entry, index3, list2) => {\n const matches = entry.match(/^\\{([a-z\\-_.0-9]+)\\}$/i);\n if (!matches) {\n return u(\"text\", entry);\n }\n const [, component] = matches;\n return u(\"element\", {\n tagName: `#${component}`\n });\n });\n node = u(\"element\", { tagName: \"span\" }, [\n ...placeholders\n ]);\n parent.children[index2] = node;\n }\n };\n};\nconst prepareTextNode = ({ h, context }, text2) => {\n if (context.autolink) {\n text2 = parseUrl(text2);\n }\n if (Array.isArray(text2)) {\n return text2.map((entry) => {\n if (typeof entry === \"string\") {\n return entry;\n }\n const { component, props } = entry;\n return h(component, {\n props,\n class: \"rich-text--component\"\n });\n });\n }\n return text2;\n};\nconst RichText_vue_vue_type_style_index_0_scoped_a8ade67f_lang = \"\";\nconst _sfc_main = {\n name: \"RichText\",\n components: {\n ReferenceList\n },\n props: {\n text: {\n type: String,\n default: \"\"\n },\n arguments: {\n type: Object,\n default: () => {\n return {};\n }\n },\n referenceLimit: {\n type: Number,\n default: 0\n },\n references: {\n type: Object,\n default: null\n },\n markdownCssClasses: {\n type: Object,\n default: () => {\n return {\n a: \"rich-text--external-link\",\n ol: \"rich-text--ordered-list\",\n ul: \"rich-text--un-ordered-list\",\n li: \"rich-text--list-item\",\n strong: \"rich-text--strong\",\n em: \"rich-text--italic\",\n h1: \"rich-text--heading rich-text--heading-1\",\n h2: \"rich-text--heading rich-text--heading-2\",\n h3: \"rich-text--heading rich-text--heading-3\",\n h4: \"rich-text--heading rich-text--heading-4\",\n h5: \"rich-text--heading rich-text--heading-5\",\n h6: \"rich-text--heading rich-text--heading-6\",\n hr: \"rich-text--hr\",\n table: \"rich-text--table\",\n pre: \"rich-text--pre\",\n code: \"rich-text--code\",\n blockquote: \"rich-text--blockquote\"\n };\n }\n },\n useMarkdown: {\n type: Boolean,\n default: false\n },\n autolink: {\n type: Boolean,\n default: true\n }\n },\n methods: {\n renderPlaintext(h) {\n const context = this;\n const placeholders = this.text.split(/(\\{[a-z\\-_.0-9]+\\})/ig).map(function(entry, index2, list2) {\n const matches = entry.match(/^\\{([a-z\\-_.0-9]+)\\}$/i);\n if (!matches) {\n return prepareTextNode({ h, context }, entry);\n }\n const argumentId = matches[1];\n const argument = context.arguments[argumentId];\n if (typeof argument === \"object\") {\n const { component, props } = argument;\n return h(component, {\n props,\n class: \"rich-text--component\"\n });\n }\n if (argument) {\n return h(\"span\", { class: \"rich-text--fallback\" }, argument);\n }\n return entry;\n });\n return h(\"div\", { class: \"rich-text--wrapper\" }, [\n h(\"div\", {}, placeholders.flat()),\n this.referenceLimit > 0 ? h(\"div\", { class: \"rich-text--reference-widget\" }, [\n h(ReferenceList, { props: { text: this.text, referenceData: this.references } })\n ]) : null\n ]);\n },\n renderMarkdown(h) {\n const renderedMarkdown = unified().use(remarkParse).use(remarkAutolink, {\n autolink: this.autolink,\n useMarkdown: this.useMarkdown\n }).use(remarkExternalLinks, {\n target: \"_blank\",\n rel: [\"noopener noreferrer\"]\n }).use(remarkBreaks).use(remark2rehype, {\n handlers: {\n component(toHast2, node) {\n return toHast2(node, node.component, { value: node.value });\n }\n }\n }).use(remarkPlaceholder).use(rehypeReact, {\n createElement: (tag, attrs, children) => {\n if (!tag.startsWith(\"#\")) {\n return h(tag, attrs, children);\n }\n const placeholder = this.arguments[tag.slice(1)];\n if (!placeholder) {\n return h(\"span\", { ...{ attrs }, ...{ class: \"rich-text--fallback\" } }, [`{${tag.slice(1)}}`]);\n }\n if (!placeholder.component) {\n return h(\"span\", attrs, [placeholder]);\n }\n return h(\n placeholder.component,\n {\n attrs,\n props: placeholder.props,\n class: \"rich-text--component\"\n },\n children\n );\n },\n prefix: false\n }).processSync(this.text).result;\n return h(\"div\", { class: \"rich-text--wrapper\" }, [\n renderedMarkdown,\n this.referenceLimit > 0 ? h(\"div\", { class: \"rich-text--reference-widget\" }, [\n h(ReferenceList, { props: { text: this.text, referenceData: this.references } })\n ]) : null\n ]);\n }\n },\n render(h) {\n if (!this.useMarkdown) {\n return this.renderPlaintext(h);\n }\n return this.renderMarkdown(h);\n }\n};\nconst _sfc_render = null;\nconst _sfc_staticRenderFns = null;\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"a8ade67f\",\n null,\n null\n);\nconst RichText = __component__.exports;\nexport {\n ReferenceList,\n ReferenceWidget,\n RichText,\n RichText as default,\n isWidgetRegistered,\n registerWidget,\n renderWidget\n};\n","/**\n * @copyright Copyright (c) 2021 Louis Chemineau \n *\n * @author Louis Chemineau \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\nimport moment from '@nextcloud/moment';\nexport default class ActivityModel {\n _activity;\n /**\n * Create the activity object\n *\n * @param {IRawActivity} rawActivity the activity object from the ocs response\n */\n constructor(rawActivity) {\n if (typeof rawActivity !== 'object') {\n throw new Error('Received activity data is not an object.');\n }\n // Sanity checks\n if (typeof rawActivity.activity_id !== 'number') {\n throw new Error('The activity_id argument is not a valid string');\n }\n if (typeof rawActivity.type !== 'string' || rawActivity.type.trim() === '') {\n throw new Error('The activity_id argument is not a valid string');\n }\n if (typeof rawActivity.subject !== 'string' || rawActivity.subject.trim() === '') {\n throw new Error('The activity_id argument is not a valid string');\n }\n if (typeof rawActivity.icon !== 'string' || rawActivity.icon.trim() === '') {\n throw new Error('The activity_id argument is not a valid string');\n }\n if (typeof rawActivity.datetime !== 'string' || rawActivity.datetime.trim() === '') {\n throw new Error('The activity_id argument is not a valid string');\n }\n // store state\n this._activity = rawActivity;\n }\n /**\n * get the activity id\n *\n * @return {number}\n * @readonly\n * @memberof ActivityModel\n */\n get id() {\n return this._activity.activity_id;\n }\n /**\n * Get the app causing the activity\n *\n * @return {string}\n * @readonly\n * @memberof ActivityModel\n */\n get app() {\n return this._activity.app;\n }\n /**\n * Get the activity type\n *\n * @return {string}\n * @readonly\n * @memberof ActivityModel\n */\n get type() {\n return this._activity.type;\n }\n /**\n * Get the user ID of the user causing the activity or affected by the activity\n *\n * @return {string}\n * @readonly\n * @memberof ActivityModel\n */\n get user() {\n return this._activity.user;\n }\n /**\n * Get the activity subject\n *\n * @return {string}\n * @readonly\n * @memberof ActivityModel\n */\n get subject() {\n return this._activity.subject;\n }\n /**\n * Get the activity subject_rich template\n *\n * @return {string}\n * @readonly\n * @memberof ActivityModel\n */\n get subjectRichTemplate() {\n return this._activity.subject_rich[0];\n }\n /**\n * Get the activity subject_rich objects\n *\n * @return {Record}\n * @readonly\n * @memberof ActivityModel\n */\n get subjectRichObjects() {\n if (Array.isArray(this._activity.subject_rich[1])) {\n return {};\n }\n return this._activity.subject_rich[1];\n }\n /**\n * Get the activity message\n *\n * @return {string}\n * @readonly\n * @memberof ActivityModel\n */\n get message() {\n return this._activity.message;\n }\n /**\n * Get the activity message_rich template\n *\n * @return {string}\n * @readonly\n * @memberof ActivityModel\n */\n get messageRichTemplate() {\n return this._activity.message_rich[0];\n }\n /**\n * Get the activity message_rich objects\n *\n * @return {Record}\n * @readonly\n * @memberof ActivityModel\n */\n get messageRichObjects() {\n if (!Array.isArray(this._activity.message_rich[1])) {\n return {};\n }\n return this._activity.message_rich[1];\n }\n /**\n * Get the object_type\n *\n * @return {string}\n * @readonly\n * @memberof ActivityModel\n */\n get objectType() {\n return this._activity.object_type;\n }\n /**\n * Get the activity object_id\n *\n * @return {number}\n * @readonly\n * @memberof ActivityModel\n */\n get objectId() {\n return this._activity.object_id;\n }\n /**\n * Get the activity object_name\n *\n * @return {string}\n * @readonly\n * @memberof ActivityModel\n */\n get objectName() {\n return this._activity.object_name;\n }\n /**\n * Get the activity link\n *\n * @return {string}\n * @readonly\n * @memberof ActivityModel\n */\n get link() {\n return this._activity.link;\n }\n /**\n * Get the activity icon\n *\n * @return {string}\n * @readonly\n * @memberof ActivityModel\n */\n get icon() {\n return this._activity.icon;\n }\n /**\n * Get the activity datetime\n *\n * @return {string}\n * @readonly\n * @memberof ActivityModel\n */\n get datetime() {\n return this._activity.datetime;\n }\n /**\n * Get the activity formatted date from the current date\n *\n * @return {string}\n * @readonly\n * @memberof ActivityModel\n */\n get dateFromNow() {\n return moment(this._activity.datetime).fromNow();\n }\n /**\n * Get the activity formatted datetime\n *\n * @return {string}\n * @readonly\n * @memberof ActivityModel\n */\n get formattedDate() {\n return moment(this._activity.datetime).format('LLL');\n }\n /**\n * Get the activity timestamp\n *\n * @return {number}\n * @readonly\n * @memberof ActivityModel\n */\n get timestamp() {\n return moment(this._activity.datetime).unix();\n }\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',{staticClass:\"rich-text-file\"},[(!_vm.isRoot && _vm.parentPathIsRoot)?_c('a',{attrs:{\"href\":_vm.link}},[_vm._v(_vm._s(_vm.name))]):_vm._e(),_vm._v(\" \"),(!_vm.isRoot && !_vm.parentPathIsRoot)?_c('a',{attrs:{\"title\":_vm.t('activity', 'in {path}', {path: _vm.parentFolder}),\"aria-label\":_vm.t('activity', 'in {path}', {path: _vm.parentFolder}),\"href\":_vm.link}},[_vm._v(_vm._s(_vm.name))]):_vm._e(),_vm._v(\" \"),(_vm.isRoot)?_c('span',{staticClass:\"icon-home\",attrs:{\"title\":_vm.t('activity', 'Home'),\"aria-label\":\"t('activity', 'Home')\"}}):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileRichArgument.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileRichArgument.vue?vue&type=script&lang=js\"","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileRichArgument.vue?vue&type=style&index=0&id=8696f7f0&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileRichArgument.vue?vue&type=style&index=0&id=8696f7f0&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FileRichArgument.vue?vue&type=template&id=8696f7f0&scoped=true\"\nimport script from \"./FileRichArgument.vue?vue&type=script&lang=js\"\nexport * from \"./FileRichArgument.vue?vue&type=script&lang=js\"\nimport style0 from \"./FileRichArgument.vue?vue&type=style&index=0&id=8696f7f0&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8696f7f0\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmailRichArgument.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmailRichArgument.vue?vue&type=script&lang=js\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./EmailRichArgument.vue?vue&type=template&id=42f46e36\"\nimport script from \"./EmailRichArgument.vue?vue&type=script&lang=js\"\nexport * from \"./EmailRichArgument.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('a',{attrs:{\"href\":`mailto:${_vm.id}`}},[_vm._v(_vm._s(_vm.name))])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SystemTagRichArgument.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SystemTagRichArgument.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SystemTagRichArgument.vue?vue&type=style&index=0&id=7e2ba972&prod&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SystemTagRichArgument.vue?vue&type=style&index=0&id=7e2ba972&prod&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SystemTagRichArgument.vue?vue&type=template&id=7e2ba972&scoped=true\"\nimport script from \"./SystemTagRichArgument.vue?vue&type=script&lang=js\"\nexport * from \"./SystemTagRichArgument.vue?vue&type=script&lang=js\"\nimport style0 from \"./SystemTagRichArgument.vue?vue&type=style&index=0&id=7e2ba972&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7e2ba972\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('strong',[_vm._v(_vm._s(_vm.name))])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CalendarEventRichArgument.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CalendarEventRichArgument.vue?vue&type=script&lang=js\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./CalendarEventRichArgument.vue?vue&type=template&id=7c75a1c2\"\nimport script from \"./CalendarEventRichArgument.vue?vue&type=script&lang=js\"\nexport * from \"./CalendarEventRichArgument.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('a',{attrs:{\"href\":_vm.link,\"title\":_vm.title}},[_c('strong',[_vm._v(_vm._s(_vm.name))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OpenGraphRichArgument.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OpenGraphRichArgument.vue?vue&type=script&lang=js\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./OpenGraphRichArgument.vue?vue&type=template&id=6961e357\"\nimport script from \"./OpenGraphRichArgument.vue?vue&type=script&lang=js\"\nexport * from \"./OpenGraphRichArgument.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('a',{attrs:{\"href\":_vm.link}},[_c('div',{staticClass:\"opengraph\",attrs:{\"id\":`opengraph-${_vm.id}`}},[(_vm.thumbIsDefined)?_c('div',{staticClass:\"opengraph-thumb\",style:(`background-image: url('${_vm.thumb}')`)}):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"opengraph-name\",class:{'opengraph-with-thumb': _vm.thumbIsDefined}},[_vm._v(_vm._s(_vm.name))]),_vm._v(\" \"),_c('div',{staticClass:\"opengraph-description\",class:{'opengraph-with-thumb': _vm.thumbIsDefined}},[_vm._v(_vm._s(_vm.description))]),_vm._v(\" \"),_c('span',{staticClass:\"opengraph-website\"},[_vm._v(_vm._s(_vm.website))])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Activity.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Activity.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/dist/cjs.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Activity.vue?vue&type=style&index=0&id=7c4467ea&prod&lang=scss&scoped=true\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/dist/cjs.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Activity.vue?vue&type=style&index=0&id=7c4467ea&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Activity.vue?vue&type=template&id=7c4467ea&scoped=true\"\nimport script from \"./Activity.vue?vue&type=script&lang=js\"\nexport * from \"./Activity.vue?vue&type=script&lang=js\"\nimport style0 from \"./Activity.vue?vue&type=style&index=0&id=7c4467ea&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7c4467ea\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('li',{staticClass:\"activity-entry\"},[_c('NcAvatar',{class:[_vm.applyMonochromeIconColor, 'activity-entry__icon', 'activity-icon'],attrs:{\"disable-menu\":true,\"disable-tooltip\":true,\"url\":_vm.activity.icon,\"size\":15}}),_vm._v(\" \"),_c('div',{staticClass:\"activity-entry__content\"},[_c('RichText',{staticClass:\"activity-entry__content__subject\",attrs:{\"text\":_vm.subjectText,\"arguments\":_vm.subjectArguments}}),_vm._v(\" \"),_c('RichText',{staticClass:\"activity-entry__content__message\",attrs:{\"text\":_vm.messageText,\"arguments\":_vm.messageArguments}})],1),_vm._v(\" \"),_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.activity.formattedDate))]),_vm._v(\" \"),_c('span',{staticClass:\"activity-entry__date\",attrs:{\"title\":_vm.activity.formattedDate}},[_vm._v(_vm._s(_vm.dateFromNow))])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2021 Louis Chemineau \n *\n * @author Louis Chemineau \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('activity')\n\t.detectUser()\n\t.build()\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivityTab.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivityTab.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/dist/cjs.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivityTab.vue?vue&type=style&index=0&id=088c686c&prod&scoped=true&lang=scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/dist/cjs.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivityTab.vue?vue&type=style&index=0&id=088c686c&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ActivityTab.vue?vue&type=template&id=088c686c&scoped=true\"\nimport script from \"./ActivityTab.vue?vue&type=script&lang=js\"\nexport * from \"./ActivityTab.vue?vue&type=script&lang=js\"\nimport style0 from \"./ActivityTab.vue?vue&type=style&index=0&id=088c686c&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"088c686c\",\n null\n \n)\n\nexport default component.exports","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent(\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier /* server only */,\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options =\n typeof scriptExports === 'function' ? scriptExports.options : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) {\n // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar valid = require('semver/functions/valid.js');\nvar major = require('semver/functions/major.js');\n\nfunction _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }\n\nvar valid__default = /*#__PURE__*/_interopDefaultLegacy(valid);\nvar major__default = /*#__PURE__*/_interopDefaultLegacy(major);\n\nvar ProxyBus = /** @class */ (function () {\n function ProxyBus(bus) {\n if (typeof bus.getVersion !== 'function' || !valid__default[\"default\"](bus.getVersion())) {\n console.warn('Proxying an event bus with an unknown or invalid version');\n }\n else if (major__default[\"default\"](bus.getVersion()) !== major__default[\"default\"](this.getVersion())) {\n console.warn('Proxying an event bus of version ' + bus.getVersion() + ' with ' + this.getVersion());\n }\n this.bus = bus;\n }\n ProxyBus.prototype.getVersion = function () {\n return \"3.1.0\";\n };\n ProxyBus.prototype.subscribe = function (name, handler) {\n this.bus.subscribe(name, handler);\n };\n ProxyBus.prototype.unsubscribe = function (name, handler) {\n this.bus.unsubscribe(name, handler);\n };\n ProxyBus.prototype.emit = function (name, event) {\n this.bus.emit(name, event);\n };\n return ProxyBus;\n}());\n\nvar SimpleBus = /** @class */ (function () {\n function SimpleBus() {\n this.handlers = new Map();\n }\n SimpleBus.prototype.getVersion = function () {\n return \"3.1.0\";\n };\n SimpleBus.prototype.subscribe = function (name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).concat(handler));\n };\n SimpleBus.prototype.unsubscribe = function (name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).filter(function (h) { return h != handler; }));\n };\n SimpleBus.prototype.emit = function (name, event) {\n (this.handlers.get(name) || []).forEach(function (h) {\n try {\n h(event);\n }\n catch (e) {\n console.error('could not invoke event listener', e);\n }\n });\n };\n return SimpleBus;\n}());\n\nvar bus = null;\nfunction getBus() {\n if (bus !== null) {\n return bus;\n }\n if (typeof window === 'undefined') {\n // testing or SSR\n return new Proxy({}, {\n get: function () {\n return function () { return console.error('Window not available, EventBus can not be established!'); };\n }\n });\n }\n if (typeof window.OC !== 'undefined' && window.OC._eventBus && typeof window._nc_event_bus === 'undefined') {\n console.warn('found old event bus instance at OC._eventBus. Update your version!');\n window._nc_event_bus = window.OC._eventBus;\n }\n // Either use an existing event bus instance or create one\n if (typeof (window === null || window === void 0 ? void 0 : window._nc_event_bus) !== 'undefined') {\n bus = new ProxyBus(window._nc_event_bus);\n }\n else {\n bus = window._nc_event_bus = new SimpleBus();\n }\n return bus;\n}\n/**\n * Register an event listener\n *\n * @param name name of the event\n * @param handler callback invoked for every matching event emitted on the bus\n */\nfunction subscribe(name, handler) {\n getBus().subscribe(name, handler);\n}\n/**\n * Unregister a previously registered event listener\n *\n * Note: doesn't work with anonymous functions (closures). Use method of an object or store listener function in variable.\n *\n * @param name name of the event\n * @param handler callback passed to `subscribed`\n */\nfunction unsubscribe(name, handler) {\n getBus().unsubscribe(name, handler);\n}\n/**\n * Emit an event\n *\n * @param name name of the event\n * @param event event payload\n */\nfunction emit(name, event) {\n getBus().emit(name, event);\n}\n\nexports.ProxyBus = ProxyBus;\nexports.SimpleBus = SimpleBus;\nexports.emit = emit;\nexports.subscribe = subscribe;\nexports.unsubscribe = unsubscribe;\n//# sourceMappingURL=index.cjs.map\n"],"names":["eventBus","token","undefined","observers","subscribe","e","forEach","observer","console","error","getAttribute","el","attribute","currentUser","exports","getCurrentUser","head","document","getElementsByTagName","uid","displayName","isAdmin","OC","isUserAdmin","getRequestToken","tokenElement","onRequestTokenUpdate","push","debug","MAX_LENGTH","MAX_SAFE_INTEGER","safeRe","re","t","parseOptions","compareIdentifiers","SemVer","constructor","version","options","loose","includePrerelease","TypeError","length","this","m","trim","match","LOOSE","FULL","raw","major","minor","patch","prerelease","split","map","id","test","num","build","format","join","toString","compare","other","compareMain","comparePre","i","a","b","compareBuild","inc","release","identifier","identifierBase","base","Number","Error","isNaN","module","throwErrors","er","parse","v","MAX_SAFE_COMPONENT_LENGTH","MAX_SAFE_BUILD_LENGTH","RELEASE_TYPES","SEMVER_SPEC_VERSION","FLAG_INCLUDE_PRERELEASE","FLAG_LOOSE","process","env","NODE_DEBUG","args","numeric","anum","bnum","rcompareIdentifiers","looseOption","Object","freeze","emptyOpts","src","R","LETTERDASHNUMBER","safeRegexReplacements","createToken","name","value","isGlobal","safe","max","makeSafeRegex","index","RegExp","NUMERICIDENTIFIER","NUMERICIDENTIFIERLOOSE","NONNUMERICIDENTIFIER","PRERELEASEIDENTIFIER","PRERELEASEIDENTIFIERLOOSE","BUILDIDENTIFIER","MAINVERSION","PRERELEASE","BUILD","FULLPLAIN","MAINVERSIONLOOSE","PRERELEASELOOSE","LOOSEPLAIN","XRANGEIDENTIFIER","XRANGEIDENTIFIERLOOSE","GTLT","XRANGEPLAIN","XRANGEPLAINLOOSE","COERCE","LONETILDE","tildeTrimReplace","LONECARET","caretTrimReplace","comparatorTrimReplace","GetText","GettextBuilder","translations","setLanguage","language","locale","detectLocale","documentElement","lang","replace","addTranslation","data","enableDebugMode","GettextWrapper","gt","sourceLocale","key","addTranslations","setLocale","subtitudePlaceholders","translated","vars","r","gettext","original","placeholders","ngettext","singular","plural","count","getGettextBuilder","defineProperty","ConsoleLogger","buildConsoleLogger","context","_contracts","_typeof","o","Symbol","iterator","prototype","_defineProperties","target","props","descriptor","enumerable","configurable","writable","_toPropertyKey","arg","input","hint","prim","toPrimitive","res","call","String","_toPrimitive","obj","instance","Constructor","_classCallCheck","protoProps","message","level","msg","LogLevel","toUpperCase","app","concat","Debug","stack","_this$context","_this$context2","formatMessage","Info","info","Warn","warn","Fatal","log","assign","LoggerBuilder","_auth","_defineProperty","factory","appId","user","self","onLoaded","_window$_oc_config$lo","_window$_oc_config","readyState","window","_oc_config","loglevel","_oc_debug","removeEventListener","addEventListener","detectLogLevel","_LoggerBuilder","_ConsoleLogger","n","s","__esModule","default","d","get","hasOwnProperty","toStringTag","u","l","getLocale","json","charset","headers","Language","msgid","comments","translator","msgstr","seconds","reference","updateLocale","parentLocale","relativeTime","localeData","_relativeTime","dataset","getCanonicalLocale","getDayNames","dayNames","getDayNamesMin","dayNamesMin","getDayNamesShort","dayNamesShort","getFirstDay","firstDay","getLanguage","getMonthNames","monthNames","getMonthNamesShort","monthNamesShort","translate","text","L10N","translatePlural","textSingular","textPlural","joinPaths","_len","arguments","Array","_key","nonEmptyArgs","filter","lastArg","leadingSlash","charAt","trailingSlash","sections","reduce","acc","section","first","path","path1","path2","pathSections1","p","pathSections2","apply","k","size","type","appearance","validator","includes","title","computed","colors","reverse","c","g","h","A","styleTagTransform","setAttributes","insert","bind","domAPI","insertStyleElement","Z","locals","C","f","y","_self","_c","staticClass","attrs","role","width","height","viewBox","fill","_v","_s","_e","z","components","Dropdown","inheritAttrs","popoverBaseClass","focusTrap","Boolean","setReturnFocus","HTMLElement","SVGElement","emits","beforeDestroy","clearFocusTrap","methods","async","$nextTick","$refs","popover","popperContent","$el","$focusTrap","createFocusTrap","escapeDeactivates","allowOutsideClick","trapStack","L","activate","deactivate","afterShow","$emit","useFocusTrap","afterHide","S","w","x","_g","_b","ref","distance","on","scopedSlots","_u","fn","_t","proxy","$attrs","$listeners","N","item","required","href","icon","indexOf","Math","round","random","iconIsUrl","URL","action","NcPopoverMenuItem","download","rel","click","class","longtext","active","submit","preventDefault","placeholder","domProps","directives","rawName","model","expression","checked","isArray","_i","change","$set","slice","_q","composing","for","stopPropagation","disabled","menu","_l","toLowerCase","parseInt","Actions","Activities","Choose","Close","Custom","Favorite","Flags","Global","Next","Objects","Open","Previous","Search","Settings","Submit","Symbols","items","pluralId","msgid_plural","iQ","hasStatus","userStatus","status","getCapabilities","user_status","enabled","generateOcsUrl","userId","ocs","response","isMobile","watch","created","handleWindowResize","clientWidth","defaultProtocol","className","attributes","_nc_focus_trap","sources","names","mappings","sourcesContent","sourceRoot","hash","needQuotes","btoa","unescape","encodeURIComponent","JSON","stringify","css","media","sourceMap","supports","layer","references","updater","byIndex","splice","update","remove","querySelector","HTMLIFrameElement","contentDocument","appendChild","createElement","nc","setAttribute","parentNode","removeChild","styleSheet","cssText","firstChild","createTextNode","label","iconUrl","source","primary","avatarUrl","getAvatarUrl","mentionText","generateUrl","contenteditable","style","backgroundImage","render","staticRenderFns","_compiled","functional","_scopeId","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","add","_ssrRegister","$root","$options","shadowRoot","_injectStyles","beforeCreate","baseURI","location","U","getBuilder","persist","setItem","ClickOutside","vOnClickOutside","DotsHorizontal","NcLoadingIcon","NcPopover","NcPopoverMenu","mixins","url","iconClass","showUserStatus","showUserStatusCompact","preloadedUserStatus","isGuest","allowPlaceholder","disableTooltip","disableMenu","tooltipMessage","isNoUser","menuPosition","menuContainer","Element","avatarUrlLoaded","avatarSrcSetLoaded","userDoesNotExist","isAvatarLoaded","isMenuLoaded","contactsMenuLoading","contactsMenuActions","contactsMenuOpenState","avatarAriaLabel","hasMenu","canDisplayUserStatus","showUserStatusIconOnAvatar","getUserIdentifier","isDisplayNameDefined","isUserDefined","isUrlDefined","shouldShowPlaceholder","avatarStyle","lineHeight","fontSize","initialsWrapperStyle","backgroundColor","initialsStyle","color","tooltip","initials","fromCodePoint","codePointAt","hyperlink","innerHTML","loadAvatarUrl","mounted","fetchUserStatus","handleUserStatusUpdated","unsubscribe","handlePopoverAfterShow","popoverMenu","focus","handlePopoverAfterHide","main","fetchContactsMenu","closeMenu","post","topAction","actions","updateImageIfValid","avatarUrlGenerator","getComputedStyle","body","getPropertyValue","oc_userconfig","avatar","getItem","Image","onload","onerror","srcset","j","P","E","T","_","B","O","D","M","F","tabindex","keydown","_k","keyCode","toggleMenu","alt","placement","container","shown","$slots","description","hasTitle","hasDescription","I","NcAvatar","NcUserBubbleDiv","avatarImage","open","margin","isPopoverComponent","popoverEmpty","isAvatarUrl","isCustomAvatar","hasUrl","isLinkComponent","styles","content","borderRadius","marginLeft","onOpenChange","onClick","tag","trigger","$props","byteLength","b64","lens","getLens","validLen","placeHoldersLen","toByteArray","tmp","arr","Arr","_byteLength","curByte","len","revLookup","charCodeAt","fromByteArray","uint8","extraBytes","parts","maxChunkLength","len2","encodeChunk","lookup","Uint8Array","code","start","end","output","isConstructor","tryToString","$TypeError","argument","isCallable","$String","wellKnownSymbol","create","UNSCOPABLES","ArrayPrototype","uncurryThis","IndexedObject","toObject","lengthOfArrayLike","arraySpeciesCreate","createMethod","TYPE","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","$this","callbackfn","that","specificCreate","result","boundFunction","some","every","find","findIndex","filterReject","aCallable","IS_RIGHT","argumentsLength","memo","left","right","toAbsoluteIndex","createProperty","$Array","fin","isObject","SPECIES","originalArray","arraySpeciesConstructor","fails","getPrototypeOf","done","toPropertyKey","definePropertyModule","createPropertyDescriptor","object","propertyKey","anObject","ordinaryToPrimitive","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","classList","documentCreateElement","DOMTokenListPrototype","classof","global","NATIVE_BIND","setPrototypeOf","dummy","Wrapper","NewTarget","NewTargetPrototype","getBuiltIn","inspectSource","noop","empty","construct","constructorRegExp","exec","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","sham","called","IteratorPrototype","setToStringTag","Iterators","returnThis","IteratorConstructor","NAME","next","ENUMERABLE_NEXT","TO_STRING_TAG","$","IS_PURE","FunctionName","createIteratorConstructor","createNonEnumerableProperty","defineBuiltIn","IteratorsCore","PROPER_FUNCTION_NAME","PROPER","CONFIGURABLE_FUNCTION_NAME","CONFIGURABLE","BUGGY_SAFARI_ITERATORS","ITERATOR","KEYS","VALUES","ENTRIES","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","values","keys","proto","forced","PrototypeOfArrayIteratorPrototype","arrayIterator","toIndexedObject","$getOwnPropertyNames","arraySlice","windowNames","getOwnPropertyNames","it","getWindowNames","hasOwn","sharedKey","CORRECT_PROTOTYPE_GETTER","IE_PROTO","$Object","ObjectPrototype","aPossiblePrototype","setter","CORRECT_SETTER","getOwnPropertyDescriptor","set","__proto__","TAG","STATIC","aConstructor","isNullOrUndefined","defaultConstructor","requireObjectCoercible","whitespaces","whitespace","ltrim","rtrim","string","SymbolPrototype","valueOf","TO_PRIMITIVE","arity","NATIVE_SYMBOL","keyFor","wrappedWellKnownSymbolModule","addToUnscopables","InternalStateModule","defineIterator","createIterResultObject","DESCRIPTORS","ARRAY_ITERATOR","setInternalState","getInternalState","getterFor","iterated","kind","state","Arguments","$reduce","arrayMethodIsStrict","CHROME_VERSION","IS_NODE","dateToPrimitive","DatePrototype","Date","isSymbol","$stringify","numberToString","tester","low","hi","WRONG_SYMBOLS_CONVERSION","symbol","ILL_FORMED_UNICODE","stringifyWithSymbolsFix","replacer","$replacer","fixIllFormed","offset","prev","stat","space","isForced","inheritIfRequired","isPrototypeOf","thisNumberValue","NUMBER","NativeNumber","NumberPrototype","NumberWrapper","primValue","third","radix","maxCode","digits","NaN","toNumber","toNumeric","getOwnPropertySymbolsModule","getOwnPropertySymbols","$getOwnPropertySymbols","STRING_ITERATOR","point","fixRegExpWellKnownSymbolLogic","isRegExp","speciesConstructor","advanceStringIndex","toLength","getMethod","callRegExpExec","regexpExec","stickyHelpers","UNSUPPORTED_Y","MAX_UINT32","min","$push","stringSlice","SPLIT","nativeSplit","maybeCallNative","internalSplit","separator","limit","lim","lastIndex","lastLength","flags","ignoreCase","multiline","unicode","sticky","lastLastIndex","separatorCopy","splitter","rx","unicodeMatching","q","originalExec","$toString","nativeObjectCreate","objectKeys","getOwnPropertyNamesModule","getOwnPropertyNamesExternal","getOwnPropertyDescriptorModule","definePropertiesModule","propertyIsEnumerableModule","shared","hiddenKeys","defineWellKnownSymbol","defineSymbolToPrimitive","$forEach","HIDDEN","SYMBOL","PROTOTYPE","$Symbol","QObject","nativeGetOwnPropertyDescriptor","nativeDefineProperty","nativeGetOwnPropertyNames","nativePropertyIsEnumerable","AllSymbols","ObjectPrototypeSymbols","WellKnownSymbolsStore","USE_SETTER","findChild","setSymbolDescriptor","Attributes","ObjectPrototypeDescriptor","wrap","$defineProperty","$defineProperties","Properties","properties","$propertyIsEnumerable","V","$getOwnPropertyDescriptor","IS_OBJECT_PROTOTYPE","unsafe","useSetter","useSimple","defineProperties","copyConstructorProperties","NativeSymbol","EmptyStringDescriptionStore","SymbolWrapper","thisSymbolValue","symbolDescriptiveString","regexp","desc","NATIVE_SYMBOL_REGISTRY","StringToSymbolRegistry","SymbolToStringRegistry","sym","DOMIterables","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","METHOD_NAME","___CSS_LOADER_EXPORT___","cssWithMappingToString","list","needLayer","modules","dedupe","alreadyImportedModules","cssMapping","base64","sourceMapping","read","buffer","isLE","mLen","nBytes","eLen","eMax","eBias","nBits","Infinity","pow","write","rt","abs","floor","LN2","HASH_UNDEFINED","INFINITY","funcTag","genTag","symbolTag","reIsDeepProp","reIsPlainProp","reLeadingDot","rePropName","reEscapeChar","reIsHostCtor","freeGlobal","freeSelf","root","Function","arrayProto","funcProto","objectProto","coreJsData","maskSrcKey","funcToString","objectToString","reIsNative","Map","getNative","nativeCreate","symbolProto","symbolToString","Hash","clear","entry","ListCache","MapCache","assocIndexOf","array","getMapData","__data__","getValue","pattern","isFunction","isHostObject","func","toSource","baseIsNative","has","pop","stringToPath","memoize","baseToString","number","quote","toKey","resolver","memoized","cache","Cache","isObjectLike","defaultValue","isKey","baseGet","moment","defineLocale","months","monthsShort","weekdays","weekdaysShort","weekdaysMin","meridiemParse","isPM","meridiem","hours","minutes","isLower","longDateFormat","LT","LTS","LL","LLL","LLLL","calendar","sameDay","nextDay","nextWeek","lastDay","lastWeek","sameElse","future","past","ss","mm","hh","dd","MM","yy","dayOfMonthOrdinalParse","ordinal","week","dow","doy","pluralForm","plurals","pluralize","withoutSuffix","isFuture","str","weekdaysParseExact","hour","minute","postformat","symbolMap","preparse","numberMap","suffixes","relativeTimeWithPlural","forms","standalone","isFormat","day","period","ww","lastDigit","last2Digits","meridiemHour","monthsShortRegex","monthsParseExact","relativeTimeWithMutation","mutationTable","substring","softMutation","mutation","lastNumber","monthsParse","monthsRegex","minWeekdaysParse","weekdaysParse","fullWeekdaysParse","shortWeekdaysParse","monthsStrictRegex","monthsShortStrictRegex","longMonthsParse","shortMonthsParse","ll","lll","llll","processRelativeTime","monthsNominativeEl","monthsGenitiveEl","momentToFormat","_monthsGenitiveEl","month","_monthsNominativeEl","calendarEl","mom","_calendarEl","monthsShortDot","invalidDate","numbersPast","numbersFuture","verbalNumber","monthsShortWithDots","monthsShortWithoutDots","weekEndings","eras","since","narrow","abbr","until","eraYearOrdinalRegex","eraYearOrdinalParse","now","$0","$1","$2","isUpper","eifelerRegelAppliesToNumber","substr","units","translateSingular","special","relativeTimeWithSingular","words","correctGrammaticalCase","wordKey","relativeTimeMr","monthsNominative","monthsSubjective","days","word","numbersNouns","numberNoun","hundred","ten","one","numberAsNoun","time","hm","processHoursFunction","nominative","accusative","genitive","webpackContext","req","webpackContextResolve","__webpack_require__","resolve","hookCallback","hooks","hasOwnProp","isObjectEmpty","isUndefined","isNumber","isDate","arrLen","extend","createUTC","strict","createLocalOrUTC","utc","getParsingFlags","_pf","unusedTokens","unusedInput","overflow","charsLeftOver","nullInput","invalidEra","invalidMonth","invalidFormat","userInvalidated","iso","parsedDateParts","era","rfc2822","weekdayMismatch","isValid","_isValid","parsedParts","isNowValid","_d","getTime","invalidWeekday","_strict","bigHour","isFrozen","createInvalid","fun","momentProperties","updateInProgress","copyConfig","to","from","prop","val","momentPropertiesLen","_isAMomentObject","_f","_tzm","_isUTC","_offset","_locale","Moment","config","updateOffset","isMoment","suppressDeprecationWarnings","deprecate","firstTime","deprecationHandler","argLen","deprecations","deprecateSimple","mergeConfigs","parentConfig","childConfig","Locale","zeroFill","targetLength","forceSign","absNumber","zerosToFill","formattingTokens","localFormattingTokens","formatFunctions","formatTokenFunctions","addFormatToken","padded","callback","formatMoment","expandFormat","makeFormatFunction","replaceLongDateFormatTokens","aliases","addUnitAlias","unit","shorthand","lowerCase","normalizeUnits","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","priorities","addUnitPriority","priority","isLeapYear","year","absFloor","ceil","toInt","argumentForCoercion","coercedNumber","isFinite","makeGetSet","keepTime","set$1","date","daysInMonth","regexes","match1","match2","match3","match4","match6","match1to2","match3to4","match5to6","match1to3","match1to4","match1to6","matchUnsigned","matchSigned","matchOffset","matchShortOffset","matchWord","addRegexToken","regex","strictRegex","isStrict","getParseRegexForToken","regexEscape","matched","p1","p2","p3","p4","tokens","addParseToken","tokenLen","addWeekParseToken","_w","addTimeToArrayFromToken","_a","YEAR","MONTH","DATE","HOUR","MINUTE","SECOND","MILLISECOND","WEEK","WEEKDAY","modMonth","defaultLocaleMonths","defaultLocaleMonthsShort","MONTHS_IN_FORMAT","defaultMonthsShortRegex","defaultMonthsRegex","handleStrictParse","monthName","ii","llc","toLocaleLowerCase","_monthsParse","_longMonthsParse","_shortMonthsParse","setMonth","dayOfMonth","getSetMonth","computeMonthsParse","cmpLenRev","shortPieces","longPieces","mixedPieces","sort","_monthsRegex","_monthsShortRegex","_monthsStrictRegex","_monthsShortStrictRegex","daysInYear","parseTwoDigitYear","getSetYear","createDate","ms","getFullYear","setFullYear","createUTCDate","UTC","getUTCFullYear","setUTCFullYear","firstWeekOffset","fwd","getUTCDay","dayOfYearFromWeeks","weekday","resYear","resDayOfYear","dayOfYear","weekOfYear","resWeek","weekOffset","weeksInYear","weekOffsetNext","shiftWeekdays","ws","weekdaysMinRegex","weekdaysShortRegex","weekdaysRegex","defaultLocaleWeekdays","defaultLocaleWeekdaysShort","defaultLocaleWeekdaysMin","defaultWeekdaysRegex","defaultWeekdaysShortRegex","defaultWeekdaysMinRegex","handleStrictParse$1","weekdayName","_weekdaysParse","_shortWeekdaysParse","_minWeekdaysParse","computeWeekdaysParse","minp","shortp","longp","minPieces","_weekdaysRegex","_weekdaysShortRegex","_weekdaysMinRegex","_weekdaysStrictRegex","_weekdaysShortStrictRegex","_weekdaysMinStrictRegex","hFormat","lowercase","matchMeridiem","_meridiemParse","kInput","_isPm","_meridiem","pos","pos1","pos2","getSetHour","globalLocale","baseConfig","locales","localeFamilies","commonPrefix","arr1","arr2","minl","normalizeLocale","loadLocale","oldLocale","isLocaleNameSane","_abbr","getSetGlobalLocale","_config","chooseLocale","checkOverflow","_overflowDayOfYear","_overflowWeeks","_overflowWeekday","extendedIsoRegex","basicIsoRegex","tzRegex","isoDates","isoTimes","aspNetJsonRegex","obsOffsets","UT","GMT","EDT","EST","CDT","CST","MDT","MST","PDT","PST","configFromISO","allowTime","dateFormat","timeFormat","tzFormat","isoDatesLen","isoTimesLen","configFromStringAndFormat","untruncateYear","yearStr","configFromRFC2822","parsedArray","monthStr","dayStr","hourStr","minuteStr","secondStr","weekdayStr","parsedInput","getDay","checkWeekday","obsOffset","militaryOffset","numOffset","calculateOffset","setUTCMinutes","getUTCMinutes","defaults","configFromArray","currentDate","expectedWeekday","yearToUse","nowValue","_useUTC","getUTCMonth","getUTCDate","getMonth","getDate","currentDateArray","weekYear","temp","weekdayOverflow","curWeek","GG","W","createLocal","_week","gg","_dayOfYear","dayOfYearFromWeekInfo","_nextDay","ISO_8601","RFC_2822","skipped","stringLength","totalParsedInputLength","isPm","meridiemFixWrap","erasConvertYear","prepareConfig","tempConfig","bestMoment","scoreToBeat","currentScore","validFormatFound","bestFormatIsValid","configfLen","score","configFromStringAndArray","createFromInputFallback","configFromString","dayOrDate","second","millisecond","configFromObject","configFromInput","isUTC","prototypeMin","prototypeMax","pickBy","moments","ordering","Duration","duration","years","quarters","quarter","weeks","isoWeek","milliseconds","unitHasDecimal","orderLen","parseFloat","isDurationValid","_milliseconds","_days","_months","_data","_bubble","isDuration","absRound","utcOffset","sign","offsetFromString","chunkOffset","matcher","matches","cloneWithOffset","diff","clone","setTime","local","getDateOffset","getTimezoneOffset","isUtc","aspNetRegex","isoRegex","createDuration","ret","diffRes","parseIso","isBefore","positiveMomentsDifference","inp","isAfter","createAdder","direction","addSubtract","isAdding","invalid","subtract","isString","isMomentInput","arrayTest","dataTypeTest","isNumberOrStringArray","property","objectTest","propertyTest","propertyLen","isMomentInputObject","monthDiff","wholeMonthDiff","anchor","newLocaleData","defaultFormat","defaultFormatUtc","MS_PER_SECOND","MS_PER_MINUTE","MS_PER_HOUR","MS_PER_400_YEARS","mod$1","dividend","divisor","localStartOfDate","utcStartOfDate","matchEraAbbr","erasAbbrRegex","computeErasParse","abbrPieces","namePieces","narrowPieces","_erasRegex","_erasNameRegex","_erasAbbrRegex","_erasNarrowRegex","addWeekYearFormatToken","getter","getSetWeekYearHelper","weeksTarget","setWeekAll","dayOfYearData","erasNameRegex","erasNarrowRegex","erasParse","_eraYearOrdinalRegex","isoWeekYear","_dayOfMonthOrdinalParse","_ordinalParse","_dayOfMonthOrdinalParseLenient","getSetDayOfMonth","getSetMinute","getSetMillisecond","getSetSecond","parseMs","preParsePostFormat","formats","isCalendarSpec","sod","startOf","calendarFormat","asFloat","zoneDelta","endOf","startOfDate","isoWeekday","inputString","humanize","fromNow","toNow","invalidAt","localInput","isBetween","inclusivity","localFrom","localTo","isSame","inputMs","isSameOrAfter","isSameOrBefore","parsingFlags","prioritized","unitsObj","getPrioritizedUnits","prioritizedLen","toArray","toDate","toISOString","keepOffset","inspect","prefix","suffix","zone","isLocal","toJSON","unix","creationData","eraName","eraNarrow","eraAbbr","eraYear","dir","isoWeeks","weekInfo","weeksInWeekYear","isoWeeksInYear","isoWeeksInISOWeekYear","parseWeekday","parseIsoWeekday","keepLocalTime","keepMinutes","localAdjust","_changeInProgress","parseZone","tZone","hasAlignedHourOffset","isDST","isUtcOffset","zoneAbbr","zoneName","dates","isDSTShifted","_isDSTShifted","array1","array2","dontConvert","lengthDiff","diffs","compareArrays","proto$1","get$1","field","listMonthsImpl","out","listWeekdaysImpl","localeSorted","shift","_calendar","_longDateFormat","formatUpper","tok","_invalidDate","_ordinal","pastFuture","_eras","_monthsShort","_monthsParseExact","firstDayOfYear","firstDayOfWeek","_weekdays","_weekdaysMin","_weekdaysShort","_weekdaysParseExact","_fullWeekdaysParse","langData","mathAbs","addSubtract$1","absCeil","daysToMonths","monthsToDays","makeAs","alias","as","asMilliseconds","asSeconds","asMinutes","asHours","asDays","asWeeks","asMonths","asQuarters","asYears","makeGetter","thresholds","substituteTimeAgo","abs$1","toISOString$1","totalSign","ymSign","daysSign","hmsSign","total","toFixed","proto$2","monthsFromDays","argWithSuffix","argThresholds","withSuffix","th","posNegDuration","relativeTime$1","toIsoString","tmpLocale","relativeTimeRounding","roundingFunction","relativeTimeThreshold","threshold","myMoment","HTML5_FMT","DATETIME_LOCAL","DATETIME_LOCAL_SECONDS","DATETIME_LOCAL_MS","TIME","TIME_SECONDS","TIME_MS","Gettext","catalogs","domain","listeners","eventName","off","listener","emit","eventData","setTextDomain","dnpgettext","dgettext","msgidPlural","dngettext","pgettext","msgctxt","dpgettext","npgettext","translation","defaultTranslation","_getTranslation","pluralsFunc","getLanguageCode","getComment","textdomain","setlocale","addTextdomain","ach","examples","sample","nplurals","pluralsText","af","ak","am","an","ar","arn","ast","ay","az","be","bg","bn","bo","br","brx","bs","ca","cgg","cs","csb","cy","da","de","doi","dz","en","eo","es","et","eu","fa","ff","fi","fil","fo","fr","fur","fy","ga","gd","gl","gu","gun","ha","he","hne","hr","hu","hy","is","ja","jbo","jv","ka","kk","km","kn","ko","ku","kw","ky","lb","ln","lo","lt","lv","mai","mfe","mg","mi","mk","ml","mn","mni","mnk","mr","mt","my","nah","nap","nb","ne","nl","nn","no","nso","oc","or","pa","pap","pl","pms","ps","pt","rm","ro","ru","rw","sah","sat","sco","sd","se","si","sk","sl","so","son","sq","sr","su","sv","sw","ta","te","tg","ti","tk","tr","tt","ug","uk","ur","uz","vi","wa","wo","yo","zh","ieee754","customInspectSymbol","Buffer","INSPECT_MAX_BYTES","K_MAX_LENGTH","createBuffer","RangeError","buf","encodingOrOffset","allocUnsafe","encoding","isEncoding","actual","fromString","ArrayBuffer","isView","arrayView","isInstance","copy","fromArrayBuffer","byteOffset","fromArrayLike","fromArrayView","SharedArrayBuffer","isBuffer","numberIsNaN","fromObject","assertSize","mustMatch","loweredCase","utf8ToBytes","base64ToBytes","slowToString","hexSlice","utf8Slice","asciiSlice","latin1Slice","base64Slice","utf16leSlice","swap","bidirectionalIndexOf","arrayIndexOf","lastIndexOf","indexSize","arrLength","valLength","readUInt16BE","foundIndex","found","hexWrite","remaining","strLen","parsed","utf8Write","blitBuffer","asciiWrite","byteArray","asciiToBytes","base64Write","ucs2Write","utf16leToBytes","firstByte","codePoint","bytesPerSequence","secondByte","thirdByte","fourthByte","tempCodePoint","codePoints","MAX_ARGUMENTS_LENGTH","fromCharCode","decodeCodePointsArray","TYPED_ARRAY_SUPPORT","foo","typedArraySupport","poolSize","alloc","allocUnsafeSlow","_isBuffer","swap16","swap32","swap64","toLocaleString","equals","thisStart","thisEnd","thisCopy","targetCopy","_arr","hexSliceLookupTable","bytes","checkOffset","ext","checkInt","wrtBigUInt64LE","checkIntBI","BigInt","wrtBigUInt64BE","checkIEEE754","writeFloat","littleEndian","noAssert","writeDouble","newBuf","subarray","readUintLE","readUIntLE","mul","readUintBE","readUIntBE","readUint8","readUInt8","readUint16LE","readUInt16LE","readUint16BE","readUint32LE","readUInt32LE","readUint32BE","readUInt32BE","readBigUInt64LE","defineBigIntMethod","validateNumber","last","boundsError","readBigUInt64BE","readIntLE","readIntBE","readInt8","readInt16LE","readInt16BE","readInt32LE","readInt32BE","readBigInt64LE","readBigInt64BE","readFloatLE","readFloatBE","readDoubleLE","readDoubleBE","writeUintLE","writeUIntLE","writeUintBE","writeUIntBE","writeUint8","writeUInt8","writeUint16LE","writeUInt16LE","writeUint16BE","writeUInt16BE","writeUint32LE","writeUInt32LE","writeUint32BE","writeUInt32BE","writeBigUInt64LE","writeBigUInt64BE","writeIntLE","sub","writeIntBE","writeInt8","writeInt16LE","writeInt16BE","writeInt32LE","writeInt32BE","writeBigInt64LE","writeBigInt64BE","writeFloatLE","writeFloatBE","writeDoubleLE","writeDoubleBE","targetStart","copyWithin","errors","getMessage","Base","super","addNumericalSeparator","range","ERR_OUT_OF_RANGE","checkBounds","ERR_INVALID_ARG_TYPE","ERR_BUFFER_OUT_OF_BOUNDS","received","isInteger","INVALID_BASE64_RE","leadSurrogate","base64clean","dst","alphabet","table","i16","BufferBigIntNotDefined","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","defaultClearTimeout","runTimeout","setTimeout","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","drainQueue","timeout","run","marker","runClearTimeout","Item","nextTick","browser","argv","versions","addListener","once","removeListener","removeAllListeners","prependListener","prependOnceListener","binding","cwd","chdir","umask","stylesInDOM","getIndexByIdentifier","modulesToDom","idCountMap","identifiers","indexByIdentifier","addElementStyle","api","newObj","lastIdentifiers","newList","newLastIdentifiers","_index","styleTarget","getTarget","element","styleElement","nonce","removeStyleElement","thisArg","kindOf","thing","kindOfTest","typeOfTest","isArrayBuffer","isPlainObject","isFile","isBlob","isFileList","isURLSearchParams","allOwnKeys","findKey","_global","globalThis","isContextDefined","isTypedArray","TypedArray","isHTMLForm","reduceDescriptors","reducer","descriptors","getOwnPropertyDescriptors","reducedDescriptors","ALPHA","DIGIT","ALPHABET","ALPHA_DIGIT","isAsyncFn","isFormData","FormData","append","isArrayBufferView","isBoolean","isStream","pipe","merge","caseless","assignValue","targetKey","stripBOM","inherits","superConstructor","toFlatObject","sourceObj","destObj","propFilter","merged","endsWith","searchString","position","forEachEntry","pair","matchAll","regExp","freezeMethods","toObjectSet","arrayOrString","delimiter","define","toCamelCase","toFiniteNumber","generateString","isSpecCompliantForm","toJSONObject","visit","reducedValue","isThenable","then","catch","AxiosError","request","captureStackTrace","utils","fileName","lineNumber","columnNumber","customProps","axiosError","cause","isVisitable","removeBrackets","renderKey","dots","predicates","formData","metaTokens","indexes","option","visitor","defaultVisitor","useBlob","Blob","convertValue","isFlatArray","exposedHelpers","encode","charMap","AxiosURLSearchParams","params","_pairs","encoder","_encode","buildURL","serializeFn","serialize","serializedParams","hashmarkIndex","handlers","use","fulfilled","rejected","synchronous","runWhen","eject","silentJSONParsing","forcedJSONParsing","clarifyTimeoutError","isBrowser","classes","URLSearchParams","isStandardBrowserEnv","product","navigator","isStandardBrowserWebWorkerEnv","WorkerGlobalScope","importScripts","protocols","buildPath","isNumericKey","isLast","arrayToObject","parsePropPath","DEFAULT_CONTENT_TYPE","transitional","adapter","transformRequest","contentType","getContentType","hasJSONContentType","isObjectPayload","setContentType","helpers","isNode","toURLEncodedForm","formSerializer","_FormData","rawValue","parser","stringifySafely","transformResponse","JSONRequested","responseType","strictJSONParsing","ERR_BAD_RESPONSE","xsrfCookieName","xsrfHeaderName","maxContentLength","maxBodyLength","validateStatus","common","method","ignoreDuplicateOf","$internals","normalizeHeader","header","normalizeValue","matchHeaderValue","isHeaderNameFilter","AxiosHeaders","valueOrRewrite","rewrite","setHeader","_value","_header","_rewrite","lHeader","setHeaders","rawHeaders","line","parseHeaders","tokensRE","parseTokens","delete","deleted","deleteHeader","normalize","normalized","char","formatHeader","targets","asStrings","static","accessors","defineAccessor","accessorName","methodName","arg1","arg2","arg3","buildAccessors","accessor","transformData","fns","isCancel","__CANCEL__","CanceledError","ERR_CANCELED","expires","secure","cookie","toGMTString","decodeURIComponent","buildFullPath","baseURL","requestedURL","relativeURL","combineURLs","msie","userAgent","urlParsingNode","originURL","resolveURL","protocol","host","search","hostname","port","pathname","requestURL","progressEventReducer","isDownloadStream","bytesNotified","_speedometer","samplesCount","timestamps","firstSampleTS","tail","chunkLength","startedAt","bytesCount","passed","loaded","lengthComputable","progressBytes","rate","progress","estimated","event","knownAdapters","http","xhr","XMLHttpRequest","Promise","reject","requestData","requestHeaders","onCanceled","cancelToken","signal","auth","username","password","fullPath","onloadend","responseHeaders","getAllResponseHeaders","ERR_BAD_REQUEST","settle","err","responseText","statusText","paramsSerializer","onreadystatechange","responseURL","onabort","ECONNABORTED","ERR_NETWORK","ontimeout","timeoutErrorMessage","ETIMEDOUT","xsrfValue","withCredentials","isURLSameOrigin","cookies","setRequestHeader","onDownloadProgress","onUploadProgress","upload","cancel","abort","aborted","parseProtocol","send","throwIfCancellationRequested","throwIfRequested","dispatchRequest","adapters","nameOrAdapter","reason","headersToObject","mergeConfig","config1","config2","getMergedValue","mergeDeepProperties","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","timeoutMessage","decompress","beforeRedirect","transport","httpAgent","httpsAgent","socketPath","responseEncoding","configValue","validators","deprecatedWarnings","opt","opts","ERR_DEPRECATED","assertOptions","schema","allowUnknown","ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","Axios","instanceConfig","interceptors","configOrUrl","contextHeaders","boolean","function","requestInterceptorChain","synchronousRequestInterceptors","interceptor","unshift","responseInterceptorChain","promise","chain","newConfig","onFulfilled","onRejected","getUri","generateHTTPMethod","isForm","CancelToken","executor","resolvePromise","_listeners","onfulfilled","_resolve","HttpStatusCode","Continue","SwitchingProtocols","Processing","EarlyHints","Ok","Created","Accepted","NonAuthoritativeInformation","NoContent","ResetContent","PartialContent","MultiStatus","AlreadyReported","ImUsed","MultipleChoices","MovedPermanently","Found","SeeOther","NotModified","UseProxy","Unused","TemporaryRedirect","PermanentRedirect","BadRequest","Unauthorized","PaymentRequired","Forbidden","NotFound","MethodNotAllowed","NotAcceptable","ProxyAuthenticationRequired","RequestTimeout","Conflict","Gone","LengthRequired","PreconditionFailed","PayloadTooLarge","UriTooLong","UnsupportedMediaType","RangeNotSatisfiable","ExpectationFailed","ImATeapot","MisdirectedRequest","UnprocessableEntity","Locked","FailedDependency","TooEarly","UpgradeRequired","PreconditionRequired","TooManyRequests","RequestHeaderFieldsTooLarge","UnavailableForLegalReasons","InternalServerError","NotImplemented","BadGateway","ServiceUnavailable","GatewayTimeout","HttpVersionNotSupported","VariantAlsoNegotiates","InsufficientStorage","LoopDetected","NotExtended","NetworkAuthenticationRequired","axios","createInstance","defaultConfig","VERSION","toFormData","Cancel","all","promises","spread","isAxiosError","payload","formToJSON","ProxyBus","bus","getVersion","valid","handler","SimpleBus","Proxy","_eventBus","_nc_event_bus","__assign","__awaiter","_arguments","generator","step","__generator","sent","trys","ops","verb","op","SuppressedError","RETRY_KEY","RETRY_DELAY_KEY","client","requesttoken","cancelableClient","onError$2","retryDelay_1","retryIfMaintenanceMode","onError$1","reloadExpiredSession","reload","bail","toStr","gOPD","isPlainObject$1","hasOwnConstructor","hasIsPrototypeOf","setProperty","newValue","getProperty","extend2","copyIsArray","deep","isPlainObject2","stringifyPosition","point$1","point2","column","VFileMessage","place","origin","position2","index2","fatal","ruleId","expected","file","note","assertPath$1","seenNonSlash","firstNonSlashEnd","extIndex","unmatchedSlash","startPart","startDot","preDotState","code2","segments","joined","absolute","allowAboveRoot","lastSlashIndex","lastSegmentLength","lastSlash","normalizeString","normalize$1","proc","isUrl","fileURLOrPath","order","VFile","messages","history","stored","prop2","getPathFromURLPosix","urlToPath","assertNonEmpty","dirname","dirname2","assertPath","basename","basename2","assertPart","extname","extname2","stem","fail","part","unified","transformers","pipeline","middlewareIndex","middleware","parameters","fnExpectsCallback","wrap$1","middelware","trough","attachers","frozen","namespace","freezeIndex","processor","assertUnfrozen","own$7","Parser","Compiler","attacher","transformer","POSITIVE_INFINITY","settings","addPlugin","addList","addPreset","value2","plugin","options2","plugins","doc","vfile","assertParser","newable","node","assertCompiler","assertNode","compile","tree","runSync","complete","assertDone","file2","processSync","destination","asyncName","looksLikeAVFile","normalizeComponent","scriptExports","render3","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","originalRender","existing","_vue_richtext_widgets","_registerWidget","onDestroy","_sfc_main$2","compact","hasCustomWidget","richObjectType","noAccess","accessible","descriptionStyle","display","lineClamp","webkitLineClamp","compactLink","link2","openGraphObject","link","startsWith","renderWidget","ResizeObserver","contentRect","observe","disconnect","customWidget","richObject","ReferenceWidget","_vm","thumb","URL_PATTERN","URL_PATTERN_AUTOLINK","_sfc_main$1","referenceData","loading","firstReference","displayedReferences","fetch","ReferenceList","one$1","includeImageAlt","all$1","children","list2","chunkStart","hasOwnProperty$1","syntaxExtension","all2","extension2","constructs","before","asciiAlpha","regexCheck","asciiDigit","asciiHexDigit","asciiAlphanumeric","asciiPunctuation","asciiAtext","asciiControl","markdownLineEndingOrSpace","markdownLineEnding","markdownSpace","unicodeWhitespace","unicodePunctuation","factorySpace","effects","ok2","enter","consume","exit","content$1","tokenize","contentStart","attempt","contentInitial","lineStart","previous2","previous","document$2","childFlow","childToken","lineStartOffset","continued","containerState","continuation","documentContinue","checkNewContainers","_closeFlow","closeFlow","indexBeforeExits","events","indexBeforeFlow","exitContainers","documentContinued","currentConstruct","concrete","flowStart","interrupt","_gfmTableDynamicInterruptHack","check","containerConstruct","thereIsANewContainer","thereIsNoNewContainer","lazy","containerContinue","flow","_tokenizer","flowContinue","writeToChild","eof","stream","sliceStream","defineSkip","seen","nok","disable","null","classifyCharacter","resolveAll","constructs2","attention","attentionMarkers2","attentionMarkers","sequence","after","close","_open","_close","group","text2","openingSequence","closingSequence","nextEvents","sliceSerialize","movePoint","insideSpan","_bufferIndex","autolink","schemeOrEmailAtext","emailAtext","schemeInsideOrEmailAtext","urlInside","emailAtSignOrDot","emailLabel","emailValue","blankLine","partial","blockQuote","_container","characterEscape","element$1","decodeNamedCharacterReference","characterReference2","textContent","characterReference","codeFenced","closingFenceConstruct","effects2","ok3","nok2","sizeOpen","closingSequenceEnd","nonLazyLine","self2","initialPrefix","sequenceOpen","infoOpen","openAfter","infoAfter","meta","contentContinue","codeIndented","afterStartPrefix","afterPrefix","indentedContent","content2","codeText","gap","tailExitIndex","headEnterIndex","subtokenize","jumps","lineIndex","otherIndex","otherEvent","subevents","more","_isInFirstContentOfListItem","subcontent","eventIndex","startPosition","startPositions","tokenizer","childEvents","gaps","current","adjust","breaks","_gfmTasklistFirstContentOfListItem","start2","contentEnd","continuationConstruct","prefixed","factoryDestination","literalType","literalMarkerType","rawType","stringType","balance","destinationEnclosedBefore","destinationRaw","destinationEnclosed","destinationEnclosedEscape","destinationRawEscape","factoryLabel","markerType","atBreak","labelEscape","factoryTitle","atFirstTitleBreak","atTitleBreak","titleEscape","factoryWhitespace","normalizeIdentifier","definition","labelAfter","titleConstruct","defined","hardBreakEscape","headingAtx","fenceOpenInside","headingBreak","htmlBlockNames","htmlRawNames","htmlFlow","startTag","declarationStart","tagCloseStart","continuationDeclarationInside","tagName","commentOpenInside","cdataOpenInside","basicSelfClosing","completeAttributeNameBefore","completeClosingTagAfter","completeEnd","completeAttributeName","completeAttributeNameAfter","completeAttributeValueBefore","completeAttributeValueQuoted","completeAttributeValueUnquoted","completeAttributeValueQuotedAfter","completeAfter","continuationCommentInside","continuationRawTagOpen","continuationClose","continuationCharacterDataInside","continuationAtLineEnding","nextBlankConstruct","htmlContinueStart","htmlLineEnd","continuationRawEndTag","resolveTo","htmlText","returnState","declarationOpen","instruction","tagOpen","commentOpen","cdataOpen","declaration","commentStart","commentStartDash","comment","commentClose","atLineEnding","cdata","cdataClose","cdataEnd","instructionClose","tagClose","tagCloseBetween","tagOpenBetween","tagOpenAttributeName","tagOpenAttributeNameAfter","tagOpenAttributeValueBefore","tagOpenAttributeValueQuoted","tagOpenAttributeValueUnquoted","tagOpenAttributeValueQuotedAfter","labelEnd","labelStart","_balanced","_inactive","balanced","afterLabelEnd","resourceConstruct","fullReferenceConstruct","collapsedReferenceConstruct","destinationAfter","between","afterLabel","labelStartImage","labelStartLink","lineEnding","thematicBreak$1","list$1","initialSize","atMarker","inside","onBlank","listItemPrefixWhitespaceConstruct","endOfPrefix","otherPrefix","initialBlankLine","furtherBlankLines","notInCurrentItem","indentConstruct","setextUnderline","paragraph2","definition2","heading2","flow$1","initial","flowInitial","afterConstruct","createResolver","string$1","initializeFactory","text$3","notText","resolveAllLineSuffixes","extraResolver","chunks","tabs","bufferIndex","chunk","createTokenizer","initialize","columnStart","resolveAllConstructs","accountForPotentialSkip","fields","constructFactory","addResult","onsuccessfulcheck","expandTabs","atTab","serializeChunks","chunkIndex","go","startIndex","startBufferIndex","endIndex","endBufferIndex","view","sliceChunks","restore","onreturn","bogusState","listOfConstructs","constructIndex","handleListOfConstructs","def","handleConstruct","startPoint","startPrevious","startCurrentConstruct","startEventsIndex","startStack","store","from2","document$1","text$2","defaultConstructs","decodeNumericCharacterReference","base2","characterEscapeOrReference","decode","head2","hex","own$6","fromMarkdown","configure","transforms","canContainEols","opener","autolinkProtocol","onenterdata","autolinkEmail","atxHeading","codeFlow","codeFencedFenceInfo","codeFencedFenceMeta","codeTextData","codeFlowValue","definitionDestinationString","definitionLabelString","definitionTitleString","emphasis","hardBreak2","hardBreakTrailing","html2","htmlFlowData","htmlTextData","image","listItem","_spread","listItemValue","getData","setData","listOrdered","listUnordered","paragraph","referenceString","resourceDestinationString","resourceTitleString","setextHeading","strong","thematicBreak","closer","atxHeadingSequence","depth","onexitdata","characterEscapeValue","characterReferenceMarkerHexadecimal","onexitcharacterreferencemarker","characterReferenceMarkerNumeric","characterReferenceValue","data2","resume","codeFencedFence","onexithardbreak","referenceType","fragment","labelText","ancestor","string2","decodeString","resource","setextHeadingLineSequence","setextHeadingText","mdastExtensions","tokenStack","listStack","exit2","prepareList","defaultOnError","listItem3","firstBlankLineIndex","containerBalance","listSpread","tailIndex","tailEvent","create2","and","errorHandler","onExitError","ordered","compiler","postprocess","extensions","combineExtensions","parse$2","atCarriageReturn","endPosition","preprocess","combined","extension","remarkParse","convert$2","ok$1","castFactory","tests","checks2","index3","anyFactory$1","propsFactory","SKIP$2","visit$2","visitor2","factory2","parents","visit2","subresult","grandparents","toResult$1","visitParents$2","find$1","remarkBreaks","own$5","unknown","augment","passThrough","returnNode","unknownHandler","nodes","pointStart","pointEnd","point3","own$4","definitions","definition3","clean","characterReferences","sanitizeUri","encode$1","skip","normalizeUri","colon","questionMark","numberSign","slash","footnoteReference","safeId","footnoteOrder","counter","footnoteCounts","reuseCounter","clobberPrefix","dataFootnoteRef","ariaDescribedBy","encodeCache","exclude","keepEscaped","nextCode","defaultChars","ch","getEncodeCache","componentChars","encode_1","revert","subtype","contents","listItemLoose","trimLine","blockquote","break","footnote","footnoteById","heading","html","dangerous","imageReference","inlineCode","linkReference","listLoose","wrapped","child","rows","align","row","cellIndex","cell","search2","lines","trimLines","toml","ignore","yaml","footnoteDefinition","own$3","toHast","allowDangerousHtml","footnoteLabel","footnoteLabelTagName","footnoteLabelProperties","footnoteBackLabel","hName","hProperties","hChildren","ctx","foot","listItems","referenceIndex","backReferences","backReference","dataFootnoteBackref","ariaLabel","tailTail","listItem2","dataFootnotes","footer","remark2rehype","bridge","mutate","Schema","normal","space2","definitions2","booleanish","overloadedBoolean","commaSeparated","spaceSeparated","commaOrSpaceSeparated","mustUseProperty","powers","increment","types","checks","DefinedInfo","mask","mark","own$2","transform","xlink","xLinkActuate","xLinkArcRole","xLinkHref","xLinkRole","xLinkShow","xLinkTitle","xLinkType","xml","xmlLang","xmlBase","xmlSpace","caseSensitiveTransform","caseInsensitiveTransform","xmlns","xmlnsxlink","xmlnsXLink","aria","ariaActiveDescendant","ariaAtomic","ariaAutoComplete","ariaBusy","ariaChecked","ariaColCount","ariaColIndex","ariaColSpan","ariaControls","ariaCurrent","ariaDetails","ariaDisabled","ariaDropEffect","ariaErrorMessage","ariaExpanded","ariaFlowTo","ariaGrabbed","ariaHasPopup","ariaHidden","ariaInvalid","ariaKeyShortcuts","ariaLabelledBy","ariaLevel","ariaLive","ariaModal","ariaMultiLine","ariaMultiSelectable","ariaOrientation","ariaOwns","ariaPlaceholder","ariaPosInSet","ariaPressed","ariaReadOnly","ariaRelevant","ariaRequired","ariaRoleDescription","ariaRowCount","ariaRowIndex","ariaRowSpan","ariaSelected","ariaSetSize","ariaSort","ariaValueMax","ariaValueMin","ariaValueNow","ariaValueText","html$1","acceptcharset","classname","htmlfor","httpequiv","accept","acceptCharset","accessKey","allow","allowFullScreen","allowPaymentRequest","allowUserMedia","autoCapitalize","autoComplete","autoFocus","autoPlay","capture","charSet","cite","cols","colSpan","contentEditable","controls","controlsList","coords","crossOrigin","dateTime","decoding","defer","dirName","draggable","encType","enterKeyHint","form","formAction","formEncType","formMethod","formNoValidate","formTarget","hidden","high","hrefLang","htmlFor","httpEquiv","imageSizes","imageSrcSet","inputMode","integrity","isMap","itemId","itemProp","itemRef","itemScope","itemType","loop","manifest","maxLength","minLength","multiple","muted","noModule","noValidate","onAbort","onAfterPrint","onAuxClick","onBeforePrint","onBeforeUnload","onBlur","onCancel","onCanPlay","onCanPlayThrough","onChange","onClose","onContextLost","onContextMenu","onContextRestored","onCopy","onCueChange","onCut","onDblClick","onDrag","onDragEnd","onDragEnter","onDragExit","onDragLeave","onDragOver","onDragStart","onDrop","onDurationChange","onEmptied","onEnded","onError","onFocus","onFormData","onHashChange","onInput","onInvalid","onKeyDown","onKeyPress","onKeyUp","onLanguageChange","onLoad","onLoadedData","onLoadedMetadata","onLoadEnd","onLoadStart","onMessage","onMessageError","onMouseDown","onMouseEnter","onMouseLeave","onMouseMove","onMouseOut","onMouseOver","onMouseUp","onOffline","onOnline","onPageHide","onPageShow","onPaste","onPause","onPlay","onPlaying","onPopState","onProgress","onRateChange","onRejectionHandled","onReset","onResize","onScroll","onSecurityPolicyViolation","onSeeked","onSeeking","onSelect","onSlotChange","onStalled","onStorage","onSubmit","onSuspend","onTimeUpdate","onToggle","onUnhandledRejection","onUnload","onVolumeChange","onWaiting","onWheel","optimum","ping","playsInline","poster","preload","readOnly","referrerPolicy","reversed","rowSpan","sandbox","scope","scoped","seamless","selected","shape","sizes","slot","span","spellCheck","srcDoc","srcLang","srcSet","tabIndex","typeMustMatch","useMap","aLink","archive","axis","background","bgColor","border","borderColor","bottomMargin","cellPadding","cellSpacing","charOff","classId","codeBase","codeType","declare","face","frame","frameBorder","hSpace","leftMargin","longDesc","lowSrc","marginHeight","marginWidth","noResize","noHref","noShade","noWrap","profile","prompt","rev","rightMargin","rules","scheme","scrolling","standby","summary","topMargin","valueType","vAlign","vLink","vSpace","allowTransparency","autoCorrect","autoSave","disablePictureInPicture","disableRemotePlayback","results","security","unselectable","svg$1","accentHeight","alignmentBaseline","arabicForm","baselineShift","capHeight","clipPath","clipRule","colorInterpolation","colorInterpolationFilters","colorProfile","colorRendering","dataType","dominantBaseline","enableBackground","fillOpacity","fillRule","floodColor","floodOpacity","fontFamily","fontSizeAdjust","fontStretch","fontStyle","fontVariant","fontWeight","glyphName","glyphOrientationHorizontal","glyphOrientationVertical","horizAdvX","horizOriginX","horizOriginY","imageRendering","letterSpacing","lightingColor","markerEnd","markerMid","markerStart","navDown","navDownLeft","navDownRight","navLeft","navNext","navPrev","navRight","navUp","navUpLeft","navUpRight","onActivate","onBegin","onEnd","onFocusIn","onFocusOut","onMouseWheel","onRepeat","onShow","onZoom","overlinePosition","overlineThickness","paintOrder","panose1","pointerEvents","renderingIntent","shapeRendering","stopColor","stopOpacity","strikethroughPosition","strikethroughThickness","strokeDashArray","strokeDashOffset","strokeLineCap","strokeLineJoin","strokeMiterLimit","strokeOpacity","strokeWidth","textAnchor","textDecoration","textRendering","typeOf","underlinePosition","underlineThickness","unicodeBidi","unicodeRange","unitsPerEm","vAlphabetic","vHanging","vIdeographic","vMathematical","vectorEffect","vertAdvY","vertOriginX","vertOriginY","wordSpacing","writingMode","xHeight","playbackOrder","timelineBegin","about","accumulate","additive","alphabetic","amplitude","ascent","attributeName","attributeType","azimuth","bandwidth","baseFrequency","baseProfile","bbox","begin","bias","by","calcMode","clip","clipPathUnits","contentScriptType","contentStyleType","cursor","cx","defaultAction","descent","diffuseConstant","dur","dx","dy","edgeMode","editable","elevation","exponent","externalResourcesRequired","filterRes","filterUnits","focusable","focusHighlight","fx","g1","g2","glyphRef","gradientTransform","gradientUnits","hanging","hatchContentUnits","hatchUnits","ideographic","initialVisibility","in","in2","intercept","k1","k2","k3","k4","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","kerning","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","mathematical","mediaCharacterEncoding","mediaContentEncodings","mediaSize","mediaTime","mode","numOctaves","opacity","operator","orient","orientation","overlay","pathLength","patternContentUnits","patternTransform","patternUnits","phase","pitch","points","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","propagate","radius","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","requiredFonts","requiredFormats","restart","rotate","ry","scale","seed","side","slope","snapshotTime","specularConstant","specularExponent","spreadMethod","spacing","startOffset","stdDeviation","stemh","stemv","stitchTiles","stroke","surfaceScale","syncBehavior","syncBehaviorDefault","syncMaster","syncTolerance","syncToleranceDefault","systemLanguage","tableValues","targetX","targetY","textLength","transformBehavior","u1","u2","viewTarget","visibility","widths","x1","x2","xChannelSelector","y1","y2","yChannelSelector","zoomAndPan","dash","cap","kebab","camelcase","svg","COMMENT_REGEX","NEWLINE_REGEX","WHITESPACE_REGEX","PROPERTY_REGEX","COLON_REGEX","VALUE_REGEX","SEMICOLON_REGEX","TRIM_REGEX","EMPTY_STRING","styleToObject","declarations","lineno","updatePosition","Position","whitespace2","filename","silent","decl","decls","parse$1","hasIterator","ns","mathml","toReact","own$1","toH","react","_isVue","vue","vd","vdom","hyperscript","parentSchema","addAttribute","Type","rest","dashes","subprop","padRight","padLeft","parseStyle","convert$1","typeFactory","ok","anyFactory","matchesFactory","convertAll","unistUtilVisitParents","visitParents$1","convert","CONTINUE$1","SKIP$1","EXIT$1","one2","toResult","CONTINUE","SKIP","EXIT","unistUtilVisit","visit$1","visitParents","hastCssPropertyMap","valign","hastName","appendStyle","prevStyle","nextStyle","own","tableElements","Set","rehypeReact","component","passNode","tableCellStyle2","Fragment","ABSOLUTE_URL_REGEX","WINDOWS_PATH_REGEX","defaultRel","defaultProtocols","remarkExternalLinks","contentProperties","isAbsoluteUrl","Link","remarkAutolink","autolink2","useMarkdown","parseUrl","flat","linkComponent","textAfter","textBefore","lastChar","remarkPlaceholder","RichText","referenceLimit","markdownCssClasses","ol","ul","li","em","h1","h2","h3","h4","h5","h6","pre","renderPlaintext","prepareTextNode","argumentId","renderMarkdown","renderedMarkdown","toHast2","ActivityModel","rawActivity","activity_id","subject","datetime","_activity","subjectRichTemplate","subject_rich","subjectRichObjects","messageRichTemplate","message_rich","messageRichObjects","objectType","object_type","objectId","object_id","objectName","object_name","dateFromNow","formattedDate","timestamp","isRoot","isSamePath","parentPathIsRoot","parentFolder","website","thumbIsDefined","activity","dateInterval","messageText","messageArguments","mapRichObjectsToRichArguments","subjectText","subjectArguments","applyMonochromeIconColor","updateDateFromNow","setInterval","destroyed","clearInterval","richObjects","richObjectName","mapRichObjectToRichArgument","FileRichArgument","NcUserBubble","EmailRichArgument","SystemTagRichArgument","OpenGraphRichArgument","CalendarEventRichArgument","getLoggerBuilder","setApp","detectUser","Activity","NcEmptyContent","fileInfo","activities","resetState","getActivities","processActivities","_ref","logger","_interopDefaultLegacy","valid__default","major__default","getBus"],"sourceRoot":""} \ No newline at end of file diff --git a/js/activity-sidebar.js b/js/activity-sidebar.js index 14d23fc4e..182484c97 100644 --- a/js/activity-sidebar.js +++ b/js/activity-sidebar.js @@ -1,3 +1,3 @@ /*! For license information please see activity-sidebar.js.LICENSE.txt */ -(()=>{var e,t,n={79753:(e,t,n)=>{"use strict";n(69070),Object.defineProperty(t,"__esModule",{value:!0}),t.linkTo=t.imagePath=t.getRootUrl=t.generateUrl=t.generateRemoteUrl=t.generateOcsUrl=t.generateFilePath=void 0,n(19601),n(74916),n(15306),n(41539),n(39714),n(82772),t.linkTo=function(e,t){return o(e,"",t)},t.generateRemoteUrl=function(e){return window.location.protocol+"//"+window.location.host+function(e){return i()+"/remote.php/"+e}(e)},t.generateOcsUrl=function(e,t,n){var o=1===Object.assign({ocsVersion:2},n||{}).ocsVersion?1:2;return window.location.protocol+"//"+window.location.host+i()+"/ocs/v"+o+".php"+r(e,t,n)};var r=function(e,t,n){var r,o=Object.assign({escape:!0},n||{});return"/"!==e.charAt(0)&&(e="/"+e),r=(r=t||{})||{},e.replace(/{([^{}]*)}/g,(function(e,t){var n=r[t];return o.escape?"string"==typeof n||"number"==typeof n?encodeURIComponent(n.toString()):encodeURIComponent(e):"string"==typeof n||"number"==typeof n?n.toString():e}))};t.generateUrl=function(e,t,n){var o,a,s,c=Object.assign({noRewrite:!1},n||{});return!0!==(null===(o=window)||void 0===o||null===(a=o.OC)||void 0===a||null===(s=a.config)||void 0===s?void 0:s.modRewriteWorking)||c.noRewrite?i()+"/index.php"+r(e,t,n):i()+r(e,t,n)},t.imagePath=function(e,t){return-1===t.indexOf(".")?o(e,"img",t+".svg"):o(e,"img",t)};var o=function(e,t,n){var r,o,a,s=-1!==(null===(r=window)||void 0===r||null===(o=r.OC)||void 0===o||null===(a=o.coreApps)||void 0===a?void 0:a.indexOf(e)),c=i();if("php"!==n.substring(n.length-3)||s)if("php"===n.substring(n.length-3)||s)c+="settings"!==e&&"core"!==e&&"search"!==e||"ajax"!==t?"/":"/index.php/",s||(c+="apps/"),""!==e&&(c+=e+="/"),t&&(c+=t+"/"),c+=n;else{var u,l,f;c=null===(u=window)||void 0===u||null===(l=u.OC)||void 0===l||null===(f=l.appswebroots)||void 0===f?void 0:f[e],t&&(c+="/"+t+"/"),"/"!==c.substring(c.length-1)&&(c+="/"),c+=n}else c+="/index.php/apps/"+e,"index.php"!==n&&(c+="/",t&&(c+=encodeURI(t+"/")),c+=n);return c};t.generateFilePath=o;var i=function(){var e,t;return(null===(e=window)||void 0===e||null===(t=e.OC)||void 0===t?void 0:t.webroot)||""};t.getRootUrl=i},19662:(e,t,n)=>{var r=n(60614),o=n(66330),i=TypeError;e.exports=function(e){if(r(e))return e;throw i(o(e)+" is not a function")}},31530:(e,t,n)=>{"use strict";var r=n(28710).charAt;e.exports=function(e,t,n){return t+(n?r(e,t).length:1)}},19670:(e,t,n)=>{var r=n(70111),o=String,i=TypeError;e.exports=function(e){if(r(e))return e;throw i(o(e)+" is not an object")}},41318:(e,t,n)=>{var r=n(45656),o=n(51400),i=n(26244),a=function(e){return function(t,n,a){var s,c=r(t),u=i(c),l=o(a,u);if(e&&n!=n){for(;u>l;)if((s=c[l++])!=s)return!0}else for(;u>l;l++)if((e||l in c)&&c[l]===n)return e||l||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},9341:(e,t,n)=>{"use strict";var r=n(47293);e.exports=function(e,t){var n=[][e];return!!n&&r((function(){n.call(null,t||function(){return 1},1)}))}},84326:(e,t,n)=>{var r=n(40084),o=r({}.toString),i=r("".slice);e.exports=function(e){return i(o(e),8,-1)}},70648:(e,t,n)=>{var r=n(51694),o=n(60614),i=n(84326),a=n(5112)("toStringTag"),s=Object,c="Arguments"==i(function(){return arguments}());e.exports=r?i:function(e){var t,n,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=s(e),a))?n:c?i(t):"Object"==(r=i(t))&&o(t.callee)?"Arguments":r}},99920:(e,t,n)=>{var r=n(92597),o=n(53887),i=n(31236),a=n(3070);e.exports=function(e,t,n){for(var s=o(t),c=a.f,u=i.f,l=0;l{var r=n(19781),o=n(3070),i=n(79114);e.exports=r?function(e,t,n){return o.f(e,t,i(1,n))}:function(e,t,n){return e[t]=n,e}},79114:e=>{e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},98052:(e,t,n)=>{var r=n(60614),o=n(3070),i=n(56339),a=n(13072);e.exports=function(e,t,n,s){s||(s={});var c=s.enumerable,u=void 0!==s.name?s.name:t;if(r(n)&&i(n,u,s),s.global)c?e[t]=n:a(t,n);else{try{s.unsafe?e[t]&&(c=!0):delete e[t]}catch(e){}c?e[t]=n:o.f(e,t,{value:n,enumerable:!1,configurable:!s.nonConfigurable,writable:!s.nonWritable})}return e}},13072:(e,t,n)=>{var r=n(17854),o=Object.defineProperty;e.exports=function(e,t){try{o(r,e,{value:t,configurable:!0,writable:!0})}catch(n){r[e]=t}return t}},19781:(e,t,n)=>{var r=n(47293);e.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},4154:e=>{var t="object"==typeof document&&document.all,n=void 0===t&&void 0!==t;e.exports={all:t,IS_HTMLDDA:n}},80317:(e,t,n)=>{var r=n(17854),o=n(70111),i=r.document,a=o(i)&&o(i.createElement);e.exports=function(e){return a?i.createElement(e):{}}},88113:(e,t,n)=>{var r=n(35005);e.exports=r("navigator","userAgent")||""},7392:(e,t,n)=>{var r,o,i=n(17854),a=n(88113),s=i.process,c=i.Deno,u=s&&s.versions||c&&c.version,l=u&&u.v8;l&&(o=(r=l.split("."))[0]>0&&r[0]<4?1:+(r[0]+r[1])),!o&&a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=+r[1]),e.exports=o},80748:e=>{e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},82109:(e,t,n)=>{var r=n(17854),o=n(31236).f,i=n(68880),a=n(98052),s=n(13072),c=n(99920),u=n(54705);e.exports=function(e,t){var n,l,f,p,d,v=e.target,h=e.global,m=e.stat;if(n=h?r:m?r[v]||s(v,{}):(r[v]||{}).prototype)for(l in t){if(p=t[l],f=e.dontCallGetSet?(d=o(n,l))&&d.value:n[l],!u(h?l:v+(m?".":"#")+l,e.forced)&&void 0!==f){if(typeof p==typeof f)continue;c(p,f)}(e.sham||f&&f.sham)&&i(p,"sham",!0),a(n,l,p,e)}}},47293:e=>{e.exports=function(e){try{return!!e()}catch(e){return!0}}},27007:(e,t,n)=>{"use strict";n(74916);var r=n(1702),o=n(98052),i=n(22261),a=n(47293),s=n(5112),c=n(68880),u=s("species"),l=RegExp.prototype;e.exports=function(e,t,n,f){var p=s(e),d=!a((function(){var t={};return t[p]=function(){return 7},7!=""[e](t)})),v=d&&!a((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[p]=/./[p]),n.exec=function(){return t=!0,null},n[p](""),!t}));if(!d||!v||n){var h=r(/./[p]),m=t(p,""[e],(function(e,t,n,o,a){var s=r(e),c=t.exec;return c===i||c===l.exec?d&&!a?{done:!0,value:h(t,n,o)}:{done:!0,value:s(n,t,o)}:{done:!1}}));o(String.prototype,e,m[0]),o(l,p,m[1])}f&&c(l[p],"sham",!0)}},22104:(e,t,n)=>{var r=n(34374),o=Function.prototype,i=o.apply,a=o.call;e.exports="object"==typeof Reflect&&Reflect.apply||(r?a.bind(i):function(){return a.apply(i,arguments)})},34374:(e,t,n)=>{var r=n(47293);e.exports=!r((function(){var e=function(){}.bind();return"function"!=typeof e||e.hasOwnProperty("prototype")}))},46916:(e,t,n)=>{var r=n(34374),o=Function.prototype.call;e.exports=r?o.bind(o):function(){return o.apply(o,arguments)}},76530:(e,t,n)=>{var r=n(19781),o=n(92597),i=Function.prototype,a=r&&Object.getOwnPropertyDescriptor,s=o(i,"name"),c=s&&"something"===function(){}.name,u=s&&(!r||r&&a(i,"name").configurable);e.exports={EXISTS:s,PROPER:c,CONFIGURABLE:u}},40084:(e,t,n)=>{var r=n(34374),o=Function.prototype,i=o.call,a=r&&o.bind.bind(i,i);e.exports=function(e){return r?a(e):function(){return i.apply(e,arguments)}}},1702:(e,t,n)=>{var r=n(84326),o=n(40084);e.exports=function(e){if("Function"===r(e))return o(e)}},35005:(e,t,n)=>{var r=n(17854),o=n(60614);e.exports=function(e,t){return arguments.length<2?(n=r[e],o(n)?n:void 0):r[e]&&r[e][t];var n}},58173:(e,t,n)=>{var r=n(19662),o=n(68554);e.exports=function(e,t){var n=e[t];return o(n)?void 0:r(n)}},10647:(e,t,n)=>{var r=n(1702),o=n(47908),i=Math.floor,a=r("".charAt),s=r("".replace),c=r("".slice),u=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,l=/\$([$&'`]|\d{1,2})/g;e.exports=function(e,t,n,r,f,p){var d=n+e.length,v=r.length,h=l;return void 0!==f&&(f=o(f),h=u),s(p,h,(function(o,s){var u;switch(a(s,0)){case"$":return"$";case"&":return e;case"`":return c(t,0,n);case"'":return c(t,d);case"<":u=f[c(s,1,-1)];break;default:var l=+s;if(0===l)return o;if(l>v){var p=i(l/10);return 0===p?o:p<=v?void 0===r[p-1]?a(s,1):r[p-1]+a(s,1):o}u=r[l-1]}return void 0===u?"":u}))}},17854:(e,t,n)=>{var r=function(e){return e&&e.Math==Math&&e};e.exports=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof n.g&&n.g)||function(){return this}()||Function("return this")()},92597:(e,t,n)=>{var r=n(1702),o=n(47908),i=r({}.hasOwnProperty);e.exports=Object.hasOwn||function(e,t){return i(o(e),t)}},3501:e=>{e.exports={}},60490:(e,t,n)=>{var r=n(35005);e.exports=r("document","documentElement")},64664:(e,t,n)=>{var r=n(19781),o=n(47293),i=n(80317);e.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},68361:(e,t,n)=>{var r=n(1702),o=n(47293),i=n(84326),a=Object,s=r("".split);e.exports=o((function(){return!a("z").propertyIsEnumerable(0)}))?function(e){return"String"==i(e)?s(e,""):a(e)}:a},42788:(e,t,n)=>{var r=n(1702),o=n(60614),i=n(5465),a=r(Function.toString);o(i.inspectSource)||(i.inspectSource=function(e){return a(e)}),e.exports=i.inspectSource},29909:(e,t,n)=>{var r,o,i,a=n(94811),s=n(17854),c=n(70111),u=n(68880),l=n(92597),f=n(5465),p=n(6200),d=n(3501),v="Object already initialized",h=s.TypeError,m=s.WeakMap;if(a||f.state){var g=f.state||(f.state=new m);g.get=g.get,g.has=g.has,g.set=g.set,r=function(e,t){if(g.has(e))throw h(v);return t.facade=e,g.set(e,t),t},o=function(e){return g.get(e)||{}},i=function(e){return g.has(e)}}else{var y=p("state");d[y]=!0,r=function(e,t){if(l(e,y))throw h(v);return t.facade=e,u(e,y,t),t},o=function(e){return l(e,y)?e[y]:{}},i=function(e){return l(e,y)}}e.exports={set:r,get:o,has:i,enforce:function(e){return i(e)?o(e):r(e,{})},getterFor:function(e){return function(t){var n;if(!c(t)||(n=o(t)).type!==e)throw h("Incompatible receiver, "+e+" required");return n}}}},60614:(e,t,n)=>{var r=n(4154),o=r.all;e.exports=r.IS_HTMLDDA?function(e){return"function"==typeof e||e===o}:function(e){return"function"==typeof e}},54705:(e,t,n)=>{var r=n(47293),o=n(60614),i=/#|\.prototype\./,a=function(e,t){var n=c[s(e)];return n==l||n!=u&&(o(t)?r(t):!!t)},s=a.normalize=function(e){return String(e).replace(i,".").toLowerCase()},c=a.data={},u=a.NATIVE="N",l=a.POLYFILL="P";e.exports=a},68554:e=>{e.exports=function(e){return null==e}},70111:(e,t,n)=>{var r=n(60614),o=n(4154),i=o.all;e.exports=o.IS_HTMLDDA?function(e){return"object"==typeof e?null!==e:r(e)||e===i}:function(e){return"object"==typeof e?null!==e:r(e)}},31913:e=>{e.exports=!1},52190:(e,t,n)=>{var r=n(35005),o=n(60614),i=n(47976),a=n(43307),s=Object;e.exports=a?function(e){return"symbol"==typeof e}:function(e){var t=r("Symbol");return o(t)&&i(t.prototype,s(e))}},26244:(e,t,n)=>{var r=n(17466);e.exports=function(e){return r(e.length)}},56339:(e,t,n)=>{var r=n(47293),o=n(60614),i=n(92597),a=n(19781),s=n(76530).CONFIGURABLE,c=n(42788),u=n(29909),l=u.enforce,f=u.get,p=Object.defineProperty,d=a&&!r((function(){return 8!==p((function(){}),"length",{value:8}).length})),v=String(String).split("String"),h=e.exports=function(e,t,n){"Symbol("===String(t).slice(0,7)&&(t="["+String(t).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),n&&n.getter&&(t="get "+t),n&&n.setter&&(t="set "+t),(!i(e,"name")||s&&e.name!==t)&&(a?p(e,"name",{value:t,configurable:!0}):e.name=t),d&&n&&i(n,"arity")&&e.length!==n.arity&&p(e,"length",{value:n.arity});try{n&&i(n,"constructor")&&n.constructor?a&&p(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch(e){}var r=l(e);return i(r,"source")||(r.source=v.join("string"==typeof t?t:"")),e};Function.prototype.toString=h((function(){return o(this)&&f(this).source||c(this)}),"toString")},74758:e=>{var t=Math.ceil,n=Math.floor;e.exports=Math.trunc||function(e){var r=+e;return(r>0?n:t)(r)}},21574:(e,t,n)=>{"use strict";var r=n(19781),o=n(1702),i=n(46916),a=n(47293),s=n(81956),c=n(25181),u=n(55296),l=n(47908),f=n(68361),p=Object.assign,d=Object.defineProperty,v=o([].concat);e.exports=!p||a((function(){if(r&&1!==p({b:1},p(d({},"a",{enumerable:!0,get:function(){d(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol(),o="abcdefghijklmnopqrst";return e[n]=7,o.split("").forEach((function(e){t[e]=e})),7!=p({},e)[n]||s(p({},t)).join("")!=o}))?function(e,t){for(var n=l(e),o=arguments.length,a=1,p=c.f,d=u.f;o>a;)for(var h,m=f(arguments[a++]),g=p?v(s(m),p(m)):s(m),y=g.length,_=0;y>_;)h=g[_++],r&&!i(d,m,h)||(n[h]=m[h]);return n}:p},70030:(e,t,n)=>{var r,o=n(19670),i=n(36048),a=n(80748),s=n(3501),c=n(60490),u=n(80317),l=n(6200),f="prototype",p="script",d=l("IE_PROTO"),v=function(){},h=function(e){return"<"+p+">"+e+""},m=function(e){e.write(h("")),e.close();var t=e.parentWindow.Object;return e=null,t},g=function(){try{r=new ActiveXObject("htmlfile")}catch(e){}var e,t,n;g="undefined"!=typeof document?document.domain&&r?m(r):(t=u("iframe"),n="java"+p+":",t.style.display="none",c.appendChild(t),t.src=String(n),(e=t.contentWindow.document).open(),e.write(h("document.F=Object")),e.close(),e.F):m(r);for(var o=a.length;o--;)delete g[f][a[o]];return g()};s[d]=!0,e.exports=Object.create||function(e,t){var n;return null!==e?(v[f]=o(e),n=new v,v[f]=null,n[d]=e):n=g(),void 0===t?n:i.f(n,t)}},36048:(e,t,n)=>{var r=n(19781),o=n(3353),i=n(3070),a=n(19670),s=n(45656),c=n(81956);t.f=r&&!o?Object.defineProperties:function(e,t){a(e);for(var n,r=s(t),o=c(t),u=o.length,l=0;u>l;)i.f(e,n=o[l++],r[n]);return e}},3070:(e,t,n)=>{var r=n(19781),o=n(64664),i=n(3353),a=n(19670),s=n(34948),c=TypeError,u=Object.defineProperty,l=Object.getOwnPropertyDescriptor,f="enumerable",p="configurable",d="writable";t.f=r?i?function(e,t,n){if(a(e),t=s(t),a(n),"function"==typeof e&&"prototype"===t&&"value"in n&&d in n&&!n[d]){var r=l(e,t);r&&r[d]&&(e[t]=n.value,n={configurable:p in n?n[p]:r[p],enumerable:f in n?n[f]:r[f],writable:!1})}return u(e,t,n)}:u:function(e,t,n){if(a(e),t=s(t),a(n),o)try{return u(e,t,n)}catch(e){}if("get"in n||"set"in n)throw c("Accessors not supported");return"value"in n&&(e[t]=n.value),e}},31236:(e,t,n)=>{var r=n(19781),o=n(46916),i=n(55296),a=n(79114),s=n(45656),c=n(34948),u=n(92597),l=n(64664),f=Object.getOwnPropertyDescriptor;t.f=r?f:function(e,t){if(e=s(e),t=c(t),l)try{return f(e,t)}catch(e){}if(u(e,t))return a(!o(i.f,e,t),e[t])}},8006:(e,t,n)=>{var r=n(16324),o=n(80748).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return r(e,o)}},25181:(e,t)=>{t.f=Object.getOwnPropertySymbols},47976:(e,t,n)=>{var r=n(1702);e.exports=r({}.isPrototypeOf)},16324:(e,t,n)=>{var r=n(1702),o=n(92597),i=n(45656),a=n(41318).indexOf,s=n(3501),c=r([].push);e.exports=function(e,t){var n,r=i(e),u=0,l=[];for(n in r)!o(s,n)&&o(r,n)&&c(l,n);for(;t.length>u;)o(r,n=t[u++])&&(~a(l,n)||c(l,n));return l}},81956:(e,t,n)=>{var r=n(16324),o=n(80748);e.exports=Object.keys||function(e){return r(e,o)}},55296:(e,t)=>{"use strict";var n={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,o=r&&!n.call({1:2},1);t.f=o?function(e){var t=r(this,e);return!!t&&t.enumerable}:n},90288:(e,t,n)=>{"use strict";var r=n(51694),o=n(70648);e.exports=r?{}.toString:function(){return"[object "+o(this)+"]"}},92140:(e,t,n)=>{var r=n(46916),o=n(60614),i=n(70111),a=TypeError;e.exports=function(e,t){var n,s;if("string"===t&&o(n=e.toString)&&!i(s=r(n,e)))return s;if(o(n=e.valueOf)&&!i(s=r(n,e)))return s;if("string"!==t&&o(n=e.toString)&&!i(s=r(n,e)))return s;throw a("Can't convert object to primitive value")}},53887:(e,t,n)=>{var r=n(35005),o=n(1702),i=n(8006),a=n(25181),s=n(19670),c=o([].concat);e.exports=r("Reflect","ownKeys")||function(e){var t=i.f(s(e)),n=a.f;return n?c(t,n(e)):t}},97651:(e,t,n)=>{var r=n(46916),o=n(19670),i=n(60614),a=n(84326),s=n(22261),c=TypeError;e.exports=function(e,t){var n=e.exec;if(i(n)){var u=r(n,e,t);return null!==u&&o(u),u}if("RegExp"===a(e))return r(s,e,t);throw c("RegExp#exec called on incompatible receiver")}},22261:(e,t,n)=>{"use strict";var r,o,i=n(46916),a=n(1702),s=n(41340),c=n(67066),u=n(52999),l=n(72309),f=n(70030),p=n(29909).get,d=n(9441),v=n(38173),h=l("native-string-replace",String.prototype.replace),m=RegExp.prototype.exec,g=m,y=a("".charAt),_=a("".indexOf),b=a("".replace),x=a("".slice),w=(o=/b*/g,i(m,r=/a/,"a"),i(m,o,"a"),0!==r.lastIndex||0!==o.lastIndex),O=u.BROKEN_CARET,S=void 0!==/()??/.exec("")[1];(w||S||O||d||v)&&(g=function(e){var t,n,r,o,a,u,l,d=this,v=p(d),C=s(e),T=v.raw;if(T)return T.lastIndex=d.lastIndex,t=i(g,T,C),d.lastIndex=T.lastIndex,t;var E=v.groups,k=O&&d.sticky,A=i(c,d),$=d.source,N=0,I=C;if(k&&(A=b(A,"y",""),-1===_(A,"g")&&(A+="g"),I=x(C,d.lastIndex),d.lastIndex>0&&(!d.multiline||d.multiline&&"\n"!==y(C,d.lastIndex-1))&&($="(?: "+$+")",I=" "+I,N++),n=new RegExp("^(?:"+$+")",A)),S&&(n=new RegExp("^"+$+"$(?!\\s)",A)),w&&(r=d.lastIndex),o=i(m,k?n:d,I),k?o?(o.input=x(o.input,N),o[0]=x(o[0],N),o.index=d.lastIndex,d.lastIndex+=o[0].length):d.lastIndex=0:w&&o&&(d.lastIndex=d.global?o.index+o[0].length:r),S&&o&&o.length>1&&i(h,o[0],n,(function(){for(a=1;a{"use strict";var r=n(19670);e.exports=function(){var e=r(this),t="";return e.hasIndices&&(t+="d"),e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.unicodeSets&&(t+="v"),e.sticky&&(t+="y"),t}},34706:(e,t,n)=>{var r=n(46916),o=n(92597),i=n(47976),a=n(67066),s=RegExp.prototype;e.exports=function(e){var t=e.flags;return void 0!==t||"flags"in s||o(e,"flags")||!i(s,e)?t:r(a,e)}},52999:(e,t,n)=>{var r=n(47293),o=n(17854).RegExp,i=r((function(){var e=o("a","y");return e.lastIndex=2,null!=e.exec("abcd")})),a=i||r((function(){return!o("a","y").sticky})),s=i||r((function(){var e=o("^r","gy");return e.lastIndex=2,null!=e.exec("str")}));e.exports={BROKEN_CARET:s,MISSED_STICKY:a,UNSUPPORTED_Y:i}},9441:(e,t,n)=>{var r=n(47293),o=n(17854).RegExp;e.exports=r((function(){var e=o(".","s");return!(e.dotAll&&e.exec("\n")&&"s"===e.flags)}))},38173:(e,t,n)=>{var r=n(47293),o=n(17854).RegExp;e.exports=r((function(){var e=o("(?b)","g");return"b"!==e.exec("b").groups.a||"bc"!=="b".replace(e,"$c")}))},84488:(e,t,n)=>{var r=n(68554),o=TypeError;e.exports=function(e){if(r(e))throw o("Can't call method on "+e);return e}},6200:(e,t,n)=>{var r=n(72309),o=n(69711),i=r("keys");e.exports=function(e){return i[e]||(i[e]=o(e))}},5465:(e,t,n)=>{var r=n(17854),o=n(13072),i="__core-js_shared__",a=r[i]||o(i,{});e.exports=a},72309:(e,t,n)=>{var r=n(31913),o=n(5465);(e.exports=function(e,t){return o[e]||(o[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.25.5",mode:r?"pure":"global",copyright:"© 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.25.5/LICENSE",source:"https://github.com/zloirock/core-js"})},28710:(e,t,n)=>{var r=n(1702),o=n(19303),i=n(41340),a=n(84488),s=r("".charAt),c=r("".charCodeAt),u=r("".slice),l=function(e){return function(t,n){var r,l,f=i(a(t)),p=o(n),d=f.length;return p<0||p>=d?e?"":void 0:(r=c(f,p))<55296||r>56319||p+1===d||(l=c(f,p+1))<56320||l>57343?e?s(f,p):r:e?u(f,p,p+2):l-56320+(r-55296<<10)+65536}};e.exports={codeAt:l(!1),charAt:l(!0)}},36293:(e,t,n)=>{var r=n(7392),o=n(47293);e.exports=!!Object.getOwnPropertySymbols&&!o((function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},51400:(e,t,n)=>{var r=n(19303),o=Math.max,i=Math.min;e.exports=function(e,t){var n=r(e);return n<0?o(n+t,0):i(n,t)}},45656:(e,t,n)=>{var r=n(68361),o=n(84488);e.exports=function(e){return r(o(e))}},19303:(e,t,n)=>{var r=n(74758);e.exports=function(e){var t=+e;return t!=t||0===t?0:r(t)}},17466:(e,t,n)=>{var r=n(19303),o=Math.min;e.exports=function(e){return e>0?o(r(e),9007199254740991):0}},47908:(e,t,n)=>{var r=n(84488),o=Object;e.exports=function(e){return o(r(e))}},57593:(e,t,n)=>{var r=n(46916),o=n(70111),i=n(52190),a=n(58173),s=n(92140),c=n(5112),u=TypeError,l=c("toPrimitive");e.exports=function(e,t){if(!o(e)||i(e))return e;var n,c=a(e,l);if(c){if(void 0===t&&(t="default"),n=r(c,e,t),!o(n)||i(n))return n;throw u("Can't convert object to primitive value")}return void 0===t&&(t="number"),s(e,t)}},34948:(e,t,n)=>{var r=n(57593),o=n(52190);e.exports=function(e){var t=r(e,"string");return o(t)?t:t+""}},51694:(e,t,n)=>{var r={};r[n(5112)("toStringTag")]="z",e.exports="[object z]"===String(r)},41340:(e,t,n)=>{var r=n(70648),o=String;e.exports=function(e){if("Symbol"===r(e))throw TypeError("Cannot convert a Symbol value to a string");return o(e)}},66330:e=>{var t=String;e.exports=function(e){try{return t(e)}catch(e){return"Object"}}},69711:(e,t,n)=>{var r=n(1702),o=0,i=Math.random(),a=r(1..toString);e.exports=function(e){return"Symbol("+(void 0===e?"":e)+")_"+a(++o+i,36)}},43307:(e,t,n)=>{var r=n(36293);e.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},3353:(e,t,n)=>{var r=n(19781),o=n(47293);e.exports=r&&o((function(){return 42!=Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype}))},94811:(e,t,n)=>{var r=n(17854),o=n(60614),i=r.WeakMap;e.exports=o(i)&&/native code/.test(String(i))},5112:(e,t,n)=>{var r=n(17854),o=n(72309),i=n(92597),a=n(69711),s=n(36293),c=n(43307),u=o("wks"),l=r.Symbol,f=l&&l.for,p=c?l:l&&l.withoutSetter||a;e.exports=function(e){if(!i(u,e)||!s&&"string"!=typeof u[e]){var t="Symbol."+e;s&&i(l,e)?u[e]=l[e]:u[e]=c&&f?f(t):p(t)}return u[e]}},82772:(e,t,n)=>{"use strict";var r=n(82109),o=n(1702),i=n(41318).indexOf,a=n(9341),s=o([].indexOf),c=!!s&&1/s([1],1,-0)<0,u=a("indexOf");r({target:"Array",proto:!0,forced:c||!u},{indexOf:function(e){var t=arguments.length>1?arguments[1]:void 0;return c?s(this,e,t)||0:i(this,e,t)}})},19601:(e,t,n)=>{var r=n(82109),o=n(21574);r({target:"Object",stat:!0,arity:2,forced:Object.assign!==o},{assign:o})},69070:(e,t,n)=>{var r=n(82109),o=n(19781),i=n(3070).f;r({target:"Object",stat:!0,forced:Object.defineProperty!==i,sham:!o},{defineProperty:i})},41539:(e,t,n)=>{var r=n(51694),o=n(98052),i=n(90288);r||o(Object.prototype,"toString",i,{unsafe:!0})},74916:(e,t,n)=>{"use strict";var r=n(82109),o=n(22261);r({target:"RegExp",proto:!0,forced:/./.exec!==o},{exec:o})},39714:(e,t,n)=>{"use strict";var r=n(76530).PROPER,o=n(98052),i=n(19670),a=n(41340),s=n(47293),c=n(34706),u="toString",l=RegExp.prototype[u],f=s((function(){return"/a/b"!=l.call({source:"a",flags:"b"})})),p=r&&l.name!=u;(f||p)&&o(RegExp.prototype,u,(function(){var e=i(this);return"/"+a(e.source)+"/"+a(c(e))}),{unsafe:!0})},15306:(e,t,n)=>{"use strict";var r=n(22104),o=n(46916),i=n(1702),a=n(27007),s=n(47293),c=n(19670),u=n(60614),l=n(68554),f=n(19303),p=n(17466),d=n(41340),v=n(84488),h=n(31530),m=n(58173),g=n(10647),y=n(97651),_=n(5112)("replace"),b=Math.max,x=Math.min,w=i([].concat),O=i([].push),S=i("".indexOf),C=i("".slice),T="$0"==="a".replace(/./,"$0"),E=!!/./[_]&&""===/./[_]("a","$0");a("replace",(function(e,t,n){var i=E?"$":"$0";return[function(e,n){var r=v(this),i=l(e)?void 0:m(e,_);return i?o(i,e,r,n):o(t,d(r),e,n)},function(e,o){var a=c(this),s=d(e);if("string"==typeof o&&-1===S(o,i)&&-1===S(o,"$<")){var l=n(t,a,s,o);if(l.done)return l.value}var v=u(o);v||(o=d(o));var m=a.global;if(m){var _=a.unicode;a.lastIndex=0}for(var T=[];;){var E=y(a,s);if(null===E)break;if(O(T,E),!m)break;""===d(E[0])&&(a.lastIndex=h(s,p(a.lastIndex),_))}for(var k,A="",$=0,N=0;N=$&&(A+=C(s,$,R)+M,$=R+I.length)}return A+C(s,$)}]}),!!s((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$")}))||!T||E)},27856:function(e){e.exports=function(){"use strict";const{entries:e,setPrototypeOf:t,isFrozen:n,getPrototypeOf:r,getOwnPropertyDescriptor:o}=Object;let{freeze:i,seal:a,create:s}=Object,{apply:c,construct:u}="undefined"!=typeof Reflect&&Reflect;c||(c=function(e,t,n){return e.apply(t,n)}),i||(i=function(e){return e}),a||(a=function(e){return e}),u||(u=function(e,t){return new e(...t)});const l=w(Array.prototype.forEach),f=w(Array.prototype.pop),p=w(Array.prototype.push),d=w(String.prototype.toLowerCase),v=w(String.prototype.toString),h=w(String.prototype.match),m=w(String.prototype.replace),g=w(String.prototype.indexOf),y=w(String.prototype.trim),_=w(RegExp.prototype.test),b=(x=TypeError,function(){for(var e=arguments.length,t=new Array(e),n=0;n1?n-1:0),o=1;o/gm),F=a(/\${[\w\W]*}/gm),U=a(/^data-[\-\w.\u00B7-\uFFFF]/),z=a(/^aria-[\-\w]+$/),H=a(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),B=a(/^(?:\w+script|data):/i),W=a(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),V=a(/^html$/i);var G=Object.freeze({__proto__:null,MUSTACHE_EXPR:L,ERB_EXPR:M,TMPLIT_EXPR:F,DATA_ATTR:U,ARIA_ATTR:z,IS_ALLOWED_URI:H,IS_SCRIPT_OR_DATA:B,ATTR_WHITESPACE:W,DOCTYPE_NAME:V});const Y=()=>"undefined"==typeof window?null:window;return function t(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Y();const r=e=>t(e);if(r.version="3.0.3",r.removed=[],!n||!n.document||9!==n.document.nodeType)return r.isSupported=!1,r;const o=n.document,a=o.currentScript;let{document:s}=n;const{DocumentFragment:c,HTMLTemplateElement:u,Node:x,Element:w,NodeFilter:L,NamedNodeMap:M=n.NamedNodeMap||n.MozNamedAttrMap,HTMLFormElement:F,DOMParser:U,trustedTypes:z}=n,B=w.prototype,W=C(B,"cloneNode"),q=C(B,"nextSibling"),K=C(B,"childNodes"),X=C(B,"parentNode");if("function"==typeof u){const e=s.createElement("template");e.content&&e.content.ownerDocument&&(s=e.content.ownerDocument)}let Z,J="";const{implementation:Q,createNodeIterator:ee,createDocumentFragment:te,getElementsByTagName:ne}=s,{importNode:re}=o;let oe={};r.isSupported="function"==typeof e&&"function"==typeof X&&Q&&void 0!==Q.createHTMLDocument;const{MUSTACHE_EXPR:ie,ERB_EXPR:ae,TMPLIT_EXPR:se,DATA_ATTR:ce,ARIA_ATTR:ue,IS_SCRIPT_OR_DATA:le,ATTR_WHITESPACE:fe}=G;let{IS_ALLOWED_URI:pe}=G,de=null;const ve=O({},[...T,...E,...k,...$,...I]);let he=null;const me=O({},[...R,...j,...D,...P]);let ge=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ye=null,_e=null,be=!0,xe=!0,we=!1,Oe=!0,Se=!1,Ce=!1,Te=!1,Ee=!1,ke=!1,Ae=!1,$e=!1,Ne=!0,Ie=!1,Re=!0,je=!1,De={},Pe=null;const Le=O({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let Me=null;const Fe=O({},["audio","video","img","source","image","track"]);let Ue=null;const ze=O({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),He="http://www.w3.org/1998/Math/MathML",Be="http://www.w3.org/2000/svg",We="http://www.w3.org/1999/xhtml";let Ve=We,Ge=!1,Ye=null;const qe=O({},[He,Be,We],v);let Ke;const Xe=["application/xhtml+xml","text/html"];let Ze,Je=null;const Qe=s.createElement("form"),et=function(e){return e instanceof RegExp||e instanceof Function},tt=function(e){if(!Je||Je!==e){if(e&&"object"==typeof e||(e={}),e=S(e),Ke=Ke=-1===Xe.indexOf(e.PARSER_MEDIA_TYPE)?"text/html":e.PARSER_MEDIA_TYPE,Ze="application/xhtml+xml"===Ke?v:d,de="ALLOWED_TAGS"in e?O({},e.ALLOWED_TAGS,Ze):ve,he="ALLOWED_ATTR"in e?O({},e.ALLOWED_ATTR,Ze):me,Ye="ALLOWED_NAMESPACES"in e?O({},e.ALLOWED_NAMESPACES,v):qe,Ue="ADD_URI_SAFE_ATTR"in e?O(S(ze),e.ADD_URI_SAFE_ATTR,Ze):ze,Me="ADD_DATA_URI_TAGS"in e?O(S(Fe),e.ADD_DATA_URI_TAGS,Ze):Fe,Pe="FORBID_CONTENTS"in e?O({},e.FORBID_CONTENTS,Ze):Le,ye="FORBID_TAGS"in e?O({},e.FORBID_TAGS,Ze):{},_e="FORBID_ATTR"in e?O({},e.FORBID_ATTR,Ze):{},De="USE_PROFILES"in e&&e.USE_PROFILES,be=!1!==e.ALLOW_ARIA_ATTR,xe=!1!==e.ALLOW_DATA_ATTR,we=e.ALLOW_UNKNOWN_PROTOCOLS||!1,Oe=!1!==e.ALLOW_SELF_CLOSE_IN_ATTR,Se=e.SAFE_FOR_TEMPLATES||!1,Ce=e.WHOLE_DOCUMENT||!1,ke=e.RETURN_DOM||!1,Ae=e.RETURN_DOM_FRAGMENT||!1,$e=e.RETURN_TRUSTED_TYPE||!1,Ee=e.FORCE_BODY||!1,Ne=!1!==e.SANITIZE_DOM,Ie=e.SANITIZE_NAMED_PROPS||!1,Re=!1!==e.KEEP_CONTENT,je=e.IN_PLACE||!1,pe=e.ALLOWED_URI_REGEXP||H,Ve=e.NAMESPACE||We,ge=e.CUSTOM_ELEMENT_HANDLING||{},e.CUSTOM_ELEMENT_HANDLING&&et(e.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(ge.tagNameCheck=e.CUSTOM_ELEMENT_HANDLING.tagNameCheck),e.CUSTOM_ELEMENT_HANDLING&&et(e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(ge.attributeNameCheck=e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),e.CUSTOM_ELEMENT_HANDLING&&"boolean"==typeof e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements&&(ge.allowCustomizedBuiltInElements=e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Se&&(xe=!1),Ae&&(ke=!0),De&&(de=O({},[...I]),he=[],!0===De.html&&(O(de,T),O(he,R)),!0===De.svg&&(O(de,E),O(he,j),O(he,P)),!0===De.svgFilters&&(O(de,k),O(he,j),O(he,P)),!0===De.mathMl&&(O(de,$),O(he,D),O(he,P))),e.ADD_TAGS&&(de===ve&&(de=S(de)),O(de,e.ADD_TAGS,Ze)),e.ADD_ATTR&&(he===me&&(he=S(he)),O(he,e.ADD_ATTR,Ze)),e.ADD_URI_SAFE_ATTR&&O(Ue,e.ADD_URI_SAFE_ATTR,Ze),e.FORBID_CONTENTS&&(Pe===Le&&(Pe=S(Pe)),O(Pe,e.FORBID_CONTENTS,Ze)),Re&&(de["#text"]=!0),Ce&&O(de,["html","head","body"]),de.table&&(O(de,["tbody"]),delete ye.tbody),e.TRUSTED_TYPES_POLICY){if("function"!=typeof e.TRUSTED_TYPES_POLICY.createHTML)throw b('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if("function"!=typeof e.TRUSTED_TYPES_POLICY.createScriptURL)throw b('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');Z=e.TRUSTED_TYPES_POLICY,J=Z.createHTML("")}else void 0===Z&&(Z=function(e,t){if("object"!=typeof e||"function"!=typeof e.createPolicy)return null;let n=null;const r="data-tt-policy-suffix";t&&t.hasAttribute(r)&&(n=t.getAttribute(r));const o="dompurify"+(n?"#"+n:"");try{return e.createPolicy(o,{createHTML:e=>e,createScriptURL:e=>e})}catch(e){return console.warn("TrustedTypes policy "+o+" could not be created."),null}}(z,a)),null!==Z&&"string"==typeof J&&(J=Z.createHTML(""));i&&i(e),Je=e}},nt=O({},["mi","mo","mn","ms","mtext"]),rt=O({},["foreignobject","desc","title","annotation-xml"]),ot=O({},["title","style","font","a","script"]),it=O({},E);O(it,k),O(it,A);const at=O({},$);O(at,N);const st=function(e){p(r.removed,{element:e});try{e.parentNode.removeChild(e)}catch(t){e.remove()}},ct=function(e,t){try{p(r.removed,{attribute:t.getAttributeNode(e),from:t})}catch(e){p(r.removed,{attribute:null,from:t})}if(t.removeAttribute(e),"is"===e&&!he[e])if(ke||Ae)try{st(t)}catch(e){}else try{t.setAttribute(e,"")}catch(e){}},ut=function(e){let t,n;if(Ee)e=""+e;else{const t=h(e,/^[\r\n\t ]+/);n=t&&t[0]}"application/xhtml+xml"===Ke&&Ve===We&&(e=''+e+"");const r=Z?Z.createHTML(e):e;if(Ve===We)try{t=(new U).parseFromString(r,Ke)}catch(e){}if(!t||!t.documentElement){t=Q.createDocument(Ve,"template",null);try{t.documentElement.innerHTML=Ge?J:r}catch(e){}}const o=t.body||t.documentElement;return e&&n&&o.insertBefore(s.createTextNode(n),o.childNodes[0]||null),Ve===We?ne.call(t,Ce?"html":"body")[0]:Ce?t.documentElement:o},lt=function(e){return ee.call(e.ownerDocument||e,e,L.SHOW_ELEMENT|L.SHOW_COMMENT|L.SHOW_TEXT,null,!1)},ft=function(e){return"object"==typeof x?e instanceof x:e&&"object"==typeof e&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName},pt=function(e,t,n){oe[e]&&l(oe[e],(e=>{e.call(r,t,n,Je)}))},dt=function(e){let t;if(pt("beforeSanitizeElements",e,null),(n=e)instanceof F&&("string"!=typeof n.nodeName||"string"!=typeof n.textContent||"function"!=typeof n.removeChild||!(n.attributes instanceof M)||"function"!=typeof n.removeAttribute||"function"!=typeof n.setAttribute||"string"!=typeof n.namespaceURI||"function"!=typeof n.insertBefore||"function"!=typeof n.hasChildNodes))return st(e),!0;var n;const o=Ze(e.nodeName);if(pt("uponSanitizeElement",e,{tagName:o,allowedTags:de}),e.hasChildNodes()&&!ft(e.firstElementChild)&&(!ft(e.content)||!ft(e.content.firstElementChild))&&_(/<[/\w]/g,e.innerHTML)&&_(/<[/\w]/g,e.textContent))return st(e),!0;if(!de[o]||ye[o]){if(!ye[o]&&ht(o)){if(ge.tagNameCheck instanceof RegExp&&_(ge.tagNameCheck,o))return!1;if(ge.tagNameCheck instanceof Function&&ge.tagNameCheck(o))return!1}if(Re&&!Pe[o]){const t=X(e)||e.parentNode,n=K(e)||e.childNodes;if(n&&t)for(let r=n.length-1;r>=0;--r)t.insertBefore(W(n[r],!0),q(e))}return st(e),!0}return e instanceof w&&!function(e){let t=X(e);t&&t.tagName||(t={namespaceURI:Ve,tagName:"template"});const n=d(e.tagName),r=d(t.tagName);return!!Ye[e.namespaceURI]&&(e.namespaceURI===Be?t.namespaceURI===We?"svg"===n:t.namespaceURI===He?"svg"===n&&("annotation-xml"===r||nt[r]):Boolean(it[n]):e.namespaceURI===He?t.namespaceURI===We?"math"===n:t.namespaceURI===Be?"math"===n&&rt[r]:Boolean(at[n]):e.namespaceURI===We?!(t.namespaceURI===Be&&!rt[r])&&!(t.namespaceURI===He&&!nt[r])&&!at[n]&&(ot[n]||!it[n]):!("application/xhtml+xml"!==Ke||!Ye[e.namespaceURI]))}(e)?(st(e),!0):"noscript"!==o&&"noembed"!==o||!_(/<\/no(script|embed)/i,e.innerHTML)?(Se&&3===e.nodeType&&(t=e.textContent,t=m(t,ie," "),t=m(t,ae," "),t=m(t,se," "),e.textContent!==t&&(p(r.removed,{element:e.cloneNode()}),e.textContent=t)),pt("afterSanitizeElements",e,null),!1):(st(e),!0)},vt=function(e,t,n){if(Ne&&("id"===t||"name"===t)&&(n in s||n in Qe))return!1;if(xe&&!_e[t]&&_(ce,t));else if(be&&_(ue,t));else if(!he[t]||_e[t]){if(!(ht(e)&&(ge.tagNameCheck instanceof RegExp&&_(ge.tagNameCheck,e)||ge.tagNameCheck instanceof Function&&ge.tagNameCheck(e))&&(ge.attributeNameCheck instanceof RegExp&&_(ge.attributeNameCheck,t)||ge.attributeNameCheck instanceof Function&&ge.attributeNameCheck(t))||"is"===t&&ge.allowCustomizedBuiltInElements&&(ge.tagNameCheck instanceof RegExp&&_(ge.tagNameCheck,n)||ge.tagNameCheck instanceof Function&&ge.tagNameCheck(n))))return!1}else if(Ue[t]);else if(_(pe,m(n,fe,"")));else if("src"!==t&&"xlink:href"!==t&&"href"!==t||"script"===e||0!==g(n,"data:")||!Me[e])if(we&&!_(le,m(n,fe,"")));else if(n)return!1;return!0},ht=function(e){return e.indexOf("-")>0},mt=function(e){let t,n,o,i;pt("beforeSanitizeAttributes",e,null);const{attributes:a}=e;if(!a)return;const s={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:he};for(i=a.length;i--;){t=a[i];const{name:c,namespaceURI:u}=t;if(n="value"===c?t.value:y(t.value),o=Ze(c),s.attrName=o,s.attrValue=n,s.keepAttr=!0,s.forceKeepAttr=void 0,pt("uponSanitizeAttribute",e,s),n=s.attrValue,s.forceKeepAttr)continue;if(ct(c,e),!s.keepAttr)continue;if(!Oe&&_(/\/>/i,n)){ct(c,e);continue}Se&&(n=m(n,ie," "),n=m(n,ae," "),n=m(n,se," "));const l=Ze(e.nodeName);if(vt(l,o,n)){if(!Ie||"id"!==o&&"name"!==o||(ct(c,e),n="user-content-"+n),Z&&"object"==typeof z&&"function"==typeof z.getAttributeType)if(u);else switch(z.getAttributeType(l,o)){case"TrustedHTML":n=Z.createHTML(n);break;case"TrustedScriptURL":n=Z.createScriptURL(n)}try{u?e.setAttributeNS(u,c,n):e.setAttribute(c,n),f(r.removed)}catch(e){}}}pt("afterSanitizeAttributes",e,null)},gt=function e(t){let n;const r=lt(t);for(pt("beforeSanitizeShadowDOM",t,null);n=r.nextNode();)pt("uponSanitizeShadowNode",n,null),dt(n)||(n.content instanceof c&&e(n.content),mt(n));pt("afterSanitizeShadowDOM",t,null)};return r.sanitize=function(e){let t,n,i,a,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(Ge=!e,Ge&&(e="\x3c!--\x3e"),"string"!=typeof e&&!ft(e)){if("function"!=typeof e.toString)throw b("toString is not a function");if("string"!=typeof(e=e.toString()))throw b("dirty is not a string, aborting")}if(!r.isSupported)return e;if(Te||tt(s),r.removed=[],"string"==typeof e&&(je=!1),je){if(e.nodeName){const t=Ze(e.nodeName);if(!de[t]||ye[t])throw b("root node is forbidden and cannot be sanitized in-place")}}else if(e instanceof x)t=ut("\x3c!----\x3e"),n=t.ownerDocument.importNode(e,!0),1===n.nodeType&&"BODY"===n.nodeName||"HTML"===n.nodeName?t=n:t.appendChild(n);else{if(!ke&&!Se&&!Ce&&-1===e.indexOf("<"))return Z&&$e?Z.createHTML(e):e;if(t=ut(e),!t)return ke?null:$e?J:""}t&&Ee&&st(t.firstChild);const u=lt(je?e:t);for(;i=u.nextNode();)dt(i)||(i.content instanceof c&>(i.content),mt(i));if(je)return e;if(ke){if(Ae)for(a=te.call(t.ownerDocument);t.firstChild;)a.appendChild(t.firstChild);else a=t;return(he.shadowroot||he.shadowrootmod)&&(a=re.call(o,a,!0)),a}let l=Ce?t.outerHTML:t.innerHTML;return Ce&&de["!doctype"]&&t.ownerDocument&&t.ownerDocument.doctype&&t.ownerDocument.doctype.name&&_(V,t.ownerDocument.doctype.name)&&(l="\n"+l),Se&&(l=m(l,ie," "),l=m(l,ae," "),l=m(l,se," ")),Z&&$e?Z.createHTML(l):l},r.setConfig=function(e){tt(e),Te=!0},r.clearConfig=function(){Je=null,Te=!1},r.isValidAttribute=function(e,t,n){Je||tt({});const r=Ze(e),o=Ze(t);return vt(r,o,n)},r.addHook=function(e,t){"function"==typeof t&&(oe[e]=oe[e]||[],p(oe[e],t))},r.removeHook=function(e){if(oe[e])return f(oe[e])},r.removeHooks=function(e){oe[e]&&(oe[e]=[])},r.removeAllHooks=function(){oe={}},r}()}()},95573:e=>{"use strict";var t=/["'&<>]/;e.exports=function(e){var n,r=""+e,o=t.exec(r);if(!o)return r;var i="",a=0,s=0;for(a=o.index;a{"use strict";n.r(t),n.d(t,{EffectScope:()=>xt,computed:()=>ut,customRef:()=>et,default:()=>ao,defineAsyncComponent:()=>Ln,defineComponent:()=>Qn,del:()=>je,effectScope:()=>wt,getCurrentInstance:()=>le,getCurrentScope:()=>Ot,h:()=>bn,inject:()=>Et,isProxy:()=>He,isReactive:()=>Fe,isReadonly:()=>ze,isRef:()=>Ge,isShallow:()=>Ue,markRaw:()=>We,mergeDefaults:()=>pn,nextTick:()=>jn,onActivated:()=>Vn,onBeforeMount:()=>Fn,onBeforeUnmount:()=>Bn,onBeforeUpdate:()=>zn,onDeactivated:()=>Gn,onErrorCaptured:()=>Zn,onMounted:()=>Un,onRenderTracked:()=>qn,onRenderTriggered:()=>Kn,onScopeDispose:()=>St,onServerPrefetch:()=>Yn,onUnmounted:()=>Wn,onUpdated:()=>Hn,provide:()=>Ct,proxyRefs:()=>Je,reactive:()=>Pe,readonly:()=>it,ref:()=>Ye,set:()=>Re,shallowReactive:()=>Le,shallowReadonly:()=>ct,shallowRef:()=>qe,toRaw:()=>Be,toRef:()=>nt,toRefs:()=>tt,triggerRef:()=>Xe,unref:()=>Ze,useAttrs:()=>un,useCssModule:()=>Dn,useCssVars:()=>Pn,useListeners:()=>ln,useSlots:()=>cn,version:()=>Jn,watch:()=>_t,watchEffect:()=>vt,watchPostEffect:()=>ht,watchSyncEffect:()=>mt});var r=Object.freeze({}),o=Array.isArray;function i(e){return null==e}function a(e){return null!=e}function s(e){return!0===e}function c(e){return"string"==typeof e||"number"==typeof e||"symbol"==typeof e||"boolean"==typeof e}function u(e){return"function"==typeof e}function l(e){return null!==e&&"object"==typeof e}var f=Object.prototype.toString;function p(e){return"[object Object]"===f.call(e)}function d(e){var t=parseFloat(String(e));return t>=0&&Math.floor(t)===t&&isFinite(e)}function v(e){return a(e)&&"function"==typeof e.then&&"function"==typeof e.catch}function h(e){return null==e?"":Array.isArray(e)||p(e)&&e.toString===f?JSON.stringify(e,null,2):String(e)}function m(e){var t=parseFloat(e);return isNaN(t)?e:t}function g(e,t){for(var n=Object.create(null),r=e.split(","),o=0;o-1)return e.splice(r,1)}}var b=Object.prototype.hasOwnProperty;function x(e,t){return b.call(e,t)}function w(e){var t=Object.create(null);return function(n){return t[n]||(t[n]=e(n))}}var O=/-(\w)/g,S=w((function(e){return e.replace(O,(function(e,t){return t?t.toUpperCase():""}))})),C=w((function(e){return e.charAt(0).toUpperCase()+e.slice(1)})),T=/\B([A-Z])/g,E=w((function(e){return e.replace(T,"-$1").toLowerCase()})),k=Function.prototype.bind?function(e,t){return e.bind(t)}:function(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n};function A(e,t){t=t||0;for(var n=e.length-t,r=new Array(n);n--;)r[n]=e[n+t];return r}function $(e,t){for(var n in t)e[n]=t[n];return e}function N(e){for(var t={},n=0;n0,Z=q&&q.indexOf("edge/")>0;q&&q.indexOf("android");var J=q&&/iphone|ipad|ipod|ios/.test(q);q&&/chrome\/\d+/.test(q),q&&/phantomjs/.test(q);var Q,ee=q&&q.match(/firefox\/(\d+)/),te={}.watch,ne=!1;if(Y)try{var re={};Object.defineProperty(re,"passive",{get:function(){ne=!0}}),window.addEventListener("test-passive",null,re)}catch(e){}var oe=function(){return void 0===Q&&(Q=!Y&&void 0!==n.g&&n.g.process&&"server"===n.g.process.env.VUE_ENV),Q},ie=Y&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function ae(e){return"function"==typeof e&&/native code/.test(e.toString())}var se,ce="undefined"!=typeof Symbol&&ae(Symbol)&&"undefined"!=typeof Reflect&&ae(Reflect.ownKeys);se="undefined"!=typeof Set&&ae(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var ue=null;function le(){return ue&&{proxy:ue}}function fe(e){void 0===e&&(e=null),e||ue&&ue._scope.off(),ue=e,e&&e._scope.on()}var pe=function(){function e(e,t,n,r,o,i,a,s){this.tag=e,this.data=t,this.children=n,this.text=r,this.elm=o,this.ns=void 0,this.context=i,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=t&&t.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1}return Object.defineProperty(e.prototype,"child",{get:function(){return this.componentInstance},enumerable:!1,configurable:!0}),e}(),de=function(e){void 0===e&&(e="");var t=new pe;return t.text=e,t.isComment=!0,t};function ve(e){return new pe(void 0,void 0,void 0,String(e))}function he(e){var t=new pe(e.tag,e.data,e.children&&e.children.slice(),e.text,e.elm,e.context,e.componentOptions,e.asyncFactory);return t.ns=e.ns,t.isStatic=e.isStatic,t.key=e.key,t.isComment=e.isComment,t.fnContext=e.fnContext,t.fnOptions=e.fnOptions,t.fnScopeId=e.fnScopeId,t.asyncMeta=e.asyncMeta,t.isCloned=!0,t}var me=0,ge=[],ye=function(){for(var e=0;e1)return n&&u(t)?t.call(r):t}}var kt=w((function(e){var t="&"===e.charAt(0),n="~"===(e=t?e.slice(1):e).charAt(0),r="!"===(e=n?e.slice(1):e).charAt(0);return{name:e=r?e.slice(1):e,once:n,capture:r,passive:t}}));function At(e,t){function n(){var e=n.fns;if(!o(e))return wn(e,null,arguments,t,"v-on handler");for(var r=e.slice(),i=0;i0&&(jt((r=Dt(r,"".concat(t||"","_").concat(n)))[0])&&jt(l)&&(f[u]=ve(l.text+r[0].text),r.shift()),f.push.apply(f,r)):c(r)?jt(l)?f[u]=ve(l.text+r):""!==r&&f.push(ve(r)):jt(r)&&jt(l)?f[u]=ve(l.text+r.text):(s(e._isVList)&&a(r.tag)&&i(r.key)&&a(t)&&(r.key="__vlist".concat(t,"_").concat(n,"__")),f.push(r)));return f}function Pt(e,t){var n,r,i,s,c=null;if(o(e)||"string"==typeof e)for(c=new Array(e.length),n=0,r=e.length;n0,s=t?!!t.$stable:!a,c=t&&t.$key;if(t){if(t._normalized)return t._normalized;if(s&&o&&o!==r&&c===o.$key&&!a&&!o.$hasNormal)return o;for(var u in i={},t)t[u]&&"$"!==u[0]&&(i[u]=tn(e,n,u,t[u]))}else i={};for(var l in n)l in i||(i[l]=nn(n,l));return t&&Object.isExtensible(t)&&(t._normalized=i),W(i,"$stable",s),W(i,"$key",c),W(i,"$hasNormal",a),i}function tn(e,t,n,r){var i=function(){var t=ue;fe(e);var n=arguments.length?r.apply(null,arguments):r({}),i=(n=n&&"object"==typeof n&&!o(n)?[n]:Rt(n))&&n[0];return fe(t),n&&(!i||1===n.length&&i.isComment&&!Qt(i))?void 0:n};return r.proxy&&Object.defineProperty(t,n,{get:i,enumerable:!0,configurable:!0}),i}function nn(e,t){return function(){return e[t]}}function rn(e){return{get attrs(){if(!e._attrsProxy){var t=e._attrsProxy={};W(t,"_v_attr_proxy",!0),on(t,e.$attrs,r,e,"$attrs")}return e._attrsProxy},get listeners(){return e._listenersProxy||on(e._listenersProxy={},e.$listeners,r,e,"$listeners"),e._listenersProxy},get slots(){return function(e){return e._slotsProxy||sn(e._slotsProxy={},e.$scopedSlots),e._slotsProxy}(e)},emit:k(e.$emit,e),expose:function(t){t&&Object.keys(t).forEach((function(n){return Qe(e,t,n)}))}}}function on(e,t,n,r,o){var i=!1;for(var a in t)a in e?t[a]!==n[a]&&(i=!0):(i=!0,an(e,a,r,o));for(var a in e)a in t||(i=!0,delete e[a]);return i}function an(e,t,n,r){Object.defineProperty(e,t,{enumerable:!0,configurable:!0,get:function(){return n[r][t]}})}function sn(e,t){for(var n in t)e[n]=t[n];for(var n in e)n in t||delete e[n]}function cn(){return fn().slots}function un(){return fn().attrs}function ln(){return fn().listeners}function fn(){var e=ue;return e._setupContext||(e._setupContext=rn(e))}function pn(e,t){var n=o(e)?e.reduce((function(e,t){return e[t]={},e}),{}):e;for(var r in t){var i=n[r];i?o(i)||u(i)?n[r]={type:i,default:t[r]}:i.default=t[r]:null===i&&(n[r]={default:t[r]})}return n}var dn=null;function vn(e,t){return(e.__esModule||ce&&"Module"===e[Symbol.toStringTag])&&(e=e.default),l(e)?t.extend(e):e}function hn(e){if(o(e))for(var t=0;tdocument.createEvent("Event").timeStamp&&(Or=function(){return Sr.now()})}var Cr=function(e,t){if(e.post){if(!t.post)return 1}else if(t.post)return-1;return e.id-t.id};function Tr(){var e,t;for(wr=Or(),br=!0,mr.sort(Cr),xr=0;xrxr&&mr[n].id>e.id;)n--;mr.splice(n+1,0,e)}else mr.push(e);_r||(_r=!0,jn(Tr))}}function kr(e,t){if(e){for(var n=Object.create(null),r=ce?Reflect.ownKeys(e):Object.keys(e),o=0;o-1)if(i&&!x(o,"default"))a=!1;else if(""===a||a===E(e)){var c=Xr(String,o.type);(c<0||s-1:"string"==typeof e?e.split(",").indexOf(t)>-1:(n=e,!("[object RegExp]"!==f.call(n))&&e.test(t));var n}function uo(e,t){var n=e.cache,r=e.keys,o=e._vnode;for(var i in n){var a=n[i];if(a){var s=a.name;s&&!t(s)&&lo(n,i,r,o)}}}function lo(e,t,n,r){var o=e[t];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),e[t]=null,_(n,t)}!function(e){e.prototype._init=function(e){var t=this;t._uid=oo++,t._isVue=!0,t.__v_skip=!0,t._scope=new xt(!0),t._scope._vm=!0,e&&e._isComponent?function(e,t){var n=e.$options=Object.create(e.constructor.options),r=t._parentVnode;n.parent=t.parent,n._parentVnode=r;var o=r.componentOptions;n.propsData=o.propsData,n._parentListeners=o.listeners,n._renderChildren=o.children,n._componentTag=o.tag,t.render&&(n.render=t.render,n.staticRenderFns=t.staticRenderFns)}(t,e):t.$options=Wr(io(t.constructor),e||{},t),t._renderProxy=t,t._self=t,function(e){var t=e.$options,n=t.parent;if(n&&!t.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(e)}e.$parent=n,e.$root=n?n.$root:e,e.$children=[],e.$refs={},e._provided=n?n._provided:Object.create(null),e._watcher=null,e._inactive=null,e._directInactive=!1,e._isMounted=!1,e._isDestroyed=!1,e._isBeingDestroyed=!1}(t),function(e){e._events=Object.create(null),e._hasHookEvent=!1;var t=e.$options._parentListeners;t&&ur(e,t)}(t),function(e){e._vnode=null,e._staticTrees=null;var t=e.$options,n=e.$vnode=t._parentVnode,o=n&&n.context;e.$slots=Zt(t._renderChildren,o),e.$scopedSlots=n?en(e.$parent,n.data.scopedSlots,e.$slots):r,e._c=function(t,n,r,o){return yn(e,t,n,r,o,!1)},e.$createElement=function(t,n,r,o){return yn(e,t,n,r,o,!0)};var i=n&&n.data;Ie(e,"$attrs",i&&i.attrs||r,null,!0),Ie(e,"$listeners",t._parentListeners||r,null,!0)}(t),hr(t,"beforeCreate",void 0,!1),function(e){var t=kr(e.$options.inject,e);t&&(ke(!1),Object.keys(t).forEach((function(n){Ie(e,n,t[n])})),ke(!0))}(t),function(e){var t=e.$options;if(t.props&&function(e,t){var n=e.$options.propsData||{},r=e._props=Le({}),o=e.$options._propKeys=[];!e.$parent||ke(!1);var i=function(i){o.push(i);var a=Gr(i,t,n,e);Ie(r,i,a),i in e||Jr(e,"_props",i)};for(var a in t)i(a);ke(!0)}(e,t.props),function(e){var t=e.$options,n=t.setup;if(n){var r=e._setupContext=rn(e);fe(e),xe();var o=wn(n,null,[e._props||Le({}),r],e,"setup");if(we(),fe(),u(o))t.render=o;else if(l(o))if(e._setupState=o,o.__sfc){var i=e._setupProxy={};for(var a in o)"__sfc"!==a&&Qe(i,o,a)}else for(var a in o)B(a)||Qe(e,o,a)}}(e),t.methods&&function(e,t){for(var n in e.$options.props,t)e[n]="function"!=typeof t[n]?I:k(t[n],e)}(e,t.methods),t.data)!function(e){var t=e.$options.data;p(t=e._data=u(t)?function(e,t){xe();try{return e.call(t,t)}catch(e){return xn(e,t,"data()"),{}}finally{we()}}(t,e):t||{})||(t={});for(var n=Object.keys(t),r=e.$options.props,o=(e.$options.methods,n.length);o--;){var i=n[o];r&&x(r,i)||B(i)||Jr(e,"_data",i)}var a=Ne(t);a&&a.vmCount++}(e);else{var n=Ne(e._data={});n&&n.vmCount++}t.computed&&function(e,t){var n=e._computedWatchers=Object.create(null),r=oe();for(var o in t){var i=t[o],a=u(i)?i:i.get;r||(n[o]=new ir(e,a||I,I,Qr)),o in e||eo(e,o,i)}}(e,t.computed),t.watch&&t.watch!==te&&function(e,t){for(var n in t){var r=t[n];if(o(r))for(var i=0;i1?A(n):n;for(var r=A(arguments,1),o='event handler for "'.concat(e,'"'),i=0,a=n.length;iparseInt(this.max)&&lo(t,n[0],n,this._vnode),this.vnodeToCache=null}}},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var e in this.cache)lo(this.cache,e,this.keys)},mounted:function(){var e=this;this.cacheVNode(),this.$watch("include",(function(t){uo(e,(function(e){return co(t,e)}))})),this.$watch("exclude",(function(t){uo(e,(function(e){return!co(t,e)}))}))},updated:function(){this.cacheVNode()},render:function(){var e=this.$slots.default,t=hn(e),n=t&&t.componentOptions;if(n){var r=so(n),o=this.include,i=this.exclude;if(o&&(!r||!co(o,r))||i&&r&&co(i,r))return t;var a=this.cache,s=this.keys,c=null==t.key?n.Ctor.cid+(n.tag?"::".concat(n.tag):""):t.key;a[c]?(t.componentInstance=a[c].componentInstance,_(s,c),s.push(c)):(this.vnodeToCache=t,this.keyToCache=c),t.data.keepAlive=!0}return t||e&&e[0]}}};!function(e){var t={get:function(){return H}};Object.defineProperty(e,"config",t),e.util={warn:Lr,extend:$,mergeOptions:Wr,defineReactive:Ie},e.set=Re,e.delete=je,e.nextTick=jn,e.observable=function(e){return Ne(e),e},e.options=Object.create(null),U.forEach((function(t){e.options[t+"s"]=Object.create(null)})),e.options._base=e,$(e.options.components,po),function(e){e.use=function(e){var t=this._installedPlugins||(this._installedPlugins=[]);if(t.indexOf(e)>-1)return this;var n=A(arguments,1);return n.unshift(this),u(e.install)?e.install.apply(e,n):u(e)&&e.apply(null,n),t.push(e),this}}(e),function(e){e.mixin=function(e){return this.options=Wr(this.options,e),this}}(e),function(e){e.cid=0;var t=1;e.extend=function(e){e=e||{};var n=this,r=n.cid,o=e._Ctor||(e._Ctor={});if(o[r])return o[r];var i=Ir(e)||Ir(n.options),a=function(e){this._init(e)};return(a.prototype=Object.create(n.prototype)).constructor=a,a.cid=t++,a.options=Wr(n.options,e),a.super=n,a.options.props&&function(e){var t=e.options.props;for(var n in t)Jr(e.prototype,"_props",n)}(a),a.options.computed&&function(e){var t=e.options.computed;for(var n in t)eo(e.prototype,n,t[n])}(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,U.forEach((function(e){a[e]=n[e]})),i&&(a.options.components[i]=a),a.superOptions=n.options,a.extendOptions=e,a.sealedOptions=$({},a.options),o[r]=a,a}}(e),function(e){U.forEach((function(t){e[t]=function(e,n){return n?("component"===t&&p(n)&&(n.name=n.name||e,n=this.options._base.extend(n)),"directive"===t&&u(n)&&(n={bind:n,update:n}),this.options[t+"s"][e]=n,n):this.options[t+"s"][e]}}))}(e)}(ao),Object.defineProperty(ao.prototype,"$isServer",{get:oe}),Object.defineProperty(ao.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(ao,"FunctionalRenderContext",{value:Ar}),ao.version=Jn;var vo=g("style,class"),ho=g("input,textarea,option,select,progress"),mo=g("contenteditable,draggable,spellcheck"),go=g("events,caret,typing,plaintext-only"),yo=function(e,t){return Oo(t)||"false"===t?"false":"contenteditable"===e&&go(t)?t:"true"},_o=g("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,truespeed,typemustmatch,visible"),bo="http://www.w3.org/1999/xlink",xo=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},wo=function(e){return xo(e)?e.slice(6,e.length):""},Oo=function(e){return null==e||!1===e};function So(e,t){return{staticClass:Co(e.staticClass,t.staticClass),class:a(e.class)?[e.class,t.class]:t.class}}function Co(e,t){return e?t?e+" "+t:e:t||""}function To(e){return Array.isArray(e)?function(e){for(var t,n="",r=0,o=e.length;r-1?Xo(e,t,n):_o(t)?Oo(n)?e.removeAttribute(t):(n="allowfullscreen"===t&&"EMBED"===e.tagName?"true":t,e.setAttribute(t,n)):mo(t)?e.setAttribute(t,yo(t,n)):xo(t)?Oo(n)?e.removeAttributeNS(bo,wo(t)):e.setAttributeNS(bo,t,n):Xo(e,t,n)}function Xo(e,t,n){if(Oo(n))e.removeAttribute(t);else{if(K&&!X&&"TEXTAREA"===e.tagName&&"placeholder"===t&&""!==n&&!e.__ieph){var r=function(t){t.stopImmediatePropagation(),e.removeEventListener("input",r)};e.addEventListener("input",r),e.__ieph=!0}e.setAttribute(t,n)}}var Zo={create:qo,update:qo};function Jo(e,t){var n=t.elm,r=t.data,o=e.data;if(!(i(r.staticClass)&&i(r.class)&&(i(o)||i(o.staticClass)&&i(o.class)))){var s=function(e){for(var t=e.data,n=e,r=e;a(r.componentInstance);)(r=r.componentInstance._vnode)&&r.data&&(t=So(r.data,t));for(;a(n=n.parent);)n&&n.data&&(t=So(t,n.data));return o=t.staticClass,i=t.class,a(o)||a(i)?Co(o,To(i)):"";var o,i}(t),c=n._transitionClasses;a(c)&&(s=Co(s,To(c))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var Qo,ei={create:Jo,update:Jo},ti="__r",ni="__c";function ri(e,t,n){var r=Qo;return function o(){null!==t.apply(null,arguments)&&ai(e,o,n,r)}}var oi=Tn&&!(ee&&Number(ee[1])<=53);function ii(e,t,n,r){if(oi){var o=wr,i=t;t=i._wrapper=function(e){if(e.target===e.currentTarget||e.timeStamp>=o||e.timeStamp<=0||e.target.ownerDocument!==document)return i.apply(this,arguments)}}Qo.addEventListener(e,t,ne?{capture:n,passive:r}:n)}function ai(e,t,n,r){(r||Qo).removeEventListener(e,t._wrapper||t,n)}function si(e,t){if(!i(e.data.on)||!i(t.data.on)){var n=t.data.on||{},r=e.data.on||{};Qo=t.elm||e.elm,function(e){if(a(e[ti])){var t=K?"change":"input";e[t]=[].concat(e[ti],e[t]||[]),delete e[ti]}a(e[ni])&&(e.change=[].concat(e[ni],e.change||[]),delete e[ni])}(n),$t(n,r,ii,ai,ri,t.context),Qo=void 0}}var ci,ui={create:si,update:si,destroy:function(e){return si(e,Lo)}};function li(e,t){if(!i(e.data.domProps)||!i(t.data.domProps)){var n,r,o=t.elm,c=e.data.domProps||{},u=t.data.domProps||{};for(n in(a(u.__ob__)||s(u._v_attr_proxy))&&(u=t.data.domProps=$({},u)),c)n in u||(o[n]="");for(n in u){if(r=u[n],"textContent"===n||"innerHTML"===n){if(t.children&&(t.children.length=0),r===c[n])continue;1===o.childNodes.length&&o.removeChild(o.childNodes[0])}if("value"===n&&"PROGRESS"!==o.tagName){o._value=r;var l=i(r)?"":String(r);fi(o,l)&&(o.value=l)}else if("innerHTML"===n&&Ao(o.tagName)&&i(o.innerHTML)){(ci=ci||document.createElement("div")).innerHTML="".concat(r,"");for(var f=ci.firstChild;o.firstChild;)o.removeChild(o.firstChild);for(;f.firstChild;)o.appendChild(f.firstChild)}else if(r!==c[n])try{o[n]=r}catch(e){}}}}function fi(e,t){return!e.composing&&("OPTION"===e.tagName||function(e,t){var n=!0;try{n=document.activeElement!==e}catch(e){}return n&&e.value!==t}(e,t)||function(e,t){var n=e.value,r=e._vModifiers;if(a(r)){if(r.number)return m(n)!==m(t);if(r.trim)return n.trim()!==t.trim()}return n!==t}(e,t))}var pi={create:li,update:li},di=w((function(e){var t={},n=/:(.+)/;return e.split(/;(?![^(]*\))/g).forEach((function(e){if(e){var r=e.split(n);r.length>1&&(t[r[0].trim()]=r[1].trim())}})),t}));function vi(e){var t=hi(e.style);return e.staticStyle?$(e.staticStyle,t):t}function hi(e){return Array.isArray(e)?N(e):"string"==typeof e?di(e):e}var mi,gi=/^--/,yi=/\s*!important$/,_i=function(e,t,n){if(gi.test(t))e.style.setProperty(t,n);else if(yi.test(n))e.style.setProperty(E(t),n.replace(yi,""),"important");else{var r=xi(t);if(Array.isArray(n))for(var o=0,i=n.length;o-1?t.split(Si).forEach((function(t){return e.classList.add(t)})):e.classList.add(t);else{var n=" ".concat(e.getAttribute("class")||""," ");n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function Ti(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(Si).forEach((function(t){return e.classList.remove(t)})):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{for(var n=" ".concat(e.getAttribute("class")||""," "),r=" "+t+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?e.setAttribute("class",n):e.removeAttribute("class")}}function Ei(e){if(e){if("object"==typeof e){var t={};return!1!==e.css&&$(t,ki(e.name||"v")),$(t,e),t}return"string"==typeof e?ki(e):void 0}}var ki=w((function(e){return{enterClass:"".concat(e,"-enter"),enterToClass:"".concat(e,"-enter-to"),enterActiveClass:"".concat(e,"-enter-active"),leaveClass:"".concat(e,"-leave"),leaveToClass:"".concat(e,"-leave-to"),leaveActiveClass:"".concat(e,"-leave-active")}})),Ai=Y&&!X,$i="transition",Ni="animation",Ii="transition",Ri="transitionend",ji="animation",Di="animationend";Ai&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(Ii="WebkitTransition",Ri="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(ji="WebkitAnimation",Di="webkitAnimationEnd"));var Pi=Y?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(e){return e()};function Li(e){Pi((function(){Pi(e)}))}function Mi(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),Ci(e,t))}function Fi(e,t){e._transitionClasses&&_(e._transitionClasses,t),Ti(e,t)}function Ui(e,t,n){var r=Hi(e,t),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var s=o===$i?Ri:Di,c=0,u=function(){e.removeEventListener(s,l),n()},l=function(t){t.target===e&&++c>=a&&u()};setTimeout((function(){c0&&(n=$i,l=a,f=i.length):t===Ni?u>0&&(n=Ni,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?$i:Ni:null)?n===$i?i.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===$i&&zi.test(r[Ii+"Property"])}}function Bi(e,t){for(;e.length1}function Ki(e,t){!0!==t.data.show&&Vi(t)}var Xi=function(e){var t,n,r={},u=e.modules,l=e.nodeOps;for(t=0;tv?b(e,i(n[g+1])?null:n[g+1].elm,n,d,g,r):d>g&&w(t,f,v)}(f,h,g,n,u):a(g)?(a(e.text)&&l.setTextContent(f,""),b(f,null,g,0,g.length-1,n)):a(h)?w(h,0,h.length-1):a(e.text)&&l.setTextContent(f,""):e.text!==t.text&&l.setTextContent(f,t.text),a(v)&&a(d=v.hook)&&a(d=d.postpatch)&&d(e,t)}}}function T(e,t,n){if(s(n)&&a(e.parent))e.parent.data.pendingInsert=t;else for(var r=0;r-1,a.selected!==i&&(a.selected=i);else if(D(ta(a),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));o||(e.selectedIndex=-1)}}function ea(e,t){return t.every((function(t){return!D(t,e)}))}function ta(e){return"_value"in e?e._value:e.value}function na(e){e.target.composing=!0}function ra(e){e.target.composing&&(e.target.composing=!1,oa(e.target,"input"))}function oa(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function ia(e){return!e.componentInstance||e.data&&e.data.transition?e:ia(e.componentInstance._vnode)}var aa={model:Zi,show:{bind:function(e,t,n){var r=t.value,o=(n=ia(n)).data&&n.data.transition,i=e.__vOriginalDisplay="none"===e.style.display?"":e.style.display;r&&o?(n.data.show=!0,Vi(n,(function(){e.style.display=i}))):e.style.display=r?i:"none"},update:function(e,t,n){var r=t.value;!r!=!t.oldValue&&((n=ia(n)).data&&n.data.transition?(n.data.show=!0,r?Vi(n,(function(){e.style.display=e.__vOriginalDisplay})):Gi(n,(function(){e.style.display="none"}))):e.style.display=r?e.__vOriginalDisplay:"none")},unbind:function(e,t,n,r,o){o||(e.style.display=e.__vOriginalDisplay)}}},sa={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function ca(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?ca(hn(t.children)):e}function ua(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var o=n._parentListeners;for(var r in o)t[S(r)]=o[r];return t}function la(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}var fa=function(e){return e.tag||Qt(e)},pa=function(e){return"show"===e.name},da={name:"transition",props:sa,abstract:!0,render:function(e){var t=this,n=this.$slots.default;if(n&&(n=n.filter(fa)).length){var r=this.mode,o=n[0];if(function(e){for(;e=e.parent;)if(e.data.transition)return!0}(this.$vnode))return o;var i=ca(o);if(!i)return o;if(this._leaving)return la(e,o);var a="__transition-".concat(this._uid,"-");i.key=null==i.key?i.isComment?a+"comment":a+i.tag:c(i.key)?0===String(i.key).indexOf(a)?i.key:a+i.key:i.key;var s=(i.data||(i.data={})).transition=ua(this),u=this._vnode,l=ca(u);if(i.data.directives&&i.data.directives.some(pa)&&(i.data.show=!0),l&&l.data&&!function(e,t){return t.key===e.key&&t.tag===e.tag}(i,l)&&!Qt(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=$({},s);if("out-in"===r)return this._leaving=!0,Nt(f,"afterLeave",(function(){t._leaving=!1,t.$forceUpdate()})),la(e,o);if("in-out"===r){if(Qt(i))return u;var p,d=function(){p()};Nt(s,"afterEnter",d),Nt(s,"enterCancelled",d),Nt(f,"delayLeave",(function(e){p=e}))}}return o}}},va=$({tag:String,moveClass:String},sa);delete va.mode;var ha={props:va,beforeMount:function(){var e=this,t=this._update;this._update=function(n,r){var o=fr(e);e.__patch__(e._vnode,e.kept,!1,!0),e._vnode=e.kept,o(),t.call(e,n,r)}},render:function(e){for(var t=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=ua(this),s=0;s-1?No[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:No[e]=/HTMLUnknownElement/.test(t.toString())},$(ao.options.directives,aa),$(ao.options.components,_a),ao.prototype.__patch__=Y?Xi:I,ao.prototype.$mount=function(e,t){return function(e,t,n){var r;e.$el=t,e.$options.render||(e.$options.render=de),hr(e,"beforeMount"),r=function(){e._update(e._render(),n)},new ir(e,r,I,{before:function(){e._isMounted&&!e._isDestroyed&&hr(e,"beforeUpdate")}},!0),n=!1;var o=e._preWatchers;if(o)for(var i=0;i{"use strict";n.d(t,{Iu:()=>a,uN:()=>s}),n(79753);var r=n(27856),o=n(95573);function i(e){var t,n,r,o;return{translations:null!==(n=null===(t=window._oc_l10n_registry_translations)||void 0===t?void 0:t[e])&&void 0!==n?n:{},pluralFunction:null!==(o=null===(r=window._oc_l10n_registry_plural_functions)||void 0===r?void 0:r[e])&&void 0!==o?o:e=>e}}function a(e,t,n,a,s){const c=Object.assign({},{escape:!0,sanitize:!0},s||{}),u=e=>e,l=c.sanitize?r.sanitize:u,f=c.escape?o:u;let p=i(e).translations[t]||t;return p=Array.isArray(p)?p[0]:p,l("object"==typeof n||void 0!==a?((e,t,n)=>e.replace(/%n/g,""+n).replace(/{([^{}]*)}/g,((e,n)=>{if(void 0===t||!(n in t))return l(e);const r=t[n];return l("string"==typeof r||"number"==typeof r?f(r):e)})))(p,n,a):p)}function s(e,t,n,r,o,s){const c="_"+t+"_::_"+n+"_",u=i(e),l=u.translations[c];if(void 0!==l){const t=l;if(Array.isArray(t))return a(e,t[u.pluralFunction(r)],o,r,s)}return a(e,1===r?t:n,o,r,s)}}},r={};function o(e){var t=r[e];if(void 0!==t)return t.exports;var i=r[e]={id:e,loaded:!1,exports:{}};return n[e].call(i.exports,i,i.exports,o),i.loaded=!0,i.exports}o.m=n,o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.f={},o.e=e=>Promise.all(Object.keys(o.f).reduce(((t,n)=>(o.f[n](e,t),t)),[])),o.u=e=>"activity-"+e+".js?v="+{389:"ad462860ee137ff27ece",528:"9bc06c835f3b1fe584fd"}[e],o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="activity:",o.l=(n,r,i,a)=>{if(e[n])e[n].push(r);else{var s,c;if(void 0!==i)for(var u=document.getElementsByTagName("script"),l=0;l{s.onerror=s.onload=null,clearTimeout(d);var o=e[n];if(delete e[n],s.parentNode&&s.parentNode.removeChild(s),o&&o.forEach((e=>e(r))),t)return t(r)},d=setTimeout(p.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=p.bind(null,s.onerror),s.onload=p.bind(null,s.onload),c&&document.head.appendChild(s)}},o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),o.p="/apps/activity/js/",(()=>{var e={541:0};o.f.j=(t,n)=>{var r=o.o(e,t)?e[t]:void 0;if(0!==r)if(r)n.push(r[2]);else{var i=new Promise(((n,o)=>r=e[t]=[n,o]));n.push(r[2]=i);var a=o.p+o.u(t),s=new Error;o.l(a,(n=>{if(o.o(e,t)&&(0!==(r=e[t])&&(e[t]=void 0),r)){var i=n&&("load"===n.type?"missing":n.type),a=n&&n.target&&n.target.src;s.message="Loading chunk "+t+" failed.\n("+i+": "+a+")",s.name="ChunkLoadError",s.type=i,s.request=a,r[1](s)}}),"chunk-"+t,t)}};var t=(t,n)=>{var r,i,[a,s,c]=n,u=0;if(a.some((t=>0!==e[t]))){for(r in s)o.o(s,r)&&(o.m[r]=s[r]);c&&c(o)}for(t&&t(n);u{"use strict";var e=o(20144),t=o(31352);e.default.prototype.t=t.Iu,e.default.prototype.n=t.uN,o.nc=btoa(OC.requestToken),o.p=OC.linkTo("activity","js/");let n=null,r=null;const i=new OCA.Files.Sidebar.Tab({id:"activity",name:(0,t.Iu)("activity","Activity"),iconSvg:'',async mount(t,i,a){if(null===n){var s;const{default:t}=await Promise.all([o.e(528),o.e(389)]).then(o.bind(o,95389));n=null!==(s=n)&&void 0!==s?s:e.default.extend(t)}r&&r.$destroy(),r=new n({parent:a}),r.update(i),r.$mount(t)},update(e){r.update(e)},destroy(){r.$destroy(),r=null}});window.addEventListener("DOMContentLoaded",(async function(){if(OCA.Files&&OCA.Files.Sidebar){var t;OCA.Files.Sidebar.registerTab(i);const{default:r}=await Promise.all([o.e(528),o.e(389)]).then(o.bind(o,95389));n=null!==(t=n)&&void 0!==t?t:e.default.extend(r)}}))})()})(); -//# sourceMappingURL=activity-sidebar.js.map?v=71218f2e163a6e57f8b0 \ No newline at end of file +(()=>{var e,t,n={79753:(e,t,n)=>{"use strict";n(69070),Object.defineProperty(t,"__esModule",{value:!0}),t.linkTo=t.imagePath=t.getRootUrl=t.generateUrl=t.generateRemoteUrl=t.generateOcsUrl=t.generateFilePath=void 0,n(19601),n(74916),n(15306),n(41539),n(39714),n(82772),t.linkTo=function(e,t){return o(e,"",t)},t.generateRemoteUrl=function(e){return window.location.protocol+"//"+window.location.host+function(e){return i()+"/remote.php/"+e}(e)},t.generateOcsUrl=function(e,t,n){var o=1===Object.assign({ocsVersion:2},n||{}).ocsVersion?1:2;return window.location.protocol+"//"+window.location.host+i()+"/ocs/v"+o+".php"+r(e,t,n)};var r=function(e,t,n){var r,o=Object.assign({escape:!0},n||{});return"/"!==e.charAt(0)&&(e="/"+e),r=(r=t||{})||{},e.replace(/{([^{}]*)}/g,(function(e,t){var n=r[t];return o.escape?"string"==typeof n||"number"==typeof n?encodeURIComponent(n.toString()):encodeURIComponent(e):"string"==typeof n||"number"==typeof n?n.toString():e}))};t.generateUrl=function(e,t,n){var o,a,s,c=Object.assign({noRewrite:!1},n||{});return!0!==(null===(o=window)||void 0===o||null===(a=o.OC)||void 0===a||null===(s=a.config)||void 0===s?void 0:s.modRewriteWorking)||c.noRewrite?i()+"/index.php"+r(e,t,n):i()+r(e,t,n)},t.imagePath=function(e,t){return-1===t.indexOf(".")?o(e,"img",t+".svg"):o(e,"img",t)};var o=function(e,t,n){var r,o,a,s=-1!==(null===(r=window)||void 0===r||null===(o=r.OC)||void 0===o||null===(a=o.coreApps)||void 0===a?void 0:a.indexOf(e)),c=i();if("php"!==n.substring(n.length-3)||s)if("php"===n.substring(n.length-3)||s)c+="settings"!==e&&"core"!==e&&"search"!==e||"ajax"!==t?"/":"/index.php/",s||(c+="apps/"),""!==e&&(c+=e+="/"),t&&(c+=t+"/"),c+=n;else{var u,l,f;c=null===(u=window)||void 0===u||null===(l=u.OC)||void 0===l||null===(f=l.appswebroots)||void 0===f?void 0:f[e],t&&(c+="/"+t+"/"),"/"!==c.substring(c.length-1)&&(c+="/"),c+=n}else c+="/index.php/apps/"+e,"index.php"!==n&&(c+="/",t&&(c+=encodeURI(t+"/")),c+=n);return c};t.generateFilePath=o;var i=function(){var e,t;return(null===(e=window)||void 0===e||null===(t=e.OC)||void 0===t?void 0:t.webroot)||""};t.getRootUrl=i},19662:(e,t,n)=>{var r=n(60614),o=n(66330),i=TypeError;e.exports=function(e){if(r(e))return e;throw i(o(e)+" is not a function")}},31530:(e,t,n)=>{"use strict";var r=n(28710).charAt;e.exports=function(e,t,n){return t+(n?r(e,t).length:1)}},19670:(e,t,n)=>{var r=n(70111),o=String,i=TypeError;e.exports=function(e){if(r(e))return e;throw i(o(e)+" is not an object")}},41318:(e,t,n)=>{var r=n(45656),o=n(51400),i=n(26244),a=function(e){return function(t,n,a){var s,c=r(t),u=i(c),l=o(a,u);if(e&&n!=n){for(;u>l;)if((s=c[l++])!=s)return!0}else for(;u>l;l++)if((e||l in c)&&c[l]===n)return e||l||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},9341:(e,t,n)=>{"use strict";var r=n(47293);e.exports=function(e,t){var n=[][e];return!!n&&r((function(){n.call(null,t||function(){return 1},1)}))}},84326:(e,t,n)=>{var r=n(40084),o=r({}.toString),i=r("".slice);e.exports=function(e){return i(o(e),8,-1)}},70648:(e,t,n)=>{var r=n(51694),o=n(60614),i=n(84326),a=n(5112)("toStringTag"),s=Object,c="Arguments"==i(function(){return arguments}());e.exports=r?i:function(e){var t,n,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=s(e),a))?n:c?i(t):"Object"==(r=i(t))&&o(t.callee)?"Arguments":r}},99920:(e,t,n)=>{var r=n(92597),o=n(53887),i=n(31236),a=n(3070);e.exports=function(e,t,n){for(var s=o(t),c=a.f,u=i.f,l=0;l{var r=n(19781),o=n(3070),i=n(79114);e.exports=r?function(e,t,n){return o.f(e,t,i(1,n))}:function(e,t,n){return e[t]=n,e}},79114:e=>{e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},98052:(e,t,n)=>{var r=n(60614),o=n(3070),i=n(56339),a=n(13072);e.exports=function(e,t,n,s){s||(s={});var c=s.enumerable,u=void 0!==s.name?s.name:t;if(r(n)&&i(n,u,s),s.global)c?e[t]=n:a(t,n);else{try{s.unsafe?e[t]&&(c=!0):delete e[t]}catch(e){}c?e[t]=n:o.f(e,t,{value:n,enumerable:!1,configurable:!s.nonConfigurable,writable:!s.nonWritable})}return e}},13072:(e,t,n)=>{var r=n(17854),o=Object.defineProperty;e.exports=function(e,t){try{o(r,e,{value:t,configurable:!0,writable:!0})}catch(n){r[e]=t}return t}},19781:(e,t,n)=>{var r=n(47293);e.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},4154:e=>{var t="object"==typeof document&&document.all,n=void 0===t&&void 0!==t;e.exports={all:t,IS_HTMLDDA:n}},80317:(e,t,n)=>{var r=n(17854),o=n(70111),i=r.document,a=o(i)&&o(i.createElement);e.exports=function(e){return a?i.createElement(e):{}}},88113:(e,t,n)=>{var r=n(35005);e.exports=r("navigator","userAgent")||""},7392:(e,t,n)=>{var r,o,i=n(17854),a=n(88113),s=i.process,c=i.Deno,u=s&&s.versions||c&&c.version,l=u&&u.v8;l&&(o=(r=l.split("."))[0]>0&&r[0]<4?1:+(r[0]+r[1])),!o&&a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=+r[1]),e.exports=o},80748:e=>{e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},82109:(e,t,n)=>{var r=n(17854),o=n(31236).f,i=n(68880),a=n(98052),s=n(13072),c=n(99920),u=n(54705);e.exports=function(e,t){var n,l,f,p,d,v=e.target,h=e.global,m=e.stat;if(n=h?r:m?r[v]||s(v,{}):(r[v]||{}).prototype)for(l in t){if(p=t[l],f=e.dontCallGetSet?(d=o(n,l))&&d.value:n[l],!u(h?l:v+(m?".":"#")+l,e.forced)&&void 0!==f){if(typeof p==typeof f)continue;c(p,f)}(e.sham||f&&f.sham)&&i(p,"sham",!0),a(n,l,p,e)}}},47293:e=>{e.exports=function(e){try{return!!e()}catch(e){return!0}}},27007:(e,t,n)=>{"use strict";n(74916);var r=n(1702),o=n(98052),i=n(22261),a=n(47293),s=n(5112),c=n(68880),u=s("species"),l=RegExp.prototype;e.exports=function(e,t,n,f){var p=s(e),d=!a((function(){var t={};return t[p]=function(){return 7},7!=""[e](t)})),v=d&&!a((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[p]=/./[p]),n.exec=function(){return t=!0,null},n[p](""),!t}));if(!d||!v||n){var h=r(/./[p]),m=t(p,""[e],(function(e,t,n,o,a){var s=r(e),c=t.exec;return c===i||c===l.exec?d&&!a?{done:!0,value:h(t,n,o)}:{done:!0,value:s(n,t,o)}:{done:!1}}));o(String.prototype,e,m[0]),o(l,p,m[1])}f&&c(l[p],"sham",!0)}},22104:(e,t,n)=>{var r=n(34374),o=Function.prototype,i=o.apply,a=o.call;e.exports="object"==typeof Reflect&&Reflect.apply||(r?a.bind(i):function(){return a.apply(i,arguments)})},34374:(e,t,n)=>{var r=n(47293);e.exports=!r((function(){var e=function(){}.bind();return"function"!=typeof e||e.hasOwnProperty("prototype")}))},46916:(e,t,n)=>{var r=n(34374),o=Function.prototype.call;e.exports=r?o.bind(o):function(){return o.apply(o,arguments)}},76530:(e,t,n)=>{var r=n(19781),o=n(92597),i=Function.prototype,a=r&&Object.getOwnPropertyDescriptor,s=o(i,"name"),c=s&&"something"===function(){}.name,u=s&&(!r||r&&a(i,"name").configurable);e.exports={EXISTS:s,PROPER:c,CONFIGURABLE:u}},40084:(e,t,n)=>{var r=n(34374),o=Function.prototype,i=o.call,a=r&&o.bind.bind(i,i);e.exports=function(e){return r?a(e):function(){return i.apply(e,arguments)}}},1702:(e,t,n)=>{var r=n(84326),o=n(40084);e.exports=function(e){if("Function"===r(e))return o(e)}},35005:(e,t,n)=>{var r=n(17854),o=n(60614);e.exports=function(e,t){return arguments.length<2?(n=r[e],o(n)?n:void 0):r[e]&&r[e][t];var n}},58173:(e,t,n)=>{var r=n(19662),o=n(68554);e.exports=function(e,t){var n=e[t];return o(n)?void 0:r(n)}},10647:(e,t,n)=>{var r=n(1702),o=n(47908),i=Math.floor,a=r("".charAt),s=r("".replace),c=r("".slice),u=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,l=/\$([$&'`]|\d{1,2})/g;e.exports=function(e,t,n,r,f,p){var d=n+e.length,v=r.length,h=l;return void 0!==f&&(f=o(f),h=u),s(p,h,(function(o,s){var u;switch(a(s,0)){case"$":return"$";case"&":return e;case"`":return c(t,0,n);case"'":return c(t,d);case"<":u=f[c(s,1,-1)];break;default:var l=+s;if(0===l)return o;if(l>v){var p=i(l/10);return 0===p?o:p<=v?void 0===r[p-1]?a(s,1):r[p-1]+a(s,1):o}u=r[l-1]}return void 0===u?"":u}))}},17854:(e,t,n)=>{var r=function(e){return e&&e.Math==Math&&e};e.exports=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof n.g&&n.g)||function(){return this}()||Function("return this")()},92597:(e,t,n)=>{var r=n(1702),o=n(47908),i=r({}.hasOwnProperty);e.exports=Object.hasOwn||function(e,t){return i(o(e),t)}},3501:e=>{e.exports={}},60490:(e,t,n)=>{var r=n(35005);e.exports=r("document","documentElement")},64664:(e,t,n)=>{var r=n(19781),o=n(47293),i=n(80317);e.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},68361:(e,t,n)=>{var r=n(1702),o=n(47293),i=n(84326),a=Object,s=r("".split);e.exports=o((function(){return!a("z").propertyIsEnumerable(0)}))?function(e){return"String"==i(e)?s(e,""):a(e)}:a},42788:(e,t,n)=>{var r=n(1702),o=n(60614),i=n(5465),a=r(Function.toString);o(i.inspectSource)||(i.inspectSource=function(e){return a(e)}),e.exports=i.inspectSource},29909:(e,t,n)=>{var r,o,i,a=n(94811),s=n(17854),c=n(70111),u=n(68880),l=n(92597),f=n(5465),p=n(6200),d=n(3501),v="Object already initialized",h=s.TypeError,m=s.WeakMap;if(a||f.state){var g=f.state||(f.state=new m);g.get=g.get,g.has=g.has,g.set=g.set,r=function(e,t){if(g.has(e))throw h(v);return t.facade=e,g.set(e,t),t},o=function(e){return g.get(e)||{}},i=function(e){return g.has(e)}}else{var y=p("state");d[y]=!0,r=function(e,t){if(l(e,y))throw h(v);return t.facade=e,u(e,y,t),t},o=function(e){return l(e,y)?e[y]:{}},i=function(e){return l(e,y)}}e.exports={set:r,get:o,has:i,enforce:function(e){return i(e)?o(e):r(e,{})},getterFor:function(e){return function(t){var n;if(!c(t)||(n=o(t)).type!==e)throw h("Incompatible receiver, "+e+" required");return n}}}},60614:(e,t,n)=>{var r=n(4154),o=r.all;e.exports=r.IS_HTMLDDA?function(e){return"function"==typeof e||e===o}:function(e){return"function"==typeof e}},54705:(e,t,n)=>{var r=n(47293),o=n(60614),i=/#|\.prototype\./,a=function(e,t){var n=c[s(e)];return n==l||n!=u&&(o(t)?r(t):!!t)},s=a.normalize=function(e){return String(e).replace(i,".").toLowerCase()},c=a.data={},u=a.NATIVE="N",l=a.POLYFILL="P";e.exports=a},68554:e=>{e.exports=function(e){return null==e}},70111:(e,t,n)=>{var r=n(60614),o=n(4154),i=o.all;e.exports=o.IS_HTMLDDA?function(e){return"object"==typeof e?null!==e:r(e)||e===i}:function(e){return"object"==typeof e?null!==e:r(e)}},31913:e=>{e.exports=!1},52190:(e,t,n)=>{var r=n(35005),o=n(60614),i=n(47976),a=n(43307),s=Object;e.exports=a?function(e){return"symbol"==typeof e}:function(e){var t=r("Symbol");return o(t)&&i(t.prototype,s(e))}},26244:(e,t,n)=>{var r=n(17466);e.exports=function(e){return r(e.length)}},56339:(e,t,n)=>{var r=n(47293),o=n(60614),i=n(92597),a=n(19781),s=n(76530).CONFIGURABLE,c=n(42788),u=n(29909),l=u.enforce,f=u.get,p=Object.defineProperty,d=a&&!r((function(){return 8!==p((function(){}),"length",{value:8}).length})),v=String(String).split("String"),h=e.exports=function(e,t,n){"Symbol("===String(t).slice(0,7)&&(t="["+String(t).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),n&&n.getter&&(t="get "+t),n&&n.setter&&(t="set "+t),(!i(e,"name")||s&&e.name!==t)&&(a?p(e,"name",{value:t,configurable:!0}):e.name=t),d&&n&&i(n,"arity")&&e.length!==n.arity&&p(e,"length",{value:n.arity});try{n&&i(n,"constructor")&&n.constructor?a&&p(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch(e){}var r=l(e);return i(r,"source")||(r.source=v.join("string"==typeof t?t:"")),e};Function.prototype.toString=h((function(){return o(this)&&f(this).source||c(this)}),"toString")},74758:e=>{var t=Math.ceil,n=Math.floor;e.exports=Math.trunc||function(e){var r=+e;return(r>0?n:t)(r)}},21574:(e,t,n)=>{"use strict";var r=n(19781),o=n(1702),i=n(46916),a=n(47293),s=n(81956),c=n(25181),u=n(55296),l=n(47908),f=n(68361),p=Object.assign,d=Object.defineProperty,v=o([].concat);e.exports=!p||a((function(){if(r&&1!==p({b:1},p(d({},"a",{enumerable:!0,get:function(){d(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol(),o="abcdefghijklmnopqrst";return e[n]=7,o.split("").forEach((function(e){t[e]=e})),7!=p({},e)[n]||s(p({},t)).join("")!=o}))?function(e,t){for(var n=l(e),o=arguments.length,a=1,p=c.f,d=u.f;o>a;)for(var h,m=f(arguments[a++]),g=p?v(s(m),p(m)):s(m),y=g.length,_=0;y>_;)h=g[_++],r&&!i(d,m,h)||(n[h]=m[h]);return n}:p},70030:(e,t,n)=>{var r,o=n(19670),i=n(36048),a=n(80748),s=n(3501),c=n(60490),u=n(80317),l=n(6200),f="prototype",p="script",d=l("IE_PROTO"),v=function(){},h=function(e){return"<"+p+">"+e+""},m=function(e){e.write(h("")),e.close();var t=e.parentWindow.Object;return e=null,t},g=function(){try{r=new ActiveXObject("htmlfile")}catch(e){}var e,t,n;g="undefined"!=typeof document?document.domain&&r?m(r):(t=u("iframe"),n="java"+p+":",t.style.display="none",c.appendChild(t),t.src=String(n),(e=t.contentWindow.document).open(),e.write(h("document.F=Object")),e.close(),e.F):m(r);for(var o=a.length;o--;)delete g[f][a[o]];return g()};s[d]=!0,e.exports=Object.create||function(e,t){var n;return null!==e?(v[f]=o(e),n=new v,v[f]=null,n[d]=e):n=g(),void 0===t?n:i.f(n,t)}},36048:(e,t,n)=>{var r=n(19781),o=n(3353),i=n(3070),a=n(19670),s=n(45656),c=n(81956);t.f=r&&!o?Object.defineProperties:function(e,t){a(e);for(var n,r=s(t),o=c(t),u=o.length,l=0;u>l;)i.f(e,n=o[l++],r[n]);return e}},3070:(e,t,n)=>{var r=n(19781),o=n(64664),i=n(3353),a=n(19670),s=n(34948),c=TypeError,u=Object.defineProperty,l=Object.getOwnPropertyDescriptor,f="enumerable",p="configurable",d="writable";t.f=r?i?function(e,t,n){if(a(e),t=s(t),a(n),"function"==typeof e&&"prototype"===t&&"value"in n&&d in n&&!n[d]){var r=l(e,t);r&&r[d]&&(e[t]=n.value,n={configurable:p in n?n[p]:r[p],enumerable:f in n?n[f]:r[f],writable:!1})}return u(e,t,n)}:u:function(e,t,n){if(a(e),t=s(t),a(n),o)try{return u(e,t,n)}catch(e){}if("get"in n||"set"in n)throw c("Accessors not supported");return"value"in n&&(e[t]=n.value),e}},31236:(e,t,n)=>{var r=n(19781),o=n(46916),i=n(55296),a=n(79114),s=n(45656),c=n(34948),u=n(92597),l=n(64664),f=Object.getOwnPropertyDescriptor;t.f=r?f:function(e,t){if(e=s(e),t=c(t),l)try{return f(e,t)}catch(e){}if(u(e,t))return a(!o(i.f,e,t),e[t])}},8006:(e,t,n)=>{var r=n(16324),o=n(80748).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return r(e,o)}},25181:(e,t)=>{t.f=Object.getOwnPropertySymbols},47976:(e,t,n)=>{var r=n(1702);e.exports=r({}.isPrototypeOf)},16324:(e,t,n)=>{var r=n(1702),o=n(92597),i=n(45656),a=n(41318).indexOf,s=n(3501),c=r([].push);e.exports=function(e,t){var n,r=i(e),u=0,l=[];for(n in r)!o(s,n)&&o(r,n)&&c(l,n);for(;t.length>u;)o(r,n=t[u++])&&(~a(l,n)||c(l,n));return l}},81956:(e,t,n)=>{var r=n(16324),o=n(80748);e.exports=Object.keys||function(e){return r(e,o)}},55296:(e,t)=>{"use strict";var n={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,o=r&&!n.call({1:2},1);t.f=o?function(e){var t=r(this,e);return!!t&&t.enumerable}:n},90288:(e,t,n)=>{"use strict";var r=n(51694),o=n(70648);e.exports=r?{}.toString:function(){return"[object "+o(this)+"]"}},92140:(e,t,n)=>{var r=n(46916),o=n(60614),i=n(70111),a=TypeError;e.exports=function(e,t){var n,s;if("string"===t&&o(n=e.toString)&&!i(s=r(n,e)))return s;if(o(n=e.valueOf)&&!i(s=r(n,e)))return s;if("string"!==t&&o(n=e.toString)&&!i(s=r(n,e)))return s;throw a("Can't convert object to primitive value")}},53887:(e,t,n)=>{var r=n(35005),o=n(1702),i=n(8006),a=n(25181),s=n(19670),c=o([].concat);e.exports=r("Reflect","ownKeys")||function(e){var t=i.f(s(e)),n=a.f;return n?c(t,n(e)):t}},97651:(e,t,n)=>{var r=n(46916),o=n(19670),i=n(60614),a=n(84326),s=n(22261),c=TypeError;e.exports=function(e,t){var n=e.exec;if(i(n)){var u=r(n,e,t);return null!==u&&o(u),u}if("RegExp"===a(e))return r(s,e,t);throw c("RegExp#exec called on incompatible receiver")}},22261:(e,t,n)=>{"use strict";var r,o,i=n(46916),a=n(1702),s=n(41340),c=n(67066),u=n(52999),l=n(72309),f=n(70030),p=n(29909).get,d=n(9441),v=n(38173),h=l("native-string-replace",String.prototype.replace),m=RegExp.prototype.exec,g=m,y=a("".charAt),_=a("".indexOf),b=a("".replace),x=a("".slice),w=(o=/b*/g,i(m,r=/a/,"a"),i(m,o,"a"),0!==r.lastIndex||0!==o.lastIndex),O=u.BROKEN_CARET,S=void 0!==/()??/.exec("")[1];(w||S||O||d||v)&&(g=function(e){var t,n,r,o,a,u,l,d=this,v=p(d),C=s(e),T=v.raw;if(T)return T.lastIndex=d.lastIndex,t=i(g,T,C),d.lastIndex=T.lastIndex,t;var E=v.groups,k=O&&d.sticky,A=i(c,d),$=d.source,N=0,I=C;if(k&&(A=b(A,"y",""),-1===_(A,"g")&&(A+="g"),I=x(C,d.lastIndex),d.lastIndex>0&&(!d.multiline||d.multiline&&"\n"!==y(C,d.lastIndex-1))&&($="(?: "+$+")",I=" "+I,N++),n=new RegExp("^(?:"+$+")",A)),S&&(n=new RegExp("^"+$+"$(?!\\s)",A)),w&&(r=d.lastIndex),o=i(m,k?n:d,I),k?o?(o.input=x(o.input,N),o[0]=x(o[0],N),o.index=d.lastIndex,d.lastIndex+=o[0].length):d.lastIndex=0:w&&o&&(d.lastIndex=d.global?o.index+o[0].length:r),S&&o&&o.length>1&&i(h,o[0],n,(function(){for(a=1;a{"use strict";var r=n(19670);e.exports=function(){var e=r(this),t="";return e.hasIndices&&(t+="d"),e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.unicodeSets&&(t+="v"),e.sticky&&(t+="y"),t}},34706:(e,t,n)=>{var r=n(46916),o=n(92597),i=n(47976),a=n(67066),s=RegExp.prototype;e.exports=function(e){var t=e.flags;return void 0!==t||"flags"in s||o(e,"flags")||!i(s,e)?t:r(a,e)}},52999:(e,t,n)=>{var r=n(47293),o=n(17854).RegExp,i=r((function(){var e=o("a","y");return e.lastIndex=2,null!=e.exec("abcd")})),a=i||r((function(){return!o("a","y").sticky})),s=i||r((function(){var e=o("^r","gy");return e.lastIndex=2,null!=e.exec("str")}));e.exports={BROKEN_CARET:s,MISSED_STICKY:a,UNSUPPORTED_Y:i}},9441:(e,t,n)=>{var r=n(47293),o=n(17854).RegExp;e.exports=r((function(){var e=o(".","s");return!(e.dotAll&&e.exec("\n")&&"s"===e.flags)}))},38173:(e,t,n)=>{var r=n(47293),o=n(17854).RegExp;e.exports=r((function(){var e=o("(?b)","g");return"b"!==e.exec("b").groups.a||"bc"!=="b".replace(e,"$c")}))},84488:(e,t,n)=>{var r=n(68554),o=TypeError;e.exports=function(e){if(r(e))throw o("Can't call method on "+e);return e}},6200:(e,t,n)=>{var r=n(72309),o=n(69711),i=r("keys");e.exports=function(e){return i[e]||(i[e]=o(e))}},5465:(e,t,n)=>{var r=n(17854),o=n(13072),i="__core-js_shared__",a=r[i]||o(i,{});e.exports=a},72309:(e,t,n)=>{var r=n(31913),o=n(5465);(e.exports=function(e,t){return o[e]||(o[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.25.5",mode:r?"pure":"global",copyright:"© 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.25.5/LICENSE",source:"https://github.com/zloirock/core-js"})},28710:(e,t,n)=>{var r=n(1702),o=n(19303),i=n(41340),a=n(84488),s=r("".charAt),c=r("".charCodeAt),u=r("".slice),l=function(e){return function(t,n){var r,l,f=i(a(t)),p=o(n),d=f.length;return p<0||p>=d?e?"":void 0:(r=c(f,p))<55296||r>56319||p+1===d||(l=c(f,p+1))<56320||l>57343?e?s(f,p):r:e?u(f,p,p+2):l-56320+(r-55296<<10)+65536}};e.exports={codeAt:l(!1),charAt:l(!0)}},36293:(e,t,n)=>{var r=n(7392),o=n(47293);e.exports=!!Object.getOwnPropertySymbols&&!o((function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},51400:(e,t,n)=>{var r=n(19303),o=Math.max,i=Math.min;e.exports=function(e,t){var n=r(e);return n<0?o(n+t,0):i(n,t)}},45656:(e,t,n)=>{var r=n(68361),o=n(84488);e.exports=function(e){return r(o(e))}},19303:(e,t,n)=>{var r=n(74758);e.exports=function(e){var t=+e;return t!=t||0===t?0:r(t)}},17466:(e,t,n)=>{var r=n(19303),o=Math.min;e.exports=function(e){return e>0?o(r(e),9007199254740991):0}},47908:(e,t,n)=>{var r=n(84488),o=Object;e.exports=function(e){return o(r(e))}},57593:(e,t,n)=>{var r=n(46916),o=n(70111),i=n(52190),a=n(58173),s=n(92140),c=n(5112),u=TypeError,l=c("toPrimitive");e.exports=function(e,t){if(!o(e)||i(e))return e;var n,c=a(e,l);if(c){if(void 0===t&&(t="default"),n=r(c,e,t),!o(n)||i(n))return n;throw u("Can't convert object to primitive value")}return void 0===t&&(t="number"),s(e,t)}},34948:(e,t,n)=>{var r=n(57593),o=n(52190);e.exports=function(e){var t=r(e,"string");return o(t)?t:t+""}},51694:(e,t,n)=>{var r={};r[n(5112)("toStringTag")]="z",e.exports="[object z]"===String(r)},41340:(e,t,n)=>{var r=n(70648),o=String;e.exports=function(e){if("Symbol"===r(e))throw TypeError("Cannot convert a Symbol value to a string");return o(e)}},66330:e=>{var t=String;e.exports=function(e){try{return t(e)}catch(e){return"Object"}}},69711:(e,t,n)=>{var r=n(1702),o=0,i=Math.random(),a=r(1..toString);e.exports=function(e){return"Symbol("+(void 0===e?"":e)+")_"+a(++o+i,36)}},43307:(e,t,n)=>{var r=n(36293);e.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},3353:(e,t,n)=>{var r=n(19781),o=n(47293);e.exports=r&&o((function(){return 42!=Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype}))},94811:(e,t,n)=>{var r=n(17854),o=n(60614),i=r.WeakMap;e.exports=o(i)&&/native code/.test(String(i))},5112:(e,t,n)=>{var r=n(17854),o=n(72309),i=n(92597),a=n(69711),s=n(36293),c=n(43307),u=o("wks"),l=r.Symbol,f=l&&l.for,p=c?l:l&&l.withoutSetter||a;e.exports=function(e){if(!i(u,e)||!s&&"string"!=typeof u[e]){var t="Symbol."+e;s&&i(l,e)?u[e]=l[e]:u[e]=c&&f?f(t):p(t)}return u[e]}},82772:(e,t,n)=>{"use strict";var r=n(82109),o=n(1702),i=n(41318).indexOf,a=n(9341),s=o([].indexOf),c=!!s&&1/s([1],1,-0)<0,u=a("indexOf");r({target:"Array",proto:!0,forced:c||!u},{indexOf:function(e){var t=arguments.length>1?arguments[1]:void 0;return c?s(this,e,t)||0:i(this,e,t)}})},19601:(e,t,n)=>{var r=n(82109),o=n(21574);r({target:"Object",stat:!0,arity:2,forced:Object.assign!==o},{assign:o})},69070:(e,t,n)=>{var r=n(82109),o=n(19781),i=n(3070).f;r({target:"Object",stat:!0,forced:Object.defineProperty!==i,sham:!o},{defineProperty:i})},41539:(e,t,n)=>{var r=n(51694),o=n(98052),i=n(90288);r||o(Object.prototype,"toString",i,{unsafe:!0})},74916:(e,t,n)=>{"use strict";var r=n(82109),o=n(22261);r({target:"RegExp",proto:!0,forced:/./.exec!==o},{exec:o})},39714:(e,t,n)=>{"use strict";var r=n(76530).PROPER,o=n(98052),i=n(19670),a=n(41340),s=n(47293),c=n(34706),u="toString",l=RegExp.prototype[u],f=s((function(){return"/a/b"!=l.call({source:"a",flags:"b"})})),p=r&&l.name!=u;(f||p)&&o(RegExp.prototype,u,(function(){var e=i(this);return"/"+a(e.source)+"/"+a(c(e))}),{unsafe:!0})},15306:(e,t,n)=>{"use strict";var r=n(22104),o=n(46916),i=n(1702),a=n(27007),s=n(47293),c=n(19670),u=n(60614),l=n(68554),f=n(19303),p=n(17466),d=n(41340),v=n(84488),h=n(31530),m=n(58173),g=n(10647),y=n(97651),_=n(5112)("replace"),b=Math.max,x=Math.min,w=i([].concat),O=i([].push),S=i("".indexOf),C=i("".slice),T="$0"==="a".replace(/./,"$0"),E=!!/./[_]&&""===/./[_]("a","$0");a("replace",(function(e,t,n){var i=E?"$":"$0";return[function(e,n){var r=v(this),i=l(e)?void 0:m(e,_);return i?o(i,e,r,n):o(t,d(r),e,n)},function(e,o){var a=c(this),s=d(e);if("string"==typeof o&&-1===S(o,i)&&-1===S(o,"$<")){var l=n(t,a,s,o);if(l.done)return l.value}var v=u(o);v||(o=d(o));var m=a.global;if(m){var _=a.unicode;a.lastIndex=0}for(var T=[];;){var E=y(a,s);if(null===E)break;if(O(T,E),!m)break;""===d(E[0])&&(a.lastIndex=h(s,p(a.lastIndex),_))}for(var k,A="",$=0,N=0;N=$&&(A+=C(s,$,R)+M,$=R+I.length)}return A+C(s,$)}]}),!!s((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$")}))||!T||E)},27856:function(e){e.exports=function(){"use strict";const{entries:e,setPrototypeOf:t,isFrozen:n,getPrototypeOf:r,getOwnPropertyDescriptor:o}=Object;let{freeze:i,seal:a,create:s}=Object,{apply:c,construct:u}="undefined"!=typeof Reflect&&Reflect;c||(c=function(e,t,n){return e.apply(t,n)}),i||(i=function(e){return e}),a||(a=function(e){return e}),u||(u=function(e,t){return new e(...t)});const l=w(Array.prototype.forEach),f=w(Array.prototype.pop),p=w(Array.prototype.push),d=w(String.prototype.toLowerCase),v=w(String.prototype.toString),h=w(String.prototype.match),m=w(String.prototype.replace),g=w(String.prototype.indexOf),y=w(String.prototype.trim),_=w(RegExp.prototype.test),b=(x=TypeError,function(){for(var e=arguments.length,t=new Array(e),n=0;n1?n-1:0),o=1;o/gm),F=a(/\${[\w\W]*}/gm),U=a(/^data-[\-\w.\u00B7-\uFFFF]/),z=a(/^aria-[\-\w]+$/),H=a(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),B=a(/^(?:\w+script|data):/i),W=a(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),V=a(/^html$/i);var G=Object.freeze({__proto__:null,MUSTACHE_EXPR:L,ERB_EXPR:M,TMPLIT_EXPR:F,DATA_ATTR:U,ARIA_ATTR:z,IS_ALLOWED_URI:H,IS_SCRIPT_OR_DATA:B,ATTR_WHITESPACE:W,DOCTYPE_NAME:V});const Y=()=>"undefined"==typeof window?null:window;return function t(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Y();const r=e=>t(e);if(r.version="3.0.3",r.removed=[],!n||!n.document||9!==n.document.nodeType)return r.isSupported=!1,r;const o=n.document,a=o.currentScript;let{document:s}=n;const{DocumentFragment:c,HTMLTemplateElement:u,Node:x,Element:w,NodeFilter:L,NamedNodeMap:M=n.NamedNodeMap||n.MozNamedAttrMap,HTMLFormElement:F,DOMParser:U,trustedTypes:z}=n,B=w.prototype,W=C(B,"cloneNode"),q=C(B,"nextSibling"),K=C(B,"childNodes"),X=C(B,"parentNode");if("function"==typeof u){const e=s.createElement("template");e.content&&e.content.ownerDocument&&(s=e.content.ownerDocument)}let Z,J="";const{implementation:Q,createNodeIterator:ee,createDocumentFragment:te,getElementsByTagName:ne}=s,{importNode:re}=o;let oe={};r.isSupported="function"==typeof e&&"function"==typeof X&&Q&&void 0!==Q.createHTMLDocument;const{MUSTACHE_EXPR:ie,ERB_EXPR:ae,TMPLIT_EXPR:se,DATA_ATTR:ce,ARIA_ATTR:ue,IS_SCRIPT_OR_DATA:le,ATTR_WHITESPACE:fe}=G;let{IS_ALLOWED_URI:pe}=G,de=null;const ve=O({},[...T,...E,...k,...$,...I]);let he=null;const me=O({},[...R,...j,...D,...P]);let ge=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ye=null,_e=null,be=!0,xe=!0,we=!1,Oe=!0,Se=!1,Ce=!1,Te=!1,Ee=!1,ke=!1,Ae=!1,$e=!1,Ne=!0,Ie=!1,Re=!0,je=!1,De={},Pe=null;const Le=O({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let Me=null;const Fe=O({},["audio","video","img","source","image","track"]);let Ue=null;const ze=O({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),He="http://www.w3.org/1998/Math/MathML",Be="http://www.w3.org/2000/svg",We="http://www.w3.org/1999/xhtml";let Ve=We,Ge=!1,Ye=null;const qe=O({},[He,Be,We],v);let Ke;const Xe=["application/xhtml+xml","text/html"];let Ze,Je=null;const Qe=s.createElement("form"),et=function(e){return e instanceof RegExp||e instanceof Function},tt=function(e){if(!Je||Je!==e){if(e&&"object"==typeof e||(e={}),e=S(e),Ke=Ke=-1===Xe.indexOf(e.PARSER_MEDIA_TYPE)?"text/html":e.PARSER_MEDIA_TYPE,Ze="application/xhtml+xml"===Ke?v:d,de="ALLOWED_TAGS"in e?O({},e.ALLOWED_TAGS,Ze):ve,he="ALLOWED_ATTR"in e?O({},e.ALLOWED_ATTR,Ze):me,Ye="ALLOWED_NAMESPACES"in e?O({},e.ALLOWED_NAMESPACES,v):qe,Ue="ADD_URI_SAFE_ATTR"in e?O(S(ze),e.ADD_URI_SAFE_ATTR,Ze):ze,Me="ADD_DATA_URI_TAGS"in e?O(S(Fe),e.ADD_DATA_URI_TAGS,Ze):Fe,Pe="FORBID_CONTENTS"in e?O({},e.FORBID_CONTENTS,Ze):Le,ye="FORBID_TAGS"in e?O({},e.FORBID_TAGS,Ze):{},_e="FORBID_ATTR"in e?O({},e.FORBID_ATTR,Ze):{},De="USE_PROFILES"in e&&e.USE_PROFILES,be=!1!==e.ALLOW_ARIA_ATTR,xe=!1!==e.ALLOW_DATA_ATTR,we=e.ALLOW_UNKNOWN_PROTOCOLS||!1,Oe=!1!==e.ALLOW_SELF_CLOSE_IN_ATTR,Se=e.SAFE_FOR_TEMPLATES||!1,Ce=e.WHOLE_DOCUMENT||!1,ke=e.RETURN_DOM||!1,Ae=e.RETURN_DOM_FRAGMENT||!1,$e=e.RETURN_TRUSTED_TYPE||!1,Ee=e.FORCE_BODY||!1,Ne=!1!==e.SANITIZE_DOM,Ie=e.SANITIZE_NAMED_PROPS||!1,Re=!1!==e.KEEP_CONTENT,je=e.IN_PLACE||!1,pe=e.ALLOWED_URI_REGEXP||H,Ve=e.NAMESPACE||We,ge=e.CUSTOM_ELEMENT_HANDLING||{},e.CUSTOM_ELEMENT_HANDLING&&et(e.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(ge.tagNameCheck=e.CUSTOM_ELEMENT_HANDLING.tagNameCheck),e.CUSTOM_ELEMENT_HANDLING&&et(e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(ge.attributeNameCheck=e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),e.CUSTOM_ELEMENT_HANDLING&&"boolean"==typeof e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements&&(ge.allowCustomizedBuiltInElements=e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Se&&(xe=!1),Ae&&(ke=!0),De&&(de=O({},[...I]),he=[],!0===De.html&&(O(de,T),O(he,R)),!0===De.svg&&(O(de,E),O(he,j),O(he,P)),!0===De.svgFilters&&(O(de,k),O(he,j),O(he,P)),!0===De.mathMl&&(O(de,$),O(he,D),O(he,P))),e.ADD_TAGS&&(de===ve&&(de=S(de)),O(de,e.ADD_TAGS,Ze)),e.ADD_ATTR&&(he===me&&(he=S(he)),O(he,e.ADD_ATTR,Ze)),e.ADD_URI_SAFE_ATTR&&O(Ue,e.ADD_URI_SAFE_ATTR,Ze),e.FORBID_CONTENTS&&(Pe===Le&&(Pe=S(Pe)),O(Pe,e.FORBID_CONTENTS,Ze)),Re&&(de["#text"]=!0),Ce&&O(de,["html","head","body"]),de.table&&(O(de,["tbody"]),delete ye.tbody),e.TRUSTED_TYPES_POLICY){if("function"!=typeof e.TRUSTED_TYPES_POLICY.createHTML)throw b('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if("function"!=typeof e.TRUSTED_TYPES_POLICY.createScriptURL)throw b('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');Z=e.TRUSTED_TYPES_POLICY,J=Z.createHTML("")}else void 0===Z&&(Z=function(e,t){if("object"!=typeof e||"function"!=typeof e.createPolicy)return null;let n=null;const r="data-tt-policy-suffix";t&&t.hasAttribute(r)&&(n=t.getAttribute(r));const o="dompurify"+(n?"#"+n:"");try{return e.createPolicy(o,{createHTML:e=>e,createScriptURL:e=>e})}catch(e){return console.warn("TrustedTypes policy "+o+" could not be created."),null}}(z,a)),null!==Z&&"string"==typeof J&&(J=Z.createHTML(""));i&&i(e),Je=e}},nt=O({},["mi","mo","mn","ms","mtext"]),rt=O({},["foreignobject","desc","title","annotation-xml"]),ot=O({},["title","style","font","a","script"]),it=O({},E);O(it,k),O(it,A);const at=O({},$);O(at,N);const st=function(e){p(r.removed,{element:e});try{e.parentNode.removeChild(e)}catch(t){e.remove()}},ct=function(e,t){try{p(r.removed,{attribute:t.getAttributeNode(e),from:t})}catch(e){p(r.removed,{attribute:null,from:t})}if(t.removeAttribute(e),"is"===e&&!he[e])if(ke||Ae)try{st(t)}catch(e){}else try{t.setAttribute(e,"")}catch(e){}},ut=function(e){let t,n;if(Ee)e=""+e;else{const t=h(e,/^[\r\n\t ]+/);n=t&&t[0]}"application/xhtml+xml"===Ke&&Ve===We&&(e=''+e+"");const r=Z?Z.createHTML(e):e;if(Ve===We)try{t=(new U).parseFromString(r,Ke)}catch(e){}if(!t||!t.documentElement){t=Q.createDocument(Ve,"template",null);try{t.documentElement.innerHTML=Ge?J:r}catch(e){}}const o=t.body||t.documentElement;return e&&n&&o.insertBefore(s.createTextNode(n),o.childNodes[0]||null),Ve===We?ne.call(t,Ce?"html":"body")[0]:Ce?t.documentElement:o},lt=function(e){return ee.call(e.ownerDocument||e,e,L.SHOW_ELEMENT|L.SHOW_COMMENT|L.SHOW_TEXT,null,!1)},ft=function(e){return"object"==typeof x?e instanceof x:e&&"object"==typeof e&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName},pt=function(e,t,n){oe[e]&&l(oe[e],(e=>{e.call(r,t,n,Je)}))},dt=function(e){let t;if(pt("beforeSanitizeElements",e,null),(n=e)instanceof F&&("string"!=typeof n.nodeName||"string"!=typeof n.textContent||"function"!=typeof n.removeChild||!(n.attributes instanceof M)||"function"!=typeof n.removeAttribute||"function"!=typeof n.setAttribute||"string"!=typeof n.namespaceURI||"function"!=typeof n.insertBefore||"function"!=typeof n.hasChildNodes))return st(e),!0;var n;const o=Ze(e.nodeName);if(pt("uponSanitizeElement",e,{tagName:o,allowedTags:de}),e.hasChildNodes()&&!ft(e.firstElementChild)&&(!ft(e.content)||!ft(e.content.firstElementChild))&&_(/<[/\w]/g,e.innerHTML)&&_(/<[/\w]/g,e.textContent))return st(e),!0;if(!de[o]||ye[o]){if(!ye[o]&&ht(o)){if(ge.tagNameCheck instanceof RegExp&&_(ge.tagNameCheck,o))return!1;if(ge.tagNameCheck instanceof Function&&ge.tagNameCheck(o))return!1}if(Re&&!Pe[o]){const t=X(e)||e.parentNode,n=K(e)||e.childNodes;if(n&&t)for(let r=n.length-1;r>=0;--r)t.insertBefore(W(n[r],!0),q(e))}return st(e),!0}return e instanceof w&&!function(e){let t=X(e);t&&t.tagName||(t={namespaceURI:Ve,tagName:"template"});const n=d(e.tagName),r=d(t.tagName);return!!Ye[e.namespaceURI]&&(e.namespaceURI===Be?t.namespaceURI===We?"svg"===n:t.namespaceURI===He?"svg"===n&&("annotation-xml"===r||nt[r]):Boolean(it[n]):e.namespaceURI===He?t.namespaceURI===We?"math"===n:t.namespaceURI===Be?"math"===n&&rt[r]:Boolean(at[n]):e.namespaceURI===We?!(t.namespaceURI===Be&&!rt[r])&&!(t.namespaceURI===He&&!nt[r])&&!at[n]&&(ot[n]||!it[n]):!("application/xhtml+xml"!==Ke||!Ye[e.namespaceURI]))}(e)?(st(e),!0):"noscript"!==o&&"noembed"!==o||!_(/<\/no(script|embed)/i,e.innerHTML)?(Se&&3===e.nodeType&&(t=e.textContent,t=m(t,ie," "),t=m(t,ae," "),t=m(t,se," "),e.textContent!==t&&(p(r.removed,{element:e.cloneNode()}),e.textContent=t)),pt("afterSanitizeElements",e,null),!1):(st(e),!0)},vt=function(e,t,n){if(Ne&&("id"===t||"name"===t)&&(n in s||n in Qe))return!1;if(xe&&!_e[t]&&_(ce,t));else if(be&&_(ue,t));else if(!he[t]||_e[t]){if(!(ht(e)&&(ge.tagNameCheck instanceof RegExp&&_(ge.tagNameCheck,e)||ge.tagNameCheck instanceof Function&&ge.tagNameCheck(e))&&(ge.attributeNameCheck instanceof RegExp&&_(ge.attributeNameCheck,t)||ge.attributeNameCheck instanceof Function&&ge.attributeNameCheck(t))||"is"===t&&ge.allowCustomizedBuiltInElements&&(ge.tagNameCheck instanceof RegExp&&_(ge.tagNameCheck,n)||ge.tagNameCheck instanceof Function&&ge.tagNameCheck(n))))return!1}else if(Ue[t]);else if(_(pe,m(n,fe,"")));else if("src"!==t&&"xlink:href"!==t&&"href"!==t||"script"===e||0!==g(n,"data:")||!Me[e])if(we&&!_(le,m(n,fe,"")));else if(n)return!1;return!0},ht=function(e){return e.indexOf("-")>0},mt=function(e){let t,n,o,i;pt("beforeSanitizeAttributes",e,null);const{attributes:a}=e;if(!a)return;const s={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:he};for(i=a.length;i--;){t=a[i];const{name:c,namespaceURI:u}=t;if(n="value"===c?t.value:y(t.value),o=Ze(c),s.attrName=o,s.attrValue=n,s.keepAttr=!0,s.forceKeepAttr=void 0,pt("uponSanitizeAttribute",e,s),n=s.attrValue,s.forceKeepAttr)continue;if(ct(c,e),!s.keepAttr)continue;if(!Oe&&_(/\/>/i,n)){ct(c,e);continue}Se&&(n=m(n,ie," "),n=m(n,ae," "),n=m(n,se," "));const l=Ze(e.nodeName);if(vt(l,o,n)){if(!Ie||"id"!==o&&"name"!==o||(ct(c,e),n="user-content-"+n),Z&&"object"==typeof z&&"function"==typeof z.getAttributeType)if(u);else switch(z.getAttributeType(l,o)){case"TrustedHTML":n=Z.createHTML(n);break;case"TrustedScriptURL":n=Z.createScriptURL(n)}try{u?e.setAttributeNS(u,c,n):e.setAttribute(c,n),f(r.removed)}catch(e){}}}pt("afterSanitizeAttributes",e,null)},gt=function e(t){let n;const r=lt(t);for(pt("beforeSanitizeShadowDOM",t,null);n=r.nextNode();)pt("uponSanitizeShadowNode",n,null),dt(n)||(n.content instanceof c&&e(n.content),mt(n));pt("afterSanitizeShadowDOM",t,null)};return r.sanitize=function(e){let t,n,i,a,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(Ge=!e,Ge&&(e="\x3c!--\x3e"),"string"!=typeof e&&!ft(e)){if("function"!=typeof e.toString)throw b("toString is not a function");if("string"!=typeof(e=e.toString()))throw b("dirty is not a string, aborting")}if(!r.isSupported)return e;if(Te||tt(s),r.removed=[],"string"==typeof e&&(je=!1),je){if(e.nodeName){const t=Ze(e.nodeName);if(!de[t]||ye[t])throw b("root node is forbidden and cannot be sanitized in-place")}}else if(e instanceof x)t=ut("\x3c!----\x3e"),n=t.ownerDocument.importNode(e,!0),1===n.nodeType&&"BODY"===n.nodeName||"HTML"===n.nodeName?t=n:t.appendChild(n);else{if(!ke&&!Se&&!Ce&&-1===e.indexOf("<"))return Z&&$e?Z.createHTML(e):e;if(t=ut(e),!t)return ke?null:$e?J:""}t&&Ee&&st(t.firstChild);const u=lt(je?e:t);for(;i=u.nextNode();)dt(i)||(i.content instanceof c&>(i.content),mt(i));if(je)return e;if(ke){if(Ae)for(a=te.call(t.ownerDocument);t.firstChild;)a.appendChild(t.firstChild);else a=t;return(he.shadowroot||he.shadowrootmod)&&(a=re.call(o,a,!0)),a}let l=Ce?t.outerHTML:t.innerHTML;return Ce&&de["!doctype"]&&t.ownerDocument&&t.ownerDocument.doctype&&t.ownerDocument.doctype.name&&_(V,t.ownerDocument.doctype.name)&&(l="\n"+l),Se&&(l=m(l,ie," "),l=m(l,ae," "),l=m(l,se," ")),Z&&$e?Z.createHTML(l):l},r.setConfig=function(e){tt(e),Te=!0},r.clearConfig=function(){Je=null,Te=!1},r.isValidAttribute=function(e,t,n){Je||tt({});const r=Ze(e),o=Ze(t);return vt(r,o,n)},r.addHook=function(e,t){"function"==typeof t&&(oe[e]=oe[e]||[],p(oe[e],t))},r.removeHook=function(e){if(oe[e])return f(oe[e])},r.removeHooks=function(e){oe[e]&&(oe[e]=[])},r.removeAllHooks=function(){oe={}},r}()}()},95573:e=>{"use strict";var t=/["'&<>]/;e.exports=function(e){var n,r=""+e,o=t.exec(r);if(!o)return r;var i="",a=0,s=0;for(a=o.index;a{"use strict";n.r(t),n.d(t,{EffectScope:()=>xt,computed:()=>ut,customRef:()=>et,default:()=>ao,defineAsyncComponent:()=>Ln,defineComponent:()=>Qn,del:()=>je,effectScope:()=>wt,getCurrentInstance:()=>le,getCurrentScope:()=>Ot,h:()=>bn,inject:()=>Et,isProxy:()=>He,isReactive:()=>Fe,isReadonly:()=>ze,isRef:()=>Ge,isShallow:()=>Ue,markRaw:()=>We,mergeDefaults:()=>pn,nextTick:()=>jn,onActivated:()=>Vn,onBeforeMount:()=>Fn,onBeforeUnmount:()=>Bn,onBeforeUpdate:()=>zn,onDeactivated:()=>Gn,onErrorCaptured:()=>Zn,onMounted:()=>Un,onRenderTracked:()=>qn,onRenderTriggered:()=>Kn,onScopeDispose:()=>St,onServerPrefetch:()=>Yn,onUnmounted:()=>Wn,onUpdated:()=>Hn,provide:()=>Ct,proxyRefs:()=>Je,reactive:()=>Pe,readonly:()=>it,ref:()=>Ye,set:()=>Re,shallowReactive:()=>Le,shallowReadonly:()=>ct,shallowRef:()=>qe,toRaw:()=>Be,toRef:()=>nt,toRefs:()=>tt,triggerRef:()=>Xe,unref:()=>Ze,useAttrs:()=>un,useCssModule:()=>Dn,useCssVars:()=>Pn,useListeners:()=>ln,useSlots:()=>cn,version:()=>Jn,watch:()=>_t,watchEffect:()=>vt,watchPostEffect:()=>ht,watchSyncEffect:()=>mt});var r=Object.freeze({}),o=Array.isArray;function i(e){return null==e}function a(e){return null!=e}function s(e){return!0===e}function c(e){return"string"==typeof e||"number"==typeof e||"symbol"==typeof e||"boolean"==typeof e}function u(e){return"function"==typeof e}function l(e){return null!==e&&"object"==typeof e}var f=Object.prototype.toString;function p(e){return"[object Object]"===f.call(e)}function d(e){var t=parseFloat(String(e));return t>=0&&Math.floor(t)===t&&isFinite(e)}function v(e){return a(e)&&"function"==typeof e.then&&"function"==typeof e.catch}function h(e){return null==e?"":Array.isArray(e)||p(e)&&e.toString===f?JSON.stringify(e,null,2):String(e)}function m(e){var t=parseFloat(e);return isNaN(t)?e:t}function g(e,t){for(var n=Object.create(null),r=e.split(","),o=0;o-1)return e.splice(r,1)}}var b=Object.prototype.hasOwnProperty;function x(e,t){return b.call(e,t)}function w(e){var t=Object.create(null);return function(n){return t[n]||(t[n]=e(n))}}var O=/-(\w)/g,S=w((function(e){return e.replace(O,(function(e,t){return t?t.toUpperCase():""}))})),C=w((function(e){return e.charAt(0).toUpperCase()+e.slice(1)})),T=/\B([A-Z])/g,E=w((function(e){return e.replace(T,"-$1").toLowerCase()})),k=Function.prototype.bind?function(e,t){return e.bind(t)}:function(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n};function A(e,t){t=t||0;for(var n=e.length-t,r=new Array(n);n--;)r[n]=e[n+t];return r}function $(e,t){for(var n in t)e[n]=t[n];return e}function N(e){for(var t={},n=0;n0,Z=q&&q.indexOf("edge/")>0;q&&q.indexOf("android");var J=q&&/iphone|ipad|ipod|ios/.test(q);q&&/chrome\/\d+/.test(q),q&&/phantomjs/.test(q);var Q,ee=q&&q.match(/firefox\/(\d+)/),te={}.watch,ne=!1;if(Y)try{var re={};Object.defineProperty(re,"passive",{get:function(){ne=!0}}),window.addEventListener("test-passive",null,re)}catch(e){}var oe=function(){return void 0===Q&&(Q=!Y&&void 0!==n.g&&n.g.process&&"server"===n.g.process.env.VUE_ENV),Q},ie=Y&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function ae(e){return"function"==typeof e&&/native code/.test(e.toString())}var se,ce="undefined"!=typeof Symbol&&ae(Symbol)&&"undefined"!=typeof Reflect&&ae(Reflect.ownKeys);se="undefined"!=typeof Set&&ae(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var ue=null;function le(){return ue&&{proxy:ue}}function fe(e){void 0===e&&(e=null),e||ue&&ue._scope.off(),ue=e,e&&e._scope.on()}var pe=function(){function e(e,t,n,r,o,i,a,s){this.tag=e,this.data=t,this.children=n,this.text=r,this.elm=o,this.ns=void 0,this.context=i,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=t&&t.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1}return Object.defineProperty(e.prototype,"child",{get:function(){return this.componentInstance},enumerable:!1,configurable:!0}),e}(),de=function(e){void 0===e&&(e="");var t=new pe;return t.text=e,t.isComment=!0,t};function ve(e){return new pe(void 0,void 0,void 0,String(e))}function he(e){var t=new pe(e.tag,e.data,e.children&&e.children.slice(),e.text,e.elm,e.context,e.componentOptions,e.asyncFactory);return t.ns=e.ns,t.isStatic=e.isStatic,t.key=e.key,t.isComment=e.isComment,t.fnContext=e.fnContext,t.fnOptions=e.fnOptions,t.fnScopeId=e.fnScopeId,t.asyncMeta=e.asyncMeta,t.isCloned=!0,t}var me=0,ge=[],ye=function(){for(var e=0;e1)return n&&u(t)?t.call(r):t}}var kt=w((function(e){var t="&"===e.charAt(0),n="~"===(e=t?e.slice(1):e).charAt(0),r="!"===(e=n?e.slice(1):e).charAt(0);return{name:e=r?e.slice(1):e,once:n,capture:r,passive:t}}));function At(e,t){function n(){var e=n.fns;if(!o(e))return wn(e,null,arguments,t,"v-on handler");for(var r=e.slice(),i=0;i0&&(jt((r=Dt(r,"".concat(t||"","_").concat(n)))[0])&&jt(l)&&(f[u]=ve(l.text+r[0].text),r.shift()),f.push.apply(f,r)):c(r)?jt(l)?f[u]=ve(l.text+r):""!==r&&f.push(ve(r)):jt(r)&&jt(l)?f[u]=ve(l.text+r.text):(s(e._isVList)&&a(r.tag)&&i(r.key)&&a(t)&&(r.key="__vlist".concat(t,"_").concat(n,"__")),f.push(r)));return f}function Pt(e,t){var n,r,i,s,c=null;if(o(e)||"string"==typeof e)for(c=new Array(e.length),n=0,r=e.length;n0,s=t?!!t.$stable:!a,c=t&&t.$key;if(t){if(t._normalized)return t._normalized;if(s&&o&&o!==r&&c===o.$key&&!a&&!o.$hasNormal)return o;for(var u in i={},t)t[u]&&"$"!==u[0]&&(i[u]=tn(e,n,u,t[u]))}else i={};for(var l in n)l in i||(i[l]=nn(n,l));return t&&Object.isExtensible(t)&&(t._normalized=i),W(i,"$stable",s),W(i,"$key",c),W(i,"$hasNormal",a),i}function tn(e,t,n,r){var i=function(){var t=ue;fe(e);var n=arguments.length?r.apply(null,arguments):r({}),i=(n=n&&"object"==typeof n&&!o(n)?[n]:Rt(n))&&n[0];return fe(t),n&&(!i||1===n.length&&i.isComment&&!Qt(i))?void 0:n};return r.proxy&&Object.defineProperty(t,n,{get:i,enumerable:!0,configurable:!0}),i}function nn(e,t){return function(){return e[t]}}function rn(e){return{get attrs(){if(!e._attrsProxy){var t=e._attrsProxy={};W(t,"_v_attr_proxy",!0),on(t,e.$attrs,r,e,"$attrs")}return e._attrsProxy},get listeners(){return e._listenersProxy||on(e._listenersProxy={},e.$listeners,r,e,"$listeners"),e._listenersProxy},get slots(){return function(e){return e._slotsProxy||sn(e._slotsProxy={},e.$scopedSlots),e._slotsProxy}(e)},emit:k(e.$emit,e),expose:function(t){t&&Object.keys(t).forEach((function(n){return Qe(e,t,n)}))}}}function on(e,t,n,r,o){var i=!1;for(var a in t)a in e?t[a]!==n[a]&&(i=!0):(i=!0,an(e,a,r,o));for(var a in e)a in t||(i=!0,delete e[a]);return i}function an(e,t,n,r){Object.defineProperty(e,t,{enumerable:!0,configurable:!0,get:function(){return n[r][t]}})}function sn(e,t){for(var n in t)e[n]=t[n];for(var n in e)n in t||delete e[n]}function cn(){return fn().slots}function un(){return fn().attrs}function ln(){return fn().listeners}function fn(){var e=ue;return e._setupContext||(e._setupContext=rn(e))}function pn(e,t){var n=o(e)?e.reduce((function(e,t){return e[t]={},e}),{}):e;for(var r in t){var i=n[r];i?o(i)||u(i)?n[r]={type:i,default:t[r]}:i.default=t[r]:null===i&&(n[r]={default:t[r]})}return n}var dn=null;function vn(e,t){return(e.__esModule||ce&&"Module"===e[Symbol.toStringTag])&&(e=e.default),l(e)?t.extend(e):e}function hn(e){if(o(e))for(var t=0;tdocument.createEvent("Event").timeStamp&&(Or=function(){return Sr.now()})}var Cr=function(e,t){if(e.post){if(!t.post)return 1}else if(t.post)return-1;return e.id-t.id};function Tr(){var e,t;for(wr=Or(),br=!0,mr.sort(Cr),xr=0;xrxr&&mr[n].id>e.id;)n--;mr.splice(n+1,0,e)}else mr.push(e);_r||(_r=!0,jn(Tr))}}function kr(e,t){if(e){for(var n=Object.create(null),r=ce?Reflect.ownKeys(e):Object.keys(e),o=0;o-1)if(i&&!x(o,"default"))a=!1;else if(""===a||a===E(e)){var c=Xr(String,o.type);(c<0||s-1:"string"==typeof e?e.split(",").indexOf(t)>-1:(n=e,!("[object RegExp]"!==f.call(n))&&e.test(t));var n}function uo(e,t){var n=e.cache,r=e.keys,o=e._vnode;for(var i in n){var a=n[i];if(a){var s=a.name;s&&!t(s)&&lo(n,i,r,o)}}}function lo(e,t,n,r){var o=e[t];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),e[t]=null,_(n,t)}!function(e){e.prototype._init=function(e){var t=this;t._uid=oo++,t._isVue=!0,t.__v_skip=!0,t._scope=new xt(!0),t._scope._vm=!0,e&&e._isComponent?function(e,t){var n=e.$options=Object.create(e.constructor.options),r=t._parentVnode;n.parent=t.parent,n._parentVnode=r;var o=r.componentOptions;n.propsData=o.propsData,n._parentListeners=o.listeners,n._renderChildren=o.children,n._componentTag=o.tag,t.render&&(n.render=t.render,n.staticRenderFns=t.staticRenderFns)}(t,e):t.$options=Wr(io(t.constructor),e||{},t),t._renderProxy=t,t._self=t,function(e){var t=e.$options,n=t.parent;if(n&&!t.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(e)}e.$parent=n,e.$root=n?n.$root:e,e.$children=[],e.$refs={},e._provided=n?n._provided:Object.create(null),e._watcher=null,e._inactive=null,e._directInactive=!1,e._isMounted=!1,e._isDestroyed=!1,e._isBeingDestroyed=!1}(t),function(e){e._events=Object.create(null),e._hasHookEvent=!1;var t=e.$options._parentListeners;t&&ur(e,t)}(t),function(e){e._vnode=null,e._staticTrees=null;var t=e.$options,n=e.$vnode=t._parentVnode,o=n&&n.context;e.$slots=Zt(t._renderChildren,o),e.$scopedSlots=n?en(e.$parent,n.data.scopedSlots,e.$slots):r,e._c=function(t,n,r,o){return yn(e,t,n,r,o,!1)},e.$createElement=function(t,n,r,o){return yn(e,t,n,r,o,!0)};var i=n&&n.data;Ie(e,"$attrs",i&&i.attrs||r,null,!0),Ie(e,"$listeners",t._parentListeners||r,null,!0)}(t),hr(t,"beforeCreate",void 0,!1),function(e){var t=kr(e.$options.inject,e);t&&(ke(!1),Object.keys(t).forEach((function(n){Ie(e,n,t[n])})),ke(!0))}(t),function(e){var t=e.$options;if(t.props&&function(e,t){var n=e.$options.propsData||{},r=e._props=Le({}),o=e.$options._propKeys=[];!e.$parent||ke(!1);var i=function(i){o.push(i);var a=Gr(i,t,n,e);Ie(r,i,a),i in e||Jr(e,"_props",i)};for(var a in t)i(a);ke(!0)}(e,t.props),function(e){var t=e.$options,n=t.setup;if(n){var r=e._setupContext=rn(e);fe(e),xe();var o=wn(n,null,[e._props||Le({}),r],e,"setup");if(we(),fe(),u(o))t.render=o;else if(l(o))if(e._setupState=o,o.__sfc){var i=e._setupProxy={};for(var a in o)"__sfc"!==a&&Qe(i,o,a)}else for(var a in o)B(a)||Qe(e,o,a)}}(e),t.methods&&function(e,t){for(var n in e.$options.props,t)e[n]="function"!=typeof t[n]?I:k(t[n],e)}(e,t.methods),t.data)!function(e){var t=e.$options.data;p(t=e._data=u(t)?function(e,t){xe();try{return e.call(t,t)}catch(e){return xn(e,t,"data()"),{}}finally{we()}}(t,e):t||{})||(t={});for(var n=Object.keys(t),r=e.$options.props,o=(e.$options.methods,n.length);o--;){var i=n[o];r&&x(r,i)||B(i)||Jr(e,"_data",i)}var a=Ne(t);a&&a.vmCount++}(e);else{var n=Ne(e._data={});n&&n.vmCount++}t.computed&&function(e,t){var n=e._computedWatchers=Object.create(null),r=oe();for(var o in t){var i=t[o],a=u(i)?i:i.get;r||(n[o]=new ir(e,a||I,I,Qr)),o in e||eo(e,o,i)}}(e,t.computed),t.watch&&t.watch!==te&&function(e,t){for(var n in t){var r=t[n];if(o(r))for(var i=0;i1?A(n):n;for(var r=A(arguments,1),o='event handler for "'.concat(e,'"'),i=0,a=n.length;iparseInt(this.max)&&lo(t,n[0],n,this._vnode),this.vnodeToCache=null}}},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var e in this.cache)lo(this.cache,e,this.keys)},mounted:function(){var e=this;this.cacheVNode(),this.$watch("include",(function(t){uo(e,(function(e){return co(t,e)}))})),this.$watch("exclude",(function(t){uo(e,(function(e){return!co(t,e)}))}))},updated:function(){this.cacheVNode()},render:function(){var e=this.$slots.default,t=hn(e),n=t&&t.componentOptions;if(n){var r=so(n),o=this.include,i=this.exclude;if(o&&(!r||!co(o,r))||i&&r&&co(i,r))return t;var a=this.cache,s=this.keys,c=null==t.key?n.Ctor.cid+(n.tag?"::".concat(n.tag):""):t.key;a[c]?(t.componentInstance=a[c].componentInstance,_(s,c),s.push(c)):(this.vnodeToCache=t,this.keyToCache=c),t.data.keepAlive=!0}return t||e&&e[0]}}};!function(e){var t={get:function(){return H}};Object.defineProperty(e,"config",t),e.util={warn:Lr,extend:$,mergeOptions:Wr,defineReactive:Ie},e.set=Re,e.delete=je,e.nextTick=jn,e.observable=function(e){return Ne(e),e},e.options=Object.create(null),U.forEach((function(t){e.options[t+"s"]=Object.create(null)})),e.options._base=e,$(e.options.components,po),function(e){e.use=function(e){var t=this._installedPlugins||(this._installedPlugins=[]);if(t.indexOf(e)>-1)return this;var n=A(arguments,1);return n.unshift(this),u(e.install)?e.install.apply(e,n):u(e)&&e.apply(null,n),t.push(e),this}}(e),function(e){e.mixin=function(e){return this.options=Wr(this.options,e),this}}(e),function(e){e.cid=0;var t=1;e.extend=function(e){e=e||{};var n=this,r=n.cid,o=e._Ctor||(e._Ctor={});if(o[r])return o[r];var i=Ir(e)||Ir(n.options),a=function(e){this._init(e)};return(a.prototype=Object.create(n.prototype)).constructor=a,a.cid=t++,a.options=Wr(n.options,e),a.super=n,a.options.props&&function(e){var t=e.options.props;for(var n in t)Jr(e.prototype,"_props",n)}(a),a.options.computed&&function(e){var t=e.options.computed;for(var n in t)eo(e.prototype,n,t[n])}(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,U.forEach((function(e){a[e]=n[e]})),i&&(a.options.components[i]=a),a.superOptions=n.options,a.extendOptions=e,a.sealedOptions=$({},a.options),o[r]=a,a}}(e),function(e){U.forEach((function(t){e[t]=function(e,n){return n?("component"===t&&p(n)&&(n.name=n.name||e,n=this.options._base.extend(n)),"directive"===t&&u(n)&&(n={bind:n,update:n}),this.options[t+"s"][e]=n,n):this.options[t+"s"][e]}}))}(e)}(ao),Object.defineProperty(ao.prototype,"$isServer",{get:oe}),Object.defineProperty(ao.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(ao,"FunctionalRenderContext",{value:Ar}),ao.version=Jn;var vo=g("style,class"),ho=g("input,textarea,option,select,progress"),mo=g("contenteditable,draggable,spellcheck"),go=g("events,caret,typing,plaintext-only"),yo=function(e,t){return Oo(t)||"false"===t?"false":"contenteditable"===e&&go(t)?t:"true"},_o=g("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,truespeed,typemustmatch,visible"),bo="http://www.w3.org/1999/xlink",xo=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},wo=function(e){return xo(e)?e.slice(6,e.length):""},Oo=function(e){return null==e||!1===e};function So(e,t){return{staticClass:Co(e.staticClass,t.staticClass),class:a(e.class)?[e.class,t.class]:t.class}}function Co(e,t){return e?t?e+" "+t:e:t||""}function To(e){return Array.isArray(e)?function(e){for(var t,n="",r=0,o=e.length;r-1?Xo(e,t,n):_o(t)?Oo(n)?e.removeAttribute(t):(n="allowfullscreen"===t&&"EMBED"===e.tagName?"true":t,e.setAttribute(t,n)):mo(t)?e.setAttribute(t,yo(t,n)):xo(t)?Oo(n)?e.removeAttributeNS(bo,wo(t)):e.setAttributeNS(bo,t,n):Xo(e,t,n)}function Xo(e,t,n){if(Oo(n))e.removeAttribute(t);else{if(K&&!X&&"TEXTAREA"===e.tagName&&"placeholder"===t&&""!==n&&!e.__ieph){var r=function(t){t.stopImmediatePropagation(),e.removeEventListener("input",r)};e.addEventListener("input",r),e.__ieph=!0}e.setAttribute(t,n)}}var Zo={create:qo,update:qo};function Jo(e,t){var n=t.elm,r=t.data,o=e.data;if(!(i(r.staticClass)&&i(r.class)&&(i(o)||i(o.staticClass)&&i(o.class)))){var s=function(e){for(var t=e.data,n=e,r=e;a(r.componentInstance);)(r=r.componentInstance._vnode)&&r.data&&(t=So(r.data,t));for(;a(n=n.parent);)n&&n.data&&(t=So(t,n.data));return o=t.staticClass,i=t.class,a(o)||a(i)?Co(o,To(i)):"";var o,i}(t),c=n._transitionClasses;a(c)&&(s=Co(s,To(c))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var Qo,ei={create:Jo,update:Jo},ti="__r",ni="__c";function ri(e,t,n){var r=Qo;return function o(){null!==t.apply(null,arguments)&&ai(e,o,n,r)}}var oi=Tn&&!(ee&&Number(ee[1])<=53);function ii(e,t,n,r){if(oi){var o=wr,i=t;t=i._wrapper=function(e){if(e.target===e.currentTarget||e.timeStamp>=o||e.timeStamp<=0||e.target.ownerDocument!==document)return i.apply(this,arguments)}}Qo.addEventListener(e,t,ne?{capture:n,passive:r}:n)}function ai(e,t,n,r){(r||Qo).removeEventListener(e,t._wrapper||t,n)}function si(e,t){if(!i(e.data.on)||!i(t.data.on)){var n=t.data.on||{},r=e.data.on||{};Qo=t.elm||e.elm,function(e){if(a(e[ti])){var t=K?"change":"input";e[t]=[].concat(e[ti],e[t]||[]),delete e[ti]}a(e[ni])&&(e.change=[].concat(e[ni],e.change||[]),delete e[ni])}(n),$t(n,r,ii,ai,ri,t.context),Qo=void 0}}var ci,ui={create:si,update:si,destroy:function(e){return si(e,Lo)}};function li(e,t){if(!i(e.data.domProps)||!i(t.data.domProps)){var n,r,o=t.elm,c=e.data.domProps||{},u=t.data.domProps||{};for(n in(a(u.__ob__)||s(u._v_attr_proxy))&&(u=t.data.domProps=$({},u)),c)n in u||(o[n]="");for(n in u){if(r=u[n],"textContent"===n||"innerHTML"===n){if(t.children&&(t.children.length=0),r===c[n])continue;1===o.childNodes.length&&o.removeChild(o.childNodes[0])}if("value"===n&&"PROGRESS"!==o.tagName){o._value=r;var l=i(r)?"":String(r);fi(o,l)&&(o.value=l)}else if("innerHTML"===n&&Ao(o.tagName)&&i(o.innerHTML)){(ci=ci||document.createElement("div")).innerHTML="".concat(r,"");for(var f=ci.firstChild;o.firstChild;)o.removeChild(o.firstChild);for(;f.firstChild;)o.appendChild(f.firstChild)}else if(r!==c[n])try{o[n]=r}catch(e){}}}}function fi(e,t){return!e.composing&&("OPTION"===e.tagName||function(e,t){var n=!0;try{n=document.activeElement!==e}catch(e){}return n&&e.value!==t}(e,t)||function(e,t){var n=e.value,r=e._vModifiers;if(a(r)){if(r.number)return m(n)!==m(t);if(r.trim)return n.trim()!==t.trim()}return n!==t}(e,t))}var pi={create:li,update:li},di=w((function(e){var t={},n=/:(.+)/;return e.split(/;(?![^(]*\))/g).forEach((function(e){if(e){var r=e.split(n);r.length>1&&(t[r[0].trim()]=r[1].trim())}})),t}));function vi(e){var t=hi(e.style);return e.staticStyle?$(e.staticStyle,t):t}function hi(e){return Array.isArray(e)?N(e):"string"==typeof e?di(e):e}var mi,gi=/^--/,yi=/\s*!important$/,_i=function(e,t,n){if(gi.test(t))e.style.setProperty(t,n);else if(yi.test(n))e.style.setProperty(E(t),n.replace(yi,""),"important");else{var r=xi(t);if(Array.isArray(n))for(var o=0,i=n.length;o-1?t.split(Si).forEach((function(t){return e.classList.add(t)})):e.classList.add(t);else{var n=" ".concat(e.getAttribute("class")||""," ");n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function Ti(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(Si).forEach((function(t){return e.classList.remove(t)})):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{for(var n=" ".concat(e.getAttribute("class")||""," "),r=" "+t+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?e.setAttribute("class",n):e.removeAttribute("class")}}function Ei(e){if(e){if("object"==typeof e){var t={};return!1!==e.css&&$(t,ki(e.name||"v")),$(t,e),t}return"string"==typeof e?ki(e):void 0}}var ki=w((function(e){return{enterClass:"".concat(e,"-enter"),enterToClass:"".concat(e,"-enter-to"),enterActiveClass:"".concat(e,"-enter-active"),leaveClass:"".concat(e,"-leave"),leaveToClass:"".concat(e,"-leave-to"),leaveActiveClass:"".concat(e,"-leave-active")}})),Ai=Y&&!X,$i="transition",Ni="animation",Ii="transition",Ri="transitionend",ji="animation",Di="animationend";Ai&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(Ii="WebkitTransition",Ri="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(ji="WebkitAnimation",Di="webkitAnimationEnd"));var Pi=Y?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(e){return e()};function Li(e){Pi((function(){Pi(e)}))}function Mi(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),Ci(e,t))}function Fi(e,t){e._transitionClasses&&_(e._transitionClasses,t),Ti(e,t)}function Ui(e,t,n){var r=Hi(e,t),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var s=o===$i?Ri:Di,c=0,u=function(){e.removeEventListener(s,l),n()},l=function(t){t.target===e&&++c>=a&&u()};setTimeout((function(){c0&&(n=$i,l=a,f=i.length):t===Ni?u>0&&(n=Ni,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?$i:Ni:null)?n===$i?i.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===$i&&zi.test(r[Ii+"Property"])}}function Bi(e,t){for(;e.length1}function Ki(e,t){!0!==t.data.show&&Vi(t)}var Xi=function(e){var t,n,r={},u=e.modules,l=e.nodeOps;for(t=0;tv?b(e,i(n[g+1])?null:n[g+1].elm,n,d,g,r):d>g&&w(t,f,v)}(f,h,g,n,u):a(g)?(a(e.text)&&l.setTextContent(f,""),b(f,null,g,0,g.length-1,n)):a(h)?w(h,0,h.length-1):a(e.text)&&l.setTextContent(f,""):e.text!==t.text&&l.setTextContent(f,t.text),a(v)&&a(d=v.hook)&&a(d=d.postpatch)&&d(e,t)}}}function T(e,t,n){if(s(n)&&a(e.parent))e.parent.data.pendingInsert=t;else for(var r=0;r-1,a.selected!==i&&(a.selected=i);else if(D(ta(a),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));o||(e.selectedIndex=-1)}}function ea(e,t){return t.every((function(t){return!D(t,e)}))}function ta(e){return"_value"in e?e._value:e.value}function na(e){e.target.composing=!0}function ra(e){e.target.composing&&(e.target.composing=!1,oa(e.target,"input"))}function oa(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function ia(e){return!e.componentInstance||e.data&&e.data.transition?e:ia(e.componentInstance._vnode)}var aa={model:Zi,show:{bind:function(e,t,n){var r=t.value,o=(n=ia(n)).data&&n.data.transition,i=e.__vOriginalDisplay="none"===e.style.display?"":e.style.display;r&&o?(n.data.show=!0,Vi(n,(function(){e.style.display=i}))):e.style.display=r?i:"none"},update:function(e,t,n){var r=t.value;!r!=!t.oldValue&&((n=ia(n)).data&&n.data.transition?(n.data.show=!0,r?Vi(n,(function(){e.style.display=e.__vOriginalDisplay})):Gi(n,(function(){e.style.display="none"}))):e.style.display=r?e.__vOriginalDisplay:"none")},unbind:function(e,t,n,r,o){o||(e.style.display=e.__vOriginalDisplay)}}},sa={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function ca(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?ca(hn(t.children)):e}function ua(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var o=n._parentListeners;for(var r in o)t[S(r)]=o[r];return t}function la(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}var fa=function(e){return e.tag||Qt(e)},pa=function(e){return"show"===e.name},da={name:"transition",props:sa,abstract:!0,render:function(e){var t=this,n=this.$slots.default;if(n&&(n=n.filter(fa)).length){var r=this.mode,o=n[0];if(function(e){for(;e=e.parent;)if(e.data.transition)return!0}(this.$vnode))return o;var i=ca(o);if(!i)return o;if(this._leaving)return la(e,o);var a="__transition-".concat(this._uid,"-");i.key=null==i.key?i.isComment?a+"comment":a+i.tag:c(i.key)?0===String(i.key).indexOf(a)?i.key:a+i.key:i.key;var s=(i.data||(i.data={})).transition=ua(this),u=this._vnode,l=ca(u);if(i.data.directives&&i.data.directives.some(pa)&&(i.data.show=!0),l&&l.data&&!function(e,t){return t.key===e.key&&t.tag===e.tag}(i,l)&&!Qt(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=$({},s);if("out-in"===r)return this._leaving=!0,Nt(f,"afterLeave",(function(){t._leaving=!1,t.$forceUpdate()})),la(e,o);if("in-out"===r){if(Qt(i))return u;var p,d=function(){p()};Nt(s,"afterEnter",d),Nt(s,"enterCancelled",d),Nt(f,"delayLeave",(function(e){p=e}))}}return o}}},va=$({tag:String,moveClass:String},sa);delete va.mode;var ha={props:va,beforeMount:function(){var e=this,t=this._update;this._update=function(n,r){var o=fr(e);e.__patch__(e._vnode,e.kept,!1,!0),e._vnode=e.kept,o(),t.call(e,n,r)}},render:function(e){for(var t=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=ua(this),s=0;s-1?No[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:No[e]=/HTMLUnknownElement/.test(t.toString())},$(ao.options.directives,aa),$(ao.options.components,_a),ao.prototype.__patch__=Y?Xi:I,ao.prototype.$mount=function(e,t){return function(e,t,n){var r;e.$el=t,e.$options.render||(e.$options.render=de),hr(e,"beforeMount"),r=function(){e._update(e._render(),n)},new ir(e,r,I,{before:function(){e._isMounted&&!e._isDestroyed&&hr(e,"beforeUpdate")}},!0),n=!1;var o=e._preWatchers;if(o)for(var i=0;i{"use strict";n.d(t,{Iu:()=>a,uN:()=>s}),n(79753);var r=n(27856),o=n(95573);function i(e){var t,n,r,o;return{translations:null!==(n=null===(t=window._oc_l10n_registry_translations)||void 0===t?void 0:t[e])&&void 0!==n?n:{},pluralFunction:null!==(o=null===(r=window._oc_l10n_registry_plural_functions)||void 0===r?void 0:r[e])&&void 0!==o?o:e=>e}}function a(e,t,n,a,s){const c=Object.assign({},{escape:!0,sanitize:!0},s||{}),u=e=>e,l=c.sanitize?r.sanitize:u,f=c.escape?o:u;let p=i(e).translations[t]||t;return p=Array.isArray(p)?p[0]:p,l("object"==typeof n||void 0!==a?((e,t,n)=>e.replace(/%n/g,""+n).replace(/{([^{}]*)}/g,((e,n)=>{if(void 0===t||!(n in t))return l(e);const r=t[n];return l("string"==typeof r||"number"==typeof r?f(r):e)})))(p,n,a):p)}function s(e,t,n,r,o,s){const c="_"+t+"_::_"+n+"_",u=i(e),l=u.translations[c];if(void 0!==l){const t=l;if(Array.isArray(t))return a(e,t[u.pluralFunction(r)],o,r,s)}return a(e,1===r?t:n,o,r,s)}}},r={};function o(e){var t=r[e];if(void 0!==t)return t.exports;var i=r[e]={id:e,loaded:!1,exports:{}};return n[e].call(i.exports,i,i.exports,o),i.loaded=!0,i.exports}o.m=n,o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.f={},o.e=e=>Promise.all(Object.keys(o.f).reduce(((t,n)=>(o.f[n](e,t),t)),[])),o.u=e=>"activity-"+e+".js?v="+{528:"9bc06c835f3b1fe584fd",629:"25e65057636fcf4d185f"}[e],o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="activity:",o.l=(n,r,i,a)=>{if(e[n])e[n].push(r);else{var s,c;if(void 0!==i)for(var u=document.getElementsByTagName("script"),l=0;l{s.onerror=s.onload=null,clearTimeout(d);var o=e[n];if(delete e[n],s.parentNode&&s.parentNode.removeChild(s),o&&o.forEach((e=>e(r))),t)return t(r)},d=setTimeout(p.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=p.bind(null,s.onerror),s.onload=p.bind(null,s.onload),c&&document.head.appendChild(s)}},o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),o.p="/apps/activity/js/",(()=>{var e={541:0};o.f.j=(t,n)=>{var r=o.o(e,t)?e[t]:void 0;if(0!==r)if(r)n.push(r[2]);else{var i=new Promise(((n,o)=>r=e[t]=[n,o]));n.push(r[2]=i);var a=o.p+o.u(t),s=new Error;o.l(a,(n=>{if(o.o(e,t)&&(0!==(r=e[t])&&(e[t]=void 0),r)){var i=n&&("load"===n.type?"missing":n.type),a=n&&n.target&&n.target.src;s.message="Loading chunk "+t+" failed.\n("+i+": "+a+")",s.name="ChunkLoadError",s.type=i,s.request=a,r[1](s)}}),"chunk-"+t,t)}};var t=(t,n)=>{var r,i,[a,s,c]=n,u=0;if(a.some((t=>0!==e[t]))){for(r in s)o.o(s,r)&&(o.m[r]=s[r]);c&&c(o)}for(t&&t(n);u{"use strict";var e=o(20144),t=o(31352);e.default.prototype.t=t.Iu,e.default.prototype.n=t.uN,o.nc=btoa(OC.requestToken),o.p=OC.linkTo("activity","js/");let n=null,r=null;const i=new OCA.Files.Sidebar.Tab({id:"activity",name:(0,t.Iu)("activity","Activity"),iconSvg:'',async mount(t,i,a){if(null===n){var s;const{default:t}=await Promise.all([o.e(528),o.e(629)]).then(o.bind(o,26629));n=null!==(s=n)&&void 0!==s?s:e.default.extend(t)}r&&r.$destroy(),r=new n({parent:a}),r.update(i),r.$mount(t)},update(e){r.update(e)},destroy(){r.$destroy(),r=null}});window.addEventListener("DOMContentLoaded",(async function(){if(OCA.Files&&OCA.Files.Sidebar){var t;OCA.Files.Sidebar.registerTab(i);const{default:r}=await Promise.all([o.e(528),o.e(629)]).then(o.bind(o,26629));n=null!==(t=n)&&void 0!==t?t:e.default.extend(r)}}))})()})(); +//# sourceMappingURL=activity-sidebar.js.map?v=b001cd6fdd6411ae4edd \ No newline at end of file diff --git a/js/activity-sidebar.js.map b/js/activity-sidebar.js.map index 2222e12f6..2cbee0264 100644 --- a/js/activity-sidebar.js.map +++ b/js/activity-sidebar.js.map @@ -1 +1 @@ -{"version":3,"file":"activity-sidebar.js?v=71218f2e163a6e57f8b0","mappings":"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","sources":["webpack:///activity/webpack/runtime/load script","webpack:///activity/node_modules/@nextcloud/router/dist/index.js","webpack:///activity/node_modules/core-js/internals/a-callable.js","webpack:///activity/node_modules/core-js/internals/advance-string-index.js","webpack:///activity/node_modules/core-js/internals/an-object.js","webpack:///activity/node_modules/core-js/internals/array-includes.js","webpack:///activity/node_modules/core-js/internals/array-method-is-strict.js","webpack:///activity/node_modules/core-js/internals/classof-raw.js","webpack:///activity/node_modules/core-js/internals/classof.js","webpack:///activity/node_modules/core-js/internals/copy-constructor-properties.js","webpack:///activity/node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///activity/node_modules/core-js/internals/create-property-descriptor.js","webpack:///activity/node_modules/core-js/internals/define-built-in.js","webpack:///activity/node_modules/core-js/internals/define-global-property.js","webpack:///activity/node_modules/core-js/internals/descriptors.js","webpack:///activity/node_modules/core-js/internals/document-all.js","webpack:///activity/node_modules/core-js/internals/document-create-element.js","webpack:///activity/node_modules/core-js/internals/engine-user-agent.js","webpack:///activity/node_modules/core-js/internals/engine-v8-version.js","webpack:///activity/node_modules/core-js/internals/enum-bug-keys.js","webpack:///activity/node_modules/core-js/internals/export.js","webpack:///activity/node_modules/core-js/internals/fails.js","webpack:///activity/node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","webpack:///activity/node_modules/core-js/internals/function-apply.js","webpack:///activity/node_modules/core-js/internals/function-bind-native.js","webpack:///activity/node_modules/core-js/internals/function-call.js","webpack:///activity/node_modules/core-js/internals/function-name.js","webpack:///activity/node_modules/core-js/internals/function-uncurry-this-raw.js","webpack:///activity/node_modules/core-js/internals/function-uncurry-this.js","webpack:///activity/node_modules/core-js/internals/get-built-in.js","webpack:///activity/node_modules/core-js/internals/get-method.js","webpack:///activity/node_modules/core-js/internals/get-substitution.js","webpack:///activity/node_modules/core-js/internals/global.js","webpack:///activity/node_modules/core-js/internals/has-own-property.js","webpack:///activity/node_modules/core-js/internals/hidden-keys.js","webpack:///activity/node_modules/core-js/internals/html.js","webpack:///activity/node_modules/core-js/internals/ie8-dom-define.js","webpack:///activity/node_modules/core-js/internals/indexed-object.js","webpack:///activity/node_modules/core-js/internals/inspect-source.js","webpack:///activity/node_modules/core-js/internals/internal-state.js","webpack:///activity/node_modules/core-js/internals/is-callable.js","webpack:///activity/node_modules/core-js/internals/is-forced.js","webpack:///activity/node_modules/core-js/internals/is-null-or-undefined.js","webpack:///activity/node_modules/core-js/internals/is-object.js","webpack:///activity/node_modules/core-js/internals/is-pure.js","webpack:///activity/node_modules/core-js/internals/is-symbol.js","webpack:///activity/node_modules/core-js/internals/length-of-array-like.js","webpack:///activity/node_modules/core-js/internals/make-built-in.js","webpack:///activity/node_modules/core-js/internals/math-trunc.js","webpack:///activity/node_modules/core-js/internals/object-assign.js","webpack:///activity/node_modules/core-js/internals/object-create.js","webpack:///activity/node_modules/core-js/internals/object-define-properties.js","webpack:///activity/node_modules/core-js/internals/object-define-property.js","webpack:///activity/node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///activity/node_modules/core-js/internals/object-get-own-property-names.js","webpack:///activity/node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///activity/node_modules/core-js/internals/object-is-prototype-of.js","webpack:///activity/node_modules/core-js/internals/object-keys-internal.js","webpack:///activity/node_modules/core-js/internals/object-keys.js","webpack:///activity/node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///activity/node_modules/core-js/internals/object-to-string.js","webpack:///activity/node_modules/core-js/internals/ordinary-to-primitive.js","webpack:///activity/node_modules/core-js/internals/own-keys.js","webpack:///activity/node_modules/core-js/internals/regexp-exec-abstract.js","webpack:///activity/node_modules/core-js/internals/regexp-exec.js","webpack:///activity/node_modules/core-js/internals/regexp-flags.js","webpack:///activity/node_modules/core-js/internals/regexp-get-flags.js","webpack:///activity/node_modules/core-js/internals/regexp-sticky-helpers.js","webpack:///activity/node_modules/core-js/internals/regexp-unsupported-dot-all.js","webpack:///activity/node_modules/core-js/internals/regexp-unsupported-ncg.js","webpack:///activity/node_modules/core-js/internals/require-object-coercible.js","webpack:///activity/node_modules/core-js/internals/shared-key.js","webpack:///activity/node_modules/core-js/internals/shared-store.js","webpack:///activity/node_modules/core-js/internals/shared.js","webpack:///activity/node_modules/core-js/internals/string-multibyte.js","webpack:///activity/node_modules/core-js/internals/symbol-constructor-detection.js","webpack:///activity/node_modules/core-js/internals/to-absolute-index.js","webpack:///activity/node_modules/core-js/internals/to-indexed-object.js","webpack:///activity/node_modules/core-js/internals/to-integer-or-infinity.js","webpack:///activity/node_modules/core-js/internals/to-length.js","webpack:///activity/node_modules/core-js/internals/to-object.js","webpack:///activity/node_modules/core-js/internals/to-primitive.js","webpack:///activity/node_modules/core-js/internals/to-property-key.js","webpack:///activity/node_modules/core-js/internals/to-string-tag-support.js","webpack:///activity/node_modules/core-js/internals/to-string.js","webpack:///activity/node_modules/core-js/internals/try-to-string.js","webpack:///activity/node_modules/core-js/internals/uid.js","webpack:///activity/node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///activity/node_modules/core-js/internals/v8-prototype-define-bug.js","webpack:///activity/node_modules/core-js/internals/weak-map-basic-detection.js","webpack:///activity/node_modules/core-js/internals/well-known-symbol.js","webpack:///activity/node_modules/core-js/modules/es.array.index-of.js","webpack:///activity/node_modules/core-js/modules/es.object.assign.js","webpack:///activity/node_modules/core-js/modules/es.object.define-property.js","webpack:///activity/node_modules/core-js/modules/es.object.to-string.js","webpack:///activity/node_modules/core-js/modules/es.regexp.exec.js","webpack:///activity/node_modules/core-js/modules/es.regexp.to-string.js","webpack:///activity/node_modules/core-js/modules/es.string.replace.js","webpack:///activity/node_modules/dompurify/dist/purify.js","webpack:///activity/node_modules/escape-html/index.js","webpack:///activity/node_modules/vue/dist/vue.runtime.esm.js","webpack:///activity/node_modules/@nextcloud/l10n/dist/index.mjs","webpack:///activity/webpack/bootstrap","webpack:///activity/webpack/runtime/compat get default export","webpack:///activity/webpack/runtime/define property getters","webpack:///activity/webpack/runtime/ensure chunk","webpack:///activity/webpack/runtime/get javascript chunk filename","webpack:///activity/webpack/runtime/global","webpack:///activity/webpack/runtime/hasOwnProperty shorthand","webpack:///activity/webpack/runtime/make namespace object","webpack:///activity/webpack/runtime/node module decorator","webpack:///activity/webpack/runtime/publicPath","webpack:///activity/webpack/runtime/jsonp chunk loading","webpack:///activity/webpack/runtime/nonce","webpack:///activity/src/sidebar.js"],"sourcesContent":["var inProgress = {};\nvar dataWebpackPrefix = \"activity:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","\"use strict\";\n\nrequire(\"core-js/modules/es.object.define-property.js\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.linkTo = exports.imagePath = exports.getRootUrl = exports.generateUrl = exports.generateRemoteUrl = exports.generateOcsUrl = exports.generateFilePath = void 0;\nrequire(\"core-js/modules/es.object.assign.js\");\nrequire(\"core-js/modules/es.regexp.exec.js\");\nrequire(\"core-js/modules/es.string.replace.js\");\nrequire(\"core-js/modules/es.object.to-string.js\");\nrequire(\"core-js/modules/es.regexp.to-string.js\");\nrequire(\"core-js/modules/es.array.index-of.js\");\n/**\n * Get an url with webroot to a file in an app\n *\n * @param {string} app the id of the app the file belongs to\n * @param {string} file the file path relative to the app folder\n * @return {string} URL with webroot to a file\n */\nvar linkTo = function linkTo(app, file) {\n return generateFilePath(app, '', file);\n};\n\n/**\n * Creates a relative url for remote use\n *\n * @param {string} service id\n * @return {string} the url\n */\nexports.linkTo = linkTo;\nvar linkToRemoteBase = function linkToRemoteBase(service) {\n return getRootUrl() + '/remote.php/' + service;\n};\n\n/**\n * @brief Creates an absolute url for remote use\n * @param {string} service id\n * @return {string} the url\n */\nvar generateRemoteUrl = function generateRemoteUrl(service) {\n return window.location.protocol + '//' + window.location.host + linkToRemoteBase(service);\n};\n\n/**\n * Get the base path for the given OCS API service\n *\n * @param {string} url OCS API service url\n * @param {object} params parameters to be replaced into the service url\n * @param {UrlOptions} options options for the parameter replacement\n * @param {boolean} options.escape Set to false if parameters should not be URL encoded (default true)\n * @param {Number} options.ocsVersion OCS version to use (defaults to 2)\n * @return {string} Absolute path for the OCS URL\n */\nexports.generateRemoteUrl = generateRemoteUrl;\nvar generateOcsUrl = function generateOcsUrl(url, params, options) {\n var allOptions = Object.assign({\n ocsVersion: 2\n }, options || {});\n var version = allOptions.ocsVersion === 1 ? 1 : 2;\n return window.location.protocol + '//' + window.location.host + getRootUrl() + '/ocs/v' + version + '.php' + _generateUrlPath(url, params, options);\n};\nexports.generateOcsUrl = generateOcsUrl;\n/**\n * Generate a url path, which can contain parameters\n *\n * Parameters will be URL encoded automatically\n *\n * @param {string} url address (can contain placeholders e.g. /call/{token} would replace {token} with the value of params.token\n * @param {object} params parameters to be replaced into the address\n * @param {UrlOptions} options options for the parameter replacement\n * @return {string} Path part for the given URL\n */\nvar _generateUrlPath = function _generateUrlPath(url, params, options) {\n var allOptions = Object.assign({\n escape: true\n }, options || {});\n var _build = function _build(text, vars) {\n vars = vars || {};\n return text.replace(/{([^{}]*)}/g, function (a, b) {\n var r = vars[b];\n if (allOptions.escape) {\n return typeof r === 'string' || typeof r === 'number' ? encodeURIComponent(r.toString()) : encodeURIComponent(a);\n } else {\n return typeof r === 'string' || typeof r === 'number' ? r.toString() : a;\n }\n });\n };\n if (url.charAt(0) !== '/') {\n url = '/' + url;\n }\n return _build(url, params || {});\n};\n\n/**\n * Generate the url with webroot for the given relative url, which can contain parameters\n *\n * Parameters will be URL encoded automatically\n *\n * @param {string} url address (can contain placeholders e.g. /call/{token} would replace {token} with the value of params.token\n * @param {object} params parameters to be replaced into the url\n * @param {UrlOptions} options options for the parameter replacement\n * @param {boolean} options.noRewrite True if you want to force index.php being added\n * @param {boolean} options.escape Set to false if parameters should not be URL encoded (default true)\n * @return {string} URL with webroot for the given relative URL\n */\nvar generateUrl = function generateUrl(url, params, options) {\n var _window, _window$OC, _window$OC$config;\n var allOptions = Object.assign({\n noRewrite: false\n }, options || {});\n if (((_window = window) === null || _window === void 0 ? void 0 : (_window$OC = _window.OC) === null || _window$OC === void 0 ? void 0 : (_window$OC$config = _window$OC.config) === null || _window$OC$config === void 0 ? void 0 : _window$OC$config.modRewriteWorking) === true && !allOptions.noRewrite) {\n return getRootUrl() + _generateUrlPath(url, params, options);\n }\n return getRootUrl() + '/index.php' + _generateUrlPath(url, params, options);\n};\n\n/**\n * Get the path with webroot to an image file\n * if no extension is given for the image, it will automatically decide\n * between .png and .svg based on what the browser supports\n *\n * @param {string} app the app id to which the image belongs\n * @param {string} file the name of the image file\n * @return {string}\n */\nexports.generateUrl = generateUrl;\nvar imagePath = function imagePath(app, file) {\n if (file.indexOf('.') === -1) {\n //if no extension is given, use svg\n return generateFilePath(app, 'img', file + '.svg');\n }\n return generateFilePath(app, 'img', file);\n};\n\n/**\n * Get the url with webroot for a file in an app\n *\n * @param {string} app the id of the app\n * @param {string} type the type of the file to link to (e.g. css,img,ajax.template)\n * @param {string} file the filename\n * @return {string} URL with webroot for a file in an app\n */\nexports.imagePath = imagePath;\nvar generateFilePath = function generateFilePath(app, type, file) {\n var _window2, _window2$OC, _window2$OC$coreApps;\n var isCore = ((_window2 = window) === null || _window2 === void 0 ? void 0 : (_window2$OC = _window2.OC) === null || _window2$OC === void 0 ? void 0 : (_window2$OC$coreApps = _window2$OC.coreApps) === null || _window2$OC$coreApps === void 0 ? void 0 : _window2$OC$coreApps.indexOf(app)) !== -1;\n var link = getRootUrl();\n if (file.substring(file.length - 3) === 'php' && !isCore) {\n link += '/index.php/apps/' + app;\n if (file !== 'index.php') {\n link += '/';\n if (type) {\n link += encodeURI(type + '/');\n }\n link += file;\n }\n } else if (file.substring(file.length - 3) !== 'php' && !isCore) {\n var _window3, _window3$OC, _window3$OC$appswebro;\n link = (_window3 = window) === null || _window3 === void 0 ? void 0 : (_window3$OC = _window3.OC) === null || _window3$OC === void 0 ? void 0 : (_window3$OC$appswebro = _window3$OC.appswebroots) === null || _window3$OC$appswebro === void 0 ? void 0 : _window3$OC$appswebro[app];\n if (type) {\n link += '/' + type + '/';\n }\n if (link.substring(link.length - 1) !== '/') {\n link += '/';\n }\n link += file;\n } else {\n if ((app === 'settings' || app === 'core' || app === 'search') && type === 'ajax') {\n link += '/index.php/';\n } else {\n link += '/';\n }\n if (!isCore) {\n link += 'apps/';\n }\n if (app !== '') {\n app += '/';\n link += app;\n }\n if (type) {\n link += type + '/';\n }\n link += file;\n }\n return link;\n};\n\n/**\n * Return the web root path where this Nextcloud instance\n * is accessible, with a leading slash.\n * For example \"/nextcloud\".\n *\n * @return {string} web root path\n */\nexports.generateFilePath = generateFilePath;\nvar getRootUrl = function getRootUrl() {\n var _window4, _window4$OC;\n return ((_window4 = window) === null || _window4 === void 0 ? void 0 : (_window4$OC = _window4.OC) === null || _window4$OC === void 0 ? void 0 : _window4$OC.webroot) || '';\n};\nexports.getRootUrl = getRootUrl;\n//# sourceMappingURL=index.js.map","var isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.es/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","var isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw $TypeError($String(argument) + ' is not an object');\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call -- required for testing\n method.call(null, argument || function () { return 1; }, 1);\n });\n};\n","var uncurryThisRaw = require('../internals/function-uncurry-this-raw');\n\nvar toString = uncurryThisRaw({}.toString);\nvar stringSlice = uncurryThisRaw(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) == 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","var hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","var global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","var fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","var documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\nvar RegExpPrototype = RegExp.prototype;\n\nmodule.exports = function (KEY, exec, FORCED, SHAM) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () { execCalled = true; return null; };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n FORCED\n ) {\n var uncurriedNativeRegExpMethod = uncurryThis(/./[SYMBOL]);\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n var uncurriedNativeMethod = uncurryThis(nativeMethod);\n var $exec = regexp.exec;\n if ($exec === regexpExec || $exec === RegExpPrototype.exec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: uncurriedNativeRegExpMethod(regexp, str, arg2) };\n }\n return { done: true, value: uncurriedNativeMethod(str, regexp, arg2) };\n }\n return { done: false };\n });\n\n defineBuiltIn(String.prototype, KEY, methods[0]);\n defineBuiltIn(RegExpPrototype, SYMBOL, methods[1]);\n }\n\n if (SHAM) createNonEnumerableProperty(RegExpPrototype[SYMBOL], 'sham', true);\n};\n","var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = function (fn) {\n return NATIVE_BIND ? uncurryThisWithBind(fn) : function () {\n return call.apply(fn, arguments);\n };\n};\n","var classofRaw = require('../internals/classof-raw');\nvar uncurryThisRaw = require('../internals/function-uncurry-this-raw');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThisRaw(fn);\n};\n","var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","var aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar floor = Math.floor;\nvar charAt = uncurryThis(''.charAt);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d{1,2}|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d{1,2})/g;\n\n// `GetSubstitution` abstract operation\n// https://tc39.es/ecma262/#sec-getsubstitution\nmodule.exports = function (matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return replace(replacement, symbols, function (match, ch) {\n var capture;\n switch (charAt(ch, 0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return stringSlice(str, 0, position);\n case \"'\": return stringSlice(str, tailPos);\n case '<':\n capture = namedCaptures[stringSlice(ch, 1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? charAt(ch, 1) : captures[f - 1] + charAt(ch, 1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n};\n","var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","module.exports = {};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","var NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","var $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","var fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","var isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","module.exports = false;\n","var getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","var toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","var fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (String(name).slice(0, 7) === 'Symbol(') {\n name = '[' + String(name).replace(/^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = TEMPLATE.join(typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol();\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] != 7 || objectKeys($assign({}, B)).join('') != alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","var call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw $TypeError(\"Can't convert object to primitive value\");\n};\n","var getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","var call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof-raw');\nvar regexpExec = require('../internals/regexp-exec');\n\nvar $TypeError = TypeError;\n\n// `RegExpExec` abstract operation\n// https://tc39.es/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (isCallable(exec)) {\n var result = call(exec, R, S);\n if (result !== null) anObject(result);\n return result;\n }\n if (classof(R) === 'RegExp') return call(regexpExec, R, S);\n throw $TypeError('RegExp#exec called on incompatible receiver');\n};\n","'use strict';\n/* eslint-disable regexp/no-empty-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */\n/* eslint-disable regexp/no-useless-quantifier -- testing */\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toString = require('../internals/to-string');\nvar regexpFlags = require('../internals/regexp-flags');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar shared = require('../internals/shared');\nvar create = require('../internals/object-create');\nvar getInternalState = require('../internals/internal-state').get;\nvar UNSUPPORTED_DOT_ALL = require('../internals/regexp-unsupported-dot-all');\nvar UNSUPPORTED_NCG = require('../internals/regexp-unsupported-ncg');\n\nvar nativeReplace = shared('native-string-replace', String.prototype.replace);\nvar nativeExec = RegExp.prototype.exec;\nvar patchedExec = nativeExec;\nvar charAt = uncurryThis(''.charAt);\nvar indexOf = uncurryThis(''.indexOf);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n call(nativeExec, re1, 'a');\n call(nativeExec, re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG;\n\nif (PATCH) {\n patchedExec = function exec(string) {\n var re = this;\n var state = getInternalState(re);\n var str = toString(string);\n var raw = state.raw;\n var result, reCopy, lastIndex, match, i, object, group;\n\n if (raw) {\n raw.lastIndex = re.lastIndex;\n result = call(patchedExec, raw, str);\n re.lastIndex = raw.lastIndex;\n return result;\n }\n\n var groups = state.groups;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = call(regexpFlags, re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = replace(flags, 'y', '');\n if (indexOf(flags, 'g') === -1) {\n flags += 'g';\n }\n\n strCopy = stringSlice(str, re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && charAt(str, re.lastIndex - 1) !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = call(nativeExec, sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = stringSlice(match.input, charsAdded);\n match[0] = stringSlice(match[0], charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn't work for /(.?)?/\n call(nativeReplace, match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n if (match && groups) {\n match.groups = object = create(null);\n for (i = 0; i < groups.length; i++) {\n group = groups[i];\n object[group[0]] = match[group[1]];\n }\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.hasIndices) result += 'd';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.unicodeSets) result += 'v';\n if (that.sticky) result += 'y';\n return result;\n};\n","var call = require('../internals/function-call');\nvar hasOwn = require('../internals/has-own-property');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar regExpFlags = require('../internals/regexp-flags');\n\nvar RegExpPrototype = RegExp.prototype;\n\nmodule.exports = function (R) {\n var flags = R.flags;\n return flags === undefined && !('flags' in RegExpPrototype) && !hasOwn(R, 'flags') && isPrototypeOf(RegExpPrototype, R)\n ? call(regExpFlags, R) : flags;\n};\n","var fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nvar UNSUPPORTED_Y = fails(function () {\n var re = $RegExp('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') != null;\n});\n\n// UC Browser bug\n// https://github.com/zloirock/core-js/issues/1008\nvar MISSED_STICKY = UNSUPPORTED_Y || fails(function () {\n return !$RegExp('a', 'y').sticky;\n});\n\nvar BROKEN_CARET = UNSUPPORTED_Y || fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = $RegExp('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') != null;\n});\n\nmodule.exports = {\n BROKEN_CARET: BROKEN_CARET,\n MISSED_STICKY: MISSED_STICKY,\n UNSUPPORTED_Y: UNSUPPORTED_Y\n};\n","var fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('.', 's') -> /./s and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('.', 's');\n return !(re.dotAll && re.exec('\\n') && re.flags === 's');\n});\n","var fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('(?b)', 'g') -> /(?b)/g and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('(?b)', 'g');\n return re.exec('b').groups.a !== 'b' ||\n 'b'.replace(re, '$c') !== 'bc';\n});\n","var isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","var global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.25.5',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2022 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.25.5/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol();\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n return !String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","var trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","var call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","var toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","var classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","var $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype != 42;\n});\n","var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar symbolFor = Symbol && Symbol['for'];\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == 'string')) {\n var description = 'Symbol.' + name;\n if (NATIVE_SYMBOL && hasOwn(Symbol, name)) {\n WellKnownSymbolsStore[name] = Symbol[name];\n } else if (USE_SYMBOL_AS_UID && symbolFor) {\n WellKnownSymbolsStore[name] = symbolFor(description);\n } else {\n WellKnownSymbolsStore[name] = createWellKnownSymbol(description);\n }\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\n/* eslint-disable es/no-array-prototype-indexof -- required for testing */\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar $indexOf = require('../internals/array-includes').indexOf;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeIndexOf = uncurryThis([].indexOf);\n\nvar NEGATIVE_ZERO = !!nativeIndexOf && 1 / nativeIndexOf([1], 1, -0) < 0;\nvar STRICT_METHOD = arrayMethodIsStrict('indexOf');\n\n// `Array.prototype.indexOf` method\n// https://tc39.es/ecma262/#sec-array.prototype.indexof\n$({ target: 'Array', proto: true, forced: NEGATIVE_ZERO || !STRICT_METHOD }, {\n indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {\n var fromIndex = arguments.length > 1 ? arguments[1] : undefined;\n return NEGATIVE_ZERO\n // convert -0 to +0\n ? nativeIndexOf(this, searchElement, fromIndex) || 0\n : $indexOf(this, searchElement, fromIndex);\n }\n});\n","var $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","var $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar defineProperty = require('../internals/object-define-property').f;\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\n// eslint-disable-next-line es/no-object-defineproperty -- safe\n$({ target: 'Object', stat: true, forced: Object.defineProperty !== defineProperty, sham: !DESCRIPTORS }, {\n defineProperty: defineProperty\n});\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n// `RegExp.prototype.exec` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.exec\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","'use strict';\nvar PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;\nvar defineBuiltIn = require('../internals/define-built-in');\nvar anObject = require('../internals/an-object');\nvar $toString = require('../internals/to-string');\nvar fails = require('../internals/fails');\nvar getRegExpFlags = require('../internals/regexp-get-flags');\n\nvar TO_STRING = 'toString';\nvar RegExpPrototype = RegExp.prototype;\nvar nativeToString = RegExpPrototype[TO_STRING];\n\nvar NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });\n// FF44- RegExp#toString has a wrong name\nvar INCORRECT_NAME = PROPER_FUNCTION_NAME && nativeToString.name != TO_STRING;\n\n// `RegExp.prototype.toString` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.tostring\nif (NOT_GENERIC || INCORRECT_NAME) {\n defineBuiltIn(RegExp.prototype, TO_STRING, function toString() {\n var R = anObject(this);\n var pattern = $toString(R.source);\n var flags = $toString(getRegExpFlags(R));\n return '/' + pattern + '/' + flags;\n }, { unsafe: true });\n}\n","'use strict';\nvar apply = require('../internals/function-apply');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar fails = require('../internals/fails');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar getMethod = require('../internals/get-method');\nvar getSubstitution = require('../internals/get-substitution');\nvar regExpExec = require('../internals/regexp-exec-abstract');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar REPLACE = wellKnownSymbol('replace');\nvar max = Math.max;\nvar min = Math.min;\nvar concat = uncurryThis([].concat);\nvar push = uncurryThis([].push);\nvar stringIndexOf = uncurryThis(''.indexOf);\nvar stringSlice = uncurryThis(''.slice);\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n // eslint-disable-next-line regexp/prefer-escape-replacement-dollar-char -- required for testing\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n // eslint-disable-next-line regexp/no-useless-dollar-replacements -- false positive\n return ''.replace(re, '$') !== '7';\n});\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNative) {\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.es/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = isNullOrUndefined(searchValue) ? undefined : getMethod(searchValue, REPLACE);\n return replacer\n ? call(replacer, searchValue, O, replaceValue)\n : call(nativeReplace, toString(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace\n function (string, replaceValue) {\n var rx = anObject(this);\n var S = toString(string);\n\n if (\n typeof replaceValue == 'string' &&\n stringIndexOf(replaceValue, UNSAFE_SUBSTITUTE) === -1 &&\n stringIndexOf(replaceValue, '$<') === -1\n ) {\n var res = maybeCallNative(nativeReplace, rx, S, replaceValue);\n if (res.done) return res.value;\n }\n\n var functionalReplace = isCallable(replaceValue);\n if (!functionalReplace) replaceValue = toString(replaceValue);\n\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n\n push(results, result);\n if (!global) break;\n\n var matchStr = toString(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = toString(result[0]);\n var position = max(min(toIntegerOrInfinity(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) push(captures, maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = concat([matched], captures, position, S);\n if (namedCaptures !== undefined) push(replacerArgs, namedCaptures);\n var replacement = toString(apply(replaceValue, undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += stringSlice(S, nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + stringSlice(S, nextSourcePosition);\n }\n ];\n}, !REPLACE_SUPPORTS_NAMED_GROUPS || !REPLACE_KEEPS_$0 || REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE);\n","/*! @license DOMPurify 3.0.3 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.0.3/LICENSE */\n\n(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.DOMPurify = factory());\n})(this, (function () { 'use strict';\n\n const {\n entries,\n setPrototypeOf,\n isFrozen,\n getPrototypeOf,\n getOwnPropertyDescriptor\n } = Object;\n let {\n freeze,\n seal,\n create\n } = Object; // eslint-disable-line import/no-mutable-exports\n\n let {\n apply,\n construct\n } = typeof Reflect !== 'undefined' && Reflect;\n\n if (!apply) {\n apply = function apply(fun, thisValue, args) {\n return fun.apply(thisValue, args);\n };\n }\n\n if (!freeze) {\n freeze = function freeze(x) {\n return x;\n };\n }\n\n if (!seal) {\n seal = function seal(x) {\n return x;\n };\n }\n\n if (!construct) {\n construct = function construct(Func, args) {\n return new Func(...args);\n };\n }\n\n const arrayForEach = unapply(Array.prototype.forEach);\n const arrayPop = unapply(Array.prototype.pop);\n const arrayPush = unapply(Array.prototype.push);\n const stringToLowerCase = unapply(String.prototype.toLowerCase);\n const stringToString = unapply(String.prototype.toString);\n const stringMatch = unapply(String.prototype.match);\n const stringReplace = unapply(String.prototype.replace);\n const stringIndexOf = unapply(String.prototype.indexOf);\n const stringTrim = unapply(String.prototype.trim);\n const regExpTest = unapply(RegExp.prototype.test);\n const typeErrorCreate = unconstruct(TypeError);\n function unapply(func) {\n return function (thisArg) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return apply(func, thisArg, args);\n };\n }\n function unconstruct(func) {\n return function () {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return construct(func, args);\n };\n }\n /* Add properties to a lookup table */\n\n function addToSet(set, array, transformCaseFunc) {\n var _transformCaseFunc;\n\n transformCaseFunc = (_transformCaseFunc = transformCaseFunc) !== null && _transformCaseFunc !== void 0 ? _transformCaseFunc : stringToLowerCase;\n\n if (setPrototypeOf) {\n // Make 'in' and truthy checks like Boolean(set.constructor)\n // independent of any properties defined on Object.prototype.\n // Prevent prototype setters from intercepting set as a this value.\n setPrototypeOf(set, null);\n }\n\n let l = array.length;\n\n while (l--) {\n let element = array[l];\n\n if (typeof element === 'string') {\n const lcElement = transformCaseFunc(element);\n\n if (lcElement !== element) {\n // Config presets (e.g. tags.js, attrs.js) are immutable.\n if (!isFrozen(array)) {\n array[l] = lcElement;\n }\n\n element = lcElement;\n }\n }\n\n set[element] = true;\n }\n\n return set;\n }\n /* Shallow clone an object */\n\n function clone(object) {\n const newObject = create(null);\n\n for (const [property, value] of entries(object)) {\n newObject[property] = value;\n }\n\n return newObject;\n }\n /* This method automatically checks if the prop is function\n * or getter and behaves accordingly. */\n\n function lookupGetter(object, prop) {\n while (object !== null) {\n const desc = getOwnPropertyDescriptor(object, prop);\n\n if (desc) {\n if (desc.get) {\n return unapply(desc.get);\n }\n\n if (typeof desc.value === 'function') {\n return unapply(desc.value);\n }\n }\n\n object = getPrototypeOf(object);\n }\n\n function fallbackValue(element) {\n console.warn('fallback value for', element);\n return null;\n }\n\n return fallbackValue;\n }\n\n const html$1 = freeze(['a', 'abbr', 'acronym', 'address', 'area', 'article', 'aside', 'audio', 'b', 'bdi', 'bdo', 'big', 'blink', 'blockquote', 'body', 'br', 'button', 'canvas', 'caption', 'center', 'cite', 'code', 'col', 'colgroup', 'content', 'data', 'datalist', 'dd', 'decorator', 'del', 'details', 'dfn', 'dialog', 'dir', 'div', 'dl', 'dt', 'element', 'em', 'fieldset', 'figcaption', 'figure', 'font', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'header', 'hgroup', 'hr', 'html', 'i', 'img', 'input', 'ins', 'kbd', 'label', 'legend', 'li', 'main', 'map', 'mark', 'marquee', 'menu', 'menuitem', 'meter', 'nav', 'nobr', 'ol', 'optgroup', 'option', 'output', 'p', 'picture', 'pre', 'progress', 'q', 'rp', 'rt', 'ruby', 's', 'samp', 'section', 'select', 'shadow', 'small', 'source', 'spacer', 'span', 'strike', 'strong', 'style', 'sub', 'summary', 'sup', 'table', 'tbody', 'td', 'template', 'textarea', 'tfoot', 'th', 'thead', 'time', 'tr', 'track', 'tt', 'u', 'ul', 'var', 'video', 'wbr']); // SVG\n\n const svg$1 = freeze(['svg', 'a', 'altglyph', 'altglyphdef', 'altglyphitem', 'animatecolor', 'animatemotion', 'animatetransform', 'circle', 'clippath', 'defs', 'desc', 'ellipse', 'filter', 'font', 'g', 'glyph', 'glyphref', 'hkern', 'image', 'line', 'lineargradient', 'marker', 'mask', 'metadata', 'mpath', 'path', 'pattern', 'polygon', 'polyline', 'radialgradient', 'rect', 'stop', 'style', 'switch', 'symbol', 'text', 'textpath', 'title', 'tref', 'tspan', 'view', 'vkern']);\n const svgFilters = freeze(['feBlend', 'feColorMatrix', 'feComponentTransfer', 'feComposite', 'feConvolveMatrix', 'feDiffuseLighting', 'feDisplacementMap', 'feDistantLight', 'feDropShadow', 'feFlood', 'feFuncA', 'feFuncB', 'feFuncG', 'feFuncR', 'feGaussianBlur', 'feImage', 'feMerge', 'feMergeNode', 'feMorphology', 'feOffset', 'fePointLight', 'feSpecularLighting', 'feSpotLight', 'feTile', 'feTurbulence']); // List of SVG elements that are disallowed by default.\n // We still need to know them so that we can do namespace\n // checks properly in case one wants to add them to\n // allow-list.\n\n const svgDisallowed = freeze(['animate', 'color-profile', 'cursor', 'discard', 'font-face', 'font-face-format', 'font-face-name', 'font-face-src', 'font-face-uri', 'foreignobject', 'hatch', 'hatchpath', 'mesh', 'meshgradient', 'meshpatch', 'meshrow', 'missing-glyph', 'script', 'set', 'solidcolor', 'unknown', 'use']);\n const mathMl$1 = freeze(['math', 'menclose', 'merror', 'mfenced', 'mfrac', 'mglyph', 'mi', 'mlabeledtr', 'mmultiscripts', 'mn', 'mo', 'mover', 'mpadded', 'mphantom', 'mroot', 'mrow', 'ms', 'mspace', 'msqrt', 'mstyle', 'msub', 'msup', 'msubsup', 'mtable', 'mtd', 'mtext', 'mtr', 'munder', 'munderover', 'mprescripts']); // Similarly to SVG, we want to know all MathML elements,\n // even those that we disallow by default.\n\n const mathMlDisallowed = freeze(['maction', 'maligngroup', 'malignmark', 'mlongdiv', 'mscarries', 'mscarry', 'msgroup', 'mstack', 'msline', 'msrow', 'semantics', 'annotation', 'annotation-xml', 'mprescripts', 'none']);\n const text = freeze(['#text']);\n\n const html = freeze(['accept', 'action', 'align', 'alt', 'autocapitalize', 'autocomplete', 'autopictureinpicture', 'autoplay', 'background', 'bgcolor', 'border', 'capture', 'cellpadding', 'cellspacing', 'checked', 'cite', 'class', 'clear', 'color', 'cols', 'colspan', 'controls', 'controlslist', 'coords', 'crossorigin', 'datetime', 'decoding', 'default', 'dir', 'disabled', 'disablepictureinpicture', 'disableremoteplayback', 'download', 'draggable', 'enctype', 'enterkeyhint', 'face', 'for', 'headers', 'height', 'hidden', 'high', 'href', 'hreflang', 'id', 'inputmode', 'integrity', 'ismap', 'kind', 'label', 'lang', 'list', 'loading', 'loop', 'low', 'max', 'maxlength', 'media', 'method', 'min', 'minlength', 'multiple', 'muted', 'name', 'nonce', 'noshade', 'novalidate', 'nowrap', 'open', 'optimum', 'pattern', 'placeholder', 'playsinline', 'poster', 'preload', 'pubdate', 'radiogroup', 'readonly', 'rel', 'required', 'rev', 'reversed', 'role', 'rows', 'rowspan', 'spellcheck', 'scope', 'selected', 'shape', 'size', 'sizes', 'span', 'srclang', 'start', 'src', 'srcset', 'step', 'style', 'summary', 'tabindex', 'title', 'translate', 'type', 'usemap', 'valign', 'value', 'width', 'xmlns', 'slot']);\n const svg = freeze(['accent-height', 'accumulate', 'additive', 'alignment-baseline', 'ascent', 'attributename', 'attributetype', 'azimuth', 'basefrequency', 'baseline-shift', 'begin', 'bias', 'by', 'class', 'clip', 'clippathunits', 'clip-path', 'clip-rule', 'color', 'color-interpolation', 'color-interpolation-filters', 'color-profile', 'color-rendering', 'cx', 'cy', 'd', 'dx', 'dy', 'diffuseconstant', 'direction', 'display', 'divisor', 'dur', 'edgemode', 'elevation', 'end', 'fill', 'fill-opacity', 'fill-rule', 'filter', 'filterunits', 'flood-color', 'flood-opacity', 'font-family', 'font-size', 'font-size-adjust', 'font-stretch', 'font-style', 'font-variant', 'font-weight', 'fx', 'fy', 'g1', 'g2', 'glyph-name', 'glyphref', 'gradientunits', 'gradienttransform', 'height', 'href', 'id', 'image-rendering', 'in', 'in2', 'k', 'k1', 'k2', 'k3', 'k4', 'kerning', 'keypoints', 'keysplines', 'keytimes', 'lang', 'lengthadjust', 'letter-spacing', 'kernelmatrix', 'kernelunitlength', 'lighting-color', 'local', 'marker-end', 'marker-mid', 'marker-start', 'markerheight', 'markerunits', 'markerwidth', 'maskcontentunits', 'maskunits', 'max', 'mask', 'media', 'method', 'mode', 'min', 'name', 'numoctaves', 'offset', 'operator', 'opacity', 'order', 'orient', 'orientation', 'origin', 'overflow', 'paint-order', 'path', 'pathlength', 'patterncontentunits', 'patterntransform', 'patternunits', 'points', 'preservealpha', 'preserveaspectratio', 'primitiveunits', 'r', 'rx', 'ry', 'radius', 'refx', 'refy', 'repeatcount', 'repeatdur', 'restart', 'result', 'rotate', 'scale', 'seed', 'shape-rendering', 'specularconstant', 'specularexponent', 'spreadmethod', 'startoffset', 'stddeviation', 'stitchtiles', 'stop-color', 'stop-opacity', 'stroke-dasharray', 'stroke-dashoffset', 'stroke-linecap', 'stroke-linejoin', 'stroke-miterlimit', 'stroke-opacity', 'stroke', 'stroke-width', 'style', 'surfacescale', 'systemlanguage', 'tabindex', 'targetx', 'targety', 'transform', 'transform-origin', 'text-anchor', 'text-decoration', 'text-rendering', 'textlength', 'type', 'u1', 'u2', 'unicode', 'values', 'viewbox', 'visibility', 'version', 'vert-adv-y', 'vert-origin-x', 'vert-origin-y', 'width', 'word-spacing', 'wrap', 'writing-mode', 'xchannelselector', 'ychannelselector', 'x', 'x1', 'x2', 'xmlns', 'y', 'y1', 'y2', 'z', 'zoomandpan']);\n const mathMl = freeze(['accent', 'accentunder', 'align', 'bevelled', 'close', 'columnsalign', 'columnlines', 'columnspan', 'denomalign', 'depth', 'dir', 'display', 'displaystyle', 'encoding', 'fence', 'frame', 'height', 'href', 'id', 'largeop', 'length', 'linethickness', 'lspace', 'lquote', 'mathbackground', 'mathcolor', 'mathsize', 'mathvariant', 'maxsize', 'minsize', 'movablelimits', 'notation', 'numalign', 'open', 'rowalign', 'rowlines', 'rowspacing', 'rowspan', 'rspace', 'rquote', 'scriptlevel', 'scriptminsize', 'scriptsizemultiplier', 'selection', 'separator', 'separators', 'stretchy', 'subscriptshift', 'supscriptshift', 'symmetric', 'voffset', 'width', 'xmlns']);\n const xml = freeze(['xlink:href', 'xml:id', 'xlink:title', 'xml:space', 'xmlns:xlink']);\n\n const MUSTACHE_EXPR = seal(/\\{\\{[\\w\\W]*|[\\w\\W]*\\}\\}/gm); // Specify template detection regex for SAFE_FOR_TEMPLATES mode\n\n const ERB_EXPR = seal(/<%[\\w\\W]*|[\\w\\W]*%>/gm);\n const TMPLIT_EXPR = seal(/\\${[\\w\\W]*}/gm);\n const DATA_ATTR = seal(/^data-[\\-\\w.\\u00B7-\\uFFFF]/); // eslint-disable-line no-useless-escape\n\n const ARIA_ATTR = seal(/^aria-[\\-\\w]+$/); // eslint-disable-line no-useless-escape\n\n const IS_ALLOWED_URI = seal(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\\-]+(?:[^a-z+.\\-:]|$))/i // eslint-disable-line no-useless-escape\n );\n const IS_SCRIPT_OR_DATA = seal(/^(?:\\w+script|data):/i);\n const ATTR_WHITESPACE = seal(/[\\u0000-\\u0020\\u00A0\\u1680\\u180E\\u2000-\\u2029\\u205F\\u3000]/g // eslint-disable-line no-control-regex\n );\n const DOCTYPE_NAME = seal(/^html$/i);\n\n var EXPRESSIONS = /*#__PURE__*/Object.freeze({\n __proto__: null,\n MUSTACHE_EXPR: MUSTACHE_EXPR,\n ERB_EXPR: ERB_EXPR,\n TMPLIT_EXPR: TMPLIT_EXPR,\n DATA_ATTR: DATA_ATTR,\n ARIA_ATTR: ARIA_ATTR,\n IS_ALLOWED_URI: IS_ALLOWED_URI,\n IS_SCRIPT_OR_DATA: IS_SCRIPT_OR_DATA,\n ATTR_WHITESPACE: ATTR_WHITESPACE,\n DOCTYPE_NAME: DOCTYPE_NAME\n });\n\n const getGlobal = () => typeof window === 'undefined' ? null : window;\n /**\n * Creates a no-op policy for internal use only.\n * Don't export this function outside this module!\n * @param {?TrustedTypePolicyFactory} trustedTypes The policy factory.\n * @param {HTMLScriptElement} purifyHostElement The Script element used to load DOMPurify (to determine policy name suffix).\n * @return {?TrustedTypePolicy} The policy created (or null, if Trusted Types\n * are not supported or creating the policy failed).\n */\n\n\n const _createTrustedTypesPolicy = function _createTrustedTypesPolicy(trustedTypes, purifyHostElement) {\n if (typeof trustedTypes !== 'object' || typeof trustedTypes.createPolicy !== 'function') {\n return null;\n } // Allow the callers to control the unique policy name\n // by adding a data-tt-policy-suffix to the script element with the DOMPurify.\n // Policy creation with duplicate names throws in Trusted Types.\n\n\n let suffix = null;\n const ATTR_NAME = 'data-tt-policy-suffix';\n\n if (purifyHostElement && purifyHostElement.hasAttribute(ATTR_NAME)) {\n suffix = purifyHostElement.getAttribute(ATTR_NAME);\n }\n\n const policyName = 'dompurify' + (suffix ? '#' + suffix : '');\n\n try {\n return trustedTypes.createPolicy(policyName, {\n createHTML(html) {\n return html;\n },\n\n createScriptURL(scriptUrl) {\n return scriptUrl;\n }\n\n });\n } catch (_) {\n // Policy creation failed (most likely another DOMPurify script has\n // already run). Skip creating the policy, as this will only cause errors\n // if TT are enforced.\n console.warn('TrustedTypes policy ' + policyName + ' could not be created.');\n return null;\n }\n };\n\n function createDOMPurify() {\n let window = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getGlobal();\n\n const DOMPurify = root => createDOMPurify(root);\n /**\n * Version label, exposed for easier checks\n * if DOMPurify is up to date or not\n */\n\n\n DOMPurify.version = '3.0.3';\n /**\n * Array of elements that DOMPurify removed during sanitation.\n * Empty if nothing was removed.\n */\n\n DOMPurify.removed = [];\n\n if (!window || !window.document || window.document.nodeType !== 9) {\n // Not running in a browser, provide a factory function\n // so that you can pass your own Window\n DOMPurify.isSupported = false;\n return DOMPurify;\n }\n\n const originalDocument = window.document;\n const currentScript = originalDocument.currentScript;\n let {\n document\n } = window;\n const {\n DocumentFragment,\n HTMLTemplateElement,\n Node,\n Element,\n NodeFilter,\n NamedNodeMap = window.NamedNodeMap || window.MozNamedAttrMap,\n HTMLFormElement,\n DOMParser,\n trustedTypes\n } = window;\n const ElementPrototype = Element.prototype;\n const cloneNode = lookupGetter(ElementPrototype, 'cloneNode');\n const getNextSibling = lookupGetter(ElementPrototype, 'nextSibling');\n const getChildNodes = lookupGetter(ElementPrototype, 'childNodes');\n const getParentNode = lookupGetter(ElementPrototype, 'parentNode'); // As per issue #47, the web-components registry is inherited by a\n // new document created via createHTMLDocument. As per the spec\n // (http://w3c.github.io/webcomponents/spec/custom/#creating-and-passing-registries)\n // a new empty registry is used when creating a template contents owner\n // document, so we use that as our parent document to ensure nothing\n // is inherited.\n\n if (typeof HTMLTemplateElement === 'function') {\n const template = document.createElement('template');\n\n if (template.content && template.content.ownerDocument) {\n document = template.content.ownerDocument;\n }\n }\n\n let trustedTypesPolicy;\n let emptyHTML = '';\n const {\n implementation,\n createNodeIterator,\n createDocumentFragment,\n getElementsByTagName\n } = document;\n const {\n importNode\n } = originalDocument;\n let hooks = {};\n /**\n * Expose whether this browser supports running the full DOMPurify.\n */\n\n DOMPurify.isSupported = typeof entries === 'function' && typeof getParentNode === 'function' && implementation && implementation.createHTMLDocument !== undefined;\n const {\n MUSTACHE_EXPR,\n ERB_EXPR,\n TMPLIT_EXPR,\n DATA_ATTR,\n ARIA_ATTR,\n IS_SCRIPT_OR_DATA,\n ATTR_WHITESPACE\n } = EXPRESSIONS;\n let {\n IS_ALLOWED_URI: IS_ALLOWED_URI$1\n } = EXPRESSIONS;\n /**\n * We consider the elements and attributes below to be safe. Ideally\n * don't add any new ones but feel free to remove unwanted ones.\n */\n\n /* allowed element names */\n\n let ALLOWED_TAGS = null;\n const DEFAULT_ALLOWED_TAGS = addToSet({}, [...html$1, ...svg$1, ...svgFilters, ...mathMl$1, ...text]);\n /* Allowed attribute names */\n\n let ALLOWED_ATTR = null;\n const DEFAULT_ALLOWED_ATTR = addToSet({}, [...html, ...svg, ...mathMl, ...xml]);\n /*\n * Configure how DOMPUrify should handle custom elements and their attributes as well as customized built-in elements.\n * @property {RegExp|Function|null} tagNameCheck one of [null, regexPattern, predicate]. Default: `null` (disallow any custom elements)\n * @property {RegExp|Function|null} attributeNameCheck one of [null, regexPattern, predicate]. Default: `null` (disallow any attributes not on the allow list)\n * @property {boolean} allowCustomizedBuiltInElements allow custom elements derived from built-ins if they pass CUSTOM_ELEMENT_HANDLING.tagNameCheck. Default: `false`.\n */\n\n let CUSTOM_ELEMENT_HANDLING = Object.seal(Object.create(null, {\n tagNameCheck: {\n writable: true,\n configurable: false,\n enumerable: true,\n value: null\n },\n attributeNameCheck: {\n writable: true,\n configurable: false,\n enumerable: true,\n value: null\n },\n allowCustomizedBuiltInElements: {\n writable: true,\n configurable: false,\n enumerable: true,\n value: false\n }\n }));\n /* Explicitly forbidden tags (overrides ALLOWED_TAGS/ADD_TAGS) */\n\n let FORBID_TAGS = null;\n /* Explicitly forbidden attributes (overrides ALLOWED_ATTR/ADD_ATTR) */\n\n let FORBID_ATTR = null;\n /* Decide if ARIA attributes are okay */\n\n let ALLOW_ARIA_ATTR = true;\n /* Decide if custom data attributes are okay */\n\n let ALLOW_DATA_ATTR = true;\n /* Decide if unknown protocols are okay */\n\n let ALLOW_UNKNOWN_PROTOCOLS = false;\n /* Decide if self-closing tags in attributes are allowed.\n * Usually removed due to a mXSS issue in jQuery 3.0 */\n\n let ALLOW_SELF_CLOSE_IN_ATTR = true;\n /* Output should be safe for common template engines.\n * This means, DOMPurify removes data attributes, mustaches and ERB\n */\n\n let SAFE_FOR_TEMPLATES = false;\n /* Decide if document with ... should be returned */\n\n let WHOLE_DOCUMENT = false;\n /* Track whether config is already set on this instance of DOMPurify. */\n\n let SET_CONFIG = false;\n /* Decide if all elements (e.g. style, script) must be children of\n * document.body. By default, browsers might move them to document.head */\n\n let FORCE_BODY = false;\n /* Decide if a DOM `HTMLBodyElement` should be returned, instead of a html\n * string (or a TrustedHTML object if Trusted Types are supported).\n * If `WHOLE_DOCUMENT` is enabled a `HTMLHtmlElement` will be returned instead\n */\n\n let RETURN_DOM = false;\n /* Decide if a DOM `DocumentFragment` should be returned, instead of a html\n * string (or a TrustedHTML object if Trusted Types are supported) */\n\n let RETURN_DOM_FRAGMENT = false;\n /* Try to return a Trusted Type object instead of a string, return a string in\n * case Trusted Types are not supported */\n\n let RETURN_TRUSTED_TYPE = false;\n /* Output should be free from DOM clobbering attacks?\n * This sanitizes markups named with colliding, clobberable built-in DOM APIs.\n */\n\n let SANITIZE_DOM = true;\n /* Achieve full DOM Clobbering protection by isolating the namespace of named\n * properties and JS variables, mitigating attacks that abuse the HTML/DOM spec rules.\n *\n * HTML/DOM spec rules that enable DOM Clobbering:\n * - Named Access on Window (§7.3.3)\n * - DOM Tree Accessors (§3.1.5)\n * - Form Element Parent-Child Relations (§4.10.3)\n * - Iframe srcdoc / Nested WindowProxies (§4.8.5)\n * - HTMLCollection (§4.2.10.2)\n *\n * Namespace isolation is implemented by prefixing `id` and `name` attributes\n * with a constant string, i.e., `user-content-`\n */\n\n let SANITIZE_NAMED_PROPS = false;\n const SANITIZE_NAMED_PROPS_PREFIX = 'user-content-';\n /* Keep element content when removing element? */\n\n let KEEP_CONTENT = true;\n /* If a `Node` is passed to sanitize(), then performs sanitization in-place instead\n * of importing it into a new Document and returning a sanitized copy */\n\n let IN_PLACE = false;\n /* Allow usage of profiles like html, svg and mathMl */\n\n let USE_PROFILES = {};\n /* Tags to ignore content of when KEEP_CONTENT is true */\n\n let FORBID_CONTENTS = null;\n const DEFAULT_FORBID_CONTENTS = addToSet({}, ['annotation-xml', 'audio', 'colgroup', 'desc', 'foreignobject', 'head', 'iframe', 'math', 'mi', 'mn', 'mo', 'ms', 'mtext', 'noembed', 'noframes', 'noscript', 'plaintext', 'script', 'style', 'svg', 'template', 'thead', 'title', 'video', 'xmp']);\n /* Tags that are safe for data: URIs */\n\n let DATA_URI_TAGS = null;\n const DEFAULT_DATA_URI_TAGS = addToSet({}, ['audio', 'video', 'img', 'source', 'image', 'track']);\n /* Attributes safe for values like \"javascript:\" */\n\n let URI_SAFE_ATTRIBUTES = null;\n const DEFAULT_URI_SAFE_ATTRIBUTES = addToSet({}, ['alt', 'class', 'for', 'id', 'label', 'name', 'pattern', 'placeholder', 'role', 'summary', 'title', 'value', 'style', 'xmlns']);\n const MATHML_NAMESPACE = 'http://www.w3.org/1998/Math/MathML';\n const SVG_NAMESPACE = 'http://www.w3.org/2000/svg';\n const HTML_NAMESPACE = 'http://www.w3.org/1999/xhtml';\n /* Document namespace */\n\n let NAMESPACE = HTML_NAMESPACE;\n let IS_EMPTY_INPUT = false;\n /* Allowed XHTML+XML namespaces */\n\n let ALLOWED_NAMESPACES = null;\n const DEFAULT_ALLOWED_NAMESPACES = addToSet({}, [MATHML_NAMESPACE, SVG_NAMESPACE, HTML_NAMESPACE], stringToString);\n /* Parsing of strict XHTML documents */\n\n let PARSER_MEDIA_TYPE;\n const SUPPORTED_PARSER_MEDIA_TYPES = ['application/xhtml+xml', 'text/html'];\n const DEFAULT_PARSER_MEDIA_TYPE = 'text/html';\n let transformCaseFunc;\n /* Keep a reference to config to pass to hooks */\n\n let CONFIG = null;\n /* Ideally, do not touch anything below this line */\n\n /* ______________________________________________ */\n\n const formElement = document.createElement('form');\n\n const isRegexOrFunction = function isRegexOrFunction(testValue) {\n return testValue instanceof RegExp || testValue instanceof Function;\n };\n /**\n * _parseConfig\n *\n * @param {Object} cfg optional config literal\n */\n // eslint-disable-next-line complexity\n\n\n const _parseConfig = function _parseConfig(cfg) {\n if (CONFIG && CONFIG === cfg) {\n return;\n }\n /* Shield configuration object from tampering */\n\n\n if (!cfg || typeof cfg !== 'object') {\n cfg = {};\n }\n /* Shield configuration object from prototype pollution */\n\n\n cfg = clone(cfg);\n PARSER_MEDIA_TYPE = // eslint-disable-next-line unicorn/prefer-includes\n SUPPORTED_PARSER_MEDIA_TYPES.indexOf(cfg.PARSER_MEDIA_TYPE) === -1 ? PARSER_MEDIA_TYPE = DEFAULT_PARSER_MEDIA_TYPE : PARSER_MEDIA_TYPE = cfg.PARSER_MEDIA_TYPE; // HTML tags and attributes are not case-sensitive, converting to lowercase. Keeping XHTML as is.\n\n transformCaseFunc = PARSER_MEDIA_TYPE === 'application/xhtml+xml' ? stringToString : stringToLowerCase;\n /* Set configuration parameters */\n\n ALLOWED_TAGS = 'ALLOWED_TAGS' in cfg ? addToSet({}, cfg.ALLOWED_TAGS, transformCaseFunc) : DEFAULT_ALLOWED_TAGS;\n ALLOWED_ATTR = 'ALLOWED_ATTR' in cfg ? addToSet({}, cfg.ALLOWED_ATTR, transformCaseFunc) : DEFAULT_ALLOWED_ATTR;\n ALLOWED_NAMESPACES = 'ALLOWED_NAMESPACES' in cfg ? addToSet({}, cfg.ALLOWED_NAMESPACES, stringToString) : DEFAULT_ALLOWED_NAMESPACES;\n URI_SAFE_ATTRIBUTES = 'ADD_URI_SAFE_ATTR' in cfg ? addToSet(clone(DEFAULT_URI_SAFE_ATTRIBUTES), // eslint-disable-line indent\n cfg.ADD_URI_SAFE_ATTR, // eslint-disable-line indent\n transformCaseFunc // eslint-disable-line indent\n ) // eslint-disable-line indent\n : DEFAULT_URI_SAFE_ATTRIBUTES;\n DATA_URI_TAGS = 'ADD_DATA_URI_TAGS' in cfg ? addToSet(clone(DEFAULT_DATA_URI_TAGS), // eslint-disable-line indent\n cfg.ADD_DATA_URI_TAGS, // eslint-disable-line indent\n transformCaseFunc // eslint-disable-line indent\n ) // eslint-disable-line indent\n : DEFAULT_DATA_URI_TAGS;\n FORBID_CONTENTS = 'FORBID_CONTENTS' in cfg ? addToSet({}, cfg.FORBID_CONTENTS, transformCaseFunc) : DEFAULT_FORBID_CONTENTS;\n FORBID_TAGS = 'FORBID_TAGS' in cfg ? addToSet({}, cfg.FORBID_TAGS, transformCaseFunc) : {};\n FORBID_ATTR = 'FORBID_ATTR' in cfg ? addToSet({}, cfg.FORBID_ATTR, transformCaseFunc) : {};\n USE_PROFILES = 'USE_PROFILES' in cfg ? cfg.USE_PROFILES : false;\n ALLOW_ARIA_ATTR = cfg.ALLOW_ARIA_ATTR !== false; // Default true\n\n ALLOW_DATA_ATTR = cfg.ALLOW_DATA_ATTR !== false; // Default true\n\n ALLOW_UNKNOWN_PROTOCOLS = cfg.ALLOW_UNKNOWN_PROTOCOLS || false; // Default false\n\n ALLOW_SELF_CLOSE_IN_ATTR = cfg.ALLOW_SELF_CLOSE_IN_ATTR !== false; // Default true\n\n SAFE_FOR_TEMPLATES = cfg.SAFE_FOR_TEMPLATES || false; // Default false\n\n WHOLE_DOCUMENT = cfg.WHOLE_DOCUMENT || false; // Default false\n\n RETURN_DOM = cfg.RETURN_DOM || false; // Default false\n\n RETURN_DOM_FRAGMENT = cfg.RETURN_DOM_FRAGMENT || false; // Default false\n\n RETURN_TRUSTED_TYPE = cfg.RETURN_TRUSTED_TYPE || false; // Default false\n\n FORCE_BODY = cfg.FORCE_BODY || false; // Default false\n\n SANITIZE_DOM = cfg.SANITIZE_DOM !== false; // Default true\n\n SANITIZE_NAMED_PROPS = cfg.SANITIZE_NAMED_PROPS || false; // Default false\n\n KEEP_CONTENT = cfg.KEEP_CONTENT !== false; // Default true\n\n IN_PLACE = cfg.IN_PLACE || false; // Default false\n\n IS_ALLOWED_URI$1 = cfg.ALLOWED_URI_REGEXP || IS_ALLOWED_URI;\n NAMESPACE = cfg.NAMESPACE || HTML_NAMESPACE;\n CUSTOM_ELEMENT_HANDLING = cfg.CUSTOM_ELEMENT_HANDLING || {};\n\n if (cfg.CUSTOM_ELEMENT_HANDLING && isRegexOrFunction(cfg.CUSTOM_ELEMENT_HANDLING.tagNameCheck)) {\n CUSTOM_ELEMENT_HANDLING.tagNameCheck = cfg.CUSTOM_ELEMENT_HANDLING.tagNameCheck;\n }\n\n if (cfg.CUSTOM_ELEMENT_HANDLING && isRegexOrFunction(cfg.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)) {\n CUSTOM_ELEMENT_HANDLING.attributeNameCheck = cfg.CUSTOM_ELEMENT_HANDLING.attributeNameCheck;\n }\n\n if (cfg.CUSTOM_ELEMENT_HANDLING && typeof cfg.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements === 'boolean') {\n CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements = cfg.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements;\n }\n\n if (SAFE_FOR_TEMPLATES) {\n ALLOW_DATA_ATTR = false;\n }\n\n if (RETURN_DOM_FRAGMENT) {\n RETURN_DOM = true;\n }\n /* Parse profile info */\n\n\n if (USE_PROFILES) {\n ALLOWED_TAGS = addToSet({}, [...text]);\n ALLOWED_ATTR = [];\n\n if (USE_PROFILES.html === true) {\n addToSet(ALLOWED_TAGS, html$1);\n addToSet(ALLOWED_ATTR, html);\n }\n\n if (USE_PROFILES.svg === true) {\n addToSet(ALLOWED_TAGS, svg$1);\n addToSet(ALLOWED_ATTR, svg);\n addToSet(ALLOWED_ATTR, xml);\n }\n\n if (USE_PROFILES.svgFilters === true) {\n addToSet(ALLOWED_TAGS, svgFilters);\n addToSet(ALLOWED_ATTR, svg);\n addToSet(ALLOWED_ATTR, xml);\n }\n\n if (USE_PROFILES.mathMl === true) {\n addToSet(ALLOWED_TAGS, mathMl$1);\n addToSet(ALLOWED_ATTR, mathMl);\n addToSet(ALLOWED_ATTR, xml);\n }\n }\n /* Merge configuration parameters */\n\n\n if (cfg.ADD_TAGS) {\n if (ALLOWED_TAGS === DEFAULT_ALLOWED_TAGS) {\n ALLOWED_TAGS = clone(ALLOWED_TAGS);\n }\n\n addToSet(ALLOWED_TAGS, cfg.ADD_TAGS, transformCaseFunc);\n }\n\n if (cfg.ADD_ATTR) {\n if (ALLOWED_ATTR === DEFAULT_ALLOWED_ATTR) {\n ALLOWED_ATTR = clone(ALLOWED_ATTR);\n }\n\n addToSet(ALLOWED_ATTR, cfg.ADD_ATTR, transformCaseFunc);\n }\n\n if (cfg.ADD_URI_SAFE_ATTR) {\n addToSet(URI_SAFE_ATTRIBUTES, cfg.ADD_URI_SAFE_ATTR, transformCaseFunc);\n }\n\n if (cfg.FORBID_CONTENTS) {\n if (FORBID_CONTENTS === DEFAULT_FORBID_CONTENTS) {\n FORBID_CONTENTS = clone(FORBID_CONTENTS);\n }\n\n addToSet(FORBID_CONTENTS, cfg.FORBID_CONTENTS, transformCaseFunc);\n }\n /* Add #text in case KEEP_CONTENT is set to true */\n\n\n if (KEEP_CONTENT) {\n ALLOWED_TAGS['#text'] = true;\n }\n /* Add html, head and body to ALLOWED_TAGS in case WHOLE_DOCUMENT is true */\n\n\n if (WHOLE_DOCUMENT) {\n addToSet(ALLOWED_TAGS, ['html', 'head', 'body']);\n }\n /* Add tbody to ALLOWED_TAGS in case tables are permitted, see #286, #365 */\n\n\n if (ALLOWED_TAGS.table) {\n addToSet(ALLOWED_TAGS, ['tbody']);\n delete FORBID_TAGS.tbody;\n }\n\n if (cfg.TRUSTED_TYPES_POLICY) {\n if (typeof cfg.TRUSTED_TYPES_POLICY.createHTML !== 'function') {\n throw typeErrorCreate('TRUSTED_TYPES_POLICY configuration option must provide a \"createHTML\" hook.');\n }\n\n if (typeof cfg.TRUSTED_TYPES_POLICY.createScriptURL !== 'function') {\n throw typeErrorCreate('TRUSTED_TYPES_POLICY configuration option must provide a \"createScriptURL\" hook.');\n } // Overwrite existing TrustedTypes policy.\n\n\n trustedTypesPolicy = cfg.TRUSTED_TYPES_POLICY; // Sign local variables required by `sanitize`.\n\n emptyHTML = trustedTypesPolicy.createHTML('');\n } else {\n // Uninitialized policy, attempt to initialize the internal dompurify policy.\n if (trustedTypesPolicy === undefined) {\n trustedTypesPolicy = _createTrustedTypesPolicy(trustedTypes, currentScript);\n } // If creating the internal policy succeeded sign internal variables.\n\n\n if (trustedTypesPolicy !== null && typeof emptyHTML === 'string') {\n emptyHTML = trustedTypesPolicy.createHTML('');\n }\n } // Prevent further manipulation of configuration.\n // Not available in IE8, Safari 5, etc.\n\n\n if (freeze) {\n freeze(cfg);\n }\n\n CONFIG = cfg;\n };\n\n const MATHML_TEXT_INTEGRATION_POINTS = addToSet({}, ['mi', 'mo', 'mn', 'ms', 'mtext']);\n const HTML_INTEGRATION_POINTS = addToSet({}, ['foreignobject', 'desc', 'title', 'annotation-xml']); // Certain elements are allowed in both SVG and HTML\n // namespace. We need to specify them explicitly\n // so that they don't get erroneously deleted from\n // HTML namespace.\n\n const COMMON_SVG_AND_HTML_ELEMENTS = addToSet({}, ['title', 'style', 'font', 'a', 'script']);\n /* Keep track of all possible SVG and MathML tags\n * so that we can perform the namespace checks\n * correctly. */\n\n const ALL_SVG_TAGS = addToSet({}, svg$1);\n addToSet(ALL_SVG_TAGS, svgFilters);\n addToSet(ALL_SVG_TAGS, svgDisallowed);\n const ALL_MATHML_TAGS = addToSet({}, mathMl$1);\n addToSet(ALL_MATHML_TAGS, mathMlDisallowed);\n /**\n *\n *\n * @param {Element} element a DOM element whose namespace is being checked\n * @returns {boolean} Return false if the element has a\n * namespace that a spec-compliant parser would never\n * return. Return true otherwise.\n */\n\n const _checkValidNamespace = function _checkValidNamespace(element) {\n let parent = getParentNode(element); // In JSDOM, if we're inside shadow DOM, then parentNode\n // can be null. We just simulate parent in this case.\n\n if (!parent || !parent.tagName) {\n parent = {\n namespaceURI: NAMESPACE,\n tagName: 'template'\n };\n }\n\n const tagName = stringToLowerCase(element.tagName);\n const parentTagName = stringToLowerCase(parent.tagName);\n\n if (!ALLOWED_NAMESPACES[element.namespaceURI]) {\n return false;\n }\n\n if (element.namespaceURI === SVG_NAMESPACE) {\n // The only way to switch from HTML namespace to SVG\n // is via . If it happens via any other tag, then\n // it should be killed.\n if (parent.namespaceURI === HTML_NAMESPACE) {\n return tagName === 'svg';\n } // The only way to switch from MathML to SVG is via`\n // svg if parent is either or MathML\n // text integration points.\n\n\n if (parent.namespaceURI === MATHML_NAMESPACE) {\n return tagName === 'svg' && (parentTagName === 'annotation-xml' || MATHML_TEXT_INTEGRATION_POINTS[parentTagName]);\n } // We only allow elements that are defined in SVG\n // spec. All others are disallowed in SVG namespace.\n\n\n return Boolean(ALL_SVG_TAGS[tagName]);\n }\n\n if (element.namespaceURI === MATHML_NAMESPACE) {\n // The only way to switch from HTML namespace to MathML\n // is via . If it happens via any other tag, then\n // it should be killed.\n if (parent.namespaceURI === HTML_NAMESPACE) {\n return tagName === 'math';\n } // The only way to switch from SVG to MathML is via\n // and HTML integration points\n\n\n if (parent.namespaceURI === SVG_NAMESPACE) {\n return tagName === 'math' && HTML_INTEGRATION_POINTS[parentTagName];\n } // We only allow elements that are defined in MathML\n // spec. All others are disallowed in MathML namespace.\n\n\n return Boolean(ALL_MATHML_TAGS[tagName]);\n }\n\n if (element.namespaceURI === HTML_NAMESPACE) {\n // The only way to switch from SVG to HTML is via\n // HTML integration points, and from MathML to HTML\n // is via MathML text integration points\n if (parent.namespaceURI === SVG_NAMESPACE && !HTML_INTEGRATION_POINTS[parentTagName]) {\n return false;\n }\n\n if (parent.namespaceURI === MATHML_NAMESPACE && !MATHML_TEXT_INTEGRATION_POINTS[parentTagName]) {\n return false;\n } // We disallow tags that are specific for MathML\n // or SVG and should never appear in HTML namespace\n\n\n return !ALL_MATHML_TAGS[tagName] && (COMMON_SVG_AND_HTML_ELEMENTS[tagName] || !ALL_SVG_TAGS[tagName]);\n } // For XHTML and XML documents that support custom namespaces\n\n\n if (PARSER_MEDIA_TYPE === 'application/xhtml+xml' && ALLOWED_NAMESPACES[element.namespaceURI]) {\n return true;\n } // The code should never reach this place (this means\n // that the element somehow got namespace that is not\n // HTML, SVG, MathML or allowed via ALLOWED_NAMESPACES).\n // Return false just in case.\n\n\n return false;\n };\n /**\n * _forceRemove\n *\n * @param {Node} node a DOM node\n */\n\n\n const _forceRemove = function _forceRemove(node) {\n arrayPush(DOMPurify.removed, {\n element: node\n });\n\n try {\n // eslint-disable-next-line unicorn/prefer-dom-node-remove\n node.parentNode.removeChild(node);\n } catch (_) {\n node.remove();\n }\n };\n /**\n * _removeAttribute\n *\n * @param {String} name an Attribute name\n * @param {Node} node a DOM node\n */\n\n\n const _removeAttribute = function _removeAttribute(name, node) {\n try {\n arrayPush(DOMPurify.removed, {\n attribute: node.getAttributeNode(name),\n from: node\n });\n } catch (_) {\n arrayPush(DOMPurify.removed, {\n attribute: null,\n from: node\n });\n }\n\n node.removeAttribute(name); // We void attribute values for unremovable \"is\"\" attributes\n\n if (name === 'is' && !ALLOWED_ATTR[name]) {\n if (RETURN_DOM || RETURN_DOM_FRAGMENT) {\n try {\n _forceRemove(node);\n } catch (_) {}\n } else {\n try {\n node.setAttribute(name, '');\n } catch (_) {}\n }\n }\n };\n /**\n * _initDocument\n *\n * @param {String} dirty a string of dirty markup\n * @return {Document} a DOM, filled with the dirty markup\n */\n\n\n const _initDocument = function _initDocument(dirty) {\n /* Create a HTML document */\n let doc;\n let leadingWhitespace;\n\n if (FORCE_BODY) {\n dirty = '' + dirty;\n } else {\n /* If FORCE_BODY isn't used, leading whitespace needs to be preserved manually */\n const matches = stringMatch(dirty, /^[\\r\\n\\t ]+/);\n leadingWhitespace = matches && matches[0];\n }\n\n if (PARSER_MEDIA_TYPE === 'application/xhtml+xml' && NAMESPACE === HTML_NAMESPACE) {\n // Root of XHTML doc must contain xmlns declaration (see https://www.w3.org/TR/xhtml1/normative.html#strict)\n dirty = '' + dirty + '';\n }\n\n const dirtyPayload = trustedTypesPolicy ? trustedTypesPolicy.createHTML(dirty) : dirty;\n /*\n * Use the DOMParser API by default, fallback later if needs be\n * DOMParser not work for svg when has multiple root element.\n */\n\n if (NAMESPACE === HTML_NAMESPACE) {\n try {\n doc = new DOMParser().parseFromString(dirtyPayload, PARSER_MEDIA_TYPE);\n } catch (_) {}\n }\n /* Use createHTMLDocument in case DOMParser is not available */\n\n\n if (!doc || !doc.documentElement) {\n doc = implementation.createDocument(NAMESPACE, 'template', null);\n\n try {\n doc.documentElement.innerHTML = IS_EMPTY_INPUT ? emptyHTML : dirtyPayload;\n } catch (_) {// Syntax error if dirtyPayload is invalid xml\n }\n }\n\n const body = doc.body || doc.documentElement;\n\n if (dirty && leadingWhitespace) {\n body.insertBefore(document.createTextNode(leadingWhitespace), body.childNodes[0] || null);\n }\n /* Work on whole document or just its body */\n\n\n if (NAMESPACE === HTML_NAMESPACE) {\n return getElementsByTagName.call(doc, WHOLE_DOCUMENT ? 'html' : 'body')[0];\n }\n\n return WHOLE_DOCUMENT ? doc.documentElement : body;\n };\n /**\n * _createIterator\n *\n * @param {Document} root document/fragment to create iterator for\n * @return {Iterator} iterator instance\n */\n\n\n const _createIterator = function _createIterator(root) {\n return createNodeIterator.call(root.ownerDocument || root, root, // eslint-disable-next-line no-bitwise\n NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_COMMENT | NodeFilter.SHOW_TEXT, null, false);\n };\n /**\n * _isClobbered\n *\n * @param {Node} elm element to check for clobbering attacks\n * @return {Boolean} true if clobbered, false if safe\n */\n\n\n const _isClobbered = function _isClobbered(elm) {\n return elm instanceof HTMLFormElement && (typeof elm.nodeName !== 'string' || typeof elm.textContent !== 'string' || typeof elm.removeChild !== 'function' || !(elm.attributes instanceof NamedNodeMap) || typeof elm.removeAttribute !== 'function' || typeof elm.setAttribute !== 'function' || typeof elm.namespaceURI !== 'string' || typeof elm.insertBefore !== 'function' || typeof elm.hasChildNodes !== 'function');\n };\n /**\n * _isNode\n *\n * @param {Node} obj object to check whether it's a DOM node\n * @return {Boolean} true is object is a DOM node\n */\n\n\n const _isNode = function _isNode(object) {\n return typeof Node === 'object' ? object instanceof Node : object && typeof object === 'object' && typeof object.nodeType === 'number' && typeof object.nodeName === 'string';\n };\n /**\n * _executeHook\n * Execute user configurable hooks\n *\n * @param {String} entryPoint Name of the hook's entry point\n * @param {Node} currentNode node to work on with the hook\n * @param {Object} data additional hook parameters\n */\n\n\n const _executeHook = function _executeHook(entryPoint, currentNode, data) {\n if (!hooks[entryPoint]) {\n return;\n }\n\n arrayForEach(hooks[entryPoint], hook => {\n hook.call(DOMPurify, currentNode, data, CONFIG);\n });\n };\n /**\n * _sanitizeElements\n *\n * @protect nodeName\n * @protect textContent\n * @protect removeChild\n *\n * @param {Node} currentNode to check for permission to exist\n * @return {Boolean} true if node was killed, false if left alive\n */\n\n\n const _sanitizeElements = function _sanitizeElements(currentNode) {\n let content;\n /* Execute a hook if present */\n\n _executeHook('beforeSanitizeElements', currentNode, null);\n /* Check if element is clobbered or can clobber */\n\n\n if (_isClobbered(currentNode)) {\n _forceRemove(currentNode);\n\n return true;\n }\n /* Now let's check the element's type and name */\n\n\n const tagName = transformCaseFunc(currentNode.nodeName);\n /* Execute a hook if present */\n\n _executeHook('uponSanitizeElement', currentNode, {\n tagName,\n allowedTags: ALLOWED_TAGS\n });\n /* Detect mXSS attempts abusing namespace confusion */\n\n\n if (currentNode.hasChildNodes() && !_isNode(currentNode.firstElementChild) && (!_isNode(currentNode.content) || !_isNode(currentNode.content.firstElementChild)) && regExpTest(/<[/\\w]/g, currentNode.innerHTML) && regExpTest(/<[/\\w]/g, currentNode.textContent)) {\n _forceRemove(currentNode);\n\n return true;\n }\n /* Remove element if anything forbids its presence */\n\n\n if (!ALLOWED_TAGS[tagName] || FORBID_TAGS[tagName]) {\n /* Check if we have a custom element to handle */\n if (!FORBID_TAGS[tagName] && _basicCustomElementTest(tagName)) {\n if (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.tagNameCheck, tagName)) return false;\n if (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.tagNameCheck(tagName)) return false;\n }\n /* Keep content except for bad-listed elements */\n\n\n if (KEEP_CONTENT && !FORBID_CONTENTS[tagName]) {\n const parentNode = getParentNode(currentNode) || currentNode.parentNode;\n const childNodes = getChildNodes(currentNode) || currentNode.childNodes;\n\n if (childNodes && parentNode) {\n const childCount = childNodes.length;\n\n for (let i = childCount - 1; i >= 0; --i) {\n parentNode.insertBefore(cloneNode(childNodes[i], true), getNextSibling(currentNode));\n }\n }\n }\n\n _forceRemove(currentNode);\n\n return true;\n }\n /* Check whether element has a valid namespace */\n\n\n if (currentNode instanceof Element && !_checkValidNamespace(currentNode)) {\n _forceRemove(currentNode);\n\n return true;\n }\n /* Make sure that older browsers don't get noscript mXSS */\n\n\n if ((tagName === 'noscript' || tagName === 'noembed') && regExpTest(/<\\/no(script|embed)/i, currentNode.innerHTML)) {\n _forceRemove(currentNode);\n\n return true;\n }\n /* Sanitize element content to be template-safe */\n\n\n if (SAFE_FOR_TEMPLATES && currentNode.nodeType === 3) {\n /* Get the element's text content */\n content = currentNode.textContent;\n content = stringReplace(content, MUSTACHE_EXPR, ' ');\n content = stringReplace(content, ERB_EXPR, ' ');\n content = stringReplace(content, TMPLIT_EXPR, ' ');\n\n if (currentNode.textContent !== content) {\n arrayPush(DOMPurify.removed, {\n element: currentNode.cloneNode()\n });\n currentNode.textContent = content;\n }\n }\n /* Execute a hook if present */\n\n\n _executeHook('afterSanitizeElements', currentNode, null);\n\n return false;\n };\n /**\n * _isValidAttribute\n *\n * @param {string} lcTag Lowercase tag name of containing element.\n * @param {string} lcName Lowercase attribute name.\n * @param {string} value Attribute value.\n * @return {Boolean} Returns true if `value` is valid, otherwise false.\n */\n // eslint-disable-next-line complexity\n\n\n const _isValidAttribute = function _isValidAttribute(lcTag, lcName, value) {\n /* Make sure attribute cannot clobber */\n if (SANITIZE_DOM && (lcName === 'id' || lcName === 'name') && (value in document || value in formElement)) {\n return false;\n }\n /* Allow valid data-* attributes: At least one character after \"-\"\n (https://html.spec.whatwg.org/multipage/dom.html#embedding-custom-non-visible-data-with-the-data-*-attributes)\n XML-compatible (https://html.spec.whatwg.org/multipage/infrastructure.html#xml-compatible and http://www.w3.org/TR/xml/#d0e804)\n We don't need to check the value; it's always URI safe. */\n\n\n if (ALLOW_DATA_ATTR && !FORBID_ATTR[lcName] && regExpTest(DATA_ATTR, lcName)) ; else if (ALLOW_ARIA_ATTR && regExpTest(ARIA_ATTR, lcName)) ; else if (!ALLOWED_ATTR[lcName] || FORBID_ATTR[lcName]) {\n if ( // First condition does a very basic check if a) it's basically a valid custom element tagname AND\n // b) if the tagName passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.tagNameCheck\n // and c) if the attribute name passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.attributeNameCheck\n _basicCustomElementTest(lcTag) && (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.tagNameCheck, lcTag) || CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.tagNameCheck(lcTag)) && (CUSTOM_ELEMENT_HANDLING.attributeNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.attributeNameCheck, lcName) || CUSTOM_ELEMENT_HANDLING.attributeNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.attributeNameCheck(lcName)) || // Alternative, second condition checks if it's an `is`-attribute, AND\n // the value passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.tagNameCheck\n lcName === 'is' && CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements && (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.tagNameCheck, value) || CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.tagNameCheck(value))) ; else {\n return false;\n }\n /* Check value is safe. First, is attr inert? If so, is safe */\n\n } else if (URI_SAFE_ATTRIBUTES[lcName]) ; else if (regExpTest(IS_ALLOWED_URI$1, stringReplace(value, ATTR_WHITESPACE, ''))) ; else if ((lcName === 'src' || lcName === 'xlink:href' || lcName === 'href') && lcTag !== 'script' && stringIndexOf(value, 'data:') === 0 && DATA_URI_TAGS[lcTag]) ; else if (ALLOW_UNKNOWN_PROTOCOLS && !regExpTest(IS_SCRIPT_OR_DATA, stringReplace(value, ATTR_WHITESPACE, ''))) ; else if (value) {\n return false;\n } else ;\n\n return true;\n };\n /**\n * _basicCustomElementCheck\n * checks if at least one dash is included in tagName, and it's not the first char\n * for more sophisticated checking see https://github.com/sindresorhus/validate-element-name\n * @param {string} tagName name of the tag of the node to sanitize\n */\n\n\n const _basicCustomElementTest = function _basicCustomElementTest(tagName) {\n return tagName.indexOf('-') > 0;\n };\n /**\n * _sanitizeAttributes\n *\n * @protect attributes\n * @protect nodeName\n * @protect removeAttribute\n * @protect setAttribute\n *\n * @param {Node} currentNode to sanitize\n */\n\n\n const _sanitizeAttributes = function _sanitizeAttributes(currentNode) {\n let attr;\n let value;\n let lcName;\n let l;\n /* Execute a hook if present */\n\n _executeHook('beforeSanitizeAttributes', currentNode, null);\n\n const {\n attributes\n } = currentNode;\n /* Check if we have attributes; if not we might have a text node */\n\n if (!attributes) {\n return;\n }\n\n const hookEvent = {\n attrName: '',\n attrValue: '',\n keepAttr: true,\n allowedAttributes: ALLOWED_ATTR\n };\n l = attributes.length;\n /* Go backwards over all attributes; safely remove bad ones */\n\n while (l--) {\n attr = attributes[l];\n const {\n name,\n namespaceURI\n } = attr;\n value = name === 'value' ? attr.value : stringTrim(attr.value);\n lcName = transformCaseFunc(name);\n /* Execute a hook if present */\n\n hookEvent.attrName = lcName;\n hookEvent.attrValue = value;\n hookEvent.keepAttr = true;\n hookEvent.forceKeepAttr = undefined; // Allows developers to see this is a property they can set\n\n _executeHook('uponSanitizeAttribute', currentNode, hookEvent);\n\n value = hookEvent.attrValue;\n /* Did the hooks approve of the attribute? */\n\n if (hookEvent.forceKeepAttr) {\n continue;\n }\n /* Remove attribute */\n\n\n _removeAttribute(name, currentNode);\n /* Did the hooks approve of the attribute? */\n\n\n if (!hookEvent.keepAttr) {\n continue;\n }\n /* Work around a security issue in jQuery 3.0 */\n\n\n if (!ALLOW_SELF_CLOSE_IN_ATTR && regExpTest(/\\/>/i, value)) {\n _removeAttribute(name, currentNode);\n\n continue;\n }\n /* Sanitize attribute content to be template-safe */\n\n\n if (SAFE_FOR_TEMPLATES) {\n value = stringReplace(value, MUSTACHE_EXPR, ' ');\n value = stringReplace(value, ERB_EXPR, ' ');\n value = stringReplace(value, TMPLIT_EXPR, ' ');\n }\n /* Is `value` valid for this attribute? */\n\n\n const lcTag = transformCaseFunc(currentNode.nodeName);\n\n if (!_isValidAttribute(lcTag, lcName, value)) {\n continue;\n }\n /* Full DOM Clobbering protection via namespace isolation,\n * Prefix id and name attributes with `user-content-`\n */\n\n\n if (SANITIZE_NAMED_PROPS && (lcName === 'id' || lcName === 'name')) {\n // Remove the attribute with this value\n _removeAttribute(name, currentNode); // Prefix the value and later re-create the attribute with the sanitized value\n\n\n value = SANITIZE_NAMED_PROPS_PREFIX + value;\n }\n /* Handle attributes that require Trusted Types */\n\n\n if (trustedTypesPolicy && typeof trustedTypes === 'object' && typeof trustedTypes.getAttributeType === 'function') {\n if (namespaceURI) ; else {\n switch (trustedTypes.getAttributeType(lcTag, lcName)) {\n case 'TrustedHTML':\n {\n value = trustedTypesPolicy.createHTML(value);\n break;\n }\n\n case 'TrustedScriptURL':\n {\n value = trustedTypesPolicy.createScriptURL(value);\n break;\n }\n }\n }\n }\n /* Handle invalid data-* attribute set by try-catching it */\n\n\n try {\n if (namespaceURI) {\n currentNode.setAttributeNS(namespaceURI, name, value);\n } else {\n /* Fallback to setAttribute() for browser-unrecognized namespaces e.g. \"x-schema\". */\n currentNode.setAttribute(name, value);\n }\n\n arrayPop(DOMPurify.removed);\n } catch (_) {}\n }\n /* Execute a hook if present */\n\n\n _executeHook('afterSanitizeAttributes', currentNode, null);\n };\n /**\n * _sanitizeShadowDOM\n *\n * @param {DocumentFragment} fragment to iterate over recursively\n */\n\n\n const _sanitizeShadowDOM = function _sanitizeShadowDOM(fragment) {\n let shadowNode;\n\n const shadowIterator = _createIterator(fragment);\n /* Execute a hook if present */\n\n\n _executeHook('beforeSanitizeShadowDOM', fragment, null);\n\n while (shadowNode = shadowIterator.nextNode()) {\n /* Execute a hook if present */\n _executeHook('uponSanitizeShadowNode', shadowNode, null);\n /* Sanitize tags and elements */\n\n\n if (_sanitizeElements(shadowNode)) {\n continue;\n }\n /* Deep shadow DOM detected */\n\n\n if (shadowNode.content instanceof DocumentFragment) {\n _sanitizeShadowDOM(shadowNode.content);\n }\n /* Check attributes, sanitize if necessary */\n\n\n _sanitizeAttributes(shadowNode);\n }\n /* Execute a hook if present */\n\n\n _executeHook('afterSanitizeShadowDOM', fragment, null);\n };\n /**\n * Sanitize\n * Public method providing core sanitation functionality\n *\n * @param {String|Node} dirty string or DOM node\n * @param {Object} configuration object\n */\n // eslint-disable-next-line complexity\n\n\n DOMPurify.sanitize = function (dirty) {\n let cfg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n let body;\n let importedNode;\n let currentNode;\n let returnNode;\n /* Make sure we have a string to sanitize.\n DO NOT return early, as this will return the wrong type if\n the user has requested a DOM object rather than a string */\n\n IS_EMPTY_INPUT = !dirty;\n\n if (IS_EMPTY_INPUT) {\n dirty = '';\n }\n /* Stringify, in case dirty is an object */\n\n\n if (typeof dirty !== 'string' && !_isNode(dirty)) {\n if (typeof dirty.toString === 'function') {\n dirty = dirty.toString();\n\n if (typeof dirty !== 'string') {\n throw typeErrorCreate('dirty is not a string, aborting');\n }\n } else {\n throw typeErrorCreate('toString is not a function');\n }\n }\n /* Return dirty HTML if DOMPurify cannot run */\n\n\n if (!DOMPurify.isSupported) {\n return dirty;\n }\n /* Assign config vars */\n\n\n if (!SET_CONFIG) {\n _parseConfig(cfg);\n }\n /* Clean up removed elements */\n\n\n DOMPurify.removed = [];\n /* Check if dirty is correctly typed for IN_PLACE */\n\n if (typeof dirty === 'string') {\n IN_PLACE = false;\n }\n\n if (IN_PLACE) {\n /* Do some early pre-sanitization to avoid unsafe root nodes */\n if (dirty.nodeName) {\n const tagName = transformCaseFunc(dirty.nodeName);\n\n if (!ALLOWED_TAGS[tagName] || FORBID_TAGS[tagName]) {\n throw typeErrorCreate('root node is forbidden and cannot be sanitized in-place');\n }\n }\n } else if (dirty instanceof Node) {\n /* If dirty is a DOM element, append to an empty document to avoid\n elements being stripped by the parser */\n body = _initDocument('');\n importedNode = body.ownerDocument.importNode(dirty, true);\n\n if (importedNode.nodeType === 1 && importedNode.nodeName === 'BODY') {\n /* Node is already a body, use as is */\n body = importedNode;\n } else if (importedNode.nodeName === 'HTML') {\n body = importedNode;\n } else {\n // eslint-disable-next-line unicorn/prefer-dom-node-append\n body.appendChild(importedNode);\n }\n } else {\n /* Exit directly if we have nothing to do */\n if (!RETURN_DOM && !SAFE_FOR_TEMPLATES && !WHOLE_DOCUMENT && // eslint-disable-next-line unicorn/prefer-includes\n dirty.indexOf('<') === -1) {\n return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML(dirty) : dirty;\n }\n /* Initialize the document to work on */\n\n\n body = _initDocument(dirty);\n /* Check we have a DOM node from the data */\n\n if (!body) {\n return RETURN_DOM ? null : RETURN_TRUSTED_TYPE ? emptyHTML : '';\n }\n }\n /* Remove first element node (ours) if FORCE_BODY is set */\n\n\n if (body && FORCE_BODY) {\n _forceRemove(body.firstChild);\n }\n /* Get node iterator */\n\n\n const nodeIterator = _createIterator(IN_PLACE ? dirty : body);\n /* Now start iterating over the created document */\n\n\n while (currentNode = nodeIterator.nextNode()) {\n /* Sanitize tags and elements */\n if (_sanitizeElements(currentNode)) {\n continue;\n }\n /* Shadow DOM detected, sanitize it */\n\n\n if (currentNode.content instanceof DocumentFragment) {\n _sanitizeShadowDOM(currentNode.content);\n }\n /* Check attributes, sanitize if necessary */\n\n\n _sanitizeAttributes(currentNode);\n }\n /* If we sanitized `dirty` in-place, return it. */\n\n\n if (IN_PLACE) {\n return dirty;\n }\n /* Return sanitized string or DOM */\n\n\n if (RETURN_DOM) {\n if (RETURN_DOM_FRAGMENT) {\n returnNode = createDocumentFragment.call(body.ownerDocument);\n\n while (body.firstChild) {\n // eslint-disable-next-line unicorn/prefer-dom-node-append\n returnNode.appendChild(body.firstChild);\n }\n } else {\n returnNode = body;\n }\n\n if (ALLOWED_ATTR.shadowroot || ALLOWED_ATTR.shadowrootmod) {\n /*\n AdoptNode() is not used because internal state is not reset\n (e.g. the past names map of a HTMLFormElement), this is safe\n in theory but we would rather not risk another attack vector.\n The state that is cloned by importNode() is explicitly defined\n by the specs.\n */\n returnNode = importNode.call(originalDocument, returnNode, true);\n }\n\n return returnNode;\n }\n\n let serializedHTML = WHOLE_DOCUMENT ? body.outerHTML : body.innerHTML;\n /* Serialize doctype if allowed */\n\n if (WHOLE_DOCUMENT && ALLOWED_TAGS['!doctype'] && body.ownerDocument && body.ownerDocument.doctype && body.ownerDocument.doctype.name && regExpTest(DOCTYPE_NAME, body.ownerDocument.doctype.name)) {\n serializedHTML = '\\n' + serializedHTML;\n }\n /* Sanitize final string template-safe */\n\n\n if (SAFE_FOR_TEMPLATES) {\n serializedHTML = stringReplace(serializedHTML, MUSTACHE_EXPR, ' ');\n serializedHTML = stringReplace(serializedHTML, ERB_EXPR, ' ');\n serializedHTML = stringReplace(serializedHTML, TMPLIT_EXPR, ' ');\n }\n\n return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML(serializedHTML) : serializedHTML;\n };\n /**\n * Public method to set the configuration once\n * setConfig\n *\n * @param {Object} cfg configuration object\n */\n\n\n DOMPurify.setConfig = function (cfg) {\n _parseConfig(cfg);\n\n SET_CONFIG = true;\n };\n /**\n * Public method to remove the configuration\n * clearConfig\n *\n */\n\n\n DOMPurify.clearConfig = function () {\n CONFIG = null;\n SET_CONFIG = false;\n };\n /**\n * Public method to check if an attribute value is valid.\n * Uses last set config, if any. Otherwise, uses config defaults.\n * isValidAttribute\n *\n * @param {string} tag Tag name of containing element.\n * @param {string} attr Attribute name.\n * @param {string} value Attribute value.\n * @return {Boolean} Returns true if `value` is valid. Otherwise, returns false.\n */\n\n\n DOMPurify.isValidAttribute = function (tag, attr, value) {\n /* Initialize shared config vars if necessary. */\n if (!CONFIG) {\n _parseConfig({});\n }\n\n const lcTag = transformCaseFunc(tag);\n const lcName = transformCaseFunc(attr);\n return _isValidAttribute(lcTag, lcName, value);\n };\n /**\n * AddHook\n * Public method to add DOMPurify hooks\n *\n * @param {String} entryPoint entry point for the hook to add\n * @param {Function} hookFunction function to execute\n */\n\n\n DOMPurify.addHook = function (entryPoint, hookFunction) {\n if (typeof hookFunction !== 'function') {\n return;\n }\n\n hooks[entryPoint] = hooks[entryPoint] || [];\n arrayPush(hooks[entryPoint], hookFunction);\n };\n /**\n * RemoveHook\n * Public method to remove a DOMPurify hook at a given entryPoint\n * (pops it from the stack of hooks if more are present)\n *\n * @param {String} entryPoint entry point for the hook to remove\n * @return {Function} removed(popped) hook\n */\n\n\n DOMPurify.removeHook = function (entryPoint) {\n if (hooks[entryPoint]) {\n return arrayPop(hooks[entryPoint]);\n }\n };\n /**\n * RemoveHooks\n * Public method to remove all DOMPurify hooks at a given entryPoint\n *\n * @param {String} entryPoint entry point for the hooks to remove\n */\n\n\n DOMPurify.removeHooks = function (entryPoint) {\n if (hooks[entryPoint]) {\n hooks[entryPoint] = [];\n }\n };\n /**\n * RemoveAllHooks\n * Public method to remove all DOMPurify hooks\n *\n */\n\n\n DOMPurify.removeAllHooks = function () {\n hooks = {};\n };\n\n return DOMPurify;\n }\n\n var purify = createDOMPurify();\n\n return purify;\n\n}));\n//# sourceMappingURL=purify.js.map\n","/*!\n * escape-html\n * Copyright(c) 2012-2013 TJ Holowaychuk\n * Copyright(c) 2015 Andreas Lubbe\n * Copyright(c) 2015 Tiancheng \"Timothy\" Gu\n * MIT Licensed\n */\n\n'use strict';\n\n/**\n * Module variables.\n * @private\n */\n\nvar matchHtmlRegExp = /[\"'&<>]/;\n\n/**\n * Module exports.\n * @public\n */\n\nmodule.exports = escapeHtml;\n\n/**\n * Escape special characters in the given string of html.\n *\n * @param {string} string The string to escape for inserting into HTML\n * @return {string}\n * @public\n */\n\nfunction escapeHtml(string) {\n var str = '' + string;\n var match = matchHtmlRegExp.exec(str);\n\n if (!match) {\n return str;\n }\n\n var escape;\n var html = '';\n var index = 0;\n var lastIndex = 0;\n\n for (index = match.index; index < str.length; index++) {\n switch (str.charCodeAt(index)) {\n case 34: // \"\n escape = '"';\n break;\n case 38: // &\n escape = '&';\n break;\n case 39: // '\n escape = ''';\n break;\n case 60: // <\n escape = '<';\n break;\n case 62: // >\n escape = '>';\n break;\n default:\n continue;\n }\n\n if (lastIndex !== index) {\n html += str.substring(lastIndex, index);\n }\n\n lastIndex = index + 1;\n html += escape;\n }\n\n return lastIndex !== index\n ? html + str.substring(lastIndex, index)\n : html;\n}\n","/*!\n * Vue.js v2.7.14\n * (c) 2014-2022 Evan You\n * Released under the MIT License.\n */\nvar emptyObject = Object.freeze({});\nvar isArray = Array.isArray;\n// These helpers produce better VM code in JS engines due to their\n// explicitness and function inlining.\nfunction isUndef(v) {\n return v === undefined || v === null;\n}\nfunction isDef(v) {\n return v !== undefined && v !== null;\n}\nfunction isTrue(v) {\n return v === true;\n}\nfunction isFalse(v) {\n return v === false;\n}\n/**\n * Check if value is primitive.\n */\nfunction isPrimitive(value) {\n return (typeof value === 'string' ||\n typeof value === 'number' ||\n // $flow-disable-line\n typeof value === 'symbol' ||\n typeof value === 'boolean');\n}\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n/**\n * Quick object check - this is primarily used to tell\n * objects from primitive values when we know the value\n * is a JSON-compliant type.\n */\nfunction isObject(obj) {\n return obj !== null && typeof obj === 'object';\n}\n/**\n * Get the raw type string of a value, e.g., [object Object].\n */\nvar _toString = Object.prototype.toString;\nfunction toRawType(value) {\n return _toString.call(value).slice(8, -1);\n}\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nfunction isPlainObject(obj) {\n return _toString.call(obj) === '[object Object]';\n}\nfunction isRegExp(v) {\n return _toString.call(v) === '[object RegExp]';\n}\n/**\n * Check if val is a valid array index.\n */\nfunction isValidArrayIndex(val) {\n var n = parseFloat(String(val));\n return n >= 0 && Math.floor(n) === n && isFinite(val);\n}\nfunction isPromise(val) {\n return (isDef(val) &&\n typeof val.then === 'function' &&\n typeof val.catch === 'function');\n}\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction toString(val) {\n return val == null\n ? ''\n : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString)\n ? JSON.stringify(val, null, 2)\n : String(val);\n}\n/**\n * Convert an input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber(val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n;\n}\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap(str, expectsLowerCase) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase ? function (val) { return map[val.toLowerCase()]; } : function (val) { return map[val]; };\n}\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n/**\n * Check if an attribute is a reserved attribute.\n */\nvar isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');\n/**\n * Remove an item from an array.\n */\nfunction remove$2(arr, item) {\n var len = arr.length;\n if (len) {\n // fast path for the only / last item\n if (item === arr[len - 1]) {\n arr.length = len - 1;\n return;\n }\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1);\n }\n }\n}\n/**\n * Check whether an object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn(obj, key) {\n return hasOwnProperty.call(obj, key);\n}\n/**\n * Create a cached version of a pure function.\n */\nfunction cached(fn) {\n var cache = Object.create(null);\n return function cachedFn(str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str));\n };\n}\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return (c ? c.toUpperCase() : ''); });\n});\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1);\n});\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /\\B([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str.replace(hyphenateRE, '-$1').toLowerCase();\n});\n/**\n * Simple bind polyfill for environments that do not support it,\n * e.g., PhantomJS 1.x. Technically, we don't need this anymore\n * since native bind is now performant enough in most browsers.\n * But removing it would mean breaking code that was able to run in\n * PhantomJS 1.x, so this must be kept for backward compatibility.\n */\n/* istanbul ignore next */\nfunction polyfillBind(fn, ctx) {\n function boundFn(a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx);\n }\n boundFn._length = fn.length;\n return boundFn;\n}\nfunction nativeBind(fn, ctx) {\n return fn.bind(ctx);\n}\n// @ts-expect-error bind cannot be `undefined`\nvar bind = Function.prototype.bind ? nativeBind : polyfillBind;\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray(list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret;\n}\n/**\n * Mix properties into target object.\n */\nfunction extend(to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to;\n}\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject(arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res;\n}\n/* eslint-disable no-unused-vars */\n/**\n * Perform no operation.\n * Stubbing args to make Flow happy without leaving useless transpiled code\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).\n */\nfunction noop(a, b, c) { }\n/**\n * Always return false.\n */\nvar no = function (a, b, c) { return false; };\n/* eslint-enable no-unused-vars */\n/**\n * Return the same value.\n */\nvar identity = function (_) { return _; };\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual(a, b) {\n if (a === b)\n return true;\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return (a.length === b.length &&\n a.every(function (e, i) {\n return looseEqual(e, b[i]);\n }));\n }\n else if (a instanceof Date && b instanceof Date) {\n return a.getTime() === b.getTime();\n }\n else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return (keysA.length === keysB.length &&\n keysA.every(function (key) {\n return looseEqual(a[key], b[key]);\n }));\n }\n else {\n /* istanbul ignore next */\n return false;\n }\n }\n catch (e) {\n /* istanbul ignore next */\n return false;\n }\n }\n else if (!isObjectA && !isObjectB) {\n return String(a) === String(b);\n }\n else {\n return false;\n }\n}\n/**\n * Return the first index at which a loosely equal value can be\n * found in the array (if value is a plain object, the array must\n * contain an object of the same shape), or -1 if it is not present.\n */\nfunction looseIndexOf(arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val))\n return i;\n }\n return -1;\n}\n/**\n * Ensure a function is called only once.\n */\nfunction once(fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn.apply(this, arguments);\n }\n };\n}\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is#polyfill\nfunction hasChanged(x, y) {\n if (x === y) {\n return x === 0 && 1 / x !== 1 / y;\n }\n else {\n return x === x || y === y;\n }\n}\n\nvar SSR_ATTR = 'data-server-rendered';\nvar ASSET_TYPES = ['component', 'directive', 'filter'];\nvar LIFECYCLE_HOOKS = [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated',\n 'errorCaptured',\n 'serverPrefetch',\n 'renderTracked',\n 'renderTriggered'\n];\n\nvar config = {\n /**\n * Option merge strategies (used in core/util/options)\n */\n // $flow-disable-line\n optionMergeStrategies: Object.create(null),\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n /**\n * Show production mode tip message on boot?\n */\n productionTip: process.env.NODE_ENV !== 'production',\n /**\n * Whether to enable devtools\n */\n devtools: process.env.NODE_ENV !== 'production',\n /**\n * Whether to record perf\n */\n performance: false,\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n /**\n * Custom user key aliases for v-on\n */\n // $flow-disable-line\n keyCodes: Object.create(null),\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: no,\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n /**\n * Perform updates asynchronously. Intended to be used by Vue Test Utils\n * This will significantly reduce performance if set to false.\n */\n async: true,\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: LIFECYCLE_HOOKS\n};\n\n/**\n * unicode letters used for parsing html tags, component names and property paths.\n * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname\n * skipping \\u10000-\\uEFFFF due to it freezing up PhantomJS\n */\nvar unicodeRegExp = /a-zA-Z\\u00B7\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u203F-\\u2040\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD/;\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved(str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5f;\n}\n/**\n * Define a property.\n */\nfunction def(obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n/**\n * Parse simple path.\n */\nvar bailRE = new RegExp(\"[^\".concat(unicodeRegExp.source, \".$_\\\\d]\"));\nfunction parsePath(path) {\n if (bailRE.test(path)) {\n return;\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj)\n return;\n obj = obj[segments[i]];\n }\n return obj;\n };\n}\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nUA && UA.indexOf('android') > 0;\nvar isIOS = UA && /iphone|ipad|ipod|ios/.test(UA);\nUA && /chrome\\/\\d+/.test(UA) && !isEdge;\nUA && /phantomjs/.test(UA);\nvar isFF = UA && UA.match(/firefox\\/(\\d+)/);\n// Firefox has a \"watch\" function on Object.prototype...\n// @ts-expect-error firebox support\nvar nativeWatch = {}.watch;\nvar supportsPassive = false;\nif (inBrowser) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', {\n get: function () {\n /* istanbul ignore next */\n supportsPassive = true;\n }\n }); // https://github.com/facebook/flow/issues/285\n window.addEventListener('test-passive', null, opts);\n }\n catch (e) { }\n}\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer =\n global['process'] && global['process'].env.VUE_ENV === 'server';\n }\n else {\n _isServer = false;\n }\n }\n return _isServer;\n};\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n/* istanbul ignore next */\nfunction isNative(Ctor) {\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString());\n}\nvar hasSymbol = typeof Symbol !== 'undefined' &&\n isNative(Symbol) &&\n typeof Reflect !== 'undefined' &&\n isNative(Reflect.ownKeys);\nvar _Set; // $flow-disable-line\n/* istanbul ignore if */ if (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n}\nelse {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = /** @class */ (function () {\n function Set() {\n this.set = Object.create(null);\n }\n Set.prototype.has = function (key) {\n return this.set[key] === true;\n };\n Set.prototype.add = function (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function () {\n this.set = Object.create(null);\n };\n return Set;\n }());\n}\n\nvar currentInstance = null;\n/**\n * This is exposed for compatibility with v3 (e.g. some functions in VueUse\n * relies on it). Do not use this internally, just use `currentInstance`.\n *\n * @internal this function needs manual type declaration because it relies\n * on previously manually authored types from Vue 2\n */\nfunction getCurrentInstance() {\n return currentInstance && { proxy: currentInstance };\n}\n/**\n * @internal\n */\nfunction setCurrentInstance(vm) {\n if (vm === void 0) { vm = null; }\n if (!vm)\n currentInstance && currentInstance._scope.off();\n currentInstance = vm;\n vm && vm._scope.on();\n}\n\n/**\n * @internal\n */\nvar VNode = /** @class */ (function () {\n function VNode(tag, data, children, text, elm, context, componentOptions, asyncFactory) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.fnContext = undefined;\n this.fnOptions = undefined;\n this.fnScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n }\n Object.defineProperty(VNode.prototype, \"child\", {\n // DEPRECATED: alias for componentInstance for backwards compat.\n /* istanbul ignore next */\n get: function () {\n return this.componentInstance;\n },\n enumerable: false,\n configurable: true\n });\n return VNode;\n}());\nvar createEmptyVNode = function (text) {\n if (text === void 0) { text = ''; }\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node;\n};\nfunction createTextVNode(val) {\n return new VNode(undefined, undefined, undefined, String(val));\n}\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode(vnode) {\n var cloned = new VNode(vnode.tag, vnode.data, \n // #7975\n // clone children array to avoid mutating original in case of cloning\n // a child.\n vnode.children && vnode.children.slice(), vnode.text, vnode.elm, vnode.context, vnode.componentOptions, vnode.asyncFactory);\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.fnContext = vnode.fnContext;\n cloned.fnOptions = vnode.fnOptions;\n cloned.fnScopeId = vnode.fnScopeId;\n cloned.asyncMeta = vnode.asyncMeta;\n cloned.isCloned = true;\n return cloned;\n}\n\n/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n\r\nvar __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\n\nvar uid$2 = 0;\nvar pendingCleanupDeps = [];\nvar cleanupDeps = function () {\n for (var i = 0; i < pendingCleanupDeps.length; i++) {\n var dep = pendingCleanupDeps[i];\n dep.subs = dep.subs.filter(function (s) { return s; });\n dep._pending = false;\n }\n pendingCleanupDeps.length = 0;\n};\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n * @internal\n */\nvar Dep = /** @class */ (function () {\n function Dep() {\n // pending subs cleanup\n this._pending = false;\n this.id = uid$2++;\n this.subs = [];\n }\n Dep.prototype.addSub = function (sub) {\n this.subs.push(sub);\n };\n Dep.prototype.removeSub = function (sub) {\n // #12696 deps with massive amount of subscribers are extremely slow to\n // clean up in Chromium\n // to workaround this, we unset the sub for now, and clear them on\n // next scheduler flush.\n this.subs[this.subs.indexOf(sub)] = null;\n if (!this._pending) {\n this._pending = true;\n pendingCleanupDeps.push(this);\n }\n };\n Dep.prototype.depend = function (info) {\n if (Dep.target) {\n Dep.target.addDep(this);\n if (process.env.NODE_ENV !== 'production' && info && Dep.target.onTrack) {\n Dep.target.onTrack(__assign({ effect: Dep.target }, info));\n }\n }\n };\n Dep.prototype.notify = function (info) {\n // stabilize the subscriber list first\n var subs = this.subs.filter(function (s) { return s; });\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n // subs aren't sorted in scheduler if not running async\n // we need to sort them now to make sure they fire in correct\n // order\n subs.sort(function (a, b) { return a.id - b.id; });\n }\n for (var i = 0, l = subs.length; i < l; i++) {\n var sub = subs[i];\n if (process.env.NODE_ENV !== 'production' && info) {\n sub.onTrigger &&\n sub.onTrigger(__assign({ effect: subs[i] }, info));\n }\n sub.update();\n }\n };\n return Dep;\n}());\n// The current target watcher being evaluated.\n// This is globally unique because only one watcher\n// can be evaluated at a time.\nDep.target = null;\nvar targetStack = [];\nfunction pushTarget(target) {\n targetStack.push(target);\n Dep.target = target;\n}\nfunction popTarget() {\n targetStack.pop();\n Dep.target = targetStack[targetStack.length - 1];\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);\nvar methodsToPatch = [\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n];\n/**\n * Intercept mutating methods and emit events\n */\nmethodsToPatch.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break;\n case 'splice':\n inserted = args.slice(2);\n break;\n }\n if (inserted)\n ob.observeArray(inserted);\n // notify change\n if (process.env.NODE_ENV !== 'production') {\n ob.dep.notify({\n type: \"array mutation\" /* TriggerOpTypes.ARRAY_MUTATION */,\n target: this,\n key: method\n });\n }\n else {\n ob.dep.notify();\n }\n return result;\n });\n});\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\nvar NO_INIITIAL_VALUE = {};\n/**\n * In some cases we may want to disable observation inside a component's\n * update computation.\n */\nvar shouldObserve = true;\nfunction toggleObserving(value) {\n shouldObserve = value;\n}\n// ssr mock dep\nvar mockDep = {\n notify: noop,\n depend: noop,\n addSub: noop,\n removeSub: noop\n};\n/**\n * Observer class that is attached to each observed\n * object. Once attached, the observer converts the target\n * object's property keys into getter/setters that\n * collect dependencies and dispatch updates.\n */\nvar Observer = /** @class */ (function () {\n function Observer(value, shallow, mock) {\n if (shallow === void 0) { shallow = false; }\n if (mock === void 0) { mock = false; }\n this.value = value;\n this.shallow = shallow;\n this.mock = mock;\n // this.value = value\n this.dep = mock ? mockDep : new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (isArray(value)) {\n if (!mock) {\n if (hasProto) {\n value.__proto__ = arrayMethods;\n /* eslint-enable no-proto */\n }\n else {\n for (var i = 0, l = arrayKeys.length; i < l; i++) {\n var key = arrayKeys[i];\n def(value, key, arrayMethods[key]);\n }\n }\n }\n if (!shallow) {\n this.observeArray(value);\n }\n }\n else {\n /**\n * Walk through all properties and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\n var keys = Object.keys(value);\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n defineReactive(value, key, NO_INIITIAL_VALUE, undefined, shallow, mock);\n }\n }\n }\n /**\n * Observe a list of Array items.\n */\n Observer.prototype.observeArray = function (value) {\n for (var i = 0, l = value.length; i < l; i++) {\n observe(value[i], false, this.mock);\n }\n };\n return Observer;\n}());\n// helpers\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe(value, shallow, ssrMockReactivity) {\n if (value && hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n return value.__ob__;\n }\n if (shouldObserve &&\n (ssrMockReactivity || !isServerRendering()) &&\n (isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value.__v_skip /* ReactiveFlags.SKIP */ &&\n !isRef(value) &&\n !(value instanceof VNode)) {\n return new Observer(value, shallow, ssrMockReactivity);\n }\n}\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive(obj, key, val, customSetter, shallow, mock) {\n var dep = new Dep();\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return;\n }\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n var setter = property && property.set;\n if ((!getter || setter) &&\n (val === NO_INIITIAL_VALUE || arguments.length === 2)) {\n val = obj[key];\n }\n var childOb = !shallow && observe(val, false, mock);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter() {\n var value = getter ? getter.call(obj) : val;\n if (Dep.target) {\n if (process.env.NODE_ENV !== 'production') {\n dep.depend({\n target: obj,\n type: \"get\" /* TrackOpTypes.GET */,\n key: key\n });\n }\n else {\n dep.depend();\n }\n if (childOb) {\n childOb.dep.depend();\n if (isArray(value)) {\n dependArray(value);\n }\n }\n }\n return isRef(value) && !shallow ? value.value : value;\n },\n set: function reactiveSetter(newVal) {\n var value = getter ? getter.call(obj) : val;\n if (!hasChanged(value, newVal)) {\n return;\n }\n if (process.env.NODE_ENV !== 'production' && customSetter) {\n customSetter();\n }\n if (setter) {\n setter.call(obj, newVal);\n }\n else if (getter) {\n // #7981: for accessor properties without setter\n return;\n }\n else if (!shallow && isRef(value) && !isRef(newVal)) {\n value.value = newVal;\n return;\n }\n else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal, false, mock);\n if (process.env.NODE_ENV !== 'production') {\n dep.notify({\n type: \"set\" /* TriggerOpTypes.SET */,\n target: obj,\n key: key,\n newValue: newVal,\n oldValue: value\n });\n }\n else {\n dep.notify();\n }\n }\n });\n return dep;\n}\nfunction set(target, key, val) {\n if (process.env.NODE_ENV !== 'production' && (isUndef(target) || isPrimitive(target))) {\n warn(\"Cannot set reactive property on undefined, null, or primitive value: \".concat(target));\n }\n if (isReadonly(target)) {\n process.env.NODE_ENV !== 'production' && warn(\"Set operation on key \\\"\".concat(key, \"\\\" failed: target is readonly.\"));\n return;\n }\n var ob = target.__ob__;\n if (isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n // when mocking for SSR, array methods are not hijacked\n if (ob && !ob.shallow && ob.mock) {\n observe(val, false, true);\n }\n return val;\n }\n if (key in target && !(key in Object.prototype)) {\n target[key] = val;\n return val;\n }\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' &&\n warn('Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.');\n return val;\n }\n if (!ob) {\n target[key] = val;\n return val;\n }\n defineReactive(ob.value, key, val, undefined, ob.shallow, ob.mock);\n if (process.env.NODE_ENV !== 'production') {\n ob.dep.notify({\n type: \"add\" /* TriggerOpTypes.ADD */,\n target: target,\n key: key,\n newValue: val,\n oldValue: undefined\n });\n }\n else {\n ob.dep.notify();\n }\n return val;\n}\nfunction del(target, key) {\n if (process.env.NODE_ENV !== 'production' && (isUndef(target) || isPrimitive(target))) {\n warn(\"Cannot delete reactive property on undefined, null, or primitive value: \".concat(target));\n }\n if (isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return;\n }\n var ob = target.__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' &&\n warn('Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.');\n return;\n }\n if (isReadonly(target)) {\n process.env.NODE_ENV !== 'production' &&\n warn(\"Delete operation on key \\\"\".concat(key, \"\\\" failed: target is readonly.\"));\n return;\n }\n if (!hasOwn(target, key)) {\n return;\n }\n delete target[key];\n if (!ob) {\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n ob.dep.notify({\n type: \"delete\" /* TriggerOpTypes.DELETE */,\n target: target,\n key: key\n });\n }\n else {\n ob.dep.notify();\n }\n}\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray(value) {\n for (var e = void 0, i = 0, l = value.length; i < l; i++) {\n e = value[i];\n if (e && e.__ob__) {\n e.__ob__.dep.depend();\n }\n if (isArray(e)) {\n dependArray(e);\n }\n }\n}\n\nfunction reactive(target) {\n makeReactive(target, false);\n return target;\n}\n/**\n * Return a shallowly-reactive copy of the original object, where only the root\n * level properties are reactive. It also does not auto-unwrap refs (even at the\n * root level).\n */\nfunction shallowReactive(target) {\n makeReactive(target, true);\n def(target, \"__v_isShallow\" /* ReactiveFlags.IS_SHALLOW */, true);\n return target;\n}\nfunction makeReactive(target, shallow) {\n // if trying to observe a readonly proxy, return the readonly version.\n if (!isReadonly(target)) {\n if (process.env.NODE_ENV !== 'production') {\n if (isArray(target)) {\n warn(\"Avoid using Array as root value for \".concat(shallow ? \"shallowReactive()\" : \"reactive()\", \" as it cannot be tracked in watch() or watchEffect(). Use \").concat(shallow ? \"shallowRef()\" : \"ref()\", \" instead. This is a Vue-2-only limitation.\"));\n }\n var existingOb = target && target.__ob__;\n if (existingOb && existingOb.shallow !== shallow) {\n warn(\"Target is already a \".concat(existingOb.shallow ? \"\" : \"non-\", \"shallow reactive object, and cannot be converted to \").concat(shallow ? \"\" : \"non-\", \"shallow.\"));\n }\n }\n var ob = observe(target, shallow, isServerRendering() /* ssr mock reactivity */);\n if (process.env.NODE_ENV !== 'production' && !ob) {\n if (target == null || isPrimitive(target)) {\n warn(\"value cannot be made reactive: \".concat(String(target)));\n }\n if (isCollectionType(target)) {\n warn(\"Vue 2 does not support reactive collection types such as Map or Set.\");\n }\n }\n }\n}\nfunction isReactive(value) {\n if (isReadonly(value)) {\n return isReactive(value[\"__v_raw\" /* ReactiveFlags.RAW */]);\n }\n return !!(value && value.__ob__);\n}\nfunction isShallow(value) {\n return !!(value && value.__v_isShallow);\n}\nfunction isReadonly(value) {\n return !!(value && value.__v_isReadonly);\n}\nfunction isProxy(value) {\n return isReactive(value) || isReadonly(value);\n}\nfunction toRaw(observed) {\n var raw = observed && observed[\"__v_raw\" /* ReactiveFlags.RAW */];\n return raw ? toRaw(raw) : observed;\n}\nfunction markRaw(value) {\n // non-extensible objects won't be observed anyway\n if (Object.isExtensible(value)) {\n def(value, \"__v_skip\" /* ReactiveFlags.SKIP */, true);\n }\n return value;\n}\n/**\n * @internal\n */\nfunction isCollectionType(value) {\n var type = toRawType(value);\n return (type === 'Map' || type === 'WeakMap' || type === 'Set' || type === 'WeakSet');\n}\n\n/**\n * @internal\n */\nvar RefFlag = \"__v_isRef\";\nfunction isRef(r) {\n return !!(r && r.__v_isRef === true);\n}\nfunction ref$1(value) {\n return createRef(value, false);\n}\nfunction shallowRef(value) {\n return createRef(value, true);\n}\nfunction createRef(rawValue, shallow) {\n if (isRef(rawValue)) {\n return rawValue;\n }\n var ref = {};\n def(ref, RefFlag, true);\n def(ref, \"__v_isShallow\" /* ReactiveFlags.IS_SHALLOW */, shallow);\n def(ref, 'dep', defineReactive(ref, 'value', rawValue, null, shallow, isServerRendering()));\n return ref;\n}\nfunction triggerRef(ref) {\n if (process.env.NODE_ENV !== 'production' && !ref.dep) {\n warn(\"received object is not a triggerable ref.\");\n }\n if (process.env.NODE_ENV !== 'production') {\n ref.dep &&\n ref.dep.notify({\n type: \"set\" /* TriggerOpTypes.SET */,\n target: ref,\n key: 'value'\n });\n }\n else {\n ref.dep && ref.dep.notify();\n }\n}\nfunction unref(ref) {\n return isRef(ref) ? ref.value : ref;\n}\nfunction proxyRefs(objectWithRefs) {\n if (isReactive(objectWithRefs)) {\n return objectWithRefs;\n }\n var proxy = {};\n var keys = Object.keys(objectWithRefs);\n for (var i = 0; i < keys.length; i++) {\n proxyWithRefUnwrap(proxy, objectWithRefs, keys[i]);\n }\n return proxy;\n}\nfunction proxyWithRefUnwrap(target, source, key) {\n Object.defineProperty(target, key, {\n enumerable: true,\n configurable: true,\n get: function () {\n var val = source[key];\n if (isRef(val)) {\n return val.value;\n }\n else {\n var ob = val && val.__ob__;\n if (ob)\n ob.dep.depend();\n return val;\n }\n },\n set: function (value) {\n var oldValue = source[key];\n if (isRef(oldValue) && !isRef(value)) {\n oldValue.value = value;\n }\n else {\n source[key] = value;\n }\n }\n });\n}\nfunction customRef(factory) {\n var dep = new Dep();\n var _a = factory(function () {\n if (process.env.NODE_ENV !== 'production') {\n dep.depend({\n target: ref,\n type: \"get\" /* TrackOpTypes.GET */,\n key: 'value'\n });\n }\n else {\n dep.depend();\n }\n }, function () {\n if (process.env.NODE_ENV !== 'production') {\n dep.notify({\n target: ref,\n type: \"set\" /* TriggerOpTypes.SET */,\n key: 'value'\n });\n }\n else {\n dep.notify();\n }\n }), get = _a.get, set = _a.set;\n var ref = {\n get value() {\n return get();\n },\n set value(newVal) {\n set(newVal);\n }\n };\n def(ref, RefFlag, true);\n return ref;\n}\nfunction toRefs(object) {\n if (process.env.NODE_ENV !== 'production' && !isReactive(object)) {\n warn(\"toRefs() expects a reactive object but received a plain one.\");\n }\n var ret = isArray(object) ? new Array(object.length) : {};\n for (var key in object) {\n ret[key] = toRef(object, key);\n }\n return ret;\n}\nfunction toRef(object, key, defaultValue) {\n var val = object[key];\n if (isRef(val)) {\n return val;\n }\n var ref = {\n get value() {\n var val = object[key];\n return val === undefined ? defaultValue : val;\n },\n set value(newVal) {\n object[key] = newVal;\n }\n };\n def(ref, RefFlag, true);\n return ref;\n}\n\nvar rawToReadonlyFlag = \"__v_rawToReadonly\";\nvar rawToShallowReadonlyFlag = \"__v_rawToShallowReadonly\";\nfunction readonly(target) {\n return createReadonly(target, false);\n}\nfunction createReadonly(target, shallow) {\n if (!isPlainObject(target)) {\n if (process.env.NODE_ENV !== 'production') {\n if (isArray(target)) {\n warn(\"Vue 2 does not support readonly arrays.\");\n }\n else if (isCollectionType(target)) {\n warn(\"Vue 2 does not support readonly collection types such as Map or Set.\");\n }\n else {\n warn(\"value cannot be made readonly: \".concat(typeof target));\n }\n }\n return target;\n }\n if (process.env.NODE_ENV !== 'production' && !Object.isExtensible(target)) {\n warn(\"Vue 2 does not support creating readonly proxy for non-extensible object.\");\n }\n // already a readonly object\n if (isReadonly(target)) {\n return target;\n }\n // already has a readonly proxy\n var existingFlag = shallow ? rawToShallowReadonlyFlag : rawToReadonlyFlag;\n var existingProxy = target[existingFlag];\n if (existingProxy) {\n return existingProxy;\n }\n var proxy = Object.create(Object.getPrototypeOf(target));\n def(target, existingFlag, proxy);\n def(proxy, \"__v_isReadonly\" /* ReactiveFlags.IS_READONLY */, true);\n def(proxy, \"__v_raw\" /* ReactiveFlags.RAW */, target);\n if (isRef(target)) {\n def(proxy, RefFlag, true);\n }\n if (shallow || isShallow(target)) {\n def(proxy, \"__v_isShallow\" /* ReactiveFlags.IS_SHALLOW */, true);\n }\n var keys = Object.keys(target);\n for (var i = 0; i < keys.length; i++) {\n defineReadonlyProperty(proxy, target, keys[i], shallow);\n }\n return proxy;\n}\nfunction defineReadonlyProperty(proxy, target, key, shallow) {\n Object.defineProperty(proxy, key, {\n enumerable: true,\n configurable: true,\n get: function () {\n var val = target[key];\n return shallow || !isPlainObject(val) ? val : readonly(val);\n },\n set: function () {\n process.env.NODE_ENV !== 'production' &&\n warn(\"Set operation on key \\\"\".concat(key, \"\\\" failed: target is readonly.\"));\n }\n });\n}\n/**\n * Returns a reactive-copy of the original object, where only the root level\n * properties are readonly, and does NOT unwrap refs nor recursively convert\n * returned properties.\n * This is used for creating the props proxy object for stateful components.\n */\nfunction shallowReadonly(target) {\n return createReadonly(target, true);\n}\n\nfunction computed(getterOrOptions, debugOptions) {\n var getter;\n var setter;\n var onlyGetter = isFunction(getterOrOptions);\n if (onlyGetter) {\n getter = getterOrOptions;\n setter = process.env.NODE_ENV !== 'production'\n ? function () {\n warn('Write operation failed: computed value is readonly');\n }\n : noop;\n }\n else {\n getter = getterOrOptions.get;\n setter = getterOrOptions.set;\n }\n var watcher = isServerRendering()\n ? null\n : new Watcher(currentInstance, getter, noop, { lazy: true });\n if (process.env.NODE_ENV !== 'production' && watcher && debugOptions) {\n watcher.onTrack = debugOptions.onTrack;\n watcher.onTrigger = debugOptions.onTrigger;\n }\n var ref = {\n // some libs rely on the presence effect for checking computed refs\n // from normal refs, but the implementation doesn't matter\n effect: watcher,\n get value() {\n if (watcher) {\n if (watcher.dirty) {\n watcher.evaluate();\n }\n if (Dep.target) {\n if (process.env.NODE_ENV !== 'production' && Dep.target.onTrack) {\n Dep.target.onTrack({\n effect: Dep.target,\n target: ref,\n type: \"get\" /* TrackOpTypes.GET */,\n key: 'value'\n });\n }\n watcher.depend();\n }\n return watcher.value;\n }\n else {\n return getter();\n }\n },\n set value(newVal) {\n setter(newVal);\n }\n };\n def(ref, RefFlag, true);\n def(ref, \"__v_isReadonly\" /* ReactiveFlags.IS_READONLY */, onlyGetter);\n return ref;\n}\n\nvar WATCHER = \"watcher\";\nvar WATCHER_CB = \"\".concat(WATCHER, \" callback\");\nvar WATCHER_GETTER = \"\".concat(WATCHER, \" getter\");\nvar WATCHER_CLEANUP = \"\".concat(WATCHER, \" cleanup\");\n// Simple effect.\nfunction watchEffect(effect, options) {\n return doWatch(effect, null, options);\n}\nfunction watchPostEffect(effect, options) {\n return doWatch(effect, null, (process.env.NODE_ENV !== 'production'\n ? __assign(__assign({}, options), { flush: 'post' }) : { flush: 'post' }));\n}\nfunction watchSyncEffect(effect, options) {\n return doWatch(effect, null, (process.env.NODE_ENV !== 'production'\n ? __assign(__assign({}, options), { flush: 'sync' }) : { flush: 'sync' }));\n}\n// initial value for watchers to trigger on undefined initial values\nvar INITIAL_WATCHER_VALUE = {};\n// implementation\nfunction watch(source, cb, options) {\n if (process.env.NODE_ENV !== 'production' && typeof cb !== 'function') {\n warn(\"`watch(fn, options?)` signature has been moved to a separate API. \" +\n \"Use `watchEffect(fn, options?)` instead. `watch` now only \" +\n \"supports `watch(source, cb, options?) signature.\");\n }\n return doWatch(source, cb, options);\n}\nfunction doWatch(source, cb, _a) {\n var _b = _a === void 0 ? emptyObject : _a, immediate = _b.immediate, deep = _b.deep, _c = _b.flush, flush = _c === void 0 ? 'pre' : _c, onTrack = _b.onTrack, onTrigger = _b.onTrigger;\n if (process.env.NODE_ENV !== 'production' && !cb) {\n if (immediate !== undefined) {\n warn(\"watch() \\\"immediate\\\" option is only respected when using the \" +\n \"watch(source, callback, options?) signature.\");\n }\n if (deep !== undefined) {\n warn(\"watch() \\\"deep\\\" option is only respected when using the \" +\n \"watch(source, callback, options?) signature.\");\n }\n }\n var warnInvalidSource = function (s) {\n warn(\"Invalid watch source: \".concat(s, \". A watch source can only be a getter/effect \") +\n \"function, a ref, a reactive object, or an array of these types.\");\n };\n var instance = currentInstance;\n var call = function (fn, type, args) {\n if (args === void 0) { args = null; }\n return invokeWithErrorHandling(fn, null, args, instance, type);\n };\n var getter;\n var forceTrigger = false;\n var isMultiSource = false;\n if (isRef(source)) {\n getter = function () { return source.value; };\n forceTrigger = isShallow(source);\n }\n else if (isReactive(source)) {\n getter = function () {\n source.__ob__.dep.depend();\n return source;\n };\n deep = true;\n }\n else if (isArray(source)) {\n isMultiSource = true;\n forceTrigger = source.some(function (s) { return isReactive(s) || isShallow(s); });\n getter = function () {\n return source.map(function (s) {\n if (isRef(s)) {\n return s.value;\n }\n else if (isReactive(s)) {\n return traverse(s);\n }\n else if (isFunction(s)) {\n return call(s, WATCHER_GETTER);\n }\n else {\n process.env.NODE_ENV !== 'production' && warnInvalidSource(s);\n }\n });\n };\n }\n else if (isFunction(source)) {\n if (cb) {\n // getter with cb\n getter = function () { return call(source, WATCHER_GETTER); };\n }\n else {\n // no cb -> simple effect\n getter = function () {\n if (instance && instance._isDestroyed) {\n return;\n }\n if (cleanup) {\n cleanup();\n }\n return call(source, WATCHER, [onCleanup]);\n };\n }\n }\n else {\n getter = noop;\n process.env.NODE_ENV !== 'production' && warnInvalidSource(source);\n }\n if (cb && deep) {\n var baseGetter_1 = getter;\n getter = function () { return traverse(baseGetter_1()); };\n }\n var cleanup;\n var onCleanup = function (fn) {\n cleanup = watcher.onStop = function () {\n call(fn, WATCHER_CLEANUP);\n };\n };\n // in SSR there is no need to setup an actual effect, and it should be noop\n // unless it's eager\n if (isServerRendering()) {\n // we will also not call the invalidate callback (+ runner is not set up)\n onCleanup = noop;\n if (!cb) {\n getter();\n }\n else if (immediate) {\n call(cb, WATCHER_CB, [\n getter(),\n isMultiSource ? [] : undefined,\n onCleanup\n ]);\n }\n return noop;\n }\n var watcher = new Watcher(currentInstance, getter, noop, {\n lazy: true\n });\n watcher.noRecurse = !cb;\n var oldValue = isMultiSource ? [] : INITIAL_WATCHER_VALUE;\n // overwrite default run\n watcher.run = function () {\n if (!watcher.active) {\n return;\n }\n if (cb) {\n // watch(source, cb)\n var newValue = watcher.get();\n if (deep ||\n forceTrigger ||\n (isMultiSource\n ? newValue.some(function (v, i) {\n return hasChanged(v, oldValue[i]);\n })\n : hasChanged(newValue, oldValue))) {\n // cleanup before running cb again\n if (cleanup) {\n cleanup();\n }\n call(cb, WATCHER_CB, [\n newValue,\n // pass undefined as the old value when it's changed for the first time\n oldValue === INITIAL_WATCHER_VALUE ? undefined : oldValue,\n onCleanup\n ]);\n oldValue = newValue;\n }\n }\n else {\n // watchEffect\n watcher.get();\n }\n };\n if (flush === 'sync') {\n watcher.update = watcher.run;\n }\n else if (flush === 'post') {\n watcher.post = true;\n watcher.update = function () { return queueWatcher(watcher); };\n }\n else {\n // pre\n watcher.update = function () {\n if (instance && instance === currentInstance && !instance._isMounted) {\n // pre-watcher triggered before\n var buffer = instance._preWatchers || (instance._preWatchers = []);\n if (buffer.indexOf(watcher) < 0)\n buffer.push(watcher);\n }\n else {\n queueWatcher(watcher);\n }\n };\n }\n if (process.env.NODE_ENV !== 'production') {\n watcher.onTrack = onTrack;\n watcher.onTrigger = onTrigger;\n }\n // initial run\n if (cb) {\n if (immediate) {\n watcher.run();\n }\n else {\n oldValue = watcher.get();\n }\n }\n else if (flush === 'post' && instance) {\n instance.$once('hook:mounted', function () { return watcher.get(); });\n }\n else {\n watcher.get();\n }\n return function () {\n watcher.teardown();\n };\n}\n\nvar activeEffectScope;\nvar EffectScope = /** @class */ (function () {\n function EffectScope(detached) {\n if (detached === void 0) { detached = false; }\n this.detached = detached;\n /**\n * @internal\n */\n this.active = true;\n /**\n * @internal\n */\n this.effects = [];\n /**\n * @internal\n */\n this.cleanups = [];\n this.parent = activeEffectScope;\n if (!detached && activeEffectScope) {\n this.index =\n (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(this) - 1;\n }\n }\n EffectScope.prototype.run = function (fn) {\n if (this.active) {\n var currentEffectScope = activeEffectScope;\n try {\n activeEffectScope = this;\n return fn();\n }\n finally {\n activeEffectScope = currentEffectScope;\n }\n }\n else if (process.env.NODE_ENV !== 'production') {\n warn(\"cannot run an inactive effect scope.\");\n }\n };\n /**\n * This should only be called on non-detached scopes\n * @internal\n */\n EffectScope.prototype.on = function () {\n activeEffectScope = this;\n };\n /**\n * This should only be called on non-detached scopes\n * @internal\n */\n EffectScope.prototype.off = function () {\n activeEffectScope = this.parent;\n };\n EffectScope.prototype.stop = function (fromParent) {\n if (this.active) {\n var i = void 0, l = void 0;\n for (i = 0, l = this.effects.length; i < l; i++) {\n this.effects[i].teardown();\n }\n for (i = 0, l = this.cleanups.length; i < l; i++) {\n this.cleanups[i]();\n }\n if (this.scopes) {\n for (i = 0, l = this.scopes.length; i < l; i++) {\n this.scopes[i].stop(true);\n }\n }\n // nested scope, dereference from parent to avoid memory leaks\n if (!this.detached && this.parent && !fromParent) {\n // optimized O(1) removal\n var last = this.parent.scopes.pop();\n if (last && last !== this) {\n this.parent.scopes[this.index] = last;\n last.index = this.index;\n }\n }\n this.parent = undefined;\n this.active = false;\n }\n };\n return EffectScope;\n}());\nfunction effectScope(detached) {\n return new EffectScope(detached);\n}\n/**\n * @internal\n */\nfunction recordEffectScope(effect, scope) {\n if (scope === void 0) { scope = activeEffectScope; }\n if (scope && scope.active) {\n scope.effects.push(effect);\n }\n}\nfunction getCurrentScope() {\n return activeEffectScope;\n}\nfunction onScopeDispose(fn) {\n if (activeEffectScope) {\n activeEffectScope.cleanups.push(fn);\n }\n else if (process.env.NODE_ENV !== 'production') {\n warn(\"onScopeDispose() is called when there is no active effect scope\" +\n \" to be associated with.\");\n }\n}\n\nfunction provide(key, value) {\n if (!currentInstance) {\n if (process.env.NODE_ENV !== 'production') {\n warn(\"provide() can only be used inside setup().\");\n }\n }\n else {\n // TS doesn't allow symbol as index type\n resolveProvided(currentInstance)[key] = value;\n }\n}\nfunction resolveProvided(vm) {\n // by default an instance inherits its parent's provides object\n // but when it needs to provide values of its own, it creates its\n // own provides object using parent provides object as prototype.\n // this way in `inject` we can simply look up injections from direct\n // parent and let the prototype chain do the work.\n var existing = vm._provided;\n var parentProvides = vm.$parent && vm.$parent._provided;\n if (parentProvides === existing) {\n return (vm._provided = Object.create(parentProvides));\n }\n else {\n return existing;\n }\n}\nfunction inject(key, defaultValue, treatDefaultAsFactory) {\n if (treatDefaultAsFactory === void 0) { treatDefaultAsFactory = false; }\n // fallback to `currentRenderingInstance` so that this can be called in\n // a functional component\n var instance = currentInstance;\n if (instance) {\n // #2400\n // to support `app.use` plugins,\n // fallback to appContext's `provides` if the instance is at root\n var provides = instance.$parent && instance.$parent._provided;\n if (provides && key in provides) {\n // TS doesn't allow symbol as index type\n return provides[key];\n }\n else if (arguments.length > 1) {\n return treatDefaultAsFactory && isFunction(defaultValue)\n ? defaultValue.call(instance)\n : defaultValue;\n }\n else if (process.env.NODE_ENV !== 'production') {\n warn(\"injection \\\"\".concat(String(key), \"\\\" not found.\"));\n }\n }\n else if (process.env.NODE_ENV !== 'production') {\n warn(\"inject() can only be used inside setup() or functional components.\");\n }\n}\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once,\n capture: capture,\n passive: passive\n };\n});\nfunction createFnInvoker(fns, vm) {\n function invoker() {\n var fns = invoker.fns;\n if (isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n invokeWithErrorHandling(cloned[i], null, arguments, vm, \"v-on handler\");\n }\n }\n else {\n // return handler return value for single handlers\n return invokeWithErrorHandling(fns, null, arguments, vm, \"v-on handler\");\n }\n }\n invoker.fns = fns;\n return invoker;\n}\nfunction updateListeners(on, oldOn, add, remove, createOnceHandler, vm) {\n var name, cur, old, event;\n for (name in on) {\n cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n if (isUndef(cur)) {\n process.env.NODE_ENV !== 'production' &&\n warn(\"Invalid handler for event \\\"\".concat(event.name, \"\\\": got \") + String(cur), vm);\n }\n else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur, vm);\n }\n if (isTrue(event.once)) {\n cur = on[name] = createOnceHandler(event.name, cur, event.capture);\n }\n add(event.name, cur, event.capture, event.passive, event.params);\n }\n else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove(event.name, oldOn[name], event.capture);\n }\n }\n}\n\nfunction mergeVNodeHook(def, hookKey, hook) {\n if (def instanceof VNode) {\n def = def.data.hook || (def.data.hook = {});\n }\n var invoker;\n var oldHook = def[hookKey];\n function wrappedHook() {\n hook.apply(this, arguments);\n // important: remove merged hook to ensure it's called only once\n // and prevent memory leak\n remove$2(invoker.fns, wrappedHook);\n }\n if (isUndef(oldHook)) {\n // no existing hook\n invoker = createFnInvoker([wrappedHook]);\n }\n else {\n /* istanbul ignore if */\n if (isDef(oldHook.fns) && isTrue(oldHook.merged)) {\n // already a merged invoker\n invoker = oldHook;\n invoker.fns.push(wrappedHook);\n }\n else {\n // existing plain hook\n invoker = createFnInvoker([oldHook, wrappedHook]);\n }\n }\n invoker.merged = true;\n def[hookKey] = invoker;\n}\n\nfunction extractPropsFromVNodeData(data, Ctor, tag) {\n // we are only extracting raw values here.\n // validation and default values are handled in the child\n // component itself.\n var propOptions = Ctor.options.props;\n if (isUndef(propOptions)) {\n return;\n }\n var res = {};\n var attrs = data.attrs, props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n if (process.env.NODE_ENV !== 'production') {\n var keyInLowerCase = key.toLowerCase();\n if (key !== keyInLowerCase && attrs && hasOwn(attrs, keyInLowerCase)) {\n tip(\"Prop \\\"\".concat(keyInLowerCase, \"\\\" is passed to component \") +\n \"\".concat(formatComponentName(\n // @ts-expect-error tag is string\n tag || Ctor), \", but the declared prop name is\") +\n \" \\\"\".concat(key, \"\\\". \") +\n \"Note that HTML attributes are case-insensitive and camelCased \" +\n \"props need to use their kebab-case equivalents when using in-DOM \" +\n \"templates. You should probably use \\\"\".concat(altKey, \"\\\" instead of \\\"\").concat(key, \"\\\".\"));\n }\n }\n checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n }\n }\n return res;\n}\nfunction checkProp(res, hash, key, altKey, preserve) {\n if (isDef(hash)) {\n if (hasOwn(hash, key)) {\n res[key] = hash[key];\n if (!preserve) {\n delete hash[key];\n }\n return true;\n }\n else if (hasOwn(hash, altKey)) {\n res[key] = hash[altKey];\n if (!preserve) {\n delete hash[altKey];\n }\n return true;\n }\n }\n return false;\n}\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array. There are\n// two cases where extra normalization is needed:\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren(children) {\n for (var i = 0; i < children.length; i++) {\n if (isArray(children[i])) {\n return Array.prototype.concat.apply([], children);\n }\n }\n return children;\n}\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g.