@kong-ui-public/document-viewer 0.2.11 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"document-viewer.es.js","sources":["../src/types/index.ts","../src/components/nodes/Blockquote.vue","../src/components/nodes/Code.vue","../src/components/nodes/CodeBlock.vue","../src/components/nodes/Emphasis.vue","../src/components/nodes/Heading.vue","../src/components/nodes/LineBreak.vue","../src/components/nodes/Table.vue","../src/components/nodes/TableRow.vue","../src/components/nodes/TableCell.vue","../src/components/nodes/Text.vue","../src/components/nodes/TextBlock.vue","../src/components/nodes/Paragraph.vue","../src/components/nodes/List.vue","../src/components/nodes/ListItem.vue","../src/components/renderChildren.tsx","../../../core/i18n/dist/i18n.es.js","../src/composables/useI18n.ts","../src/composables/useUtilities.ts","../src/composables/index.ts","../src/components/DocumentViewer.vue"],"sourcesContent":["/* eslint-disable no-unused-vars */\nexport interface BaseNode<Type extends string = string> {\n type: Type\n children?: Array<BaseNode>\n}\n\n// TODO: Reach out to DevX for a proper interface\nexport interface Document extends BaseNode<'document'> {\n children: Array<BaseNode>\n version: number\n}\n\nexport enum TableRowSection {\n header = 'header',\n body = 'body',\n footer = 'footer'\n}\n\nexport enum TableCellAlign {\n left = 'left',\n center = 'center',\n right = 'right'\n}\n\nexport interface TableCellNode extends BaseNode<'table_cell'> {\n align?: TableCellAlign\n}\n\nexport interface TableRowNode extends BaseNode<'table_row'> {\n section?: TableRowSection\n children: Array<TableCellNode>\n}\n\nexport interface TextNode extends BaseNode<'text'> {\n text: string\n children: undefined\n appendSpace?: boolean\n}\n\nexport function isTextNode(o: any): o is TextNode {\n return o.type === 'text'\n}\n\nexport interface HeadingNode extends BaseNode<'heading'> {\n level: number\n}\n\nexport interface ListItemNode extends BaseNode<'list_item'> {}\n\nexport interface ListNode extends BaseNode<'list'> {\n isOrdered?: boolean\n children: Array<ListItemNode>\n}\n\nexport interface LinkNode extends BaseNode<'link'> {\n href: string\n}\n","<template>\n <blockquote>\n <slot />\n </blockquote>\n</template>\n\n<style lang=\"scss\" scoped>\nblockquote {\n background: var(--document-viewer-blockquote-background, #f8f8fa);\n border-left: 2.5px solid var(--document-viewer-blockquote-border, var(--text_colors-accent, #0b172d));\n border-radius: var(--document-viewer-blockquote-border-radius, 3px);\n font-size: 14px;\n margin: var(--spacing-sm, 12px) var(--spacing-sm, 12px);\n padding: var(--spacing-sm, 12px);\n\n :deep(blockquote p) {\n margin-bottom: 0;\n }\n\n :deep(p:last-of-type) {\n margin-bottom: 0;\n }\n}\n</style>\n","<template>\n <code>\n <slot />\n </code>\n</template>\n\n<style scoped>\ncode {\n background: var(--document-viewer-code-background, #f1f1f1);\n border-radius: var(--document-viewer-code-border-radius, 3px);\n color: var(--document-viewer-code-color, inherit);\n font-family: var(--document-viewer-code-font-family, var(--document-viewer-font-family-monospace));\n font-size: var(--document-viewer-code-font-size, 14px);\n padding: 4px 6px;\n}\n</style>\n","<template>\n <pre><code><slot /></code></pre>\n</template>\n\n<style scoped>\npre {\n background: var(--document-viewer-code-block-background, #f1f1f1);\n border-radius: var(--document-viewer-code-block-border-radius, 3px);\n color: var(--document-viewer-code-block-color, inherit);\n font-family: var(--document-viewer-code-block-font-family, var(--document-viewer-font-family-monospace));\n font-size: var(--document-viewer-code-block-font-size, 14px);\n margin-bottom: var(--spacing-sm, 12px);\n padding: 12px;\n}\n</style>\n","<template>\n <component :is=\"tag\">\n <slot />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nconst props = defineProps({\n level: {\n type: Number,\n default: 1,\n validator(value: unknown): boolean {\n if (!Number.isInteger(value)) {\n return false\n }\n\n const num = value as number\n return num > 0 && num < 3\n },\n },\n})\n\nconst tag = props.level === 1 ? 'em' : 'strong'\n</script>\n","<template>\n <component :is=\"tag\">\n <slot />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nconst props = defineProps({\n level: {\n type: Number,\n validator(value: unknown): boolean {\n if (!Number.isInteger(value)) {\n return false\n }\n\n const num = value as number\n\n return num > 0 && num < 7\n },\n default: 1,\n },\n})\n\nconst tag = `h${props.level}`\n</script>\n\n<style scoped>\nh1, h2, h3, h4, h5, h6 {\n color: var(--document-viewer-color, var(--text_colors-headings, #0b172d));\n font-family: var(--document-viewer-font-family-headings, var(--document-viewer-font-family-default));\n font-weight: var(--document-viewer-heading-font-weight, 500);\n margin-top: 0;\n}\n\nh1 {\n font-size: 32px;\n font-weight: 500;\n line-height: 38px;\n margin-bottom: var(--spacing-xxl, 48px);\n}\n\nh2 {\n font-size: 24px;\n line-height: 20px;\n margin-bottom: var(--spacing-lg, 24px);\n}\n\nh3 {\n font-size: 20px;\n line-height: 20px;\n margin-bottom: var(--spacing-sm, 12px);\n}\n\nh4 {\n font-size: 18px;\n line-height: 20px;\n margin-bottom: var(--spacing-sm, 12px);\n}\n\nh5 {\n font-size: 16px;\n line-height: 20px;\n margin-bottom: var(--spacing-sm, 12px);\n}\n\nh6 {\n font-size: 14.5px;\n line-height: 20px;\n margin-bottom: var(--spacing-sm, 12px);\n}\n\nh1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {\n margin-top: 0;\n}\n</style>\n","<template>\n <hr>\n</template>\n","<template>\n <table>\n <slot />\n </table>\n</template>\n","<template>\n <component :is=\"tag\">\n <slot />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport { PropType } from 'vue'\nimport { TableRowSection } from '../../types'\n\nconst props = defineProps({\n section: {\n type: String as PropType<TableRowSection>,\n default: TableRowSection.body,\n },\n})\n\nlet tag: string\nif (props.section === TableRowSection.header) {\n tag = 'thead'\n} else if (props.section === TableRowSection.body) {\n tag = 'tbody'\n} else if (props.section === TableRowSection.footer) {\n tag = 'tfoot'\n}\n</script>\n","<template>\n <component\n :is=\"tag\"\n :class=\"className\"\n >\n <slot />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport { PropType } from 'vue'\nimport { TableCellAlign, TableRowNode, TableRowSection } from '../../types'\n\nconst props = defineProps({\n align: {\n type: String as PropType<TableCellAlign>,\n default: TableCellAlign.left,\n },\n parent: {\n type: Object as PropType<TableRowNode>,\n required: true,\n },\n})\n\nconst tag = props.parent?.section === TableRowSection.header ? 'th' : 'td'\n\nlet className: string\nif (props.align === TableCellAlign.center) {\n className = 'align-center'\n} else if (props.align === TableCellAlign.right) {\n className = 'align-right'\n}\n</script>\n\n<style scoped>\nth, td {\n text-align: left;\n}\n\n.align-center {\n text-align: center;\n}\n\n.align-right {\n text-align: right;\n}\n</style>\n","<template>\n {{ text }}<span v-if=\"appendSpace\">&nbsp;</span>\n</template>\n\n<script lang=\"ts\">\nexport default {\n inheritAttrs: false,\n}\n</script>\n<script setup lang=\"ts\">\ndefineProps({\n text: {\n type: String,\n required: true,\n },\n appendSpace: {\n type: Boolean,\n default: false,\n },\n})\n</script>\n","<template>\n <span>\n <slot />\n </span>\n</template>\n","<template>\n <p>\n <slot />\n </p>\n</template>\n\n<style scoped>\np {\n font-size: 14px;\n line-height: 20px;\n margin: var(--document-viewer-paragraph-margin, 0 0 12px);\n}\n</style>\n","<template>\n <component :is=\"tag\">\n <slot />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nconst props = defineProps({\n isOrdered: {\n type: Boolean,\n default: false,\n },\n})\n\nconst tag = props.isOrdered ? 'ol' : 'ul'\n</script>\n\n<style scoped>\nul, ol {\n font-size: 14px;\n margin-bottom: var(--spacing-sm, 12px);\n margin-left: 16px;\n padding: 0;\n}\n\nol {\n list-style: decimal;\n}\n\nul {\n list-style: disc;\n}\n</style>\n","<template>\n <li>\n <slot />\n </li>\n</template>\n","import { Component } from 'vue'\nimport { BaseNode, isTextNode } from '../types'\nimport Blockquote from './nodes/Blockquote.vue'\nimport Code from './nodes/Code.vue'\nimport CodeBlock from './nodes/CodeBlock.vue'\nimport Emphasis from './nodes/Emphasis.vue'\nimport Heading from './nodes/Heading.vue'\nimport Image from './nodes/Image.vue'\nimport LineBreak from './nodes/LineBreak.vue'\nimport Table from './nodes/Table.vue'\nimport TableRow from './nodes/TableRow.vue'\nimport TableCell from './nodes/TableCell.vue'\nimport Text from './nodes/Text.vue'\nimport TextBlock from './nodes/TextBlock.vue'\nimport Paragraph from './nodes/Paragraph.vue'\nimport List from './nodes/List.vue'\nimport ListItem from './nodes/ListItem.vue'\nimport Link from './nodes/Link.vue'\n\n// The node to component mapping is currently static but may change in the future\nconst nodeTypeToComponentMap: Record<string, Component> = {\n blockquote: Blockquote,\n code: Code,\n code_block: CodeBlock,\n emphasis: Emphasis,\n heading: Heading,\n image: Image,\n line_break: LineBreak,\n link: Link,\n list: List,\n list_item: ListItem,\n paragraph: Paragraph,\n table: Table,\n table_row: TableRow,\n table_cell: TableCell,\n text: Text,\n text_block: TextBlock,\n}\n\nconst nodeTypesNotified: Array<string> = []\nfunction notifyUnknownNodeType(type: string) {\n if (nodeTypesNotified.indexOf(type) !== -1) {\n return\n }\n\n nodeTypesNotified.push(type)\n console.warn(`[DocumentViewer] Unable to render an unknown node type \"${type}\"`)\n}\n\nexport default function renderChildren<ChildTypes extends BaseNode>(children: Array<ChildTypes>, parent?: BaseNode): Component {\n return children.map((child) => {\n if (!child) {\n return null\n }\n\n const { type, children, ...restProps } = child\n const component = nodeTypeToComponentMap[child.type]\n\n if (!component) {\n notifyUnknownNodeType(type)\n return null\n }\n\n // This is to fix an issue with text blocks that are beside another element\n // not having a space between them\n if (child?.type === 'paragraph' && child?.children) {\n const paragraphChildren = child.children\n const lastItemIndex = paragraphChildren.length - 1\n\n paragraphChildren.forEach((paragraphChild, index) => {\n if (isTextNode(paragraphChild) && !paragraphChild.text?.endsWith(' ') && index !== lastItemIndex) {\n paragraphChild.appendSpace = true\n }\n })\n }\n\n return (\n <component {...restProps} parent={parent}>\n {() => children && renderChildren(children, child)}\n </component>\n )\n })\n}\n","import { defineComponent as ke, h as Xe } from \"vue\";\nvar z = function(e, t) {\n return z = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(n, r) {\n n.__proto__ = r;\n } || function(n, r) {\n for (var i in r)\n Object.prototype.hasOwnProperty.call(r, i) && (n[i] = r[i]);\n }, z(e, t);\n};\nfunction N(e, t) {\n if (typeof t != \"function\" && t !== null)\n throw new TypeError(\"Class extends value \" + String(t) + \" is not a constructor or null\");\n z(e, t);\n function n() {\n this.constructor = e;\n }\n e.prototype = t === null ? Object.create(t) : (n.prototype = t.prototype, new n());\n}\nvar m = function() {\n return m = Object.assign || function(t) {\n for (var n, r = 1, i = arguments.length; r < i; r++) {\n n = arguments[r];\n for (var a in n)\n Object.prototype.hasOwnProperty.call(n, a) && (t[a] = n[a]);\n }\n return t;\n }, m.apply(this, arguments);\n};\nfunction Ze(e, t) {\n var n = {};\n for (var r in e)\n Object.prototype.hasOwnProperty.call(e, r) && t.indexOf(r) < 0 && (n[r] = e[r]);\n if (e != null && typeof Object.getOwnPropertySymbols == \"function\")\n for (var i = 0, r = Object.getOwnPropertySymbols(e); i < r.length; i++)\n t.indexOf(r[i]) < 0 && Object.prototype.propertyIsEnumerable.call(e, r[i]) && (n[r[i]] = e[r[i]]);\n return n;\n}\nfunction O(e, t, n) {\n if (n || arguments.length === 2)\n for (var r = 0, i = t.length, a; r < i; r++)\n (a || !(r in t)) && (a || (a = Array.prototype.slice.call(t, 0, r)), a[r] = t[r]);\n return e.concat(a || Array.prototype.slice.call(t));\n}\nvar g;\n(function(e) {\n e[e.EXPECT_ARGUMENT_CLOSING_BRACE = 1] = \"EXPECT_ARGUMENT_CLOSING_BRACE\", e[e.EMPTY_ARGUMENT = 2] = \"EMPTY_ARGUMENT\", e[e.MALFORMED_ARGUMENT = 3] = \"MALFORMED_ARGUMENT\", e[e.EXPECT_ARGUMENT_TYPE = 4] = \"EXPECT_ARGUMENT_TYPE\", e[e.INVALID_ARGUMENT_TYPE = 5] = \"INVALID_ARGUMENT_TYPE\", e[e.EXPECT_ARGUMENT_STYLE = 6] = \"EXPECT_ARGUMENT_STYLE\", e[e.INVALID_NUMBER_SKELETON = 7] = \"INVALID_NUMBER_SKELETON\", e[e.INVALID_DATE_TIME_SKELETON = 8] = \"INVALID_DATE_TIME_SKELETON\", e[e.EXPECT_NUMBER_SKELETON = 9] = \"EXPECT_NUMBER_SKELETON\", e[e.EXPECT_DATE_TIME_SKELETON = 10] = \"EXPECT_DATE_TIME_SKELETON\", e[e.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE = 11] = \"UNCLOSED_QUOTE_IN_ARGUMENT_STYLE\", e[e.EXPECT_SELECT_ARGUMENT_OPTIONS = 12] = \"EXPECT_SELECT_ARGUMENT_OPTIONS\", e[e.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE = 13] = \"EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE\", e[e.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE = 14] = \"INVALID_PLURAL_ARGUMENT_OFFSET_VALUE\", e[e.EXPECT_SELECT_ARGUMENT_SELECTOR = 15] = \"EXPECT_SELECT_ARGUMENT_SELECTOR\", e[e.EXPECT_PLURAL_ARGUMENT_SELECTOR = 16] = \"EXPECT_PLURAL_ARGUMENT_SELECTOR\", e[e.EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT = 17] = \"EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT\", e[e.EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT = 18] = \"EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT\", e[e.INVALID_PLURAL_ARGUMENT_SELECTOR = 19] = \"INVALID_PLURAL_ARGUMENT_SELECTOR\", e[e.DUPLICATE_PLURAL_ARGUMENT_SELECTOR = 20] = \"DUPLICATE_PLURAL_ARGUMENT_SELECTOR\", e[e.DUPLICATE_SELECT_ARGUMENT_SELECTOR = 21] = \"DUPLICATE_SELECT_ARGUMENT_SELECTOR\", e[e.MISSING_OTHER_CLAUSE = 22] = \"MISSING_OTHER_CLAUSE\", e[e.INVALID_TAG = 23] = \"INVALID_TAG\", e[e.INVALID_TAG_NAME = 25] = \"INVALID_TAG_NAME\", e[e.UNMATCHED_CLOSING_TAG = 26] = \"UNMATCHED_CLOSING_TAG\", e[e.UNCLOSED_TAG = 27] = \"UNCLOSED_TAG\";\n})(g || (g = {}));\nvar d;\n(function(e) {\n e[e.literal = 0] = \"literal\", e[e.argument = 1] = \"argument\", e[e.number = 2] = \"number\", e[e.date = 3] = \"date\", e[e.time = 4] = \"time\", e[e.select = 5] = \"select\", e[e.plural = 6] = \"plural\", e[e.pound = 7] = \"pound\", e[e.tag = 8] = \"tag\";\n})(d || (d = {}));\nvar w;\n(function(e) {\n e[e.number = 0] = \"number\", e[e.dateTime = 1] = \"dateTime\";\n})(w || (w = {}));\nfunction ae(e) {\n return e.type === d.literal;\n}\nfunction We(e) {\n return e.type === d.argument;\n}\nfunction Ee(e) {\n return e.type === d.number;\n}\nfunction de(e) {\n return e.type === d.date;\n}\nfunction ye(e) {\n return e.type === d.time;\n}\nfunction xe(e) {\n return e.type === d.select;\n}\nfunction Te(e) {\n return e.type === d.plural;\n}\nfunction ze(e) {\n return e.type === d.pound;\n}\nfunction Se(e) {\n return e.type === d.tag;\n}\nfunction Ie(e) {\n return !!(e && typeof e == \"object\" && e.type === w.number);\n}\nfunction q(e) {\n return !!(e && typeof e == \"object\" && e.type === w.dateTime);\n}\nvar Ae = /[ \\xA0\\u1680\\u2000-\\u200A\\u202F\\u205F\\u3000]/, qe = /(?:[Eec]{1,6}|G{1,5}|[Qq]{1,5}|(?:[yYur]+|U{1,5})|[ML]{1,5}|d{1,2}|D{1,3}|F{1}|[abB]{1,5}|[hkHK]{1,2}|w{1,2}|W{1}|m{1,2}|s{1,2}|[zZOvVxX]{1,4})(?=([^']*'[^']*')*[^']*$)/g;\nfunction Je(e) {\n var t = {};\n return e.replace(qe, function(n) {\n var r = n.length;\n switch (n[0]) {\n case \"G\":\n t.era = r === 4 ? \"long\" : r === 5 ? \"narrow\" : \"short\";\n break;\n case \"y\":\n t.year = r === 2 ? \"2-digit\" : \"numeric\";\n break;\n case \"Y\":\n case \"u\":\n case \"U\":\n case \"r\":\n throw new RangeError(\"`Y/u/U/r` (year) patterns are not supported, use `y` instead\");\n case \"q\":\n case \"Q\":\n throw new RangeError(\"`q/Q` (quarter) patterns are not supported\");\n case \"M\":\n case \"L\":\n t.month = [\"numeric\", \"2-digit\", \"short\", \"long\", \"narrow\"][r - 1];\n break;\n case \"w\":\n case \"W\":\n throw new RangeError(\"`w/W` (week) patterns are not supported\");\n case \"d\":\n t.day = [\"numeric\", \"2-digit\"][r - 1];\n break;\n case \"D\":\n case \"F\":\n case \"g\":\n throw new RangeError(\"`D/F/g` (day) patterns are not supported, use `d` instead\");\n case \"E\":\n t.weekday = r === 4 ? \"short\" : r === 5 ? \"narrow\" : \"short\";\n break;\n case \"e\":\n if (r < 4)\n throw new RangeError(\"`e..eee` (weekday) patterns are not supported\");\n t.weekday = [\"short\", \"long\", \"narrow\", \"short\"][r - 4];\n break;\n case \"c\":\n if (r < 4)\n throw new RangeError(\"`c..ccc` (weekday) patterns are not supported\");\n t.weekday = [\"short\", \"long\", \"narrow\", \"short\"][r - 4];\n break;\n case \"a\":\n t.hour12 = !0;\n break;\n case \"b\":\n case \"B\":\n throw new RangeError(\"`b/B` (period) patterns are not supported, use `a` instead\");\n case \"h\":\n t.hourCycle = \"h12\", t.hour = [\"numeric\", \"2-digit\"][r - 1];\n break;\n case \"H\":\n t.hourCycle = \"h23\", t.hour = [\"numeric\", \"2-digit\"][r - 1];\n break;\n case \"K\":\n t.hourCycle = \"h11\", t.hour = [\"numeric\", \"2-digit\"][r - 1];\n break;\n case \"k\":\n t.hourCycle = \"h24\", t.hour = [\"numeric\", \"2-digit\"][r - 1];\n break;\n case \"j\":\n case \"J\":\n case \"C\":\n throw new RangeError(\"`j/J/C` (hour) patterns are not supported, use `h/H/K/k` instead\");\n case \"m\":\n t.minute = [\"numeric\", \"2-digit\"][r - 1];\n break;\n case \"s\":\n t.second = [\"numeric\", \"2-digit\"][r - 1];\n break;\n case \"S\":\n case \"A\":\n throw new RangeError(\"`S/A` (second) patterns are not supported, use `s` instead\");\n case \"z\":\n t.timeZoneName = r < 4 ? \"short\" : \"long\";\n break;\n case \"Z\":\n case \"O\":\n case \"v\":\n case \"V\":\n case \"X\":\n case \"x\":\n throw new RangeError(\"`Z/O/v/V/X/x` (timeZone) patterns are not supported, use `z` instead\");\n }\n return \"\";\n }), t;\n}\nvar Qe = /[\\t-\\r \\x85\\u200E\\u200F\\u2028\\u2029]/i;\nfunction Ye(e) {\n if (e.length === 0)\n throw new Error(\"Number skeleton cannot be empty\");\n for (var t = e.split(Qe).filter(function(c) {\n return c.length > 0;\n }), n = [], r = 0, i = t; r < i.length; r++) {\n var a = i[r], o = a.split(\"/\");\n if (o.length === 0)\n throw new Error(\"Invalid number skeleton\");\n for (var s = o[0], h = o.slice(1), l = 0, u = h; l < u.length; l++) {\n var f = u[l];\n if (f.length === 0)\n throw new Error(\"Invalid number skeleton\");\n }\n n.push({ stem: s, options: h });\n }\n return n;\n}\nfunction $e(e) {\n return e.replace(/^(.*?)-/, \"\");\n}\nvar oe = /^\\.(?:(0+)(\\*)?|(#+)|(0+)(#+))$/g, He = /^(@+)?(\\+|#+)?[rs]?$/g, Ke = /(\\*)(0+)|(#+)(0+)|(0+)/g, Ne = /^(0+)$/;\nfunction se(e) {\n var t = {};\n return e[e.length - 1] === \"r\" ? t.roundingPriority = \"morePrecision\" : e[e.length - 1] === \"s\" && (t.roundingPriority = \"lessPrecision\"), e.replace(He, function(n, r, i) {\n return typeof i != \"string\" ? (t.minimumSignificantDigits = r.length, t.maximumSignificantDigits = r.length) : i === \"+\" ? t.minimumSignificantDigits = r.length : r[0] === \"#\" ? t.maximumSignificantDigits = r.length : (t.minimumSignificantDigits = r.length, t.maximumSignificantDigits = r.length + (typeof i == \"string\" ? i.length : 0)), \"\";\n }), t;\n}\nfunction _e(e) {\n switch (e) {\n case \"sign-auto\":\n return {\n signDisplay: \"auto\"\n };\n case \"sign-accounting\":\n case \"()\":\n return {\n currencySign: \"accounting\"\n };\n case \"sign-always\":\n case \"+!\":\n return {\n signDisplay: \"always\"\n };\n case \"sign-accounting-always\":\n case \"()!\":\n return {\n signDisplay: \"always\",\n currencySign: \"accounting\"\n };\n case \"sign-except-zero\":\n case \"+?\":\n return {\n signDisplay: \"exceptZero\"\n };\n case \"sign-accounting-except-zero\":\n case \"()?\":\n return {\n signDisplay: \"exceptZero\",\n currencySign: \"accounting\"\n };\n case \"sign-never\":\n case \"+_\":\n return {\n signDisplay: \"never\"\n };\n }\n}\nfunction et(e) {\n var t;\n if (e[0] === \"E\" && e[1] === \"E\" ? (t = {\n notation: \"engineering\"\n }, e = e.slice(2)) : e[0] === \"E\" && (t = {\n notation: \"scientific\"\n }, e = e.slice(1)), t) {\n var n = e.slice(0, 2);\n if (n === \"+!\" ? (t.signDisplay = \"always\", e = e.slice(2)) : n === \"+?\" && (t.signDisplay = \"exceptZero\", e = e.slice(2)), !Ne.test(e))\n throw new Error(\"Malformed concise eng/scientific notation\");\n t.minimumIntegerDigits = e.length;\n }\n return t;\n}\nfunction ue(e) {\n var t = {}, n = _e(e);\n return n || t;\n}\nfunction tt(e) {\n for (var t = {}, n = 0, r = e; n < r.length; n++) {\n var i = r[n];\n switch (i.stem) {\n case \"percent\":\n case \"%\":\n t.style = \"percent\";\n continue;\n case \"%x100\":\n t.style = \"percent\", t.scale = 100;\n continue;\n case \"currency\":\n t.style = \"currency\", t.currency = i.options[0];\n continue;\n case \"group-off\":\n case \",_\":\n t.useGrouping = !1;\n continue;\n case \"precision-integer\":\n case \".\":\n t.maximumFractionDigits = 0;\n continue;\n case \"measure-unit\":\n case \"unit\":\n t.style = \"unit\", t.unit = $e(i.options[0]);\n continue;\n case \"compact-short\":\n case \"K\":\n t.notation = \"compact\", t.compactDisplay = \"short\";\n continue;\n case \"compact-long\":\n case \"KK\":\n t.notation = \"compact\", t.compactDisplay = \"long\";\n continue;\n case \"scientific\":\n t = m(m(m({}, t), { notation: \"scientific\" }), i.options.reduce(function(h, l) {\n return m(m({}, h), ue(l));\n }, {}));\n continue;\n case \"engineering\":\n t = m(m(m({}, t), { notation: \"engineering\" }), i.options.reduce(function(h, l) {\n return m(m({}, h), ue(l));\n }, {}));\n continue;\n case \"notation-simple\":\n t.notation = \"standard\";\n continue;\n case \"unit-width-narrow\":\n t.currencyDisplay = \"narrowSymbol\", t.unitDisplay = \"narrow\";\n continue;\n case \"unit-width-short\":\n t.currencyDisplay = \"code\", t.unitDisplay = \"short\";\n continue;\n case \"unit-width-full-name\":\n t.currencyDisplay = \"name\", t.unitDisplay = \"long\";\n continue;\n case \"unit-width-iso-code\":\n t.currencyDisplay = \"symbol\";\n continue;\n case \"scale\":\n t.scale = parseFloat(i.options[0]);\n continue;\n case \"integer-width\":\n if (i.options.length > 1)\n throw new RangeError(\"integer-width stems only accept a single optional option\");\n i.options[0].replace(Ke, function(h, l, u, f, c, p) {\n if (l)\n t.minimumIntegerDigits = u.length;\n else {\n if (f && c)\n throw new Error(\"We currently do not support maximum integer digits\");\n if (p)\n throw new Error(\"We currently do not support exact integer digits\");\n }\n return \"\";\n });\n continue;\n }\n if (Ne.test(i.stem)) {\n t.minimumIntegerDigits = i.stem.length;\n continue;\n }\n if (oe.test(i.stem)) {\n if (i.options.length > 1)\n throw new RangeError(\"Fraction-precision stems only accept a single optional option\");\n i.stem.replace(oe, function(h, l, u, f, c, p) {\n return u === \"*\" ? t.minimumFractionDigits = l.length : f && f[0] === \"#\" ? t.maximumFractionDigits = f.length : c && p ? (t.minimumFractionDigits = c.length, t.maximumFractionDigits = c.length + p.length) : (t.minimumFractionDigits = l.length, t.maximumFractionDigits = l.length), \"\";\n });\n var a = i.options[0];\n a === \"w\" ? t = m(m({}, t), { trailingZeroDisplay: \"stripIfInteger\" }) : a && (t = m(m({}, t), se(a)));\n continue;\n }\n if (He.test(i.stem)) {\n t = m(m({}, t), se(i.stem));\n continue;\n }\n var o = _e(i.stem);\n o && (t = m(m({}, t), o));\n var s = et(i.stem);\n s && (t = m(m({}, t), s));\n }\n return t;\n}\nvar U = {\n AX: [\n \"H\"\n ],\n BQ: [\n \"H\"\n ],\n CP: [\n \"H\"\n ],\n CZ: [\n \"H\"\n ],\n DK: [\n \"H\"\n ],\n FI: [\n \"H\"\n ],\n ID: [\n \"H\"\n ],\n IS: [\n \"H\"\n ],\n ML: [\n \"H\"\n ],\n NE: [\n \"H\"\n ],\n RU: [\n \"H\"\n ],\n SE: [\n \"H\"\n ],\n SJ: [\n \"H\"\n ],\n SK: [\n \"H\"\n ],\n AS: [\n \"h\",\n \"H\"\n ],\n BT: [\n \"h\",\n \"H\"\n ],\n DJ: [\n \"h\",\n \"H\"\n ],\n ER: [\n \"h\",\n \"H\"\n ],\n GH: [\n \"h\",\n \"H\"\n ],\n IN: [\n \"h\",\n \"H\"\n ],\n LS: [\n \"h\",\n \"H\"\n ],\n PG: [\n \"h\",\n \"H\"\n ],\n PW: [\n \"h\",\n \"H\"\n ],\n SO: [\n \"h\",\n \"H\"\n ],\n TO: [\n \"h\",\n \"H\"\n ],\n VU: [\n \"h\",\n \"H\"\n ],\n WS: [\n \"h\",\n \"H\"\n ],\n \"001\": [\n \"H\",\n \"h\"\n ],\n AL: [\n \"h\",\n \"H\",\n \"hB\"\n ],\n TD: [\n \"h\",\n \"H\",\n \"hB\"\n ],\n \"ca-ES\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n CF: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n CM: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"fr-CA\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"gl-ES\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"it-CH\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"it-IT\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n LU: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n NP: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n PF: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n SC: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n SM: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n SN: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n TF: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n VA: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n CY: [\n \"h\",\n \"H\",\n \"hb\",\n \"hB\"\n ],\n GR: [\n \"h\",\n \"H\",\n \"hb\",\n \"hB\"\n ],\n CO: [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n DO: [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n KP: [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n KR: [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n NA: [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n PA: [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n PR: [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n VE: [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n AC: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n AI: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n BW: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n BZ: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n CC: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n CK: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n CX: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n DG: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n FK: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n GB: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n GG: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n GI: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n IE: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n IM: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n IO: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n JE: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n LT: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n MK: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n MN: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n MS: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n NF: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n NG: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n NR: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n NU: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n PN: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n SH: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n SX: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n TA: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n ZA: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"af-ZA\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n AR: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n CL: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n CR: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n CU: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n EA: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-BO\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-BR\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-EC\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-ES\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-GQ\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-PE\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n GT: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n HN: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n IC: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n KG: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n KM: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n LK: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n MA: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n MX: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n NI: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n PY: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n SV: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n UY: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n JP: [\n \"H\",\n \"h\",\n \"K\"\n ],\n AD: [\n \"H\",\n \"hB\"\n ],\n AM: [\n \"H\",\n \"hB\"\n ],\n AO: [\n \"H\",\n \"hB\"\n ],\n AT: [\n \"H\",\n \"hB\"\n ],\n AW: [\n \"H\",\n \"hB\"\n ],\n BE: [\n \"H\",\n \"hB\"\n ],\n BF: [\n \"H\",\n \"hB\"\n ],\n BJ: [\n \"H\",\n \"hB\"\n ],\n BL: [\n \"H\",\n \"hB\"\n ],\n BR: [\n \"H\",\n \"hB\"\n ],\n CG: [\n \"H\",\n \"hB\"\n ],\n CI: [\n \"H\",\n \"hB\"\n ],\n CV: [\n \"H\",\n \"hB\"\n ],\n DE: [\n \"H\",\n \"hB\"\n ],\n EE: [\n \"H\",\n \"hB\"\n ],\n FR: [\n \"H\",\n \"hB\"\n ],\n GA: [\n \"H\",\n \"hB\"\n ],\n GF: [\n \"H\",\n \"hB\"\n ],\n GN: [\n \"H\",\n \"hB\"\n ],\n GP: [\n \"H\",\n \"hB\"\n ],\n GW: [\n \"H\",\n \"hB\"\n ],\n HR: [\n \"H\",\n \"hB\"\n ],\n IL: [\n \"H\",\n \"hB\"\n ],\n IT: [\n \"H\",\n \"hB\"\n ],\n KZ: [\n \"H\",\n \"hB\"\n ],\n MC: [\n \"H\",\n \"hB\"\n ],\n MD: [\n \"H\",\n \"hB\"\n ],\n MF: [\n \"H\",\n \"hB\"\n ],\n MQ: [\n \"H\",\n \"hB\"\n ],\n MZ: [\n \"H\",\n \"hB\"\n ],\n NC: [\n \"H\",\n \"hB\"\n ],\n NL: [\n \"H\",\n \"hB\"\n ],\n PM: [\n \"H\",\n \"hB\"\n ],\n PT: [\n \"H\",\n \"hB\"\n ],\n RE: [\n \"H\",\n \"hB\"\n ],\n RO: [\n \"H\",\n \"hB\"\n ],\n SI: [\n \"H\",\n \"hB\"\n ],\n SR: [\n \"H\",\n \"hB\"\n ],\n ST: [\n \"H\",\n \"hB\"\n ],\n TG: [\n \"H\",\n \"hB\"\n ],\n TR: [\n \"H\",\n \"hB\"\n ],\n WF: [\n \"H\",\n \"hB\"\n ],\n YT: [\n \"H\",\n \"hB\"\n ],\n BD: [\n \"h\",\n \"hB\",\n \"H\"\n ],\n PK: [\n \"h\",\n \"hB\",\n \"H\"\n ],\n AZ: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n BA: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n BG: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n CH: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n GE: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n LI: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n ME: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n RS: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n UA: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n UZ: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n XK: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n AG: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n AU: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n BB: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n BM: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n BS: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n CA: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n DM: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"en-001\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n FJ: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n FM: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n GD: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n GM: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n GU: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n GY: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n JM: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n KI: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n KN: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n KY: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n LC: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n LR: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n MH: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n MP: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n MW: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n NZ: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n SB: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n SG: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n SL: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n SS: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n SZ: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n TC: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n TT: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n UM: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n US: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n VC: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n VG: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n VI: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n ZM: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n BO: [\n \"H\",\n \"hB\",\n \"h\",\n \"hb\"\n ],\n EC: [\n \"H\",\n \"hB\",\n \"h\",\n \"hb\"\n ],\n ES: [\n \"H\",\n \"hB\",\n \"h\",\n \"hb\"\n ],\n GQ: [\n \"H\",\n \"hB\",\n \"h\",\n \"hb\"\n ],\n PE: [\n \"H\",\n \"hB\",\n \"h\",\n \"hb\"\n ],\n AE: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"ar-001\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n BH: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n DZ: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n EG: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n EH: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n HK: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n IQ: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n JO: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n KW: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n LB: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n LY: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n MO: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n MR: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n OM: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n PH: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n PS: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n QA: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n SA: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n SD: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n SY: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n TN: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n YE: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n AF: [\n \"H\",\n \"hb\",\n \"hB\",\n \"h\"\n ],\n LA: [\n \"H\",\n \"hb\",\n \"hB\",\n \"h\"\n ],\n CN: [\n \"H\",\n \"hB\",\n \"hb\",\n \"h\"\n ],\n LV: [\n \"H\",\n \"hB\",\n \"hb\",\n \"h\"\n ],\n TL: [\n \"H\",\n \"hB\",\n \"hb\",\n \"h\"\n ],\n \"zu-ZA\": [\n \"H\",\n \"hB\",\n \"hb\",\n \"h\"\n ],\n CD: [\n \"hB\",\n \"H\"\n ],\n IR: [\n \"hB\",\n \"H\"\n ],\n \"hi-IN\": [\n \"hB\",\n \"h\",\n \"H\"\n ],\n \"kn-IN\": [\n \"hB\",\n \"h\",\n \"H\"\n ],\n \"ml-IN\": [\n \"hB\",\n \"h\",\n \"H\"\n ],\n \"te-IN\": [\n \"hB\",\n \"h\",\n \"H\"\n ],\n KH: [\n \"hB\",\n \"h\",\n \"H\",\n \"hb\"\n ],\n \"ta-IN\": [\n \"hB\",\n \"h\",\n \"hb\",\n \"H\"\n ],\n BN: [\n \"hb\",\n \"hB\",\n \"h\",\n \"H\"\n ],\n MY: [\n \"hb\",\n \"hB\",\n \"h\",\n \"H\"\n ],\n ET: [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n \"gu-IN\": [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n \"mr-IN\": [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n \"pa-IN\": [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n TW: [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n KE: [\n \"hB\",\n \"hb\",\n \"H\",\n \"h\"\n ],\n MM: [\n \"hB\",\n \"hb\",\n \"H\",\n \"h\"\n ],\n TZ: [\n \"hB\",\n \"hb\",\n \"H\",\n \"h\"\n ],\n UG: [\n \"hB\",\n \"hb\",\n \"H\",\n \"h\"\n ]\n};\nfunction rt(e, t) {\n for (var n = \"\", r = 0; r < e.length; r++) {\n var i = e.charAt(r);\n if (i === \"j\") {\n for (var a = 0; r + 1 < e.length && e.charAt(r + 1) === i; )\n a++, r++;\n var o = 1 + (a & 1), s = a < 2 ? 1 : 3 + (a >> 1), h = \"a\", l = nt(t);\n for ((l == \"H\" || l == \"k\") && (s = 0); s-- > 0; )\n n += h;\n for (; o-- > 0; )\n n = l + n;\n } else\n i === \"J\" ? n += \"H\" : n += i;\n }\n return n;\n}\nfunction nt(e) {\n var t = e.hourCycle;\n if (t === void 0 && // @ts-ignore hourCycle(s) is not identified yet\n e.hourCycles && // @ts-ignore\n e.hourCycles.length && (t = e.hourCycles[0]), t)\n switch (t) {\n case \"h24\":\n return \"k\";\n case \"h23\":\n return \"H\";\n case \"h12\":\n return \"h\";\n case \"h11\":\n return \"K\";\n default:\n throw new Error(\"Invalid hourCycle\");\n }\n var n = e.language, r;\n n !== \"root\" && (r = e.maximize().region);\n var i = U[r || \"\"] || U[n || \"\"] || U[\"\".concat(n, \"-001\")] || U[\"001\"];\n return i[0];\n}\nvar X, it = new RegExp(\"^\".concat(Ae.source, \"*\")), at = new RegExp(\"\".concat(Ae.source, \"*$\"));\nfunction v(e, t) {\n return { start: e, end: t };\n}\nvar ot = !!String.prototype.startsWith, st = !!String.fromCodePoint, ut = !!Object.fromEntries, ht = !!String.prototype.codePointAt, lt = !!String.prototype.trimStart, ft = !!String.prototype.trimEnd, ct = !!Number.isSafeInteger, mt = ct ? Number.isSafeInteger : function(e) {\n return typeof e == \"number\" && isFinite(e) && Math.floor(e) === e && Math.abs(e) <= 9007199254740991;\n}, J = !0;\ntry {\n var gt = Re(\"([^\\\\p{White_Space}\\\\p{Pattern_Syntax}]*)\", \"yu\");\n J = ((X = gt.exec(\"a\")) === null || X === void 0 ? void 0 : X[0]) === \"a\";\n} catch {\n J = !1;\n}\nvar he = ot ? (\n // Native\n function(t, n, r) {\n return t.startsWith(n, r);\n }\n) : (\n // For IE11\n function(t, n, r) {\n return t.slice(r, r + n.length) === n;\n }\n), Q = st ? String.fromCodePoint : (\n // IE11\n function() {\n for (var t = [], n = 0; n < arguments.length; n++)\n t[n] = arguments[n];\n for (var r = \"\", i = t.length, a = 0, o; i > a; ) {\n if (o = t[a++], o > 1114111)\n throw RangeError(o + \" is not a valid code point\");\n r += o < 65536 ? String.fromCharCode(o) : String.fromCharCode(((o -= 65536) >> 10) + 55296, o % 1024 + 56320);\n }\n return r;\n }\n), le = (\n // native\n ut ? Object.fromEntries : (\n // Ponyfill\n function(t) {\n for (var n = {}, r = 0, i = t; r < i.length; r++) {\n var a = i[r], o = a[0], s = a[1];\n n[o] = s;\n }\n return n;\n }\n )\n), Be = ht ? (\n // Native\n function(t, n) {\n return t.codePointAt(n);\n }\n) : (\n // IE 11\n function(t, n) {\n var r = t.length;\n if (!(n < 0 || n >= r)) {\n var i = t.charCodeAt(n), a;\n return i < 55296 || i > 56319 || n + 1 === r || (a = t.charCodeAt(n + 1)) < 56320 || a > 57343 ? i : (i - 55296 << 10) + (a - 56320) + 65536;\n }\n }\n), pt = lt ? (\n // Native\n function(t) {\n return t.trimStart();\n }\n) : (\n // Ponyfill\n function(t) {\n return t.replace(it, \"\");\n }\n), vt = ft ? (\n // Native\n function(t) {\n return t.trimEnd();\n }\n) : (\n // Ponyfill\n function(t) {\n return t.replace(at, \"\");\n }\n);\nfunction Re(e, t) {\n return new RegExp(e, t);\n}\nvar Y;\nif (J) {\n var fe = Re(\"([^\\\\p{White_Space}\\\\p{Pattern_Syntax}]*)\", \"yu\");\n Y = function(t, n) {\n var r;\n fe.lastIndex = n;\n var i = fe.exec(t);\n return (r = i[1]) !== null && r !== void 0 ? r : \"\";\n };\n} else\n Y = function(t, n) {\n for (var r = []; ; ) {\n var i = Be(t, n);\n if (i === void 0 || Oe(i) || yt(i))\n break;\n r.push(i), n += i >= 65536 ? 2 : 1;\n }\n return Q.apply(void 0, r);\n };\nvar bt = (\n /** @class */\n function() {\n function e(t, n) {\n n === void 0 && (n = {}), this.message = t, this.position = { offset: 0, line: 1, column: 1 }, this.ignoreTag = !!n.ignoreTag, this.locale = n.locale, this.requiresOtherClause = !!n.requiresOtherClause, this.shouldParseSkeletons = !!n.shouldParseSkeletons;\n }\n return e.prototype.parse = function() {\n if (this.offset() !== 0)\n throw Error(\"parser can only be used once\");\n return this.parseMessage(0, \"\", !1);\n }, e.prototype.parseMessage = function(t, n, r) {\n for (var i = []; !this.isEOF(); ) {\n var a = this.char();\n if (a === 123) {\n var o = this.parseArgument(t, r);\n if (o.err)\n return o;\n i.push(o.val);\n } else {\n if (a === 125 && t > 0)\n break;\n if (a === 35 && (n === \"plural\" || n === \"selectordinal\")) {\n var s = this.clonePosition();\n this.bump(), i.push({\n type: d.pound,\n location: v(s, this.clonePosition())\n });\n } else if (a === 60 && !this.ignoreTag && this.peek() === 47) {\n if (r)\n break;\n return this.error(g.UNMATCHED_CLOSING_TAG, v(this.clonePosition(), this.clonePosition()));\n } else if (a === 60 && !this.ignoreTag && $(this.peek() || 0)) {\n var o = this.parseTag(t, n);\n if (o.err)\n return o;\n i.push(o.val);\n } else {\n var o = this.parseLiteral(t, n);\n if (o.err)\n return o;\n i.push(o.val);\n }\n }\n }\n return { val: i, err: null };\n }, e.prototype.parseTag = function(t, n) {\n var r = this.clonePosition();\n this.bump();\n var i = this.parseTagName();\n if (this.bumpSpace(), this.bumpIf(\"/>\"))\n return {\n val: {\n type: d.literal,\n value: \"<\".concat(i, \"/>\"),\n location: v(r, this.clonePosition())\n },\n err: null\n };\n if (this.bumpIf(\">\")) {\n var a = this.parseMessage(t + 1, n, !0);\n if (a.err)\n return a;\n var o = a.val, s = this.clonePosition();\n if (this.bumpIf(\"</\")) {\n if (this.isEOF() || !$(this.char()))\n return this.error(g.INVALID_TAG, v(s, this.clonePosition()));\n var h = this.clonePosition(), l = this.parseTagName();\n return i !== l ? this.error(g.UNMATCHED_CLOSING_TAG, v(h, this.clonePosition())) : (this.bumpSpace(), this.bumpIf(\">\") ? {\n val: {\n type: d.tag,\n value: i,\n children: o,\n location: v(r, this.clonePosition())\n },\n err: null\n } : this.error(g.INVALID_TAG, v(s, this.clonePosition())));\n } else\n return this.error(g.UNCLOSED_TAG, v(r, this.clonePosition()));\n } else\n return this.error(g.INVALID_TAG, v(r, this.clonePosition()));\n }, e.prototype.parseTagName = function() {\n var t = this.offset();\n for (this.bump(); !this.isEOF() && dt(this.char()); )\n this.bump();\n return this.message.slice(t, this.offset());\n }, e.prototype.parseLiteral = function(t, n) {\n for (var r = this.clonePosition(), i = \"\"; ; ) {\n var a = this.tryParseQuote(n);\n if (a) {\n i += a;\n continue;\n }\n var o = this.tryParseUnquoted(t, n);\n if (o) {\n i += o;\n continue;\n }\n var s = this.tryParseLeftAngleBracket();\n if (s) {\n i += s;\n continue;\n }\n break;\n }\n var h = v(r, this.clonePosition());\n return {\n val: { type: d.literal, value: i, location: h },\n err: null\n };\n }, e.prototype.tryParseLeftAngleBracket = function() {\n return !this.isEOF() && this.char() === 60 && (this.ignoreTag || // If at the opening tag or closing tag position, bail.\n !Et(this.peek() || 0)) ? (this.bump(), \"<\") : null;\n }, e.prototype.tryParseQuote = function(t) {\n if (this.isEOF() || this.char() !== 39)\n return null;\n switch (this.peek()) {\n case 39:\n return this.bump(), this.bump(), \"'\";\n case 123:\n case 60:\n case 62:\n case 125:\n break;\n case 35:\n if (t === \"plural\" || t === \"selectordinal\")\n break;\n return null;\n default:\n return null;\n }\n this.bump();\n var n = [this.char()];\n for (this.bump(); !this.isEOF(); ) {\n var r = this.char();\n if (r === 39)\n if (this.peek() === 39)\n n.push(39), this.bump();\n else {\n this.bump();\n break;\n }\n else\n n.push(r);\n this.bump();\n }\n return Q.apply(void 0, n);\n }, e.prototype.tryParseUnquoted = function(t, n) {\n if (this.isEOF())\n return null;\n var r = this.char();\n return r === 60 || r === 123 || r === 35 && (n === \"plural\" || n === \"selectordinal\") || r === 125 && t > 0 ? null : (this.bump(), Q(r));\n }, e.prototype.parseArgument = function(t, n) {\n var r = this.clonePosition();\n if (this.bump(), this.bumpSpace(), this.isEOF())\n return this.error(g.EXPECT_ARGUMENT_CLOSING_BRACE, v(r, this.clonePosition()));\n if (this.char() === 125)\n return this.bump(), this.error(g.EMPTY_ARGUMENT, v(r, this.clonePosition()));\n var i = this.parseIdentifierIfPossible().value;\n if (!i)\n return this.error(g.MALFORMED_ARGUMENT, v(r, this.clonePosition()));\n if (this.bumpSpace(), this.isEOF())\n return this.error(g.EXPECT_ARGUMENT_CLOSING_BRACE, v(r, this.clonePosition()));\n switch (this.char()) {\n case 125:\n return this.bump(), {\n val: {\n type: d.argument,\n // value does not include the opening and closing braces.\n value: i,\n location: v(r, this.clonePosition())\n },\n err: null\n };\n case 44:\n return this.bump(), this.bumpSpace(), this.isEOF() ? this.error(g.EXPECT_ARGUMENT_CLOSING_BRACE, v(r, this.clonePosition())) : this.parseArgumentOptions(t, n, i, r);\n default:\n return this.error(g.MALFORMED_ARGUMENT, v(r, this.clonePosition()));\n }\n }, e.prototype.parseIdentifierIfPossible = function() {\n var t = this.clonePosition(), n = this.offset(), r = Y(this.message, n), i = n + r.length;\n this.bumpTo(i);\n var a = this.clonePosition(), o = v(t, a);\n return { value: r, location: o };\n }, e.prototype.parseArgumentOptions = function(t, n, r, i) {\n var a, o = this.clonePosition(), s = this.parseIdentifierIfPossible().value, h = this.clonePosition();\n switch (s) {\n case \"\":\n return this.error(g.EXPECT_ARGUMENT_TYPE, v(o, h));\n case \"number\":\n case \"date\":\n case \"time\": {\n this.bumpSpace();\n var l = null;\n if (this.bumpIf(\",\")) {\n this.bumpSpace();\n var u = this.clonePosition(), f = this.parseSimpleArgStyleIfPossible();\n if (f.err)\n return f;\n var c = vt(f.val);\n if (c.length === 0)\n return this.error(g.EXPECT_ARGUMENT_STYLE, v(this.clonePosition(), this.clonePosition()));\n var p = v(u, this.clonePosition());\n l = { style: c, styleLocation: p };\n }\n var b = this.tryParseArgumentClose(i);\n if (b.err)\n return b;\n var E = v(i, this.clonePosition());\n if (l && he(l == null ? void 0 : l.style, \"::\", 0)) {\n var y = pt(l.style.slice(2));\n if (s === \"number\") {\n var f = this.parseNumberSkeletonFromString(y, l.styleLocation);\n return f.err ? f : {\n val: { type: d.number, value: r, location: E, style: f.val },\n err: null\n };\n } else {\n if (y.length === 0)\n return this.error(g.EXPECT_DATE_TIME_SKELETON, E);\n var x = y;\n this.locale && (x = rt(y, this.locale));\n var c = {\n type: w.dateTime,\n pattern: x,\n location: l.styleLocation,\n parsedOptions: this.shouldParseSkeletons ? Je(x) : {}\n }, H = s === \"date\" ? d.date : d.time;\n return {\n val: { type: H, value: r, location: E, style: c },\n err: null\n };\n }\n }\n return {\n val: {\n type: s === \"number\" ? d.number : s === \"date\" ? d.date : d.time,\n value: r,\n location: E,\n style: (a = l == null ? void 0 : l.style) !== null && a !== void 0 ? a : null\n },\n err: null\n };\n }\n case \"plural\":\n case \"selectordinal\":\n case \"select\": {\n var T = this.clonePosition();\n if (this.bumpSpace(), !this.bumpIf(\",\"))\n return this.error(g.EXPECT_SELECT_ARGUMENT_OPTIONS, v(T, m({}, T)));\n this.bumpSpace();\n var D = this.parseIdentifierIfPossible(), L = 0;\n if (s !== \"select\" && D.value === \"offset\") {\n if (!this.bumpIf(\":\"))\n return this.error(g.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE, v(this.clonePosition(), this.clonePosition()));\n this.bumpSpace();\n var f = this.tryParseDecimalInteger(g.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE, g.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE);\n if (f.err)\n return f;\n this.bumpSpace(), D = this.parseIdentifierIfPossible(), L = f.val;\n }\n var G = this.tryParsePluralOrSelectOptions(t, s, n, D);\n if (G.err)\n return G;\n var b = this.tryParseArgumentClose(i);\n if (b.err)\n return b;\n var ie = v(i, this.clonePosition());\n return s === \"select\" ? {\n val: {\n type: d.select,\n value: r,\n options: le(G.val),\n location: ie\n },\n err: null\n } : {\n val: {\n type: d.plural,\n value: r,\n options: le(G.val),\n offset: L,\n pluralType: s === \"plural\" ? \"cardinal\" : \"ordinal\",\n location: ie\n },\n err: null\n };\n }\n default:\n return this.error(g.INVALID_ARGUMENT_TYPE, v(o, h));\n }\n }, e.prototype.tryParseArgumentClose = function(t) {\n return this.isEOF() || this.char() !== 125 ? this.error(g.EXPECT_ARGUMENT_CLOSING_BRACE, v(t, this.clonePosition())) : (this.bump(), { val: !0, err: null });\n }, e.prototype.parseSimpleArgStyleIfPossible = function() {\n for (var t = 0, n = this.clonePosition(); !this.isEOF(); ) {\n var r = this.char();\n switch (r) {\n case 39: {\n this.bump();\n var i = this.clonePosition();\n if (!this.bumpUntil(\"'\"))\n return this.error(g.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE, v(i, this.clonePosition()));\n this.bump();\n break;\n }\n case 123: {\n t += 1, this.bump();\n break;\n }\n case 125: {\n if (t > 0)\n t -= 1;\n else\n return {\n val: this.message.slice(n.offset, this.offset()),\n err: null\n };\n break;\n }\n default:\n this.bump();\n break;\n }\n }\n return {\n val: this.message.slice(n.offset, this.offset()),\n err: null\n };\n }, e.prototype.parseNumberSkeletonFromString = function(t, n) {\n var r = [];\n try {\n r = Ye(t);\n } catch {\n return this.error(g.INVALID_NUMBER_SKELETON, n);\n }\n return {\n val: {\n type: w.number,\n tokens: r,\n location: n,\n parsedOptions: this.shouldParseSkeletons ? tt(r) : {}\n },\n err: null\n };\n }, e.prototype.tryParsePluralOrSelectOptions = function(t, n, r, i) {\n for (var a, o = !1, s = [], h = /* @__PURE__ */ new Set(), l = i.value, u = i.location; ; ) {\n if (l.length === 0) {\n var f = this.clonePosition();\n if (n !== \"select\" && this.bumpIf(\"=\")) {\n var c = this.tryParseDecimalInteger(g.EXPECT_PLURAL_ARGUMENT_SELECTOR, g.INVALID_PLURAL_ARGUMENT_SELECTOR);\n if (c.err)\n return c;\n u = v(f, this.clonePosition()), l = this.message.slice(f.offset, this.offset());\n } else\n break;\n }\n if (h.has(l))\n return this.error(n === \"select\" ? g.DUPLICATE_SELECT_ARGUMENT_SELECTOR : g.DUPLICATE_PLURAL_ARGUMENT_SELECTOR, u);\n l === \"other\" && (o = !0), this.bumpSpace();\n var p = this.clonePosition();\n if (!this.bumpIf(\"{\"))\n return this.error(n === \"select\" ? g.EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT : g.EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT, v(this.clonePosition(), this.clonePosition()));\n var b = this.parseMessage(t + 1, n, r);\n if (b.err)\n return b;\n var E = this.tryParseArgumentClose(p);\n if (E.err)\n return E;\n s.push([\n l,\n {\n value: b.val,\n location: v(p, this.clonePosition())\n }\n ]), h.add(l), this.bumpSpace(), a = this.parseIdentifierIfPossible(), l = a.value, u = a.location;\n }\n return s.length === 0 ? this.error(n === \"select\" ? g.EXPECT_SELECT_ARGUMENT_SELECTOR : g.EXPECT_PLURAL_ARGUMENT_SELECTOR, v(this.clonePosition(), this.clonePosition())) : this.requiresOtherClause && !o ? this.error(g.MISSING_OTHER_CLAUSE, v(this.clonePosition(), this.clonePosition())) : { val: s, err: null };\n }, e.prototype.tryParseDecimalInteger = function(t, n) {\n var r = 1, i = this.clonePosition();\n this.bumpIf(\"+\") || this.bumpIf(\"-\") && (r = -1);\n for (var a = !1, o = 0; !this.isEOF(); ) {\n var s = this.char();\n if (s >= 48 && s <= 57)\n a = !0, o = o * 10 + (s - 48), this.bump();\n else\n break;\n }\n var h = v(i, this.clonePosition());\n return a ? (o *= r, mt(o) ? { val: o, err: null } : this.error(n, h)) : this.error(t, h);\n }, e.prototype.offset = function() {\n return this.position.offset;\n }, e.prototype.isEOF = function() {\n return this.offset() === this.message.length;\n }, e.prototype.clonePosition = function() {\n return {\n offset: this.position.offset,\n line: this.position.line,\n column: this.position.column\n };\n }, e.prototype.char = function() {\n var t = this.position.offset;\n if (t >= this.message.length)\n throw Error(\"out of bound\");\n var n = Be(this.message, t);\n if (n === void 0)\n throw Error(\"Offset \".concat(t, \" is at invalid UTF-16 code unit boundary\"));\n return n;\n }, e.prototype.error = function(t, n) {\n return {\n val: null,\n err: {\n kind: t,\n message: this.message,\n location: n\n }\n };\n }, e.prototype.bump = function() {\n if (!this.isEOF()) {\n var t = this.char();\n t === 10 ? (this.position.line += 1, this.position.column = 1, this.position.offset += 1) : (this.position.column += 1, this.position.offset += t < 65536 ? 1 : 2);\n }\n }, e.prototype.bumpIf = function(t) {\n if (he(this.message, t, this.offset())) {\n for (var n = 0; n < t.length; n++)\n this.bump();\n return !0;\n }\n return !1;\n }, e.prototype.bumpUntil = function(t) {\n var n = this.offset(), r = this.message.indexOf(t, n);\n return r >= 0 ? (this.bumpTo(r), !0) : (this.bumpTo(this.message.length), !1);\n }, e.prototype.bumpTo = function(t) {\n if (this.offset() > t)\n throw Error(\"targetOffset \".concat(t, \" must be greater than or equal to the current offset \").concat(this.offset()));\n for (t = Math.min(t, this.message.length); ; ) {\n var n = this.offset();\n if (n === t)\n break;\n if (n > t)\n throw Error(\"targetOffset \".concat(t, \" is at invalid UTF-16 code unit boundary\"));\n if (this.bump(), this.isEOF())\n break;\n }\n }, e.prototype.bumpSpace = function() {\n for (; !this.isEOF() && Oe(this.char()); )\n this.bump();\n }, e.prototype.peek = function() {\n if (this.isEOF())\n return null;\n var t = this.char(), n = this.offset(), r = this.message.charCodeAt(n + (t >= 65536 ? 2 : 1));\n return r ?? null;\n }, e;\n }()\n);\nfunction $(e) {\n return e >= 97 && e <= 122 || e >= 65 && e <= 90;\n}\nfunction Et(e) {\n return $(e) || e === 47;\n}\nfunction dt(e) {\n return e === 45 || e === 46 || e >= 48 && e <= 57 || e === 95 || e >= 97 && e <= 122 || e >= 65 && e <= 90 || e == 183 || e >= 192 && e <= 214 || e >= 216 && e <= 246 || e >= 248 && e <= 893 || e >= 895 && e <= 8191 || e >= 8204 && e <= 8205 || e >= 8255 && e <= 8256 || e >= 8304 && e <= 8591 || e >= 11264 && e <= 12271 || e >= 12289 && e <= 55295 || e >= 63744 && e <= 64975 || e >= 65008 && e <= 65533 || e >= 65536 && e <= 983039;\n}\nfunction Oe(e) {\n return e >= 9 && e <= 13 || e === 32 || e === 133 || e >= 8206 && e <= 8207 || e === 8232 || e === 8233;\n}\nfunction yt(e) {\n return e >= 33 && e <= 35 || e === 36 || e >= 37 && e <= 39 || e === 40 || e === 41 || e === 42 || e === 43 || e === 44 || e === 45 || e >= 46 && e <= 47 || e >= 58 && e <= 59 || e >= 60 && e <= 62 || e >= 63 && e <= 64 || e === 91 || e === 92 || e === 93 || e === 94 || e === 96 || e === 123 || e === 124 || e === 125 || e === 126 || e === 161 || e >= 162 && e <= 165 || e === 166 || e === 167 || e === 169 || e === 171 || e === 172 || e === 174 || e === 176 || e === 177 || e === 182 || e === 187 || e === 191 || e === 215 || e === 247 || e >= 8208 && e <= 8213 || e >= 8214 && e <= 8215 || e === 8216 || e === 8217 || e === 8218 || e >= 8219 && e <= 8220 || e === 8221 || e === 8222 || e === 8223 || e >= 8224 && e <= 8231 || e >= 8240 && e <= 8248 || e === 8249 || e === 8250 || e >= 8251 && e <= 8254 || e >= 8257 && e <= 8259 || e === 8260 || e === 8261 || e === 8262 || e >= 8263 && e <= 8273 || e === 8274 || e === 8275 || e >= 8277 && e <= 8286 || e >= 8592 && e <= 8596 || e >= 8597 && e <= 8601 || e >= 8602 && e <= 8603 || e >= 8604 && e <= 8607 || e === 8608 || e >= 8609 && e <= 8610 || e === 8611 || e >= 8612 && e <= 8613 || e === 8614 || e >= 8615 && e <= 8621 || e === 8622 || e >= 8623 && e <= 8653 || e >= 8654 && e <= 8655 || e >= 8656 && e <= 8657 || e === 8658 || e === 8659 || e === 8660 || e >= 8661 && e <= 8691 || e >= 8692 && e <= 8959 || e >= 8960 && e <= 8967 || e === 8968 || e === 8969 || e === 8970 || e === 8971 || e >= 8972 && e <= 8991 || e >= 8992 && e <= 8993 || e >= 8994 && e <= 9e3 || e === 9001 || e === 9002 || e >= 9003 && e <= 9083 || e === 9084 || e >= 9085 && e <= 9114 || e >= 9115 && e <= 9139 || e >= 9140 && e <= 9179 || e >= 9180 && e <= 9185 || e >= 9186 && e <= 9254 || e >= 9255 && e <= 9279 || e >= 9280 && e <= 9290 || e >= 9291 && e <= 9311 || e >= 9472 && e <= 9654 || e === 9655 || e >= 9656 && e <= 9664 || e === 9665 || e >= 9666 && e <= 9719 || e >= 9720 && e <= 9727 || e >= 9728 && e <= 9838 || e === 9839 || e >= 9840 && e <= 10087 || e === 10088 || e === 10089 || e === 10090 || e === 10091 || e === 10092 || e === 10093 || e === 10094 || e === 10095 || e === 10096 || e === 10097 || e === 10098 || e === 10099 || e === 10100 || e === 10101 || e >= 10132 && e <= 10175 || e >= 10176 && e <= 10180 || e === 10181 || e === 10182 || e >= 10183 && e <= 10213 || e === 10214 || e === 10215 || e === 10216 || e === 10217 || e === 10218 || e === 10219 || e === 10220 || e === 10221 || e === 10222 || e === 10223 || e >= 10224 && e <= 10239 || e >= 10240 && e <= 10495 || e >= 10496 && e <= 10626 || e === 10627 || e === 10628 || e === 10629 || e === 10630 || e === 10631 || e === 10632 || e === 10633 || e === 10634 || e === 10635 || e === 10636 || e === 10637 || e === 10638 || e === 10639 || e === 10640 || e === 10641 || e === 10642 || e === 10643 || e === 10644 || e === 10645 || e === 10646 || e === 10647 || e === 10648 || e >= 10649 && e <= 10711 || e === 10712 || e === 10713 || e === 10714 || e === 10715 || e >= 10716 && e <= 10747 || e === 10748 || e === 10749 || e >= 10750 && e <= 11007 || e >= 11008 && e <= 11055 || e >= 11056 && e <= 11076 || e >= 11077 && e <= 11078 || e >= 11079 && e <= 11084 || e >= 11085 && e <= 11123 || e >= 11124 && e <= 11125 || e >= 11126 && e <= 11157 || e === 11158 || e >= 11159 && e <= 11263 || e >= 11776 && e <= 11777 || e === 11778 || e === 11779 || e === 11780 || e === 11781 || e >= 11782 && e <= 11784 || e === 11785 || e === 11786 || e === 11787 || e === 11788 || e === 11789 || e >= 11790 && e <= 11798 || e === 11799 || e >= 11800 && e <= 11801 || e === 11802 || e === 11803 || e === 11804 || e === 11805 || e >= 11806 && e <= 11807 || e === 11808 || e === 11809 || e === 11810 || e === 11811 || e === 11812 || e === 11813 || e === 11814 || e === 11815 || e === 11816 || e === 11817 || e >= 11818 && e <= 11822 || e === 11823 || e >= 11824 && e <= 11833 || e >= 11834 && e <= 11835 || e >= 11836 && e <= 11839 || e === 11840 || e === 11841 || e === 11842 || e >= 11843 && e <= 11855 || e >= 11856 && e <= 11857 || e === 11858 || e >= 11859 && e <= 11903 || e >= 12289 && e <= 12291 || e === 12296 || e === 12297 || e === 12298 || e === 12299 || e === 12300 || e === 12301 || e === 12302 || e === 12303 || e === 12304 || e === 12305 || e >= 12306 && e <= 12307 || e === 12308 || e === 12309 || e === 12310 || e === 12311 || e === 12312 || e === 12313 || e === 12314 || e === 12315 || e === 12316 || e === 12317 || e >= 12318 && e <= 12319 || e === 12320 || e === 12336 || e === 64830 || e === 64831 || e >= 65093 && e <= 65094;\n}\nfunction K(e) {\n e.forEach(function(t) {\n if (delete t.location, xe(t) || Te(t))\n for (var n in t.options)\n delete t.options[n].location, K(t.options[n].value);\n else\n Ee(t) && Ie(t.style) || (de(t) || ye(t)) && q(t.style) ? delete t.style.location : Se(t) && K(t.children);\n });\n}\nfunction xt(e, t) {\n t === void 0 && (t = {}), t = m({ shouldParseSkeletons: !0, requiresOtherClause: !0 }, t);\n var n = new bt(e, t).parse();\n if (n.err) {\n var r = SyntaxError(g[n.err.kind]);\n throw r.location = n.err.location, r.originalMessage = n.err.message, r;\n }\n return t != null && t.captureLocation || K(n.val), n.val;\n}\nfunction _(e, t) {\n var n = t && t.cache ? t.cache : Nt, r = t && t.serializer ? t.serializer : Ht, i = t && t.strategy ? t.strategy : St;\n return i(e, {\n cache: n,\n serializer: r\n });\n}\nfunction Tt(e) {\n return e == null || typeof e == \"number\" || typeof e == \"boolean\";\n}\nfunction Pe(e, t, n, r) {\n var i = Tt(r) ? r : n(r), a = t.get(i);\n return typeof a > \"u\" && (a = e.call(this, r), t.set(i, a)), a;\n}\nfunction Le(e, t, n) {\n var r = Array.prototype.slice.call(arguments, 3), i = n(r), a = t.get(i);\n return typeof a > \"u\" && (a = e.apply(this, r), t.set(i, a)), a;\n}\nfunction ee(e, t, n, r, i) {\n return n.bind(t, e, r, i);\n}\nfunction St(e, t) {\n var n = e.length === 1 ? Pe : Le;\n return ee(e, this, n, t.cache.create(), t.serializer);\n}\nfunction It(e, t) {\n return ee(e, this, Le, t.cache.create(), t.serializer);\n}\nfunction At(e, t) {\n return ee(e, this, Pe, t.cache.create(), t.serializer);\n}\nvar Ht = function() {\n return JSON.stringify(arguments);\n};\nfunction te() {\n this.cache = /* @__PURE__ */ Object.create(null);\n}\nte.prototype.get = function(e) {\n return this.cache[e];\n};\nte.prototype.set = function(e, t) {\n this.cache[e] = t;\n};\nvar Nt = {\n create: function() {\n return new te();\n }\n}, B = {\n variadic: It,\n monadic: At\n}, R;\n(function(e) {\n e.MISSING_VALUE = \"MISSING_VALUE\", e.INVALID_VALUE = \"INVALID_VALUE\", e.MISSING_INTL_API = \"MISSING_INTL_API\";\n})(R || (R = {}));\nvar P = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r, i) {\n var a = e.call(this, n) || this;\n return a.code = r, a.originalMessage = i, a;\n }\n return t.prototype.toString = function() {\n return \"[formatjs Error: \".concat(this.code, \"] \").concat(this.message);\n }, t;\n }(Error)\n), ce = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r, i, a) {\n return e.call(this, 'Invalid values for \"'.concat(n, '\": \"').concat(r, '\". Options are \"').concat(Object.keys(i).join('\", \"'), '\"'), R.INVALID_VALUE, a) || this;\n }\n return t;\n }(P)\n), _t = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r, i) {\n return e.call(this, 'Value for \"'.concat(n, '\" must be of type ').concat(r), R.INVALID_VALUE, i) || this;\n }\n return t;\n }(P)\n), Bt = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r) {\n return e.call(this, 'The intl string context variable \"'.concat(n, '\" was not provided to the string \"').concat(r, '\"'), R.MISSING_VALUE, r) || this;\n }\n return t;\n }(P)\n), I;\n(function(e) {\n e[e.literal = 0] = \"literal\", e[e.object = 1] = \"object\";\n})(I || (I = {}));\nfunction Rt(e) {\n return e.length < 2 ? e : e.reduce(function(t, n) {\n var r = t[t.length - 1];\n return !r || r.type !== I.literal || n.type !== I.literal ? t.push(n) : r.value += n.value, t;\n }, []);\n}\nfunction Ot(e) {\n return typeof e == \"function\";\n}\nfunction V(e, t, n, r, i, a, o) {\n if (e.length === 1 && ae(e[0]))\n return [\n {\n type: I.literal,\n value: e[0].value\n }\n ];\n for (var s = [], h = 0, l = e; h < l.length; h++) {\n var u = l[h];\n if (ae(u)) {\n s.push({\n type: I.literal,\n value: u.value\n });\n continue;\n }\n if (ze(u)) {\n typeof a == \"number\" && s.push({\n type: I.literal,\n value: n.getNumberFormat(t).format(a)\n });\n continue;\n }\n var f = u.value;\n if (!(i && f in i))\n throw new Bt(f, o);\n var c = i[f];\n if (We(u)) {\n (!c || typeof c == \"string\" || typeof c == \"number\") && (c = typeof c == \"string\" || typeof c == \"number\" ? String(c) : \"\"), s.push({\n type: typeof c == \"string\" ? I.literal : I.object,\n value: c\n });\n continue;\n }\n if (de(u)) {\n var p = typeof u.style == \"string\" ? r.date[u.style] : q(u.style) ? u.style.parsedOptions : void 0;\n s.push({\n type: I.literal,\n value: n.getDateTimeFormat(t, p).format(c)\n });\n continue;\n }\n if (ye(u)) {\n var p = typeof u.style == \"string\" ? r.time[u.style] : q(u.style) ? u.style.parsedOptions : r.time.medium;\n s.push({\n type: I.literal,\n value: n.getDateTimeFormat(t, p).format(c)\n });\n continue;\n }\n if (Ee(u)) {\n var p = typeof u.style == \"string\" ? r.number[u.style] : Ie(u.style) ? u.style.parsedOptions : void 0;\n p && p.scale && (c = c * (p.scale || 1)), s.push({\n type: I.literal,\n value: n.getNumberFormat(t, p).format(c)\n });\n continue;\n }\n if (Se(u)) {\n var b = u.children, E = u.value, y = i[E];\n if (!Ot(y))\n throw new _t(E, \"function\", o);\n var x = V(b, t, n, r, i, a), H = y(x.map(function(L) {\n return L.value;\n }));\n Array.isArray(H) || (H = [H]), s.push.apply(s, H.map(function(L) {\n return {\n type: typeof L == \"string\" ? I.literal : I.object,\n value: L\n };\n }));\n }\n if (xe(u)) {\n var T = u.options[c] || u.options.other;\n if (!T)\n throw new ce(u.value, c, Object.keys(u.options), o);\n s.push.apply(s, V(T.value, t, n, r, i));\n continue;\n }\n if (Te(u)) {\n var T = u.options[\"=\".concat(c)];\n if (!T) {\n if (!Intl.PluralRules)\n throw new P(`Intl.PluralRules is not available in this environment.\nTry polyfilling it using \"@formatjs/intl-pluralrules\"\n`, R.MISSING_INTL_API, o);\n var D = n.getPluralRules(t, { type: u.pluralType }).select(c - (u.offset || 0));\n T = u.options[D] || u.options.other;\n }\n if (!T)\n throw new ce(u.value, c, Object.keys(u.options), o);\n s.push.apply(s, V(T.value, t, n, r, i, c - (u.offset || 0)));\n continue;\n }\n }\n return Rt(s);\n}\nfunction Pt(e, t) {\n return t ? m(m(m({}, e || {}), t || {}), Object.keys(e).reduce(function(n, r) {\n return n[r] = m(m({}, e[r]), t[r] || {}), n;\n }, {})) : e;\n}\nfunction Lt(e, t) {\n return t ? Object.keys(e).reduce(function(n, r) {\n return n[r] = Pt(e[r], t[r]), n;\n }, m({}, e)) : e;\n}\nfunction Z(e) {\n return {\n create: function() {\n return {\n get: function(t) {\n return e[t];\n },\n set: function(t, n) {\n e[t] = n;\n }\n };\n }\n };\n}\nfunction Mt(e) {\n return e === void 0 && (e = {\n number: {},\n dateTime: {},\n pluralRules: {}\n }), {\n getNumberFormat: _(function() {\n for (var t, n = [], r = 0; r < arguments.length; r++)\n n[r] = arguments[r];\n return new ((t = Intl.NumberFormat).bind.apply(t, O([void 0], n, !1)))();\n }, {\n cache: Z(e.number),\n strategy: B.variadic\n }),\n getDateTimeFormat: _(function() {\n for (var t, n = [], r = 0; r < arguments.length; r++)\n n[r] = arguments[r];\n return new ((t = Intl.DateTimeFormat).bind.apply(t, O([void 0], n, !1)))();\n }, {\n cache: Z(e.dateTime),\n strategy: B.variadic\n }),\n getPluralRules: _(function() {\n for (var t, n = [], r = 0; r < arguments.length; r++)\n n[r] = arguments[r];\n return new ((t = Intl.PluralRules).bind.apply(t, O([void 0], n, !1)))();\n }, {\n cache: Z(e.pluralRules),\n strategy: B.variadic\n })\n };\n}\nvar Me = (\n /** @class */\n function() {\n function e(t, n, r, i) {\n n === void 0 && (n = e.defaultLocale);\n var a = this;\n if (this.formatterCache = {\n number: {},\n dateTime: {},\n pluralRules: {}\n }, this.format = function(h) {\n var l = a.formatToParts(h);\n if (l.length === 1)\n return l[0].value;\n var u = l.reduce(function(f, c) {\n return !f.length || c.type !== I.literal || typeof f[f.length - 1] != \"string\" ? f.push(c.value) : f[f.length - 1] += c.value, f;\n }, []);\n return u.length <= 1 ? u[0] || \"\" : u;\n }, this.formatToParts = function(h) {\n return V(a.ast, a.locales, a.formatters, a.formats, h, void 0, a.message);\n }, this.resolvedOptions = function() {\n var h;\n return {\n locale: ((h = a.resolvedLocale) === null || h === void 0 ? void 0 : h.toString()) || Intl.NumberFormat.supportedLocalesOf(a.locales)[0]\n };\n }, this.getAst = function() {\n return a.ast;\n }, this.locales = n, this.resolvedLocale = e.resolveLocale(n), typeof t == \"string\") {\n if (this.message = t, !e.__parse)\n throw new TypeError(\"IntlMessageFormat.__parse must be set to process `message` of type `string`\");\n var o = i || {};\n o.formatters;\n var s = Ze(o, [\"formatters\"]);\n this.ast = e.__parse(t, m(m({}, s), { locale: this.resolvedLocale }));\n } else\n this.ast = t;\n if (!Array.isArray(this.ast))\n throw new TypeError(\"A message must be provided as a String or AST.\");\n this.formats = Lt(e.formats, r), this.formatters = i && i.formatters || Mt(this.formatterCache);\n }\n return Object.defineProperty(e, \"defaultLocale\", {\n get: function() {\n return e.memoizedDefaultLocale || (e.memoizedDefaultLocale = new Intl.NumberFormat().resolvedOptions().locale), e.memoizedDefaultLocale;\n },\n enumerable: !1,\n configurable: !0\n }), e.memoizedDefaultLocale = null, e.resolveLocale = function(t) {\n if (!(typeof Intl.Locale > \"u\")) {\n var n = Intl.NumberFormat.supportedLocalesOf(t);\n return n.length > 0 ? new Intl.Locale(n[0]) : new Intl.Locale(typeof t == \"string\" ? t : t[0]);\n }\n }, e.__parse = xt, e.formats = {\n number: {\n integer: {\n maximumFractionDigits: 0\n },\n currency: {\n style: \"currency\"\n },\n percent: {\n style: \"percent\"\n }\n },\n date: {\n short: {\n month: \"numeric\",\n day: \"numeric\",\n year: \"2-digit\"\n },\n medium: {\n month: \"short\",\n day: \"numeric\",\n year: \"numeric\"\n },\n long: {\n month: \"long\",\n day: \"numeric\",\n year: \"numeric\"\n },\n full: {\n weekday: \"long\",\n month: \"long\",\n day: \"numeric\",\n year: \"numeric\"\n }\n },\n time: {\n short: {\n hour: \"numeric\",\n minute: \"numeric\"\n },\n medium: {\n hour: \"numeric\",\n minute: \"numeric\",\n second: \"numeric\"\n },\n long: {\n hour: \"numeric\",\n minute: \"numeric\",\n second: \"numeric\",\n timeZoneName: \"short\"\n },\n full: {\n hour: \"numeric\",\n minute: \"numeric\",\n second: \"numeric\",\n timeZoneName: \"short\"\n }\n }\n }, e;\n }()\n), S;\n(function(e) {\n e.FORMAT_ERROR = \"FORMAT_ERROR\", e.UNSUPPORTED_FORMATTER = \"UNSUPPORTED_FORMATTER\", e.INVALID_CONFIG = \"INVALID_CONFIG\", e.MISSING_DATA = \"MISSING_DATA\", e.MISSING_TRANSLATION = \"MISSING_TRANSLATION\";\n})(S || (S = {}));\nvar A = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r, i) {\n var a = this, o = i ? i instanceof Error ? i : new Error(String(i)) : void 0;\n return a = e.call(this, \"[@formatjs/intl Error \".concat(n, \"] \").concat(r, `\n`).concat(o ? `\n`.concat(o.message, `\n`).concat(o.stack) : \"\")) || this, a.code = n, typeof Error.captureStackTrace == \"function\" && Error.captureStackTrace(a, t), a;\n }\n return t;\n }(Error)\n), Ct = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r) {\n return e.call(this, S.UNSUPPORTED_FORMATTER, n, r) || this;\n }\n return t;\n }(A)\n), wt = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r) {\n return e.call(this, S.INVALID_CONFIG, n, r) || this;\n }\n return t;\n }(A)\n), me = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r) {\n return e.call(this, S.MISSING_DATA, n, r) || this;\n }\n return t;\n }(A)\n), re = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r, i) {\n return e.call(this, S.FORMAT_ERROR, \"\".concat(n, `\nLocale: `).concat(r, `\n`), i) || this;\n }\n return t;\n }(A)\n), W = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r, i, a) {\n var o = e.call(this, \"\".concat(n, `\nMessageID: `).concat(i == null ? void 0 : i.id, `\nDefault Message: `).concat(i == null ? void 0 : i.defaultMessage, `\nDescription: `).concat(i == null ? void 0 : i.description, `\n`), r, a) || this;\n return o.descriptor = i, o;\n }\n return t;\n }(re)\n), Dt = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r) {\n var i = e.call(this, S.MISSING_TRANSLATION, 'Missing message: \"'.concat(n.id, '\" for locale \"').concat(r, '\", using ').concat(n.defaultMessage ? \"default message (\".concat(typeof n.defaultMessage == \"string\" ? n.defaultMessage : n.defaultMessage.map(function(a) {\n var o;\n return (o = a.value) !== null && o !== void 0 ? o : JSON.stringify(a);\n }).join(), \")\") : \"id\", \" as fallback.\")) || this;\n return i.descriptor = n, i;\n }\n return t;\n }(A)\n);\nfunction C(e, t, n) {\n return n === void 0 && (n = {}), t.reduce(function(r, i) {\n return i in e ? r[i] = e[i] : i in n && (r[i] = n[i]), r;\n }, {});\n}\nvar Ft = function(e) {\n process.env.NODE_ENV !== \"production\" && console.error(e);\n}, Gt = function(e) {\n process.env.NODE_ENV !== \"production\" && console.warn(e);\n}, Ut = {\n formats: {},\n messages: {},\n timeZone: void 0,\n defaultLocale: \"en\",\n defaultFormats: {},\n fallbackOnEmptyString: !0,\n onError: Ft,\n onWarn: Gt\n};\nfunction Ce() {\n return {\n dateTime: {},\n number: {},\n message: {},\n relativeTime: {},\n pluralRules: {},\n list: {},\n displayNames: {}\n };\n}\nfunction M(e) {\n return {\n create: function() {\n return {\n get: function(t) {\n return e[t];\n },\n set: function(t, n) {\n e[t] = n;\n }\n };\n }\n };\n}\nfunction jt(e) {\n e === void 0 && (e = Ce());\n var t = Intl.RelativeTimeFormat, n = Intl.ListFormat, r = Intl.DisplayNames, i = _(function() {\n for (var s, h = [], l = 0; l < arguments.length; l++)\n h[l] = arguments[l];\n return new ((s = Intl.DateTimeFormat).bind.apply(s, O([void 0], h, !1)))();\n }, {\n cache: M(e.dateTime),\n strategy: B.variadic\n }), a = _(function() {\n for (var s, h = [], l = 0; l < arguments.length; l++)\n h[l] = arguments[l];\n return new ((s = Intl.NumberFormat).bind.apply(s, O([void 0], h, !1)))();\n }, {\n cache: M(e.number),\n strategy: B.variadic\n }), o = _(function() {\n for (var s, h = [], l = 0; l < arguments.length; l++)\n h[l] = arguments[l];\n return new ((s = Intl.PluralRules).bind.apply(s, O([void 0], h, !1)))();\n }, {\n cache: M(e.pluralRules),\n strategy: B.variadic\n });\n return {\n getDateTimeFormat: i,\n getNumberFormat: a,\n getMessageFormat: _(function(s, h, l, u) {\n return new Me(s, h, l, m({ formatters: {\n getNumberFormat: a,\n getDateTimeFormat: i,\n getPluralRules: o\n } }, u || {}));\n }, {\n cache: M(e.message),\n strategy: B.variadic\n }),\n getRelativeTimeFormat: _(function() {\n for (var s = [], h = 0; h < arguments.length; h++)\n s[h] = arguments[h];\n return new (t.bind.apply(t, O([void 0], s, !1)))();\n }, {\n cache: M(e.relativeTime),\n strategy: B.variadic\n }),\n getPluralRules: o,\n getListFormat: _(function() {\n for (var s = [], h = 0; h < arguments.length; h++)\n s[h] = arguments[h];\n return new (n.bind.apply(n, O([void 0], s, !1)))();\n }, {\n cache: M(e.list),\n strategy: B.variadic\n }),\n getDisplayNames: _(function() {\n for (var s = [], h = 0; h < arguments.length; h++)\n s[h] = arguments[h];\n return new (r.bind.apply(r, O([void 0], s, !1)))();\n }, {\n cache: M(e.displayNames),\n strategy: B.variadic\n })\n };\n}\nfunction ne(e, t, n, r) {\n var i = e && e[t], a;\n if (i && (a = i[n]), a)\n return a;\n r(new Ct(\"No \".concat(t, \" format named: \").concat(n)));\n}\nfunction Vt(e, t, n) {\n if (n === void 0 && (n = Error), !e)\n throw new n(t);\n}\nfunction j(e, t) {\n return Object.keys(e).reduce(function(n, r) {\n return n[r] = m({ timeZone: t }, e[r]), n;\n }, {});\n}\nfunction ge(e, t) {\n var n = Object.keys(m(m({}, e), t));\n return n.reduce(function(r, i) {\n return r[i] = m(m({}, e[i] || {}), t[i] || {}), r;\n }, {});\n}\nfunction pe(e, t) {\n if (!t)\n return e;\n var n = Me.formats;\n return m(m(m({}, n), e), { date: ge(j(n.date, t), j(e.date || {}, t)), time: ge(j(n.time, t), j(e.time || {}, t)) });\n}\nvar ve = function(e, t, n, r, i) {\n var a = e.locale, o = e.formats, s = e.messages, h = e.defaultLocale, l = e.defaultFormats, u = e.fallbackOnEmptyString, f = e.onError, c = e.timeZone, p = e.defaultRichTextElements;\n n === void 0 && (n = { id: \"\" });\n var b = n.id, E = n.defaultMessage;\n Vt(!!b, \"[@formatjs/intl] An `id` must be provided to format a message. You can either:\\n1. Configure your build toolchain with [babel-plugin-formatjs](https://formatjs.io/docs/tooling/babel-plugin)\\nor [@formatjs/ts-transformer](https://formatjs.io/docs/tooling/ts-transformer) OR\\n2. Configure your `eslint` config to include [eslint-plugin-formatjs](https://formatjs.io/docs/tooling/linter#enforce-id)\\nto autofix this issue\");\n var y = String(b), x = (\n // In case messages is Object.create(null)\n // e.g import('foo.json') from webpack)\n // See https://github.com/formatjs/formatjs/issues/1914\n s && Object.prototype.hasOwnProperty.call(s, y) && s[y]\n );\n if (Array.isArray(x) && x.length === 1 && x[0].type === d.literal)\n return x[0].value;\n if (!r && x && typeof x == \"string\" && !p)\n return x.replace(/'\\{(.*?)\\}'/gi, \"{$1}\");\n if (r = m(m({}, p), r || {}), o = pe(o, c), l = pe(l, c), !x) {\n if (u === !1 && x === \"\")\n return x;\n if ((!E || a && a.toLowerCase() !== h.toLowerCase()) && f(new Dt(n, a)), E)\n try {\n var H = t.getMessageFormat(E, h, l, i);\n return H.format(r);\n } catch (T) {\n return f(new W('Error formatting default message for: \"'.concat(y, '\", rendering default message verbatim'), a, n, T)), typeof E == \"string\" ? E : y;\n }\n return y;\n }\n try {\n var H = t.getMessageFormat(x, a, o, m({ formatters: t }, i || {}));\n return H.format(r);\n } catch (T) {\n f(new W('Error formatting message: \"'.concat(y, '\", using ').concat(E ? \"default message\" : \"id\", \" as fallback.\"), a, n, T));\n }\n if (E)\n try {\n var H = t.getMessageFormat(E, h, l, i);\n return H.format(r);\n } catch (T) {\n f(new W('Error formatting the default message for: \"'.concat(y, '\", rendering message verbatim'), a, n, T));\n }\n return typeof x == \"string\" ? x : typeof E == \"string\" ? E : y;\n}, we = [\n \"formatMatcher\",\n \"timeZone\",\n \"hour12\",\n \"weekday\",\n \"era\",\n \"year\",\n \"month\",\n \"day\",\n \"hour\",\n \"minute\",\n \"second\",\n \"timeZoneName\",\n \"hourCycle\",\n \"dateStyle\",\n \"timeStyle\",\n \"calendar\",\n // 'dayPeriod',\n \"numberingSystem\",\n \"fractionalSecondDigits\"\n];\nfunction k(e, t, n, r) {\n var i = e.locale, a = e.formats, o = e.onError, s = e.timeZone;\n r === void 0 && (r = {});\n var h = r.format, l = m(m({}, s && { timeZone: s }), h && ne(a, t, h, o)), u = C(r, we, l);\n return t === \"time\" && !u.hour && !u.minute && !u.second && !u.timeStyle && !u.dateStyle && (u = m(m({}, u), { hour: \"numeric\", minute: \"numeric\" })), n(i, u);\n}\nfunction kt(e, t) {\n for (var n = [], r = 2; r < arguments.length; r++)\n n[r - 2] = arguments[r];\n var i = n[0], a = n[1], o = a === void 0 ? {} : a, s = typeof i == \"string\" ? new Date(i || 0) : i;\n try {\n return k(e, \"date\", t, o).format(s);\n } catch (h) {\n e.onError(new A(S.FORMAT_ERROR, \"Error formatting date.\", h));\n }\n return String(s);\n}\nfunction Xt(e, t) {\n for (var n = [], r = 2; r < arguments.length; r++)\n n[r - 2] = arguments[r];\n var i = n[0], a = n[1], o = a === void 0 ? {} : a, s = typeof i == \"string\" ? new Date(i || 0) : i;\n try {\n return k(e, \"time\", t, o).format(s);\n } catch (h) {\n e.onError(new A(S.FORMAT_ERROR, \"Error formatting time.\", h));\n }\n return String(s);\n}\nfunction Zt(e, t) {\n for (var n = [], r = 2; r < arguments.length; r++)\n n[r - 2] = arguments[r];\n var i = n[0], a = n[1], o = n[2], s = o === void 0 ? {} : o, h = e.timeZone, l = e.locale, u = e.onError, f = C(s, we, h ? { timeZone: h } : {});\n try {\n return t(l, f).formatRange(i, a);\n } catch (c) {\n u(new A(S.FORMAT_ERROR, \"Error formatting date time range.\", c));\n }\n return String(i);\n}\nfunction Wt(e, t) {\n for (var n = [], r = 2; r < arguments.length; r++)\n n[r - 2] = arguments[r];\n var i = n[0], a = n[1], o = a === void 0 ? {} : a, s = typeof i == \"string\" ? new Date(i || 0) : i;\n try {\n return k(e, \"date\", t, o).formatToParts(s);\n } catch (h) {\n e.onError(new A(S.FORMAT_ERROR, \"Error formatting date.\", h));\n }\n return [];\n}\nfunction zt(e, t) {\n for (var n = [], r = 2; r < arguments.length; r++)\n n[r - 2] = arguments[r];\n var i = n[0], a = n[1], o = a === void 0 ? {} : a, s = typeof i == \"string\" ? new Date(i || 0) : i;\n try {\n return k(e, \"time\", t, o).formatToParts(s);\n } catch (h) {\n e.onError(new A(S.FORMAT_ERROR, \"Error formatting time.\", h));\n }\n return [];\n}\nvar qt = [\n \"style\",\n \"type\",\n \"fallback\",\n \"languageDisplay\"\n];\nfunction Jt(e, t, n, r) {\n var i = e.locale, a = e.onError, o = Intl.DisplayNames;\n o || a(new P(`Intl.DisplayNames is not available in this environment.\nTry polyfilling it using \"@formatjs/intl-displaynames\"\n`, R.MISSING_INTL_API));\n var s = C(r, qt);\n try {\n return t(i, s).of(n);\n } catch (h) {\n a(new A(S.FORMAT_ERROR, \"Error formatting display name.\", h));\n }\n}\nvar Qt = [\n \"type\",\n \"style\"\n], be = Date.now();\nfunction Yt(e) {\n return \"\".concat(be, \"_\").concat(e, \"_\").concat(be);\n}\nfunction $t(e, t, n, r) {\n r === void 0 && (r = {});\n var i = De(e, t, n, r).reduce(function(a, o) {\n var s = o.value;\n return typeof s != \"string\" ? a.push(s) : typeof a[a.length - 1] == \"string\" ? a[a.length - 1] += s : a.push(s), a;\n }, []);\n return i.length === 1 ? i[0] : i.length === 0 ? \"\" : i;\n}\nfunction De(e, t, n, r) {\n var i = e.locale, a = e.onError;\n r === void 0 && (r = {});\n var o = Intl.ListFormat;\n o || a(new P(`Intl.ListFormat is not available in this environment.\nTry polyfilling it using \"@formatjs/intl-listformat\"\n`, R.MISSING_INTL_API));\n var s = C(r, Qt);\n try {\n var h = {}, l = n.map(function(u, f) {\n if (typeof u == \"object\") {\n var c = Yt(f);\n return h[c] = u, c;\n }\n return String(u);\n });\n return t(i, s).formatToParts(l).map(function(u) {\n return u.type === \"literal\" ? u : m(m({}, u), { value: h[u.value] || u.value });\n });\n } catch (u) {\n a(new A(S.FORMAT_ERROR, \"Error formatting list.\", u));\n }\n return n;\n}\nvar Kt = [\"type\"];\nfunction er(e, t, n, r) {\n var i = e.locale, a = e.onError;\n r === void 0 && (r = {}), Intl.PluralRules || a(new P(`Intl.PluralRules is not available in this environment.\nTry polyfilling it using \"@formatjs/intl-pluralrules\"\n`, R.MISSING_INTL_API));\n var o = C(r, Kt);\n try {\n return t(i, o).select(n);\n } catch (s) {\n a(new re(\"Error formatting plural.\", i, s));\n }\n return \"other\";\n}\nvar tr = [\"numeric\", \"style\"];\nfunction rr(e, t, n) {\n var r = e.locale, i = e.formats, a = e.onError;\n n === void 0 && (n = {});\n var o = n.format, s = !!o && ne(i, \"relative\", o, a) || {}, h = C(n, tr, s);\n return t(r, h);\n}\nfunction nr(e, t, n, r, i) {\n i === void 0 && (i = {}), r || (r = \"second\");\n var a = Intl.RelativeTimeFormat;\n a || e.onError(new P(`Intl.RelativeTimeFormat is not available in this environment.\nTry polyfilling it using \"@formatjs/intl-relativetimeformat\"\n`, R.MISSING_INTL_API));\n try {\n return rr(e, t, i).format(n, r);\n } catch (o) {\n e.onError(new re(\"Error formatting relative time.\", e.locale, o));\n }\n return String(n);\n}\nvar ir = [\n \"style\",\n \"currency\",\n \"currencyDisplay\",\n \"unit\",\n \"unitDisplay\",\n \"useGrouping\",\n \"minimumIntegerDigits\",\n \"minimumFractionDigits\",\n \"maximumFractionDigits\",\n \"minimumSignificantDigits\",\n \"maximumSignificantDigits\",\n // ES2020 NumberFormat\n \"compactDisplay\",\n \"currencyDisplay\",\n \"currencySign\",\n \"notation\",\n \"signDisplay\",\n \"unit\",\n \"unitDisplay\",\n \"numberingSystem\"\n];\nfunction Fe(e, t, n) {\n var r = e.locale, i = e.formats, a = e.onError;\n n === void 0 && (n = {});\n var o = n.format, s = o && ne(i, \"number\", o, a) || {}, h = C(n, ir, s);\n return t(r, h);\n}\nfunction ar(e, t, n, r) {\n r === void 0 && (r = {});\n try {\n return Fe(e, t, r).format(n);\n } catch (i) {\n e.onError(new A(S.FORMAT_ERROR, \"Error formatting number.\", i));\n }\n return String(n);\n}\nfunction or(e, t, n, r) {\n r === void 0 && (r = {});\n try {\n return Fe(e, t, r).formatToParts(n);\n } catch (i) {\n e.onError(new A(S.FORMAT_ERROR, \"Error formatting number.\", i));\n }\n return [];\n}\nfunction sr(e) {\n var t = e ? e[Object.keys(e)[0]] : void 0;\n return typeof t == \"string\";\n}\nfunction ur(e) {\n e.onWarn && e.defaultRichTextElements && sr(e.messages || {}) && e.onWarn(`[@formatjs/intl] \"defaultRichTextElements\" was specified but \"message\" was not pre-compiled. \nPlease consider using \"@formatjs/cli\" to pre-compile your messages for performance.\nFor more details see https://formatjs.io/docs/getting-started/message-distribution`);\n}\nfunction hr(e, t) {\n var n = jt(t), r = m(m({}, Ut), e), i = r.locale, a = r.defaultLocale, o = r.onError;\n return i ? !Intl.NumberFormat.supportedLocalesOf(i).length && o ? o(new me('Missing locale data for locale: \"'.concat(i, '\" in Intl.NumberFormat. Using default locale: \"').concat(a, '\" as fallback. See https://formatjs.io/docs/react-intl#runtime-requirements for more details'))) : !Intl.DateTimeFormat.supportedLocalesOf(i).length && o && o(new me('Missing locale data for locale: \"'.concat(i, '\" in Intl.DateTimeFormat. Using default locale: \"').concat(a, '\" as fallback. See https://formatjs.io/docs/react-intl#runtime-requirements for more details'))) : (o && o(new wt('\"locale\" was not configured, using \"'.concat(a, '\" as fallback. See https://formatjs.io/docs/react-intl/api#intlshape for more details'))), r.locale = r.defaultLocale || \"en\"), ur(r), m(m({}, r), {\n formatters: n,\n formatNumber: ar.bind(null, r, n.getNumberFormat),\n formatNumberToParts: or.bind(null, r, n.getNumberFormat),\n formatRelativeTime: nr.bind(null, r, n.getRelativeTimeFormat),\n formatDate: kt.bind(null, r, n.getDateTimeFormat),\n formatDateToParts: Wt.bind(null, r, n.getDateTimeFormat),\n formatTime: Xt.bind(null, r, n.getDateTimeFormat),\n formatDateTimeRange: Zt.bind(null, r, n.getDateTimeFormat),\n formatTimeToParts: zt.bind(null, r, n.getDateTimeFormat),\n formatPlural: er.bind(null, r, n.getPluralRules),\n // @ts-expect-error TODO: will get to this later\n formatMessage: ve.bind(null, r, n),\n // @ts-expect-error TODO: will get to this later\n $t: ve.bind(null, r, n),\n formatList: $t.bind(null, r, n.getListFormat),\n formatListToParts: De.bind(null, r, n.getListFormat),\n formatDisplayName: Jt.bind(null, r, n.getDisplayNames)\n });\n}\nvar lr = F;\nF.flatten = F;\nF.unflatten = je;\nfunction Ge(e) {\n return e && e.constructor && typeof e.constructor.isBuffer == \"function\" && e.constructor.isBuffer(e);\n}\nfunction Ue(e) {\n return e;\n}\nfunction F(e, t) {\n t = t || {};\n const n = t.delimiter || \".\", r = t.maxDepth, i = t.transformKey || Ue, a = {};\n function o(s, h, l) {\n l = l || 1, Object.keys(s).forEach(function(u) {\n const f = s[u], c = t.safe && Array.isArray(f), p = Object.prototype.toString.call(f), b = Ge(f), E = p === \"[object Object]\" || p === \"[object Array]\", y = h ? h + n + i(u) : i(u);\n if (!c && !b && E && Object.keys(f).length && (!t.maxDepth || l < r))\n return o(f, y, l + 1);\n a[y] = f;\n });\n }\n return o(e), a;\n}\nfunction je(e, t) {\n t = t || {};\n const n = t.delimiter || \".\", r = t.overwrite || !1, i = t.transformKey || Ue, a = {};\n if (Ge(e) || Object.prototype.toString.call(e) !== \"[object Object]\")\n return e;\n function s(u) {\n const f = Number(u);\n return isNaN(f) || u.indexOf(\".\") !== -1 || t.object ? u : f;\n }\n function h(u, f, c) {\n return Object.keys(c).reduce(function(p, b) {\n return p[u + n + b] = c[b], p;\n }, f);\n }\n function l(u) {\n const f = Object.prototype.toString.call(u), c = f === \"[object Array]\", p = f === \"[object Object]\";\n if (u) {\n if (c)\n return !u.length;\n if (p)\n return !Object.keys(u).length;\n } else\n return !0;\n }\n return e = Object.keys(e).reduce(function(u, f) {\n const c = Object.prototype.toString.call(e[f]);\n return !(c === \"[object Object]\" || c === \"[object Array]\") || l(e[f]) ? (u[f] = e[f], u) : h(\n f,\n u,\n F(e[f], t)\n );\n }, {}), Object.keys(e).forEach(function(u) {\n const f = u.split(n).map(i);\n let c = s(f.shift()), p = s(f[0]), b = a;\n for (; p !== void 0; ) {\n if (c === \"__proto__\")\n return;\n const E = Object.prototype.toString.call(b[c]), y = E === \"[object Object]\" || E === \"[object Array]\";\n if (!r && !y && typeof b[c] < \"u\")\n return;\n (r && !y || !r && b[c] == null) && (b[c] = typeof p == \"number\" && !t.object ? [] : {}), b = b[c], f.length > 0 && (c = s(f.shift()), p = s(f[0]));\n }\n b[c] = je(e[u], t);\n }), a;\n}\nconst fr = Ce();\nlet Ve;\nconst gr = (e, t, n = !1) => {\n const r = hr(\n {\n locale: e,\n messages: lr.flatten(t, {\n safe: !0\n // Preserve arrays\n })\n },\n fr\n ), s = {\n t: (h, l, u) => r.formatMessage({ id: h }, l, u),\n te: (h) => !!r.messages[h],\n tm: (h) => r.messages[h] || [],\n ...r,\n source: t\n };\n return n && (Ve = s), s;\n};\nfunction pr() {\n return Ve;\n}\nconst cr = (e) => ke({\n name: \"I18nT\",\n props: {\n keypath: {\n type: String,\n required: !0\n },\n tag: {\n type: String,\n default: \"span\"\n }\n },\n setup(t, { slots: n }) {\n const r = (i) => {\n if (!i)\n return [];\n const a = /(\\{[^}]+\\})/g;\n return i.split(a).filter(Boolean);\n };\n return () => {\n const i = Object.keys(n).filter((s) => s !== \"_\"), a = e.messages[t.keypath].toString();\n let o = r(a);\n return o = o.filter((s) => s !== \"\"), o.forEach((s, h) => {\n if (!s.startsWith(\"{\") && !s.endsWith(\"}\"))\n return;\n const l = s.replace(/[\\{\\}]/g, \"\");\n l === \"0\" && n.default ? o[h] = n.default() : i.includes(l) && n[l] && (o[h] = n[l]());\n }), Xe(t.tag, t, o);\n };\n }\n}), vr = {\n install(e, t) {\n const { i18n: n } = t;\n e.component(\"I18nT\", cr(n));\n }\n};\nexport {\n vr as Translation,\n gr as createI18n,\n pr as useI18n\n};\n//# sourceMappingURL=i18n.es.js.map\n","import { createI18n, Translation } from '@kong-ui-public/i18n'\nimport english from '../locales/en.json'\n\nexport default function usei18n() {\n const i18n = createI18n('en-us', english)\n\n return {\n i18n,\n i18nT: Translation, // Translation component <i18n-t>\n }\n}\n","export default function useUtilities() {\n /**\n * Check if all of the provided items have a non-falsey value for all of the provided required props\n *\n * @param items The items to validate the prop exists for\n * @param requiredProps An array of all the required prop names\n * @returns Boolean whether or not the items have all the required props\n */\n const hasRequiredProps = (items: object[], requiredProps: string[]): boolean => {\n let isValid = true\n\n items.forEach((item: object) => {\n requiredProps.forEach((requiredProp: string) => {\n if (!item[requiredProp as keyof typeof item]) {\n isValid = false\n }\n })\n })\n\n return isValid\n }\n\n return {\n hasRequiredProps,\n }\n}\n","import useI18n from './useI18n'\nimport useUtilities from './useUtilities'\n\n// All composables must be exported as part of the default object for Cypress test stubs\nexport default {\n useI18n,\n useUtilities,\n}\n","<template>\n <div\n class=\"document-viewer\"\n data-testid=\"document-viewer\"\n >\n <Children v-if=\"hasRequiredProps\" />\n <div\n v-else\n data-testid=\"document-viewer-error\"\n >\n {{ i18n.t('docViewer.error') }}\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport renderChildren from './renderChildren'\nimport { computed } from 'vue'\nimport composables from '../composables'\n\nconst props = defineProps({\n document: {\n type: Object,\n required: true,\n },\n})\n\nconst { i18n } = composables.useI18n()\n\nconst hasRequiredProps = computed((): boolean => {\n return !!props.document\n})\n\nconst Children = () => props.document?.children ? renderChildren(props.document.children) : null\n</script>\n\n<style>\n:root {\n --document-viewer-font-family-default: Roboto, Helvetica, sans-serif;\n --document-viewer-font-family-monospace: Consolas, 'Liberation Mono', Menlo, Courier, monospace;\n}\n</style>\n<style scoped>\n.document-viewer {\n color: var(--document-viewer-color, var(--text_colors-primary, #0b172d));\n font-family: var(--document-viewer-font-family-default, var(--font-family-sans));\n font-size: var(--document-viewer-font-size, 16px);\n}\n</style>\n"],"names":["TableRowSection","TableCellAlign","isTextNode","o","_cache","_openBlock","_createElementBlock","tag","props","_a","className","__default__","nodeTypeToComponentMap","blockquote","Blockquote","code","Code","code_block","CodeBlock","emphasis","Emphasis","heading","Heading","image","Image","line_break","LineBreak","link","Link","list","List","list_item","ListItem","paragraph","Paragraph","table","Table","table_row","TableRow","table_cell","TableCell","text","Text","text_block","TextBlock","nodeTypesNotified","notifyUnknownNodeType","type","indexOf","push","console","warn","renderChildren","children","parent","map","child","restProps","component","paragraphChildren","lastItemIndex","length","forEach","paragraphChild","index","endsWith","appendSpace","_createVNode","_mergeProps","z","e","t","n","r","i","N","m","a","Ze","O","d","w","ae","We","Ee","de","ye","xe","Te","ze","Se","Ie","q","Ae","qe","Je","Qe","Ye","c","h","l","u","f","$e","oe","He","Ke","Ne","se","_e","et","ue","tt","p","U","rt","nt","X","it","at","v","ot","st","ut","ht","lt","ft","ct","mt","J","gt","Re","he","Q","le","s","Be","pt","vt","Y","fe","Oe","yt","bt","$","dt","Et","E","y","x","H","T","D","L","G","ie","K","xt","_","Nt","Ht","St","Tt","Pe","Le","ee","It","At","te","B","R","P","ce","_t","Bt","I","Rt","Ot","V","Pt","Lt","Z","Mt","Me","S","A","Ct","wt","me","re","W","Dt","C","Ft","Gt","Ut","Ce","M","jt","ne","Vt","j","ge","pe","ve","we","k","kt","Xt","Zt","Wt","zt","qt","Jt","Qt","be","Yt","$t","De","Kt","er","tr","rr","nr","ir","Fe","ar","or","sr","ur","hr","lr","F","je","Ge","Ue","b","fr","gr","cr","ke","Xe","vr","usei18n","createI18n","english","Translation","useUtilities","items","requiredProps","isValid","item","requiredProp","composables","useI18n","i18n","hasRequiredProps","computed","Children"],"mappings":"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AAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,OAAO;AAAA,IACL;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,UAAU;AAAA,IACR;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,UAAU;AAAA,IACR;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,I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A,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,MAAM,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,MAAM,QAAQA,MAAM,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,OAAOA,MAAM,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,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"}
1
+ {"version":3,"file":"document-viewer.es.js","sources":["../src/types/index.ts","../src/components/nodes/Blockquote.vue","../src/components/nodes/Code.vue","../src/components/nodes/CodeBlock.vue","../src/components/nodes/Emphasis.vue","../src/components/nodes/Heading.vue","../src/components/nodes/LineBreak.vue","../src/components/nodes/Table.vue","../src/components/nodes/TableRow.vue","../src/components/nodes/TableCell.vue","../src/components/nodes/Text.vue","../src/components/nodes/TextBlock.vue","../src/components/nodes/Paragraph.vue","../src/components/nodes/List.vue","../src/components/nodes/ListItem.vue","../src/components/renderChildren.tsx","../../../core/i18n/dist/i18n.es.js","../src/composables/useI18n.ts","../src/composables/useUtilities.ts","../src/composables/index.ts","../src/utils/toSlug.ts","../src/utils/addUniqueHeadingSlugs.ts","../src/components/DocumentViewer.vue"],"sourcesContent":["/* eslint-disable no-unused-vars */\nexport interface BaseNode<Type extends string = string> {\n type: Type\n children?: Array<BaseNode>\n}\n\n// TODO: Reach out to DevX for a proper interface\nexport interface Document extends BaseNode<'document'> {\n children: Array<BaseNode>\n version: number\n}\n\nexport enum TableRowSection {\n header = 'header',\n body = 'body',\n footer = 'footer'\n}\n\nexport enum TableCellAlign {\n left = 'left',\n center = 'center',\n right = 'right'\n}\n\nexport interface TableCellNode extends BaseNode<'table_cell'> {\n align?: TableCellAlign\n}\n\nexport interface TableRowNode extends BaseNode<'table_row'> {\n section?: TableRowSection\n children: Array<TableCellNode>\n}\n\nexport interface TextNode extends BaseNode<'text'> {\n text: string\n children: undefined\n appendSpace?: boolean\n}\n\nexport function isTextNode(o: any): o is TextNode {\n return o.type === 'text'\n}\n\nexport interface HeadingNode extends BaseNode<'heading'> {\n level: number\n}\n\nexport interface ListItemNode extends BaseNode<'list_item'> {}\n\nexport interface ListNode extends BaseNode<'list'> {\n isOrdered?: boolean\n children: Array<ListItemNode>\n}\n\nexport interface LinkNode extends BaseNode<'link'> {\n href: string\n}\n","<template>\n <blockquote>\n <slot />\n </blockquote>\n</template>\n\n<style lang=\"scss\" scoped>\nblockquote {\n background: var(--document-viewer-blockquote-background, #f8f8fa);\n border-left: 2.5px solid var(--document-viewer-blockquote-border, var(--text_colors-accent, #0b172d));\n border-radius: var(--document-viewer-blockquote-border-radius, 3px);\n font-size: 14px;\n margin: var(--spacing-sm, 12px) var(--spacing-sm, 12px);\n padding: var(--spacing-sm, 12px);\n\n :deep(blockquote p) {\n margin-bottom: 0;\n }\n\n :deep(p:last-of-type) {\n margin-bottom: 0;\n }\n}\n</style>\n","<template>\n <code>\n <slot />\n </code>\n</template>\n\n<style scoped>\ncode {\n background: var(--document-viewer-code-background, #f1f1f1);\n border-radius: var(--document-viewer-code-border-radius, 3px);\n color: var(--document-viewer-code-color, inherit);\n font-family: var(--document-viewer-code-font-family, var(--document-viewer-font-family-monospace));\n font-size: var(--document-viewer-code-font-size, 14px);\n padding: 4px 6px;\n}\n</style>\n","<template>\n <pre><code><slot /></code></pre>\n</template>\n\n<style scoped>\npre {\n background: var(--document-viewer-code-block-background, #f1f1f1);\n border-radius: var(--document-viewer-code-block-border-radius, 3px);\n color: var(--document-viewer-code-block-color, inherit);\n font-family: var(--document-viewer-code-block-font-family, var(--document-viewer-font-family-monospace));\n font-size: var(--document-viewer-code-block-font-size, 14px);\n margin-bottom: var(--spacing-sm, 12px);\n padding: 12px;\n}\n</style>\n","<template>\n <component :is=\"tag\">\n <slot />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nconst props = defineProps({\n level: {\n type: Number,\n default: 1,\n validator(value: unknown): boolean {\n if (!Number.isInteger(value)) {\n return false\n }\n\n const num = value as number\n return num > 0 && num < 3\n },\n },\n})\n\nconst tag = props.level === 1 ? 'em' : 'strong'\n</script>\n","<template>\n <component\n :is=\"tag\"\n :id=\"slug\"\n >\n <slot />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nconst props = defineProps({\n level: {\n type: Number,\n validator(value: unknown): boolean {\n if (!Number.isInteger(value)) {\n return false\n }\n\n const num = value as number\n\n return num > 0 && num < 7\n },\n default: 1,\n },\n slug: {\n type: String,\n default: '',\n },\n})\n\nconst slug = `${props.slug}`\nconst tag = `h${props.level}`\n</script>\n\n<style scoped>\nh1, h2, h3, h4, h5, h6 {\n color: var(--document-viewer-color, var(--text_colors-headings, #0b172d));\n font-family: var(--document-viewer-font-family-headings, var(--document-viewer-font-family-default));\n font-weight: var(--document-viewer-heading-font-weight, 500);\n margin-top: 0;\n}\n\nh1 {\n font-size: 32px;\n font-weight: 500;\n line-height: 38px;\n margin-bottom: var(--spacing-xxl, 48px);\n}\n\nh2 {\n font-size: 24px;\n line-height: 20px;\n margin-bottom: var(--spacing-lg, 24px);\n}\n\nh3 {\n font-size: 20px;\n line-height: 20px;\n margin-bottom: var(--spacing-sm, 12px);\n}\n\nh4 {\n font-size: 18px;\n line-height: 20px;\n margin-bottom: var(--spacing-sm, 12px);\n}\n\nh5 {\n font-size: 16px;\n line-height: 20px;\n margin-bottom: var(--spacing-sm, 12px);\n}\n\nh6 {\n font-size: 14.5px;\n line-height: 20px;\n margin-bottom: var(--spacing-sm, 12px);\n}\n\nh1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {\n margin-top: 0;\n}\n</style>\n","<template>\n <hr>\n</template>\n","<template>\n <table>\n <slot />\n </table>\n</template>\n","<template>\n <component :is=\"tag\">\n <slot />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport { PropType } from 'vue'\nimport { TableRowSection } from '../../types'\n\nconst props = defineProps({\n section: {\n type: String as PropType<TableRowSection>,\n default: TableRowSection.body,\n },\n})\n\nlet tag: string\nif (props.section === TableRowSection.header) {\n tag = 'thead'\n} else if (props.section === TableRowSection.body) {\n tag = 'tbody'\n} else if (props.section === TableRowSection.footer) {\n tag = 'tfoot'\n}\n</script>\n","<template>\n <component\n :is=\"tag\"\n :class=\"className\"\n >\n <slot />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport { PropType } from 'vue'\nimport { TableCellAlign, TableRowNode, TableRowSection } from '../../types'\n\nconst props = defineProps({\n align: {\n type: String as PropType<TableCellAlign>,\n default: TableCellAlign.left,\n },\n parent: {\n type: Object as PropType<TableRowNode>,\n required: true,\n },\n})\n\nconst tag = props.parent?.section === TableRowSection.header ? 'th' : 'td'\n\nlet className: string\nif (props.align === TableCellAlign.center) {\n className = 'align-center'\n} else if (props.align === TableCellAlign.right) {\n className = 'align-right'\n}\n</script>\n\n<style scoped>\nth, td {\n text-align: left;\n}\n\n.align-center {\n text-align: center;\n}\n\n.align-right {\n text-align: right;\n}\n</style>\n","<template>\n {{ text }}<span v-if=\"appendSpace\">&nbsp;</span>\n</template>\n\n<script lang=\"ts\">\nexport default {\n inheritAttrs: false,\n}\n</script>\n<script setup lang=\"ts\">\ndefineProps({\n text: {\n type: String,\n required: true,\n },\n appendSpace: {\n type: Boolean,\n default: false,\n },\n})\n</script>\n","<template>\n <span>\n <slot />\n </span>\n</template>\n","<template>\n <p>\n <slot />\n </p>\n</template>\n\n<style scoped>\np {\n font-size: 14px;\n line-height: 20px;\n margin: var(--document-viewer-paragraph-margin, 0 0 12px);\n}\n</style>\n","<template>\n <component :is=\"tag\">\n <slot />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nconst props = defineProps({\n isOrdered: {\n type: Boolean,\n default: false,\n },\n})\n\nconst tag = props.isOrdered ? 'ol' : 'ul'\n</script>\n\n<style scoped>\nul, ol {\n font-size: 14px;\n margin-bottom: var(--spacing-sm, 12px);\n margin-left: 16px;\n padding: 0;\n}\n\nol {\n list-style: decimal;\n}\n\nul {\n list-style: disc;\n}\n</style>\n","<template>\n <li>\n <slot />\n </li>\n</template>\n","import { Component } from 'vue'\nimport { BaseNode, isTextNode } from '../types'\nimport Blockquote from './nodes/Blockquote.vue'\nimport Code from './nodes/Code.vue'\nimport CodeBlock from './nodes/CodeBlock.vue'\nimport Emphasis from './nodes/Emphasis.vue'\nimport Heading from './nodes/Heading.vue'\nimport Image from './nodes/Image.vue'\nimport LineBreak from './nodes/LineBreak.vue'\nimport Table from './nodes/Table.vue'\nimport TableRow from './nodes/TableRow.vue'\nimport TableCell from './nodes/TableCell.vue'\nimport Text from './nodes/Text.vue'\nimport TextBlock from './nodes/TextBlock.vue'\nimport Paragraph from './nodes/Paragraph.vue'\nimport List from './nodes/List.vue'\nimport ListItem from './nodes/ListItem.vue'\nimport Link from './nodes/Link.vue'\n\n// The node to component mapping is currently static but may change in the future\nconst nodeTypeToComponentMap: Record<string, Component> = {\n blockquote: Blockquote,\n code: Code,\n code_block: CodeBlock,\n emphasis: Emphasis,\n heading: Heading,\n image: Image,\n line_break: LineBreak,\n link: Link,\n list: List,\n list_item: ListItem,\n paragraph: Paragraph,\n table: Table,\n table_row: TableRow,\n table_cell: TableCell,\n text: Text,\n text_block: TextBlock,\n}\n\nconst nodeTypesNotified: Array<string> = []\nfunction notifyUnknownNodeType(type: string) {\n if (nodeTypesNotified.indexOf(type) !== -1) {\n return\n }\n\n nodeTypesNotified.push(type)\n console.warn(`[DocumentViewer] Unable to render an unknown node type \"${type}\"`)\n}\n\nexport default function renderChildren<ChildTypes extends BaseNode>(children: Array<ChildTypes>, parent?: BaseNode): Component {\n return children.map((child) => {\n if (!child) {\n return null\n }\n\n const { type, children, ...restProps } = child\n const component = nodeTypeToComponentMap[child.type]\n\n if (!component) {\n notifyUnknownNodeType(type)\n return null\n }\n\n // This is to fix an issue with text blocks that are beside another element\n // not having a space between them\n if (child?.type === 'paragraph' && child?.children) {\n const paragraphChildren = child.children\n const lastItemIndex = paragraphChildren.length - 1\n\n paragraphChildren.forEach((paragraphChild, index) => {\n if (isTextNode(paragraphChild) && !paragraphChild.text?.endsWith(' ') && index !== lastItemIndex) {\n paragraphChild.appendSpace = true\n }\n })\n }\n\n return (\n <component {...restProps} parent={parent}>\n {() => children && renderChildren(children, child)}\n </component>\n )\n })\n}\n","import { defineComponent as ke, h as Xe } from \"vue\";\nvar z = function(e, t) {\n return z = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(n, r) {\n n.__proto__ = r;\n } || function(n, r) {\n for (var i in r)\n Object.prototype.hasOwnProperty.call(r, i) && (n[i] = r[i]);\n }, z(e, t);\n};\nfunction N(e, t) {\n if (typeof t != \"function\" && t !== null)\n throw new TypeError(\"Class extends value \" + String(t) + \" is not a constructor or null\");\n z(e, t);\n function n() {\n this.constructor = e;\n }\n e.prototype = t === null ? Object.create(t) : (n.prototype = t.prototype, new n());\n}\nvar m = function() {\n return m = Object.assign || function(t) {\n for (var n, r = 1, i = arguments.length; r < i; r++) {\n n = arguments[r];\n for (var a in n)\n Object.prototype.hasOwnProperty.call(n, a) && (t[a] = n[a]);\n }\n return t;\n }, m.apply(this, arguments);\n};\nfunction Ze(e, t) {\n var n = {};\n for (var r in e)\n Object.prototype.hasOwnProperty.call(e, r) && t.indexOf(r) < 0 && (n[r] = e[r]);\n if (e != null && typeof Object.getOwnPropertySymbols == \"function\")\n for (var i = 0, r = Object.getOwnPropertySymbols(e); i < r.length; i++)\n t.indexOf(r[i]) < 0 && Object.prototype.propertyIsEnumerable.call(e, r[i]) && (n[r[i]] = e[r[i]]);\n return n;\n}\nfunction O(e, t, n) {\n if (n || arguments.length === 2)\n for (var r = 0, i = t.length, a; r < i; r++)\n (a || !(r in t)) && (a || (a = Array.prototype.slice.call(t, 0, r)), a[r] = t[r]);\n return e.concat(a || Array.prototype.slice.call(t));\n}\nvar g;\n(function(e) {\n e[e.EXPECT_ARGUMENT_CLOSING_BRACE = 1] = \"EXPECT_ARGUMENT_CLOSING_BRACE\", e[e.EMPTY_ARGUMENT = 2] = \"EMPTY_ARGUMENT\", e[e.MALFORMED_ARGUMENT = 3] = \"MALFORMED_ARGUMENT\", e[e.EXPECT_ARGUMENT_TYPE = 4] = \"EXPECT_ARGUMENT_TYPE\", e[e.INVALID_ARGUMENT_TYPE = 5] = \"INVALID_ARGUMENT_TYPE\", e[e.EXPECT_ARGUMENT_STYLE = 6] = \"EXPECT_ARGUMENT_STYLE\", e[e.INVALID_NUMBER_SKELETON = 7] = \"INVALID_NUMBER_SKELETON\", e[e.INVALID_DATE_TIME_SKELETON = 8] = \"INVALID_DATE_TIME_SKELETON\", e[e.EXPECT_NUMBER_SKELETON = 9] = \"EXPECT_NUMBER_SKELETON\", e[e.EXPECT_DATE_TIME_SKELETON = 10] = \"EXPECT_DATE_TIME_SKELETON\", e[e.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE = 11] = \"UNCLOSED_QUOTE_IN_ARGUMENT_STYLE\", e[e.EXPECT_SELECT_ARGUMENT_OPTIONS = 12] = \"EXPECT_SELECT_ARGUMENT_OPTIONS\", e[e.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE = 13] = \"EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE\", e[e.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE = 14] = \"INVALID_PLURAL_ARGUMENT_OFFSET_VALUE\", e[e.EXPECT_SELECT_ARGUMENT_SELECTOR = 15] = \"EXPECT_SELECT_ARGUMENT_SELECTOR\", e[e.EXPECT_PLURAL_ARGUMENT_SELECTOR = 16] = \"EXPECT_PLURAL_ARGUMENT_SELECTOR\", e[e.EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT = 17] = \"EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT\", e[e.EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT = 18] = \"EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT\", e[e.INVALID_PLURAL_ARGUMENT_SELECTOR = 19] = \"INVALID_PLURAL_ARGUMENT_SELECTOR\", e[e.DUPLICATE_PLURAL_ARGUMENT_SELECTOR = 20] = \"DUPLICATE_PLURAL_ARGUMENT_SELECTOR\", e[e.DUPLICATE_SELECT_ARGUMENT_SELECTOR = 21] = \"DUPLICATE_SELECT_ARGUMENT_SELECTOR\", e[e.MISSING_OTHER_CLAUSE = 22] = \"MISSING_OTHER_CLAUSE\", e[e.INVALID_TAG = 23] = \"INVALID_TAG\", e[e.INVALID_TAG_NAME = 25] = \"INVALID_TAG_NAME\", e[e.UNMATCHED_CLOSING_TAG = 26] = \"UNMATCHED_CLOSING_TAG\", e[e.UNCLOSED_TAG = 27] = \"UNCLOSED_TAG\";\n})(g || (g = {}));\nvar d;\n(function(e) {\n e[e.literal = 0] = \"literal\", e[e.argument = 1] = \"argument\", e[e.number = 2] = \"number\", e[e.date = 3] = \"date\", e[e.time = 4] = \"time\", e[e.select = 5] = \"select\", e[e.plural = 6] = \"plural\", e[e.pound = 7] = \"pound\", e[e.tag = 8] = \"tag\";\n})(d || (d = {}));\nvar w;\n(function(e) {\n e[e.number = 0] = \"number\", e[e.dateTime = 1] = \"dateTime\";\n})(w || (w = {}));\nfunction ae(e) {\n return e.type === d.literal;\n}\nfunction We(e) {\n return e.type === d.argument;\n}\nfunction Ee(e) {\n return e.type === d.number;\n}\nfunction de(e) {\n return e.type === d.date;\n}\nfunction ye(e) {\n return e.type === d.time;\n}\nfunction xe(e) {\n return e.type === d.select;\n}\nfunction Te(e) {\n return e.type === d.plural;\n}\nfunction ze(e) {\n return e.type === d.pound;\n}\nfunction Se(e) {\n return e.type === d.tag;\n}\nfunction Ie(e) {\n return !!(e && typeof e == \"object\" && e.type === w.number);\n}\nfunction q(e) {\n return !!(e && typeof e == \"object\" && e.type === w.dateTime);\n}\nvar Ae = /[ \\xA0\\u1680\\u2000-\\u200A\\u202F\\u205F\\u3000]/, qe = /(?:[Eec]{1,6}|G{1,5}|[Qq]{1,5}|(?:[yYur]+|U{1,5})|[ML]{1,5}|d{1,2}|D{1,3}|F{1}|[abB]{1,5}|[hkHK]{1,2}|w{1,2}|W{1}|m{1,2}|s{1,2}|[zZOvVxX]{1,4})(?=([^']*'[^']*')*[^']*$)/g;\nfunction Je(e) {\n var t = {};\n return e.replace(qe, function(n) {\n var r = n.length;\n switch (n[0]) {\n case \"G\":\n t.era = r === 4 ? \"long\" : r === 5 ? \"narrow\" : \"short\";\n break;\n case \"y\":\n t.year = r === 2 ? \"2-digit\" : \"numeric\";\n break;\n case \"Y\":\n case \"u\":\n case \"U\":\n case \"r\":\n throw new RangeError(\"`Y/u/U/r` (year) patterns are not supported, use `y` instead\");\n case \"q\":\n case \"Q\":\n throw new RangeError(\"`q/Q` (quarter) patterns are not supported\");\n case \"M\":\n case \"L\":\n t.month = [\"numeric\", \"2-digit\", \"short\", \"long\", \"narrow\"][r - 1];\n break;\n case \"w\":\n case \"W\":\n throw new RangeError(\"`w/W` (week) patterns are not supported\");\n case \"d\":\n t.day = [\"numeric\", \"2-digit\"][r - 1];\n break;\n case \"D\":\n case \"F\":\n case \"g\":\n throw new RangeError(\"`D/F/g` (day) patterns are not supported, use `d` instead\");\n case \"E\":\n t.weekday = r === 4 ? \"short\" : r === 5 ? \"narrow\" : \"short\";\n break;\n case \"e\":\n if (r < 4)\n throw new RangeError(\"`e..eee` (weekday) patterns are not supported\");\n t.weekday = [\"short\", \"long\", \"narrow\", \"short\"][r - 4];\n break;\n case \"c\":\n if (r < 4)\n throw new RangeError(\"`c..ccc` (weekday) patterns are not supported\");\n t.weekday = [\"short\", \"long\", \"narrow\", \"short\"][r - 4];\n break;\n case \"a\":\n t.hour12 = !0;\n break;\n case \"b\":\n case \"B\":\n throw new RangeError(\"`b/B` (period) patterns are not supported, use `a` instead\");\n case \"h\":\n t.hourCycle = \"h12\", t.hour = [\"numeric\", \"2-digit\"][r - 1];\n break;\n case \"H\":\n t.hourCycle = \"h23\", t.hour = [\"numeric\", \"2-digit\"][r - 1];\n break;\n case \"K\":\n t.hourCycle = \"h11\", t.hour = [\"numeric\", \"2-digit\"][r - 1];\n break;\n case \"k\":\n t.hourCycle = \"h24\", t.hour = [\"numeric\", \"2-digit\"][r - 1];\n break;\n case \"j\":\n case \"J\":\n case \"C\":\n throw new RangeError(\"`j/J/C` (hour) patterns are not supported, use `h/H/K/k` instead\");\n case \"m\":\n t.minute = [\"numeric\", \"2-digit\"][r - 1];\n break;\n case \"s\":\n t.second = [\"numeric\", \"2-digit\"][r - 1];\n break;\n case \"S\":\n case \"A\":\n throw new RangeError(\"`S/A` (second) patterns are not supported, use `s` instead\");\n case \"z\":\n t.timeZoneName = r < 4 ? \"short\" : \"long\";\n break;\n case \"Z\":\n case \"O\":\n case \"v\":\n case \"V\":\n case \"X\":\n case \"x\":\n throw new RangeError(\"`Z/O/v/V/X/x` (timeZone) patterns are not supported, use `z` instead\");\n }\n return \"\";\n }), t;\n}\nvar Qe = /[\\t-\\r \\x85\\u200E\\u200F\\u2028\\u2029]/i;\nfunction Ye(e) {\n if (e.length === 0)\n throw new Error(\"Number skeleton cannot be empty\");\n for (var t = e.split(Qe).filter(function(c) {\n return c.length > 0;\n }), n = [], r = 0, i = t; r < i.length; r++) {\n var a = i[r], o = a.split(\"/\");\n if (o.length === 0)\n throw new Error(\"Invalid number skeleton\");\n for (var s = o[0], h = o.slice(1), l = 0, u = h; l < u.length; l++) {\n var f = u[l];\n if (f.length === 0)\n throw new Error(\"Invalid number skeleton\");\n }\n n.push({ stem: s, options: h });\n }\n return n;\n}\nfunction $e(e) {\n return e.replace(/^(.*?)-/, \"\");\n}\nvar oe = /^\\.(?:(0+)(\\*)?|(#+)|(0+)(#+))$/g, He = /^(@+)?(\\+|#+)?[rs]?$/g, Ke = /(\\*)(0+)|(#+)(0+)|(0+)/g, Ne = /^(0+)$/;\nfunction se(e) {\n var t = {};\n return e[e.length - 1] === \"r\" ? t.roundingPriority = \"morePrecision\" : e[e.length - 1] === \"s\" && (t.roundingPriority = \"lessPrecision\"), e.replace(He, function(n, r, i) {\n return typeof i != \"string\" ? (t.minimumSignificantDigits = r.length, t.maximumSignificantDigits = r.length) : i === \"+\" ? t.minimumSignificantDigits = r.length : r[0] === \"#\" ? t.maximumSignificantDigits = r.length : (t.minimumSignificantDigits = r.length, t.maximumSignificantDigits = r.length + (typeof i == \"string\" ? i.length : 0)), \"\";\n }), t;\n}\nfunction _e(e) {\n switch (e) {\n case \"sign-auto\":\n return {\n signDisplay: \"auto\"\n };\n case \"sign-accounting\":\n case \"()\":\n return {\n currencySign: \"accounting\"\n };\n case \"sign-always\":\n case \"+!\":\n return {\n signDisplay: \"always\"\n };\n case \"sign-accounting-always\":\n case \"()!\":\n return {\n signDisplay: \"always\",\n currencySign: \"accounting\"\n };\n case \"sign-except-zero\":\n case \"+?\":\n return {\n signDisplay: \"exceptZero\"\n };\n case \"sign-accounting-except-zero\":\n case \"()?\":\n return {\n signDisplay: \"exceptZero\",\n currencySign: \"accounting\"\n };\n case \"sign-never\":\n case \"+_\":\n return {\n signDisplay: \"never\"\n };\n }\n}\nfunction et(e) {\n var t;\n if (e[0] === \"E\" && e[1] === \"E\" ? (t = {\n notation: \"engineering\"\n }, e = e.slice(2)) : e[0] === \"E\" && (t = {\n notation: \"scientific\"\n }, e = e.slice(1)), t) {\n var n = e.slice(0, 2);\n if (n === \"+!\" ? (t.signDisplay = \"always\", e = e.slice(2)) : n === \"+?\" && (t.signDisplay = \"exceptZero\", e = e.slice(2)), !Ne.test(e))\n throw new Error(\"Malformed concise eng/scientific notation\");\n t.minimumIntegerDigits = e.length;\n }\n return t;\n}\nfunction ue(e) {\n var t = {}, n = _e(e);\n return n || t;\n}\nfunction tt(e) {\n for (var t = {}, n = 0, r = e; n < r.length; n++) {\n var i = r[n];\n switch (i.stem) {\n case \"percent\":\n case \"%\":\n t.style = \"percent\";\n continue;\n case \"%x100\":\n t.style = \"percent\", t.scale = 100;\n continue;\n case \"currency\":\n t.style = \"currency\", t.currency = i.options[0];\n continue;\n case \"group-off\":\n case \",_\":\n t.useGrouping = !1;\n continue;\n case \"precision-integer\":\n case \".\":\n t.maximumFractionDigits = 0;\n continue;\n case \"measure-unit\":\n case \"unit\":\n t.style = \"unit\", t.unit = $e(i.options[0]);\n continue;\n case \"compact-short\":\n case \"K\":\n t.notation = \"compact\", t.compactDisplay = \"short\";\n continue;\n case \"compact-long\":\n case \"KK\":\n t.notation = \"compact\", t.compactDisplay = \"long\";\n continue;\n case \"scientific\":\n t = m(m(m({}, t), { notation: \"scientific\" }), i.options.reduce(function(h, l) {\n return m(m({}, h), ue(l));\n }, {}));\n continue;\n case \"engineering\":\n t = m(m(m({}, t), { notation: \"engineering\" }), i.options.reduce(function(h, l) {\n return m(m({}, h), ue(l));\n }, {}));\n continue;\n case \"notation-simple\":\n t.notation = \"standard\";\n continue;\n case \"unit-width-narrow\":\n t.currencyDisplay = \"narrowSymbol\", t.unitDisplay = \"narrow\";\n continue;\n case \"unit-width-short\":\n t.currencyDisplay = \"code\", t.unitDisplay = \"short\";\n continue;\n case \"unit-width-full-name\":\n t.currencyDisplay = \"name\", t.unitDisplay = \"long\";\n continue;\n case \"unit-width-iso-code\":\n t.currencyDisplay = \"symbol\";\n continue;\n case \"scale\":\n t.scale = parseFloat(i.options[0]);\n continue;\n case \"integer-width\":\n if (i.options.length > 1)\n throw new RangeError(\"integer-width stems only accept a single optional option\");\n i.options[0].replace(Ke, function(h, l, u, f, c, p) {\n if (l)\n t.minimumIntegerDigits = u.length;\n else {\n if (f && c)\n throw new Error(\"We currently do not support maximum integer digits\");\n if (p)\n throw new Error(\"We currently do not support exact integer digits\");\n }\n return \"\";\n });\n continue;\n }\n if (Ne.test(i.stem)) {\n t.minimumIntegerDigits = i.stem.length;\n continue;\n }\n if (oe.test(i.stem)) {\n if (i.options.length > 1)\n throw new RangeError(\"Fraction-precision stems only accept a single optional option\");\n i.stem.replace(oe, function(h, l, u, f, c, p) {\n return u === \"*\" ? t.minimumFractionDigits = l.length : f && f[0] === \"#\" ? t.maximumFractionDigits = f.length : c && p ? (t.minimumFractionDigits = c.length, t.maximumFractionDigits = c.length + p.length) : (t.minimumFractionDigits = l.length, t.maximumFractionDigits = l.length), \"\";\n });\n var a = i.options[0];\n a === \"w\" ? t = m(m({}, t), { trailingZeroDisplay: \"stripIfInteger\" }) : a && (t = m(m({}, t), se(a)));\n continue;\n }\n if (He.test(i.stem)) {\n t = m(m({}, t), se(i.stem));\n continue;\n }\n var o = _e(i.stem);\n o && (t = m(m({}, t), o));\n var s = et(i.stem);\n s && (t = m(m({}, t), s));\n }\n return t;\n}\nvar U = {\n AX: [\n \"H\"\n ],\n BQ: [\n \"H\"\n ],\n CP: [\n \"H\"\n ],\n CZ: [\n \"H\"\n ],\n DK: [\n \"H\"\n ],\n FI: [\n \"H\"\n ],\n ID: [\n \"H\"\n ],\n IS: [\n \"H\"\n ],\n ML: [\n \"H\"\n ],\n NE: [\n \"H\"\n ],\n RU: [\n \"H\"\n ],\n SE: [\n \"H\"\n ],\n SJ: [\n \"H\"\n ],\n SK: [\n \"H\"\n ],\n AS: [\n \"h\",\n \"H\"\n ],\n BT: [\n \"h\",\n \"H\"\n ],\n DJ: [\n \"h\",\n \"H\"\n ],\n ER: [\n \"h\",\n \"H\"\n ],\n GH: [\n \"h\",\n \"H\"\n ],\n IN: [\n \"h\",\n \"H\"\n ],\n LS: [\n \"h\",\n \"H\"\n ],\n PG: [\n \"h\",\n \"H\"\n ],\n PW: [\n \"h\",\n \"H\"\n ],\n SO: [\n \"h\",\n \"H\"\n ],\n TO: [\n \"h\",\n \"H\"\n ],\n VU: [\n \"h\",\n \"H\"\n ],\n WS: [\n \"h\",\n \"H\"\n ],\n \"001\": [\n \"H\",\n \"h\"\n ],\n AL: [\n \"h\",\n \"H\",\n \"hB\"\n ],\n TD: [\n \"h\",\n \"H\",\n \"hB\"\n ],\n \"ca-ES\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n CF: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n CM: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"fr-CA\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"gl-ES\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"it-CH\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n \"it-IT\": [\n \"H\",\n \"h\",\n \"hB\"\n ],\n LU: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n NP: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n PF: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n SC: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n SM: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n SN: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n TF: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n VA: [\n \"H\",\n \"h\",\n \"hB\"\n ],\n CY: [\n \"h\",\n \"H\",\n \"hb\",\n \"hB\"\n ],\n GR: [\n \"h\",\n \"H\",\n \"hb\",\n \"hB\"\n ],\n CO: [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n DO: [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n KP: [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n KR: [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n NA: [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n PA: [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n PR: [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n VE: [\n \"h\",\n \"H\",\n \"hB\",\n \"hb\"\n ],\n AC: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n AI: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n BW: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n BZ: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n CC: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n CK: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n CX: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n DG: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n FK: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n GB: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n GG: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n GI: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n IE: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n IM: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n IO: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n JE: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n LT: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n MK: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n MN: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n MS: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n NF: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n NG: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n NR: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n NU: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n PN: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n SH: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n SX: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n TA: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n ZA: [\n \"H\",\n \"h\",\n \"hb\",\n \"hB\"\n ],\n \"af-ZA\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n AR: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n CL: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n CR: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n CU: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n EA: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-BO\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-BR\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-EC\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-ES\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-GQ\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n \"es-PE\": [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n GT: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n HN: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n IC: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n KG: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n KM: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n LK: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n MA: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n MX: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n NI: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n PY: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n SV: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n UY: [\n \"H\",\n \"h\",\n \"hB\",\n \"hb\"\n ],\n JP: [\n \"H\",\n \"h\",\n \"K\"\n ],\n AD: [\n \"H\",\n \"hB\"\n ],\n AM: [\n \"H\",\n \"hB\"\n ],\n AO: [\n \"H\",\n \"hB\"\n ],\n AT: [\n \"H\",\n \"hB\"\n ],\n AW: [\n \"H\",\n \"hB\"\n ],\n BE: [\n \"H\",\n \"hB\"\n ],\n BF: [\n \"H\",\n \"hB\"\n ],\n BJ: [\n \"H\",\n \"hB\"\n ],\n BL: [\n \"H\",\n \"hB\"\n ],\n BR: [\n \"H\",\n \"hB\"\n ],\n CG: [\n \"H\",\n \"hB\"\n ],\n CI: [\n \"H\",\n \"hB\"\n ],\n CV: [\n \"H\",\n \"hB\"\n ],\n DE: [\n \"H\",\n \"hB\"\n ],\n EE: [\n \"H\",\n \"hB\"\n ],\n FR: [\n \"H\",\n \"hB\"\n ],\n GA: [\n \"H\",\n \"hB\"\n ],\n GF: [\n \"H\",\n \"hB\"\n ],\n GN: [\n \"H\",\n \"hB\"\n ],\n GP: [\n \"H\",\n \"hB\"\n ],\n GW: [\n \"H\",\n \"hB\"\n ],\n HR: [\n \"H\",\n \"hB\"\n ],\n IL: [\n \"H\",\n \"hB\"\n ],\n IT: [\n \"H\",\n \"hB\"\n ],\n KZ: [\n \"H\",\n \"hB\"\n ],\n MC: [\n \"H\",\n \"hB\"\n ],\n MD: [\n \"H\",\n \"hB\"\n ],\n MF: [\n \"H\",\n \"hB\"\n ],\n MQ: [\n \"H\",\n \"hB\"\n ],\n MZ: [\n \"H\",\n \"hB\"\n ],\n NC: [\n \"H\",\n \"hB\"\n ],\n NL: [\n \"H\",\n \"hB\"\n ],\n PM: [\n \"H\",\n \"hB\"\n ],\n PT: [\n \"H\",\n \"hB\"\n ],\n RE: [\n \"H\",\n \"hB\"\n ],\n RO: [\n \"H\",\n \"hB\"\n ],\n SI: [\n \"H\",\n \"hB\"\n ],\n SR: [\n \"H\",\n \"hB\"\n ],\n ST: [\n \"H\",\n \"hB\"\n ],\n TG: [\n \"H\",\n \"hB\"\n ],\n TR: [\n \"H\",\n \"hB\"\n ],\n WF: [\n \"H\",\n \"hB\"\n ],\n YT: [\n \"H\",\n \"hB\"\n ],\n BD: [\n \"h\",\n \"hB\",\n \"H\"\n ],\n PK: [\n \"h\",\n \"hB\",\n \"H\"\n ],\n AZ: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n BA: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n BG: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n CH: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n GE: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n LI: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n ME: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n RS: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n UA: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n UZ: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n XK: [\n \"H\",\n \"hB\",\n \"h\"\n ],\n AG: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n AU: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n BB: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n BM: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n BS: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n CA: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n DM: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n \"en-001\": [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n FJ: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n FM: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n GD: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n GM: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n GU: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n GY: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n JM: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n KI: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n KN: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n KY: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n LC: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n LR: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n MH: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n MP: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n MW: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n NZ: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n SB: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n SG: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n SL: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n SS: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n SZ: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n TC: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n TT: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n UM: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n US: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n VC: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n VG: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n VI: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n ZM: [\n \"h\",\n \"hb\",\n \"H\",\n \"hB\"\n ],\n BO: [\n \"H\",\n \"hB\",\n \"h\",\n \"hb\"\n ],\n EC: [\n \"H\",\n \"hB\",\n \"h\",\n \"hb\"\n ],\n ES: [\n \"H\",\n \"hB\",\n \"h\",\n \"hb\"\n ],\n GQ: [\n \"H\",\n \"hB\",\n \"h\",\n \"hb\"\n ],\n PE: [\n \"H\",\n \"hB\",\n \"h\",\n \"hb\"\n ],\n AE: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n \"ar-001\": [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n BH: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n DZ: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n EG: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n EH: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n HK: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n IQ: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n JO: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n KW: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n LB: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n LY: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n MO: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n MR: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n OM: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n PH: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n PS: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n QA: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n SA: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n SD: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n SY: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n TN: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n YE: [\n \"h\",\n \"hB\",\n \"hb\",\n \"H\"\n ],\n AF: [\n \"H\",\n \"hb\",\n \"hB\",\n \"h\"\n ],\n LA: [\n \"H\",\n \"hb\",\n \"hB\",\n \"h\"\n ],\n CN: [\n \"H\",\n \"hB\",\n \"hb\",\n \"h\"\n ],\n LV: [\n \"H\",\n \"hB\",\n \"hb\",\n \"h\"\n ],\n TL: [\n \"H\",\n \"hB\",\n \"hb\",\n \"h\"\n ],\n \"zu-ZA\": [\n \"H\",\n \"hB\",\n \"hb\",\n \"h\"\n ],\n CD: [\n \"hB\",\n \"H\"\n ],\n IR: [\n \"hB\",\n \"H\"\n ],\n \"hi-IN\": [\n \"hB\",\n \"h\",\n \"H\"\n ],\n \"kn-IN\": [\n \"hB\",\n \"h\",\n \"H\"\n ],\n \"ml-IN\": [\n \"hB\",\n \"h\",\n \"H\"\n ],\n \"te-IN\": [\n \"hB\",\n \"h\",\n \"H\"\n ],\n KH: [\n \"hB\",\n \"h\",\n \"H\",\n \"hb\"\n ],\n \"ta-IN\": [\n \"hB\",\n \"h\",\n \"hb\",\n \"H\"\n ],\n BN: [\n \"hb\",\n \"hB\",\n \"h\",\n \"H\"\n ],\n MY: [\n \"hb\",\n \"hB\",\n \"h\",\n \"H\"\n ],\n ET: [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n \"gu-IN\": [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n \"mr-IN\": [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n \"pa-IN\": [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n TW: [\n \"hB\",\n \"hb\",\n \"h\",\n \"H\"\n ],\n KE: [\n \"hB\",\n \"hb\",\n \"H\",\n \"h\"\n ],\n MM: [\n \"hB\",\n \"hb\",\n \"H\",\n \"h\"\n ],\n TZ: [\n \"hB\",\n \"hb\",\n \"H\",\n \"h\"\n ],\n UG: [\n \"hB\",\n \"hb\",\n \"H\",\n \"h\"\n ]\n};\nfunction rt(e, t) {\n for (var n = \"\", r = 0; r < e.length; r++) {\n var i = e.charAt(r);\n if (i === \"j\") {\n for (var a = 0; r + 1 < e.length && e.charAt(r + 1) === i; )\n a++, r++;\n var o = 1 + (a & 1), s = a < 2 ? 1 : 3 + (a >> 1), h = \"a\", l = nt(t);\n for ((l == \"H\" || l == \"k\") && (s = 0); s-- > 0; )\n n += h;\n for (; o-- > 0; )\n n = l + n;\n } else\n i === \"J\" ? n += \"H\" : n += i;\n }\n return n;\n}\nfunction nt(e) {\n var t = e.hourCycle;\n if (t === void 0 && // @ts-ignore hourCycle(s) is not identified yet\n e.hourCycles && // @ts-ignore\n e.hourCycles.length && (t = e.hourCycles[0]), t)\n switch (t) {\n case \"h24\":\n return \"k\";\n case \"h23\":\n return \"H\";\n case \"h12\":\n return \"h\";\n case \"h11\":\n return \"K\";\n default:\n throw new Error(\"Invalid hourCycle\");\n }\n var n = e.language, r;\n n !== \"root\" && (r = e.maximize().region);\n var i = U[r || \"\"] || U[n || \"\"] || U[\"\".concat(n, \"-001\")] || U[\"001\"];\n return i[0];\n}\nvar X, it = new RegExp(\"^\".concat(Ae.source, \"*\")), at = new RegExp(\"\".concat(Ae.source, \"*$\"));\nfunction v(e, t) {\n return { start: e, end: t };\n}\nvar ot = !!String.prototype.startsWith, st = !!String.fromCodePoint, ut = !!Object.fromEntries, ht = !!String.prototype.codePointAt, lt = !!String.prototype.trimStart, ft = !!String.prototype.trimEnd, ct = !!Number.isSafeInteger, mt = ct ? Number.isSafeInteger : function(e) {\n return typeof e == \"number\" && isFinite(e) && Math.floor(e) === e && Math.abs(e) <= 9007199254740991;\n}, J = !0;\ntry {\n var gt = Re(\"([^\\\\p{White_Space}\\\\p{Pattern_Syntax}]*)\", \"yu\");\n J = ((X = gt.exec(\"a\")) === null || X === void 0 ? void 0 : X[0]) === \"a\";\n} catch {\n J = !1;\n}\nvar he = ot ? (\n // Native\n function(t, n, r) {\n return t.startsWith(n, r);\n }\n) : (\n // For IE11\n function(t, n, r) {\n return t.slice(r, r + n.length) === n;\n }\n), Q = st ? String.fromCodePoint : (\n // IE11\n function() {\n for (var t = [], n = 0; n < arguments.length; n++)\n t[n] = arguments[n];\n for (var r = \"\", i = t.length, a = 0, o; i > a; ) {\n if (o = t[a++], o > 1114111)\n throw RangeError(o + \" is not a valid code point\");\n r += o < 65536 ? String.fromCharCode(o) : String.fromCharCode(((o -= 65536) >> 10) + 55296, o % 1024 + 56320);\n }\n return r;\n }\n), le = (\n // native\n ut ? Object.fromEntries : (\n // Ponyfill\n function(t) {\n for (var n = {}, r = 0, i = t; r < i.length; r++) {\n var a = i[r], o = a[0], s = a[1];\n n[o] = s;\n }\n return n;\n }\n )\n), Be = ht ? (\n // Native\n function(t, n) {\n return t.codePointAt(n);\n }\n) : (\n // IE 11\n function(t, n) {\n var r = t.length;\n if (!(n < 0 || n >= r)) {\n var i = t.charCodeAt(n), a;\n return i < 55296 || i > 56319 || n + 1 === r || (a = t.charCodeAt(n + 1)) < 56320 || a > 57343 ? i : (i - 55296 << 10) + (a - 56320) + 65536;\n }\n }\n), pt = lt ? (\n // Native\n function(t) {\n return t.trimStart();\n }\n) : (\n // Ponyfill\n function(t) {\n return t.replace(it, \"\");\n }\n), vt = ft ? (\n // Native\n function(t) {\n return t.trimEnd();\n }\n) : (\n // Ponyfill\n function(t) {\n return t.replace(at, \"\");\n }\n);\nfunction Re(e, t) {\n return new RegExp(e, t);\n}\nvar Y;\nif (J) {\n var fe = Re(\"([^\\\\p{White_Space}\\\\p{Pattern_Syntax}]*)\", \"yu\");\n Y = function(t, n) {\n var r;\n fe.lastIndex = n;\n var i = fe.exec(t);\n return (r = i[1]) !== null && r !== void 0 ? r : \"\";\n };\n} else\n Y = function(t, n) {\n for (var r = []; ; ) {\n var i = Be(t, n);\n if (i === void 0 || Oe(i) || yt(i))\n break;\n r.push(i), n += i >= 65536 ? 2 : 1;\n }\n return Q.apply(void 0, r);\n };\nvar bt = (\n /** @class */\n function() {\n function e(t, n) {\n n === void 0 && (n = {}), this.message = t, this.position = { offset: 0, line: 1, column: 1 }, this.ignoreTag = !!n.ignoreTag, this.locale = n.locale, this.requiresOtherClause = !!n.requiresOtherClause, this.shouldParseSkeletons = !!n.shouldParseSkeletons;\n }\n return e.prototype.parse = function() {\n if (this.offset() !== 0)\n throw Error(\"parser can only be used once\");\n return this.parseMessage(0, \"\", !1);\n }, e.prototype.parseMessage = function(t, n, r) {\n for (var i = []; !this.isEOF(); ) {\n var a = this.char();\n if (a === 123) {\n var o = this.parseArgument(t, r);\n if (o.err)\n return o;\n i.push(o.val);\n } else {\n if (a === 125 && t > 0)\n break;\n if (a === 35 && (n === \"plural\" || n === \"selectordinal\")) {\n var s = this.clonePosition();\n this.bump(), i.push({\n type: d.pound,\n location: v(s, this.clonePosition())\n });\n } else if (a === 60 && !this.ignoreTag && this.peek() === 47) {\n if (r)\n break;\n return this.error(g.UNMATCHED_CLOSING_TAG, v(this.clonePosition(), this.clonePosition()));\n } else if (a === 60 && !this.ignoreTag && $(this.peek() || 0)) {\n var o = this.parseTag(t, n);\n if (o.err)\n return o;\n i.push(o.val);\n } else {\n var o = this.parseLiteral(t, n);\n if (o.err)\n return o;\n i.push(o.val);\n }\n }\n }\n return { val: i, err: null };\n }, e.prototype.parseTag = function(t, n) {\n var r = this.clonePosition();\n this.bump();\n var i = this.parseTagName();\n if (this.bumpSpace(), this.bumpIf(\"/>\"))\n return {\n val: {\n type: d.literal,\n value: \"<\".concat(i, \"/>\"),\n location: v(r, this.clonePosition())\n },\n err: null\n };\n if (this.bumpIf(\">\")) {\n var a = this.parseMessage(t + 1, n, !0);\n if (a.err)\n return a;\n var o = a.val, s = this.clonePosition();\n if (this.bumpIf(\"</\")) {\n if (this.isEOF() || !$(this.char()))\n return this.error(g.INVALID_TAG, v(s, this.clonePosition()));\n var h = this.clonePosition(), l = this.parseTagName();\n return i !== l ? this.error(g.UNMATCHED_CLOSING_TAG, v(h, this.clonePosition())) : (this.bumpSpace(), this.bumpIf(\">\") ? {\n val: {\n type: d.tag,\n value: i,\n children: o,\n location: v(r, this.clonePosition())\n },\n err: null\n } : this.error(g.INVALID_TAG, v(s, this.clonePosition())));\n } else\n return this.error(g.UNCLOSED_TAG, v(r, this.clonePosition()));\n } else\n return this.error(g.INVALID_TAG, v(r, this.clonePosition()));\n }, e.prototype.parseTagName = function() {\n var t = this.offset();\n for (this.bump(); !this.isEOF() && dt(this.char()); )\n this.bump();\n return this.message.slice(t, this.offset());\n }, e.prototype.parseLiteral = function(t, n) {\n for (var r = this.clonePosition(), i = \"\"; ; ) {\n var a = this.tryParseQuote(n);\n if (a) {\n i += a;\n continue;\n }\n var o = this.tryParseUnquoted(t, n);\n if (o) {\n i += o;\n continue;\n }\n var s = this.tryParseLeftAngleBracket();\n if (s) {\n i += s;\n continue;\n }\n break;\n }\n var h = v(r, this.clonePosition());\n return {\n val: { type: d.literal, value: i, location: h },\n err: null\n };\n }, e.prototype.tryParseLeftAngleBracket = function() {\n return !this.isEOF() && this.char() === 60 && (this.ignoreTag || // If at the opening tag or closing tag position, bail.\n !Et(this.peek() || 0)) ? (this.bump(), \"<\") : null;\n }, e.prototype.tryParseQuote = function(t) {\n if (this.isEOF() || this.char() !== 39)\n return null;\n switch (this.peek()) {\n case 39:\n return this.bump(), this.bump(), \"'\";\n case 123:\n case 60:\n case 62:\n case 125:\n break;\n case 35:\n if (t === \"plural\" || t === \"selectordinal\")\n break;\n return null;\n default:\n return null;\n }\n this.bump();\n var n = [this.char()];\n for (this.bump(); !this.isEOF(); ) {\n var r = this.char();\n if (r === 39)\n if (this.peek() === 39)\n n.push(39), this.bump();\n else {\n this.bump();\n break;\n }\n else\n n.push(r);\n this.bump();\n }\n return Q.apply(void 0, n);\n }, e.prototype.tryParseUnquoted = function(t, n) {\n if (this.isEOF())\n return null;\n var r = this.char();\n return r === 60 || r === 123 || r === 35 && (n === \"plural\" || n === \"selectordinal\") || r === 125 && t > 0 ? null : (this.bump(), Q(r));\n }, e.prototype.parseArgument = function(t, n) {\n var r = this.clonePosition();\n if (this.bump(), this.bumpSpace(), this.isEOF())\n return this.error(g.EXPECT_ARGUMENT_CLOSING_BRACE, v(r, this.clonePosition()));\n if (this.char() === 125)\n return this.bump(), this.error(g.EMPTY_ARGUMENT, v(r, this.clonePosition()));\n var i = this.parseIdentifierIfPossible().value;\n if (!i)\n return this.error(g.MALFORMED_ARGUMENT, v(r, this.clonePosition()));\n if (this.bumpSpace(), this.isEOF())\n return this.error(g.EXPECT_ARGUMENT_CLOSING_BRACE, v(r, this.clonePosition()));\n switch (this.char()) {\n case 125:\n return this.bump(), {\n val: {\n type: d.argument,\n // value does not include the opening and closing braces.\n value: i,\n location: v(r, this.clonePosition())\n },\n err: null\n };\n case 44:\n return this.bump(), this.bumpSpace(), this.isEOF() ? this.error(g.EXPECT_ARGUMENT_CLOSING_BRACE, v(r, this.clonePosition())) : this.parseArgumentOptions(t, n, i, r);\n default:\n return this.error(g.MALFORMED_ARGUMENT, v(r, this.clonePosition()));\n }\n }, e.prototype.parseIdentifierIfPossible = function() {\n var t = this.clonePosition(), n = this.offset(), r = Y(this.message, n), i = n + r.length;\n this.bumpTo(i);\n var a = this.clonePosition(), o = v(t, a);\n return { value: r, location: o };\n }, e.prototype.parseArgumentOptions = function(t, n, r, i) {\n var a, o = this.clonePosition(), s = this.parseIdentifierIfPossible().value, h = this.clonePosition();\n switch (s) {\n case \"\":\n return this.error(g.EXPECT_ARGUMENT_TYPE, v(o, h));\n case \"number\":\n case \"date\":\n case \"time\": {\n this.bumpSpace();\n var l = null;\n if (this.bumpIf(\",\")) {\n this.bumpSpace();\n var u = this.clonePosition(), f = this.parseSimpleArgStyleIfPossible();\n if (f.err)\n return f;\n var c = vt(f.val);\n if (c.length === 0)\n return this.error(g.EXPECT_ARGUMENT_STYLE, v(this.clonePosition(), this.clonePosition()));\n var p = v(u, this.clonePosition());\n l = { style: c, styleLocation: p };\n }\n var b = this.tryParseArgumentClose(i);\n if (b.err)\n return b;\n var E = v(i, this.clonePosition());\n if (l && he(l == null ? void 0 : l.style, \"::\", 0)) {\n var y = pt(l.style.slice(2));\n if (s === \"number\") {\n var f = this.parseNumberSkeletonFromString(y, l.styleLocation);\n return f.err ? f : {\n val: { type: d.number, value: r, location: E, style: f.val },\n err: null\n };\n } else {\n if (y.length === 0)\n return this.error(g.EXPECT_DATE_TIME_SKELETON, E);\n var x = y;\n this.locale && (x = rt(y, this.locale));\n var c = {\n type: w.dateTime,\n pattern: x,\n location: l.styleLocation,\n parsedOptions: this.shouldParseSkeletons ? Je(x) : {}\n }, H = s === \"date\" ? d.date : d.time;\n return {\n val: { type: H, value: r, location: E, style: c },\n err: null\n };\n }\n }\n return {\n val: {\n type: s === \"number\" ? d.number : s === \"date\" ? d.date : d.time,\n value: r,\n location: E,\n style: (a = l == null ? void 0 : l.style) !== null && a !== void 0 ? a : null\n },\n err: null\n };\n }\n case \"plural\":\n case \"selectordinal\":\n case \"select\": {\n var T = this.clonePosition();\n if (this.bumpSpace(), !this.bumpIf(\",\"))\n return this.error(g.EXPECT_SELECT_ARGUMENT_OPTIONS, v(T, m({}, T)));\n this.bumpSpace();\n var D = this.parseIdentifierIfPossible(), L = 0;\n if (s !== \"select\" && D.value === \"offset\") {\n if (!this.bumpIf(\":\"))\n return this.error(g.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE, v(this.clonePosition(), this.clonePosition()));\n this.bumpSpace();\n var f = this.tryParseDecimalInteger(g.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE, g.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE);\n if (f.err)\n return f;\n this.bumpSpace(), D = this.parseIdentifierIfPossible(), L = f.val;\n }\n var G = this.tryParsePluralOrSelectOptions(t, s, n, D);\n if (G.err)\n return G;\n var b = this.tryParseArgumentClose(i);\n if (b.err)\n return b;\n var ie = v(i, this.clonePosition());\n return s === \"select\" ? {\n val: {\n type: d.select,\n value: r,\n options: le(G.val),\n location: ie\n },\n err: null\n } : {\n val: {\n type: d.plural,\n value: r,\n options: le(G.val),\n offset: L,\n pluralType: s === \"plural\" ? \"cardinal\" : \"ordinal\",\n location: ie\n },\n err: null\n };\n }\n default:\n return this.error(g.INVALID_ARGUMENT_TYPE, v(o, h));\n }\n }, e.prototype.tryParseArgumentClose = function(t) {\n return this.isEOF() || this.char() !== 125 ? this.error(g.EXPECT_ARGUMENT_CLOSING_BRACE, v(t, this.clonePosition())) : (this.bump(), { val: !0, err: null });\n }, e.prototype.parseSimpleArgStyleIfPossible = function() {\n for (var t = 0, n = this.clonePosition(); !this.isEOF(); ) {\n var r = this.char();\n switch (r) {\n case 39: {\n this.bump();\n var i = this.clonePosition();\n if (!this.bumpUntil(\"'\"))\n return this.error(g.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE, v(i, this.clonePosition()));\n this.bump();\n break;\n }\n case 123: {\n t += 1, this.bump();\n break;\n }\n case 125: {\n if (t > 0)\n t -= 1;\n else\n return {\n val: this.message.slice(n.offset, this.offset()),\n err: null\n };\n break;\n }\n default:\n this.bump();\n break;\n }\n }\n return {\n val: this.message.slice(n.offset, this.offset()),\n err: null\n };\n }, e.prototype.parseNumberSkeletonFromString = function(t, n) {\n var r = [];\n try {\n r = Ye(t);\n } catch {\n return this.error(g.INVALID_NUMBER_SKELETON, n);\n }\n return {\n val: {\n type: w.number,\n tokens: r,\n location: n,\n parsedOptions: this.shouldParseSkeletons ? tt(r) : {}\n },\n err: null\n };\n }, e.prototype.tryParsePluralOrSelectOptions = function(t, n, r, i) {\n for (var a, o = !1, s = [], h = /* @__PURE__ */ new Set(), l = i.value, u = i.location; ; ) {\n if (l.length === 0) {\n var f = this.clonePosition();\n if (n !== \"select\" && this.bumpIf(\"=\")) {\n var c = this.tryParseDecimalInteger(g.EXPECT_PLURAL_ARGUMENT_SELECTOR, g.INVALID_PLURAL_ARGUMENT_SELECTOR);\n if (c.err)\n return c;\n u = v(f, this.clonePosition()), l = this.message.slice(f.offset, this.offset());\n } else\n break;\n }\n if (h.has(l))\n return this.error(n === \"select\" ? g.DUPLICATE_SELECT_ARGUMENT_SELECTOR : g.DUPLICATE_PLURAL_ARGUMENT_SELECTOR, u);\n l === \"other\" && (o = !0), this.bumpSpace();\n var p = this.clonePosition();\n if (!this.bumpIf(\"{\"))\n return this.error(n === \"select\" ? g.EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT : g.EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT, v(this.clonePosition(), this.clonePosition()));\n var b = this.parseMessage(t + 1, n, r);\n if (b.err)\n return b;\n var E = this.tryParseArgumentClose(p);\n if (E.err)\n return E;\n s.push([\n l,\n {\n value: b.val,\n location: v(p, this.clonePosition())\n }\n ]), h.add(l), this.bumpSpace(), a = this.parseIdentifierIfPossible(), l = a.value, u = a.location;\n }\n return s.length === 0 ? this.error(n === \"select\" ? g.EXPECT_SELECT_ARGUMENT_SELECTOR : g.EXPECT_PLURAL_ARGUMENT_SELECTOR, v(this.clonePosition(), this.clonePosition())) : this.requiresOtherClause && !o ? this.error(g.MISSING_OTHER_CLAUSE, v(this.clonePosition(), this.clonePosition())) : { val: s, err: null };\n }, e.prototype.tryParseDecimalInteger = function(t, n) {\n var r = 1, i = this.clonePosition();\n this.bumpIf(\"+\") || this.bumpIf(\"-\") && (r = -1);\n for (var a = !1, o = 0; !this.isEOF(); ) {\n var s = this.char();\n if (s >= 48 && s <= 57)\n a = !0, o = o * 10 + (s - 48), this.bump();\n else\n break;\n }\n var h = v(i, this.clonePosition());\n return a ? (o *= r, mt(o) ? { val: o, err: null } : this.error(n, h)) : this.error(t, h);\n }, e.prototype.offset = function() {\n return this.position.offset;\n }, e.prototype.isEOF = function() {\n return this.offset() === this.message.length;\n }, e.prototype.clonePosition = function() {\n return {\n offset: this.position.offset,\n line: this.position.line,\n column: this.position.column\n };\n }, e.prototype.char = function() {\n var t = this.position.offset;\n if (t >= this.message.length)\n throw Error(\"out of bound\");\n var n = Be(this.message, t);\n if (n === void 0)\n throw Error(\"Offset \".concat(t, \" is at invalid UTF-16 code unit boundary\"));\n return n;\n }, e.prototype.error = function(t, n) {\n return {\n val: null,\n err: {\n kind: t,\n message: this.message,\n location: n\n }\n };\n }, e.prototype.bump = function() {\n if (!this.isEOF()) {\n var t = this.char();\n t === 10 ? (this.position.line += 1, this.position.column = 1, this.position.offset += 1) : (this.position.column += 1, this.position.offset += t < 65536 ? 1 : 2);\n }\n }, e.prototype.bumpIf = function(t) {\n if (he(this.message, t, this.offset())) {\n for (var n = 0; n < t.length; n++)\n this.bump();\n return !0;\n }\n return !1;\n }, e.prototype.bumpUntil = function(t) {\n var n = this.offset(), r = this.message.indexOf(t, n);\n return r >= 0 ? (this.bumpTo(r), !0) : (this.bumpTo(this.message.length), !1);\n }, e.prototype.bumpTo = function(t) {\n if (this.offset() > t)\n throw Error(\"targetOffset \".concat(t, \" must be greater than or equal to the current offset \").concat(this.offset()));\n for (t = Math.min(t, this.message.length); ; ) {\n var n = this.offset();\n if (n === t)\n break;\n if (n > t)\n throw Error(\"targetOffset \".concat(t, \" is at invalid UTF-16 code unit boundary\"));\n if (this.bump(), this.isEOF())\n break;\n }\n }, e.prototype.bumpSpace = function() {\n for (; !this.isEOF() && Oe(this.char()); )\n this.bump();\n }, e.prototype.peek = function() {\n if (this.isEOF())\n return null;\n var t = this.char(), n = this.offset(), r = this.message.charCodeAt(n + (t >= 65536 ? 2 : 1));\n return r ?? null;\n }, e;\n }()\n);\nfunction $(e) {\n return e >= 97 && e <= 122 || e >= 65 && e <= 90;\n}\nfunction Et(e) {\n return $(e) || e === 47;\n}\nfunction dt(e) {\n return e === 45 || e === 46 || e >= 48 && e <= 57 || e === 95 || e >= 97 && e <= 122 || e >= 65 && e <= 90 || e == 183 || e >= 192 && e <= 214 || e >= 216 && e <= 246 || e >= 248 && e <= 893 || e >= 895 && e <= 8191 || e >= 8204 && e <= 8205 || e >= 8255 && e <= 8256 || e >= 8304 && e <= 8591 || e >= 11264 && e <= 12271 || e >= 12289 && e <= 55295 || e >= 63744 && e <= 64975 || e >= 65008 && e <= 65533 || e >= 65536 && e <= 983039;\n}\nfunction Oe(e) {\n return e >= 9 && e <= 13 || e === 32 || e === 133 || e >= 8206 && e <= 8207 || e === 8232 || e === 8233;\n}\nfunction yt(e) {\n return e >= 33 && e <= 35 || e === 36 || e >= 37 && e <= 39 || e === 40 || e === 41 || e === 42 || e === 43 || e === 44 || e === 45 || e >= 46 && e <= 47 || e >= 58 && e <= 59 || e >= 60 && e <= 62 || e >= 63 && e <= 64 || e === 91 || e === 92 || e === 93 || e === 94 || e === 96 || e === 123 || e === 124 || e === 125 || e === 126 || e === 161 || e >= 162 && e <= 165 || e === 166 || e === 167 || e === 169 || e === 171 || e === 172 || e === 174 || e === 176 || e === 177 || e === 182 || e === 187 || e === 191 || e === 215 || e === 247 || e >= 8208 && e <= 8213 || e >= 8214 && e <= 8215 || e === 8216 || e === 8217 || e === 8218 || e >= 8219 && e <= 8220 || e === 8221 || e === 8222 || e === 8223 || e >= 8224 && e <= 8231 || e >= 8240 && e <= 8248 || e === 8249 || e === 8250 || e >= 8251 && e <= 8254 || e >= 8257 && e <= 8259 || e === 8260 || e === 8261 || e === 8262 || e >= 8263 && e <= 8273 || e === 8274 || e === 8275 || e >= 8277 && e <= 8286 || e >= 8592 && e <= 8596 || e >= 8597 && e <= 8601 || e >= 8602 && e <= 8603 || e >= 8604 && e <= 8607 || e === 8608 || e >= 8609 && e <= 8610 || e === 8611 || e >= 8612 && e <= 8613 || e === 8614 || e >= 8615 && e <= 8621 || e === 8622 || e >= 8623 && e <= 8653 || e >= 8654 && e <= 8655 || e >= 8656 && e <= 8657 || e === 8658 || e === 8659 || e === 8660 || e >= 8661 && e <= 8691 || e >= 8692 && e <= 8959 || e >= 8960 && e <= 8967 || e === 8968 || e === 8969 || e === 8970 || e === 8971 || e >= 8972 && e <= 8991 || e >= 8992 && e <= 8993 || e >= 8994 && e <= 9e3 || e === 9001 || e === 9002 || e >= 9003 && e <= 9083 || e === 9084 || e >= 9085 && e <= 9114 || e >= 9115 && e <= 9139 || e >= 9140 && e <= 9179 || e >= 9180 && e <= 9185 || e >= 9186 && e <= 9254 || e >= 9255 && e <= 9279 || e >= 9280 && e <= 9290 || e >= 9291 && e <= 9311 || e >= 9472 && e <= 9654 || e === 9655 || e >= 9656 && e <= 9664 || e === 9665 || e >= 9666 && e <= 9719 || e >= 9720 && e <= 9727 || e >= 9728 && e <= 9838 || e === 9839 || e >= 9840 && e <= 10087 || e === 10088 || e === 10089 || e === 10090 || e === 10091 || e === 10092 || e === 10093 || e === 10094 || e === 10095 || e === 10096 || e === 10097 || e === 10098 || e === 10099 || e === 10100 || e === 10101 || e >= 10132 && e <= 10175 || e >= 10176 && e <= 10180 || e === 10181 || e === 10182 || e >= 10183 && e <= 10213 || e === 10214 || e === 10215 || e === 10216 || e === 10217 || e === 10218 || e === 10219 || e === 10220 || e === 10221 || e === 10222 || e === 10223 || e >= 10224 && e <= 10239 || e >= 10240 && e <= 10495 || e >= 10496 && e <= 10626 || e === 10627 || e === 10628 || e === 10629 || e === 10630 || e === 10631 || e === 10632 || e === 10633 || e === 10634 || e === 10635 || e === 10636 || e === 10637 || e === 10638 || e === 10639 || e === 10640 || e === 10641 || e === 10642 || e === 10643 || e === 10644 || e === 10645 || e === 10646 || e === 10647 || e === 10648 || e >= 10649 && e <= 10711 || e === 10712 || e === 10713 || e === 10714 || e === 10715 || e >= 10716 && e <= 10747 || e === 10748 || e === 10749 || e >= 10750 && e <= 11007 || e >= 11008 && e <= 11055 || e >= 11056 && e <= 11076 || e >= 11077 && e <= 11078 || e >= 11079 && e <= 11084 || e >= 11085 && e <= 11123 || e >= 11124 && e <= 11125 || e >= 11126 && e <= 11157 || e === 11158 || e >= 11159 && e <= 11263 || e >= 11776 && e <= 11777 || e === 11778 || e === 11779 || e === 11780 || e === 11781 || e >= 11782 && e <= 11784 || e === 11785 || e === 11786 || e === 11787 || e === 11788 || e === 11789 || e >= 11790 && e <= 11798 || e === 11799 || e >= 11800 && e <= 11801 || e === 11802 || e === 11803 || e === 11804 || e === 11805 || e >= 11806 && e <= 11807 || e === 11808 || e === 11809 || e === 11810 || e === 11811 || e === 11812 || e === 11813 || e === 11814 || e === 11815 || e === 11816 || e === 11817 || e >= 11818 && e <= 11822 || e === 11823 || e >= 11824 && e <= 11833 || e >= 11834 && e <= 11835 || e >= 11836 && e <= 11839 || e === 11840 || e === 11841 || e === 11842 || e >= 11843 && e <= 11855 || e >= 11856 && e <= 11857 || e === 11858 || e >= 11859 && e <= 11903 || e >= 12289 && e <= 12291 || e === 12296 || e === 12297 || e === 12298 || e === 12299 || e === 12300 || e === 12301 || e === 12302 || e === 12303 || e === 12304 || e === 12305 || e >= 12306 && e <= 12307 || e === 12308 || e === 12309 || e === 12310 || e === 12311 || e === 12312 || e === 12313 || e === 12314 || e === 12315 || e === 12316 || e === 12317 || e >= 12318 && e <= 12319 || e === 12320 || e === 12336 || e === 64830 || e === 64831 || e >= 65093 && e <= 65094;\n}\nfunction K(e) {\n e.forEach(function(t) {\n if (delete t.location, xe(t) || Te(t))\n for (var n in t.options)\n delete t.options[n].location, K(t.options[n].value);\n else\n Ee(t) && Ie(t.style) || (de(t) || ye(t)) && q(t.style) ? delete t.style.location : Se(t) && K(t.children);\n });\n}\nfunction xt(e, t) {\n t === void 0 && (t = {}), t = m({ shouldParseSkeletons: !0, requiresOtherClause: !0 }, t);\n var n = new bt(e, t).parse();\n if (n.err) {\n var r = SyntaxError(g[n.err.kind]);\n throw r.location = n.err.location, r.originalMessage = n.err.message, r;\n }\n return t != null && t.captureLocation || K(n.val), n.val;\n}\nfunction _(e, t) {\n var n = t && t.cache ? t.cache : Nt, r = t && t.serializer ? t.serializer : Ht, i = t && t.strategy ? t.strategy : St;\n return i(e, {\n cache: n,\n serializer: r\n });\n}\nfunction Tt(e) {\n return e == null || typeof e == \"number\" || typeof e == \"boolean\";\n}\nfunction Pe(e, t, n, r) {\n var i = Tt(r) ? r : n(r), a = t.get(i);\n return typeof a > \"u\" && (a = e.call(this, r), t.set(i, a)), a;\n}\nfunction Le(e, t, n) {\n var r = Array.prototype.slice.call(arguments, 3), i = n(r), a = t.get(i);\n return typeof a > \"u\" && (a = e.apply(this, r), t.set(i, a)), a;\n}\nfunction ee(e, t, n, r, i) {\n return n.bind(t, e, r, i);\n}\nfunction St(e, t) {\n var n = e.length === 1 ? Pe : Le;\n return ee(e, this, n, t.cache.create(), t.serializer);\n}\nfunction It(e, t) {\n return ee(e, this, Le, t.cache.create(), t.serializer);\n}\nfunction At(e, t) {\n return ee(e, this, Pe, t.cache.create(), t.serializer);\n}\nvar Ht = function() {\n return JSON.stringify(arguments);\n};\nfunction te() {\n this.cache = /* @__PURE__ */ Object.create(null);\n}\nte.prototype.get = function(e) {\n return this.cache[e];\n};\nte.prototype.set = function(e, t) {\n this.cache[e] = t;\n};\nvar Nt = {\n create: function() {\n return new te();\n }\n}, B = {\n variadic: It,\n monadic: At\n}, R;\n(function(e) {\n e.MISSING_VALUE = \"MISSING_VALUE\", e.INVALID_VALUE = \"INVALID_VALUE\", e.MISSING_INTL_API = \"MISSING_INTL_API\";\n})(R || (R = {}));\nvar P = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r, i) {\n var a = e.call(this, n) || this;\n return a.code = r, a.originalMessage = i, a;\n }\n return t.prototype.toString = function() {\n return \"[formatjs Error: \".concat(this.code, \"] \").concat(this.message);\n }, t;\n }(Error)\n), ce = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r, i, a) {\n return e.call(this, 'Invalid values for \"'.concat(n, '\": \"').concat(r, '\". Options are \"').concat(Object.keys(i).join('\", \"'), '\"'), R.INVALID_VALUE, a) || this;\n }\n return t;\n }(P)\n), _t = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r, i) {\n return e.call(this, 'Value for \"'.concat(n, '\" must be of type ').concat(r), R.INVALID_VALUE, i) || this;\n }\n return t;\n }(P)\n), Bt = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r) {\n return e.call(this, 'The intl string context variable \"'.concat(n, '\" was not provided to the string \"').concat(r, '\"'), R.MISSING_VALUE, r) || this;\n }\n return t;\n }(P)\n), I;\n(function(e) {\n e[e.literal = 0] = \"literal\", e[e.object = 1] = \"object\";\n})(I || (I = {}));\nfunction Rt(e) {\n return e.length < 2 ? e : e.reduce(function(t, n) {\n var r = t[t.length - 1];\n return !r || r.type !== I.literal || n.type !== I.literal ? t.push(n) : r.value += n.value, t;\n }, []);\n}\nfunction Ot(e) {\n return typeof e == \"function\";\n}\nfunction V(e, t, n, r, i, a, o) {\n if (e.length === 1 && ae(e[0]))\n return [\n {\n type: I.literal,\n value: e[0].value\n }\n ];\n for (var s = [], h = 0, l = e; h < l.length; h++) {\n var u = l[h];\n if (ae(u)) {\n s.push({\n type: I.literal,\n value: u.value\n });\n continue;\n }\n if (ze(u)) {\n typeof a == \"number\" && s.push({\n type: I.literal,\n value: n.getNumberFormat(t).format(a)\n });\n continue;\n }\n var f = u.value;\n if (!(i && f in i))\n throw new Bt(f, o);\n var c = i[f];\n if (We(u)) {\n (!c || typeof c == \"string\" || typeof c == \"number\") && (c = typeof c == \"string\" || typeof c == \"number\" ? String(c) : \"\"), s.push({\n type: typeof c == \"string\" ? I.literal : I.object,\n value: c\n });\n continue;\n }\n if (de(u)) {\n var p = typeof u.style == \"string\" ? r.date[u.style] : q(u.style) ? u.style.parsedOptions : void 0;\n s.push({\n type: I.literal,\n value: n.getDateTimeFormat(t, p).format(c)\n });\n continue;\n }\n if (ye(u)) {\n var p = typeof u.style == \"string\" ? r.time[u.style] : q(u.style) ? u.style.parsedOptions : r.time.medium;\n s.push({\n type: I.literal,\n value: n.getDateTimeFormat(t, p).format(c)\n });\n continue;\n }\n if (Ee(u)) {\n var p = typeof u.style == \"string\" ? r.number[u.style] : Ie(u.style) ? u.style.parsedOptions : void 0;\n p && p.scale && (c = c * (p.scale || 1)), s.push({\n type: I.literal,\n value: n.getNumberFormat(t, p).format(c)\n });\n continue;\n }\n if (Se(u)) {\n var b = u.children, E = u.value, y = i[E];\n if (!Ot(y))\n throw new _t(E, \"function\", o);\n var x = V(b, t, n, r, i, a), H = y(x.map(function(L) {\n return L.value;\n }));\n Array.isArray(H) || (H = [H]), s.push.apply(s, H.map(function(L) {\n return {\n type: typeof L == \"string\" ? I.literal : I.object,\n value: L\n };\n }));\n }\n if (xe(u)) {\n var T = u.options[c] || u.options.other;\n if (!T)\n throw new ce(u.value, c, Object.keys(u.options), o);\n s.push.apply(s, V(T.value, t, n, r, i));\n continue;\n }\n if (Te(u)) {\n var T = u.options[\"=\".concat(c)];\n if (!T) {\n if (!Intl.PluralRules)\n throw new P(`Intl.PluralRules is not available in this environment.\nTry polyfilling it using \"@formatjs/intl-pluralrules\"\n`, R.MISSING_INTL_API, o);\n var D = n.getPluralRules(t, { type: u.pluralType }).select(c - (u.offset || 0));\n T = u.options[D] || u.options.other;\n }\n if (!T)\n throw new ce(u.value, c, Object.keys(u.options), o);\n s.push.apply(s, V(T.value, t, n, r, i, c - (u.offset || 0)));\n continue;\n }\n }\n return Rt(s);\n}\nfunction Pt(e, t) {\n return t ? m(m(m({}, e || {}), t || {}), Object.keys(e).reduce(function(n, r) {\n return n[r] = m(m({}, e[r]), t[r] || {}), n;\n }, {})) : e;\n}\nfunction Lt(e, t) {\n return t ? Object.keys(e).reduce(function(n, r) {\n return n[r] = Pt(e[r], t[r]), n;\n }, m({}, e)) : e;\n}\nfunction Z(e) {\n return {\n create: function() {\n return {\n get: function(t) {\n return e[t];\n },\n set: function(t, n) {\n e[t] = n;\n }\n };\n }\n };\n}\nfunction Mt(e) {\n return e === void 0 && (e = {\n number: {},\n dateTime: {},\n pluralRules: {}\n }), {\n getNumberFormat: _(function() {\n for (var t, n = [], r = 0; r < arguments.length; r++)\n n[r] = arguments[r];\n return new ((t = Intl.NumberFormat).bind.apply(t, O([void 0], n, !1)))();\n }, {\n cache: Z(e.number),\n strategy: B.variadic\n }),\n getDateTimeFormat: _(function() {\n for (var t, n = [], r = 0; r < arguments.length; r++)\n n[r] = arguments[r];\n return new ((t = Intl.DateTimeFormat).bind.apply(t, O([void 0], n, !1)))();\n }, {\n cache: Z(e.dateTime),\n strategy: B.variadic\n }),\n getPluralRules: _(function() {\n for (var t, n = [], r = 0; r < arguments.length; r++)\n n[r] = arguments[r];\n return new ((t = Intl.PluralRules).bind.apply(t, O([void 0], n, !1)))();\n }, {\n cache: Z(e.pluralRules),\n strategy: B.variadic\n })\n };\n}\nvar Me = (\n /** @class */\n function() {\n function e(t, n, r, i) {\n n === void 0 && (n = e.defaultLocale);\n var a = this;\n if (this.formatterCache = {\n number: {},\n dateTime: {},\n pluralRules: {}\n }, this.format = function(h) {\n var l = a.formatToParts(h);\n if (l.length === 1)\n return l[0].value;\n var u = l.reduce(function(f, c) {\n return !f.length || c.type !== I.literal || typeof f[f.length - 1] != \"string\" ? f.push(c.value) : f[f.length - 1] += c.value, f;\n }, []);\n return u.length <= 1 ? u[0] || \"\" : u;\n }, this.formatToParts = function(h) {\n return V(a.ast, a.locales, a.formatters, a.formats, h, void 0, a.message);\n }, this.resolvedOptions = function() {\n var h;\n return {\n locale: ((h = a.resolvedLocale) === null || h === void 0 ? void 0 : h.toString()) || Intl.NumberFormat.supportedLocalesOf(a.locales)[0]\n };\n }, this.getAst = function() {\n return a.ast;\n }, this.locales = n, this.resolvedLocale = e.resolveLocale(n), typeof t == \"string\") {\n if (this.message = t, !e.__parse)\n throw new TypeError(\"IntlMessageFormat.__parse must be set to process `message` of type `string`\");\n var o = i || {};\n o.formatters;\n var s = Ze(o, [\"formatters\"]);\n this.ast = e.__parse(t, m(m({}, s), { locale: this.resolvedLocale }));\n } else\n this.ast = t;\n if (!Array.isArray(this.ast))\n throw new TypeError(\"A message must be provided as a String or AST.\");\n this.formats = Lt(e.formats, r), this.formatters = i && i.formatters || Mt(this.formatterCache);\n }\n return Object.defineProperty(e, \"defaultLocale\", {\n get: function() {\n return e.memoizedDefaultLocale || (e.memoizedDefaultLocale = new Intl.NumberFormat().resolvedOptions().locale), e.memoizedDefaultLocale;\n },\n enumerable: !1,\n configurable: !0\n }), e.memoizedDefaultLocale = null, e.resolveLocale = function(t) {\n if (!(typeof Intl.Locale > \"u\")) {\n var n = Intl.NumberFormat.supportedLocalesOf(t);\n return n.length > 0 ? new Intl.Locale(n[0]) : new Intl.Locale(typeof t == \"string\" ? t : t[0]);\n }\n }, e.__parse = xt, e.formats = {\n number: {\n integer: {\n maximumFractionDigits: 0\n },\n currency: {\n style: \"currency\"\n },\n percent: {\n style: \"percent\"\n }\n },\n date: {\n short: {\n month: \"numeric\",\n day: \"numeric\",\n year: \"2-digit\"\n },\n medium: {\n month: \"short\",\n day: \"numeric\",\n year: \"numeric\"\n },\n long: {\n month: \"long\",\n day: \"numeric\",\n year: \"numeric\"\n },\n full: {\n weekday: \"long\",\n month: \"long\",\n day: \"numeric\",\n year: \"numeric\"\n }\n },\n time: {\n short: {\n hour: \"numeric\",\n minute: \"numeric\"\n },\n medium: {\n hour: \"numeric\",\n minute: \"numeric\",\n second: \"numeric\"\n },\n long: {\n hour: \"numeric\",\n minute: \"numeric\",\n second: \"numeric\",\n timeZoneName: \"short\"\n },\n full: {\n hour: \"numeric\",\n minute: \"numeric\",\n second: \"numeric\",\n timeZoneName: \"short\"\n }\n }\n }, e;\n }()\n), S;\n(function(e) {\n e.FORMAT_ERROR = \"FORMAT_ERROR\", e.UNSUPPORTED_FORMATTER = \"UNSUPPORTED_FORMATTER\", e.INVALID_CONFIG = \"INVALID_CONFIG\", e.MISSING_DATA = \"MISSING_DATA\", e.MISSING_TRANSLATION = \"MISSING_TRANSLATION\";\n})(S || (S = {}));\nvar A = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r, i) {\n var a = this, o = i ? i instanceof Error ? i : new Error(String(i)) : void 0;\n return a = e.call(this, \"[@formatjs/intl Error \".concat(n, \"] \").concat(r, `\n`).concat(o ? `\n`.concat(o.message, `\n`).concat(o.stack) : \"\")) || this, a.code = n, typeof Error.captureStackTrace == \"function\" && Error.captureStackTrace(a, t), a;\n }\n return t;\n }(Error)\n), Ct = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r) {\n return e.call(this, S.UNSUPPORTED_FORMATTER, n, r) || this;\n }\n return t;\n }(A)\n), wt = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r) {\n return e.call(this, S.INVALID_CONFIG, n, r) || this;\n }\n return t;\n }(A)\n), me = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r) {\n return e.call(this, S.MISSING_DATA, n, r) || this;\n }\n return t;\n }(A)\n), re = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r, i) {\n return e.call(this, S.FORMAT_ERROR, \"\".concat(n, `\nLocale: `).concat(r, `\n`), i) || this;\n }\n return t;\n }(A)\n), W = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r, i, a) {\n var o = e.call(this, \"\".concat(n, `\nMessageID: `).concat(i == null ? void 0 : i.id, `\nDefault Message: `).concat(i == null ? void 0 : i.defaultMessage, `\nDescription: `).concat(i == null ? void 0 : i.description, `\n`), r, a) || this;\n return o.descriptor = i, o;\n }\n return t;\n }(re)\n), Dt = (\n /** @class */\n function(e) {\n N(t, e);\n function t(n, r) {\n var i = e.call(this, S.MISSING_TRANSLATION, 'Missing message: \"'.concat(n.id, '\" for locale \"').concat(r, '\", using ').concat(n.defaultMessage ? \"default message (\".concat(typeof n.defaultMessage == \"string\" ? n.defaultMessage : n.defaultMessage.map(function(a) {\n var o;\n return (o = a.value) !== null && o !== void 0 ? o : JSON.stringify(a);\n }).join(), \")\") : \"id\", \" as fallback.\")) || this;\n return i.descriptor = n, i;\n }\n return t;\n }(A)\n);\nfunction C(e, t, n) {\n return n === void 0 && (n = {}), t.reduce(function(r, i) {\n return i in e ? r[i] = e[i] : i in n && (r[i] = n[i]), r;\n }, {});\n}\nvar Ft = function(e) {\n process.env.NODE_ENV !== \"production\" && console.error(e);\n}, Gt = function(e) {\n process.env.NODE_ENV !== \"production\" && console.warn(e);\n}, Ut = {\n formats: {},\n messages: {},\n timeZone: void 0,\n defaultLocale: \"en\",\n defaultFormats: {},\n fallbackOnEmptyString: !0,\n onError: Ft,\n onWarn: Gt\n};\nfunction Ce() {\n return {\n dateTime: {},\n number: {},\n message: {},\n relativeTime: {},\n pluralRules: {},\n list: {},\n displayNames: {}\n };\n}\nfunction M(e) {\n return {\n create: function() {\n return {\n get: function(t) {\n return e[t];\n },\n set: function(t, n) {\n e[t] = n;\n }\n };\n }\n };\n}\nfunction jt(e) {\n e === void 0 && (e = Ce());\n var t = Intl.RelativeTimeFormat, n = Intl.ListFormat, r = Intl.DisplayNames, i = _(function() {\n for (var s, h = [], l = 0; l < arguments.length; l++)\n h[l] = arguments[l];\n return new ((s = Intl.DateTimeFormat).bind.apply(s, O([void 0], h, !1)))();\n }, {\n cache: M(e.dateTime),\n strategy: B.variadic\n }), a = _(function() {\n for (var s, h = [], l = 0; l < arguments.length; l++)\n h[l] = arguments[l];\n return new ((s = Intl.NumberFormat).bind.apply(s, O([void 0], h, !1)))();\n }, {\n cache: M(e.number),\n strategy: B.variadic\n }), o = _(function() {\n for (var s, h = [], l = 0; l < arguments.length; l++)\n h[l] = arguments[l];\n return new ((s = Intl.PluralRules).bind.apply(s, O([void 0], h, !1)))();\n }, {\n cache: M(e.pluralRules),\n strategy: B.variadic\n });\n return {\n getDateTimeFormat: i,\n getNumberFormat: a,\n getMessageFormat: _(function(s, h, l, u) {\n return new Me(s, h, l, m({ formatters: {\n getNumberFormat: a,\n getDateTimeFormat: i,\n getPluralRules: o\n } }, u || {}));\n }, {\n cache: M(e.message),\n strategy: B.variadic\n }),\n getRelativeTimeFormat: _(function() {\n for (var s = [], h = 0; h < arguments.length; h++)\n s[h] = arguments[h];\n return new (t.bind.apply(t, O([void 0], s, !1)))();\n }, {\n cache: M(e.relativeTime),\n strategy: B.variadic\n }),\n getPluralRules: o,\n getListFormat: _(function() {\n for (var s = [], h = 0; h < arguments.length; h++)\n s[h] = arguments[h];\n return new (n.bind.apply(n, O([void 0], s, !1)))();\n }, {\n cache: M(e.list),\n strategy: B.variadic\n }),\n getDisplayNames: _(function() {\n for (var s = [], h = 0; h < arguments.length; h++)\n s[h] = arguments[h];\n return new (r.bind.apply(r, O([void 0], s, !1)))();\n }, {\n cache: M(e.displayNames),\n strategy: B.variadic\n })\n };\n}\nfunction ne(e, t, n, r) {\n var i = e && e[t], a;\n if (i && (a = i[n]), a)\n return a;\n r(new Ct(\"No \".concat(t, \" format named: \").concat(n)));\n}\nfunction Vt(e, t, n) {\n if (n === void 0 && (n = Error), !e)\n throw new n(t);\n}\nfunction j(e, t) {\n return Object.keys(e).reduce(function(n, r) {\n return n[r] = m({ timeZone: t }, e[r]), n;\n }, {});\n}\nfunction ge(e, t) {\n var n = Object.keys(m(m({}, e), t));\n return n.reduce(function(r, i) {\n return r[i] = m(m({}, e[i] || {}), t[i] || {}), r;\n }, {});\n}\nfunction pe(e, t) {\n if (!t)\n return e;\n var n = Me.formats;\n return m(m(m({}, n), e), { date: ge(j(n.date, t), j(e.date || {}, t)), time: ge(j(n.time, t), j(e.time || {}, t)) });\n}\nvar ve = function(e, t, n, r, i) {\n var a = e.locale, o = e.formats, s = e.messages, h = e.defaultLocale, l = e.defaultFormats, u = e.fallbackOnEmptyString, f = e.onError, c = e.timeZone, p = e.defaultRichTextElements;\n n === void 0 && (n = { id: \"\" });\n var b = n.id, E = n.defaultMessage;\n Vt(!!b, \"[@formatjs/intl] An `id` must be provided to format a message. You can either:\\n1. Configure your build toolchain with [babel-plugin-formatjs](https://formatjs.io/docs/tooling/babel-plugin)\\nor [@formatjs/ts-transformer](https://formatjs.io/docs/tooling/ts-transformer) OR\\n2. Configure your `eslint` config to include [eslint-plugin-formatjs](https://formatjs.io/docs/tooling/linter#enforce-id)\\nto autofix this issue\");\n var y = String(b), x = (\n // In case messages is Object.create(null)\n // e.g import('foo.json') from webpack)\n // See https://github.com/formatjs/formatjs/issues/1914\n s && Object.prototype.hasOwnProperty.call(s, y) && s[y]\n );\n if (Array.isArray(x) && x.length === 1 && x[0].type === d.literal)\n return x[0].value;\n if (!r && x && typeof x == \"string\" && !p)\n return x.replace(/'\\{(.*?)\\}'/gi, \"{$1}\");\n if (r = m(m({}, p), r || {}), o = pe(o, c), l = pe(l, c), !x) {\n if (u === !1 && x === \"\")\n return x;\n if ((!E || a && a.toLowerCase() !== h.toLowerCase()) && f(new Dt(n, a)), E)\n try {\n var H = t.getMessageFormat(E, h, l, i);\n return H.format(r);\n } catch (T) {\n return f(new W('Error formatting default message for: \"'.concat(y, '\", rendering default message verbatim'), a, n, T)), typeof E == \"string\" ? E : y;\n }\n return y;\n }\n try {\n var H = t.getMessageFormat(x, a, o, m({ formatters: t }, i || {}));\n return H.format(r);\n } catch (T) {\n f(new W('Error formatting message: \"'.concat(y, '\", using ').concat(E ? \"default message\" : \"id\", \" as fallback.\"), a, n, T));\n }\n if (E)\n try {\n var H = t.getMessageFormat(E, h, l, i);\n return H.format(r);\n } catch (T) {\n f(new W('Error formatting the default message for: \"'.concat(y, '\", rendering message verbatim'), a, n, T));\n }\n return typeof x == \"string\" ? x : typeof E == \"string\" ? E : y;\n}, we = [\n \"formatMatcher\",\n \"timeZone\",\n \"hour12\",\n \"weekday\",\n \"era\",\n \"year\",\n \"month\",\n \"day\",\n \"hour\",\n \"minute\",\n \"second\",\n \"timeZoneName\",\n \"hourCycle\",\n \"dateStyle\",\n \"timeStyle\",\n \"calendar\",\n // 'dayPeriod',\n \"numberingSystem\",\n \"fractionalSecondDigits\"\n];\nfunction k(e, t, n, r) {\n var i = e.locale, a = e.formats, o = e.onError, s = e.timeZone;\n r === void 0 && (r = {});\n var h = r.format, l = m(m({}, s && { timeZone: s }), h && ne(a, t, h, o)), u = C(r, we, l);\n return t === \"time\" && !u.hour && !u.minute && !u.second && !u.timeStyle && !u.dateStyle && (u = m(m({}, u), { hour: \"numeric\", minute: \"numeric\" })), n(i, u);\n}\nfunction kt(e, t) {\n for (var n = [], r = 2; r < arguments.length; r++)\n n[r - 2] = arguments[r];\n var i = n[0], a = n[1], o = a === void 0 ? {} : a, s = typeof i == \"string\" ? new Date(i || 0) : i;\n try {\n return k(e, \"date\", t, o).format(s);\n } catch (h) {\n e.onError(new A(S.FORMAT_ERROR, \"Error formatting date.\", h));\n }\n return String(s);\n}\nfunction Xt(e, t) {\n for (var n = [], r = 2; r < arguments.length; r++)\n n[r - 2] = arguments[r];\n var i = n[0], a = n[1], o = a === void 0 ? {} : a, s = typeof i == \"string\" ? new Date(i || 0) : i;\n try {\n return k(e, \"time\", t, o).format(s);\n } catch (h) {\n e.onError(new A(S.FORMAT_ERROR, \"Error formatting time.\", h));\n }\n return String(s);\n}\nfunction Zt(e, t) {\n for (var n = [], r = 2; r < arguments.length; r++)\n n[r - 2] = arguments[r];\n var i = n[0], a = n[1], o = n[2], s = o === void 0 ? {} : o, h = e.timeZone, l = e.locale, u = e.onError, f = C(s, we, h ? { timeZone: h } : {});\n try {\n return t(l, f).formatRange(i, a);\n } catch (c) {\n u(new A(S.FORMAT_ERROR, \"Error formatting date time range.\", c));\n }\n return String(i);\n}\nfunction Wt(e, t) {\n for (var n = [], r = 2; r < arguments.length; r++)\n n[r - 2] = arguments[r];\n var i = n[0], a = n[1], o = a === void 0 ? {} : a, s = typeof i == \"string\" ? new Date(i || 0) : i;\n try {\n return k(e, \"date\", t, o).formatToParts(s);\n } catch (h) {\n e.onError(new A(S.FORMAT_ERROR, \"Error formatting date.\", h));\n }\n return [];\n}\nfunction zt(e, t) {\n for (var n = [], r = 2; r < arguments.length; r++)\n n[r - 2] = arguments[r];\n var i = n[0], a = n[1], o = a === void 0 ? {} : a, s = typeof i == \"string\" ? new Date(i || 0) : i;\n try {\n return k(e, \"time\", t, o).formatToParts(s);\n } catch (h) {\n e.onError(new A(S.FORMAT_ERROR, \"Error formatting time.\", h));\n }\n return [];\n}\nvar qt = [\n \"style\",\n \"type\",\n \"fallback\",\n \"languageDisplay\"\n];\nfunction Jt(e, t, n, r) {\n var i = e.locale, a = e.onError, o = Intl.DisplayNames;\n o || a(new P(`Intl.DisplayNames is not available in this environment.\nTry polyfilling it using \"@formatjs/intl-displaynames\"\n`, R.MISSING_INTL_API));\n var s = C(r, qt);\n try {\n return t(i, s).of(n);\n } catch (h) {\n a(new A(S.FORMAT_ERROR, \"Error formatting display name.\", h));\n }\n}\nvar Qt = [\n \"type\",\n \"style\"\n], be = Date.now();\nfunction Yt(e) {\n return \"\".concat(be, \"_\").concat(e, \"_\").concat(be);\n}\nfunction $t(e, t, n, r) {\n r === void 0 && (r = {});\n var i = De(e, t, n, r).reduce(function(a, o) {\n var s = o.value;\n return typeof s != \"string\" ? a.push(s) : typeof a[a.length - 1] == \"string\" ? a[a.length - 1] += s : a.push(s), a;\n }, []);\n return i.length === 1 ? i[0] : i.length === 0 ? \"\" : i;\n}\nfunction De(e, t, n, r) {\n var i = e.locale, a = e.onError;\n r === void 0 && (r = {});\n var o = Intl.ListFormat;\n o || a(new P(`Intl.ListFormat is not available in this environment.\nTry polyfilling it using \"@formatjs/intl-listformat\"\n`, R.MISSING_INTL_API));\n var s = C(r, Qt);\n try {\n var h = {}, l = n.map(function(u, f) {\n if (typeof u == \"object\") {\n var c = Yt(f);\n return h[c] = u, c;\n }\n return String(u);\n });\n return t(i, s).formatToParts(l).map(function(u) {\n return u.type === \"literal\" ? u : m(m({}, u), { value: h[u.value] || u.value });\n });\n } catch (u) {\n a(new A(S.FORMAT_ERROR, \"Error formatting list.\", u));\n }\n return n;\n}\nvar Kt = [\"type\"];\nfunction er(e, t, n, r) {\n var i = e.locale, a = e.onError;\n r === void 0 && (r = {}), Intl.PluralRules || a(new P(`Intl.PluralRules is not available in this environment.\nTry polyfilling it using \"@formatjs/intl-pluralrules\"\n`, R.MISSING_INTL_API));\n var o = C(r, Kt);\n try {\n return t(i, o).select(n);\n } catch (s) {\n a(new re(\"Error formatting plural.\", i, s));\n }\n return \"other\";\n}\nvar tr = [\"numeric\", \"style\"];\nfunction rr(e, t, n) {\n var r = e.locale, i = e.formats, a = e.onError;\n n === void 0 && (n = {});\n var o = n.format, s = !!o && ne(i, \"relative\", o, a) || {}, h = C(n, tr, s);\n return t(r, h);\n}\nfunction nr(e, t, n, r, i) {\n i === void 0 && (i = {}), r || (r = \"second\");\n var a = Intl.RelativeTimeFormat;\n a || e.onError(new P(`Intl.RelativeTimeFormat is not available in this environment.\nTry polyfilling it using \"@formatjs/intl-relativetimeformat\"\n`, R.MISSING_INTL_API));\n try {\n return rr(e, t, i).format(n, r);\n } catch (o) {\n e.onError(new re(\"Error formatting relative time.\", e.locale, o));\n }\n return String(n);\n}\nvar ir = [\n \"style\",\n \"currency\",\n \"currencyDisplay\",\n \"unit\",\n \"unitDisplay\",\n \"useGrouping\",\n \"minimumIntegerDigits\",\n \"minimumFractionDigits\",\n \"maximumFractionDigits\",\n \"minimumSignificantDigits\",\n \"maximumSignificantDigits\",\n // ES2020 NumberFormat\n \"compactDisplay\",\n \"currencyDisplay\",\n \"currencySign\",\n \"notation\",\n \"signDisplay\",\n \"unit\",\n \"unitDisplay\",\n \"numberingSystem\"\n];\nfunction Fe(e, t, n) {\n var r = e.locale, i = e.formats, a = e.onError;\n n === void 0 && (n = {});\n var o = n.format, s = o && ne(i, \"number\", o, a) || {}, h = C(n, ir, s);\n return t(r, h);\n}\nfunction ar(e, t, n, r) {\n r === void 0 && (r = {});\n try {\n return Fe(e, t, r).format(n);\n } catch (i) {\n e.onError(new A(S.FORMAT_ERROR, \"Error formatting number.\", i));\n }\n return String(n);\n}\nfunction or(e, t, n, r) {\n r === void 0 && (r = {});\n try {\n return Fe(e, t, r).formatToParts(n);\n } catch (i) {\n e.onError(new A(S.FORMAT_ERROR, \"Error formatting number.\", i));\n }\n return [];\n}\nfunction sr(e) {\n var t = e ? e[Object.keys(e)[0]] : void 0;\n return typeof t == \"string\";\n}\nfunction ur(e) {\n e.onWarn && e.defaultRichTextElements && sr(e.messages || {}) && e.onWarn(`[@formatjs/intl] \"defaultRichTextElements\" was specified but \"message\" was not pre-compiled. \nPlease consider using \"@formatjs/cli\" to pre-compile your messages for performance.\nFor more details see https://formatjs.io/docs/getting-started/message-distribution`);\n}\nfunction hr(e, t) {\n var n = jt(t), r = m(m({}, Ut), e), i = r.locale, a = r.defaultLocale, o = r.onError;\n return i ? !Intl.NumberFormat.supportedLocalesOf(i).length && o ? o(new me('Missing locale data for locale: \"'.concat(i, '\" in Intl.NumberFormat. Using default locale: \"').concat(a, '\" as fallback. See https://formatjs.io/docs/react-intl#runtime-requirements for more details'))) : !Intl.DateTimeFormat.supportedLocalesOf(i).length && o && o(new me('Missing locale data for locale: \"'.concat(i, '\" in Intl.DateTimeFormat. Using default locale: \"').concat(a, '\" as fallback. See https://formatjs.io/docs/react-intl#runtime-requirements for more details'))) : (o && o(new wt('\"locale\" was not configured, using \"'.concat(a, '\" as fallback. See https://formatjs.io/docs/react-intl/api#intlshape for more details'))), r.locale = r.defaultLocale || \"en\"), ur(r), m(m({}, r), {\n formatters: n,\n formatNumber: ar.bind(null, r, n.getNumberFormat),\n formatNumberToParts: or.bind(null, r, n.getNumberFormat),\n formatRelativeTime: nr.bind(null, r, n.getRelativeTimeFormat),\n formatDate: kt.bind(null, r, n.getDateTimeFormat),\n formatDateToParts: Wt.bind(null, r, n.getDateTimeFormat),\n formatTime: Xt.bind(null, r, n.getDateTimeFormat),\n formatDateTimeRange: Zt.bind(null, r, n.getDateTimeFormat),\n formatTimeToParts: zt.bind(null, r, n.getDateTimeFormat),\n formatPlural: er.bind(null, r, n.getPluralRules),\n // @ts-expect-error TODO: will get to this later\n formatMessage: ve.bind(null, r, n),\n // @ts-expect-error TODO: will get to this later\n $t: ve.bind(null, r, n),\n formatList: $t.bind(null, r, n.getListFormat),\n formatListToParts: De.bind(null, r, n.getListFormat),\n formatDisplayName: Jt.bind(null, r, n.getDisplayNames)\n });\n}\nvar lr = F;\nF.flatten = F;\nF.unflatten = je;\nfunction Ge(e) {\n return e && e.constructor && typeof e.constructor.isBuffer == \"function\" && e.constructor.isBuffer(e);\n}\nfunction Ue(e) {\n return e;\n}\nfunction F(e, t) {\n t = t || {};\n const n = t.delimiter || \".\", r = t.maxDepth, i = t.transformKey || Ue, a = {};\n function o(s, h, l) {\n l = l || 1, Object.keys(s).forEach(function(u) {\n const f = s[u], c = t.safe && Array.isArray(f), p = Object.prototype.toString.call(f), b = Ge(f), E = p === \"[object Object]\" || p === \"[object Array]\", y = h ? h + n + i(u) : i(u);\n if (!c && !b && E && Object.keys(f).length && (!t.maxDepth || l < r))\n return o(f, y, l + 1);\n a[y] = f;\n });\n }\n return o(e), a;\n}\nfunction je(e, t) {\n t = t || {};\n const n = t.delimiter || \".\", r = t.overwrite || !1, i = t.transformKey || Ue, a = {};\n if (Ge(e) || Object.prototype.toString.call(e) !== \"[object Object]\")\n return e;\n function s(u) {\n const f = Number(u);\n return isNaN(f) || u.indexOf(\".\") !== -1 || t.object ? u : f;\n }\n function h(u, f, c) {\n return Object.keys(c).reduce(function(p, b) {\n return p[u + n + b] = c[b], p;\n }, f);\n }\n function l(u) {\n const f = Object.prototype.toString.call(u), c = f === \"[object Array]\", p = f === \"[object Object]\";\n if (u) {\n if (c)\n return !u.length;\n if (p)\n return !Object.keys(u).length;\n } else\n return !0;\n }\n return e = Object.keys(e).reduce(function(u, f) {\n const c = Object.prototype.toString.call(e[f]);\n return !(c === \"[object Object]\" || c === \"[object Array]\") || l(e[f]) ? (u[f] = e[f], u) : h(\n f,\n u,\n F(e[f], t)\n );\n }, {}), Object.keys(e).forEach(function(u) {\n const f = u.split(n).map(i);\n let c = s(f.shift()), p = s(f[0]), b = a;\n for (; p !== void 0; ) {\n if (c === \"__proto__\")\n return;\n const E = Object.prototype.toString.call(b[c]), y = E === \"[object Object]\" || E === \"[object Array]\";\n if (!r && !y && typeof b[c] < \"u\")\n return;\n (r && !y || !r && b[c] == null) && (b[c] = typeof p == \"number\" && !t.object ? [] : {}), b = b[c], f.length > 0 && (c = s(f.shift()), p = s(f[0]));\n }\n b[c] = je(e[u], t);\n }), a;\n}\nconst fr = Ce();\nlet Ve;\nconst gr = (e, t, n = !1) => {\n const r = hr(\n {\n locale: e,\n messages: lr.flatten(t, {\n safe: !0\n // Preserve arrays\n })\n },\n fr\n ), s = {\n t: (h, l, u) => r.formatMessage({ id: h }, l, u),\n te: (h) => !!r.messages[h],\n tm: (h) => r.messages[h] || [],\n ...r,\n source: t\n };\n return n && (Ve = s), s;\n};\nfunction pr() {\n return Ve;\n}\nconst cr = (e) => ke({\n name: \"I18nT\",\n props: {\n keypath: {\n type: String,\n required: !0\n },\n tag: {\n type: String,\n default: \"span\"\n }\n },\n setup(t, { slots: n }) {\n const r = (i) => {\n if (!i)\n return [];\n const a = /(\\{[^}]+\\})/g;\n return i.split(a).filter(Boolean);\n };\n return () => {\n const i = Object.keys(n).filter((s) => s !== \"_\"), a = e.messages[t.keypath].toString();\n let o = r(a);\n return o = o.filter((s) => s !== \"\"), o.forEach((s, h) => {\n if (!s.startsWith(\"{\") && !s.endsWith(\"}\"))\n return;\n const l = s.replace(/[\\{\\}]/g, \"\");\n l === \"0\" && n.default ? o[h] = n.default() : i.includes(l) && n[l] && (o[h] = n[l]());\n }), Xe(t.tag, t, o);\n };\n }\n}), vr = {\n install(e, t) {\n const { i18n: n } = t;\n e.component(\"I18nT\", cr(n));\n }\n};\nexport {\n vr as Translation,\n gr as createI18n,\n pr as useI18n\n};\n//# sourceMappingURL=i18n.es.js.map\n","import { createI18n, Translation } from '@kong-ui-public/i18n'\nimport english from '../locales/en.json'\n\nexport default function usei18n() {\n const i18n = createI18n('en-us', english)\n\n return {\n i18n,\n i18nT: Translation, // Translation component <i18n-t>\n }\n}\n","export default function useUtilities() {\n /**\n * Check if all of the provided items have a non-falsey value for all of the provided required props\n *\n * @param items The items to validate the prop exists for\n * @param requiredProps An array of all the required prop names\n * @returns Boolean whether or not the items have all the required props\n */\n const hasRequiredProps = (items: object[], requiredProps: string[]): boolean => {\n let isValid = true\n\n items.forEach((item: object) => {\n requiredProps.forEach((requiredProp: string) => {\n if (!item[requiredProp as keyof typeof item]) {\n isValid = false\n }\n })\n })\n\n return isValid\n }\n\n return {\n hasRequiredProps,\n }\n}\n","import useI18n from './useI18n'\nimport useUtilities from './useUtilities'\n\n// All composables must be exported as part of the default object for Cypress test stubs\nexport default {\n useI18n,\n useUtilities,\n}\n","export function toSlug(input: string, suffix = '') {\n return input\n .toLowerCase()\n .trim()\n .replace(/ /g, '-')\n .replace(/[^\\w-]+/g, '') + suffix\n}\n","import { toSlug } from './toSlug'\nexport function addUniqueHeadingSlugs<T = any>(children: Array<T>): Array<T> {\n\n if (!children) return children\n\n const slugMap = new Map<string, number>()\n // loop through the children\n // if the child is a heading, add a slug property based on the text\n return children.map((child: any) => {\n if (child.type === 'heading') {\n return addSlug(child, slugMap)\n } else {\n return child\n }\n })\n}\n\nexport function addSlug(child: any, slugMap: Map<string, number>, prefix = 'doc-heading-') {\n const text = child.children[0].text\n const slugCount = slugMap.get(text)\n slugMap.set(text, (slugCount || 0) + 1)\n const duplicateSuffix = slugCount && slugCount > 1 ? `-${slugCount}` : ''\n // add a hyphen if there are multiple headings with the same text\n const slug = prefix + toSlug(text, duplicateSuffix)\n return {\n ...child,\n slug,\n }\n}\n","<template>\n <div\n class=\"document-viewer\"\n data-testid=\"document-viewer\"\n >\n <Children v-if=\"hasRequiredProps\" />\n <div\n v-else\n data-testid=\"document-viewer-error\"\n >\n {{ i18n.t('docViewer.error') }}\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport renderChildren from './renderChildren'\nimport { computed } from 'vue'\nimport composables from '../composables'\nimport { addUniqueHeadingSlugs } from '../utils/addUniqueHeadingSlugs'\n\nconst props = defineProps({\n document: {\n type: Object,\n required: true,\n },\n})\n\nconst { i18n } = composables.useI18n()\n\nconst hasRequiredProps = computed((): boolean => {\n return !!props.document\n})\n\nconst children = addUniqueHeadingSlugs(props.document?.children)\nconst Children = () => props.document?.children ? renderChildren(children) : null\n</script>\n\n<style>\n:root {\n --document-viewer-font-family-default: Roboto, Helvetica, sans-serif;\n --document-viewer-font-family-monospace: Consolas, 'Liberation Mono', Menlo, Courier, monospace;\n}\n</style>\n<style scoped>\n.document-viewer {\n color: var(--document-viewer-color, var(--text_colors-primary, #0b172d));\n font-family: var(--document-viewer-font-family-default, var(--font-family-sans));\n font-size: var(--document-viewer-font-size, 16px);\n}\n</style>\n"],"names":["TableRowSection","TableCellAlign","isTextNode","o","_cache","_openBlock","_createElementBlock","tag","slug","props","_a","className","__default__","nodeTypeToComponentMap","blockquote","Blockquote","code","Code","code_block","CodeBlock","emphasis","Emphasis","heading","Heading","image","Image","line_break","LineBreak","link","Link","list","List","list_item","ListItem","paragraph","Paragraph","table","Table","table_row","TableRow","table_cell","TableCell","text","Text","text_block","TextBlock","nodeTypesNotified","notifyUnknownNodeType","type","indexOf","push","console","warn","renderChildren","children","parent","map","child","restProps","component","paragraphChildren","lastItemIndex","length","forEach","paragraphChild","index","endsWith","appendSpace","_createVNode","_mergeProps","z","e","t","n","r","i","N","m","a","Ze","O","d","w","ae","We","Ee","de","ye","xe","Te","ze","Se","Ie","q","Ae","qe","Je","Qe","Ye","c","h","l","u","f","$e","oe","He","Ke","Ne","se","_e","et","ue","tt","p","U","rt","nt","X","it","at","v","ot","st","ut","ht","lt","ft","ct","mt","J","gt","Re","he","Q","le","s","Be","pt","vt","Y","fe","Oe","yt","bt","$","dt","Et","E","y","x","H","T","D","L","G","ie","K","xt","_","Nt","Ht","St","Tt","Pe","Le","ee","It","At","te","B","R","P","ce","_t","Bt","I","Rt","Ot","V","Pt","Lt","Z","Mt","Me","S","A","Ct","wt","me","re","W","Dt","C","Ft","Gt","Ut","Ce","M","jt","ne","Vt","j","ge","pe","ve","we","k","kt","Xt","Zt","Wt","zt","qt","Jt","Qt","be","Yt","$t","De","Kt","er","tr","rr","nr","ir","Fe","ar","or","sr","ur","hr","lr","F","je","Ge","Ue","b","fr","gr","cr","ke","Xe","vr","usei18n","createI18n","english","Translation","useUtilities","items","requiredProps","isValid","item","requiredProp","composables","useI18n","toSlug","input","suffix","addUniqueHeadingSlugs","slugMap","addSlug","prefix","slugCount","duplicateSuffix","i18n","hasRequiredProps","computed","Children"],"mappings":"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AAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,OAAO;AAAA,IACL;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,UAAU;AAAA,IACR;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,UAAU;AAAA,IACR;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,IAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,SAAS;A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,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,MAAM,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,MAAM,QAAQA,MAAM,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,OAAOA,MAAM,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,KAAK,QAAQA,MAAM,QAAQA,KAAK,QAAQA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,KAAK,SAASA,MAAM,SAASA,MAAM,SAASA,MAAM,SAASA,KAAK,SAASA,KAAK,SAASA,K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"}