html-validate 9.5.4 → 9.6.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":"elements.js","sources":["../../src/elements/html5.ts","../../src/elements/index.ts"],"sourcesContent":["import { defineMetadata } from \"../meta/define-metadata\";\nimport { metadataHelper } from \"../meta/helper\";\nimport { type HtmlElementLike } from \"../meta/html-element-like\";\n\nconst {\n\tallowedIfAttributeIsPresent,\n\tallowedIfAttributeIsAbsent,\n\tallowedIfAttributeHasValue,\n\tallowedIfParentIsPresent,\n} = metadataHelper;\n\nconst validId = \"/\\\\S+/\";\n\nconst ReferrerPolicy = [\n\t\"\",\n\t\"no-referrer\",\n\t\"no-referrer-when-downgrade\",\n\t\"same-origin\",\n\t\"origin\",\n\t\"strict-origin\",\n\t\"origin-when-cross-origin\",\n\t\"strict-origin-when-cross-origin\",\n\t\"unsafe-url\",\n];\n\nfunction isInsideLandmark(node: HtmlElementLike): boolean {\n\t/* § 4: https://www.w3.org/TR/html-aria/#docconformance */\n\t/* § 3.4.42: https://w3c.github.io/html-aam/#el-footer */\n\t/* § 3.4.48: https://w3c.github.io/html-aam/#el-header */\n\tconst selectors = [\n\t\t\"article\",\n\t\t\"aside\",\n\t\t\"main\",\n\t\t\"nav\",\n\t\t\"section\",\n\t\t'[role=\"article\"]',\n\t\t'[role=\"complementary\"]',\n\t\t'[role=\"main\"]',\n\t\t'[role=\"navigation\"]',\n\t\t'[role=\"region\"]',\n\t];\n\treturn Boolean(node.closest(selectors.join(\",\")));\n}\n\nfunction linkBodyOk(node: HtmlElementLike): boolean {\n\t/* with itemprop the element is always body ok */\n\tif (node.hasAttribute(\"itemprop\")) {\n\t\treturn true;\n\t}\n\n\t/* if the rel attribute is missing it cannot be body ok */\n\tconst rel = node.getAttribute(\"rel\");\n\tif (!rel) {\n\t\treturn false;\n\t}\n\n\t/* for dynamic rel attributes assume it is body ok */\n\t/* istanbul ignore next: tests run without dynamic elements */\n\tif (typeof rel !== \"string\") {\n\t\treturn false;\n\t}\n\n\t/* only when rel matches one of these keywords it is body ok */\n\tconst bodyOk = [\n\t\t\"dns-prefetch\",\n\t\t\"modulepreload\",\n\t\t\"pingback\",\n\t\t\"preconnect\",\n\t\t\"prefetch\",\n\t\t\"preload\",\n\t\t\"stylesheet\",\n\t];\n\tconst tokens = rel.toLowerCase().split(/\\s+/);\n\treturn tokens.some((keyword) => bodyOk.includes(keyword));\n}\n\nexport default defineMetadata({\n\t\"*\": {\n\t\tattributes: {\n\t\t\tcontenteditable: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"true\", \"false\"],\n\t\t\t},\n\t\t\tcontextmenu: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdir: {\n\t\t\t\tenum: [\"ltr\", \"rtl\", \"auto\"],\n\t\t\t},\n\t\t\tdraggable: {\n\t\t\t\tenum: [\"true\", \"false\"],\n\t\t\t},\n\t\t\thidden: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tid: {\n\t\t\t\tenum: [validId],\n\t\t\t},\n\t\t\tinert: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tspellcheck: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"true\", \"false\"],\n\t\t\t},\n\t\t\ttabindex: {\n\t\t\t\tenum: [\"/-?\\\\d+/\"],\n\t\t\t},\n\t\t},\n\t},\n\n\ta: {\n\t\tflow: true,\n\t\tfocusable(node) {\n\t\t\treturn node.hasAttribute(\"href\");\n\t\t},\n\t\tphrasing: true,\n\t\tinteractive: true,\n\t\ttransparent: true,\n\t\tattributes: {\n\t\t\tcharset: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcoords: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdownload: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\thref: {\n\t\t\t\tenum: [\"/.*/\"],\n\t\t\t},\n\t\t\threflang: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t},\n\t\t\titemprop: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t},\n\t\t\tmethods: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tname: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tping: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t},\n\t\t\treferrerpolicy: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t\tenum: ReferrerPolicy,\n\t\t\t},\n\t\t\trel: {\n\t\t\t\tallowed(node, attr) {\n\t\t\t\t\tif (!node.hasAttribute(\"href\")) {\n\t\t\t\t\t\treturn `requires \"href\" attribute to be present`;\n\t\t\t\t\t}\n\t\t\t\t\tif (!attr || attr === \"\" || typeof attr !== \"string\") {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t\tconst disallowed = [\n\t\t\t\t\t\t/* whatwg */\n\t\t\t\t\t\t\"canonical\",\n\t\t\t\t\t\t\"dns-prefetch\",\n\t\t\t\t\t\t\"expect\",\n\t\t\t\t\t\t\"icon\",\n\t\t\t\t\t\t\"manifest\",\n\t\t\t\t\t\t\"modulepreload\",\n\t\t\t\t\t\t\"pingback\",\n\t\t\t\t\t\t\"preconnect\",\n\t\t\t\t\t\t\"prefetch\",\n\t\t\t\t\t\t\"preload\",\n\t\t\t\t\t\t\"stylesheet\",\n\n\t\t\t\t\t\t/* microformats.org */\n\t\t\t\t\t\t\"apple-touch-icon\",\n\t\t\t\t\t\t\"apple-touch-icon-precomposed\",\n\t\t\t\t\t\t\"apple-touch-startup-image\",\n\t\t\t\t\t\t\"authorization_endpoint\",\n\t\t\t\t\t\t\"component\",\n\t\t\t\t\t\t\"chrome-webstore-item\",\n\t\t\t\t\t\t\"dns-prefetch\",\n\t\t\t\t\t\t\"edit\",\n\t\t\t\t\t\t\"gbfs\",\n\t\t\t\t\t\t\"gtfs-static\",\n\t\t\t\t\t\t\"gtfs-realtime\",\n\t\t\t\t\t\t\"import\",\n\t\t\t\t\t\t\"mask-icon\",\n\t\t\t\t\t\t\"meta\",\n\t\t\t\t\t\t\"micropub\",\n\t\t\t\t\t\t\"openid.delegate\",\n\t\t\t\t\t\t\"openid.server\",\n\t\t\t\t\t\t\"openid2.local_id\",\n\t\t\t\t\t\t\"openid2.provider\",\n\t\t\t\t\t\t\"p3pv1\",\n\t\t\t\t\t\t\"pgpkey\",\n\t\t\t\t\t\t\"schema.dcterms\",\n\t\t\t\t\t\t\"service\",\n\t\t\t\t\t\t\"shortlink\",\n\t\t\t\t\t\t\"sitemap\",\n\t\t\t\t\t\t\"subresource\",\n\t\t\t\t\t\t\"sword\",\n\t\t\t\t\t\t\"timesheet\",\n\t\t\t\t\t\t\"token_endpoint\",\n\t\t\t\t\t\t\"wlwmanifest\",\n\t\t\t\t\t\t\"stylesheet/less\",\n\t\t\t\t\t\t\"token_endpoint\",\n\t\t\t\t\t\t\"yandex-tableau-widget\",\n\t\t\t\t\t];\n\t\t\t\t\tconst tokens = attr.toLowerCase().split(/\\s+/);\n\t\t\t\t\tfor (const keyword of tokens) {\n\t\t\t\t\t\tif (disallowed.includes(keyword)) {\n\t\t\t\t\t\t\treturn `<a> does not allow rel=\"${keyword}\"`;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (keyword.startsWith(\"dcterms.\")) {\n\t\t\t\t\t\t\treturn `<a> does not allow rel=\"${keyword}\"`;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn null;\n\t\t\t\t},\n\t\t\t\tlist: true,\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\tshape: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\ttarget: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t\tenum: [\"/[^_].*/\", \"_blank\", \"_self\", \"_parent\", \"_top\"],\n\t\t\t},\n\t\t\ttype: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t},\n\t\t\turn: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\tpermittedDescendants: [{ exclude: \"@interactive\" }],\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\treturn node.hasAttribute(\"href\") ? \"link\" : \"generic\";\n\t\t\t},\n\t\t\tnaming(node) {\n\t\t\t\treturn node.hasAttribute(\"href\") ? \"allowed\" : \"prohibited\";\n\t\t\t},\n\t\t},\n\t},\n\n\tabbr: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tacronym: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use <abbr> instead\",\n\t\t\tdocumentation: \"`<abbr>` can be used as a replacement.\",\n\t\t\tsource: \"html5\",\n\t\t},\n\t},\n\n\taddress: {\n\t\tflow: true,\n\t\taria: {\n\t\t\timplicitRole: \"group\",\n\t\t},\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: [\"address\", \"header\", \"footer\", \"@heading\", \"@sectioning\"] }],\n\t},\n\n\tapplet: {\n\t\tdeprecated: {\n\t\t\tsource: \"html5\",\n\t\t},\n\t\tattributes: {\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t},\n\n\tarea: {\n\t\tflow(node) {\n\t\t\treturn Boolean(node.closest(\"map\"));\n\t\t},\n\t\tfocusable(node) {\n\t\t\treturn node.hasAttribute(\"href\");\n\t\t},\n\t\tphrasing(node) {\n\t\t\treturn Boolean(node.closest(\"map\"));\n\t\t},\n\t\tvoid: true,\n\t\tattributes: {\n\t\t\talt: {},\n\t\t\tcoords: {\n\t\t\t\tallowed(node) {\n\t\t\t\t\tconst attr = node.getAttribute(\"shape\");\n\t\t\t\t\tif (attr === \"default\") {\n\t\t\t\t\t\treturn `cannot be used when \"shape\" attribute is \"default\"`;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t\tdownload: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t},\n\t\t\tnohref: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\titemprop: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t},\n\t\t\tping: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t},\n\t\t\treferrerpolicy: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t\tenum: ReferrerPolicy,\n\t\t\t},\n\t\t\trel: {\n\t\t\t\tallowed(node, attr) {\n\t\t\t\t\tif (!node.hasAttribute(\"href\")) {\n\t\t\t\t\t\treturn `requires \"href\" attribute to be present`;\n\t\t\t\t\t}\n\t\t\t\t\tif (!attr || attr === \"\" || typeof attr !== \"string\") {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t\tconst disallowed = [\n\t\t\t\t\t\t/* whatwg */\n\t\t\t\t\t\t\"canonical\",\n\t\t\t\t\t\t\"dns-prefetch\",\n\t\t\t\t\t\t\"expect\",\n\t\t\t\t\t\t\"icon\",\n\t\t\t\t\t\t\"manifest\",\n\t\t\t\t\t\t\"modulepreload\",\n\t\t\t\t\t\t\"pingback\",\n\t\t\t\t\t\t\"preconnect\",\n\t\t\t\t\t\t\"prefetch\",\n\t\t\t\t\t\t\"preload\",\n\t\t\t\t\t\t\"stylesheet\",\n\n\t\t\t\t\t\t/* microformats.org */\n\t\t\t\t\t\t\"apple-touch-icon\",\n\t\t\t\t\t\t\"apple-touch-icon-precomposed\",\n\t\t\t\t\t\t\"apple-touch-startup-image\",\n\t\t\t\t\t\t\"authorization_endpoint\",\n\t\t\t\t\t\t\"component\",\n\t\t\t\t\t\t\"chrome-webstore-item\",\n\t\t\t\t\t\t\"dns-prefetch\",\n\t\t\t\t\t\t\"edit\",\n\t\t\t\t\t\t\"gbfs\",\n\t\t\t\t\t\t\"gtfs-static\",\n\t\t\t\t\t\t\"gtfs-realtime\",\n\t\t\t\t\t\t\"import\",\n\t\t\t\t\t\t\"mask-icon\",\n\t\t\t\t\t\t\"meta\",\n\t\t\t\t\t\t\"micropub\",\n\t\t\t\t\t\t\"openid.delegate\",\n\t\t\t\t\t\t\"openid.server\",\n\t\t\t\t\t\t\"openid2.local_id\",\n\t\t\t\t\t\t\"openid2.provider\",\n\t\t\t\t\t\t\"p3pv1\",\n\t\t\t\t\t\t\"pgpkey\",\n\t\t\t\t\t\t\"schema.dcterms\",\n\t\t\t\t\t\t\"service\",\n\t\t\t\t\t\t\"shortlink\",\n\t\t\t\t\t\t\"sitemap\",\n\t\t\t\t\t\t\"subresource\",\n\t\t\t\t\t\t\"sword\",\n\t\t\t\t\t\t\"timesheet\",\n\t\t\t\t\t\t\"token_endpoint\",\n\t\t\t\t\t\t\"wlwmanifest\",\n\t\t\t\t\t\t\"stylesheet/less\",\n\t\t\t\t\t\t\"token_endpoint\",\n\t\t\t\t\t\t\"yandex-tableau-widget\",\n\t\t\t\t\t];\n\t\t\t\t\tconst tokens = attr.toLowerCase().split(/\\s+/);\n\t\t\t\t\tfor (const keyword of tokens) {\n\t\t\t\t\t\tif (disallowed.includes(keyword)) {\n\t\t\t\t\t\t\treturn `<area> does not allow rel=\"${keyword}\"`;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (keyword.startsWith(\"dcterms.\")) {\n\t\t\t\t\t\t\treturn `<area> does not allow rel=\"${keyword}\"`;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn null;\n\t\t\t\t},\n\t\t\t},\n\t\t\tshape: {\n\t\t\t\tallowed(node, attr) {\n\t\t\t\t\tconst shape = attr ?? \"rect\";\n\t\t\t\t\tswitch (shape) {\n\t\t\t\t\t\tcase \"circ\":\n\t\t\t\t\t\tcase \"circle\":\n\t\t\t\t\t\tcase \"poly\":\n\t\t\t\t\t\tcase \"polygon\":\n\t\t\t\t\t\tcase \"rect\":\n\t\t\t\t\t\tcase \"rectangle\":\n\t\t\t\t\t\t\treturn allowedIfAttributeIsPresent(\"coords\")(node, attr);\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tenum: [\"rect\", \"circle\", \"poly\", \"default\"],\n\t\t\t},\n\t\t\ttarget: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t\tenum: [\"/[^_].*/\", \"_blank\", \"_self\", \"_parent\", \"_top\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\treturn node.hasAttribute(\"href\") ? \"link\" : \"generic\";\n\t\t\t},\n\t\t\tnaming(node) {\n\t\t\t\treturn node.hasAttribute(\"href\") ? \"allowed\" : \"prohibited\";\n\t\t\t},\n\t\t},\n\t\trequiredAncestors: [\"map\"],\n\t},\n\n\tarticle: {\n\t\tflow: true,\n\t\tsectioning: true,\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: [\"main\"] }],\n\t\taria: {\n\t\t\timplicitRole: \"article\",\n\t\t},\n\t},\n\n\taside: {\n\t\tflow: true,\n\t\tsectioning: true,\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: [\"main\"] }],\n\t\taria: {\n\t\t\timplicitRole: \"complementary\",\n\t\t},\n\t},\n\n\taudio: {\n\t\tflow: true,\n\t\tfocusable(node) {\n\t\t\treturn node.hasAttribute(\"controls\");\n\t\t},\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\tinteractive(node) {\n\t\t\treturn node.hasAttribute(\"controls\");\n\t\t},\n\t\ttransparent: [\"@flow\"],\n\t\tattributes: {\n\t\t\tcrossorigin: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"anonymous\", \"use-credentials\"],\n\t\t\t},\n\t\t\titemprop: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"src\"),\n\t\t\t},\n\t\t\tpreload: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"none\", \"metadata\", \"auto\"],\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"@flow\", \"track\", \"source\"],\n\t\tpermittedDescendants: [{ exclude: [\"audio\", \"video\"] }],\n\t\tpermittedOrder: [\"source\", \"track\", \"@flow\"],\n\t},\n\n\tb: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tbase: {\n\t\tmetadata: true,\n\t\tvoid: true,\n\t\tpermittedParent: [\"head\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tbasefont: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use CSS instead\",\n\t\t\tdocumentation: \"Use CSS `font-size` property instead.\",\n\t\t\tsource: \"html4\",\n\t\t},\n\t},\n\n\tbdi: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tbdo: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tbgsound: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use <audio> instead\",\n\t\t\tdocumentation:\n\t\t\t\t\"Use the `<audio>` element instead but consider accessibility concerns with autoplaying sounds.\",\n\t\t\tsource: \"non-standard\",\n\t\t},\n\t},\n\n\tbig: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use CSS instead\",\n\t\t\tdocumentation: \"Use CSS `font-size` property instead.\",\n\t\t\tsource: \"html5\",\n\t\t},\n\t},\n\n\tblink: {\n\t\tdeprecated: {\n\t\t\tdocumentation:\n\t\t\t\t\"`<blink>` has no direct replacement and blinking text is frowned upon by accessibility standards.\",\n\t\t\tsource: \"non-standard\",\n\t\t},\n\t},\n\n\tblockquote: {\n\t\tflow: true,\n\t\tsectioning: true,\n\t\taria: {\n\t\t\timplicitRole: \"blockquote\",\n\t\t},\n\t\tpermittedContent: [\"@flow\"],\n\t},\n\n\tbody: {\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedParent: [\"html\"],\n\t\tattributes: {\n\t\t\talink: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbackground: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbgcolor: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tlink: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tmarginbottom: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tmarginheight: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tmarginleft: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tmarginright: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tmargintop: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tmarginwidth: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\ttext: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tvlink: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tbr: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tvoid: true,\n\t\tattributes: {\n\t\t\tclear: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tbutton: {\n\t\tflow: true,\n\t\tfocusable: true,\n\t\tphrasing: true,\n\t\tinteractive: true,\n\t\tformAssociated: {\n\t\t\tdisablable: true,\n\t\t\tlisted: true,\n\t\t},\n\t\tlabelable: true,\n\t\tattributes: {\n\t\t\tautofocus: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdisabled: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tformaction: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\"], { defaultValue: \"submit\" }),\n\t\t\t},\n\t\t\tformenctype: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\"], { defaultValue: \"submit\" }),\n\t\t\t},\n\t\t\tformmethod: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\"], { defaultValue: \"submit\" }),\n\t\t\t\tenum: [\"get\", \"post\", \"dialog\"],\n\t\t\t},\n\t\t\tformnovalidate: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\"], { defaultValue: \"submit\" }),\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tformtarget: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\"], { defaultValue: \"submit\" }),\n\t\t\t\tenum: [\"/[^_].*/\", \"_blank\", \"_self\", \"_parent\", \"_top\"],\n\t\t\t},\n\t\t\ttype: {\n\t\t\t\tenum: [\"submit\", \"reset\", \"button\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"button\",\n\t\t},\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tpermittedDescendants: [{ exclude: [\"@interactive\"] }],\n\t\ttextContent: \"accessible\",\n\t},\n\n\tcanvas: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\ttransparent: true,\n\t},\n\n\tcaption: {\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: [\"table\"] }],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"caption\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tcenter: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use CSS instead\",\n\t\t\tdocumentation: \"Use the CSS `text-align` or `margin: auto` properties instead.\",\n\t\t\tsource: \"html4\",\n\t\t},\n\t},\n\n\tcite: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tcode: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"code\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tcol: {\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tchar: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcharoff: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tspan: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\tvalign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\tvoid: true,\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tcolgroup: {\n\t\timplicitClosed: [\"colgroup\"],\n\t\tattributes: {\n\t\t\tspan: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"col\", \"template\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tdata: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tdatalist: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\taria: {\n\t\t\timplicitRole: \"listbox\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t\tpermittedContent: [\"@phrasing\", \"option\"],\n\t},\n\n\tdd: {\n\t\timplicitClosed: [\"dd\", \"dt\"],\n\t\tpermittedContent: [\"@flow\"],\n\t\trequiredAncestors: [\"dl > dd\", \"dl > div > dd\"],\n\t},\n\n\tdel: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\ttransparent: true,\n\t\taria: {\n\t\t\timplicitRole: \"deletion\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tdetails: {\n\t\tflow: true,\n\t\tsectioning: true,\n\t\tinteractive: true,\n\t\tattributes: {\n\t\t\topen: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"group\",\n\t\t},\n\t\tpermittedContent: [\"summary\", \"@flow\"],\n\t\tpermittedOrder: [\"summary\", \"@flow\"],\n\t\trequiredContent: [\"summary\"],\n\t},\n\n\tdfn: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\taria: {\n\t\t\timplicitRole: \"term\",\n\t\t},\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tpermittedDescendants: [{ exclude: [\"dfn\"] }],\n\t},\n\n\tdialog: {\n\t\tflow: true,\n\t\tpermittedContent: [\"@flow\"],\n\t\tattributes: {\n\t\t\topen: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"dialog\",\n\t\t},\n\t},\n\n\tdir: {\n\t\tdeprecated: {\n\t\t\tdocumentation:\n\t\t\t\t\"The non-standard `<dir>` element has no direct replacement but MDN recommends replacing with `<ul>` and CSS.\",\n\t\t\tsource: \"html4\",\n\t\t},\n\t},\n\n\tdiv: {\n\t\tflow: true,\n\t\tpermittedContent: [\"@flow\", \"dt\", \"dd\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tdl: {\n\t\tflow: true,\n\t\tpermittedContent: [\"@script\", \"dt\", \"dd\", \"div\"],\n\t\tattributes: {\n\t\t\tcompact: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t},\n\n\tdt: {\n\t\timplicitClosed: [\"dd\", \"dt\"],\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: [\"header\", \"footer\", \"@sectioning\", \"@heading\"] }],\n\t\trequiredAncestors: [\"dl > dt\", \"dl > div > dt\"],\n\t},\n\n\tem: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"emphasis\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tembed: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\tinteractive: true,\n\t\tvoid: true,\n\t\tattributes: {\n\t\t\theight: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\tsrc: {\n\t\t\t\trequired: true,\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\ttitle: {\n\t\t\t\trequired: true,\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t},\n\t},\n\n\tfieldset: {\n\t\tflow: true,\n\t\tformAssociated: {\n\t\t\tdisablable: true,\n\t\t\tlisted: true,\n\t\t},\n\t\tattributes: {\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdisabled: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"group\",\n\t\t},\n\t\tpermittedContent: [\"@flow\", \"legend?\"],\n\t\tpermittedOrder: [\"legend\", \"@flow\"],\n\t},\n\n\tfigcaption: {\n\t\tpermittedContent: [\"@flow\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tfigure: {\n\t\tflow: true,\n\t\taria: {\n\t\t\timplicitRole: \"figure\",\n\t\t},\n\t\tpermittedContent: [\"@flow\", \"figcaption?\"],\n\t\tpermittedOrder: [\"figcaption\", \"@flow\", \"figcaption\"],\n\t},\n\n\tfont: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use CSS instead\",\n\t\t\tdocumentation: \"Use CSS font properties instead.\",\n\t\t\tsource: \"html4\",\n\t\t},\n\t},\n\n\tfooter: {\n\t\tflow: true,\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\tif (isInsideLandmark(node)) {\n\t\t\t\t\treturn \"generic\";\n\t\t\t\t} else {\n\t\t\t\t\treturn \"contentinfo\";\n\t\t\t\t}\n\t\t\t},\n\t\t\tnaming(node) {\n\t\t\t\tif (isInsideLandmark(node)) {\n\t\t\t\t\treturn \"prohibited\";\n\t\t\t\t} else {\n\t\t\t\t\treturn \"allowed\";\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: [\"header\", \"footer\", \"main\"] }],\n\t},\n\n\tform: {\n\t\tflow: true,\n\t\tform: true,\n\t\tattributes: {\n\t\t\taction: {\n\t\t\t\tenum: [/^\\s*\\S+\\s*$/],\n\t\t\t},\n\t\t\taccept: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tautocomplete: {\n\t\t\t\tenum: [\"on\", \"off\"],\n\t\t\t},\n\t\t\tmethod: {\n\t\t\t\tenum: [\"get\", \"post\", \"dialog\"],\n\t\t\t},\n\t\t\tnovalidate: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\trel: {\n\t\t\t\tallowed(_, attr) {\n\t\t\t\t\tif (!attr || attr === \"\" || typeof attr !== \"string\") {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t\tconst disallowed = [\n\t\t\t\t\t\t/* whatwg */\n\t\t\t\t\t\t\"alternate\",\n\t\t\t\t\t\t\"canonical\",\n\t\t\t\t\t\t\"author\",\n\t\t\t\t\t\t\"bookmark\",\n\t\t\t\t\t\t\"dns-prefetch\",\n\t\t\t\t\t\t\"expect\",\n\t\t\t\t\t\t\"icon\",\n\t\t\t\t\t\t\"manifest\",\n\t\t\t\t\t\t\"modulepreload\",\n\t\t\t\t\t\t\"pingback\",\n\t\t\t\t\t\t\"preconnect\",\n\t\t\t\t\t\t\"prefetch\",\n\t\t\t\t\t\t\"preload\",\n\t\t\t\t\t\t\"privacy-policy\",\n\t\t\t\t\t\t\"stylesheet\",\n\t\t\t\t\t\t\"tag\",\n\t\t\t\t\t\t\"terms-of-service\",\n\t\t\t\t\t];\n\t\t\t\t\tconst tokens = attr.toLowerCase().split(/\\s+/);\n\t\t\t\t\tfor (const keyword of tokens) {\n\t\t\t\t\t\tif (disallowed.includes(keyword)) {\n\t\t\t\t\t\t\treturn `<form> does not allow rel=\"${keyword}\"`;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn null;\n\t\t\t\t},\n\t\t\t\tlist: true,\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\ttarget: {\n\t\t\t\tenum: [\"/[^_].*/\", \"_blank\", \"_self\", \"_parent\", \"_top\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"form\",\n\t\t},\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: [\"@form\"] }],\n\t},\n\n\tframe: {\n\t\tdeprecated: {\n\t\t\tdocumentation:\n\t\t\t\t\"The `<frame>` element can be replaced with the `<iframe>` element but a better solution is to remove usage of frames entirely.\",\n\t\t\tsource: \"html5\",\n\t\t},\n\t\tattributes: {\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\ttitle: {\n\t\t\t\trequired: true,\n\t\t\t},\n\t\t},\n\t},\n\n\tframeset: {\n\t\tdeprecated: {\n\t\t\tdocumentation:\n\t\t\t\t\"The `<frameset>` element can be replaced with the `<iframe>` element but a better solution is to remove usage of frames entirely.\",\n\t\t\tsource: \"html5\",\n\t\t},\n\t},\n\n\th1: {\n\t\tflow: true,\n\t\theading: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"heading\",\n\t\t},\n\t},\n\n\th2: {\n\t\tflow: true,\n\t\theading: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"heading\",\n\t\t},\n\t},\n\n\th3: {\n\t\tflow: true,\n\t\theading: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"heading\",\n\t\t},\n\t},\n\n\th4: {\n\t\tflow: true,\n\t\theading: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"heading\",\n\t\t},\n\t},\n\n\th5: {\n\t\tflow: true,\n\t\theading: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"heading\",\n\t\t},\n\t},\n\n\th6: {\n\t\tflow: true,\n\t\theading: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"heading\",\n\t\t},\n\t},\n\n\thead: {\n\t\tpermittedContent: [\"base?\", \"title?\", \"@meta\"],\n\t\tpermittedParent: [\"html\"],\n\t\trequiredContent: [\"title\"],\n\t\tattributes: {\n\t\t\tprofile: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\theader: {\n\t\tflow: true,\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\tif (isInsideLandmark(node)) {\n\t\t\t\t\treturn \"generic\";\n\t\t\t\t} else {\n\t\t\t\t\treturn \"banner\";\n\t\t\t\t}\n\t\t\t},\n\t\t\tnaming(node) {\n\t\t\t\tif (isInsideLandmark(node)) {\n\t\t\t\t\treturn \"prohibited\";\n\t\t\t\t} else {\n\t\t\t\t\treturn \"allowed\";\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: [\"header\", \"footer\", \"main\"] }],\n\t},\n\n\thgroup: {\n\t\tflow: true,\n\t\theading: true,\n\t\tpermittedContent: [\"p\", \"@heading?\"],\n\t\tpermittedDescendants: [{ exclude: [\"hgroup\"] }],\n\t\trequiredContent: [\"@heading\"],\n\t\taria: {\n\t\t\timplicitRole: \"group\",\n\t\t},\n\t},\n\n\thr: {\n\t\tflow: true,\n\t\tvoid: true,\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcolor: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tnoshade: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"separator\",\n\t\t},\n\t},\n\n\thtml: {\n\t\tpermittedContent: [\"head?\", \"body?\"],\n\t\tpermittedOrder: [\"head\", \"body\"],\n\t\trequiredContent: [\"head\", \"body\"],\n\t\tattributes: {\n\t\t\tlang: {\n\t\t\t\trequired: true,\n\t\t\t},\n\t\t\tversion: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"document\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\ti: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tiframe: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\tinteractive: true,\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tallowtransparency: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tframeborder: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\theight: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\thspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tmarginheight: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tmarginwidth: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\treferrerpolicy: {\n\t\t\t\tenum: ReferrerPolicy,\n\t\t\t},\n\t\t\tscrolling: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tsrc: {\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\ttitle: {\n\t\t\t\trequired: true,\n\t\t\t},\n\t\t\tvspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [],\n\t},\n\n\timg: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\tinteractive(node) {\n\t\t\treturn node.hasAttribute(\"usemap\");\n\t\t},\n\t\tvoid: true,\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcrossorigin: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"anonymous\", \"use-credentials\"],\n\t\t\t},\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdecoding: {\n\t\t\t\tenum: [\"sync\", \"async\", \"auto\"],\n\t\t\t},\n\t\t\theight: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\thspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tismap: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tlowsrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tname: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\treferrerpolicy: {\n\t\t\t\tenum: ReferrerPolicy,\n\t\t\t},\n\t\t\tsrc: {\n\t\t\t\trequired: true,\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\tsrcset: {\n\t\t\t\tenum: [\"/[^]+/\"],\n\t\t\t},\n\t\t\tvspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\tconst alt = node.getAttribute(\"alt\");\n\t\t\t\tconst ariaLabel = node.getAttribute(\"aria-label\");\n\t\t\t\tconst ariaLabelledBy = node.getAttribute(\"aria-labelledby\");\n\t\t\t\tconst title = node.getAttribute(\"title\");\n\t\t\t\tif (alt === \"\" && !ariaLabel && !ariaLabelledBy && !title) {\n\t\t\t\t\treturn \"none\";\n\t\t\t\t} else {\n\t\t\t\t\treturn \"img\";\n\t\t\t\t}\n\t\t\t},\n\t\t\tnaming(node) {\n\t\t\t\tconst alt = node.getAttribute(\"alt\");\n\t\t\t\tconst ariaLabel = node.getAttribute(\"aria-label\");\n\t\t\t\tconst ariaLabelledBy = node.getAttribute(\"aria-labelledby\");\n\t\t\t\tconst title = node.getAttribute(\"title\");\n\t\t\t\tif (!alt && !ariaLabel && !ariaLabelledBy && !title) {\n\t\t\t\t\treturn \"prohibited\";\n\t\t\t\t} else {\n\t\t\t\t\treturn \"allowed\";\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t},\n\n\tinput: {\n\t\tflow: true,\n\t\tfocusable(node) {\n\t\t\treturn node.getAttribute(\"type\") !== \"hidden\";\n\t\t},\n\t\tphrasing: true,\n\t\tinteractive(node) {\n\t\t\treturn node.getAttribute(\"type\") !== \"hidden\";\n\t\t},\n\t\tvoid: true,\n\t\tformAssociated: {\n\t\t\tdisablable: true,\n\t\t\tlisted: true,\n\t\t},\n\t\tlabelable(node) {\n\t\t\treturn node.getAttribute(\"type\") !== \"hidden\";\n\t\t},\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tautofocus: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tcapture: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"environment\", \"user\"],\n\t\t\t},\n\t\t\tchecked: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdisabled: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tformaction: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\", \"image\"], {\n\t\t\t\t\tdefaultValue: \"submit\",\n\t\t\t\t}),\n\t\t\t},\n\t\t\tformenctype: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\", \"image\"], {\n\t\t\t\t\tdefaultValue: \"submit\",\n\t\t\t\t}),\n\t\t\t},\n\t\t\tformmethod: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\", \"image\"], {\n\t\t\t\t\tdefaultValue: \"submit\",\n\t\t\t\t}),\n\t\t\t\tenum: [\"get\", \"post\", \"dialog\"],\n\t\t\t},\n\t\t\tformnovalidate: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\", \"image\"], {\n\t\t\t\t\tdefaultValue: \"submit\",\n\t\t\t\t}),\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tformtarget: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\", \"image\"], {\n\t\t\t\t\tdefaultValue: \"submit\",\n\t\t\t\t}),\n\t\t\t\tenum: [\"/[^_].*/\", \"_blank\", \"_self\", \"_parent\", \"_top\"],\n\t\t\t},\n\t\t\thspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tinputmode: {\n\t\t\t\tenum: [\"none\", \"text\", \"decimal\", \"numeric\", \"tel\", \"search\", \"email\", \"url\"],\n\t\t\t},\n\t\t\tismap: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tmultiple: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\treadonly: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\trequired: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\ttype: {\n\t\t\t\tenum: [\n\t\t\t\t\t\"button\",\n\t\t\t\t\t\"checkbox\",\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"date\",\n\t\t\t\t\t\"datetime-local\",\n\t\t\t\t\t\"email\",\n\t\t\t\t\t\"file\",\n\t\t\t\t\t\"hidden\",\n\t\t\t\t\t\"image\",\n\t\t\t\t\t\"month\",\n\t\t\t\t\t\"number\",\n\t\t\t\t\t\"password\",\n\t\t\t\t\t\"radio\",\n\t\t\t\t\t\"range\",\n\t\t\t\t\t\"reset\",\n\t\t\t\t\t\"search\",\n\t\t\t\t\t\"submit\",\n\t\t\t\t\t\"tel\",\n\t\t\t\t\t\"text\",\n\t\t\t\t\t\"time\",\n\t\t\t\t\t\"url\",\n\t\t\t\t\t\"week\",\n\t\t\t\t],\n\t\t\t},\n\t\t\tusemap: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tvspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\t/* eslint-disable-next-line complexity -- the standard is complicated */\n\t\t\timplicitRole(node) {\n\t\t\t\tconst list = node.hasAttribute(\"list\");\n\t\t\t\tif (list) {\n\t\t\t\t\treturn \"combobox\";\n\t\t\t\t}\n\t\t\t\tconst type = node.getAttribute(\"type\");\n\t\t\t\tswitch (type) {\n\t\t\t\t\tcase \"button\":\n\t\t\t\t\t\treturn \"button\";\n\t\t\t\t\tcase \"checkbox\":\n\t\t\t\t\t\treturn \"checkbox\";\n\t\t\t\t\tcase \"color\":\n\t\t\t\t\t\treturn null;\n\t\t\t\t\tcase \"date\":\n\t\t\t\t\t\treturn null;\n\t\t\t\t\tcase \"datetime-local\":\n\t\t\t\t\t\treturn null;\n\t\t\t\t\tcase \"email\":\n\t\t\t\t\t\treturn \"textbox\";\n\t\t\t\t\tcase \"file\":\n\t\t\t\t\t\treturn null;\n\t\t\t\t\tcase \"hidden\":\n\t\t\t\t\t\treturn null;\n\t\t\t\t\tcase \"image\":\n\t\t\t\t\t\treturn \"button\";\n\t\t\t\t\tcase \"month\":\n\t\t\t\t\t\treturn null;\n\t\t\t\t\tcase \"number\":\n\t\t\t\t\t\treturn \"spinbutton\";\n\t\t\t\t\tcase \"password\":\n\t\t\t\t\t\treturn null;\n\t\t\t\t\tcase \"radio\":\n\t\t\t\t\t\treturn \"radio\";\n\t\t\t\t\tcase \"range\":\n\t\t\t\t\t\treturn \"slider\";\n\t\t\t\t\tcase \"reset\":\n\t\t\t\t\t\treturn \"button\";\n\t\t\t\t\tcase \"search\":\n\t\t\t\t\t\treturn \"searchbox\";\n\t\t\t\t\tcase \"submit\":\n\t\t\t\t\t\treturn \"button\";\n\t\t\t\t\tcase \"tel\":\n\t\t\t\t\t\treturn \"textbox\";\n\t\t\t\t\tcase \"text\":\n\t\t\t\t\t\treturn \"textbox\";\n\t\t\t\t\tcase \"time\":\n\t\t\t\t\t\treturn null;\n\t\t\t\t\tcase \"url\":\n\t\t\t\t\t\treturn \"textbox\";\n\t\t\t\t\tcase \"week\":\n\t\t\t\t\t\treturn null;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn \"textbox\";\n\t\t\t\t}\n\t\t\t},\n\t\t\tnaming(node) {\n\t\t\t\treturn node.getAttribute(\"type\") !== \"hidden\" ? \"allowed\" : \"prohibited\";\n\t\t\t},\n\t\t},\n\t},\n\n\tins: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\ttransparent: true,\n\t\taria: {\n\t\t\timplicitRole: \"insertion\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tisindex: {\n\t\tdeprecated: {\n\t\t\tsource: \"html4\",\n\t\t},\n\t},\n\n\tkbd: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tkeygen: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tinteractive: true,\n\t\tvoid: true,\n\t\tlabelable: true,\n\t\tdeprecated: true,\n\t},\n\n\tlabel: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tinteractive: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tpermittedDescendants: [{ exclude: [\"label\"] }],\n\t\tattributes: {\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tfor: {\n\t\t\t\tenum: [validId],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tlegend: {\n\t\tpermittedContent: [\"@phrasing\", \"@heading\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tli: {\n\t\timplicitClosed: [\"li\"],\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedParent: [\"ul\", \"ol\", \"menu\", \"template\"],\n\t\tattributes: {\n\t\t\ttype: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\treturn node.closest(\"ul, ol, menu\") ? \"listitem\" : \"generic\";\n\t\t\t},\n\t\t},\n\t},\n\n\tlink: {\n\t\tmetadata: true,\n\t\tflow(node) {\n\t\t\treturn linkBodyOk(node);\n\t\t},\n\t\tphrasing(node) {\n\t\t\treturn linkBodyOk(node);\n\t\t},\n\t\tvoid: true,\n\t\tattributes: {\n\t\t\tas: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"rel\", [\"prefetch\", \"preload\", \"modulepreload\"]),\n\t\t\t\tenum: [\n\t\t\t\t\t\"audio\",\n\t\t\t\t\t\"audioworklet\",\n\t\t\t\t\t\"document\",\n\t\t\t\t\t\"embed\",\n\t\t\t\t\t\"fetch\",\n\t\t\t\t\t\"font\",\n\t\t\t\t\t\"frame\",\n\t\t\t\t\t\"iframe\",\n\t\t\t\t\t\"image\",\n\t\t\t\t\t\"manifest\",\n\t\t\t\t\t\"object\",\n\t\t\t\t\t\"paintworklet\",\n\t\t\t\t\t\"report\",\n\t\t\t\t\t\"script\",\n\t\t\t\t\t\"serviceworker\",\n\t\t\t\t\t\"sharedworker\",\n\t\t\t\t\t\"style\",\n\t\t\t\t\t\"track\",\n\t\t\t\t\t\"video\",\n\t\t\t\t\t\"webidentity\",\n\t\t\t\t\t\"worker\",\n\t\t\t\t\t\"xslt\",\n\t\t\t\t],\n\t\t\t},\n\t\t\tblocking: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"rel\", [\"stylesheet\", \"preload\", \"modulepreload\"]),\n\t\t\t\tlist: true,\n\t\t\t\tenum: [\"render\"],\n\t\t\t},\n\t\t\tcharset: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcrossorigin: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"anonymous\", \"use-credentials\"],\n\t\t\t},\n\t\t\tdisabled: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"rel\", [\"stylesheet\"]),\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\thref: {\n\t\t\t\trequired: true,\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\tintegrity: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"rel\", [\"stylesheet\", \"preload\", \"modulepreload\"]),\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\tmethods: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\treferrerpolicy: {\n\t\t\t\tenum: ReferrerPolicy,\n\t\t\t},\n\t\t\trel: {\n\t\t\t\tallowed(_, attr) {\n\t\t\t\t\tif (!attr || attr === \"\" || typeof attr !== \"string\") {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t\tconst disallowed = [\n\t\t\t\t\t\t/* whatwg */\n\t\t\t\t\t\t\"bookmark\",\n\t\t\t\t\t\t\"external\",\n\t\t\t\t\t\t\"nofollow\",\n\t\t\t\t\t\t\"noopener\",\n\t\t\t\t\t\t\"noreferrer\",\n\t\t\t\t\t\t\"opener\",\n\t\t\t\t\t\t\"tag\",\n\n\t\t\t\t\t\t/* microformats.org */\n\t\t\t\t\t\t\"disclosure\",\n\t\t\t\t\t\t\"entry-content\",\n\t\t\t\t\t\t\"lightbox\",\n\t\t\t\t\t\t\"lightvideo\",\n\t\t\t\t\t];\n\t\t\t\t\tconst tokens = attr.toLowerCase().split(/\\s+/);\n\t\t\t\t\tfor (const keyword of tokens) {\n\t\t\t\t\t\tif (disallowed.includes(keyword)) {\n\t\t\t\t\t\t\treturn `<link> does not allow rel=\"${keyword}\"`;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn null;\n\t\t\t\t},\n\t\t\t\tlist: true,\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\ttarget: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\turn: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tlisting: {\n\t\tdeprecated: {\n\t\t\tsource: \"html32\",\n\t\t},\n\t},\n\n\tmain: {\n\t\tflow: true,\n\t\taria: {\n\t\t\timplicitRole: \"main\",\n\t\t},\n\t},\n\n\tmap: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\ttransparent: true,\n\t\tattributes: {\n\t\t\tname: {\n\t\t\t\trequired: true,\n\t\t\t\tenum: [\"/\\\\S+/\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tmark: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tmarquee: {\n\t\tdeprecated: {\n\t\t\tdocumentation:\n\t\t\t\t\"Marked as obsolete by both W3C and WHATWG standards but still implemented in most browsers. Animated text should be avoided for accessibility reasons as well.\",\n\t\t\tsource: \"html5\",\n\t\t},\n\t\tattributes: {\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t},\n\n\tmath: {\n\t\tflow: true,\n\t\tforeign: true,\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdir: {\n\t\t\t\tenum: [\"ltr\", \"rtl\"],\n\t\t\t},\n\t\t\tdisplay: {\n\t\t\t\tenum: [\"block\", \"inline\"],\n\t\t\t},\n\t\t\thspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tname: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\toverflow: {\n\t\t\t\tenum: [\"linebreak\", \"scroll\", \"elide\", \"truncate\", \"scale\"],\n\t\t\t},\n\t\t\tvspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"math\",\n\t\t},\n\t},\n\n\tmenu: {\n\t\tflow: true,\n\t\taria: {\n\t\t\timplicitRole: \"list\",\n\t\t},\n\t\tpermittedContent: [\"@script\", \"li\"],\n\t},\n\n\tmeta: {\n\t\tflow(node) {\n\t\t\treturn node.hasAttribute(\"itemprop\");\n\t\t},\n\t\tphrasing(node) {\n\t\t\treturn node.hasAttribute(\"itemprop\");\n\t\t},\n\t\tmetadata: true,\n\t\tvoid: true,\n\t\tattributes: {\n\t\t\tcharset: {\n\t\t\t\tenum: [\"utf-8\"],\n\t\t\t},\n\t\t\tcontent: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"name\", \"http-equiv\", \"itemprop\", \"property\"),\n\t\t\t},\n\t\t\titemprop: {\n\t\t\t\tallowed: allowedIfAttributeIsAbsent(\"http-equiv\", \"name\"),\n\t\t\t},\n\t\t\tname: {\n\t\t\t\tallowed: allowedIfAttributeIsAbsent(\"http-equiv\", \"itemprop\"),\n\t\t\t},\n\t\t\t\"http-equiv\": {\n\t\t\t\tallowed: allowedIfAttributeIsAbsent(\"name\", \"itemprop\"),\n\t\t\t},\n\t\t\tscheme: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tmeter: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tlabelable: true,\n\t\taria: {\n\t\t\timplicitRole: \"meter\",\n\t\t},\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tpermittedDescendants: [{ exclude: \"meter\" }],\n\t},\n\n\tmulticol: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use CSS instead\",\n\t\t\tdocumentation: \"Use CSS columns instead.\",\n\t\t\tsource: \"html5\",\n\t\t},\n\t},\n\n\tnav: {\n\t\tflow: true,\n\t\tsectioning: true,\n\t\taria: {\n\t\t\timplicitRole: \"navigation\",\n\t\t},\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: \"main\" }],\n\t},\n\n\tnextid: {\n\t\tdeprecated: {\n\t\t\tsource: \"html32\",\n\t\t},\n\t},\n\n\tnobr: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use CSS instead\",\n\t\t\tdocumentation: \"Use CSS `white-space` property instead.\",\n\t\t\tsource: \"non-standard\",\n\t\t},\n\t},\n\n\tnoembed: {\n\t\tdeprecated: {\n\t\t\tsource: \"non-standard\",\n\t\t},\n\t},\n\n\tnoframes: {\n\t\tdeprecated: {\n\t\t\tsource: \"html5\",\n\t\t},\n\t},\n\n\tnoscript: {\n\t\tmetadata: true,\n\t\tflow: true,\n\t\tphrasing: true,\n\t\ttransparent: true,\n\t\tpermittedDescendants: [{ exclude: \"noscript\" }],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tobject: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\tinteractive(node) {\n\t\t\treturn node.hasAttribute(\"usemap\");\n\t\t},\n\t\ttransparent: true,\n\t\tformAssociated: {\n\t\t\tdisablable: false,\n\t\t\tlisted: true,\n\t\t},\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tarchive: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tblocking: {\n\t\t\t\tlist: true,\n\t\t\t\tenum: [\"render\"],\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tclassid: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcode: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcodebase: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcodetype: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdata: {\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t\trequired: true,\n\t\t\t},\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdeclare: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\theight: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\thspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tname: {\n\t\t\t\tenum: [\"/[^_].*/\"],\n\t\t\t},\n\t\t\tstandby: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tvspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"param\", \"@flow\"],\n\t\tpermittedOrder: [\"param\", \"@flow\"],\n\t},\n\n\tol: {\n\t\tflow: true,\n\t\tattributes: {\n\t\t\tcompact: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\treversed: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\ttype: {\n\t\t\t\tenum: [\"a\", \"A\", \"i\", \"I\", \"1\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"list\",\n\t\t},\n\t\tpermittedContent: [\"@script\", \"li\"],\n\t},\n\n\toptgroup: {\n\t\timplicitClosed: [\"optgroup\"],\n\t\tattributes: {\n\t\t\tdisabled: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"group\",\n\t\t},\n\t\tpermittedContent: [\"@script\", \"option\"],\n\t},\n\n\toption: {\n\t\timplicitClosed: [\"option\"],\n\t\tattributes: {\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdisabled: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tname: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tselected: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"option\",\n\t\t},\n\t\tpermittedContent: [],\n\t},\n\n\toutput: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tformAssociated: {\n\t\t\tdisablable: false,\n\t\t\tlisted: true,\n\t\t},\n\t\tlabelable: true,\n\t\taria: {\n\t\t\timplicitRole: \"status\",\n\t\t},\n\t\tpermittedContent: [\"@phrasing\"],\n\t},\n\n\tp: {\n\t\tflow: true,\n\t\timplicitClosed: [\n\t\t\t\"address\",\n\t\t\t\"article\",\n\t\t\t\"aside\",\n\t\t\t\"blockquote\",\n\t\t\t\"div\",\n\t\t\t\"dl\",\n\t\t\t\"fieldset\",\n\t\t\t\"footer\",\n\t\t\t\"form\",\n\t\t\t\"h1\",\n\t\t\t\"h2\",\n\t\t\t\"h3\",\n\t\t\t\"h4\",\n\t\t\t\"h5\",\n\t\t\t\"h6\",\n\t\t\t\"header\",\n\t\t\t\"hgroup\",\n\t\t\t\"hr\",\n\t\t\t\"main\",\n\t\t\t\"nav\",\n\t\t\t\"ol\",\n\t\t\t\"p\",\n\t\t\t\"pre\",\n\t\t\t\"section\",\n\t\t\t\"table\",\n\t\t\t\"ul\",\n\t\t],\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"paragraph\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tparam: {\n\t\tvoid: true,\n\t\tattributes: {\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\ttype: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tvaluetype: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tpicture: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\tpermittedContent: [\"@script\", \"source\", \"img\"],\n\t\tpermittedOrder: [\"source\", \"img\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tplaintext: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use <pre> or CSS instead\",\n\t\t\tdocumentation: \"Use the `<pre>` element or use CSS to set a monospace font.\",\n\t\t\tsource: \"html2\",\n\t\t},\n\t},\n\n\tpre: {\n\t\tflow: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tattributes: {\n\t\t\twidth: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tprogress: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tlabelable: true,\n\t\taria: {\n\t\t\timplicitRole: \"progressbar\",\n\t\t},\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tpermittedDescendants: [{ exclude: \"progress\" }],\n\t},\n\n\tq: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\trb: {\n\t\timplicitClosed: [\"rb\", \"rt\", \"rtc\", \"rp\"],\n\t\tpermittedContent: [\"@phrasing\"],\n\t},\n\n\trp: {\n\t\timplicitClosed: [\"rb\", \"rt\", \"rtc\", \"rp\"],\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\trt: {\n\t\timplicitClosed: [\"rb\", \"rt\", \"rtc\", \"rp\"],\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\trtc: {\n\t\timplicitClosed: [\"rb\", \"rtc\", \"rp\"],\n\t\tpermittedContent: [\"@phrasing\", \"rt\"],\n\t},\n\n\truby: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\", \"rb\", \"rp\", \"rt\", \"rtc\"],\n\t},\n\n\ts: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"deletion\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tsamp: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tscript: {\n\t\tmetadata: true,\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tscriptSupporting: true,\n\t\tattributes: {\n\t\t\tasync: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tcrossorigin: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"anonymous\", \"use-credentials\"],\n\t\t\t},\n\t\t\tdefer: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tevent: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tfor: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tintegrity: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"src\"),\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\tlanguage: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tnomodule: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\treferrerpolicy: {\n\t\t\t\tenum: ReferrerPolicy,\n\t\t\t},\n\t\t\tsrc: {\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tsearch: {\n\t\tflow: true,\n\t\taria: {\n\t\t\timplicitRole: \"search\",\n\t\t},\n\t},\n\n\tsection: {\n\t\tflow: true,\n\t\tsectioning: true,\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\tconst name = node.hasAttribute(\"aria-label\") || node.hasAttribute(\"aria-labelledby\");\n\t\t\t\treturn name ? \"region\" : \"generic\";\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"@flow\"],\n\t},\n\n\tselect: {\n\t\tflow: true,\n\t\tfocusable: true,\n\t\tphrasing: true,\n\t\tinteractive: true,\n\t\tformAssociated: {\n\t\t\tdisablable: true,\n\t\t\tlisted: true,\n\t\t},\n\t\tlabelable: true,\n\t\tattributes: {\n\t\t\tautofocus: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tdisabled: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tmultiple: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\trequired: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\tconst multiple = node.hasAttribute(\"multiple\");\n\t\t\t\tif (multiple) {\n\t\t\t\t\treturn \"listbox\";\n\t\t\t\t}\n\t\t\t\tconst size = node.getAttribute(\"size\");\n\t\t\t\tif (typeof size === \"string\") {\n\t\t\t\t\tconst parsed = parseInt(size, 10);\n\t\t\t\t\tif (parsed > 1) {\n\t\t\t\t\t\treturn \"listbox\";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn \"combobox\";\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"@script\", \"datasrc\", \"datafld\", \"dataformatas\", \"option\", \"optgroup\"],\n\t},\n\n\tslot: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\ttransparent: true,\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tsmall: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tsource: {\n\t\tvoid: true,\n\t\tattributes: {\n\t\t\ttype: {},\n\t\t\tmedia: {},\n\t\t\tsrc: {\n\t\t\t\tallowed: allowedIfParentIsPresent(\"audio\", \"video\"),\n\t\t\t},\n\t\t\tsrcset: {\n\t\t\t\tallowed: allowedIfParentIsPresent(\"picture\"),\n\t\t\t},\n\t\t\tsizes: {\n\t\t\t\tallowed: allowedIfParentIsPresent(\"picture\"),\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tallowed: allowedIfParentIsPresent(\"picture\"),\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\theight: {\n\t\t\t\tallowed: allowedIfParentIsPresent(\"picture\"),\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tspacer: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use CSS instead\",\n\t\t\tdocumentation: \"Use CSS margin or padding instead.\",\n\t\t\tsource: \"non-standard\",\n\t\t},\n\t},\n\n\tspan: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tattributes: {\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tstrike: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use <del> or <s> instead\",\n\t\t\tdocumentation: \"Use the `<del>` or `<s>` element instead.\",\n\t\t\tsource: \"html5\",\n\t\t},\n\t},\n\n\tstrong: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"strong\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tstyle: {\n\t\tmetadata: true,\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tsub: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"subscript\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tsummary: {\n\t\tpermittedContent: [\"@phrasing\", \"@heading\"],\n\t\tfocusable(node) {\n\t\t\treturn Boolean(node.closest(\"details\"));\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"button\",\n\t\t},\n\t},\n\n\tsup: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"superscript\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tsvg: {\n\t\tflow: true,\n\t\tforeign: true,\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\taria: {\n\t\t\timplicitRole: \"graphics-document\",\n\t\t},\n\t},\n\n\t/* while not part of HTML 5 specification these two elements are handled as\n\t * special cases to allow them as accessible text and to avoid issues with\n\t * \"no-unknown-elements\" they are added here */\n\t\"svg:desc\": {},\n\t\"svg:title\": {},\n\n\ttable: {\n\t\tflow: true,\n\t\tpermittedContent: [\"@script\", \"caption?\", \"colgroup\", \"tbody\", \"tfoot?\", \"thead?\", \"tr\"],\n\t\tpermittedOrder: [\"caption\", \"colgroup\", \"thead\", \"tbody\", \"tr\", \"tfoot\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbackground: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbgcolor: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbordercolor: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcellpadding: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcellspacing: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatapagesize: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tframe: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\trules: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tsummary: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"table\",\n\t\t},\n\t},\n\n\ttbody: {\n\t\timplicitClosed: [\"tbody\", \"tfoot\"],\n\t\tpermittedContent: [\"@script\", \"tr\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbackground: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tchar: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcharoff: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tvalign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"rowgroup\",\n\t\t},\n\t},\n\n\ttd: {\n\t\tflow: true,\n\t\timplicitClosed: [\"td\", \"th\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\taxis: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbackground: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbgcolor: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tchar: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcharoff: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcolspan: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\theight: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tnowrap: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\trowspan: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\tscope: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tvalign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\tconst table = node.closest(\"table\");\n\t\t\t\tconst tableRole = table?.getAttribute(\"role\") ?? \"table\";\n\t\t\t\tswitch (tableRole) {\n\t\t\t\t\tcase \"table\":\n\t\t\t\t\t\treturn \"cell\";\n\t\t\t\t\tcase \"grid\":\n\t\t\t\t\tcase \"treegrid\":\n\t\t\t\t\t\treturn \"gridcell\";\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"@flow\"],\n\t},\n\n\ttemplate: {\n\t\tmetadata: true,\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tscriptSupporting: true,\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\ttextarea: {\n\t\tflow: true,\n\t\tfocusable: true,\n\t\tphrasing: true,\n\t\tinteractive: true,\n\t\tformAssociated: {\n\t\t\tdisablable: true,\n\t\t\tlisted: true,\n\t\t},\n\t\tlabelable: true,\n\t\tattributes: {\n\t\t\tautocomplete: {},\n\t\t\tautofocus: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tcols: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdisabled: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tmaxlength: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\tminlength: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\treadonly: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\trequired: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\trows: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\twrap: {\n\t\t\t\tenum: [\"hard\", \"soft\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"textbox\",\n\t\t},\n\t\tpermittedContent: [],\n\t},\n\n\ttfoot: {\n\t\timplicitClosed: [\"tbody\"],\n\t\tpermittedContent: [\"@script\", \"tr\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbackground: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tchar: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcharoff: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tvalign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"rowgroup\",\n\t\t},\n\t},\n\n\tth: {\n\t\tflow: true,\n\t\timplicitClosed: [\"td\", \"th\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\taxis: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbackground: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbgcolor: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tchar: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcharoff: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcolspan: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\theight: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tnowrap: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\trowspan: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\tscope: {\n\t\t\t\tenum: [\"row\", \"col\", \"rowgroup\", \"colgroup\"],\n\t\t\t},\n\t\t\tvalign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\tconst table = node.closest(\"table\");\n\t\t\t\tconst tableRole = table?.getAttribute(\"role\") ?? \"table\";\n\t\t\t\tif (typeof tableRole !== \"string\" || ![\"table\", \"grid\", \"treegrid\"].includes(tableRole)) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t\tconst scope = node.getAttribute(\"scope\");\n\t\t\t\tswitch (scope) {\n\t\t\t\t\tcase \"col\":\n\t\t\t\t\t\treturn \"columnheader\";\n\t\t\t\t\tcase \"row\":\n\t\t\t\t\t\treturn \"rowheader\";\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn tableRole === \"table\" ? \"cell\" : \"gridcell\";\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: [\"header\", \"footer\", \"@sectioning\", \"@heading\"] }],\n\t},\n\n\tthead: {\n\t\timplicitClosed: [\"tbody\", \"tfoot\"],\n\t\tpermittedContent: [\"@script\", \"tr\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbackground: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tchar: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcharoff: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tvalign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"rowgroup\",\n\t\t},\n\t},\n\n\ttime: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\taria: {\n\t\t\timplicitRole: \"time\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t\tpermittedContent: [\"@phrasing\"],\n\t},\n\n\ttitle: {\n\t\tmetadata: true,\n\t\tpermittedContent: [],\n\t\tpermittedParent: [\"head\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\ttr: {\n\t\timplicitClosed: [\"tr\"],\n\t\tpermittedContent: [\"@script\", \"td\", \"th\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbackground: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbgcolor: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tchar: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcharoff: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tvalign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"row\",\n\t\t},\n\t},\n\n\ttrack: {\n\t\tvoid: true,\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\ttt: {\n\t\tdeprecated: {\n\t\t\tdocumentation:\n\t\t\t\t\"Use a more semantically correct element such as `<code>`, `<var>` or `<pre>`.\",\n\t\t\tsource: \"html4\",\n\t\t},\n\t},\n\n\tu: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tul: {\n\t\tflow: true,\n\t\tpermittedContent: [\"@script\", \"li\"],\n\t\tattributes: {\n\t\t\tcompact: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\ttype: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"list\",\n\t\t},\n\t},\n\n\tvar: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tvideo: {\n\t\tflow: true,\n\t\tfocusable(node) {\n\t\t\treturn node.hasAttribute(\"controls\");\n\t\t},\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\tinteractive(node) {\n\t\t\treturn node.hasAttribute(\"controls\");\n\t\t},\n\t\ttransparent: [\"@flow\"],\n\t\tattributes: {\n\t\t\tcrossorigin: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"anonymous\", \"use-credentials\"],\n\t\t\t},\n\t\t\theight: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\titemprop: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"src\"),\n\t\t\t},\n\t\t\tpreload: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"none\", \"metadata\", \"auto\"],\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"@flow\", \"track\", \"source\"],\n\t\tpermittedDescendants: [{ exclude: [\"audio\", \"video\"] }],\n\t\tpermittedOrder: [\"source\", \"track\", \"@flow\"],\n\t},\n\n\twbr: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tvoid: true,\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\txmp: {\n\t\tdeprecated: {\n\t\t\tdocumentation: \"Use `<pre>` or `<code>` and escape content using HTML entities instead.\",\n\t\t\tsource: \"html32\",\n\t\t},\n\t},\n});\n","import { type MetaDataTable } from \"../meta\";\nimport html5 from \"./html5\";\n\ninterface BundledElements {\n\thtml5: MetaDataTable;\n\t[key: string]: MetaDataTable;\n}\n\nexport const bundledElements: BundledElements = {\n\thtml5,\n};\n"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"elements.js","sources":["../../src/elements/html5.ts","../../src/elements/index.ts"],"sourcesContent":["import { defineMetadata } from \"../meta/define-metadata\";\nimport { metadataHelper } from \"../meta/helper\";\nimport { type HtmlElementLike } from \"../meta/html-element-like\";\n\nconst {\n\tallowedIfAttributeIsPresent,\n\tallowedIfAttributeIsAbsent,\n\tallowedIfAttributeHasValue,\n\tallowedIfParentIsPresent,\n} = metadataHelper;\n\nconst validId = \"/\\\\S+/\";\n\nconst ReferrerPolicy = [\n\t\"\",\n\t\"no-referrer\",\n\t\"no-referrer-when-downgrade\",\n\t\"same-origin\",\n\t\"origin\",\n\t\"strict-origin\",\n\t\"origin-when-cross-origin\",\n\t\"strict-origin-when-cross-origin\",\n\t\"unsafe-url\",\n];\n\nfunction isInsideLandmark(node: HtmlElementLike): boolean {\n\t/* § 4: https://www.w3.org/TR/html-aria/#docconformance */\n\t/* § 3.4.42: https://w3c.github.io/html-aam/#el-footer */\n\t/* § 3.4.48: https://w3c.github.io/html-aam/#el-header */\n\tconst selectors = [\n\t\t\"article\",\n\t\t\"aside\",\n\t\t\"main\",\n\t\t\"nav\",\n\t\t\"section\",\n\t\t'[role=\"article\"]',\n\t\t'[role=\"complementary\"]',\n\t\t'[role=\"main\"]',\n\t\t'[role=\"navigation\"]',\n\t\t'[role=\"region\"]',\n\t];\n\treturn Boolean(node.closest(selectors.join(\",\")));\n}\n\nfunction linkBodyOk(node: HtmlElementLike): boolean {\n\t/* with itemprop the element is always body ok */\n\tif (node.hasAttribute(\"itemprop\")) {\n\t\treturn true;\n\t}\n\n\t/* if the rel attribute is missing it cannot be body ok */\n\tconst rel = node.getAttribute(\"rel\");\n\tif (!rel) {\n\t\treturn false;\n\t}\n\n\t/* for dynamic rel attributes assume it is body ok */\n\t/* istanbul ignore next: tests run without dynamic elements */\n\tif (typeof rel !== \"string\") {\n\t\treturn false;\n\t}\n\n\t/* only when rel matches one of these keywords it is body ok */\n\tconst bodyOk = [\n\t\t\"dns-prefetch\",\n\t\t\"modulepreload\",\n\t\t\"pingback\",\n\t\t\"preconnect\",\n\t\t\"prefetch\",\n\t\t\"preload\",\n\t\t\"stylesheet\",\n\t];\n\tconst tokens = rel.toLowerCase().split(/\\s+/);\n\treturn tokens.some((keyword) => bodyOk.includes(keyword));\n}\n\nexport default defineMetadata({\n\t\"*\": {\n\t\tattributes: {\n\t\t\tcontenteditable: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"true\", \"false\"],\n\t\t\t},\n\t\t\tcontextmenu: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdir: {\n\t\t\t\tenum: [\"ltr\", \"rtl\", \"auto\"],\n\t\t\t},\n\t\t\tdraggable: {\n\t\t\t\tenum: [\"true\", \"false\"],\n\t\t\t},\n\t\t\thidden: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tid: {\n\t\t\t\tenum: [validId],\n\t\t\t},\n\t\t\tinert: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tspellcheck: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"true\", \"false\"],\n\t\t\t},\n\t\t\ttabindex: {\n\t\t\t\tenum: [\"/-?\\\\d+/\"],\n\t\t\t},\n\t\t},\n\t},\n\n\ta: {\n\t\tflow: true,\n\t\tfocusable(node) {\n\t\t\treturn node.hasAttribute(\"href\");\n\t\t},\n\t\tphrasing: true,\n\t\tinteractive: true,\n\t\ttransparent: true,\n\t\tattributes: {\n\t\t\tcharset: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcoords: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdownload: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\thref: {\n\t\t\t\tenum: [\"/.*/\"],\n\t\t\t},\n\t\t\threflang: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t},\n\t\t\titemprop: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t},\n\t\t\tmethods: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tname: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tping: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t},\n\t\t\treferrerpolicy: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t\tenum: ReferrerPolicy,\n\t\t\t},\n\t\t\trel: {\n\t\t\t\tallowed(node, attr) {\n\t\t\t\t\tif (!node.hasAttribute(\"href\")) {\n\t\t\t\t\t\treturn `requires \"href\" attribute to be present`;\n\t\t\t\t\t}\n\t\t\t\t\tif (!attr || attr === \"\" || typeof attr !== \"string\") {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t\tconst disallowed = [\n\t\t\t\t\t\t/* whatwg */\n\t\t\t\t\t\t\"canonical\",\n\t\t\t\t\t\t\"dns-prefetch\",\n\t\t\t\t\t\t\"expect\",\n\t\t\t\t\t\t\"icon\",\n\t\t\t\t\t\t\"manifest\",\n\t\t\t\t\t\t\"modulepreload\",\n\t\t\t\t\t\t\"pingback\",\n\t\t\t\t\t\t\"preconnect\",\n\t\t\t\t\t\t\"prefetch\",\n\t\t\t\t\t\t\"preload\",\n\t\t\t\t\t\t\"stylesheet\",\n\n\t\t\t\t\t\t/* microformats.org */\n\t\t\t\t\t\t\"apple-touch-icon\",\n\t\t\t\t\t\t\"apple-touch-icon-precomposed\",\n\t\t\t\t\t\t\"apple-touch-startup-image\",\n\t\t\t\t\t\t\"authorization_endpoint\",\n\t\t\t\t\t\t\"component\",\n\t\t\t\t\t\t\"chrome-webstore-item\",\n\t\t\t\t\t\t\"dns-prefetch\",\n\t\t\t\t\t\t\"edit\",\n\t\t\t\t\t\t\"gbfs\",\n\t\t\t\t\t\t\"gtfs-static\",\n\t\t\t\t\t\t\"gtfs-realtime\",\n\t\t\t\t\t\t\"import\",\n\t\t\t\t\t\t\"mask-icon\",\n\t\t\t\t\t\t\"meta\",\n\t\t\t\t\t\t\"micropub\",\n\t\t\t\t\t\t\"openid.delegate\",\n\t\t\t\t\t\t\"openid.server\",\n\t\t\t\t\t\t\"openid2.local_id\",\n\t\t\t\t\t\t\"openid2.provider\",\n\t\t\t\t\t\t\"p3pv1\",\n\t\t\t\t\t\t\"pgpkey\",\n\t\t\t\t\t\t\"schema.dcterms\",\n\t\t\t\t\t\t\"service\",\n\t\t\t\t\t\t\"shortlink\",\n\t\t\t\t\t\t\"sitemap\",\n\t\t\t\t\t\t\"subresource\",\n\t\t\t\t\t\t\"sword\",\n\t\t\t\t\t\t\"timesheet\",\n\t\t\t\t\t\t\"token_endpoint\",\n\t\t\t\t\t\t\"wlwmanifest\",\n\t\t\t\t\t\t\"stylesheet/less\",\n\t\t\t\t\t\t\"token_endpoint\",\n\t\t\t\t\t\t\"yandex-tableau-widget\",\n\t\t\t\t\t];\n\t\t\t\t\tconst tokens = attr.toLowerCase().split(/\\s+/);\n\t\t\t\t\tfor (const keyword of tokens) {\n\t\t\t\t\t\tif (disallowed.includes(keyword)) {\n\t\t\t\t\t\t\treturn `<a> does not allow rel=\"${keyword}\"`;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (keyword.startsWith(\"dcterms.\")) {\n\t\t\t\t\t\t\treturn `<a> does not allow rel=\"${keyword}\"`;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn null;\n\t\t\t\t},\n\t\t\t\tlist: true,\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\tshape: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\ttarget: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t\tenum: [\"/[^_].*/\", \"_blank\", \"_self\", \"_parent\", \"_top\"],\n\t\t\t},\n\t\t\ttype: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t},\n\t\t\turn: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\tpermittedDescendants: [{ exclude: \"@interactive\" }],\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\treturn node.hasAttribute(\"href\") ? \"link\" : \"generic\";\n\t\t\t},\n\t\t\tnaming(node) {\n\t\t\t\treturn node.hasAttribute(\"href\") ? \"allowed\" : \"prohibited\";\n\t\t\t},\n\t\t},\n\t},\n\n\tabbr: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tacronym: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use <abbr> instead\",\n\t\t\tdocumentation: \"`<abbr>` can be used as a replacement.\",\n\t\t\tsource: \"html5\",\n\t\t},\n\t},\n\n\taddress: {\n\t\tflow: true,\n\t\taria: {\n\t\t\timplicitRole: \"group\",\n\t\t},\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: [\"address\", \"header\", \"footer\", \"@heading\", \"@sectioning\"] }],\n\t},\n\n\tapplet: {\n\t\tdeprecated: {\n\t\t\tsource: \"html5\",\n\t\t},\n\t\tattributes: {\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t},\n\n\tarea: {\n\t\tflow(node) {\n\t\t\treturn Boolean(node.closest(\"map\"));\n\t\t},\n\t\tfocusable(node) {\n\t\t\treturn node.hasAttribute(\"href\");\n\t\t},\n\t\tphrasing(node) {\n\t\t\treturn Boolean(node.closest(\"map\"));\n\t\t},\n\t\tvoid: true,\n\t\tattributes: {\n\t\t\talt: {},\n\t\t\tcoords: {\n\t\t\t\tallowed(node) {\n\t\t\t\t\tconst attr = node.getAttribute(\"shape\");\n\t\t\t\t\tif (attr === \"default\") {\n\t\t\t\t\t\treturn `cannot be used when \"shape\" attribute is \"default\"`;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t\tdownload: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t},\n\t\t\tnohref: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\titemprop: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t},\n\t\t\tping: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t},\n\t\t\treferrerpolicy: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t\tenum: ReferrerPolicy,\n\t\t\t},\n\t\t\trel: {\n\t\t\t\tallowed(node, attr) {\n\t\t\t\t\tif (!node.hasAttribute(\"href\")) {\n\t\t\t\t\t\treturn `requires \"href\" attribute to be present`;\n\t\t\t\t\t}\n\t\t\t\t\tif (!attr || attr === \"\" || typeof attr !== \"string\") {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t\tconst disallowed = [\n\t\t\t\t\t\t/* whatwg */\n\t\t\t\t\t\t\"canonical\",\n\t\t\t\t\t\t\"dns-prefetch\",\n\t\t\t\t\t\t\"expect\",\n\t\t\t\t\t\t\"icon\",\n\t\t\t\t\t\t\"manifest\",\n\t\t\t\t\t\t\"modulepreload\",\n\t\t\t\t\t\t\"pingback\",\n\t\t\t\t\t\t\"preconnect\",\n\t\t\t\t\t\t\"prefetch\",\n\t\t\t\t\t\t\"preload\",\n\t\t\t\t\t\t\"stylesheet\",\n\n\t\t\t\t\t\t/* microformats.org */\n\t\t\t\t\t\t\"apple-touch-icon\",\n\t\t\t\t\t\t\"apple-touch-icon-precomposed\",\n\t\t\t\t\t\t\"apple-touch-startup-image\",\n\t\t\t\t\t\t\"authorization_endpoint\",\n\t\t\t\t\t\t\"component\",\n\t\t\t\t\t\t\"chrome-webstore-item\",\n\t\t\t\t\t\t\"dns-prefetch\",\n\t\t\t\t\t\t\"edit\",\n\t\t\t\t\t\t\"gbfs\",\n\t\t\t\t\t\t\"gtfs-static\",\n\t\t\t\t\t\t\"gtfs-realtime\",\n\t\t\t\t\t\t\"import\",\n\t\t\t\t\t\t\"mask-icon\",\n\t\t\t\t\t\t\"meta\",\n\t\t\t\t\t\t\"micropub\",\n\t\t\t\t\t\t\"openid.delegate\",\n\t\t\t\t\t\t\"openid.server\",\n\t\t\t\t\t\t\"openid2.local_id\",\n\t\t\t\t\t\t\"openid2.provider\",\n\t\t\t\t\t\t\"p3pv1\",\n\t\t\t\t\t\t\"pgpkey\",\n\t\t\t\t\t\t\"schema.dcterms\",\n\t\t\t\t\t\t\"service\",\n\t\t\t\t\t\t\"shortlink\",\n\t\t\t\t\t\t\"sitemap\",\n\t\t\t\t\t\t\"subresource\",\n\t\t\t\t\t\t\"sword\",\n\t\t\t\t\t\t\"timesheet\",\n\t\t\t\t\t\t\"token_endpoint\",\n\t\t\t\t\t\t\"wlwmanifest\",\n\t\t\t\t\t\t\"stylesheet/less\",\n\t\t\t\t\t\t\"token_endpoint\",\n\t\t\t\t\t\t\"yandex-tableau-widget\",\n\t\t\t\t\t];\n\t\t\t\t\tconst tokens = attr.toLowerCase().split(/\\s+/);\n\t\t\t\t\tfor (const keyword of tokens) {\n\t\t\t\t\t\tif (disallowed.includes(keyword)) {\n\t\t\t\t\t\t\treturn `<area> does not allow rel=\"${keyword}\"`;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (keyword.startsWith(\"dcterms.\")) {\n\t\t\t\t\t\t\treturn `<area> does not allow rel=\"${keyword}\"`;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn null;\n\t\t\t\t},\n\t\t\t},\n\t\t\tshape: {\n\t\t\t\tallowed(node, attr) {\n\t\t\t\t\tconst shape = attr ?? \"rect\";\n\t\t\t\t\tswitch (shape) {\n\t\t\t\t\t\tcase \"circ\":\n\t\t\t\t\t\tcase \"circle\":\n\t\t\t\t\t\tcase \"poly\":\n\t\t\t\t\t\tcase \"polygon\":\n\t\t\t\t\t\tcase \"rect\":\n\t\t\t\t\t\tcase \"rectangle\":\n\t\t\t\t\t\t\treturn allowedIfAttributeIsPresent(\"coords\")(node, attr);\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tenum: [\"rect\", \"circle\", \"poly\", \"default\"],\n\t\t\t},\n\t\t\ttarget: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"href\"),\n\t\t\t\tenum: [\"/[^_].*/\", \"_blank\", \"_self\", \"_parent\", \"_top\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\treturn node.hasAttribute(\"href\") ? \"link\" : \"generic\";\n\t\t\t},\n\t\t\tnaming(node) {\n\t\t\t\treturn node.hasAttribute(\"href\") ? \"allowed\" : \"prohibited\";\n\t\t\t},\n\t\t},\n\t\trequiredAncestors: [\"map\", \"template\"],\n\t},\n\n\tarticle: {\n\t\tflow: true,\n\t\tsectioning: true,\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: [\"main\"] }],\n\t\taria: {\n\t\t\timplicitRole: \"article\",\n\t\t},\n\t},\n\n\taside: {\n\t\tflow: true,\n\t\tsectioning: true,\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: [\"main\"] }],\n\t\taria: {\n\t\t\timplicitRole: \"complementary\",\n\t\t},\n\t},\n\n\taudio: {\n\t\tflow: true,\n\t\tfocusable(node) {\n\t\t\treturn node.hasAttribute(\"controls\");\n\t\t},\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\tinteractive(node) {\n\t\t\treturn node.hasAttribute(\"controls\");\n\t\t},\n\t\ttransparent: [\"@flow\"],\n\t\tattributes: {\n\t\t\tcrossorigin: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"anonymous\", \"use-credentials\"],\n\t\t\t},\n\t\t\titemprop: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"src\"),\n\t\t\t},\n\t\t\tpreload: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"none\", \"metadata\", \"auto\"],\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"@flow\", \"track\", \"source\"],\n\t\tpermittedDescendants: [{ exclude: [\"audio\", \"video\"] }],\n\t\tpermittedOrder: [\"source\", \"track\", \"@flow\"],\n\t},\n\n\tb: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tbase: {\n\t\tmetadata: true,\n\t\tvoid: true,\n\t\tpermittedParent: [\"head\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tbasefont: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use CSS instead\",\n\t\t\tdocumentation: \"Use CSS `font-size` property instead.\",\n\t\t\tsource: \"html4\",\n\t\t},\n\t},\n\n\tbdi: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tbdo: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tbgsound: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use <audio> instead\",\n\t\t\tdocumentation:\n\t\t\t\t\"Use the `<audio>` element instead but consider accessibility concerns with autoplaying sounds.\",\n\t\t\tsource: \"non-standard\",\n\t\t},\n\t},\n\n\tbig: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use CSS instead\",\n\t\t\tdocumentation: \"Use CSS `font-size` property instead.\",\n\t\t\tsource: \"html5\",\n\t\t},\n\t},\n\n\tblink: {\n\t\tdeprecated: {\n\t\t\tdocumentation:\n\t\t\t\t\"`<blink>` has no direct replacement and blinking text is frowned upon by accessibility standards.\",\n\t\t\tsource: \"non-standard\",\n\t\t},\n\t},\n\n\tblockquote: {\n\t\tflow: true,\n\t\tsectioning: true,\n\t\taria: {\n\t\t\timplicitRole: \"blockquote\",\n\t\t},\n\t\tpermittedContent: [\"@flow\"],\n\t},\n\n\tbody: {\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedParent: [\"html\"],\n\t\tattributes: {\n\t\t\talink: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbackground: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbgcolor: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tlink: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tmarginbottom: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tmarginheight: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tmarginleft: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tmarginright: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tmargintop: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tmarginwidth: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\ttext: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tvlink: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tbr: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tvoid: true,\n\t\tattributes: {\n\t\t\tclear: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tbutton: {\n\t\tflow: true,\n\t\tfocusable: true,\n\t\tphrasing: true,\n\t\tinteractive: true,\n\t\tformAssociated: {\n\t\t\tdisablable: true,\n\t\t\tlisted: true,\n\t\t},\n\t\tlabelable: true,\n\t\tattributes: {\n\t\t\tautofocus: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdisabled: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tformaction: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\"], { defaultValue: \"submit\" }),\n\t\t\t},\n\t\t\tformenctype: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\"], { defaultValue: \"submit\" }),\n\t\t\t},\n\t\t\tformmethod: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\"], { defaultValue: \"submit\" }),\n\t\t\t\tenum: [\"get\", \"post\", \"dialog\"],\n\t\t\t},\n\t\t\tformnovalidate: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\"], { defaultValue: \"submit\" }),\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tformtarget: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\"], { defaultValue: \"submit\" }),\n\t\t\t\tenum: [\"/[^_].*/\", \"_blank\", \"_self\", \"_parent\", \"_top\"],\n\t\t\t},\n\t\t\ttype: {\n\t\t\t\tenum: [\"submit\", \"reset\", \"button\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"button\",\n\t\t},\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tpermittedDescendants: [{ exclude: [\"@interactive\"] }],\n\t\ttextContent: \"accessible\",\n\t},\n\n\tcanvas: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\ttransparent: true,\n\t},\n\n\tcaption: {\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: [\"table\"] }],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"caption\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tcenter: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use CSS instead\",\n\t\t\tdocumentation: \"Use the CSS `text-align` or `margin: auto` properties instead.\",\n\t\t\tsource: \"html4\",\n\t\t},\n\t},\n\n\tcite: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tcode: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"code\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tcol: {\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tchar: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcharoff: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tspan: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\tvalign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\tvoid: true,\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tcolgroup: {\n\t\timplicitClosed: [\"colgroup\"],\n\t\tattributes: {\n\t\t\tspan: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"col\", \"template\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tdata: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tdatalist: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\taria: {\n\t\t\timplicitRole: \"listbox\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t\tpermittedContent: [\"@phrasing\", \"option\"],\n\t},\n\n\tdd: {\n\t\timplicitClosed: [\"dd\", \"dt\"],\n\t\tpermittedContent: [\"@flow\"],\n\t\trequiredAncestors: [\"dl > dd\", \"dl > div > dd\", \"template > dd\", \"template > div > dd\"],\n\t},\n\n\tdel: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\ttransparent: true,\n\t\taria: {\n\t\t\timplicitRole: \"deletion\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tdetails: {\n\t\tflow: true,\n\t\tsectioning: true,\n\t\tinteractive: true,\n\t\tattributes: {\n\t\t\topen: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"group\",\n\t\t},\n\t\tpermittedContent: [\"summary\", \"@flow\"],\n\t\tpermittedOrder: [\"summary\", \"@flow\"],\n\t\trequiredContent: [\"summary\"],\n\t},\n\n\tdfn: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\taria: {\n\t\t\timplicitRole: \"term\",\n\t\t},\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tpermittedDescendants: [{ exclude: [\"dfn\"] }],\n\t},\n\n\tdialog: {\n\t\tflow: true,\n\t\tpermittedContent: [\"@flow\"],\n\t\tattributes: {\n\t\t\topen: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"dialog\",\n\t\t},\n\t},\n\n\tdir: {\n\t\tdeprecated: {\n\t\t\tdocumentation:\n\t\t\t\t\"The non-standard `<dir>` element has no direct replacement but MDN recommends replacing with `<ul>` and CSS.\",\n\t\t\tsource: \"html4\",\n\t\t},\n\t},\n\n\tdiv: {\n\t\tflow: true,\n\t\tpermittedContent: [\"@flow\", \"dt\", \"dd\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tdl: {\n\t\tflow: true,\n\t\tpermittedContent: [\"@script\", \"dt\", \"dd\", \"div\"],\n\t\tattributes: {\n\t\t\tcompact: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t},\n\n\tdt: {\n\t\timplicitClosed: [\"dd\", \"dt\"],\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: [\"header\", \"footer\", \"@sectioning\", \"@heading\"] }],\n\t\trequiredAncestors: [\"dl > dt\", \"dl > div > dt\", \"template > dt\", \"template > div > dt\"],\n\t},\n\n\tem: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"emphasis\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tembed: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\tinteractive: true,\n\t\tvoid: true,\n\t\tattributes: {\n\t\t\theight: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\tsrc: {\n\t\t\t\trequired: true,\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\ttitle: {\n\t\t\t\trequired: true,\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t},\n\t},\n\n\tfieldset: {\n\t\tflow: true,\n\t\tformAssociated: {\n\t\t\tdisablable: true,\n\t\t\tlisted: true,\n\t\t},\n\t\tattributes: {\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdisabled: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"group\",\n\t\t},\n\t\tpermittedContent: [\"@flow\", \"legend?\"],\n\t\tpermittedOrder: [\"legend\", \"@flow\"],\n\t},\n\n\tfigcaption: {\n\t\tpermittedContent: [\"@flow\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tfigure: {\n\t\tflow: true,\n\t\taria: {\n\t\t\timplicitRole: \"figure\",\n\t\t},\n\t\tpermittedContent: [\"@flow\", \"figcaption?\"],\n\t\tpermittedOrder: [\"figcaption\", \"@flow\", \"figcaption\"],\n\t},\n\n\tfont: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use CSS instead\",\n\t\t\tdocumentation: \"Use CSS font properties instead.\",\n\t\t\tsource: \"html4\",\n\t\t},\n\t},\n\n\tfooter: {\n\t\tflow: true,\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\tif (isInsideLandmark(node)) {\n\t\t\t\t\treturn \"generic\";\n\t\t\t\t} else {\n\t\t\t\t\treturn \"contentinfo\";\n\t\t\t\t}\n\t\t\t},\n\t\t\tnaming(node) {\n\t\t\t\tif (isInsideLandmark(node)) {\n\t\t\t\t\treturn \"prohibited\";\n\t\t\t\t} else {\n\t\t\t\t\treturn \"allowed\";\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: [\"header\", \"footer\", \"main\"] }],\n\t},\n\n\tform: {\n\t\tflow: true,\n\t\tform: true,\n\t\tattributes: {\n\t\t\taction: {\n\t\t\t\tenum: [/^\\s*\\S+\\s*$/],\n\t\t\t},\n\t\t\taccept: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tautocomplete: {\n\t\t\t\tenum: [\"on\", \"off\"],\n\t\t\t},\n\t\t\tmethod: {\n\t\t\t\tenum: [\"get\", \"post\", \"dialog\"],\n\t\t\t},\n\t\t\tnovalidate: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\trel: {\n\t\t\t\tallowed(_, attr) {\n\t\t\t\t\tif (!attr || attr === \"\" || typeof attr !== \"string\") {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t\tconst disallowed = [\n\t\t\t\t\t\t/* whatwg */\n\t\t\t\t\t\t\"alternate\",\n\t\t\t\t\t\t\"canonical\",\n\t\t\t\t\t\t\"author\",\n\t\t\t\t\t\t\"bookmark\",\n\t\t\t\t\t\t\"dns-prefetch\",\n\t\t\t\t\t\t\"expect\",\n\t\t\t\t\t\t\"icon\",\n\t\t\t\t\t\t\"manifest\",\n\t\t\t\t\t\t\"modulepreload\",\n\t\t\t\t\t\t\"pingback\",\n\t\t\t\t\t\t\"preconnect\",\n\t\t\t\t\t\t\"prefetch\",\n\t\t\t\t\t\t\"preload\",\n\t\t\t\t\t\t\"privacy-policy\",\n\t\t\t\t\t\t\"stylesheet\",\n\t\t\t\t\t\t\"tag\",\n\t\t\t\t\t\t\"terms-of-service\",\n\t\t\t\t\t];\n\t\t\t\t\tconst tokens = attr.toLowerCase().split(/\\s+/);\n\t\t\t\t\tfor (const keyword of tokens) {\n\t\t\t\t\t\tif (disallowed.includes(keyword)) {\n\t\t\t\t\t\t\treturn `<form> does not allow rel=\"${keyword}\"`;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn null;\n\t\t\t\t},\n\t\t\t\tlist: true,\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\ttarget: {\n\t\t\t\tenum: [\"/[^_].*/\", \"_blank\", \"_self\", \"_parent\", \"_top\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"form\",\n\t\t},\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: [\"@form\"] }],\n\t},\n\n\tframe: {\n\t\tdeprecated: {\n\t\t\tdocumentation:\n\t\t\t\t\"The `<frame>` element can be replaced with the `<iframe>` element but a better solution is to remove usage of frames entirely.\",\n\t\t\tsource: \"html5\",\n\t\t},\n\t\tattributes: {\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\ttitle: {\n\t\t\t\trequired: true,\n\t\t\t},\n\t\t},\n\t},\n\n\tframeset: {\n\t\tdeprecated: {\n\t\t\tdocumentation:\n\t\t\t\t\"The `<frameset>` element can be replaced with the `<iframe>` element but a better solution is to remove usage of frames entirely.\",\n\t\t\tsource: \"html5\",\n\t\t},\n\t},\n\n\th1: {\n\t\tflow: true,\n\t\theading: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"heading\",\n\t\t},\n\t},\n\n\th2: {\n\t\tflow: true,\n\t\theading: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"heading\",\n\t\t},\n\t},\n\n\th3: {\n\t\tflow: true,\n\t\theading: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"heading\",\n\t\t},\n\t},\n\n\th4: {\n\t\tflow: true,\n\t\theading: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"heading\",\n\t\t},\n\t},\n\n\th5: {\n\t\tflow: true,\n\t\theading: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"heading\",\n\t\t},\n\t},\n\n\th6: {\n\t\tflow: true,\n\t\theading: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"heading\",\n\t\t},\n\t},\n\n\thead: {\n\t\tpermittedContent: [\"base?\", \"title?\", \"@meta\"],\n\t\tpermittedParent: [\"html\"],\n\t\trequiredContent: [\"title\"],\n\t\tattributes: {\n\t\t\tprofile: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\theader: {\n\t\tflow: true,\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\tif (isInsideLandmark(node)) {\n\t\t\t\t\treturn \"generic\";\n\t\t\t\t} else {\n\t\t\t\t\treturn \"banner\";\n\t\t\t\t}\n\t\t\t},\n\t\t\tnaming(node) {\n\t\t\t\tif (isInsideLandmark(node)) {\n\t\t\t\t\treturn \"prohibited\";\n\t\t\t\t} else {\n\t\t\t\t\treturn \"allowed\";\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: [\"header\", \"footer\", \"main\"] }],\n\t},\n\n\thgroup: {\n\t\tflow: true,\n\t\theading: true,\n\t\tpermittedContent: [\"p\", \"@heading?\"],\n\t\tpermittedDescendants: [{ exclude: [\"hgroup\"] }],\n\t\trequiredContent: [\"@heading\"],\n\t\taria: {\n\t\t\timplicitRole: \"group\",\n\t\t},\n\t},\n\n\thr: {\n\t\tflow: true,\n\t\tvoid: true,\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcolor: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tnoshade: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"separator\",\n\t\t},\n\t},\n\n\thtml: {\n\t\tpermittedContent: [\"head?\", \"body?\"],\n\t\tpermittedOrder: [\"head\", \"body\"],\n\t\trequiredContent: [\"head\", \"body\"],\n\t\tattributes: {\n\t\t\tlang: {\n\t\t\t\trequired: true,\n\t\t\t},\n\t\t\tversion: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"document\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\ti: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tiframe: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\tinteractive: true,\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tallowtransparency: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tframeborder: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\theight: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\thspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tmarginheight: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tmarginwidth: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\treferrerpolicy: {\n\t\t\t\tenum: ReferrerPolicy,\n\t\t\t},\n\t\t\tscrolling: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tsrc: {\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\ttitle: {\n\t\t\t\trequired: true,\n\t\t\t},\n\t\t\tvspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [],\n\t},\n\n\timg: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\tinteractive(node) {\n\t\t\treturn node.hasAttribute(\"usemap\");\n\t\t},\n\t\tvoid: true,\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcrossorigin: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"anonymous\", \"use-credentials\"],\n\t\t\t},\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdecoding: {\n\t\t\t\tenum: [\"sync\", \"async\", \"auto\"],\n\t\t\t},\n\t\t\theight: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\thspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tismap: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tlowsrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tname: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\treferrerpolicy: {\n\t\t\t\tenum: ReferrerPolicy,\n\t\t\t},\n\t\t\tsrc: {\n\t\t\t\trequired: true,\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\tsrcset: {\n\t\t\t\tenum: [\"/[^]+/\"],\n\t\t\t},\n\t\t\tvspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\tconst alt = node.getAttribute(\"alt\");\n\t\t\t\tconst ariaLabel = node.getAttribute(\"aria-label\");\n\t\t\t\tconst ariaLabelledBy = node.getAttribute(\"aria-labelledby\");\n\t\t\t\tconst title = node.getAttribute(\"title\");\n\t\t\t\tif (alt === \"\" && !ariaLabel && !ariaLabelledBy && !title) {\n\t\t\t\t\treturn \"none\";\n\t\t\t\t} else {\n\t\t\t\t\treturn \"img\";\n\t\t\t\t}\n\t\t\t},\n\t\t\tnaming(node) {\n\t\t\t\tconst alt = node.getAttribute(\"alt\");\n\t\t\t\tconst ariaLabel = node.getAttribute(\"aria-label\");\n\t\t\t\tconst ariaLabelledBy = node.getAttribute(\"aria-labelledby\");\n\t\t\t\tconst title = node.getAttribute(\"title\");\n\t\t\t\tif (!alt && !ariaLabel && !ariaLabelledBy && !title) {\n\t\t\t\t\treturn \"prohibited\";\n\t\t\t\t} else {\n\t\t\t\t\treturn \"allowed\";\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t},\n\n\tinput: {\n\t\tflow: true,\n\t\tfocusable(node) {\n\t\t\treturn node.getAttribute(\"type\") !== \"hidden\";\n\t\t},\n\t\tphrasing: true,\n\t\tinteractive(node) {\n\t\t\treturn node.getAttribute(\"type\") !== \"hidden\";\n\t\t},\n\t\tvoid: true,\n\t\tformAssociated: {\n\t\t\tdisablable: true,\n\t\t\tlisted: true,\n\t\t},\n\t\tlabelable(node) {\n\t\t\treturn node.getAttribute(\"type\") !== \"hidden\";\n\t\t},\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tautofocus: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tcapture: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"environment\", \"user\"],\n\t\t\t},\n\t\t\tchecked: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdisabled: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tformaction: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\", \"image\"], {\n\t\t\t\t\tdefaultValue: \"submit\",\n\t\t\t\t}),\n\t\t\t},\n\t\t\tformenctype: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\", \"image\"], {\n\t\t\t\t\tdefaultValue: \"submit\",\n\t\t\t\t}),\n\t\t\t},\n\t\t\tformmethod: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\", \"image\"], {\n\t\t\t\t\tdefaultValue: \"submit\",\n\t\t\t\t}),\n\t\t\t\tenum: [\"get\", \"post\", \"dialog\"],\n\t\t\t},\n\t\t\tformnovalidate: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\", \"image\"], {\n\t\t\t\t\tdefaultValue: \"submit\",\n\t\t\t\t}),\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tformtarget: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"type\", [\"submit\", \"image\"], {\n\t\t\t\t\tdefaultValue: \"submit\",\n\t\t\t\t}),\n\t\t\t\tenum: [\"/[^_].*/\", \"_blank\", \"_self\", \"_parent\", \"_top\"],\n\t\t\t},\n\t\t\thspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tinputmode: {\n\t\t\t\tenum: [\"none\", \"text\", \"decimal\", \"numeric\", \"tel\", \"search\", \"email\", \"url\"],\n\t\t\t},\n\t\t\tismap: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tmultiple: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\treadonly: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\trequired: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\ttype: {\n\t\t\t\tenum: [\n\t\t\t\t\t\"button\",\n\t\t\t\t\t\"checkbox\",\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"date\",\n\t\t\t\t\t\"datetime-local\",\n\t\t\t\t\t\"email\",\n\t\t\t\t\t\"file\",\n\t\t\t\t\t\"hidden\",\n\t\t\t\t\t\"image\",\n\t\t\t\t\t\"month\",\n\t\t\t\t\t\"number\",\n\t\t\t\t\t\"password\",\n\t\t\t\t\t\"radio\",\n\t\t\t\t\t\"range\",\n\t\t\t\t\t\"reset\",\n\t\t\t\t\t\"search\",\n\t\t\t\t\t\"submit\",\n\t\t\t\t\t\"tel\",\n\t\t\t\t\t\"text\",\n\t\t\t\t\t\"time\",\n\t\t\t\t\t\"url\",\n\t\t\t\t\t\"week\",\n\t\t\t\t],\n\t\t\t},\n\t\t\tusemap: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tvspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\t/* eslint-disable-next-line complexity -- the standard is complicated */\n\t\t\timplicitRole(node) {\n\t\t\t\tconst list = node.hasAttribute(\"list\");\n\t\t\t\tif (list) {\n\t\t\t\t\treturn \"combobox\";\n\t\t\t\t}\n\t\t\t\tconst type = node.getAttribute(\"type\");\n\t\t\t\tswitch (type) {\n\t\t\t\t\tcase \"button\":\n\t\t\t\t\t\treturn \"button\";\n\t\t\t\t\tcase \"checkbox\":\n\t\t\t\t\t\treturn \"checkbox\";\n\t\t\t\t\tcase \"color\":\n\t\t\t\t\t\treturn null;\n\t\t\t\t\tcase \"date\":\n\t\t\t\t\t\treturn null;\n\t\t\t\t\tcase \"datetime-local\":\n\t\t\t\t\t\treturn null;\n\t\t\t\t\tcase \"email\":\n\t\t\t\t\t\treturn \"textbox\";\n\t\t\t\t\tcase \"file\":\n\t\t\t\t\t\treturn null;\n\t\t\t\t\tcase \"hidden\":\n\t\t\t\t\t\treturn null;\n\t\t\t\t\tcase \"image\":\n\t\t\t\t\t\treturn \"button\";\n\t\t\t\t\tcase \"month\":\n\t\t\t\t\t\treturn null;\n\t\t\t\t\tcase \"number\":\n\t\t\t\t\t\treturn \"spinbutton\";\n\t\t\t\t\tcase \"password\":\n\t\t\t\t\t\treturn null;\n\t\t\t\t\tcase \"radio\":\n\t\t\t\t\t\treturn \"radio\";\n\t\t\t\t\tcase \"range\":\n\t\t\t\t\t\treturn \"slider\";\n\t\t\t\t\tcase \"reset\":\n\t\t\t\t\t\treturn \"button\";\n\t\t\t\t\tcase \"search\":\n\t\t\t\t\t\treturn \"searchbox\";\n\t\t\t\t\tcase \"submit\":\n\t\t\t\t\t\treturn \"button\";\n\t\t\t\t\tcase \"tel\":\n\t\t\t\t\t\treturn \"textbox\";\n\t\t\t\t\tcase \"text\":\n\t\t\t\t\t\treturn \"textbox\";\n\t\t\t\t\tcase \"time\":\n\t\t\t\t\t\treturn null;\n\t\t\t\t\tcase \"url\":\n\t\t\t\t\t\treturn \"textbox\";\n\t\t\t\t\tcase \"week\":\n\t\t\t\t\t\treturn null;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn \"textbox\";\n\t\t\t\t}\n\t\t\t},\n\t\t\tnaming(node) {\n\t\t\t\treturn node.getAttribute(\"type\") !== \"hidden\" ? \"allowed\" : \"prohibited\";\n\t\t\t},\n\t\t},\n\t},\n\n\tins: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\ttransparent: true,\n\t\taria: {\n\t\t\timplicitRole: \"insertion\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tisindex: {\n\t\tdeprecated: {\n\t\t\tsource: \"html4\",\n\t\t},\n\t},\n\n\tkbd: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tkeygen: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tinteractive: true,\n\t\tvoid: true,\n\t\tlabelable: true,\n\t\tdeprecated: true,\n\t},\n\n\tlabel: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tinteractive: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tpermittedDescendants: [{ exclude: [\"label\"] }],\n\t\tattributes: {\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tfor: {\n\t\t\t\tenum: [validId],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tlegend: {\n\t\tpermittedContent: [\"@phrasing\", \"@heading\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tli: {\n\t\timplicitClosed: [\"li\"],\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedParent: [\"ul\", \"ol\", \"menu\", \"template\"],\n\t\tattributes: {\n\t\t\ttype: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\treturn node.closest(\"ul, ol, menu\") ? \"listitem\" : \"generic\";\n\t\t\t},\n\t\t},\n\t},\n\n\tlink: {\n\t\tmetadata: true,\n\t\tflow(node) {\n\t\t\treturn linkBodyOk(node);\n\t\t},\n\t\tphrasing(node) {\n\t\t\treturn linkBodyOk(node);\n\t\t},\n\t\tvoid: true,\n\t\tattributes: {\n\t\t\tas: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"rel\", [\"prefetch\", \"preload\", \"modulepreload\"]),\n\t\t\t\tenum: [\n\t\t\t\t\t\"audio\",\n\t\t\t\t\t\"audioworklet\",\n\t\t\t\t\t\"document\",\n\t\t\t\t\t\"embed\",\n\t\t\t\t\t\"fetch\",\n\t\t\t\t\t\"font\",\n\t\t\t\t\t\"frame\",\n\t\t\t\t\t\"iframe\",\n\t\t\t\t\t\"image\",\n\t\t\t\t\t\"manifest\",\n\t\t\t\t\t\"object\",\n\t\t\t\t\t\"paintworklet\",\n\t\t\t\t\t\"report\",\n\t\t\t\t\t\"script\",\n\t\t\t\t\t\"serviceworker\",\n\t\t\t\t\t\"sharedworker\",\n\t\t\t\t\t\"style\",\n\t\t\t\t\t\"track\",\n\t\t\t\t\t\"video\",\n\t\t\t\t\t\"webidentity\",\n\t\t\t\t\t\"worker\",\n\t\t\t\t\t\"xslt\",\n\t\t\t\t],\n\t\t\t},\n\t\t\tblocking: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"rel\", [\"stylesheet\", \"preload\", \"modulepreload\"]),\n\t\t\t\tlist: true,\n\t\t\t\tenum: [\"render\"],\n\t\t\t},\n\t\t\tcharset: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcrossorigin: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"anonymous\", \"use-credentials\"],\n\t\t\t},\n\t\t\tdisabled: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"rel\", [\"stylesheet\"]),\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\thref: {\n\t\t\t\trequired: true,\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\tintegrity: {\n\t\t\t\tallowed: allowedIfAttributeHasValue(\"rel\", [\"stylesheet\", \"preload\", \"modulepreload\"]),\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\tmethods: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\treferrerpolicy: {\n\t\t\t\tenum: ReferrerPolicy,\n\t\t\t},\n\t\t\trel: {\n\t\t\t\tallowed(_, attr) {\n\t\t\t\t\tif (!attr || attr === \"\" || typeof attr !== \"string\") {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t\tconst disallowed = [\n\t\t\t\t\t\t/* whatwg */\n\t\t\t\t\t\t\"bookmark\",\n\t\t\t\t\t\t\"external\",\n\t\t\t\t\t\t\"nofollow\",\n\t\t\t\t\t\t\"noopener\",\n\t\t\t\t\t\t\"noreferrer\",\n\t\t\t\t\t\t\"opener\",\n\t\t\t\t\t\t\"tag\",\n\n\t\t\t\t\t\t/* microformats.org */\n\t\t\t\t\t\t\"disclosure\",\n\t\t\t\t\t\t\"entry-content\",\n\t\t\t\t\t\t\"lightbox\",\n\t\t\t\t\t\t\"lightvideo\",\n\t\t\t\t\t];\n\t\t\t\t\tconst tokens = attr.toLowerCase().split(/\\s+/);\n\t\t\t\t\tfor (const keyword of tokens) {\n\t\t\t\t\t\tif (disallowed.includes(keyword)) {\n\t\t\t\t\t\t\treturn `<link> does not allow rel=\"${keyword}\"`;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn null;\n\t\t\t\t},\n\t\t\t\tlist: true,\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\ttarget: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\turn: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tlisting: {\n\t\tdeprecated: {\n\t\t\tsource: \"html32\",\n\t\t},\n\t},\n\n\tmain: {\n\t\tflow: true,\n\t\taria: {\n\t\t\timplicitRole: \"main\",\n\t\t},\n\t},\n\n\tmap: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\ttransparent: true,\n\t\tattributes: {\n\t\t\tname: {\n\t\t\t\trequired: true,\n\t\t\t\tenum: [\"/\\\\S+/\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tmark: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tmarquee: {\n\t\tdeprecated: {\n\t\t\tdocumentation:\n\t\t\t\t\"Marked as obsolete by both W3C and WHATWG standards but still implemented in most browsers. Animated text should be avoided for accessibility reasons as well.\",\n\t\t\tsource: \"html5\",\n\t\t},\n\t\tattributes: {\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t},\n\n\tmath: {\n\t\tflow: true,\n\t\tforeign: true,\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdir: {\n\t\t\t\tenum: [\"ltr\", \"rtl\"],\n\t\t\t},\n\t\t\tdisplay: {\n\t\t\t\tenum: [\"block\", \"inline\"],\n\t\t\t},\n\t\t\thspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tname: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\toverflow: {\n\t\t\t\tenum: [\"linebreak\", \"scroll\", \"elide\", \"truncate\", \"scale\"],\n\t\t\t},\n\t\t\tvspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"math\",\n\t\t},\n\t},\n\n\tmenu: {\n\t\tflow: true,\n\t\taria: {\n\t\t\timplicitRole: \"list\",\n\t\t},\n\t\tpermittedContent: [\"@script\", \"li\"],\n\t},\n\n\tmeta: {\n\t\tflow(node) {\n\t\t\treturn node.hasAttribute(\"itemprop\");\n\t\t},\n\t\tphrasing(node) {\n\t\t\treturn node.hasAttribute(\"itemprop\");\n\t\t},\n\t\tmetadata: true,\n\t\tvoid: true,\n\t\tattributes: {\n\t\t\tcharset: {\n\t\t\t\tenum: [\"utf-8\"],\n\t\t\t},\n\t\t\tcontent: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"name\", \"http-equiv\", \"itemprop\", \"property\"),\n\t\t\t},\n\t\t\titemprop: {\n\t\t\t\tallowed: allowedIfAttributeIsAbsent(\"http-equiv\", \"name\"),\n\t\t\t},\n\t\t\tname: {\n\t\t\t\tallowed: allowedIfAttributeIsAbsent(\"http-equiv\", \"itemprop\"),\n\t\t\t},\n\t\t\t\"http-equiv\": {\n\t\t\t\tallowed: allowedIfAttributeIsAbsent(\"name\", \"itemprop\"),\n\t\t\t},\n\t\t\tscheme: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tmeter: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tlabelable: true,\n\t\taria: {\n\t\t\timplicitRole: \"meter\",\n\t\t},\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tpermittedDescendants: [{ exclude: \"meter\" }],\n\t},\n\n\tmulticol: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use CSS instead\",\n\t\t\tdocumentation: \"Use CSS columns instead.\",\n\t\t\tsource: \"html5\",\n\t\t},\n\t},\n\n\tnav: {\n\t\tflow: true,\n\t\tsectioning: true,\n\t\taria: {\n\t\t\timplicitRole: \"navigation\",\n\t\t},\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: \"main\" }],\n\t},\n\n\tnextid: {\n\t\tdeprecated: {\n\t\t\tsource: \"html32\",\n\t\t},\n\t},\n\n\tnobr: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use CSS instead\",\n\t\t\tdocumentation: \"Use CSS `white-space` property instead.\",\n\t\t\tsource: \"non-standard\",\n\t\t},\n\t},\n\n\tnoembed: {\n\t\tdeprecated: {\n\t\t\tsource: \"non-standard\",\n\t\t},\n\t},\n\n\tnoframes: {\n\t\tdeprecated: {\n\t\t\tsource: \"html5\",\n\t\t},\n\t},\n\n\tnoscript: {\n\t\tmetadata: true,\n\t\tflow: true,\n\t\tphrasing: true,\n\t\ttransparent: true,\n\t\tpermittedDescendants: [{ exclude: \"noscript\" }],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tobject: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\tinteractive(node) {\n\t\t\treturn node.hasAttribute(\"usemap\");\n\t\t},\n\t\ttransparent: true,\n\t\tformAssociated: {\n\t\t\tdisablable: false,\n\t\t\tlisted: true,\n\t\t},\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tarchive: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tblocking: {\n\t\t\t\tlist: true,\n\t\t\t\tenum: [\"render\"],\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tclassid: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcode: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcodebase: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcodetype: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdata: {\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t\trequired: true,\n\t\t\t},\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdeclare: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\theight: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\thspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tname: {\n\t\t\t\tenum: [\"/[^_].*/\"],\n\t\t\t},\n\t\t\tstandby: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tvspace: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"param\", \"@flow\"],\n\t\tpermittedOrder: [\"param\", \"@flow\"],\n\t},\n\n\tol: {\n\t\tflow: true,\n\t\tattributes: {\n\t\t\tcompact: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\treversed: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\ttype: {\n\t\t\t\tenum: [\"a\", \"A\", \"i\", \"I\", \"1\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"list\",\n\t\t},\n\t\tpermittedContent: [\"@script\", \"li\"],\n\t},\n\n\toptgroup: {\n\t\timplicitClosed: [\"optgroup\"],\n\t\tattributes: {\n\t\t\tdisabled: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"group\",\n\t\t},\n\t\tpermittedContent: [\"@script\", \"option\"],\n\t},\n\n\toption: {\n\t\timplicitClosed: [\"option\"],\n\t\tattributes: {\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdisabled: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tname: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tselected: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"option\",\n\t\t},\n\t\tpermittedContent: [],\n\t},\n\n\toutput: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tformAssociated: {\n\t\t\tdisablable: false,\n\t\t\tlisted: true,\n\t\t},\n\t\tlabelable: true,\n\t\taria: {\n\t\t\timplicitRole: \"status\",\n\t\t},\n\t\tpermittedContent: [\"@phrasing\"],\n\t},\n\n\tp: {\n\t\tflow: true,\n\t\timplicitClosed: [\n\t\t\t\"address\",\n\t\t\t\"article\",\n\t\t\t\"aside\",\n\t\t\t\"blockquote\",\n\t\t\t\"div\",\n\t\t\t\"dl\",\n\t\t\t\"fieldset\",\n\t\t\t\"footer\",\n\t\t\t\"form\",\n\t\t\t\"h1\",\n\t\t\t\"h2\",\n\t\t\t\"h3\",\n\t\t\t\"h4\",\n\t\t\t\"h5\",\n\t\t\t\"h6\",\n\t\t\t\"header\",\n\t\t\t\"hgroup\",\n\t\t\t\"hr\",\n\t\t\t\"main\",\n\t\t\t\"nav\",\n\t\t\t\"ol\",\n\t\t\t\"p\",\n\t\t\t\"pre\",\n\t\t\t\"section\",\n\t\t\t\"table\",\n\t\t\t\"ul\",\n\t\t],\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"paragraph\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tparam: {\n\t\tvoid: true,\n\t\tattributes: {\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\ttype: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tvaluetype: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tpicture: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\tpermittedContent: [\"@script\", \"source\", \"img\"],\n\t\tpermittedOrder: [\"source\", \"img\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tplaintext: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use <pre> or CSS instead\",\n\t\t\tdocumentation: \"Use the `<pre>` element or use CSS to set a monospace font.\",\n\t\t\tsource: \"html2\",\n\t\t},\n\t},\n\n\tpre: {\n\t\tflow: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tattributes: {\n\t\t\twidth: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tprogress: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tlabelable: true,\n\t\taria: {\n\t\t\timplicitRole: \"progressbar\",\n\t\t},\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tpermittedDescendants: [{ exclude: \"progress\" }],\n\t},\n\n\tq: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\trb: {\n\t\timplicitClosed: [\"rb\", \"rt\", \"rtc\", \"rp\"],\n\t\tpermittedContent: [\"@phrasing\"],\n\t},\n\n\trp: {\n\t\timplicitClosed: [\"rb\", \"rt\", \"rtc\", \"rp\"],\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\trt: {\n\t\timplicitClosed: [\"rb\", \"rt\", \"rtc\", \"rp\"],\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\trtc: {\n\t\timplicitClosed: [\"rb\", \"rtc\", \"rp\"],\n\t\tpermittedContent: [\"@phrasing\", \"rt\"],\n\t},\n\n\truby: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\", \"rb\", \"rp\", \"rt\", \"rtc\"],\n\t},\n\n\ts: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"deletion\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tsamp: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tscript: {\n\t\tmetadata: true,\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tscriptSupporting: true,\n\t\tattributes: {\n\t\t\tasync: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tcrossorigin: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"anonymous\", \"use-credentials\"],\n\t\t\t},\n\t\t\tdefer: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tevent: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tfor: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tintegrity: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"src\"),\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t\tlanguage: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tnomodule: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\treferrerpolicy: {\n\t\t\t\tenum: ReferrerPolicy,\n\t\t\t},\n\t\t\tsrc: {\n\t\t\t\tenum: [\"/.+/\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tsearch: {\n\t\tflow: true,\n\t\taria: {\n\t\t\timplicitRole: \"search\",\n\t\t},\n\t},\n\n\tsection: {\n\t\tflow: true,\n\t\tsectioning: true,\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\tconst name = node.hasAttribute(\"aria-label\") || node.hasAttribute(\"aria-labelledby\");\n\t\t\t\treturn name ? \"region\" : \"generic\";\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"@flow\"],\n\t},\n\n\tselect: {\n\t\tflow: true,\n\t\tfocusable: true,\n\t\tphrasing: true,\n\t\tinteractive: true,\n\t\tformAssociated: {\n\t\t\tdisablable: true,\n\t\t\tlisted: true,\n\t\t},\n\t\tlabelable: true,\n\t\tattributes: {\n\t\t\tautofocus: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tdisabled: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tmultiple: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\trequired: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\tconst multiple = node.hasAttribute(\"multiple\");\n\t\t\t\tif (multiple) {\n\t\t\t\t\treturn \"listbox\";\n\t\t\t\t}\n\t\t\t\tconst size = node.getAttribute(\"size\");\n\t\t\t\tif (typeof size === \"string\") {\n\t\t\t\t\tconst parsed = parseInt(size, 10);\n\t\t\t\t\tif (parsed > 1) {\n\t\t\t\t\t\treturn \"listbox\";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn \"combobox\";\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"@script\", \"datasrc\", \"datafld\", \"dataformatas\", \"option\", \"optgroup\"],\n\t},\n\n\tslot: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\ttransparent: true,\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tsmall: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tsource: {\n\t\tvoid: true,\n\t\tattributes: {\n\t\t\ttype: {},\n\t\t\tmedia: {},\n\t\t\tsrc: {\n\t\t\t\tallowed: allowedIfParentIsPresent(\"audio\", \"video\"),\n\t\t\t},\n\t\t\tsrcset: {\n\t\t\t\tallowed: allowedIfParentIsPresent(\"picture\"),\n\t\t\t},\n\t\t\tsizes: {\n\t\t\t\tallowed: allowedIfParentIsPresent(\"picture\"),\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tallowed: allowedIfParentIsPresent(\"picture\"),\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\theight: {\n\t\t\t\tallowed: allowedIfParentIsPresent(\"picture\"),\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tspacer: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use CSS instead\",\n\t\t\tdocumentation: \"Use CSS margin or padding instead.\",\n\t\t\tsource: \"non-standard\",\n\t\t},\n\t},\n\n\tspan: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\tattributes: {\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tstrike: {\n\t\tdeprecated: {\n\t\t\tmessage: \"use <del> or <s> instead\",\n\t\t\tdocumentation: \"Use the `<del>` or `<s>` element instead.\",\n\t\t\tsource: \"html5\",\n\t\t},\n\t},\n\n\tstrong: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"strong\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tstyle: {\n\t\tmetadata: true,\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tsub: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"subscript\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tsummary: {\n\t\tpermittedContent: [\"@phrasing\", \"@heading\"],\n\t\tfocusable(node) {\n\t\t\treturn Boolean(node.closest(\"details\"));\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"button\",\n\t\t},\n\t},\n\n\tsup: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"superscript\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tsvg: {\n\t\tflow: true,\n\t\tforeign: true,\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\taria: {\n\t\t\timplicitRole: \"graphics-document\",\n\t\t},\n\t},\n\n\t/* while not part of HTML 5 specification these two elements are handled as\n\t * special cases to allow them as accessible text and to avoid issues with\n\t * \"no-unknown-elements\" they are added here */\n\t\"svg:desc\": {},\n\t\"svg:title\": {},\n\n\ttable: {\n\t\tflow: true,\n\t\tpermittedContent: [\"@script\", \"caption?\", \"colgroup\", \"tbody\", \"tfoot?\", \"thead?\", \"tr\"],\n\t\tpermittedOrder: [\"caption\", \"colgroup\", \"thead\", \"tbody\", \"tr\", \"tfoot\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbackground: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbgcolor: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbordercolor: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcellpadding: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcellspacing: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdataformatas: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatapagesize: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tframe: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\trules: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tsummary: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"table\",\n\t\t},\n\t},\n\n\ttbody: {\n\t\timplicitClosed: [\"tbody\", \"tfoot\"],\n\t\tpermittedContent: [\"@script\", \"tr\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbackground: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tchar: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcharoff: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tvalign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"rowgroup\",\n\t\t},\n\t},\n\n\ttd: {\n\t\tflow: true,\n\t\timplicitClosed: [\"td\", \"th\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\taxis: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbackground: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbgcolor: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tchar: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcharoff: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcolspan: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\theight: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tnowrap: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\trowspan: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\tscope: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tvalign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\tconst table = node.closest(\"table\");\n\t\t\t\tconst tableRole = table?.getAttribute(\"role\") ?? \"table\";\n\t\t\t\tswitch (tableRole) {\n\t\t\t\t\tcase \"table\":\n\t\t\t\t\t\treturn \"cell\";\n\t\t\t\t\tcase \"grid\":\n\t\t\t\t\tcase \"treegrid\":\n\t\t\t\t\t\treturn \"gridcell\";\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"@flow\"],\n\t},\n\n\ttemplate: {\n\t\tmetadata: true,\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tscriptSupporting: true,\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\ttextarea: {\n\t\tflow: true,\n\t\tfocusable: true,\n\t\tphrasing: true,\n\t\tinteractive: true,\n\t\tformAssociated: {\n\t\t\tdisablable: true,\n\t\t\tlisted: true,\n\t\t},\n\t\tlabelable: true,\n\t\tattributes: {\n\t\t\tautocomplete: {},\n\t\t\tautofocus: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tcols: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\tdatafld: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdatasrc: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tdisabled: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\tmaxlength: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\tminlength: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\treadonly: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\trequired: {\n\t\t\t\tboolean: true,\n\t\t\t},\n\t\t\trows: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\twrap: {\n\t\t\t\tenum: [\"hard\", \"soft\"],\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"textbox\",\n\t\t},\n\t\tpermittedContent: [],\n\t},\n\n\ttfoot: {\n\t\timplicitClosed: [\"tbody\"],\n\t\tpermittedContent: [\"@script\", \"tr\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbackground: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tchar: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcharoff: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tvalign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"rowgroup\",\n\t\t},\n\t},\n\n\tth: {\n\t\tflow: true,\n\t\timplicitClosed: [\"td\", \"th\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\taxis: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbackground: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbgcolor: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tchar: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcharoff: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcolspan: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\theight: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tnowrap: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\trowspan: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\tscope: {\n\t\t\t\tenum: [\"row\", \"col\", \"rowgroup\", \"colgroup\"],\n\t\t\t},\n\t\t\tvalign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole(node) {\n\t\t\t\tconst table = node.closest(\"table\");\n\t\t\t\tconst tableRole = table?.getAttribute(\"role\") ?? \"table\";\n\t\t\t\tif (typeof tableRole !== \"string\" || ![\"table\", \"grid\", \"treegrid\"].includes(tableRole)) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t\tconst scope = node.getAttribute(\"scope\");\n\t\t\t\tswitch (scope) {\n\t\t\t\t\tcase \"col\":\n\t\t\t\t\t\treturn \"columnheader\";\n\t\t\t\t\tcase \"row\":\n\t\t\t\t\t\treturn \"rowheader\";\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn tableRole === \"table\" ? \"cell\" : \"gridcell\";\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"@flow\"],\n\t\tpermittedDescendants: [{ exclude: [\"header\", \"footer\", \"@sectioning\", \"@heading\"] }],\n\t},\n\n\tthead: {\n\t\timplicitClosed: [\"tbody\", \"tfoot\"],\n\t\tpermittedContent: [\"@script\", \"tr\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbackground: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tchar: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcharoff: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tvalign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"rowgroup\",\n\t\t},\n\t},\n\n\ttime: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\taria: {\n\t\t\timplicitRole: \"time\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t\tpermittedContent: [\"@phrasing\"],\n\t},\n\n\ttitle: {\n\t\tmetadata: true,\n\t\tpermittedContent: [],\n\t\tpermittedParent: [\"head\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\ttr: {\n\t\timplicitClosed: [\"tr\"],\n\t\tpermittedContent: [\"@script\", \"td\", \"th\"],\n\t\tattributes: {\n\t\t\talign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbackground: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tbgcolor: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tchar: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tcharoff: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\tvalign: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"row\",\n\t\t},\n\t},\n\n\ttrack: {\n\t\tvoid: true,\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\ttt: {\n\t\tdeprecated: {\n\t\t\tdocumentation:\n\t\t\t\t\"Use a more semantically correct element such as `<code>`, `<var>` or `<pre>`.\",\n\t\t\tsource: \"html4\",\n\t\t},\n\t},\n\n\tu: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\timplicitRole: \"generic\",\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tul: {\n\t\tflow: true,\n\t\tpermittedContent: [\"@script\", \"li\"],\n\t\tattributes: {\n\t\t\tcompact: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t\ttype: {\n\t\t\t\tdeprecated: true,\n\t\t\t},\n\t\t},\n\t\taria: {\n\t\t\timplicitRole: \"list\",\n\t\t},\n\t},\n\n\tvar: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tpermittedContent: [\"@phrasing\"],\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\tvideo: {\n\t\tflow: true,\n\t\tfocusable(node) {\n\t\t\treturn node.hasAttribute(\"controls\");\n\t\t},\n\t\tphrasing: true,\n\t\tembedded: true,\n\t\tinteractive(node) {\n\t\t\treturn node.hasAttribute(\"controls\");\n\t\t},\n\t\ttransparent: [\"@flow\"],\n\t\tattributes: {\n\t\t\tcrossorigin: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"anonymous\", \"use-credentials\"],\n\t\t\t},\n\t\t\theight: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t\titemprop: {\n\t\t\t\tallowed: allowedIfAttributeIsPresent(\"src\"),\n\t\t\t},\n\t\t\tpreload: {\n\t\t\t\tomit: true,\n\t\t\t\tenum: [\"none\", \"metadata\", \"auto\"],\n\t\t\t},\n\t\t\twidth: {\n\t\t\t\tenum: [\"/\\\\d+/\"],\n\t\t\t},\n\t\t},\n\t\tpermittedContent: [\"@flow\", \"track\", \"source\"],\n\t\tpermittedDescendants: [{ exclude: [\"audio\", \"video\"] }],\n\t\tpermittedOrder: [\"source\", \"track\", \"@flow\"],\n\t},\n\n\twbr: {\n\t\tflow: true,\n\t\tphrasing: true,\n\t\tvoid: true,\n\t\taria: {\n\t\t\tnaming: \"prohibited\",\n\t\t},\n\t},\n\n\txmp: {\n\t\tdeprecated: {\n\t\t\tdocumentation: \"Use `<pre>` or `<code>` and escape content using HTML entities instead.\",\n\t\t\tsource: \"html32\",\n\t\t},\n\t},\n});\n","import { type MetaDataTable } from \"../meta\";\nimport html5 from \"./html5\";\n\ninterface BundledElements {\n\thtml5: MetaDataTable;\n\t[key: string]: MetaDataTable;\n}\n\nexport const bundledElements: BundledElements = {\n\thtml5,\n};\n"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}