admin08077/Githubgemini
0
1{"version":3,"file":"axe-core-Cc5paZPx.js","sources":["../../node_modules/axe-core/axe.js"],"sourcesContent":["/*! axe v4.11.0\n * Copyright (c) 2015 - 2025 Deque Systems, Inc.\n *\n * Your use of this Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/.\n *\n * This entire copyright notice must appear in every copy of this file you\n * distribute or in any file that contains substantial portions of this source\n * code.\n */\n(function axeFunction(window) {\n var global = window;\n var document = window.document;\n 'use strict';\n function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function(o) {\n return typeof o;\n } : function(o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n }\n var axe = axe || {};\n axe.version = '4.11.0';\n if (typeof define === 'function' && define.amd) {\n define('axe-core', [], function() {\n return axe;\n });\n }\n if ((typeof module === 'undefined' ? 'undefined' : _typeof(module)) === 'object' && module.exports && typeof axeFunction.toString === 'function') {\n axe.source = '(' + axeFunction.toString() + ')(typeof window === \"object\" ? window : this);';\n module.exports = axe;\n }\n if (typeof window.getComputedStyle === 'function') {\n window.axe = axe;\n }\n var commons;\n 'use strict';\n var _excluded = [ 'precision', 'format', 'inGamut' ], _excluded2 = [ 'space' ], _excluded3 = [ 'algorithm' ], _excluded4 = [ 'method' ], _excluded5 = [ 'maxDeltaE', 'deltaEMethod', 'steps', 'maxSteps' ], _excluded6 = [ 'variant' ], _excluded7 = [ 'matches' ], _excluded8 = [ 'chromium' ], _excluded9 = [ 'noImplicit' ], _excluded0 = [ 'noPresentational' ], _excluded1 = [ 'node' ], _excluded10 = [ 'relatedNodes' ], _excluded11 = [ 'node' ], _excluded12 = [ 'node' ], _excluded13 = [ 'environmentData' ], _excluded14 = [ 'environmentData' ], _excluded15 = [ 'environmentData' ], _excluded16 = [ 'environmentData' ], _excluded17 = [ 'environmentData' ];\n function _toArray(r) {\n return _arrayWithHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableRest();\n }\n function _wrapNativeSuper(t) {\n var r = 'function' == typeof Map ? new Map() : void 0;\n return _wrapNativeSuper = function _wrapNativeSuper(t) {\n if (null === t || !_isNativeFunction(t)) {\n return t;\n }\n if ('function' != typeof t) {\n throw new TypeError('Super expression must either be null or a function');\n }\n if (void 0 !== r) {\n if (r.has(t)) {\n return r.get(t);\n }\n r.set(t, Wrapper);\n }\n function Wrapper() {\n return _construct(t, arguments, _getPrototypeOf(this).constructor);\n }\n return Wrapper.prototype = Object.create(t.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: !1,\n writable: !0,\n configurable: !0\n }\n }), _setPrototypeOf(Wrapper, t);\n }, _wrapNativeSuper(t);\n }\n function _isNativeFunction(t) {\n try {\n return -1 !== Function.toString.call(t).indexOf('[native code]');\n } catch (n) {\n return 'function' == typeof t;\n }\n }\n function _defineProperty(e, r, t) {\n return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n }\n function _construct(t, e, r) {\n if (_isNativeReflectConstruct()) {\n return Reflect.construct.apply(null, arguments);\n }\n var o = [ null ];\n o.push.apply(o, e);\n var p = new (t.bind.apply(t, o))();\n return r && _setPrototypeOf(p, r.prototype), p;\n }\n function _objectWithoutProperties(e, t) {\n if (null == e) {\n return {};\n }\n var o, r, i = _objectWithoutPropertiesLoose(e, t);\n if (Object.getOwnPropertySymbols) {\n var n = Object.getOwnPropertySymbols(e);\n for (r = 0; r < n.length; r++) {\n o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n }\n return i;\n }\n function _objectWithoutPropertiesLoose(r, e) {\n if (null == r) {\n return {};\n }\n var t = {};\n for (var n in r) {\n if ({}.hasOwnProperty.call(r, n)) {\n if (-1 !== e.indexOf(n)) {\n continue;\n }\n t[n] = r[n];\n }\n }\n return t;\n }\n function _callSuper(t, o, e) {\n return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));\n }\n function _possibleConstructorReturn(t, e) {\n if (e && ('object' == _typeof(e) || 'function' == typeof e)) {\n return e;\n }\n if (void 0 !== e) {\n throw new TypeError('Derived constructors may only return object or undefined');\n }\n return _assertThisInitialized(t);\n }\n function _assertThisInitialized(e) {\n if (void 0 === e) {\n throw new ReferenceError('this hasn\\'t been initialised - super() hasn\\'t been called');\n }\n return e;\n }\n function _isNativeReflectConstruct() {\n try {\n var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));\n } catch (t) {}\n return (_isNativeReflectConstruct = function _isNativeReflectConstruct() {\n return !!t;\n })();\n }\n function _getPrototypeOf(t) {\n return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(t) {\n return t.__proto__ || Object.getPrototypeOf(t);\n }, _getPrototypeOf(t);\n }\n function _inherits(t, e) {\n if ('function' != typeof e && null !== e) {\n throw new TypeError('Super expression must either be null or a function');\n }\n t.prototype = Object.create(e && e.prototype, {\n constructor: {\n value: t,\n writable: !0,\n configurable: !0\n }\n }), Object.defineProperty(t, 'prototype', {\n writable: !1\n }), e && _setPrototypeOf(t, e);\n }\n function _setPrototypeOf(t, e) {\n return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(t, e) {\n return t.__proto__ = e, t;\n }, _setPrototypeOf(t, e);\n }\n function _extends() {\n return _extends = Object.assign ? Object.assign.bind() : function(n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) {\n ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n }\n return n;\n }, _extends.apply(null, arguments);\n }\n function _toConsumableArray(r) {\n return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread();\n }\n function _nonIterableSpread() {\n throw new TypeError('Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');\n }\n function _iterableToArray(r) {\n if ('undefined' != typeof Symbol && null != r[Symbol.iterator] || null != r['@@iterator']) {\n return Array.from(r);\n }\n }\n function _arrayWithoutHoles(r) {\n if (Array.isArray(r)) {\n return _arrayLikeToArray(r);\n }\n }\n function _classPrivateFieldInitSpec(e, t, a) {\n _checkPrivateRedeclaration(e, t), t.set(e, a);\n }\n function _classPrivateMethodInitSpec(e, a) {\n _checkPrivateRedeclaration(e, a), a.add(e);\n }\n function _checkPrivateRedeclaration(e, t) {\n if (t.has(e)) {\n throw new TypeError('Cannot initialize the same private elements twice on an object');\n }\n }\n function _classPrivateFieldGet(s, a) {\n return s.get(_assertClassBrand(s, a));\n }\n function _classPrivateFieldSet(s, a, r) {\n return s.set(_assertClassBrand(s, a), r), r;\n }\n function _assertClassBrand(e, t, n) {\n if ('function' == typeof e ? e === t : e.has(t)) {\n return arguments.length < 3 ? t : n;\n }\n throw new TypeError('Private element is not present on this object');\n }\n function _slicedToArray(r, e) {\n return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();\n }\n function _nonIterableRest() {\n throw new TypeError('Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');\n }\n function _iterableToArrayLimit(r, l) {\n var t = null == r ? null : 'undefined' != typeof Symbol && r[Symbol.iterator] || r['@@iterator'];\n if (null != t) {\n var e, n, i, u, a = [], f = !0, o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) {\n return;\n }\n f = !1;\n } else {\n for (;!(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0) {}\n }\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t['return'] && (u = t['return'](), Object(u) !== u)) {\n return;\n }\n } finally {\n if (o) {\n throw n;\n }\n }\n }\n return a;\n }\n }\n function _arrayWithHoles(r) {\n if (Array.isArray(r)) {\n return r;\n }\n }\n function _classCallCheck(a, n) {\n if (!(a instanceof n)) {\n throw new TypeError('Cannot call a class as a function');\n }\n }\n function _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), \n Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n }\n function _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), \n Object.defineProperty(e, 'prototype', {\n writable: !1\n }), e;\n }\n function _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n }\n function _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t) {\n return t;\n }\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i)) {\n return i;\n }\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n }\n function _createForOfIteratorHelper(r, e) {\n var t = 'undefined' != typeof Symbol && r[Symbol.iterator] || r['@@iterator'];\n if (!t) {\n if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && 'number' == typeof r.length) {\n t && (r = t);\n var _n = 0, F = function F() {};\n return {\n s: F,\n n: function n() {\n return _n >= r.length ? {\n done: !0\n } : {\n done: !1,\n value: r[_n++]\n };\n },\n e: function e(r) {\n throw r;\n },\n f: F\n };\n }\n throw new TypeError('Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');\n }\n var o, a = !0, u = !1;\n return {\n s: function s() {\n t = t.call(r);\n },\n n: function n() {\n var r = t.next();\n return a = r.done, r;\n },\n e: function e(r) {\n u = !0, o = r;\n },\n f: function f() {\n try {\n a || null == t['return'] || t['return']();\n } finally {\n if (u) {\n throw o;\n }\n }\n }\n };\n }\n function _unsupportedIterableToArray(r, a) {\n if (r) {\n if ('string' == typeof r) {\n return _arrayLikeToArray(r, a);\n }\n var t = {}.toString.call(r).slice(8, -1);\n return 'Object' === t && r.constructor && (t = r.constructor.name), 'Map' === t || 'Set' === t ? Array.from(r) : 'Arguments' === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;\n }\n }\n function _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++) {\n n[e] = r[e];\n }\n return n;\n }\n function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function(o) {\n return typeof o;\n } : function(o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n }\n (function(_Class_brand, _path, _CSS, _space, _r, _g, _b, _red, _green, _blue, _Class3_brand) {\n var __create = Object.create;\n var __defProp = Object.defineProperty;\n var __getProtoOf = Object.getPrototypeOf;\n var __hasOwnProp = Object.prototype.hasOwnProperty;\n var __getOwnPropNames = Object.getOwnPropertyNames;\n var __getOwnPropDesc = Object.getOwnPropertyDescriptor;\n var __defNormalProp = function __defNormalProp(obj, key, value) {\n return key in obj ? __defProp(obj, key, {\n enumerable: true,\n configurable: true,\n writable: true,\n value: value\n }) : obj[key] = value;\n };\n var __markAsModule = function __markAsModule(target) {\n return __defProp(target, '__esModule', {\n value: true\n });\n };\n var __commonJS = function __commonJS(cb, mod) {\n return function() {\n return mod || cb((mod = {\n exports: {}\n }).exports, mod), mod.exports;\n };\n };\n var __export = function __export(target, all) {\n for (var name in all) {\n __defProp(target, name, {\n get: all[name],\n enumerable: true\n });\n }\n };\n var __exportStar = function __exportStar(target, module, desc) {\n if (module && _typeof(module) === 'object' || typeof module === 'function') {\n var _iterator = _createForOfIteratorHelper(__getOwnPropNames(module)), _step;\n try {\n var _loop = function _loop() {\n var key = _step.value;\n if (!__hasOwnProp.call(target, key) && key !== 'default') {\n __defProp(target, key, {\n get: function get() {\n return module[key];\n },\n enumerable: !(desc = __getOwnPropDesc(module, key)) || desc.enumerable\n });\n }\n };\n for (_iterator.s(); !(_step = _iterator.n()).done; ) {\n _loop();\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n return target;\n };\n var __toModule = function __toModule(module) {\n return __exportStar(__markAsModule(__defProp(module != null ? __create(__getProtoOf(module)) : {}, 'default', module && module.__esModule && 'default' in module ? {\n get: function get() {\n return module['default'];\n },\n enumerable: true\n } : {\n value: module,\n enumerable: true\n })), module);\n };\n var __publicField = function __publicField(obj, key, value) {\n __defNormalProp(obj, _typeof(key) !== 'symbol' ? key + '' : key, value);\n return value;\n };\n var require_es6_promise = __commonJS(function(exports, module) {\n (function(global2, factory) {\n _typeof(exports) === 'object' && typeof module !== 'undefined' ? module.exports = factory() : typeof define === 'function' && define.amd ? define(factory) : global2.ES6Promise = factory();\n })(exports, function() {\n 'use strict';\n function objectOrFunction(x) {\n var type2 = _typeof(x);\n return x !== null && (type2 === 'object' || type2 === 'function');\n }\n function isFunction(x) {\n return typeof x === 'function';\n }\n var _isArray = void 0;\n if (Array.isArray) {\n _isArray = Array.isArray;\n } else {\n _isArray = function _isArray(x) {\n return Object.prototype.toString.call(x) === '[object Array]';\n };\n }\n var isArray = _isArray;\n var len = 0;\n var vertxNext = void 0;\n var customSchedulerFn = void 0;\n var asap = function asap2(callback, arg) {\n queue2[len] = callback;\n queue2[len + 1] = arg;\n len += 2;\n if (len === 2) {\n if (customSchedulerFn) {\n customSchedulerFn(flush);\n } else {\n scheduleFlush();\n }\n }\n };\n function setScheduler(scheduleFn) {\n customSchedulerFn = scheduleFn;\n }\n function setAsap(asapFn) {\n asap = asapFn;\n }\n var browserWindow = typeof window !== 'undefined' ? window : void 0;\n var browserGlobal = browserWindow || {};\n var BrowserMutationObserver = browserGlobal.MutationObserver || browserGlobal.WebKitMutationObserver;\n var isNode2 = typeof self === 'undefined' && typeof process !== 'undefined' && {}.toString.call(process) === '[object process]';\n var isWorker = typeof Uint8ClampedArray !== 'undefined' && typeof importScripts !== 'undefined' && typeof MessageChannel !== 'undefined';\n function useNextTick() {\n return function() {\n return process.nextTick(flush);\n };\n }\n function useVertxTimer() {\n if (typeof vertxNext !== 'undefined') {\n return function() {\n vertxNext(flush);\n };\n }\n return useSetTimeout();\n }\n function useMutationObserver() {\n var iterations = 0;\n var observer = new BrowserMutationObserver(flush);\n var node = document.createTextNode('');\n observer.observe(node, {\n characterData: true\n });\n return function() {\n node.data = iterations = ++iterations % 2;\n };\n }\n function useMessageChannel() {\n var channel = new MessageChannel();\n channel.port1.onmessage = flush;\n return function() {\n return channel.port2.postMessage(0);\n };\n }\n function useSetTimeout() {\n var globalSetTimeout = setTimeout;\n return function() {\n return globalSetTimeout(flush, 1);\n };\n }\n var queue2 = new Array(1e3);\n function flush() {\n for (var i = 0; i < len; i += 2) {\n var callback = queue2[i];\n var arg = queue2[i + 1];\n callback(arg);\n queue2[i] = void 0;\n queue2[i + 1] = void 0;\n }\n len = 0;\n }\n function attemptVertx() {\n try {\n var vertx = Function('return this')().require('vertx');\n vertxNext = vertx.runOnLoop || vertx.runOnContext;\n return useVertxTimer();\n } catch (e) {\n return useSetTimeout();\n }\n }\n var scheduleFlush = void 0;\n if (isNode2) {\n scheduleFlush = useNextTick();\n } else if (BrowserMutationObserver) {\n scheduleFlush = useMutationObserver();\n } else if (isWorker) {\n scheduleFlush = useMessageChannel();\n } else if (browserWindow === void 0 && true) {\n scheduleFlush = attemptVertx();\n } else {\n scheduleFlush = useSetTimeout();\n }\n function then(onFulfillment, onRejection) {\n var parent = this;\n var child = new this.constructor(noop3);\n if (child[PROMISE_ID] === void 0) {\n makePromise(child);\n }\n var _state = parent._state;\n if (_state) {\n var callback = arguments[_state - 1];\n asap(function() {\n return invokeCallback(_state, child, callback, parent._result);\n });\n } else {\n subscribe2(parent, child, onFulfillment, onRejection);\n }\n return child;\n }\n function resolve$1(object) {\n var Constructor = this;\n if (object && _typeof(object) === 'object' && object.constructor === Constructor) {\n return object;\n }\n var promise = new Constructor(noop3);\n resolve(promise, object);\n return promise;\n }\n var PROMISE_ID = Math.random().toString(36).substring(2);\n function noop3() {}\n var PENDING = void 0;\n var FULFILLED = 1;\n var REJECTED = 2;\n function selfFulfillment() {\n return new TypeError('You cannot resolve a promise with itself');\n }\n function cannotReturnOwn() {\n return new TypeError('A promises callback cannot return that same promise.');\n }\n function tryThen(then$$1, value, fulfillmentHandler, rejectionHandler) {\n try {\n then$$1.call(value, fulfillmentHandler, rejectionHandler);\n } catch (e) {\n return e;\n }\n }\n function handleForeignThenable(promise, thenable, then$$1) {\n asap(function(promise2) {\n var sealed = false;\n var error = tryThen(then$$1, thenable, function(value) {\n if (sealed) {\n return;\n }\n sealed = true;\n if (thenable !== value) {\n resolve(promise2, value);\n } else {\n fulfill(promise2, value);\n }\n }, function(reason) {\n if (sealed) {\n return;\n }\n sealed = true;\n reject(promise2, reason);\n }, 'Settle: ' + (promise2._label || ' unknown promise'));\n if (!sealed && error) {\n sealed = true;\n reject(promise2, error);\n }\n }, promise);\n }\n function handleOwnThenable(promise, thenable) {\n if (thenable._state === FULFILLED) {\n fulfill(promise, thenable._result);\n } else if (thenable._state === REJECTED) {\n reject(promise, thenable._result);\n } else {\n subscribe2(thenable, void 0, function(value) {\n return resolve(promise, value);\n }, function(reason) {\n return reject(promise, reason);\n });\n }\n }\n function handleMaybeThenable(promise, maybeThenable, then$$1) {\n if (maybeThenable.constructor === promise.constructor && then$$1 === then && maybeThenable.constructor.resolve === resolve$1) {\n handleOwnThenable(promise, maybeThenable);\n } else {\n if (then$$1 === void 0) {\n fulfill(promise, maybeThenable);\n } else if (isFunction(then$$1)) {\n handleForeignThenable(promise, maybeThenable, then$$1);\n } else {\n fulfill(promise, maybeThenable);\n }\n }\n }\n function resolve(promise, value) {\n if (promise === value) {\n reject(promise, selfFulfillment());\n } else if (objectOrFunction(value)) {\n var then$$1 = void 0;\n try {\n then$$1 = value.then;\n } catch (error) {\n reject(promise, error);\n return;\n }\n handleMaybeThenable(promise, value, then$$1);\n } else {\n fulfill(promise, value);\n }\n }\n function publishRejection(promise) {\n if (promise._onerror) {\n promise._onerror(promise._result);\n }\n publish(promise);\n }\n function fulfill(promise, value) {\n if (promise._state !== PENDING) {\n return;\n }\n promise._result = value;\n promise._state = FULFILLED;\n if (promise._subscribers.length !== 0) {\n asap(publish, promise);\n }\n }\n function reject(promise, reason) {\n if (promise._state !== PENDING) {\n return;\n }\n promise._state = REJECTED;\n promise._result = reason;\n asap(publishRejection, promise);\n }\n function subscribe2(parent, child, onFulfillment, onRejection) {\n var _subscribers = parent._subscribers;\n var length = _subscribers.length;\n parent._onerror = null;\n _subscribers[length] = child;\n _subscribers[length + FULFILLED] = onFulfillment;\n _subscribers[length + REJECTED] = onRejection;\n if (length === 0 && parent._state) {\n asap(publish, parent);\n }\n }\n function publish(promise) {\n var subscribers = promise._subscribers;\n var settled = promise._state;\n if (subscribers.length === 0) {\n return;\n }\n var child = void 0, callback = void 0, detail = promise._result;\n for (var i = 0; i < subscribers.length; i += 3) {\n child = subscribers[i];\n callback = subscribers[i + settled];\n if (child) {\n invokeCallback(settled, child, callback, detail);\n } else {\n callback(detail);\n }\n }\n promise._subscribers.length = 0;\n }\n function invokeCallback(settled, promise, callback, detail) {\n var hasCallback = isFunction(callback), value = void 0, error = void 0, succeeded = true;\n if (hasCallback) {\n try {\n value = callback(detail);\n } catch (e) {\n succeeded = false;\n error = e;\n }\n if (promise === value) {\n reject(promise, cannotReturnOwn());\n return;\n }\n } else {\n value = detail;\n }\n if (promise._state !== PENDING) {} else if (hasCallback && succeeded) {\n resolve(promise, value);\n } else if (succeeded === false) {\n reject(promise, error);\n } else if (settled === FULFILLED) {\n fulfill(promise, value);\n } else if (settled === REJECTED) {\n reject(promise, value);\n }\n }\n function initializePromise(promise, resolver) {\n try {\n resolver(function resolvePromise(value) {\n resolve(promise, value);\n }, function rejectPromise(reason) {\n reject(promise, reason);\n });\n } catch (e) {\n reject(promise, e);\n }\n }\n var id = 0;\n function nextId() {\n return id++;\n }\n function makePromise(promise) {\n promise[PROMISE_ID] = id++;\n promise._state = void 0;\n promise._result = void 0;\n promise._subscribers = [];\n }\n function validationError() {\n return new Error('Array Methods must be provided an Array');\n }\n var Enumerator = function() {\n function Enumerator2(Constructor, input) {\n this._instanceConstructor = Constructor;\n this.promise = new Constructor(noop3);\n if (!this.promise[PROMISE_ID]) {\n makePromise(this.promise);\n }\n if (isArray(input)) {\n this.length = input.length;\n this._remaining = input.length;\n this._result = new Array(this.length);\n if (this.length === 0) {\n fulfill(this.promise, this._result);\n } else {\n this.length = this.length || 0;\n this._enumerate(input);\n if (this._remaining === 0) {\n fulfill(this.promise, this._result);\n }\n }\n } else {\n reject(this.promise, validationError());\n }\n }\n Enumerator2.prototype._enumerate = function _enumerate(input) {\n for (var i = 0; this._state === PENDING && i < input.length; i++) {\n this._eachEntry(input[i], i);\n }\n };\n Enumerator2.prototype._eachEntry = function _eachEntry(entry, i) {\n var c4 = this._instanceConstructor;\n var resolve$$1 = c4.resolve;\n if (resolve$$1 === resolve$1) {\n var _then = void 0;\n var error = void 0;\n var didError = false;\n try {\n _then = entry.then;\n } catch (e) {\n didError = true;\n error = e;\n }\n if (_then === then && entry._state !== PENDING) {\n this._settledAt(entry._state, i, entry._result);\n } else if (typeof _then !== 'function') {\n this._remaining--;\n this._result[i] = entry;\n } else if (c4 === Promise$1) {\n var promise = new c4(noop3);\n if (didError) {\n reject(promise, error);\n } else {\n handleMaybeThenable(promise, entry, _then);\n }\n this._willSettleAt(promise, i);\n } else {\n this._willSettleAt(new c4(function(resolve$$12) {\n return resolve$$12(entry);\n }), i);\n }\n } else {\n this._willSettleAt(resolve$$1(entry), i);\n }\n };\n Enumerator2.prototype._settledAt = function _settledAt(state, i, value) {\n var promise = this.promise;\n if (promise._state === PENDING) {\n this._remaining--;\n if (state === REJECTED) {\n reject(promise, value);\n } else {\n this._result[i] = value;\n }\n }\n if (this._remaining === 0) {\n fulfill(promise, this._result);\n }\n };\n Enumerator2.prototype._willSettleAt = function _willSettleAt(promise, i) {\n var enumerator = this;\n subscribe2(promise, void 0, function(value) {\n return enumerator._settledAt(FULFILLED, i, value);\n }, function(reason) {\n return enumerator._settledAt(REJECTED, i, reason);\n });\n };\n return Enumerator2;\n }();\n function all(entries) {\n return new Enumerator(this, entries).promise;\n }\n function race(entries) {\n var Constructor = this;\n if (!isArray(entries)) {\n return new Constructor(function(_, reject2) {\n return reject2(new TypeError('You must pass an array to race.'));\n });\n } else {\n return new Constructor(function(resolve2, reject2) {\n var length = entries.length;\n for (var i = 0; i < length; i++) {\n Constructor.resolve(entries[i]).then(resolve2, reject2);\n }\n });\n }\n }\n function reject$1(reason) {\n var Constructor = this;\n var promise = new Constructor(noop3);\n reject(promise, reason);\n return promise;\n }\n function needsResolver() {\n throw new TypeError('You must pass a resolver function as the first argument to the promise constructor');\n }\n function needsNew() {\n throw new TypeError('Failed to construct \\'Promise\\': Please use the \\'new\\' operator, this object constructor cannot be called as a function.');\n }\n var Promise$1 = function() {\n function Promise2(resolver) {\n this[PROMISE_ID] = nextId();\n this._result = this._state = void 0;\n this._subscribers = [];\n if (noop3 !== resolver) {\n typeof resolver !== 'function' && needsResolver();\n this instanceof Promise2 ? initializePromise(this, resolver) : needsNew();\n }\n }\n Promise2.prototype['catch'] = function _catch(onRejection) {\n return this.then(null, onRejection);\n };\n Promise2.prototype['finally'] = function _finally(callback) {\n var promise = this;\n var constructor = promise.constructor;\n if (isFunction(callback)) {\n return promise.then(function(value) {\n return constructor.resolve(callback()).then(function() {\n return value;\n });\n }, function(reason) {\n return constructor.resolve(callback()).then(function() {\n throw reason;\n });\n });\n }\n return promise.then(callback, callback);\n };\n return Promise2;\n }();\n Promise$1.prototype.then = then;\n Promise$1.all = all;\n Promise$1.race = race;\n Promise$1.resolve = resolve$1;\n Promise$1.reject = reject$1;\n Promise$1._setScheduler = setScheduler;\n Promise$1._setAsap = setAsap;\n Promise$1._asap = asap;\n function polyfill() {\n var local = void 0;\n if (typeof global !== 'undefined') {\n local = global;\n } else if (typeof self !== 'undefined') {\n local = self;\n } else {\n try {\n local = Function('return this')();\n } catch (e) {\n throw new Error('polyfill failed because global object is unavailable in this environment');\n }\n }\n var P = local.Promise;\n if (P) {\n var promiseToString = null;\n try {\n promiseToString = Object.prototype.toString.call(P.resolve());\n } catch (e) {}\n if (promiseToString === '[object Promise]' && !P.cast) {\n return;\n }\n }\n local.Promise = Promise$1;\n }\n Promise$1.polyfill = polyfill;\n Promise$1.Promise = Promise$1;\n return Promise$1;\n });\n });\n var require_typedarray = __commonJS(function(exports) {\n var MAX_ARRAY_LENGTH = 1e5;\n var ECMAScript = function() {\n var opts = Object.prototype.toString;\n var ophop = Object.prototype.hasOwnProperty;\n return {\n Class: function Class(v) {\n return opts.call(v).replace(/^\\[object *|\\]$/g, '');\n },\n HasProperty: function HasProperty(o, p2) {\n return p2 in o;\n },\n HasOwnProperty: function HasOwnProperty(o, p2) {\n return ophop.call(o, p2);\n },\n IsCallable: function IsCallable(o) {\n return typeof o === 'function';\n },\n ToInt32: function ToInt32(v) {\n return v >> 0;\n },\n ToUint32: function ToUint32(v) {\n return v >>> 0;\n }\n };\n }();\n var LN2 = Math.LN2;\n var abs = Math.abs;\n var floor = Math.floor;\n var log2 = Math.log;\n var min = Math.min;\n var pow = Math.pow;\n var round = Math.round;\n function clamp3(v, minimum, max2) {\n return v < minimum ? minimum : v > max2 ? max2 : v;\n }\n var getOwnPropNames = Object.getOwnPropertyNames || function(o) {\n if (o !== Object(o)) {\n throw new TypeError('Object.getOwnPropertyNames called on non-object');\n }\n var props = [], p2;\n for (p2 in o) {\n if (ECMAScript.HasOwnProperty(o, p2)) {\n props.push(p2);\n }\n }\n return props;\n };\n var defineProp;\n if (Object.defineProperty && function() {\n try {\n Object.defineProperty({}, 'x', {});\n return true;\n } catch (e) {\n return false;\n }\n }()) {\n defineProp = Object.defineProperty;\n } else {\n defineProp = function defineProp(o, p2, desc) {\n if (!o === Object(o)) {\n throw new TypeError('Object.defineProperty called on non-object');\n }\n if (ECMAScript.HasProperty(desc, 'get') && Object.prototype.__defineGetter__) {\n Object.prototype.__defineGetter__.call(o, p2, desc.get);\n }\n if (ECMAScript.HasProperty(desc, 'set') && Object.prototype.__defineSetter__) {\n Object.prototype.__defineSetter__.call(o, p2, desc.set);\n }\n if (ECMAScript.HasProperty(desc, 'value')) {\n o[p2] = desc.value;\n }\n return o;\n };\n }\n function configureProperties(obj) {\n if (getOwnPropNames && defineProp) {\n var props = getOwnPropNames(obj), i;\n for (i = 0; i < props.length; i += 1) {\n defineProp(obj, props[i], {\n value: obj[props[i]],\n writable: false,\n enumerable: false,\n configurable: false\n });\n }\n }\n }\n function makeArrayAccessors(obj) {\n if (!defineProp) {\n return;\n }\n if (obj.length > MAX_ARRAY_LENGTH) {\n throw new RangeError('Array too large for polyfill');\n }\n function makeArrayAccessor(index) {\n defineProp(obj, index, {\n get: function get() {\n return obj._getter(index);\n },\n set: function set(v) {\n obj._setter(index, v);\n },\n enumerable: true,\n configurable: false\n });\n }\n var i;\n for (i = 0; i < obj.length; i += 1) {\n makeArrayAccessor(i);\n }\n }\n function as_signed(value, bits) {\n var s = 32 - bits;\n return value << s >> s;\n }\n function as_unsigned(value, bits) {\n var s = 32 - bits;\n return value << s >>> s;\n }\n function packI8(n2) {\n return [ n2 & 255 ];\n }\n function unpackI8(bytes) {\n return as_signed(bytes[0], 8);\n }\n function packU8(n2) {\n return [ n2 & 255 ];\n }\n function unpackU8(bytes) {\n return as_unsigned(bytes[0], 8);\n }\n function packU8Clamped(n2) {\n n2 = round(Number(n2));\n return [ n2 < 0 ? 0 : n2 > 255 ? 255 : n2 & 255 ];\n }\n function packI16(n2) {\n return [ n2 >> 8 & 255, n2 & 255 ];\n }\n function unpackI16(bytes) {\n return as_signed(bytes[0] << 8 | bytes[1], 16);\n }\n function packU16(n2) {\n return [ n2 >> 8 & 255, n2 & 255 ];\n }\n function unpackU16(bytes) {\n return as_unsigned(bytes[0] << 8 | bytes[1], 16);\n }\n function packI32(n2) {\n return [ n2 >> 24 & 255, n2 >> 16 & 255, n2 >> 8 & 255, n2 & 255 ];\n }\n function unpackI32(bytes) {\n return as_signed(bytes[0] << 24 | bytes[1] << 16 | bytes[2] << 8 | bytes[3], 32);\n }\n function packU32(n2) {\n return [ n2 >> 24 & 255, n2 >> 16 & 255, n2 >> 8 & 255, n2 & 255 ];\n }\n function unpackU32(bytes) {\n return as_unsigned(bytes[0] << 24 | bytes[1] << 16 | bytes[2] << 8 | bytes[3], 32);\n }\n function packIEEE754(v, ebits, fbits) {\n var bias = (1 << ebits - 1) - 1;\n var s, e, f, i, bits, str, bytes;\n function roundToEven(n2) {\n var w = floor(n2);\n var fl = n2 - w;\n if (fl < .5) {\n return w;\n }\n if (fl > .5) {\n return w + 1;\n }\n return w % 2 ? w + 1 : w;\n }\n if (v !== v) {\n e = (1 << ebits) - 1;\n f = pow(2, fbits - 1);\n s = 0;\n } else if (v === Infinity || v === -Infinity) {\n e = (1 << ebits) - 1;\n f = 0;\n s = v < 0 ? 1 : 0;\n } else if (v === 0) {\n e = 0;\n f = 0;\n s = 1 / v === -Infinity ? 1 : 0;\n } else {\n s = v < 0;\n v = abs(v);\n if (v >= pow(2, 1 - bias)) {\n e = min(floor(log2(v) / LN2), 1023);\n f = roundToEven(v / pow(2, e) * pow(2, fbits));\n if (f / pow(2, fbits) >= 2) {\n e = e + 1;\n f = 1;\n }\n if (e > bias) {\n e = (1 << ebits) - 1;\n f = 0;\n } else {\n e = e + bias;\n f = f - pow(2, fbits);\n }\n } else {\n e = 0;\n f = roundToEven(v / pow(2, 1 - bias - fbits));\n }\n }\n bits = [];\n for (i = fbits; i; i -= 1) {\n bits.push(f % 2 ? 1 : 0);\n f = floor(f / 2);\n }\n for (i = ebits; i; i -= 1) {\n bits.push(e % 2 ? 1 : 0);\n e = floor(e / 2);\n }\n bits.push(s ? 1 : 0);\n bits.reverse();\n str = bits.join('');\n bytes = [];\n while (str.length) {\n bytes.push(parseInt(str.substring(0, 8), 2));\n str = str.substring(8);\n }\n return bytes;\n }\n function unpackIEEE754(bytes, ebits, fbits) {\n var bits = [], i, j, b2, str, bias, s, e, f;\n for (i = bytes.length; i; i -= 1) {\n b2 = bytes[i - 1];\n for (j = 8; j; j -= 1) {\n bits.push(b2 % 2 ? 1 : 0);\n b2 = b2 >> 1;\n }\n }\n bits.reverse();\n str = bits.join('');\n bias = (1 << ebits - 1) - 1;\n s = parseInt(str.substring(0, 1), 2) ? -1 : 1;\n e = parseInt(str.substring(1, 1 + ebits), 2);\n f = parseInt(str.substring(1 + ebits), 2);\n if (e === (1 << ebits) - 1) {\n return f === 0 ? s * Infinity : NaN;\n } else if (e > 0) {\n return s * pow(2, e - bias) * (1 + f / pow(2, fbits));\n } else if (f !== 0) {\n return s * pow(2, -(bias - 1)) * (f / pow(2, fbits));\n }\n return s < 0 ? -0 : 0;\n }\n function unpackF64(b2) {\n return unpackIEEE754(b2, 11, 52);\n }\n function packF64(v) {\n return packIEEE754(v, 11, 52);\n }\n function unpackF32(b2) {\n return unpackIEEE754(b2, 8, 23);\n }\n function packF32(v) {\n return packIEEE754(v, 8, 23);\n }\n (function() {\n function ArrayBuffer(length) {\n length = ECMAScript.ToInt32(length);\n if (length < 0) {\n throw new RangeError('ArrayBuffer size is not a small enough positive integer');\n }\n this.byteLength = length;\n this._bytes = [];\n this._bytes.length = length;\n var i;\n for (i = 0; i < this.byteLength; i += 1) {\n this._bytes[i] = 0;\n }\n configureProperties(this);\n }\n exports.ArrayBuffer = exports.ArrayBuffer || ArrayBuffer;\n function ArrayBufferView() {}\n function makeConstructor(bytesPerElement, pack, unpack) {\n var _ctor;\n _ctor = function ctor(buffer, byteOffset, length) {\n var array, sequence, i, s;\n if (!arguments.length || typeof arguments[0] === 'number') {\n this.length = ECMAScript.ToInt32(arguments[0]);\n if (length < 0) {\n throw new RangeError('ArrayBufferView size is not a small enough positive integer');\n }\n this.byteLength = this.length * this.BYTES_PER_ELEMENT;\n this.buffer = new ArrayBuffer(this.byteLength);\n this.byteOffset = 0;\n } else if (_typeof(arguments[0]) === 'object' && arguments[0].constructor === _ctor) {\n array = arguments[0];\n this.length = array.length;\n this.byteLength = this.length * this.BYTES_PER_ELEMENT;\n this.buffer = new ArrayBuffer(this.byteLength);\n this.byteOffset = 0;\n for (i = 0; i < this.length; i += 1) {\n this._setter(i, array._getter(i));\n }\n } else if (_typeof(arguments[0]) === 'object' && !(arguments[0] instanceof ArrayBuffer || ECMAScript.Class(arguments[0]) === 'ArrayBuffer')) {\n sequence = arguments[0];\n this.length = ECMAScript.ToUint32(sequence.length);\n this.byteLength = this.length * this.BYTES_PER_ELEMENT;\n this.buffer = new ArrayBuffer(this.byteLength);\n this.byteOffset = 0;\n for (i = 0; i < this.length; i += 1) {\n s = sequence[i];\n this._setter(i, Number(s));\n }\n } else if (_typeof(arguments[0]) === 'object' && (arguments[0] instanceof ArrayBuffer || ECMAScript.Class(arguments[0]) === 'ArrayBuffer')) {\n this.buffer = buffer;\n this.byteOffset = ECMAScript.ToUint32(byteOffset);\n if (this.byteOffset > this.buffer.byteLength) {\n throw new RangeError('byteOffset out of range');\n }\n if (this.byteOffset % this.BYTES_PER_ELEMENT) {\n throw new RangeError('ArrayBuffer length minus the byteOffset is not a multiple of the element size.');\n }\n if (arguments.length < 3) {\n this.byteLength = this.buffer.byteLength - this.byteOffset;\n if (this.byteLength % this.BYTES_PER_ELEMENT) {\n throw new RangeError('length of buffer minus byteOffset not a multiple of the element size');\n }\n this.length = this.byteLength / this.BYTES_PER_ELEMENT;\n } else {\n this.length = ECMAScript.ToUint32(length);\n this.byteLength = this.length * this.BYTES_PER_ELEMENT;\n }\n if (this.byteOffset + this.byteLength > this.buffer.byteLength) {\n throw new RangeError('byteOffset and length reference an area beyond the end of the buffer');\n }\n } else {\n throw new TypeError('Unexpected argument type(s)');\n }\n this.constructor = _ctor;\n configureProperties(this);\n makeArrayAccessors(this);\n };\n _ctor.prototype = new ArrayBufferView();\n _ctor.prototype.BYTES_PER_ELEMENT = bytesPerElement;\n _ctor.prototype._pack = pack;\n _ctor.prototype._unpack = unpack;\n _ctor.BYTES_PER_ELEMENT = bytesPerElement;\n _ctor.prototype._getter = function(index) {\n if (arguments.length < 1) {\n throw new SyntaxError('Not enough arguments');\n }\n index = ECMAScript.ToUint32(index);\n if (index >= this.length) {\n return void 0;\n }\n var bytes = [];\n for (var i = 0, o = this.byteOffset + index * this.BYTES_PER_ELEMENT; i < this.BYTES_PER_ELEMENT; i += 1, \n o += 1) {\n bytes.push(this.buffer._bytes[o]);\n }\n return this._unpack(bytes);\n };\n _ctor.prototype.get = _ctor.prototype._getter;\n _ctor.prototype._setter = function(index, value) {\n if (arguments.length < 2) {\n throw new SyntaxError('Not enough arguments');\n }\n index = ECMAScript.ToUint32(index);\n if (index < this.length) {\n var bytes = this._pack(value);\n var i;\n var o;\n for (i = 0, o = this.byteOffset + index * this.BYTES_PER_ELEMENT; i < this.BYTES_PER_ELEMENT; i += 1, \n o += 1) {\n this.buffer._bytes[o] = bytes[i];\n }\n }\n };\n _ctor.prototype.set = function(index, value) {\n if (arguments.length < 1) {\n throw new SyntaxError('Not enough arguments');\n }\n var array, sequence, offset, len, i, s, d2, byteOffset, byteLength, tmp;\n if (_typeof(arguments[0]) === 'object' && arguments[0].constructor === this.constructor) {\n array = arguments[0];\n offset = ECMAScript.ToUint32(arguments[1]);\n if (offset + array.length > this.length) {\n throw new RangeError('Offset plus length of array is out of range');\n }\n byteOffset = this.byteOffset + offset * this.BYTES_PER_ELEMENT;\n byteLength = array.length * this.BYTES_PER_ELEMENT;\n if (array.buffer === this.buffer) {\n tmp = [];\n for (i = 0, s = array.byteOffset; i < byteLength; i += 1, s += 1) {\n tmp[i] = array.buffer._bytes[s];\n }\n for (i = 0, d2 = byteOffset; i < byteLength; i += 1, d2 += 1) {\n this.buffer._bytes[d2] = tmp[i];\n }\n } else {\n for (i = 0, s = array.byteOffset, d2 = byteOffset; i < byteLength; i += 1, \n s += 1, d2 += 1) {\n this.buffer._bytes[d2] = array.buffer._bytes[s];\n }\n }\n } else if (_typeof(arguments[0]) === 'object' && typeof arguments[0].length !== 'undefined') {\n sequence = arguments[0];\n len = ECMAScript.ToUint32(sequence.length);\n offset = ECMAScript.ToUint32(arguments[1]);\n if (offset + len > this.length) {\n throw new RangeError('Offset plus length of array is out of range');\n }\n for (i = 0; i < len; i += 1) {\n s = sequence[i];\n this._setter(offset + i, Number(s));\n }\n } else {\n throw new TypeError('Unexpected argument type(s)');\n }\n };\n _ctor.prototype.subarray = function(start, end) {\n start = ECMAScript.ToInt32(start);\n end = ECMAScript.ToInt32(end);\n if (arguments.length < 1) {\n start = 0;\n }\n if (arguments.length < 2) {\n end = this.length;\n }\n if (start < 0) {\n start = this.length + start;\n }\n if (end < 0) {\n end = this.length + end;\n }\n start = clamp3(start, 0, this.length);\n end = clamp3(end, 0, this.length);\n var len = end - start;\n if (len < 0) {\n len = 0;\n }\n return new this.constructor(this.buffer, this.byteOffset + start * this.BYTES_PER_ELEMENT, len);\n };\n return _ctor;\n }\n var Int8Array = makeConstructor(1, packI8, unpackI8);\n var Uint8Array2 = makeConstructor(1, packU8, unpackU8);\n var Uint8ClampedArray2 = makeConstructor(1, packU8Clamped, unpackU8);\n var Int16Array = makeConstructor(2, packI16, unpackI16);\n var Uint16Array = makeConstructor(2, packU16, unpackU16);\n var Int32Array = makeConstructor(4, packI32, unpackI32);\n var Uint32Array3 = makeConstructor(4, packU32, unpackU32);\n var Float32Array = makeConstructor(4, packF32, unpackF32);\n var Float64Array = makeConstructor(8, packF64, unpackF64);\n exports.Int8Array = exports.Int8Array || Int8Array;\n exports.Uint8Array = exports.Uint8Array || Uint8Array2;\n exports.Uint8ClampedArray = exports.Uint8ClampedArray || Uint8ClampedArray2;\n exports.Int16Array = exports.Int16Array || Int16Array;\n exports.Uint16Array = exports.Uint16Array || Uint16Array;\n exports.Int32Array = exports.Int32Array || Int32Array;\n exports.Uint32Array = exports.Uint32Array || Uint32Array3;\n exports.Float32Array = exports.Float32Array || Float32Array;\n exports.Float64Array = exports.Float64Array || Float64Array;\n })();\n (function() {\n function r(array, index) {\n return ECMAScript.IsCallable(array.get) ? array.get(index) : array[index];\n }\n var IS_BIG_ENDIAN = function() {\n var u16array = new exports.Uint16Array([ 4660 ]), u8array = new exports.Uint8Array(u16array.buffer);\n return r(u8array, 0) === 18;\n }();\n function DataView(buffer, byteOffset, byteLength) {\n if (arguments.length === 0) {\n buffer = new exports.ArrayBuffer(0);\n } else if (!(buffer instanceof exports.ArrayBuffer || ECMAScript.Class(buffer) === 'ArrayBuffer')) {\n throw new TypeError('TypeError');\n }\n this.buffer = buffer || new exports.ArrayBuffer(0);\n this.byteOffset = ECMAScript.ToUint32(byteOffset);\n if (this.byteOffset > this.buffer.byteLength) {\n throw new RangeError('byteOffset out of range');\n }\n if (arguments.length < 3) {\n this.byteLength = this.buffer.byteLength - this.byteOffset;\n } else {\n this.byteLength = ECMAScript.ToUint32(byteLength);\n }\n if (this.byteOffset + this.byteLength > this.buffer.byteLength) {\n throw new RangeError('byteOffset and length reference an area beyond the end of the buffer');\n }\n configureProperties(this);\n }\n function makeGetter(arrayType) {\n return function(byteOffset, littleEndian) {\n byteOffset = ECMAScript.ToUint32(byteOffset);\n if (byteOffset + arrayType.BYTES_PER_ELEMENT > this.byteLength) {\n throw new RangeError('Array index out of range');\n }\n byteOffset += this.byteOffset;\n var uint8Array = new exports.Uint8Array(this.buffer, byteOffset, arrayType.BYTES_PER_ELEMENT), bytes = [], i;\n for (i = 0; i < arrayType.BYTES_PER_ELEMENT; i += 1) {\n bytes.push(r(uint8Array, i));\n }\n if (Boolean(littleEndian) === Boolean(IS_BIG_ENDIAN)) {\n bytes.reverse();\n }\n return r(new arrayType(new exports.Uint8Array(bytes).buffer), 0);\n };\n }\n DataView.prototype.getUint8 = makeGetter(exports.Uint8Array);\n DataView.prototype.getInt8 = makeGetter(exports.Int8Array);\n DataView.prototype.getUint16 = makeGetter(exports.Uint16Array);\n DataView.prototype.getInt16 = makeGetter(exports.Int16Array);\n DataView.prototype.getUint32 = makeGetter(exports.Uint32Array);\n DataView.prototype.getInt32 = makeGetter(exports.Int32Array);\n DataView.prototype.getFloat32 = makeGetter(exports.Float32Array);\n DataView.prototype.getFloat64 = makeGetter(exports.Float64Array);\n function makeSetter(arrayType) {\n return function(byteOffset, value, littleEndian) {\n byteOffset = ECMAScript.ToUint32(byteOffset);\n if (byteOffset + arrayType.BYTES_PER_ELEMENT > this.byteLength) {\n throw new RangeError('Array index out of range');\n }\n var typeArray = new arrayType([ value ]), byteArray = new exports.Uint8Array(typeArray.buffer), bytes = [], i, byteView;\n for (i = 0; i < arrayType.BYTES_PER_ELEMENT; i += 1) {\n bytes.push(r(byteArray, i));\n }\n if (Boolean(littleEndian) === Boolean(IS_BIG_ENDIAN)) {\n bytes.reverse();\n }\n byteView = new exports.Uint8Array(this.buffer, byteOffset, arrayType.BYTES_PER_ELEMENT);\n byteView.set(bytes);\n };\n }\n DataView.prototype.setUint8 = makeSetter(exports.Uint8Array);\n DataView.prototype.setInt8 = makeSetter(exports.Int8Array);\n DataView.prototype.setUint16 = makeSetter(exports.Uint16Array);\n DataView.prototype.setInt16 = makeSetter(exports.Int16Array);\n DataView.prototype.setUint32 = makeSetter(exports.Uint32Array);\n DataView.prototype.setInt32 = makeSetter(exports.Int32Array);\n DataView.prototype.setFloat32 = makeSetter(exports.Float32Array);\n DataView.prototype.setFloat64 = makeSetter(exports.Float64Array);\n exports.DataView = exports.DataView || DataView;\n })();\n });\n var require_weakmap_polyfill = __commonJS(function(exports) {\n (function(self2) {\n 'use strict';\n if (self2.WeakMap) {\n return;\n }\n var hasOwnProperty2 = Object.prototype.hasOwnProperty;\n var hasDefine = Object.defineProperty && function() {\n try {\n return Object.defineProperty({}, 'x', {\n value: 1\n }).x === 1;\n } catch (e) {}\n }();\n var defineProperty = function defineProperty(object, name, value) {\n if (hasDefine) {\n Object.defineProperty(object, name, {\n configurable: true,\n writable: true,\n value: value\n });\n } else {\n object[name] = value;\n }\n };\n self2.WeakMap = function() {\n function WeakMap2() {\n if (this === void 0) {\n throw new TypeError('Constructor WeakMap requires \\'new\\'');\n }\n defineProperty(this, '_id', genId('_WeakMap'));\n if (arguments.length > 0) {\n throw new TypeError('WeakMap iterable is not supported');\n }\n }\n defineProperty(WeakMap2.prototype, 'delete', function(key) {\n checkInstance(this, 'delete');\n if (!isObject(key)) {\n return false;\n }\n var entry = key[this._id];\n if (entry && entry[0] === key) {\n delete key[this._id];\n return true;\n }\n return false;\n });\n defineProperty(WeakMap2.prototype, 'get', function(key) {\n checkInstance(this, 'get');\n if (!isObject(key)) {\n return void 0;\n }\n var entry = key[this._id];\n if (entry && entry[0] === key) {\n return entry[1];\n }\n return void 0;\n });\n defineProperty(WeakMap2.prototype, 'has', function(key) {\n checkInstance(this, 'has');\n if (!isObject(key)) {\n return false;\n }\n var entry = key[this._id];\n if (entry && entry[0] === key) {\n return true;\n }\n return false;\n });\n defineProperty(WeakMap2.prototype, 'set', function(key, value) {\n checkInstance(this, 'set');\n if (!isObject(key)) {\n throw new TypeError('Invalid value used as weak map key');\n }\n var entry = key[this._id];\n if (entry && entry[0] === key) {\n entry[1] = value;\n return this;\n }\n defineProperty(key, this._id, [ key, value ]);\n return this;\n });\n function checkInstance(x, methodName) {\n if (!isObject(x) || !hasOwnProperty2.call(x, '_id')) {\n throw new TypeError(methodName + ' method called on incompatible receiver ' + _typeof(x));\n }\n }\n function genId(prefix) {\n return prefix + '_' + rand() + '.' + rand();\n }\n function rand() {\n return Math.random().toString().substring(2);\n }\n defineProperty(WeakMap2, '_polyfill', true);\n return WeakMap2;\n }();\n function isObject(x) {\n return Object(x) === x;\n }\n })(typeof globalThis !== 'undefined' ? globalThis : typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : exports);\n });\n var require_global_this = __commonJS(function(exports, module) {\n 'use strict';\n var check = function check(it) {\n return it && it.Math === Math && it;\n };\n module.exports = check((typeof globalThis === 'undefined' ? 'undefined' : _typeof(globalThis)) == 'object' && globalThis) || check((typeof window === 'undefined' ? 'undefined' : _typeof(window)) == 'object' && window) || check((typeof self === 'undefined' ? 'undefined' : _typeof(self)) == 'object' && self) || check((typeof global === 'undefined' ? 'undefined' : _typeof(global)) == 'object' && global) || check(_typeof(exports) == 'object' && exports) || function() {\n return this;\n }() || Function('return this')();\n });\n var require_fails = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = function(exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n };\n });\n var require_function_bind_native = __commonJS(function(exports, module) {\n 'use strict';\n var fails = require_fails();\n module.exports = !fails(function() {\n var test = function() {}.bind();\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n });\n });\n var require_function_apply = __commonJS(function(exports, module) {\n 'use strict';\n var NATIVE_BIND = require_function_bind_native();\n var FunctionPrototype = Function.prototype;\n var apply = FunctionPrototype.apply;\n var call = FunctionPrototype.call;\n module.exports = (typeof Reflect === 'undefined' ? 'undefined' : _typeof(Reflect)) == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function() {\n return call.apply(apply, arguments);\n });\n });\n var require_function_uncurry_this = __commonJS(function(exports, module) {\n 'use strict';\n var NATIVE_BIND = require_function_bind_native();\n var FunctionPrototype = Function.prototype;\n var call = FunctionPrototype.call;\n var uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n module.exports = NATIVE_BIND ? uncurryThisWithBind : function(fn) {\n return function() {\n return call.apply(fn, arguments);\n };\n };\n });\n var require_classof_raw = __commonJS(function(exports, module) {\n 'use strict';\n var uncurryThis = require_function_uncurry_this();\n var toString = uncurryThis({}.toString);\n var stringSlice = uncurryThis(''.slice);\n module.exports = function(it) {\n return stringSlice(toString(it), 8, -1);\n };\n });\n var require_function_uncurry_this_clause = __commonJS(function(exports, module) {\n 'use strict';\n var classofRaw = require_classof_raw();\n var uncurryThis = require_function_uncurry_this();\n module.exports = function(fn) {\n if (classofRaw(fn) === 'Function') {\n return uncurryThis(fn);\n }\n };\n });\n var require_is_callable = __commonJS(function(exports, module) {\n 'use strict';\n var documentAll = (typeof document === 'undefined' ? 'undefined' : _typeof(document)) == 'object' && document.all;\n module.exports = typeof documentAll == 'undefined' && documentAll !== void 0 ? function(argument) {\n return typeof argument == 'function' || argument === documentAll;\n } : function(argument) {\n return typeof argument == 'function';\n };\n });\n var require_descriptors = __commonJS(function(exports, module) {\n 'use strict';\n var fails = require_fails();\n module.exports = !fails(function() {\n return Object.defineProperty({}, 1, {\n get: function get() {\n return 7;\n }\n })[1] !== 7;\n });\n });\n var require_function_call = __commonJS(function(exports, module) {\n 'use strict';\n var NATIVE_BIND = require_function_bind_native();\n var call = Function.prototype.call;\n module.exports = NATIVE_BIND ? call.bind(call) : function() {\n return call.apply(call, arguments);\n };\n });\n var require_object_property_is_enumerable = __commonJS(function(exports) {\n 'use strict';\n var $propertyIsEnumerable = {}.propertyIsEnumerable;\n var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n var NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({\n 1: 2\n }, 1);\n exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n } : $propertyIsEnumerable;\n });\n var require_create_property_descriptor = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = function(bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n };\n });\n var require_indexed_object = __commonJS(function(exports, module) {\n 'use strict';\n var uncurryThis = require_function_uncurry_this();\n var fails = require_fails();\n var classof = require_classof_raw();\n var $Object = Object;\n var split = uncurryThis(''.split);\n module.exports = fails(function() {\n return !$Object('z').propertyIsEnumerable(0);\n }) ? function(it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n } : $Object;\n });\n var require_is_null_or_undefined = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = function(it) {\n return it === null || it === void 0;\n };\n });\n var require_require_object_coercible = __commonJS(function(exports, module) {\n 'use strict';\n var isNullOrUndefined = require_is_null_or_undefined();\n var $TypeError = TypeError;\n module.exports = function(it) {\n if (isNullOrUndefined(it)) {\n throw new $TypeError('Can\\'t call method on ' + it);\n }\n return it;\n };\n });\n var require_to_indexed_object = __commonJS(function(exports, module) {\n 'use strict';\n var IndexedObject = require_indexed_object();\n var requireObjectCoercible = require_require_object_coercible();\n module.exports = function(it) {\n return IndexedObject(requireObjectCoercible(it));\n };\n });\n var require_is_object = __commonJS(function(exports, module) {\n 'use strict';\n var isCallable = require_is_callable();\n module.exports = function(it) {\n return _typeof(it) == 'object' ? it !== null : isCallable(it);\n };\n });\n var require_path = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = {};\n });\n var require_get_built_in = __commonJS(function(exports, module) {\n 'use strict';\n var path = require_path();\n var globalThis2 = require_global_this();\n var isCallable = require_is_callable();\n var aFunction = function aFunction(variable) {\n return isCallable(variable) ? variable : void 0;\n };\n module.exports = function(namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(globalThis2[namespace]) : path[namespace] && path[namespace][method] || globalThis2[namespace] && globalThis2[namespace][method];\n };\n });\n var require_object_is_prototype_of = __commonJS(function(exports, module) {\n 'use strict';\n var uncurryThis = require_function_uncurry_this();\n module.exports = uncurryThis({}.isPrototypeOf);\n });\n var require_environment_user_agent = __commonJS(function(exports, module) {\n 'use strict';\n var globalThis2 = require_global_this();\n var navigator = globalThis2.navigator;\n var userAgent = navigator && navigator.userAgent;\n module.exports = userAgent ? String(userAgent) : '';\n });\n var require_environment_v8_version = __commonJS(function(exports, module) {\n 'use strict';\n var globalThis2 = require_global_this();\n var userAgent = require_environment_user_agent();\n var process2 = globalThis2.process;\n var Deno = globalThis2.Deno;\n var versions = process2 && process2.versions || Deno && Deno.version;\n var v8 = versions && versions.v8;\n var match;\n var version;\n if (v8) {\n match = v8.split('.');\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n }\n if (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) {\n version = +match[1];\n }\n }\n }\n module.exports = version;\n });\n var require_symbol_constructor_detection = __commonJS(function(exports, module) {\n 'use strict';\n var V8_VERSION = require_environment_v8_version();\n var fails = require_fails();\n var globalThis2 = require_global_this();\n var $String = globalThis2.String;\n module.exports = !!Object.getOwnPropertySymbols && !fails(function() {\n var symbol = Symbol('symbol detection');\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) || !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n });\n });\n var require_use_symbol_as_uid = __commonJS(function(exports, module) {\n 'use strict';\n var NATIVE_SYMBOL = require_symbol_constructor_detection();\n module.exports = NATIVE_SYMBOL && !Symbol.sham && _typeof(Symbol.iterator) == 'symbol';\n });\n var require_is_symbol = __commonJS(function(exports, module) {\n 'use strict';\n var getBuiltIn = require_get_built_in();\n var isCallable = require_is_callable();\n var isPrototypeOf = require_object_is_prototype_of();\n var USE_SYMBOL_AS_UID = require_use_symbol_as_uid();\n var $Object = Object;\n module.exports = USE_SYMBOL_AS_UID ? function(it) {\n return _typeof(it) == 'symbol';\n } : function(it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n };\n });\n var require_try_to_string = __commonJS(function(exports, module) {\n 'use strict';\n var $String = String;\n module.exports = function(argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n };\n });\n var require_a_callable = __commonJS(function(exports, module) {\n 'use strict';\n var isCallable = require_is_callable();\n var tryToString = require_try_to_string();\n var $TypeError = TypeError;\n module.exports = function(argument) {\n if (isCallable(argument)) {\n return argument;\n }\n throw new $TypeError(tryToString(argument) + ' is not a function');\n };\n });\n var require_get_method = __commonJS(function(exports, module) {\n 'use strict';\n var aCallable = require_a_callable();\n var isNullOrUndefined = require_is_null_or_undefined();\n module.exports = function(V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? void 0 : aCallable(func);\n };\n });\n var require_ordinary_to_primitive = __commonJS(function(exports, module) {\n 'use strict';\n var call = require_function_call();\n var isCallable = require_is_callable();\n var isObject = require_is_object();\n var $TypeError = TypeError;\n module.exports = function(input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) {\n return val;\n }\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) {\n return val;\n }\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) {\n return val;\n }\n throw new $TypeError('Can\\'t convert object to primitive value');\n };\n });\n var require_is_pure = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = true;\n });\n var require_define_global_property = __commonJS(function(exports, module) {\n 'use strict';\n var globalThis2 = require_global_this();\n var defineProperty = Object.defineProperty;\n module.exports = function(key, value) {\n try {\n defineProperty(globalThis2, key, {\n value: value,\n configurable: true,\n writable: true\n });\n } catch (error) {\n globalThis2[key] = value;\n }\n return value;\n };\n });\n var require_shared_store = __commonJS(function(exports, module) {\n 'use strict';\n var IS_PURE = require_is_pure();\n var globalThis2 = require_global_this();\n var defineGlobalProperty = require_define_global_property();\n var SHARED = '__core-js_shared__';\n var store = module.exports = globalThis2[SHARED] || defineGlobalProperty(SHARED, {});\n (store.versions || (store.versions = [])).push({\n version: '3.44.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '\\xa9 2014-2025 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.44.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n });\n });\n var require_shared = __commonJS(function(exports, module) {\n 'use strict';\n var store = require_shared_store();\n module.exports = function(key, value) {\n return store[key] || (store[key] = value || {});\n };\n });\n var require_to_object = __commonJS(function(exports, module) {\n 'use strict';\n var requireObjectCoercible = require_require_object_coercible();\n var $Object = Object;\n module.exports = function(argument) {\n return $Object(requireObjectCoercible(argument));\n };\n });\n var require_has_own_property = __commonJS(function(exports, module) {\n 'use strict';\n var uncurryThis = require_function_uncurry_this();\n var toObject = require_to_object();\n var hasOwnProperty2 = uncurryThis({}.hasOwnProperty);\n module.exports = Object.hasOwn || function hasOwn2(it, key) {\n return hasOwnProperty2(toObject(it), key);\n };\n });\n var require_uid = __commonJS(function(exports, module) {\n 'use strict';\n var uncurryThis = require_function_uncurry_this();\n var id = 0;\n var postfix = Math.random();\n var toString = uncurryThis(1.1.toString);\n module.exports = function(key) {\n return 'Symbol(' + (key === void 0 ? '' : key) + ')_' + toString(++id + postfix, 36);\n };\n });\n var require_well_known_symbol = __commonJS(function(exports, module) {\n 'use strict';\n var globalThis2 = require_global_this();\n var shared = require_shared();\n var hasOwn2 = require_has_own_property();\n var uid = require_uid();\n var NATIVE_SYMBOL = require_symbol_constructor_detection();\n var USE_SYMBOL_AS_UID = require_use_symbol_as_uid();\n var Symbol2 = globalThis2.Symbol;\n var WellKnownSymbolsStore = shared('wks');\n var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol2['for'] || Symbol2 : Symbol2 && Symbol2.withoutSetter || uid;\n module.exports = function(name) {\n if (!hasOwn2(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn2(Symbol2, name) ? Symbol2[name] : createWellKnownSymbol('Symbol.' + name);\n }\n return WellKnownSymbolsStore[name];\n };\n });\n var require_to_primitive = __commonJS(function(exports, module) {\n 'use strict';\n var call = require_function_call();\n var isObject = require_is_object();\n var isSymbol = require_is_symbol();\n var getMethod = require_get_method();\n var ordinaryToPrimitive = require_ordinary_to_primitive();\n var wellKnownSymbol = require_well_known_symbol();\n var $TypeError = TypeError;\n var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n module.exports = function(input, pref) {\n if (!isObject(input) || isSymbol(input)) {\n return input;\n }\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === void 0) {\n pref = 'default';\n }\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) {\n return result;\n }\n throw new $TypeError('Can\\'t convert object to primitive value');\n }\n if (pref === void 0) {\n pref = 'number';\n }\n return ordinaryToPrimitive(input, pref);\n };\n });\n var require_to_property_key = __commonJS(function(exports, module) {\n 'use strict';\n var toPrimitive = require_to_primitive();\n var isSymbol = require_is_symbol();\n module.exports = function(argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n };\n });\n var require_document_create_element = __commonJS(function(exports, module) {\n 'use strict';\n var globalThis2 = require_global_this();\n var isObject = require_is_object();\n var document2 = globalThis2.document;\n var EXISTS = isObject(document2) && isObject(document2.createElement);\n module.exports = function(it) {\n return EXISTS ? document2.createElement(it) : {};\n };\n });\n var require_ie8_dom_define = __commonJS(function(exports, module) {\n 'use strict';\n var DESCRIPTORS = require_descriptors();\n var fails = require_fails();\n var createElement = require_document_create_element();\n module.exports = !DESCRIPTORS && !fails(function() {\n return Object.defineProperty(createElement('div'), 'a', {\n get: function get() {\n return 7;\n }\n }).a !== 7;\n });\n });\n var require_object_get_own_property_descriptor = __commonJS(function(exports) {\n 'use strict';\n var DESCRIPTORS = require_descriptors();\n var call = require_function_call();\n var propertyIsEnumerableModule = require_object_property_is_enumerable();\n var createPropertyDescriptor = require_create_property_descriptor();\n var toIndexedObject = require_to_indexed_object();\n var toPropertyKey = require_to_property_key();\n var hasOwn2 = require_has_own_property();\n var IE8_DOM_DEFINE = require_ie8_dom_define();\n var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n exports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) {\n try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) {}\n }\n if (hasOwn2(O, P)) {\n return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n }\n };\n });\n var require_is_forced = __commonJS(function(exports, module) {\n 'use strict';\n var fails = require_fails();\n var isCallable = require_is_callable();\n var replacement = /#|\\.prototype\\./;\n var isForced = function isForced(feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true : value === NATIVE ? false : isCallable(detection) ? fails(detection) : !!detection;\n };\n var normalize = isForced.normalize = function(string) {\n return String(string).replace(replacement, '.').toLowerCase();\n };\n var data = isForced.data = {};\n var NATIVE = isForced.NATIVE = 'N';\n var POLYFILL = isForced.POLYFILL = 'P';\n module.exports = isForced;\n });\n var require_function_bind_context = __commonJS(function(exports, module) {\n 'use strict';\n var uncurryThis = require_function_uncurry_this_clause();\n var aCallable = require_a_callable();\n var NATIVE_BIND = require_function_bind_native();\n var bind = uncurryThis(uncurryThis.bind);\n module.exports = function(fn, that) {\n aCallable(fn);\n return that === void 0 ? fn : NATIVE_BIND ? bind(fn, that) : function() {\n return fn.apply(that, arguments);\n };\n };\n });\n var require_v8_prototype_define_bug = __commonJS(function(exports, module) {\n 'use strict';\n var DESCRIPTORS = require_descriptors();\n var fails = require_fails();\n module.exports = DESCRIPTORS && fails(function() {\n return Object.defineProperty(function() {}, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n });\n });\n var require_an_object = __commonJS(function(exports, module) {\n 'use strict';\n var isObject = require_is_object();\n var $String = String;\n var $TypeError = TypeError;\n module.exports = function(argument) {\n if (isObject(argument)) {\n return argument;\n }\n throw new $TypeError($String(argument) + ' is not an object');\n };\n });\n var require_object_define_property = __commonJS(function(exports) {\n 'use strict';\n var DESCRIPTORS = require_descriptors();\n var IE8_DOM_DEFINE = require_ie8_dom_define();\n var V8_PROTOTYPE_DEFINE_BUG = require_v8_prototype_define_bug();\n var anObject = require_an_object();\n var toPropertyKey = require_to_property_key();\n var $TypeError = TypeError;\n var $defineProperty = Object.defineProperty;\n var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n var ENUMERABLE = 'enumerable';\n var CONFIGURABLE = 'configurable';\n var WRITABLE = 'writable';\n exports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n }\n return $defineProperty(O, P, Attributes);\n } : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) {\n try {\n return $defineProperty(O, P, Attributes);\n } catch (error) {}\n }\n if ('get' in Attributes || 'set' in Attributes) {\n throw new $TypeError('Accessors not supported');\n }\n if ('value' in Attributes) {\n O[P] = Attributes.value;\n }\n return O;\n };\n });\n var require_create_non_enumerable_property = __commonJS(function(exports, module) {\n 'use strict';\n var DESCRIPTORS = require_descriptors();\n var definePropertyModule = require_object_define_property();\n var createPropertyDescriptor = require_create_property_descriptor();\n module.exports = DESCRIPTORS ? function(object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n } : function(object, key, value) {\n object[key] = value;\n return object;\n };\n });\n var require_export = __commonJS(function(exports, module) {\n 'use strict';\n var globalThis2 = require_global_this();\n var apply = require_function_apply();\n var uncurryThis = require_function_uncurry_this_clause();\n var isCallable = require_is_callable();\n var getOwnPropertyDescriptor = require_object_get_own_property_descriptor().f;\n var isForced = require_is_forced();\n var path = require_path();\n var bind = require_function_bind_context();\n var createNonEnumerableProperty = require_create_non_enumerable_property();\n var hasOwn2 = require_has_own_property();\n require_shared_store();\n var wrapConstructor = function wrapConstructor(NativeConstructor) {\n var _Wrapper = function Wrapper(a2, b2, c4) {\n if (this instanceof _Wrapper) {\n switch (arguments.length) {\n case 0:\n return new NativeConstructor();\n\n case 1:\n return new NativeConstructor(a2);\n\n case 2:\n return new NativeConstructor(a2, b2);\n }\n return new NativeConstructor(a2, b2, c4);\n }\n return apply(NativeConstructor, this, arguments);\n };\n _Wrapper.prototype = NativeConstructor.prototype;\n return _Wrapper;\n };\n module.exports = function(options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var PROTO = options.proto;\n var nativeSource = GLOBAL ? globalThis2 : STATIC ? globalThis2[TARGET] : globalThis2[TARGET] && globalThis2[TARGET].prototype;\n var target = GLOBAL ? path : path[TARGET] || createNonEnumerableProperty(path, TARGET, {})[TARGET];\n var targetPrototype = target.prototype;\n var FORCED, USE_NATIVE, VIRTUAL_PROTOTYPE;\n var key, sourceProperty, targetProperty, nativeProperty, resultProperty, descriptor;\n for (key in source) {\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n USE_NATIVE = !FORCED && nativeSource && hasOwn2(nativeSource, key);\n targetProperty = target[key];\n if (USE_NATIVE) {\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(nativeSource, key);\n nativeProperty = descriptor && descriptor.value;\n } else {\n nativeProperty = nativeSource[key];\n }\n }\n sourceProperty = USE_NATIVE && nativeProperty ? nativeProperty : source[key];\n if (!FORCED && !PROTO && _typeof(targetProperty) == _typeof(sourceProperty)) {\n continue;\n }\n if (options.bind && USE_NATIVE) {\n resultProperty = bind(sourceProperty, globalThis2);\n } else if (options.wrap && USE_NATIVE) {\n resultProperty = wrapConstructor(sourceProperty);\n } else if (PROTO && isCallable(sourceProperty)) {\n resultProperty = uncurryThis(sourceProperty);\n } else {\n resultProperty = sourceProperty;\n }\n if (options.sham || sourceProperty && sourceProperty.sham || targetProperty && targetProperty.sham) {\n createNonEnumerableProperty(resultProperty, 'sham', true);\n }\n createNonEnumerableProperty(target, key, resultProperty);\n if (PROTO) {\n VIRTUAL_PROTOTYPE = TARGET + 'Prototype';\n if (!hasOwn2(path, VIRTUAL_PROTOTYPE)) {\n createNonEnumerableProperty(path, VIRTUAL_PROTOTYPE, {});\n }\n createNonEnumerableProperty(path[VIRTUAL_PROTOTYPE], key, sourceProperty);\n if (options.real && targetPrototype && (FORCED || !targetPrototype[key])) {\n createNonEnumerableProperty(targetPrototype, key, sourceProperty);\n }\n }\n }\n };\n });\n var require_es_object_has_own = __commonJS(function() {\n 'use strict';\n var $ = require_export();\n var hasOwn2 = require_has_own_property();\n $({\n target: 'Object',\n stat: true\n }, {\n hasOwn: hasOwn2\n });\n });\n var require_has_own = __commonJS(function(exports, module) {\n 'use strict';\n require_es_object_has_own();\n var path = require_path();\n module.exports = path.Object.hasOwn;\n });\n var require_has_own2 = __commonJS(function(exports, module) {\n 'use strict';\n var parent = require_has_own();\n module.exports = parent;\n });\n var require_has_own3 = __commonJS(function(exports, module) {\n 'use strict';\n var parent = require_has_own2();\n module.exports = parent;\n });\n var require_shared_key = __commonJS(function(exports, module) {\n 'use strict';\n var shared = require_shared();\n var uid = require_uid();\n var keys = shared('keys');\n module.exports = function(key) {\n return keys[key] || (keys[key] = uid(key));\n };\n });\n var require_correct_prototype_getter = __commonJS(function(exports, module) {\n 'use strict';\n var fails = require_fails();\n module.exports = !fails(function() {\n function F() {}\n F.prototype.constructor = null;\n return Object.getPrototypeOf(new F()) !== F.prototype;\n });\n });\n var require_object_get_prototype_of = __commonJS(function(exports, module) {\n 'use strict';\n var hasOwn2 = require_has_own_property();\n var isCallable = require_is_callable();\n var toObject = require_to_object();\n var sharedKey = require_shared_key();\n var CORRECT_PROTOTYPE_GETTER = require_correct_prototype_getter();\n var IE_PROTO = sharedKey('IE_PROTO');\n var $Object = Object;\n var ObjectPrototype = $Object.prototype;\n module.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function(O) {\n var object = toObject(O);\n if (hasOwn2(object, IE_PROTO)) {\n return object[IE_PROTO];\n }\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n }\n return object instanceof $Object ? ObjectPrototype : null;\n };\n });\n var require_math_trunc = __commonJS(function(exports, module) {\n 'use strict';\n var ceil = Math.ceil;\n var floor = Math.floor;\n module.exports = Math.trunc || function trunc(x) {\n var n2 = +x;\n return (n2 > 0 ? floor : ceil)(n2);\n };\n });\n var require_to_integer_or_infinity = __commonJS(function(exports, module) {\n 'use strict';\n var trunc = require_math_trunc();\n module.exports = function(argument) {\n var number = +argument;\n return number !== number || number === 0 ? 0 : trunc(number);\n };\n });\n var require_to_absolute_index = __commonJS(function(exports, module) {\n 'use strict';\n var toIntegerOrInfinity = require_to_integer_or_infinity();\n var max2 = Math.max;\n var min = Math.min;\n module.exports = function(index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max2(integer + length, 0) : min(integer, length);\n };\n });\n var require_to_length = __commonJS(function(exports, module) {\n 'use strict';\n var toIntegerOrInfinity = require_to_integer_or_infinity();\n var min = Math.min;\n module.exports = function(argument) {\n var len = toIntegerOrInfinity(argument);\n return len > 0 ? min(len, 9007199254740991) : 0;\n };\n });\n var require_length_of_array_like = __commonJS(function(exports, module) {\n 'use strict';\n var toLength = require_to_length();\n module.exports = function(obj) {\n return toLength(obj.length);\n };\n });\n var require_array_includes = __commonJS(function(exports, module) {\n 'use strict';\n var toIndexedObject = require_to_indexed_object();\n var toAbsoluteIndex = require_to_absolute_index();\n var lengthOfArrayLike = require_length_of_array_like();\n var createMethod = function createMethod(IS_INCLUDES) {\n return function($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n if (length === 0) {\n return !IS_INCLUDES && -1;\n }\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n if (IS_INCLUDES && el !== el) {\n while (length > index) {\n value = O[index++];\n if (value !== value) {\n return true;\n }\n }\n } else {\n for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) {\n return IS_INCLUDES || index || 0;\n }\n }\n }\n return !IS_INCLUDES && -1;\n };\n };\n module.exports = {\n includes: createMethod(true),\n indexOf: createMethod(false)\n };\n });\n var require_hidden_keys = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = {};\n });\n var require_object_keys_internal = __commonJS(function(exports, module) {\n 'use strict';\n var uncurryThis = require_function_uncurry_this();\n var hasOwn2 = require_has_own_property();\n var toIndexedObject = require_to_indexed_object();\n var indexOf = require_array_includes().indexOf;\n var hiddenKeys = require_hidden_keys();\n var push = uncurryThis([].push);\n module.exports = function(object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) {\n !hasOwn2(hiddenKeys, key) && hasOwn2(O, key) && push(result, key);\n }\n while (names.length > i) {\n if (hasOwn2(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n }\n return result;\n };\n });\n var require_enum_bug_keys = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = [ 'constructor', 'hasOwnProperty', 'isPrototypeOf', 'propertyIsEnumerable', 'toLocaleString', 'toString', 'valueOf' ];\n });\n var require_object_keys = __commonJS(function(exports, module) {\n 'use strict';\n var internalObjectKeys = require_object_keys_internal();\n var enumBugKeys = require_enum_bug_keys();\n module.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n };\n });\n var require_object_to_array = __commonJS(function(exports, module) {\n 'use strict';\n var DESCRIPTORS = require_descriptors();\n var fails = require_fails();\n var uncurryThis = require_function_uncurry_this();\n var objectGetPrototypeOf = require_object_get_prototype_of();\n var objectKeys = require_object_keys();\n var toIndexedObject = require_to_indexed_object();\n var $propertyIsEnumerable = require_object_property_is_enumerable().f;\n var propertyIsEnumerable = uncurryThis($propertyIsEnumerable);\n var push = uncurryThis([].push);\n var IE_BUG = DESCRIPTORS && fails(function() {\n var O = Object.create(null);\n O[2] = 2;\n return !propertyIsEnumerable(O, 2);\n });\n var createMethod = function createMethod(TO_ENTRIES) {\n return function(it) {\n var O = toIndexedObject(it);\n var keys = objectKeys(O);\n var IE_WORKAROUND = IE_BUG && objectGetPrototypeOf(O) === null;\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) {\n key = keys[i++];\n if (!DESCRIPTORS || (IE_WORKAROUND ? key in O : propertyIsEnumerable(O, key))) {\n push(result, TO_ENTRIES ? [ key, O[key] ] : O[key]);\n }\n }\n return result;\n };\n };\n module.exports = {\n entries: createMethod(true),\n values: createMethod(false)\n };\n });\n var require_es_object_values = __commonJS(function() {\n 'use strict';\n var $ = require_export();\n var $values = require_object_to_array().values;\n $({\n target: 'Object',\n stat: true\n }, {\n values: function values2(O) {\n return $values(O);\n }\n });\n });\n var require_values = __commonJS(function(exports, module) {\n 'use strict';\n require_es_object_values();\n var path = require_path();\n module.exports = path.Object.values;\n });\n var require_values2 = __commonJS(function(exports, module) {\n 'use strict';\n var parent = require_values();\n module.exports = parent;\n });\n var require_values3 = __commonJS(function(exports, module) {\n 'use strict';\n var parent = require_values2();\n module.exports = parent;\n });\n var require_to_string_tag_support = __commonJS(function(exports, module) {\n 'use strict';\n var wellKnownSymbol = require_well_known_symbol();\n var TO_STRING_TAG = wellKnownSymbol('toStringTag');\n var test = {};\n test[TO_STRING_TAG] = 'z';\n module.exports = String(test) === '[object z]';\n });\n var require_classof = __commonJS(function(exports, module) {\n 'use strict';\n var TO_STRING_TAG_SUPPORT = require_to_string_tag_support();\n var isCallable = require_is_callable();\n var classofRaw = require_classof_raw();\n var wellKnownSymbol = require_well_known_symbol();\n var TO_STRING_TAG = wellKnownSymbol('toStringTag');\n var $Object = Object;\n var CORRECT_ARGUMENTS = classofRaw(function() {\n return arguments;\n }()) === 'Arguments';\n var tryGet = function tryGet(it, key) {\n try {\n return it[key];\n } catch (error) {}\n };\n module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function(it) {\n var O, tag, result;\n return it === void 0 ? 'Undefined' : it === null ? 'Null' : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag : CORRECT_ARGUMENTS ? classofRaw(O) : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n };\n });\n var require_to_string = __commonJS(function(exports, module) {\n 'use strict';\n var classof = require_classof();\n var $String = String;\n module.exports = function(argument) {\n if (classof(argument) === 'Symbol') {\n throw new TypeError('Cannot convert a Symbol value to a string');\n }\n return $String(argument);\n };\n });\n var require_string_multibyte = __commonJS(function(exports, module) {\n 'use strict';\n var uncurryThis = require_function_uncurry_this();\n var toIntegerOrInfinity = require_to_integer_or_infinity();\n var toString = require_to_string();\n var requireObjectCoercible = require_require_object_coercible();\n var charAt = uncurryThis(''.charAt);\n var charCodeAt = uncurryThis(''.charCodeAt);\n var stringSlice = uncurryThis(''.slice);\n var createMethod = function createMethod(CONVERT_TO_STRING) {\n return function($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) {\n return CONVERT_TO_STRING ? '' : void 0;\n }\n first = charCodeAt(S, position);\n return first < 55296 || first > 56319 || position + 1 === size || (second = charCodeAt(S, position + 1)) < 56320 || second > 57343 ? CONVERT_TO_STRING ? charAt(S, position) : first : CONVERT_TO_STRING ? stringSlice(S, position, position + 2) : (first - 55296 << 10) + (second - 56320) + 65536;\n };\n };\n module.exports = {\n codeAt: createMethod(false),\n charAt: createMethod(true)\n };\n });\n var require_weak_map_basic_detection = __commonJS(function(exports, module) {\n 'use strict';\n var globalThis2 = require_global_this();\n var isCallable = require_is_callable();\n var WeakMap2 = globalThis2.WeakMap;\n module.exports = isCallable(WeakMap2) && /native code/.test(String(WeakMap2));\n });\n var require_internal_state = __commonJS(function(exports, module) {\n 'use strict';\n var NATIVE_WEAK_MAP = require_weak_map_basic_detection();\n var globalThis2 = require_global_this();\n var isObject = require_is_object();\n var createNonEnumerableProperty = require_create_non_enumerable_property();\n var hasOwn2 = require_has_own_property();\n var shared = require_shared_store();\n var sharedKey = require_shared_key();\n var hiddenKeys = require_hidden_keys();\n var OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\n var TypeError2 = globalThis2.TypeError;\n var WeakMap2 = globalThis2.WeakMap;\n var set2;\n var get2;\n var has;\n var enforce = function enforce(it) {\n return has(it) ? get2(it) : set2(it, {});\n };\n var getterFor = function getterFor(TYPE) {\n return function(it) {\n var state;\n if (!isObject(it) || (state = get2(it)).type !== TYPE) {\n throw new TypeError2('Incompatible receiver, ' + TYPE + ' required');\n }\n return state;\n };\n };\n if (NATIVE_WEAK_MAP || shared.state) {\n store = shared.state || (shared.state = new WeakMap2());\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n set2 = function set2(it, metadata) {\n if (store.has(it)) {\n throw new TypeError2(OBJECT_ALREADY_INITIALIZED);\n }\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get2 = function get2(it) {\n return store.get(it) || {};\n };\n has = function has(it) {\n return store.has(it);\n };\n } else {\n STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set2 = function set2(it, metadata) {\n if (hasOwn2(it, STATE)) {\n throw new TypeError2(OBJECT_ALREADY_INITIALIZED);\n }\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get2 = function get2(it) {\n return hasOwn2(it, STATE) ? it[STATE] : {};\n };\n has = function has(it) {\n return hasOwn2(it, STATE);\n };\n }\n var store;\n var STATE;\n module.exports = {\n set: set2,\n get: get2,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n };\n });\n var require_function_name = __commonJS(function(exports, module) {\n 'use strict';\n var DESCRIPTORS = require_descriptors();\n var hasOwn2 = require_has_own_property();\n var FunctionPrototype = Function.prototype;\n var getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n var EXISTS = hasOwn2(FunctionPrototype, 'name');\n var PROPER = EXISTS && function something() {}.name === 'something';\n var CONFIGURABLE = EXISTS && (!DESCRIPTORS || DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable);\n module.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n };\n });\n var require_object_define_properties = __commonJS(function(exports) {\n 'use strict';\n var DESCRIPTORS = require_descriptors();\n var V8_PROTOTYPE_DEFINE_BUG = require_v8_prototype_define_bug();\n var definePropertyModule = require_object_define_property();\n var anObject = require_an_object();\n var toIndexedObject = require_to_indexed_object();\n var objectKeys = require_object_keys();\n exports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) {\n definePropertyModule.f(O, key = keys[index++], props[key]);\n }\n return O;\n };\n });\n var require_html = __commonJS(function(exports, module) {\n 'use strict';\n var getBuiltIn = require_get_built_in();\n module.exports = getBuiltIn('document', 'documentElement');\n });\n var require_object_create = __commonJS(function(exports, module) {\n 'use strict';\n var anObject = require_an_object();\n var definePropertiesModule = require_object_define_properties();\n var enumBugKeys = require_enum_bug_keys();\n var hiddenKeys = require_hidden_keys();\n var html = require_html();\n var documentCreateElement = require_document_create_element();\n var sharedKey = require_shared_key();\n var GT = '>';\n var LT = '<';\n var PROTOTYPE = 'prototype';\n var SCRIPT = 'script';\n var IE_PROTO = sharedKey('IE_PROTO');\n var EmptyConstructor = function EmptyConstructor() {};\n var scriptTag = function scriptTag(content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n };\n var NullProtoObjectViaActiveX = function NullProtoObjectViaActiveX(activeXDocument2) {\n activeXDocument2.write(scriptTag(''));\n activeXDocument2.close();\n var temp = activeXDocument2.parentWindow.Object;\n activeXDocument2 = null;\n return temp;\n };\n var NullProtoObjectViaIFrame = function NullProtoObjectViaIFrame() {\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n };\n var activeXDocument;\n var _NullProtoObject = function NullProtoObject() {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) {}\n _NullProtoObject = typeof document != 'undefined' ? document.domain && activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame() : NullProtoObjectViaActiveX(activeXDocument);\n var length = enumBugKeys.length;\n while (length--) {\n delete _NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n }\n return _NullProtoObject();\n };\n hiddenKeys[IE_PROTO] = true;\n module.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n result[IE_PROTO] = O;\n } else {\n result = _NullProtoObject();\n }\n return Properties === void 0 ? result : definePropertiesModule.f(result, Properties);\n };\n });\n var require_define_built_in = __commonJS(function(exports, module) {\n 'use strict';\n var createNonEnumerableProperty = require_create_non_enumerable_property();\n module.exports = function(target, key, value, options) {\n if (options && options.enumerable) {\n target[key] = value;\n } else {\n createNonEnumerableProperty(target, key, value);\n }\n return target;\n };\n });\n var require_iterators_core = __commonJS(function(exports, module) {\n 'use strict';\n var fails = require_fails();\n var isCallable = require_is_callable();\n var isObject = require_is_object();\n var create = require_object_create();\n var getPrototypeOf = require_object_get_prototype_of();\n var defineBuiltIn = require_define_built_in();\n var wellKnownSymbol = require_well_known_symbol();\n var IS_PURE = require_is_pure();\n var ITERATOR = wellKnownSymbol('iterator');\n var BUGGY_SAFARI_ITERATORS = false;\n var IteratorPrototype;\n var PrototypeOfArrayIteratorPrototype;\n var arrayIterator;\n if ([].keys) {\n arrayIterator = [].keys();\n if (!('next' in arrayIterator)) {\n BUGGY_SAFARI_ITERATORS = true;\n } else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) {\n IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n }\n }\n var NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function() {\n var test = {};\n return IteratorPrototype[ITERATOR].call(test) !== test;\n });\n if (NEW_ITERATOR_PROTOTYPE) {\n IteratorPrototype = {};\n } else if (IS_PURE) {\n IteratorPrototype = create(IteratorPrototype);\n }\n if (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function() {\n return this;\n });\n }\n module.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n };\n });\n var require_object_to_string = __commonJS(function(exports, module) {\n 'use strict';\n var TO_STRING_TAG_SUPPORT = require_to_string_tag_support();\n var classof = require_classof();\n module.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n };\n });\n var require_set_to_string_tag = __commonJS(function(exports, module) {\n 'use strict';\n var TO_STRING_TAG_SUPPORT = require_to_string_tag_support();\n var defineProperty = require_object_define_property().f;\n var createNonEnumerableProperty = require_create_non_enumerable_property();\n var hasOwn2 = require_has_own_property();\n var toString = require_object_to_string();\n var wellKnownSymbol = require_well_known_symbol();\n var TO_STRING_TAG = wellKnownSymbol('toStringTag');\n module.exports = function(it, TAG, STATIC, SET_METHOD) {\n var target = STATIC ? it : it && it.prototype;\n if (target) {\n if (!hasOwn2(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, {\n configurable: true,\n value: TAG\n });\n }\n if (SET_METHOD && !TO_STRING_TAG_SUPPORT) {\n createNonEnumerableProperty(target, 'toString', toString);\n }\n }\n };\n });\n var require_iterators = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = {};\n });\n var require_iterator_create_constructor = __commonJS(function(exports, module) {\n 'use strict';\n var IteratorPrototype = require_iterators_core().IteratorPrototype;\n var create = require_object_create();\n var createPropertyDescriptor = require_create_property_descriptor();\n var setToStringTag = require_set_to_string_tag();\n var Iterators = require_iterators();\n var returnThis = function returnThis() {\n return this;\n };\n module.exports = function(IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, {\n next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next)\n });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n };\n });\n var require_function_uncurry_this_accessor = __commonJS(function(exports, module) {\n 'use strict';\n var uncurryThis = require_function_uncurry_this();\n var aCallable = require_a_callable();\n module.exports = function(object, key, method) {\n try {\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) {}\n };\n });\n var require_is_possible_prototype = __commonJS(function(exports, module) {\n 'use strict';\n var isObject = require_is_object();\n module.exports = function(argument) {\n return isObject(argument) || argument === null;\n };\n });\n var require_a_possible_prototype = __commonJS(function(exports, module) {\n 'use strict';\n var isPossiblePrototype = require_is_possible_prototype();\n var $String = String;\n var $TypeError = TypeError;\n module.exports = function(argument) {\n if (isPossiblePrototype(argument)) {\n return argument;\n }\n throw new $TypeError('Can\\'t set ' + $String(argument) + ' as a prototype');\n };\n });\n var require_object_set_prototype_of = __commonJS(function(exports, module) {\n 'use strict';\n var uncurryThisAccessor = require_function_uncurry_this_accessor();\n var isObject = require_is_object();\n var requireObjectCoercible = require_require_object_coercible();\n var aPossiblePrototype = require_a_possible_prototype();\n module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function() {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) {}\n return function setPrototypeOf(O, proto) {\n requireObjectCoercible(O);\n aPossiblePrototype(proto);\n if (!isObject(O)) {\n return O;\n }\n if (CORRECT_SETTER) {\n setter(O, proto);\n } else {\n O.__proto__ = proto;\n }\n return O;\n };\n }() : void 0);\n });\n var require_iterator_define = __commonJS(function(exports, module) {\n 'use strict';\n var $ = require_export();\n var call = require_function_call();\n var IS_PURE = require_is_pure();\n var FunctionName = require_function_name();\n var isCallable = require_is_callable();\n var createIteratorConstructor = require_iterator_create_constructor();\n var getPrototypeOf = require_object_get_prototype_of();\n var setPrototypeOf = require_object_set_prototype_of();\n var setToStringTag = require_set_to_string_tag();\n var createNonEnumerableProperty = require_create_non_enumerable_property();\n var defineBuiltIn = require_define_built_in();\n var wellKnownSymbol = require_well_known_symbol();\n var Iterators = require_iterators();\n var IteratorsCore = require_iterators_core();\n var PROPER_FUNCTION_NAME = FunctionName.PROPER;\n var CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\n var IteratorPrototype = IteratorsCore.IteratorPrototype;\n var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\n var ITERATOR = wellKnownSymbol('iterator');\n var KEYS = 'keys';\n var VALUES = 'values';\n var ENTRIES = 'entries';\n var returnThis = function returnThis() {\n return this;\n };\n module.exports = function(Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n var getIterationMethod = function getIterationMethod(KIND) {\n if (KIND === DEFAULT && defaultIterator) {\n return defaultIterator;\n }\n if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) {\n return IterablePrototype[KIND];\n }\n switch (KIND) {\n case KEYS:\n return function keys() {\n return new IteratorConstructor(this, KIND);\n };\n\n case VALUES:\n return function values2() {\n return new IteratorConstructor(this, KIND);\n };\n\n case ENTRIES:\n return function entries() {\n return new IteratorConstructor(this, KIND);\n };\n }\n return function() {\n return new IteratorConstructor(this);\n };\n };\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR] || IterablePrototype['@@iterator'] || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) {\n Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n }\n if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values2() {\n return call(nativeIterator, this);\n };\n }\n }\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) {\n for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n }\n } else {\n $({\n target: NAME,\n proto: true,\n forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME\n }, methods);\n }\n }\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, {\n name: DEFAULT\n });\n }\n Iterators[NAME] = defaultIterator;\n return methods;\n };\n });\n var require_create_iter_result_object = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = function(value, done) {\n return {\n value: value,\n done: done\n };\n };\n });\n var require_es_string_iterator = __commonJS(function() {\n 'use strict';\n var charAt = require_string_multibyte().charAt;\n var toString = require_to_string();\n var InternalStateModule = require_internal_state();\n var defineIterator = require_iterator_define();\n var createIterResultObject = require_create_iter_result_object();\n var STRING_ITERATOR = 'String Iterator';\n var setInternalState = InternalStateModule.set;\n var getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n defineIterator(String, 'String', function(iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n }, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) {\n return createIterResultObject(void 0, true);\n }\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n });\n });\n var require_iterator_close = __commonJS(function(exports, module) {\n 'use strict';\n var call = require_function_call();\n var anObject = require_an_object();\n var getMethod = require_get_method();\n module.exports = function(iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') {\n throw value;\n }\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') {\n throw value;\n }\n if (innerError) {\n throw innerResult;\n }\n anObject(innerResult);\n return value;\n };\n });\n var require_call_with_safe_iteration_closing = __commonJS(function(exports, module) {\n 'use strict';\n var anObject = require_an_object();\n var iteratorClose = require_iterator_close();\n module.exports = function(iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n };\n });\n var require_is_array_iterator_method = __commonJS(function(exports, module) {\n 'use strict';\n var wellKnownSymbol = require_well_known_symbol();\n var Iterators = require_iterators();\n var ITERATOR = wellKnownSymbol('iterator');\n var ArrayPrototype = Array.prototype;\n module.exports = function(it) {\n return it !== void 0 && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n };\n });\n var require_inspect_source = __commonJS(function(exports, module) {\n 'use strict';\n var uncurryThis = require_function_uncurry_this();\n var isCallable = require_is_callable();\n var store = require_shared_store();\n var functionToString = uncurryThis(Function.toString);\n if (!isCallable(store.inspectSource)) {\n store.inspectSource = function(it) {\n return functionToString(it);\n };\n }\n module.exports = store.inspectSource;\n });\n var require_is_constructor = __commonJS(function(exports, module) {\n 'use strict';\n var uncurryThis = require_function_uncurry_this();\n var fails = require_fails();\n var isCallable = require_is_callable();\n var classof = require_classof();\n var getBuiltIn = require_get_built_in();\n var inspectSource = require_inspect_source();\n var noop3 = function noop3() {};\n var construct = getBuiltIn('Reflect', 'construct');\n var constructorRegExp = /^\\s*(?:class|function)\\b/;\n var exec = uncurryThis(constructorRegExp.exec);\n var INCORRECT_TO_STRING = !constructorRegExp.test(noop3);\n var isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) {\n return false;\n }\n try {\n construct(noop3, [], argument);\n return true;\n } catch (error) {\n return false;\n }\n };\n var isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) {\n return false;\n }\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction':\n return false;\n }\n try {\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n };\n isConstructorLegacy.sham = true;\n module.exports = !construct || fails(function() {\n var called;\n return isConstructorModern(isConstructorModern.call) || !isConstructorModern(Object) || !isConstructorModern(function() {\n called = true;\n }) || called;\n }) ? isConstructorLegacy : isConstructorModern;\n });\n var require_create_property = __commonJS(function(exports, module) {\n 'use strict';\n var DESCRIPTORS = require_descriptors();\n var definePropertyModule = require_object_define_property();\n var createPropertyDescriptor = require_create_property_descriptor();\n module.exports = function(object, key, value) {\n if (DESCRIPTORS) {\n definePropertyModule.f(object, key, createPropertyDescriptor(0, value));\n } else {\n object[key] = value;\n }\n };\n });\n var require_get_iterator_method = __commonJS(function(exports, module) {\n 'use strict';\n var classof = require_classof();\n var getMethod = require_get_method();\n var isNullOrUndefined = require_is_null_or_undefined();\n var Iterators = require_iterators();\n var wellKnownSymbol = require_well_known_symbol();\n var ITERATOR = wellKnownSymbol('iterator');\n module.exports = function(it) {\n if (!isNullOrUndefined(it)) {\n return getMethod(it, ITERATOR) || getMethod(it, '@@iterator') || Iterators[classof(it)];\n }\n };\n });\n var require_get_iterator = __commonJS(function(exports, module) {\n 'use strict';\n var call = require_function_call();\n var aCallable = require_a_callable();\n var anObject = require_an_object();\n var tryToString = require_try_to_string();\n var getIteratorMethod = require_get_iterator_method();\n var $TypeError = TypeError;\n module.exports = function(argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) {\n return anObject(call(iteratorMethod, argument));\n }\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n };\n });\n var require_array_from = __commonJS(function(exports, module) {\n 'use strict';\n var bind = require_function_bind_context();\n var call = require_function_call();\n var toObject = require_to_object();\n var callWithSafeIterationClosing = require_call_with_safe_iteration_closing();\n var isArrayIteratorMethod = require_is_array_iterator_method();\n var isConstructor = require_is_constructor();\n var lengthOfArrayLike = require_length_of_array_like();\n var createProperty = require_create_property();\n var getIterator = require_get_iterator();\n var getIteratorMethod = require_get_iterator_method();\n var $Array = Array;\n module.exports = function from(arrayLike) {\n var O = toObject(arrayLike);\n var IS_CONSTRUCTOR = isConstructor(this);\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : void 0;\n var mapping = mapfn !== void 0;\n if (mapping) {\n mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : void 0);\n }\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n if (iteratorMethod && !(this === $Array && isArrayIteratorMethod(iteratorMethod))) {\n result = IS_CONSTRUCTOR ? new this() : [];\n iterator = getIterator(O, iteratorMethod);\n next = iterator.next;\n for (;!(step = call(next, iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [ step.value, index ], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = lengthOfArrayLike(O);\n result = IS_CONSTRUCTOR ? new this(length) : $Array(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n };\n });\n var require_check_correctness_of_iteration = __commonJS(function(exports, module) {\n 'use strict';\n var wellKnownSymbol = require_well_known_symbol();\n var ITERATOR = wellKnownSymbol('iterator');\n var SAFE_CLOSING = false;\n try {\n called = 0;\n iteratorWithReturn = {\n next: function next() {\n return {\n done: !!called++\n };\n },\n return: function _return() {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function() {\n return this;\n };\n Array.from(iteratorWithReturn, function() {\n throw 2;\n });\n } catch (error) {}\n var called;\n var iteratorWithReturn;\n module.exports = function(exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) {\n return false;\n }\n } catch (error) {\n return false;\n }\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function() {\n return {\n next: function next() {\n return {\n done: ITERATION_SUPPORT = true\n };\n }\n };\n };\n exec(object);\n } catch (error) {}\n return ITERATION_SUPPORT;\n };\n });\n var require_es_array_from = __commonJS(function() {\n 'use strict';\n var $ = require_export();\n var from = require_array_from();\n var checkCorrectnessOfIteration = require_check_correctness_of_iteration();\n var INCORRECT_ITERATION = !checkCorrectnessOfIteration(function(iterable) {\n Array.from(iterable);\n });\n $({\n target: 'Array',\n stat: true,\n forced: INCORRECT_ITERATION\n }, {\n from: from\n });\n });\n var require_from = __commonJS(function(exports, module) {\n 'use strict';\n require_es_string_iterator();\n require_es_array_from();\n var path = require_path();\n module.exports = path.Array.from;\n });\n var require_from2 = __commonJS(function(exports, module) {\n 'use strict';\n var parent = require_from();\n module.exports = parent;\n });\n var require_from3 = __commonJS(function(exports, module) {\n 'use strict';\n var parent = require_from2();\n module.exports = parent;\n });\n var require_utils = __commonJS(function(exports) {\n 'use strict';\n Object.defineProperty(exports, '__esModule', {\n value: true\n });\n function isIdentStart(c4) {\n return c4 >= 'a' && c4 <= 'z' || c4 >= 'A' && c4 <= 'Z' || c4 === '-' || c4 === '_';\n }\n exports.isIdentStart = isIdentStart;\n function isIdent(c4) {\n return c4 >= 'a' && c4 <= 'z' || c4 >= 'A' && c4 <= 'Z' || c4 >= '0' && c4 <= '9' || c4 === '-' || c4 === '_';\n }\n exports.isIdent = isIdent;\n function isHex(c4) {\n return c4 >= 'a' && c4 <= 'f' || c4 >= 'A' && c4 <= 'F' || c4 >= '0' && c4 <= '9';\n }\n exports.isHex = isHex;\n function escapeIdentifier(s) {\n var len = s.length;\n var result = '';\n var i = 0;\n while (i < len) {\n var chr = s.charAt(i);\n if (exports.identSpecialChars[chr]) {\n result += '\\\\' + chr;\n } else {\n if (!(chr === '_' || chr === '-' || chr >= 'A' && chr <= 'Z' || chr >= 'a' && chr <= 'z' || i !== 0 && chr >= '0' && chr <= '9')) {\n var charCode = chr.charCodeAt(0);\n if ((charCode & 63488) === 55296) {\n var extraCharCode = s.charCodeAt(i++);\n if ((charCode & 64512) !== 55296 || (extraCharCode & 64512) !== 56320) {\n throw Error('UCS-2(decode): illegal sequence');\n }\n charCode = ((charCode & 1023) << 10) + (extraCharCode & 1023) + 65536;\n }\n result += '\\\\' + charCode.toString(16) + ' ';\n } else {\n result += chr;\n }\n }\n i++;\n }\n return result;\n }\n exports.escapeIdentifier = escapeIdentifier;\n function escapeStr(s) {\n var len = s.length;\n var result = '';\n var i = 0;\n var replacement;\n while (i < len) {\n var chr = s.charAt(i);\n if (chr === '\"') {\n chr = '\\\\\"';\n } else if (chr === '\\\\') {\n chr = '\\\\\\\\';\n } else if ((replacement = exports.strReplacementsRev[chr]) !== void 0) {\n chr = replacement;\n }\n result += chr;\n i++;\n }\n return '\"' + result + '\"';\n }\n exports.escapeStr = escapeStr;\n exports.identSpecialChars = {\n '!': true,\n '\"': true,\n '#': true,\n $: true,\n '%': true,\n '&': true,\n '\\'': true,\n '(': true,\n ')': true,\n '*': true,\n '+': true,\n ',': true,\n '.': true,\n '/': true,\n ';': true,\n '<': true,\n '=': true,\n '>': true,\n '?': true,\n '@': true,\n '[': true,\n '\\\\': true,\n ']': true,\n '^': true,\n '`': true,\n '{': true,\n '|': true,\n '}': true,\n '~': true\n };\n exports.strReplacementsRev = {\n '\\n': '\\\\n',\n '\\r': '\\\\r',\n '\\t': '\\\\t',\n '\\f': '\\\\f',\n '\\v': '\\\\v'\n };\n exports.singleQuoteEscapeChars = {\n n: '\\n',\n r: '\\r',\n t: '\\t',\n f: '\\f',\n '\\\\': '\\\\',\n '\\'': '\\''\n };\n exports.doubleQuotesEscapeChars = {\n n: '\\n',\n r: '\\r',\n t: '\\t',\n f: '\\f',\n '\\\\': '\\\\',\n '\"': '\"'\n };\n });\n var require_parser_context = __commonJS(function(exports) {\n 'use strict';\n Object.defineProperty(exports, '__esModule', {\n value: true\n });\n var utils_1 = require_utils();\n function parseCssSelector(str, pos, pseudos, attrEqualityMods, ruleNestingOperators, substitutesEnabled) {\n var l = str.length;\n var chr = '';\n function getStr(quote, escapeTable) {\n var result = '';\n pos++;\n chr = str.charAt(pos);\n while (pos < l) {\n if (chr === quote) {\n pos++;\n return result;\n } else if (chr === '\\\\') {\n pos++;\n chr = str.charAt(pos);\n var esc = void 0;\n if (chr === quote) {\n result += quote;\n } else if ((esc = escapeTable[chr]) !== void 0) {\n result += esc;\n } else if (utils_1.isHex(chr)) {\n var hex = chr;\n pos++;\n chr = str.charAt(pos);\n while (utils_1.isHex(chr)) {\n hex += chr;\n pos++;\n chr = str.charAt(pos);\n }\n if (chr === ' ') {\n pos++;\n chr = str.charAt(pos);\n }\n result += String.fromCharCode(parseInt(hex, 16));\n continue;\n } else {\n result += chr;\n }\n } else {\n result += chr;\n }\n pos++;\n chr = str.charAt(pos);\n }\n return result;\n }\n function getIdent() {\n var result = '';\n chr = str.charAt(pos);\n while (pos < l) {\n if (utils_1.isIdent(chr)) {\n result += chr;\n } else if (chr === '\\\\') {\n pos++;\n if (pos >= l) {\n throw Error('Expected symbol but end of file reached.');\n }\n chr = str.charAt(pos);\n if (utils_1.identSpecialChars[chr]) {\n result += chr;\n } else if (utils_1.isHex(chr)) {\n var hex = chr;\n pos++;\n chr = str.charAt(pos);\n while (utils_1.isHex(chr)) {\n hex += chr;\n pos++;\n chr = str.charAt(pos);\n }\n if (chr === ' ') {\n pos++;\n chr = str.charAt(pos);\n }\n result += String.fromCharCode(parseInt(hex, 16));\n continue;\n } else {\n result += chr;\n }\n } else {\n return result;\n }\n pos++;\n chr = str.charAt(pos);\n }\n return result;\n }\n function skipWhitespace() {\n chr = str.charAt(pos);\n var result = false;\n while (chr === ' ' || chr === '\\t' || chr === '\\n' || chr === '\\r' || chr === '\\f') {\n result = true;\n pos++;\n chr = str.charAt(pos);\n }\n return result;\n }\n function parse3() {\n var res = parseSelector();\n if (pos < l) {\n throw Error('Rule expected but \"' + str.charAt(pos) + '\" found.');\n }\n return res;\n }\n function parseSelector() {\n var selector = parseSingleSelector();\n if (!selector) {\n return null;\n }\n var res = selector;\n chr = str.charAt(pos);\n while (chr === ',') {\n pos++;\n skipWhitespace();\n if (res.type !== 'selectors') {\n res = {\n type: 'selectors',\n selectors: [ selector ]\n };\n }\n selector = parseSingleSelector();\n if (!selector) {\n throw Error('Rule expected after \",\".');\n }\n res.selectors.push(selector);\n }\n return res;\n }\n function parseSingleSelector() {\n skipWhitespace();\n var selector = {\n type: 'ruleSet'\n };\n var rule = parseRule();\n if (!rule) {\n return null;\n }\n var currentRule = selector;\n while (rule) {\n rule.type = 'rule';\n currentRule.rule = rule;\n currentRule = rule;\n skipWhitespace();\n chr = str.charAt(pos);\n if (pos >= l || chr === ',' || chr === ')') {\n break;\n }\n if (ruleNestingOperators[chr]) {\n var op = chr;\n pos++;\n skipWhitespace();\n rule = parseRule();\n if (!rule) {\n throw Error('Rule expected after \"' + op + '\".');\n }\n rule.nestingOperator = op;\n } else {\n rule = parseRule();\n if (rule) {\n rule.nestingOperator = null;\n }\n }\n }\n return selector;\n }\n function parseRule() {\n var rule = null;\n while (pos < l) {\n chr = str.charAt(pos);\n if (chr === '*') {\n pos++;\n (rule = rule || {}).tagName = '*';\n } else if (utils_1.isIdentStart(chr) || chr === '\\\\') {\n (rule = rule || {}).tagName = getIdent();\n } else if (chr === '.') {\n pos++;\n rule = rule || {};\n (rule.classNames = rule.classNames || []).push(getIdent());\n } else if (chr === '#') {\n pos++;\n (rule = rule || {}).id = getIdent();\n } else if (chr === '[') {\n pos++;\n skipWhitespace();\n var attr = {\n name: getIdent()\n };\n skipWhitespace();\n if (chr === ']') {\n pos++;\n } else {\n var operator = '';\n if (attrEqualityMods[chr]) {\n operator = chr;\n pos++;\n chr = str.charAt(pos);\n }\n if (pos >= l) {\n throw Error('Expected \"=\" but end of file reached.');\n }\n if (chr !== '=') {\n throw Error('Expected \"=\" but \"' + chr + '\" found.');\n }\n attr.operator = operator + '=';\n pos++;\n skipWhitespace();\n var attrValue = '';\n attr.valueType = 'string';\n if (chr === '\"') {\n attrValue = getStr('\"', utils_1.doubleQuotesEscapeChars);\n } else if (chr === '\\'') {\n attrValue = getStr('\\'', utils_1.singleQuoteEscapeChars);\n } else if (substitutesEnabled && chr === '$') {\n pos++;\n attrValue = getIdent();\n attr.valueType = 'substitute';\n } else {\n while (pos < l) {\n if (chr === ']') {\n break;\n }\n attrValue += chr;\n pos++;\n chr = str.charAt(pos);\n }\n attrValue = attrValue.trim();\n }\n skipWhitespace();\n if (pos >= l) {\n throw Error('Expected \"]\" but end of file reached.');\n }\n if (chr !== ']') {\n throw Error('Expected \"]\" but \"' + chr + '\" found.');\n }\n pos++;\n attr.value = attrValue;\n }\n rule = rule || {};\n (rule.attrs = rule.attrs || []).push(attr);\n } else if (chr === ':') {\n pos++;\n var pseudoName = getIdent();\n var pseudo = {\n name: pseudoName\n };\n if (chr === '(') {\n pos++;\n var value = '';\n skipWhitespace();\n if (pseudos[pseudoName] === 'selector') {\n pseudo.valueType = 'selector';\n value = parseSelector();\n } else {\n pseudo.valueType = pseudos[pseudoName] || 'string';\n if (chr === '\"') {\n value = getStr('\"', utils_1.doubleQuotesEscapeChars);\n } else if (chr === '\\'') {\n value = getStr('\\'', utils_1.singleQuoteEscapeChars);\n } else if (substitutesEnabled && chr === '$') {\n pos++;\n value = getIdent();\n pseudo.valueType = 'substitute';\n } else {\n while (pos < l) {\n if (chr === ')') {\n break;\n }\n value += chr;\n pos++;\n chr = str.charAt(pos);\n }\n value = value.trim();\n }\n skipWhitespace();\n }\n if (pos >= l) {\n throw Error('Expected \")\" but end of file reached.');\n }\n if (chr !== ')') {\n throw Error('Expected \")\" but \"' + chr + '\" found.');\n }\n pos++;\n pseudo.value = value;\n }\n rule = rule || {};\n (rule.pseudos = rule.pseudos || []).push(pseudo);\n } else {\n break;\n }\n }\n return rule;\n }\n return parse3();\n }\n exports.parseCssSelector = parseCssSelector;\n });\n var require_render = __commonJS(function(exports) {\n 'use strict';\n Object.defineProperty(exports, '__esModule', {\n value: true\n });\n var utils_1 = require_utils();\n function renderEntity(entity) {\n var res = '';\n switch (entity.type) {\n case 'ruleSet':\n var currentEntity = entity.rule;\n var parts = [];\n while (currentEntity) {\n if (currentEntity.nestingOperator) {\n parts.push(currentEntity.nestingOperator);\n }\n parts.push(renderEntity(currentEntity));\n currentEntity = currentEntity.rule;\n }\n res = parts.join(' ');\n break;\n\n case 'selectors':\n res = entity.selectors.map(renderEntity).join(', ');\n break;\n\n case 'rule':\n if (entity.tagName) {\n if (entity.tagName === '*') {\n res = '*';\n } else {\n res = utils_1.escapeIdentifier(entity.tagName);\n }\n }\n if (entity.id) {\n res += '#' + utils_1.escapeIdentifier(entity.id);\n }\n if (entity.classNames) {\n res += entity.classNames.map(function(cn) {\n return '.' + utils_1.escapeIdentifier(cn);\n }).join('');\n }\n if (entity.attrs) {\n res += entity.attrs.map(function(attr) {\n if ('operator' in attr) {\n if (attr.valueType === 'substitute') {\n return '[' + utils_1.escapeIdentifier(attr.name) + attr.operator + '$' + attr.value + ']';\n } else {\n return '[' + utils_1.escapeIdentifier(attr.name) + attr.operator + utils_1.escapeStr(attr.value) + ']';\n }\n } else {\n return '[' + utils_1.escapeIdentifier(attr.name) + ']';\n }\n }).join('');\n }\n if (entity.pseudos) {\n res += entity.pseudos.map(function(pseudo) {\n if (pseudo.valueType) {\n if (pseudo.valueType === 'selector') {\n return ':' + utils_1.escapeIdentifier(pseudo.name) + '(' + renderEntity(pseudo.value) + ')';\n } else if (pseudo.valueType === 'substitute') {\n return ':' + utils_1.escapeIdentifier(pseudo.name) + '($' + pseudo.value + ')';\n } else if (pseudo.valueType === 'numeric') {\n return ':' + utils_1.escapeIdentifier(pseudo.name) + '(' + pseudo.value + ')';\n } else {\n return ':' + utils_1.escapeIdentifier(pseudo.name) + '(' + utils_1.escapeIdentifier(pseudo.value) + ')';\n }\n } else {\n return ':' + utils_1.escapeIdentifier(pseudo.name);\n }\n }).join('');\n }\n break;\n\n default:\n throw Error('Unknown entity type: \"' + entity.type + '\".');\n }\n return res;\n }\n exports.renderEntity = renderEntity;\n });\n var require_lib = __commonJS(function(exports) {\n 'use strict';\n Object.defineProperty(exports, '__esModule', {\n value: true\n });\n var parser_context_1 = require_parser_context();\n var render_1 = require_render();\n var CssSelectorParser2 = function() {\n function CssSelectorParser3() {\n this.pseudos = {};\n this.attrEqualityMods = {};\n this.ruleNestingOperators = {};\n this.substitutesEnabled = false;\n }\n CssSelectorParser3.prototype.registerSelectorPseudos = function() {\n var pseudos = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n pseudos[_i] = arguments[_i];\n }\n for (var _a = 0, pseudos_1 = pseudos; _a < pseudos_1.length; _a++) {\n var pseudo = pseudos_1[_a];\n this.pseudos[pseudo] = 'selector';\n }\n return this;\n };\n CssSelectorParser3.prototype.unregisterSelectorPseudos = function() {\n var pseudos = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n pseudos[_i] = arguments[_i];\n }\n for (var _a = 0, pseudos_2 = pseudos; _a < pseudos_2.length; _a++) {\n var pseudo = pseudos_2[_a];\n delete this.pseudos[pseudo];\n }\n return this;\n };\n CssSelectorParser3.prototype.registerNumericPseudos = function() {\n var pseudos = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n pseudos[_i] = arguments[_i];\n }\n for (var _a = 0, pseudos_3 = pseudos; _a < pseudos_3.length; _a++) {\n var pseudo = pseudos_3[_a];\n this.pseudos[pseudo] = 'numeric';\n }\n return this;\n };\n CssSelectorParser3.prototype.unregisterNumericPseudos = function() {\n var pseudos = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n pseudos[_i] = arguments[_i];\n }\n for (var _a = 0, pseudos_4 = pseudos; _a < pseudos_4.length; _a++) {\n var pseudo = pseudos_4[_a];\n delete this.pseudos[pseudo];\n }\n return this;\n };\n CssSelectorParser3.prototype.registerNestingOperators = function() {\n var operators = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n operators[_i] = arguments[_i];\n }\n for (var _a = 0, operators_1 = operators; _a < operators_1.length; _a++) {\n var operator = operators_1[_a];\n this.ruleNestingOperators[operator] = true;\n }\n return this;\n };\n CssSelectorParser3.prototype.unregisterNestingOperators = function() {\n var operators = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n operators[_i] = arguments[_i];\n }\n for (var _a = 0, operators_2 = operators; _a < operators_2.length; _a++) {\n var operator = operators_2[_a];\n delete this.ruleNestingOperators[operator];\n }\n return this;\n };\n CssSelectorParser3.prototype.registerAttrEqualityMods = function() {\n var mods = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n mods[_i] = arguments[_i];\n }\n for (var _a = 0, mods_1 = mods; _a < mods_1.length; _a++) {\n var mod = mods_1[_a];\n this.attrEqualityMods[mod] = true;\n }\n return this;\n };\n CssSelectorParser3.prototype.unregisterAttrEqualityMods = function() {\n var mods = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n mods[_i] = arguments[_i];\n }\n for (var _a = 0, mods_2 = mods; _a < mods_2.length; _a++) {\n var mod = mods_2[_a];\n delete this.attrEqualityMods[mod];\n }\n return this;\n };\n CssSelectorParser3.prototype.enableSubstitutes = function() {\n this.substitutesEnabled = true;\n return this;\n };\n CssSelectorParser3.prototype.disableSubstitutes = function() {\n this.substitutesEnabled = false;\n return this;\n };\n CssSelectorParser3.prototype.parse = function(str) {\n return parser_context_1.parseCssSelector(str, 0, this.pseudos, this.attrEqualityMods, this.ruleNestingOperators, this.substitutesEnabled);\n };\n CssSelectorParser3.prototype.render = function(path) {\n return render_1.renderEntity(path).trim();\n };\n return CssSelectorParser3;\n }();\n exports.CssSelectorParser = CssSelectorParser2;\n });\n var require_doT = __commonJS(function(exports, module) {\n (function() {\n 'use strict';\n var doT2 = {\n name: 'doT',\n version: '1.1.1',\n templateSettings: {\n evaluate: /\\{\\{([\\s\\S]+?(\\}?)+)\\}\\}/g,\n interpolate: /\\{\\{=([\\s\\S]+?)\\}\\}/g,\n encode: /\\{\\{!([\\s\\S]+?)\\}\\}/g,\n use: /\\{\\{#([\\s\\S]+?)\\}\\}/g,\n useParams: /(^|[^\\w$])def(?:\\.|\\[[\\'\\\"])([\\w$\\.]+)(?:[\\'\\\"]\\])?\\s*\\:\\s*([\\w$\\.]+|\\\"[^\\\"]+\\\"|\\'[^\\']+\\'|\\{[^\\}]+\\})/g,\n define: /\\{\\{##\\s*([\\w\\.$]+)\\s*(\\:|=)([\\s\\S]+?)#\\}\\}/g,\n defineParams: /^\\s*([\\w$]+):([\\s\\S]+)/,\n conditional: /\\{\\{\\?(\\?)?\\s*([\\s\\S]*?)\\s*\\}\\}/g,\n iterate: /\\{\\{~\\s*(?:\\}\\}|([\\s\\S]+?)\\s*\\:\\s*([\\w$]+)\\s*(?:\\:\\s*([\\w$]+))?\\s*\\}\\})/g,\n varname: 'it',\n strip: true,\n append: true,\n selfcontained: false,\n doNotSkipEncoded: false\n },\n template: void 0,\n compile: void 0,\n log: true\n };\n (function() {\n if ((typeof globalThis === 'undefined' ? 'undefined' : _typeof(globalThis)) === 'object') {\n return;\n }\n try {\n Object.defineProperty(Object.prototype, '__magic__', {\n get: function get() {\n return this;\n },\n configurable: true\n });\n __magic__.globalThis = __magic__;\n delete Object.prototype.__magic__;\n } catch (e) {\n window.globalThis = function() {\n if (typeof self !== 'undefined') {\n return self;\n }\n if (typeof window !== 'undefined') {\n return window;\n }\n if (typeof global !== 'undefined') {\n return global;\n }\n if (typeof this !== 'undefined') {\n return this;\n }\n throw new Error('Unable to locate global `this`');\n }();\n }\n })();\n doT2.encodeHTMLSource = function(doNotSkipEncoded) {\n var encodeHTMLRules = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n '\\'': ''',\n '/': '/'\n }, matchHTML = doNotSkipEncoded ? /[&<>\"'\\/]/g : /&(?!#?\\w+;)|<|>|\"|'|\\//g;\n return function(code) {\n return code ? code.toString().replace(matchHTML, function(m3) {\n return encodeHTMLRules[m3] || m3;\n }) : '';\n };\n };\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = doT2;\n } else if (typeof define === 'function' && define.amd) {\n define(function() {\n return doT2;\n });\n } else {\n globalThis.doT = doT2;\n }\n var startend = {\n append: {\n start: '\\'+(',\n end: ')+\\'',\n startencode: '\\'+encodeHTML('\n },\n split: {\n start: '\\';out+=(',\n end: ');out+=\\'',\n startencode: '\\';out+=encodeHTML('\n }\n }, skip = /$^/;\n function resolveDefs(c4, block, def) {\n return (typeof block === 'string' ? block : block.toString()).replace(c4.define || skip, function(m3, code, assign, value) {\n if (code.indexOf('def.') === 0) {\n code = code.substring(4);\n }\n if (!(code in def)) {\n if (assign === ':') {\n if (c4.defineParams) {\n value.replace(c4.defineParams, function(m4, param, v) {\n def[code] = {\n arg: param,\n text: v\n };\n });\n }\n if (!(code in def)) {\n def[code] = value;\n }\n } else {\n new Function('def', 'def[\\'' + code + '\\']=' + value)(def);\n }\n }\n return '';\n }).replace(c4.use || skip, function(m3, code) {\n if (c4.useParams) {\n code = code.replace(c4.useParams, function(m4, s, d2, param) {\n if (def[d2] && def[d2].arg && param) {\n var rw = (d2 + ':' + param).replace(/'|\\\\/g, '_');\n def.__exp = def.__exp || {};\n def.__exp[rw] = def[d2].text.replace(new RegExp('(^|[^\\\\w$])' + def[d2].arg + '([^\\\\w$])', 'g'), '$1' + param + '$2');\n return s + 'def.__exp[\\'' + rw + '\\']';\n }\n });\n }\n var v = new Function('def', 'return ' + code)(def);\n return v ? resolveDefs(c4, v, def) : v;\n });\n }\n function unescape(code) {\n return code.replace(/\\\\('|\\\\)/g, '$1').replace(/[\\r\\t\\n]/g, ' ');\n }\n doT2.template = function(tmpl, c4, def) {\n c4 = c4 || doT2.templateSettings;\n var cse = c4.append ? startend.append : startend.split, needhtmlencode, sid = 0, indv, str = c4.use || c4.define ? resolveDefs(c4, tmpl, def || {}) : tmpl;\n str = ('var out=\\'' + (c4.strip ? str.replace(/(^|\\r|\\n)\\t* +| +\\t*(\\r|\\n|$)/g, ' ').replace(/\\r|\\n|\\t|\\/\\*[\\s\\S]*?\\*\\//g, '') : str).replace(/'|\\\\/g, '\\\\$&').replace(c4.interpolate || skip, function(m3, code) {\n return cse.start + unescape(code) + cse.end;\n }).replace(c4.encode || skip, function(m3, code) {\n needhtmlencode = true;\n return cse.startencode + unescape(code) + cse.end;\n }).replace(c4.conditional || skip, function(m3, elsecase, code) {\n return elsecase ? code ? '\\';}else if(' + unescape(code) + '){out+=\\'' : '\\';}else{out+=\\'' : code ? '\\';if(' + unescape(code) + '){out+=\\'' : '\\';}out+=\\'';\n }).replace(c4.iterate || skip, function(m3, iterate, vname, iname) {\n if (!iterate) {\n return '\\';} } out+=\\'';\n }\n sid += 1;\n indv = iname || 'i' + sid;\n iterate = unescape(iterate);\n return '\\';var arr' + sid + '=' + iterate + ';if(arr' + sid + '){var ' + vname + ',' + indv + '=-1,l' + sid + '=arr' + sid + '.length-1;while(' + indv + '<l' + sid + '){' + vname + '=arr' + sid + '[' + indv + '+=1];out+=\\'';\n }).replace(c4.evaluate || skip, function(m3, code) {\n return '\\';' + unescape(code) + 'out+=\\'';\n }) + '\\';return out;').replace(/\\n/g, '\\\\n').replace(/\\t/g, '\\\\t').replace(/\\r/g, '\\\\r').replace(/(\\s|;|\\}|^|\\{)out\\+='';/g, '$1').replace(/\\+''/g, '');\n if (needhtmlencode) {\n if (!c4.selfcontained && globalThis && !globalThis._encodeHTML) {\n globalThis._encodeHTML = doT2.encodeHTMLSource(c4.doNotSkipEncoded);\n }\n str = 'var encodeHTML = typeof _encodeHTML !== \\'undefined\\' ? _encodeHTML : (' + doT2.encodeHTMLSource.toString() + '(' + (c4.doNotSkipEncoded || '') + '));' + str;\n }\n try {\n return new Function(c4.varname, str);\n } catch (e) {\n if (typeof console !== 'undefined') {\n console.log('Could not create a template function: ' + str);\n }\n throw e;\n }\n };\n doT2.compile = function(tmpl, def) {\n return doT2.template(tmpl, null, def);\n };\n })();\n });\n var require_noop = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = function() {};\n });\n var require_is_value = __commonJS(function(exports, module) {\n 'use strict';\n var _undefined = require_noop()();\n module.exports = function(val) {\n return val !== _undefined && val !== null;\n };\n });\n var require_normalize_options = __commonJS(function(exports, module) {\n 'use strict';\n var isValue = require_is_value();\n var forEach = Array.prototype.forEach;\n var create = Object.create;\n var process2 = function process2(src, obj) {\n var key;\n for (key in src) {\n obj[key] = src[key];\n }\n };\n module.exports = function(opts1) {\n var result = create(null);\n forEach.call(arguments, function(options) {\n if (!isValue(options)) {\n return;\n }\n process2(Object(options), result);\n });\n return result;\n };\n });\n var require_is_implemented = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = function() {\n var sign = Math.sign;\n if (typeof sign !== 'function') {\n return false;\n }\n return sign(10) === 1 && sign(-20) === -1;\n };\n });\n var require_shim = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = function(value) {\n value = Number(value);\n if (isNaN(value) || value === 0) {\n return value;\n }\n return value > 0 ? 1 : -1;\n };\n });\n var require_sign = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = require_is_implemented()() ? Math.sign : require_shim();\n });\n var require_to_integer = __commonJS(function(exports, module) {\n 'use strict';\n var sign = require_sign();\n var abs = Math.abs;\n var floor = Math.floor;\n module.exports = function(value) {\n if (isNaN(value)) {\n return 0;\n }\n value = Number(value);\n if (value === 0 || !isFinite(value)) {\n return value;\n }\n return sign(value) * floor(abs(value));\n };\n });\n var require_to_pos_integer = __commonJS(function(exports, module) {\n 'use strict';\n var toInteger = require_to_integer();\n var max2 = Math.max;\n module.exports = function(value) {\n return max2(0, toInteger(value));\n };\n });\n var require_resolve_length = __commonJS(function(exports, module) {\n 'use strict';\n var toPosInt = require_to_pos_integer();\n module.exports = function(optsLength, fnLength, isAsync) {\n var length;\n if (isNaN(optsLength)) {\n length = fnLength;\n if (!(length >= 0)) {\n return 1;\n }\n if (isAsync && length) {\n return length - 1;\n }\n return length;\n }\n if (optsLength === false) {\n return false;\n }\n return toPosInt(optsLength);\n };\n });\n var require_valid_callable = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = function(fn) {\n if (typeof fn !== 'function') {\n throw new TypeError(fn + ' is not a function');\n }\n return fn;\n };\n });\n var require_valid_value = __commonJS(function(exports, module) {\n 'use strict';\n var isValue = require_is_value();\n module.exports = function(value) {\n if (!isValue(value)) {\n throw new TypeError('Cannot use null or undefined');\n }\n return value;\n };\n });\n var require_iterate = __commonJS(function(exports, module) {\n 'use strict';\n var callable = require_valid_callable();\n var value = require_valid_value();\n var bind = Function.prototype.bind;\n var call = Function.prototype.call;\n var keys = Object.keys;\n var objPropertyIsEnumerable = Object.prototype.propertyIsEnumerable;\n module.exports = function(method, defVal) {\n return function(obj, cb) {\n var list, thisArg = arguments[2], compareFn = arguments[3];\n obj = Object(value(obj));\n callable(cb);\n list = keys(obj);\n if (compareFn) {\n list.sort(typeof compareFn === 'function' ? bind.call(compareFn, obj) : void 0);\n }\n if (typeof method !== 'function') {\n method = list[method];\n }\n return call.call(method, list, function(key, index) {\n if (!objPropertyIsEnumerable.call(obj, key)) {\n return defVal;\n }\n return call.call(cb, thisArg, obj[key], key, obj, index);\n });\n };\n };\n });\n var require_for_each = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = require_iterate()('forEach');\n });\n var require_registered_extensions = __commonJS(function() {\n 'use strict';\n });\n var require_is_implemented2 = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = function() {\n var assign = Object.assign, obj;\n if (typeof assign !== 'function') {\n return false;\n }\n obj = {\n foo: 'raz'\n };\n assign(obj, {\n bar: 'dwa'\n }, {\n trzy: 'trzy'\n });\n return obj.foo + obj.bar + obj.trzy === 'razdwatrzy';\n };\n });\n var require_is_implemented3 = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = function() {\n try {\n Object.keys('primitive');\n return true;\n } catch (e) {\n return false;\n }\n };\n });\n var require_shim2 = __commonJS(function(exports, module) {\n 'use strict';\n var isValue = require_is_value();\n var keys = Object.keys;\n module.exports = function(object) {\n return keys(isValue(object) ? Object(object) : object);\n };\n });\n var require_keys = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = require_is_implemented3()() ? Object.keys : require_shim2();\n });\n var require_shim3 = __commonJS(function(exports, module) {\n 'use strict';\n var keys = require_keys();\n var value = require_valid_value();\n var max2 = Math.max;\n module.exports = function(dest, src) {\n var error, i, length = max2(arguments.length, 2), assign;\n dest = Object(value(dest));\n assign = function assign(key) {\n try {\n dest[key] = src[key];\n } catch (e) {\n if (!error) {\n error = e;\n }\n }\n };\n for (i = 1; i < length; ++i) {\n src = arguments[i];\n keys(src).forEach(assign);\n }\n if (error !== void 0) {\n throw error;\n }\n return dest;\n };\n });\n var require_assign = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = require_is_implemented2()() ? Object.assign : require_shim3();\n });\n var require_is_object2 = __commonJS(function(exports, module) {\n 'use strict';\n var isValue = require_is_value();\n var map = {\n function: true,\n object: true\n };\n module.exports = function(value) {\n return isValue(value) && map[_typeof(value)] || false;\n };\n });\n var require_custom = __commonJS(function(exports, module) {\n 'use strict';\n var assign = require_assign();\n var isObject = require_is_object2();\n var isValue = require_is_value();\n var captureStackTrace = Error.captureStackTrace;\n module.exports = function(message) {\n var err2 = new Error(message), code = arguments[1], ext = arguments[2];\n if (!isValue(ext)) {\n if (isObject(code)) {\n ext = code;\n code = null;\n }\n }\n if (isValue(ext)) {\n assign(err2, ext);\n }\n if (isValue(code)) {\n err2.code = code;\n }\n if (captureStackTrace) {\n captureStackTrace(err2, module.exports);\n }\n return err2;\n };\n });\n var require_mixin = __commonJS(function(exports, module) {\n 'use strict';\n var value = require_valid_value();\n var defineProperty = Object.defineProperty;\n var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n var getOwnPropertyNames = Object.getOwnPropertyNames;\n var getOwnPropertySymbols = Object.getOwnPropertySymbols;\n module.exports = function(target, source) {\n var error, sourceObject = Object(value(source));\n target = Object(value(target));\n getOwnPropertyNames(sourceObject).forEach(function(name) {\n try {\n defineProperty(target, name, getOwnPropertyDescriptor(source, name));\n } catch (e) {\n error = e;\n }\n });\n if (typeof getOwnPropertySymbols === 'function') {\n getOwnPropertySymbols(sourceObject).forEach(function(symbol) {\n try {\n defineProperty(target, symbol, getOwnPropertyDescriptor(source, symbol));\n } catch (e) {\n error = e;\n }\n });\n }\n if (error !== void 0) {\n throw error;\n }\n return target;\n };\n });\n var require_define_length = __commonJS(function(exports, module) {\n 'use strict';\n var toPosInt = require_to_pos_integer();\n var test = function test(arg1, arg2) {\n return arg2;\n };\n var desc;\n var defineProperty;\n var generate;\n var mixin;\n try {\n Object.defineProperty(test, 'length', {\n configurable: true,\n writable: false,\n enumerable: false,\n value: 1\n });\n } catch (ignore) {}\n if (test.length === 1) {\n desc = {\n configurable: true,\n writable: false,\n enumerable: false\n };\n defineProperty = Object.defineProperty;\n module.exports = function(fn, length) {\n length = toPosInt(length);\n if (fn.length === length) {\n return fn;\n }\n desc.value = length;\n return defineProperty(fn, 'length', desc);\n };\n } else {\n mixin = require_mixin();\n generate = function() {\n var cache2 = [];\n return function(length) {\n var args, i = 0;\n if (cache2[length]) {\n return cache2[length];\n }\n args = [];\n while (length--) {\n args.push('a' + (++i).toString(36));\n }\n return new Function('fn', 'return function (' + args.join(', ') + ') { return fn.apply(this, arguments); };');\n };\n }();\n module.exports = function(src, length) {\n var target;\n length = toPosInt(length);\n if (src.length === length) {\n return src;\n }\n target = generate(length)(src);\n try {\n mixin(target, src);\n } catch (ignore) {}\n return target;\n };\n }\n });\n var require_is = __commonJS(function(exports, module) {\n 'use strict';\n var _undefined = void 0;\n module.exports = function(value) {\n return value !== _undefined && value !== null;\n };\n });\n var require_is2 = __commonJS(function(exports, module) {\n 'use strict';\n var isValue = require_is();\n var possibleTypes = {\n object: true,\n function: true,\n undefined: true\n };\n module.exports = function(value) {\n if (!isValue(value)) {\n return false;\n }\n return hasOwnProperty.call(possibleTypes, _typeof(value));\n };\n });\n var require_is3 = __commonJS(function(exports, module) {\n 'use strict';\n var isObject = require_is2();\n module.exports = function(value) {\n if (!isObject(value)) {\n return false;\n }\n try {\n if (!value.constructor) {\n return false;\n }\n return value.constructor.prototype === value;\n } catch (error) {\n return false;\n }\n };\n });\n var require_is4 = __commonJS(function(exports, module) {\n 'use strict';\n var isPrototype = require_is3();\n module.exports = function(value) {\n if (typeof value !== 'function') {\n return false;\n }\n if (!hasOwnProperty.call(value, 'length')) {\n return false;\n }\n try {\n if (typeof value.length !== 'number') {\n return false;\n }\n if (typeof value.call !== 'function') {\n return false;\n }\n if (typeof value.apply !== 'function') {\n return false;\n }\n } catch (error) {\n return false;\n }\n return !isPrototype(value);\n };\n });\n var require_is5 = __commonJS(function(exports, module) {\n 'use strict';\n var isFunction = require_is4();\n var classRe = /^\\s*class[\\s{/}]/;\n var functionToString = Function.prototype.toString;\n module.exports = function(value) {\n if (!isFunction(value)) {\n return false;\n }\n if (classRe.test(functionToString.call(value))) {\n return false;\n }\n return true;\n };\n });\n var require_is_implemented4 = __commonJS(function(exports, module) {\n 'use strict';\n var str = 'razdwatrzy';\n module.exports = function() {\n if (typeof str.contains !== 'function') {\n return false;\n }\n return str.contains('dwa') === true && str.contains('foo') === false;\n };\n });\n var require_shim4 = __commonJS(function(exports, module) {\n 'use strict';\n var indexOf = String.prototype.indexOf;\n module.exports = function(searchString) {\n return indexOf.call(this, searchString, arguments[1]) > -1;\n };\n });\n var require_contains = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = require_is_implemented4()() ? String.prototype.contains : require_shim4();\n });\n var require_d = __commonJS(function(exports, module) {\n 'use strict';\n var isValue = require_is();\n var isPlainFunction = require_is5();\n var assign = require_assign();\n var normalizeOpts = require_normalize_options();\n var contains3 = require_contains();\n var d2 = module.exports = function(dscr, value) {\n var c4, e, w, options, desc;\n if (arguments.length < 2 || typeof dscr !== 'string') {\n options = value;\n value = dscr;\n dscr = null;\n } else {\n options = arguments[2];\n }\n if (isValue(dscr)) {\n c4 = contains3.call(dscr, 'c');\n e = contains3.call(dscr, 'e');\n w = contains3.call(dscr, 'w');\n } else {\n c4 = w = true;\n e = false;\n }\n desc = {\n value: value,\n configurable: c4,\n enumerable: e,\n writable: w\n };\n return !options ? desc : assign(normalizeOpts(options), desc);\n };\n d2.gs = function(dscr, get2, set2) {\n var c4, e, options, desc;\n if (typeof dscr !== 'string') {\n options = set2;\n set2 = get2;\n get2 = dscr;\n dscr = null;\n } else {\n options = arguments[3];\n }\n if (!isValue(get2)) {\n get2 = void 0;\n } else if (!isPlainFunction(get2)) {\n options = get2;\n get2 = set2 = void 0;\n } else if (!isValue(set2)) {\n set2 = void 0;\n } else if (!isPlainFunction(set2)) {\n options = set2;\n set2 = void 0;\n }\n if (isValue(dscr)) {\n c4 = contains3.call(dscr, 'c');\n e = contains3.call(dscr, 'e');\n } else {\n c4 = true;\n e = false;\n }\n desc = {\n get: get2,\n set: set2,\n configurable: c4,\n enumerable: e\n };\n return !options ? desc : assign(normalizeOpts(options), desc);\n };\n });\n var require_event_emitter = __commonJS(function(exports, module) {\n 'use strict';\n var d2 = require_d();\n var callable = require_valid_callable();\n var apply = Function.prototype.apply;\n var call = Function.prototype.call;\n var create = Object.create;\n var defineProperty = Object.defineProperty;\n var defineProperties = Object.defineProperties;\n var hasOwnProperty2 = Object.prototype.hasOwnProperty;\n var descriptor = {\n configurable: true,\n enumerable: false,\n writable: true\n };\n var on;\n var once;\n var off;\n var emit;\n var methods;\n var descriptors;\n var base;\n on = function on(type2, listener) {\n var data;\n callable(listener);\n if (!hasOwnProperty2.call(this, '__ee__')) {\n data = descriptor.value = create(null);\n defineProperty(this, '__ee__', descriptor);\n descriptor.value = null;\n } else {\n data = this.__ee__;\n }\n if (!data[type2]) {\n data[type2] = listener;\n } else if (_typeof(data[type2]) === 'object') {\n data[type2].push(listener);\n } else {\n data[type2] = [ data[type2], listener ];\n }\n return this;\n };\n once = function once(type2, listener) {\n var _once, self2;\n callable(listener);\n self2 = this;\n on.call(this, type2, _once = function once2() {\n off.call(self2, type2, _once);\n apply.call(listener, this, arguments);\n });\n _once.__eeOnceListener__ = listener;\n return this;\n };\n off = function off(type2, listener) {\n var data, listeners, candidate, i;\n callable(listener);\n if (!hasOwnProperty2.call(this, '__ee__')) {\n return this;\n }\n data = this.__ee__;\n if (!data[type2]) {\n return this;\n }\n listeners = data[type2];\n if (_typeof(listeners) === 'object') {\n for (i = 0; candidate = listeners[i]; ++i) {\n if (candidate === listener || candidate.__eeOnceListener__ === listener) {\n if (listeners.length === 2) {\n data[type2] = listeners[i ? 0 : 1];\n } else {\n listeners.splice(i, 1);\n }\n }\n }\n } else {\n if (listeners === listener || listeners.__eeOnceListener__ === listener) {\n delete data[type2];\n }\n }\n return this;\n };\n emit = function emit(type2) {\n var i, l, listener, listeners, args;\n if (!hasOwnProperty2.call(this, '__ee__')) {\n return;\n }\n listeners = this.__ee__[type2];\n if (!listeners) {\n return;\n }\n if (_typeof(listeners) === 'object') {\n l = arguments.length;\n args = new Array(l - 1);\n for (i = 1; i < l; ++i) {\n args[i - 1] = arguments[i];\n }\n listeners = listeners.slice();\n for (i = 0; listener = listeners[i]; ++i) {\n apply.call(listener, this, args);\n }\n } else {\n switch (arguments.length) {\n case 1:\n call.call(listeners, this);\n break;\n\n case 2:\n call.call(listeners, this, arguments[1]);\n break;\n\n case 3:\n call.call(listeners, this, arguments[1], arguments[2]);\n break;\n\n default:\n l = arguments.length;\n args = new Array(l - 1);\n for (i = 1; i < l; ++i) {\n args[i - 1] = arguments[i];\n }\n apply.call(listeners, this, args);\n }\n }\n };\n methods = {\n on: on,\n once: once,\n off: off,\n emit: emit\n };\n descriptors = {\n on: d2(on),\n once: d2(once),\n off: d2(off),\n emit: d2(emit)\n };\n base = defineProperties({}, descriptors);\n module.exports = exports = function exports(o) {\n return o == null ? create(base) : defineProperties(Object(o), descriptors);\n };\n exports.methods = methods;\n });\n var require_is_implemented5 = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = function() {\n var from = Array.from, arr, result;\n if (typeof from !== 'function') {\n return false;\n }\n arr = [ 'raz', 'dwa' ];\n result = from(arr);\n return Boolean(result && result !== arr && result[1] === 'dwa');\n };\n });\n var require_is_implemented6 = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = function() {\n if ((typeof globalThis === 'undefined' ? 'undefined' : _typeof(globalThis)) !== 'object') {\n return false;\n }\n if (!globalThis) {\n return false;\n }\n return globalThis.Array === Array;\n };\n });\n var require_implementation = __commonJS(function(exports, module) {\n var naiveFallback = function naiveFallback() {\n if ((typeof self === 'undefined' ? 'undefined' : _typeof(self)) === 'object' && self) {\n return self;\n }\n if ((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object' && window) {\n return window;\n }\n throw new Error('Unable to resolve global `this`');\n };\n module.exports = function() {\n if (this) {\n return this;\n }\n try {\n Object.defineProperty(Object.prototype, '__global__', {\n get: function get() {\n return this;\n },\n configurable: true\n });\n } catch (error) {\n return naiveFallback();\n }\n try {\n if (!__global__) {\n return naiveFallback();\n }\n return __global__;\n } finally {\n delete Object.prototype.__global__;\n }\n }();\n });\n var require_global_this2 = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = require_is_implemented6()() ? globalThis : require_implementation();\n });\n var require_is_implemented7 = __commonJS(function(exports, module) {\n 'use strict';\n var global2 = require_global_this2();\n var validTypes = {\n object: true,\n symbol: true\n };\n module.exports = function() {\n var Symbol2 = global2.Symbol;\n var symbol;\n if (typeof Symbol2 !== 'function') {\n return false;\n }\n symbol = Symbol2('test symbol');\n try {\n String(symbol);\n } catch (e) {\n return false;\n }\n if (!validTypes[_typeof(Symbol2.iterator)]) {\n return false;\n }\n if (!validTypes[_typeof(Symbol2.toPrimitive)]) {\n return false;\n }\n if (!validTypes[_typeof(Symbol2.toStringTag)]) {\n return false;\n }\n return true;\n };\n });\n var require_is_symbol2 = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = function(value) {\n if (!value) {\n return false;\n }\n if (_typeof(value) === 'symbol') {\n return true;\n }\n if (!value.constructor) {\n return false;\n }\n if (value.constructor.name !== 'Symbol') {\n return false;\n }\n return value[value.constructor.toStringTag] === 'Symbol';\n };\n });\n var require_validate_symbol = __commonJS(function(exports, module) {\n 'use strict';\n var isSymbol = require_is_symbol2();\n module.exports = function(value) {\n if (!isSymbol(value)) {\n throw new TypeError(value + ' is not a symbol');\n }\n return value;\n };\n });\n var require_generate_name = __commonJS(function(exports, module) {\n 'use strict';\n var d2 = require_d();\n var create = Object.create;\n var defineProperty = Object.defineProperty;\n var objPrototype = Object.prototype;\n var created = create(null);\n module.exports = function(desc) {\n var postfix = 0, name, ie11BugWorkaround;\n while (created[desc + (postfix || '')]) {\n ++postfix;\n }\n desc += postfix || '';\n created[desc] = true;\n name = '@@' + desc;\n defineProperty(objPrototype, name, d2.gs(null, function(value) {\n if (ie11BugWorkaround) {\n return;\n }\n ie11BugWorkaround = true;\n defineProperty(this, name, d2(value));\n ie11BugWorkaround = false;\n }));\n return name;\n };\n });\n var require_standard_symbols = __commonJS(function(exports, module) {\n 'use strict';\n var d2 = require_d();\n var NativeSymbol = require_global_this2().Symbol;\n module.exports = function(SymbolPolyfill) {\n return Object.defineProperties(SymbolPolyfill, {\n hasInstance: d2('', NativeSymbol && NativeSymbol.hasInstance || SymbolPolyfill('hasInstance')),\n isConcatSpreadable: d2('', NativeSymbol && NativeSymbol.isConcatSpreadable || SymbolPolyfill('isConcatSpreadable')),\n iterator: d2('', NativeSymbol && NativeSymbol.iterator || SymbolPolyfill('iterator')),\n match: d2('', NativeSymbol && NativeSymbol.match || SymbolPolyfill('match')),\n replace: d2('', NativeSymbol && NativeSymbol.replace || SymbolPolyfill('replace')),\n search: d2('', NativeSymbol && NativeSymbol.search || SymbolPolyfill('search')),\n species: d2('', NativeSymbol && NativeSymbol.species || SymbolPolyfill('species')),\n split: d2('', NativeSymbol && NativeSymbol.split || SymbolPolyfill('split')),\n toPrimitive: d2('', NativeSymbol && NativeSymbol.toPrimitive || SymbolPolyfill('toPrimitive')),\n toStringTag: d2('', NativeSymbol && NativeSymbol.toStringTag || SymbolPolyfill('toStringTag')),\n unscopables: d2('', NativeSymbol && NativeSymbol.unscopables || SymbolPolyfill('unscopables'))\n });\n };\n });\n var require_symbol_registry = __commonJS(function(exports, module) {\n 'use strict';\n var d2 = require_d();\n var validateSymbol = require_validate_symbol();\n var registry = Object.create(null);\n module.exports = function(SymbolPolyfill) {\n return Object.defineProperties(SymbolPolyfill, {\n for: d2(function(key) {\n if (registry[key]) {\n return registry[key];\n }\n return registry[key] = SymbolPolyfill(String(key));\n }),\n keyFor: d2(function(symbol) {\n var key;\n validateSymbol(symbol);\n for (key in registry) {\n if (registry[key] === symbol) {\n return key;\n }\n }\n return void 0;\n })\n });\n };\n });\n var require_polyfill = __commonJS(function(exports, module) {\n 'use strict';\n var d2 = require_d();\n var validateSymbol = require_validate_symbol();\n var NativeSymbol = require_global_this2().Symbol;\n var generateName = require_generate_name();\n var setupStandardSymbols = require_standard_symbols();\n var setupSymbolRegistry = require_symbol_registry();\n var create = Object.create;\n var defineProperties = Object.defineProperties;\n var defineProperty = Object.defineProperty;\n var SymbolPolyfill;\n var HiddenSymbol;\n var isNativeSafe;\n if (typeof NativeSymbol === 'function') {\n try {\n String(NativeSymbol());\n isNativeSafe = true;\n } catch (ignore) {}\n } else {\n NativeSymbol = null;\n }\n HiddenSymbol = function Symbol2(description) {\n if (this instanceof HiddenSymbol) {\n throw new TypeError('Symbol is not a constructor');\n }\n return SymbolPolyfill(description);\n };\n module.exports = SymbolPolyfill = function Symbol2(description) {\n var symbol;\n if (this instanceof Symbol2) {\n throw new TypeError('Symbol is not a constructor');\n }\n if (isNativeSafe) {\n return NativeSymbol(description);\n }\n symbol = create(HiddenSymbol.prototype);\n description = description === void 0 ? '' : String(description);\n return defineProperties(symbol, {\n __description__: d2('', description),\n __name__: d2('', generateName(description))\n });\n };\n setupStandardSymbols(SymbolPolyfill);\n setupSymbolRegistry(SymbolPolyfill);\n defineProperties(HiddenSymbol.prototype, {\n constructor: d2(SymbolPolyfill),\n toString: d2('', function() {\n return this.__name__;\n })\n });\n defineProperties(SymbolPolyfill.prototype, {\n toString: d2(function() {\n return 'Symbol (' + validateSymbol(this).__description__ + ')';\n }),\n valueOf: d2(function() {\n return validateSymbol(this);\n })\n });\n defineProperty(SymbolPolyfill.prototype, SymbolPolyfill.toPrimitive, d2('', function() {\n var symbol = validateSymbol(this);\n if (_typeof(symbol) === 'symbol') {\n return symbol;\n }\n return symbol.toString();\n }));\n defineProperty(SymbolPolyfill.prototype, SymbolPolyfill.toStringTag, d2('c', 'Symbol'));\n defineProperty(HiddenSymbol.prototype, SymbolPolyfill.toStringTag, d2('c', SymbolPolyfill.prototype[SymbolPolyfill.toStringTag]));\n defineProperty(HiddenSymbol.prototype, SymbolPolyfill.toPrimitive, d2('c', SymbolPolyfill.prototype[SymbolPolyfill.toPrimitive]));\n });\n var require_es6_symbol = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = require_is_implemented7()() ? require_global_this2().Symbol : require_polyfill();\n });\n var require_is_arguments = __commonJS(function(exports, module) {\n 'use strict';\n var objToString = Object.prototype.toString;\n var id = objToString.call(function() {\n return arguments;\n }());\n module.exports = function(value) {\n return objToString.call(value) === id;\n };\n });\n var require_is_function = __commonJS(function(exports, module) {\n 'use strict';\n var objToString = Object.prototype.toString;\n var isFunctionStringTag = RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);\n module.exports = function(value) {\n return typeof value === 'function' && isFunctionStringTag(objToString.call(value));\n };\n });\n var require_is_string = __commonJS(function(exports, module) {\n 'use strict';\n var objToString = Object.prototype.toString;\n var id = objToString.call('');\n module.exports = function(value) {\n return typeof value === 'string' || value && _typeof(value) === 'object' && (value instanceof String || objToString.call(value) === id) || false;\n };\n });\n var require_shim5 = __commonJS(function(exports, module) {\n 'use strict';\n var iteratorSymbol = require_es6_symbol().iterator;\n var isArguments = require_is_arguments();\n var isFunction = require_is_function();\n var toPosInt = require_to_pos_integer();\n var callable = require_valid_callable();\n var validValue = require_valid_value();\n var isValue = require_is_value();\n var isString2 = require_is_string();\n var isArray = Array.isArray;\n var call = Function.prototype.call;\n var desc = {\n configurable: true,\n enumerable: true,\n writable: true,\n value: null\n };\n var defineProperty = Object.defineProperty;\n module.exports = function(arrayLike) {\n var mapFn = arguments[1], thisArg = arguments[2], Context2, i, j, arr, length, code, iterator, result, getIterator, value;\n arrayLike = Object(validValue(arrayLike));\n if (isValue(mapFn)) {\n callable(mapFn);\n }\n if (!this || this === Array || !isFunction(this)) {\n if (!mapFn) {\n if (isArguments(arrayLike)) {\n length = arrayLike.length;\n if (length !== 1) {\n return Array.apply(null, arrayLike);\n }\n arr = new Array(1);\n arr[0] = arrayLike[0];\n return arr;\n }\n if (isArray(arrayLike)) {\n arr = new Array(length = arrayLike.length);\n for (i = 0; i < length; ++i) {\n arr[i] = arrayLike[i];\n }\n return arr;\n }\n }\n arr = [];\n } else {\n Context2 = this;\n }\n if (!isArray(arrayLike)) {\n if ((getIterator = arrayLike[iteratorSymbol]) !== void 0) {\n iterator = callable(getIterator).call(arrayLike);\n if (Context2) {\n arr = new Context2();\n }\n result = iterator.next();\n i = 0;\n while (!result.done) {\n value = mapFn ? call.call(mapFn, thisArg, result.value, i) : result.value;\n if (Context2) {\n desc.value = value;\n defineProperty(arr, i, desc);\n } else {\n arr[i] = value;\n }\n result = iterator.next();\n ++i;\n }\n length = i;\n } else if (isString2(arrayLike)) {\n length = arrayLike.length;\n if (Context2) {\n arr = new Context2();\n }\n for (i = 0, j = 0; i < length; ++i) {\n value = arrayLike[i];\n if (i + 1 < length) {\n code = value.charCodeAt(0);\n if (code >= 55296 && code <= 56319) {\n value += arrayLike[++i];\n }\n }\n value = mapFn ? call.call(mapFn, thisArg, value, j) : value;\n if (Context2) {\n desc.value = value;\n defineProperty(arr, j, desc);\n } else {\n arr[j] = value;\n }\n ++j;\n }\n length = j;\n }\n }\n if (length === void 0) {\n length = toPosInt(arrayLike.length);\n if (Context2) {\n arr = new Context2(length);\n }\n for (i = 0; i < length; ++i) {\n value = mapFn ? call.call(mapFn, thisArg, arrayLike[i], i) : arrayLike[i];\n if (Context2) {\n desc.value = value;\n defineProperty(arr, i, desc);\n } else {\n arr[i] = value;\n }\n }\n }\n if (Context2) {\n desc.value = null;\n arr.length = length;\n }\n return arr;\n };\n });\n var require_from4 = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = require_is_implemented5()() ? Array.from : require_shim5();\n });\n var require_to_array = __commonJS(function(exports, module) {\n 'use strict';\n var from = require_from4();\n var isArray = Array.isArray;\n module.exports = function(arrayLike) {\n return isArray(arrayLike) ? arrayLike : from(arrayLike);\n };\n });\n var require_resolve_resolve = __commonJS(function(exports, module) {\n 'use strict';\n var toArray2 = require_to_array();\n var isValue = require_is_value();\n var callable = require_valid_callable();\n var slice = Array.prototype.slice;\n var resolveArgs;\n resolveArgs = function resolveArgs(args) {\n return this.map(function(resolve, i) {\n return resolve ? resolve(args[i]) : args[i];\n }).concat(slice.call(args, this.length));\n };\n module.exports = function(resolvers) {\n resolvers = toArray2(resolvers);\n resolvers.forEach(function(resolve) {\n if (isValue(resolve)) {\n callable(resolve);\n }\n });\n return resolveArgs.bind(resolvers);\n };\n });\n var require_resolve_normalize = __commonJS(function(exports, module) {\n 'use strict';\n var callable = require_valid_callable();\n module.exports = function(userNormalizer) {\n var normalizer;\n if (typeof userNormalizer === 'function') {\n return {\n set: userNormalizer,\n get: userNormalizer\n };\n }\n normalizer = {\n get: callable(userNormalizer.get)\n };\n if (userNormalizer.set !== void 0) {\n normalizer.set = callable(userNormalizer.set);\n if (userNormalizer['delete']) {\n normalizer['delete'] = callable(userNormalizer['delete']);\n }\n if (userNormalizer.clear) {\n normalizer.clear = callable(userNormalizer.clear);\n }\n return normalizer;\n }\n normalizer.set = normalizer.get;\n return normalizer;\n };\n });\n var require_configure_map = __commonJS(function(exports, module) {\n 'use strict';\n var customError = require_custom();\n var defineLength = require_define_length();\n var d2 = require_d();\n var ee = require_event_emitter().methods;\n var resolveResolve = require_resolve_resolve();\n var resolveNormalize = require_resolve_normalize();\n var apply = Function.prototype.apply;\n var call = Function.prototype.call;\n var create = Object.create;\n var defineProperties = Object.defineProperties;\n var _on = ee.on;\n var emit = ee.emit;\n module.exports = function(original, length, options) {\n var cache2 = create(null), conf, memLength, get2, set2, del, _clear, extDel, extGet, extHas, normalizer, getListeners, setListeners, deleteListeners, memoized, resolve;\n if (length !== false) {\n memLength = length;\n } else if (isNaN(original.length)) {\n memLength = 1;\n } else {\n memLength = original.length;\n }\n if (options.normalizer) {\n normalizer = resolveNormalize(options.normalizer);\n get2 = normalizer.get;\n set2 = normalizer.set;\n del = normalizer['delete'];\n _clear = normalizer.clear;\n }\n if (options.resolvers != null) {\n resolve = resolveResolve(options.resolvers);\n }\n if (get2) {\n memoized = defineLength(function(arg) {\n var id, result, args = arguments;\n if (resolve) {\n args = resolve(args);\n }\n id = get2(args);\n if (id !== null) {\n if (hasOwnProperty.call(cache2, id)) {\n if (getListeners) {\n conf.emit('get', id, args, this);\n }\n return cache2[id];\n }\n }\n if (args.length === 1) {\n result = call.call(original, this, args[0]);\n } else {\n result = apply.call(original, this, args);\n }\n if (id === null) {\n id = get2(args);\n if (id !== null) {\n throw customError('Circular invocation', 'CIRCULAR_INVOCATION');\n }\n id = set2(args);\n } else if (hasOwnProperty.call(cache2, id)) {\n throw customError('Circular invocation', 'CIRCULAR_INVOCATION');\n }\n cache2[id] = result;\n if (setListeners) {\n conf.emit('set', id, null, result);\n }\n return result;\n }, memLength);\n } else if (length === 0) {\n memoized = function memoized() {\n var result;\n if (hasOwnProperty.call(cache2, 'data')) {\n if (getListeners) {\n conf.emit('get', 'data', arguments, this);\n }\n return cache2.data;\n }\n if (arguments.length) {\n result = apply.call(original, this, arguments);\n } else {\n result = call.call(original, this);\n }\n if (hasOwnProperty.call(cache2, 'data')) {\n throw customError('Circular invocation', 'CIRCULAR_INVOCATION');\n }\n cache2.data = result;\n if (setListeners) {\n conf.emit('set', 'data', null, result);\n }\n return result;\n };\n } else {\n memoized = function memoized(arg) {\n var result, args = arguments, id;\n if (resolve) {\n args = resolve(arguments);\n }\n id = String(args[0]);\n if (hasOwnProperty.call(cache2, id)) {\n if (getListeners) {\n conf.emit('get', id, args, this);\n }\n return cache2[id];\n }\n if (args.length === 1) {\n result = call.call(original, this, args[0]);\n } else {\n result = apply.call(original, this, args);\n }\n if (hasOwnProperty.call(cache2, id)) {\n throw customError('Circular invocation', 'CIRCULAR_INVOCATION');\n }\n cache2[id] = result;\n if (setListeners) {\n conf.emit('set', id, null, result);\n }\n return result;\n };\n }\n conf = {\n original: original,\n memoized: memoized,\n profileName: options.profileName,\n get: function get(args) {\n if (resolve) {\n args = resolve(args);\n }\n if (get2) {\n return get2(args);\n }\n return String(args[0]);\n },\n has: function has(id) {\n return hasOwnProperty.call(cache2, id);\n },\n delete: function _delete(id) {\n var result;\n if (!hasOwnProperty.call(cache2, id)) {\n return;\n }\n if (del) {\n del(id);\n }\n result = cache2[id];\n delete cache2[id];\n if (deleteListeners) {\n conf.emit('delete', id, result);\n }\n },\n clear: function clear() {\n var oldCache = cache2;\n if (_clear) {\n _clear();\n }\n cache2 = create(null);\n conf.emit('clear', oldCache);\n },\n on: function on(type2, listener) {\n if (type2 === 'get') {\n getListeners = true;\n } else if (type2 === 'set') {\n setListeners = true;\n } else if (type2 === 'delete') {\n deleteListeners = true;\n }\n return _on.call(this, type2, listener);\n },\n emit: emit,\n updateEnv: function updateEnv() {\n original = conf.original;\n }\n };\n if (get2) {\n extDel = defineLength(function(arg) {\n var id, args = arguments;\n if (resolve) {\n args = resolve(args);\n }\n id = get2(args);\n if (id === null) {\n return;\n }\n conf['delete'](id);\n }, memLength);\n } else if (length === 0) {\n extDel = function extDel() {\n return conf['delete']('data');\n };\n } else {\n extDel = function extDel(arg) {\n if (resolve) {\n arg = resolve(arguments)[0];\n }\n return conf['delete'](arg);\n };\n }\n extGet = defineLength(function() {\n var id, args = arguments;\n if (length === 0) {\n return cache2.data;\n }\n if (resolve) {\n args = resolve(args);\n }\n if (get2) {\n id = get2(args);\n } else {\n id = String(args[0]);\n }\n return cache2[id];\n });\n extHas = defineLength(function() {\n var id, args = arguments;\n if (length === 0) {\n return conf.has('data');\n }\n if (resolve) {\n args = resolve(args);\n }\n if (get2) {\n id = get2(args);\n } else {\n id = String(args[0]);\n }\n if (id === null) {\n return false;\n }\n return conf.has(id);\n });\n defineProperties(memoized, {\n __memoized__: d2(true),\n delete: d2(extDel),\n clear: d2(conf.clear),\n _get: d2(extGet),\n _has: d2(extHas)\n });\n return conf;\n };\n });\n var require_plain = __commonJS(function(exports, module) {\n 'use strict';\n var callable = require_valid_callable();\n var forEach = require_for_each();\n var extensions = require_registered_extensions();\n var configure4 = require_configure_map();\n var resolveLength = require_resolve_length();\n module.exports = function self2(fn) {\n var options, length, conf;\n callable(fn);\n options = Object(arguments[1]);\n if (options.async && options.promise) {\n throw new Error('Options \\'async\\' and \\'promise\\' cannot be used together');\n }\n if (hasOwnProperty.call(fn, '__memoized__') && !options.force) {\n return fn;\n }\n length = resolveLength(options.length, fn.length, options.async && extensions.async);\n conf = configure4(fn, length, options);\n forEach(extensions, function(extFn, name) {\n if (options[name]) {\n extFn(options[name], conf, options);\n }\n });\n if (self2.__profiler__) {\n self2.__profiler__(conf);\n }\n conf.updateEnv();\n return conf.memoized;\n };\n });\n var require_primitive = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = function(args) {\n var id, i, length = args.length;\n if (!length) {\n return '\\x02';\n }\n id = String(args[i = 0]);\n while (--length) {\n id += '\\x01' + args[++i];\n }\n return id;\n };\n });\n var require_get_primitive_fixed = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = function(length) {\n if (!length) {\n return function() {\n return '';\n };\n }\n return function(args) {\n var id = String(args[0]), i = 0, currentLength = length;\n while (--currentLength) {\n id += '\\x01' + args[++i];\n }\n return id;\n };\n };\n });\n var require_is_implemented8 = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = function() {\n var numberIsNaN = Number.isNaN;\n if (typeof numberIsNaN !== 'function') {\n return false;\n }\n return !numberIsNaN({}) && numberIsNaN(NaN) && !numberIsNaN(34);\n };\n });\n var require_shim6 = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = function(value) {\n return value !== value;\n };\n });\n var require_is_nan = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = require_is_implemented8()() ? Number.isNaN : require_shim6();\n });\n var require_e_index_of = __commonJS(function(exports, module) {\n 'use strict';\n var numberIsNaN = require_is_nan();\n var toPosInt = require_to_pos_integer();\n var value = require_valid_value();\n var indexOf = Array.prototype.indexOf;\n var objHasOwnProperty = Object.prototype.hasOwnProperty;\n var abs = Math.abs;\n var floor = Math.floor;\n module.exports = function(searchElement) {\n var i, length, fromIndex, val;\n if (!numberIsNaN(searchElement)) {\n return indexOf.apply(this, arguments);\n }\n length = toPosInt(value(this).length);\n fromIndex = arguments[1];\n if (isNaN(fromIndex)) {\n fromIndex = 0;\n } else if (fromIndex >= 0) {\n fromIndex = floor(fromIndex);\n } else {\n fromIndex = toPosInt(this.length) - floor(abs(fromIndex));\n }\n for (i = fromIndex; i < length; ++i) {\n if (objHasOwnProperty.call(this, i)) {\n val = this[i];\n if (numberIsNaN(val)) {\n return i;\n }\n }\n }\n return -1;\n };\n });\n var require_get = __commonJS(function(exports, module) {\n 'use strict';\n var indexOf = require_e_index_of();\n var create = Object.create;\n module.exports = function() {\n var lastId = 0, map = [], cache2 = create(null);\n return {\n get: function get(args) {\n var index = 0, set2 = map, i, length = args.length;\n if (length === 0) {\n return set2[length] || null;\n }\n if (set2 = set2[length]) {\n while (index < length - 1) {\n i = indexOf.call(set2[0], args[index]);\n if (i === -1) {\n return null;\n }\n set2 = set2[1][i];\n ++index;\n }\n i = indexOf.call(set2[0], args[index]);\n if (i === -1) {\n return null;\n }\n return set2[1][i] || null;\n }\n return null;\n },\n set: function set(args) {\n var index = 0, set2 = map, i, length = args.length;\n if (length === 0) {\n set2[length] = ++lastId;\n } else {\n if (!set2[length]) {\n set2[length] = [ [], [] ];\n }\n set2 = set2[length];\n while (index < length - 1) {\n i = indexOf.call(set2[0], args[index]);\n if (i === -1) {\n i = set2[0].push(args[index]) - 1;\n set2[1].push([ [], [] ]);\n }\n set2 = set2[1][i];\n ++index;\n }\n i = indexOf.call(set2[0], args[index]);\n if (i === -1) {\n i = set2[0].push(args[index]) - 1;\n }\n set2[1][i] = ++lastId;\n }\n cache2[lastId] = args;\n return lastId;\n },\n delete: function _delete(id) {\n var index = 0, set2 = map, i, args = cache2[id], length = args.length, path = [];\n if (length === 0) {\n delete set2[length];\n } else if (set2 = set2[length]) {\n while (index < length - 1) {\n i = indexOf.call(set2[0], args[index]);\n if (i === -1) {\n return;\n }\n path.push(set2, i);\n set2 = set2[1][i];\n ++index;\n }\n i = indexOf.call(set2[0], args[index]);\n if (i === -1) {\n return;\n }\n id = set2[1][i];\n set2[0].splice(i, 1);\n set2[1].splice(i, 1);\n while (!set2[0].length && path.length) {\n i = path.pop();\n set2 = path.pop();\n set2[0].splice(i, 1);\n set2[1].splice(i, 1);\n }\n }\n delete cache2[id];\n },\n clear: function clear() {\n map = [];\n cache2 = create(null);\n }\n };\n };\n });\n var require_get_1 = __commonJS(function(exports, module) {\n 'use strict';\n var indexOf = require_e_index_of();\n module.exports = function() {\n var lastId = 0, argsMap = [], cache2 = [];\n return {\n get: function get(args) {\n var index = indexOf.call(argsMap, args[0]);\n return index === -1 ? null : cache2[index];\n },\n set: function set(args) {\n argsMap.push(args[0]);\n cache2.push(++lastId);\n return lastId;\n },\n delete: function _delete(id) {\n var index = indexOf.call(cache2, id);\n if (index !== -1) {\n argsMap.splice(index, 1);\n cache2.splice(index, 1);\n }\n },\n clear: function clear() {\n argsMap = [];\n cache2 = [];\n }\n };\n };\n });\n var require_get_fixed = __commonJS(function(exports, module) {\n 'use strict';\n var indexOf = require_e_index_of();\n var create = Object.create;\n module.exports = function(length) {\n var lastId = 0, map = [ [], [] ], cache2 = create(null);\n return {\n get: function get(args) {\n var index = 0, set2 = map, i;\n while (index < length - 1) {\n i = indexOf.call(set2[0], args[index]);\n if (i === -1) {\n return null;\n }\n set2 = set2[1][i];\n ++index;\n }\n i = indexOf.call(set2[0], args[index]);\n if (i === -1) {\n return null;\n }\n return set2[1][i] || null;\n },\n set: function set(args) {\n var index = 0, set2 = map, i;\n while (index < length - 1) {\n i = indexOf.call(set2[0], args[index]);\n if (i === -1) {\n i = set2[0].push(args[index]) - 1;\n set2[1].push([ [], [] ]);\n }\n set2 = set2[1][i];\n ++index;\n }\n i = indexOf.call(set2[0], args[index]);\n if (i === -1) {\n i = set2[0].push(args[index]) - 1;\n }\n set2[1][i] = ++lastId;\n cache2[lastId] = args;\n return lastId;\n },\n delete: function _delete(id) {\n var index = 0, set2 = map, i, path = [], args = cache2[id];\n while (index < length - 1) {\n i = indexOf.call(set2[0], args[index]);\n if (i === -1) {\n return;\n }\n path.push(set2, i);\n set2 = set2[1][i];\n ++index;\n }\n i = indexOf.call(set2[0], args[index]);\n if (i === -1) {\n return;\n }\n id = set2[1][i];\n set2[0].splice(i, 1);\n set2[1].splice(i, 1);\n while (!set2[0].length && path.length) {\n i = path.pop();\n set2 = path.pop();\n set2[0].splice(i, 1);\n set2[1].splice(i, 1);\n }\n delete cache2[id];\n },\n clear: function clear() {\n map = [ [], [] ];\n cache2 = create(null);\n }\n };\n };\n });\n var require_map = __commonJS(function(exports, module) {\n 'use strict';\n var callable = require_valid_callable();\n var forEach = require_for_each();\n var call = Function.prototype.call;\n module.exports = function(obj, cb) {\n var result = {}, thisArg = arguments[2];\n callable(cb);\n forEach(obj, function(value, key, targetObj, index) {\n result[key] = call.call(cb, thisArg, value, key, targetObj, index);\n });\n return result;\n };\n });\n var require_next_tick = __commonJS(function(exports, module) {\n 'use strict';\n var ensureCallable = function ensureCallable(fn) {\n if (typeof fn !== 'function') {\n throw new TypeError(fn + ' is not a function');\n }\n return fn;\n };\n var byObserver = function byObserver(Observer) {\n var node = document.createTextNode(''), queue2, currentQueue, i = 0;\n new Observer(function() {\n var callback;\n if (!queue2) {\n if (!currentQueue) {\n return;\n }\n queue2 = currentQueue;\n } else if (currentQueue) {\n queue2 = currentQueue.concat(queue2);\n }\n currentQueue = queue2;\n queue2 = null;\n if (typeof currentQueue === 'function') {\n callback = currentQueue;\n currentQueue = null;\n callback();\n return;\n }\n node.data = i = ++i % 2;\n while (currentQueue) {\n callback = currentQueue.shift();\n if (!currentQueue.length) {\n currentQueue = null;\n }\n callback();\n }\n }).observe(node, {\n characterData: true\n });\n return function(fn) {\n ensureCallable(fn);\n if (queue2) {\n if (typeof queue2 === 'function') {\n queue2 = [ queue2, fn ];\n } else {\n queue2.push(fn);\n }\n return;\n }\n queue2 = fn;\n node.data = i = ++i % 2;\n };\n };\n module.exports = function() {\n if ((typeof process === 'undefined' ? 'undefined' : _typeof(process)) === 'object' && process && typeof process.nextTick === 'function') {\n return process.nextTick;\n }\n if (typeof queueMicrotask === 'function') {\n return function(cb) {\n queueMicrotask(ensureCallable(cb));\n };\n }\n if ((typeof document === 'undefined' ? 'undefined' : _typeof(document)) === 'object' && document) {\n if (typeof MutationObserver === 'function') {\n return byObserver(MutationObserver);\n }\n if (typeof WebKitMutationObserver === 'function') {\n return byObserver(WebKitMutationObserver);\n }\n }\n if (typeof setImmediate === 'function') {\n return function(cb) {\n setImmediate(ensureCallable(cb));\n };\n }\n if (typeof setTimeout === 'function' || (typeof setTimeout === 'undefined' ? 'undefined' : _typeof(setTimeout)) === 'object') {\n return function(cb) {\n setTimeout(ensureCallable(cb), 0);\n };\n }\n return null;\n }();\n });\n var require_async = __commonJS(function() {\n 'use strict';\n var aFrom = require_from4();\n var objectMap = require_map();\n var mixin = require_mixin();\n var defineLength = require_define_length();\n var nextTick = require_next_tick();\n var slice = Array.prototype.slice;\n var apply = Function.prototype.apply;\n var create = Object.create;\n require_registered_extensions().async = function(tbi, conf) {\n var waiting = create(null), cache2 = create(null), base = conf.memoized, original = conf.original, currentCallback, currentContext, currentArgs;\n conf.memoized = defineLength(function(arg) {\n var args = arguments, last2 = args[args.length - 1];\n if (typeof last2 === 'function') {\n currentCallback = last2;\n args = slice.call(args, 0, -1);\n }\n return base.apply(currentContext = this, currentArgs = args);\n }, base);\n try {\n mixin(conf.memoized, base);\n } catch (ignore) {}\n conf.on('get', function(id) {\n var cb, context, args;\n if (!currentCallback) {\n return;\n }\n if (waiting[id]) {\n if (typeof waiting[id] === 'function') {\n waiting[id] = [ waiting[id], currentCallback ];\n } else {\n waiting[id].push(currentCallback);\n }\n currentCallback = null;\n return;\n }\n cb = currentCallback;\n context = currentContext;\n args = currentArgs;\n currentCallback = currentContext = currentArgs = null;\n nextTick(function() {\n var data;\n if (hasOwnProperty.call(cache2, id)) {\n data = cache2[id];\n conf.emit('getasync', id, args, context);\n apply.call(cb, data.context, data.args);\n } else {\n currentCallback = cb;\n currentContext = context;\n currentArgs = args;\n base.apply(context, args);\n }\n });\n });\n conf.original = function() {\n var args, cb, origCb, result;\n if (!currentCallback) {\n return apply.call(original, this, arguments);\n }\n args = aFrom(arguments);\n cb = function self2(err2) {\n var cb2, args2, id = self2.id;\n if (id == null) {\n nextTick(apply.bind(self2, this, arguments));\n return void 0;\n }\n delete self2.id;\n cb2 = waiting[id];\n delete waiting[id];\n if (!cb2) {\n return void 0;\n }\n args2 = aFrom(arguments);\n if (conf.has(id)) {\n if (err2) {\n conf['delete'](id);\n } else {\n cache2[id] = {\n context: this,\n args: args2\n };\n conf.emit('setasync', id, typeof cb2 === 'function' ? 1 : cb2.length);\n }\n }\n if (typeof cb2 === 'function') {\n result = apply.call(cb2, this, args2);\n } else {\n cb2.forEach(function(cb3) {\n result = apply.call(cb3, this, args2);\n }, this);\n }\n return result;\n };\n origCb = currentCallback;\n currentCallback = currentContext = currentArgs = null;\n args.push(cb);\n result = apply.call(original, this, args);\n cb.cb = origCb;\n currentCallback = cb;\n return result;\n };\n conf.on('set', function(id) {\n if (!currentCallback) {\n conf['delete'](id);\n return;\n }\n if (waiting[id]) {\n if (typeof waiting[id] === 'function') {\n waiting[id] = [ waiting[id], currentCallback.cb ];\n } else {\n waiting[id].push(currentCallback.cb);\n }\n } else {\n waiting[id] = currentCallback.cb;\n }\n delete currentCallback.cb;\n currentCallback.id = id;\n currentCallback = null;\n });\n conf.on('delete', function(id) {\n var result;\n if (hasOwnProperty.call(waiting, id)) {\n return;\n }\n if (!cache2[id]) {\n return;\n }\n result = cache2[id];\n delete cache2[id];\n conf.emit('deleteasync', id, slice.call(result.args, 1));\n });\n conf.on('clear', function() {\n var oldCache = cache2;\n cache2 = create(null);\n conf.emit('clearasync', objectMap(oldCache, function(data) {\n return slice.call(data.args, 1);\n }));\n });\n };\n });\n var require_primitive_set = __commonJS(function(exports, module) {\n 'use strict';\n var forEach = Array.prototype.forEach;\n var create = Object.create;\n module.exports = function(arg) {\n var set2 = create(null);\n forEach.call(arguments, function(name) {\n set2[name] = true;\n });\n return set2;\n };\n });\n var require_is_callable2 = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = function(obj) {\n return typeof obj === 'function';\n };\n });\n var require_validate_stringifiable = __commonJS(function(exports, module) {\n 'use strict';\n var isCallable = require_is_callable2();\n module.exports = function(stringifiable) {\n try {\n if (stringifiable && isCallable(stringifiable.toString)) {\n return stringifiable.toString();\n }\n return String(stringifiable);\n } catch (e) {\n throw new TypeError('Passed argument cannot be stringifed');\n }\n };\n });\n var require_validate_stringifiable_value = __commonJS(function(exports, module) {\n 'use strict';\n var ensureValue = require_valid_value();\n var stringifiable = require_validate_stringifiable();\n module.exports = function(value) {\n return stringifiable(ensureValue(value));\n };\n });\n var require_safe_to_string = __commonJS(function(exports, module) {\n 'use strict';\n var isCallable = require_is_callable2();\n module.exports = function(value) {\n try {\n if (value && isCallable(value.toString)) {\n return value.toString();\n }\n return String(value);\n } catch (e) {\n return '<Non-coercible to string value>';\n }\n };\n });\n var require_to_short_string_representation = __commonJS(function(exports, module) {\n 'use strict';\n var safeToString = require_safe_to_string();\n var reNewLine = /[\\n\\r\\u2028\\u2029]/g;\n module.exports = function(value) {\n var string = safeToString(value);\n if (string.length > 100) {\n string = string.slice(0, 99) + '\\u2026';\n }\n string = string.replace(reNewLine, function(_char) {\n return JSON.stringify(_char).slice(1, -1);\n });\n return string;\n };\n });\n var require_is_promise = __commonJS(function(exports, module) {\n module.exports = isPromise;\n module.exports['default'] = isPromise;\n function isPromise(obj) {\n return !!obj && (_typeof(obj) === 'object' || typeof obj === 'function') && typeof obj.then === 'function';\n }\n });\n var require_promise = __commonJS(function() {\n 'use strict';\n var objectMap = require_map();\n var primitiveSet = require_primitive_set();\n var ensureString = require_validate_stringifiable_value();\n var toShortString = require_to_short_string_representation();\n var isPromise = require_is_promise();\n var nextTick = require_next_tick();\n var create = Object.create;\n var supportedModes = primitiveSet('then', 'then:finally', 'done', 'done:finally');\n require_registered_extensions().promise = function(mode, conf) {\n var waiting = create(null), cache2 = create(null), promises = create(null);\n if (mode === true) {\n mode = null;\n } else {\n mode = ensureString(mode);\n if (!supportedModes[mode]) {\n throw new TypeError('\\'' + toShortString(mode) + '\\' is not valid promise mode');\n }\n }\n conf.on('set', function(id, ignore, promise) {\n var isFailed = false;\n if (!isPromise(promise)) {\n cache2[id] = promise;\n conf.emit('setasync', id, 1);\n return;\n }\n waiting[id] = 1;\n promises[id] = promise;\n var onSuccess = function onSuccess(result) {\n var count = waiting[id];\n if (isFailed) {\n throw new Error('Memoizee error: Detected unordered then|done & finally resolution, which in turn makes proper detection of success/failure impossible (when in \\'done:finally\\' mode)\\nConsider to rely on \\'then\\' or \\'done\\' mode instead.');\n }\n if (!count) {\n return;\n }\n delete waiting[id];\n cache2[id] = result;\n conf.emit('setasync', id, count);\n };\n var onFailure = function onFailure() {\n isFailed = true;\n if (!waiting[id]) {\n return;\n }\n delete waiting[id];\n delete promises[id];\n conf['delete'](id);\n };\n var resolvedMode = mode;\n if (!resolvedMode) {\n resolvedMode = 'then';\n }\n if (resolvedMode === 'then') {\n var nextTickFailure = function nextTickFailure() {\n nextTick(onFailure);\n };\n promise = promise.then(function(result) {\n nextTick(onSuccess.bind(this, result));\n }, nextTickFailure);\n if (typeof promise['finally'] === 'function') {\n promise['finally'](nextTickFailure);\n }\n } else if (resolvedMode === 'done') {\n if (typeof promise.done !== 'function') {\n throw new Error('Memoizee error: Retrieved promise does not implement \\'done\\' in \\'done\\' mode');\n }\n promise.done(onSuccess, onFailure);\n } else if (resolvedMode === 'done:finally') {\n if (typeof promise.done !== 'function') {\n throw new Error('Memoizee error: Retrieved promise does not implement \\'done\\' in \\'done:finally\\' mode');\n }\n if (typeof promise['finally'] !== 'function') {\n throw new Error('Memoizee error: Retrieved promise does not implement \\'finally\\' in \\'done:finally\\' mode');\n }\n promise.done(onSuccess);\n promise['finally'](onFailure);\n }\n });\n conf.on('get', function(id, args, context) {\n var promise;\n if (waiting[id]) {\n ++waiting[id];\n return;\n }\n promise = promises[id];\n var emit = function emit() {\n conf.emit('getasync', id, args, context);\n };\n if (isPromise(promise)) {\n if (typeof promise.done === 'function') {\n promise.done(emit);\n } else {\n promise.then(function() {\n nextTick(emit);\n });\n }\n } else {\n emit();\n }\n });\n conf.on('delete', function(id) {\n delete promises[id];\n if (waiting[id]) {\n delete waiting[id];\n return;\n }\n if (!hasOwnProperty.call(cache2, id)) {\n return;\n }\n var result = cache2[id];\n delete cache2[id];\n conf.emit('deleteasync', id, [ result ]);\n });\n conf.on('clear', function() {\n var oldCache = cache2;\n cache2 = create(null);\n waiting = create(null);\n promises = create(null);\n conf.emit('clearasync', objectMap(oldCache, function(data) {\n return [ data ];\n }));\n });\n };\n });\n var require_dispose = __commonJS(function() {\n 'use strict';\n var callable = require_valid_callable();\n var forEach = require_for_each();\n var extensions = require_registered_extensions();\n var apply = Function.prototype.apply;\n extensions.dispose = function(dispose, conf, options) {\n var del;\n callable(dispose);\n if (options.async && extensions.async || options.promise && extensions.promise) {\n conf.on('deleteasync', del = function del(id, resultArray) {\n apply.call(dispose, null, resultArray);\n });\n conf.on('clearasync', function(cache2) {\n forEach(cache2, function(result, id) {\n del(id, result);\n });\n });\n return;\n }\n conf.on('delete', del = function del(id, result) {\n dispose(result);\n });\n conf.on('clear', function(cache2) {\n forEach(cache2, function(result, id) {\n del(id, result);\n });\n });\n };\n });\n var require_max_timeout = __commonJS(function(exports, module) {\n 'use strict';\n module.exports = 2147483647;\n });\n var require_valid_timeout = __commonJS(function(exports, module) {\n 'use strict';\n var toPosInt = require_to_pos_integer();\n var maxTimeout = require_max_timeout();\n module.exports = function(value) {\n value = toPosInt(value);\n if (value > maxTimeout) {\n throw new TypeError(value + ' exceeds maximum possible timeout');\n }\n return value;\n };\n });\n var require_max_age = __commonJS(function() {\n 'use strict';\n var aFrom = require_from4();\n var forEach = require_for_each();\n var nextTick = require_next_tick();\n var isPromise = require_is_promise();\n var timeout = require_valid_timeout();\n var extensions = require_registered_extensions();\n var noop3 = Function.prototype;\n var max2 = Math.max;\n var min = Math.min;\n var create = Object.create;\n extensions.maxAge = function(maxAge, conf, options) {\n var timeouts, postfix, preFetchAge, preFetchTimeouts;\n maxAge = timeout(maxAge);\n if (!maxAge) {\n return;\n }\n timeouts = create(null);\n postfix = options.async && extensions.async || options.promise && extensions.promise ? 'async' : '';\n conf.on('set' + postfix, function(id) {\n timeouts[id] = setTimeout(function() {\n conf['delete'](id);\n }, maxAge);\n if (typeof timeouts[id].unref === 'function') {\n timeouts[id].unref();\n }\n if (!preFetchTimeouts) {\n return;\n }\n if (preFetchTimeouts[id]) {\n if (preFetchTimeouts[id] !== 'nextTick') {\n clearTimeout(preFetchTimeouts[id]);\n }\n }\n preFetchTimeouts[id] = setTimeout(function() {\n delete preFetchTimeouts[id];\n }, preFetchAge);\n if (typeof preFetchTimeouts[id].unref === 'function') {\n preFetchTimeouts[id].unref();\n }\n });\n conf.on('delete' + postfix, function(id) {\n clearTimeout(timeouts[id]);\n delete timeouts[id];\n if (!preFetchTimeouts) {\n return;\n }\n if (preFetchTimeouts[id] !== 'nextTick') {\n clearTimeout(preFetchTimeouts[id]);\n }\n delete preFetchTimeouts[id];\n });\n if (options.preFetch) {\n if (options.preFetch === true || isNaN(options.preFetch)) {\n preFetchAge = .333;\n } else {\n preFetchAge = max2(min(Number(options.preFetch), 1), 0);\n }\n if (preFetchAge) {\n preFetchTimeouts = {};\n preFetchAge = (1 - preFetchAge) * maxAge;\n conf.on('get' + postfix, function(id, args, context) {\n if (!preFetchTimeouts[id]) {\n preFetchTimeouts[id] = 'nextTick';\n nextTick(function() {\n var result;\n if (preFetchTimeouts[id] !== 'nextTick') {\n return;\n }\n delete preFetchTimeouts[id];\n conf['delete'](id);\n if (options.async) {\n args = aFrom(args);\n args.push(noop3);\n }\n result = conf.memoized.apply(context, args);\n if (options.promise) {\n if (isPromise(result)) {\n if (typeof result.done === 'function') {\n result.done(noop3, noop3);\n } else {\n result.then(noop3, noop3);\n }\n }\n }\n });\n }\n });\n }\n }\n conf.on('clear' + postfix, function() {\n forEach(timeouts, function(id) {\n clearTimeout(id);\n });\n timeouts = {};\n if (preFetchTimeouts) {\n forEach(preFetchTimeouts, function(id) {\n if (id !== 'nextTick') {\n clearTimeout(id);\n }\n });\n preFetchTimeouts = {};\n }\n });\n };\n });\n var require_lru_queue = __commonJS(function(exports, module) {\n 'use strict';\n var toPosInt = require_to_pos_integer();\n var create = Object.create;\n var hasOwnProperty2 = Object.prototype.hasOwnProperty;\n module.exports = function(limit) {\n var size = 0, base = 1, queue2 = create(null), map = create(null), index = 0, del;\n limit = toPosInt(limit);\n return {\n hit: function hit(id) {\n var oldIndex = map[id], nuIndex = ++index;\n queue2[nuIndex] = id;\n map[id] = nuIndex;\n if (!oldIndex) {\n ++size;\n if (size <= limit) {\n return;\n }\n id = queue2[base];\n del(id);\n return id;\n }\n delete queue2[oldIndex];\n if (base !== oldIndex) {\n return;\n }\n while (!hasOwnProperty2.call(queue2, ++base)) {\n continue;\n }\n },\n delete: del = function del(id) {\n var oldIndex = map[id];\n if (!oldIndex) {\n return;\n }\n delete queue2[oldIndex];\n delete map[id];\n --size;\n if (base !== oldIndex) {\n return;\n }\n if (!size) {\n index = 0;\n base = 1;\n return;\n }\n while (!hasOwnProperty2.call(queue2, ++base)) {\n continue;\n }\n },\n clear: function clear() {\n size = 0;\n base = 1;\n queue2 = create(null);\n map = create(null);\n index = 0;\n }\n };\n };\n });\n var require_max = __commonJS(function() {\n 'use strict';\n var toPosInteger = require_to_pos_integer();\n var lruQueue = require_lru_queue();\n var extensions = require_registered_extensions();\n extensions.max = function(max2, conf, options) {\n var postfix, queue2, hit;\n max2 = toPosInteger(max2);\n if (!max2) {\n return;\n }\n queue2 = lruQueue(max2);\n postfix = options.async && extensions.async || options.promise && extensions.promise ? 'async' : '';\n conf.on('set' + postfix, hit = function hit(id) {\n id = queue2.hit(id);\n if (id === void 0) {\n return;\n }\n conf['delete'](id);\n });\n conf.on('get' + postfix, hit);\n conf.on('delete' + postfix, queue2['delete']);\n conf.on('clear' + postfix, queue2.clear);\n };\n });\n var require_ref_counter = __commonJS(function() {\n 'use strict';\n var d2 = require_d();\n var extensions = require_registered_extensions();\n var create = Object.create;\n var defineProperties = Object.defineProperties;\n extensions.refCounter = function(ignore, conf, options) {\n var cache2, postfix;\n cache2 = create(null);\n postfix = options.async && extensions.async || options.promise && extensions.promise ? 'async' : '';\n conf.on('set' + postfix, function(id, length) {\n cache2[id] = length || 1;\n });\n conf.on('get' + postfix, function(id) {\n ++cache2[id];\n });\n conf.on('delete' + postfix, function(id) {\n delete cache2[id];\n });\n conf.on('clear' + postfix, function() {\n cache2 = {};\n });\n defineProperties(conf.memoized, {\n deleteRef: d2(function() {\n var id = conf.get(arguments);\n if (id === null) {\n return null;\n }\n if (!cache2[id]) {\n return null;\n }\n if (!--cache2[id]) {\n conf['delete'](id);\n return true;\n }\n return false;\n }),\n getRefCount: d2(function() {\n var id = conf.get(arguments);\n if (id === null) {\n return 0;\n }\n if (!cache2[id]) {\n return 0;\n }\n return cache2[id];\n })\n });\n };\n });\n var require_memoizee = __commonJS(function(exports, module) {\n 'use strict';\n var normalizeOpts = require_normalize_options();\n var resolveLength = require_resolve_length();\n var plain = require_plain();\n module.exports = function(fn) {\n var options = normalizeOpts(arguments[1]), length;\n if (!options.normalizer) {\n length = options.length = resolveLength(options.length, fn.length, options.async);\n if (length !== 0) {\n if (options.primitive) {\n if (length === false) {\n options.normalizer = require_primitive();\n } else if (length > 1) {\n options.normalizer = require_get_primitive_fixed()(length);\n }\n } else if (length === false) {\n options.normalizer = require_get()();\n } else if (length === 1) {\n options.normalizer = require_get_1()();\n } else {\n options.normalizer = require_get_fixed()(length);\n }\n }\n }\n if (options.async) {\n require_async();\n }\n if (options.promise) {\n require_promise();\n }\n if (options.dispose) {\n require_dispose();\n }\n if (options.maxAge) {\n require_max_age();\n }\n if (options.max) {\n require_max();\n }\n if (options.refCounter) {\n require_ref_counter();\n }\n return plain(fn, options);\n };\n });\n var definitions = [ {\n name: 'NA',\n value: 'inapplicable',\n priority: 0,\n group: 'inapplicable'\n }, {\n name: 'PASS',\n value: 'passed',\n priority: 1,\n group: 'passes'\n }, {\n name: 'CANTTELL',\n value: 'cantTell',\n priority: 2,\n group: 'incomplete'\n }, {\n name: 'FAIL',\n value: 'failed',\n priority: 3,\n group: 'violations'\n } ];\n var constants = {\n helpUrlBase: 'https://dequeuniversity.com/rules/',\n gridSize: 200,\n selectorSimilarFilterLimit: 700,\n results: [],\n resultGroups: [],\n resultGroupMap: {},\n impact: Object.freeze([ 'minor', 'moderate', 'serious', 'critical' ]),\n preload: Object.freeze({\n assets: [ 'cssom', 'media' ],\n timeout: 1e4\n }),\n allOrigins: '<unsafe_all_origins>',\n sameOrigin: '<same_origin>',\n serializableErrorProps: Object.freeze([ 'message', 'stack', 'name', 'code', 'ruleId', 'method' ])\n };\n definitions.forEach(function(definition) {\n var name = definition.name;\n var value = definition.value;\n var priority = definition.priority;\n var group = definition.group;\n constants[name] = value;\n constants[name + '_PRIO'] = priority;\n constants[name + '_GROUP'] = group;\n constants.results[priority] = value;\n constants.resultGroups[priority] = group;\n constants.resultGroupMap[value] = group;\n });\n Object.freeze(constants.results);\n Object.freeze(constants.resultGroups);\n Object.freeze(constants.resultGroupMap);\n Object.freeze(constants);\n var constants_default = constants;\n function log() {\n if ((typeof console === 'undefined' ? 'undefined' : _typeof(console)) === 'object' && console.log) {\n Function.prototype.apply.call(console.log, console, arguments);\n }\n }\n var log_default = log;\n var whitespaceRegex = /[\\t\\r\\n\\f]/g;\n var AbstractVirtualNode = function() {\n function AbstractVirtualNode() {\n _classCallCheck(this, AbstractVirtualNode);\n this.parent = void 0;\n }\n return _createClass(AbstractVirtualNode, [ {\n key: 'props',\n get: function get() {\n throw new Error('VirtualNode class must have a \"props\" object consisting of \"nodeType\" and \"nodeName\" properties');\n }\n }, {\n key: 'attrNames',\n get: function get() {\n throw new Error('VirtualNode class must have an \"attrNames\" property');\n }\n }, {\n key: 'attr',\n value: function attr() {\n throw new Error('VirtualNode class must have an \"attr\" function');\n }\n }, {\n key: 'hasAttr',\n value: function hasAttr() {\n throw new Error('VirtualNode class must have a \"hasAttr\" function');\n }\n }, {\n key: 'hasClass',\n value: function hasClass(className) {\n var classAttr = this.attr('class');\n if (!classAttr) {\n return false;\n }\n var selector = ' ' + className + ' ';\n return (' ' + classAttr + ' ').replace(whitespaceRegex, ' ').indexOf(selector) >= 0;\n }\n } ]);\n }();\n var abstract_virtual_node_default = AbstractVirtualNode;\n var utils_exports = {};\n __export(utils_exports, {\n DqElement: function DqElement() {\n return dq_element_default;\n },\n RuleError: function RuleError() {\n return rule_error_default;\n },\n aggregate: function aggregate() {\n return aggregate_default;\n },\n aggregateChecks: function aggregateChecks() {\n return aggregate_checks_default;\n },\n aggregateNodeResults: function aggregateNodeResults() {\n return aggregate_node_results_default;\n },\n aggregateResult: function aggregateResult() {\n return aggregate_result_default;\n },\n areStylesSet: function areStylesSet() {\n return are_styles_set_default;\n },\n assert: function assert() {\n return assert_default;\n },\n checkHelper: function checkHelper() {\n return check_helper_default;\n },\n clone: function clone() {\n return clone2;\n },\n closest: function closest() {\n return closest_default;\n },\n collectResultsFromFrames: function collectResultsFromFrames() {\n return _collectResultsFromFrames;\n },\n contains: function contains() {\n return _contains;\n },\n convertSelector: function convertSelector() {\n return _convertSelector;\n },\n cssParser: function cssParser() {\n return css_parser_default;\n },\n deepMerge: function deepMerge() {\n return deep_merge_default;\n },\n escapeSelector: function escapeSelector() {\n return escape_selector_default;\n },\n extendMetaData: function extendMetaData() {\n return extend_meta_data_default;\n },\n filterHtmlAttrs: function filterHtmlAttrs() {\n return _filterHtmlAttrs;\n },\n finalizeRuleResult: function finalizeRuleResult() {\n return _finalizeRuleResult;\n },\n findBy: function findBy() {\n return find_by_default;\n },\n getAllChecks: function getAllChecks() {\n return get_all_checks_default;\n },\n getAncestry: function getAncestry() {\n return _getAncestry;\n },\n getBaseLang: function getBaseLang() {\n return get_base_lang_default;\n },\n getCheckMessage: function getCheckMessage() {\n return get_check_message_default;\n },\n getCheckOption: function getCheckOption() {\n return get_check_option_default;\n },\n getEnvironmentData: function getEnvironmentData() {\n return _getEnvironmentData;\n },\n getFlattenedTree: function getFlattenedTree() {\n return _getFlattenedTree;\n },\n getFrameContexts: function getFrameContexts() {\n return _getFrameContexts;\n },\n getFriendlyUriEnd: function getFriendlyUriEnd() {\n return get_friendly_uri_end_default;\n },\n getNodeAttributes: function getNodeAttributes() {\n return get_node_attributes_default;\n },\n getNodeFromTree: function getNodeFromTree() {\n return get_node_from_tree_default;\n },\n getPreloadConfig: function getPreloadConfig() {\n return _getPreloadConfig;\n },\n getRootNode: function getRootNode() {\n return get_root_node_default;\n },\n getRule: function getRule() {\n return _getRule;\n },\n getScroll: function getScroll() {\n return get_scroll_default;\n },\n getScrollState: function getScrollState() {\n return get_scroll_state_default;\n },\n getSelector: function getSelector() {\n return get_selector_default;\n },\n getSelectorData: function getSelectorData() {\n return _getSelectorData;\n },\n getShadowSelector: function getShadowSelector() {\n return _getShadowSelector;\n },\n getStandards: function getStandards() {\n return _getStandards;\n },\n getStyleSheetFactory: function getStyleSheetFactory() {\n return get_stylesheet_factory_default;\n },\n getXpath: function getXpath() {\n return get_xpath_default;\n },\n injectStyle: function injectStyle() {\n return inject_style_default;\n },\n isArrayLike: function isArrayLike() {\n return _isArrayLike;\n },\n isContextObject: function isContextObject() {\n return _isContextObject;\n },\n isContextProp: function isContextProp() {\n return _isContextProp;\n },\n isContextSpec: function isContextSpec() {\n return _isContextSpec;\n },\n isHidden: function isHidden() {\n return is_hidden_default;\n },\n isHtmlElement: function isHtmlElement() {\n return is_html_element_default;\n },\n isLabelledFramesSelector: function isLabelledFramesSelector() {\n return _isLabelledFramesSelector;\n },\n isLabelledShadowDomSelector: function isLabelledShadowDomSelector() {\n return _isLabelledShadowDomSelector;\n },\n isNodeInContext: function isNodeInContext() {\n return _isNodeInContext;\n },\n isShadowRoot: function isShadowRoot() {\n return is_shadow_root_default;\n },\n isValidLang: function isValidLang() {\n return valid_langs_default;\n },\n isXHTML: function isXHTML() {\n return is_xhtml_default;\n },\n matchAncestry: function matchAncestry() {\n return _matchAncestry;\n },\n matches: function matches() {\n return _matches;\n },\n matchesExpression: function matchesExpression() {\n return _matchesExpression;\n },\n matchesSelector: function matchesSelector() {\n return element_matches_default;\n },\n memoize: function memoize() {\n return memoize_default;\n },\n mergeResults: function mergeResults() {\n return merge_results_default;\n },\n nodeLookup: function nodeLookup() {\n return _nodeLookup;\n },\n nodeSerializer: function nodeSerializer() {\n return node_serializer_default;\n },\n nodeSorter: function nodeSorter() {\n return node_sorter_default;\n },\n objectHasOwn: function objectHasOwn() {\n return _objectHasOwn;\n },\n parseCrossOriginStylesheet: function parseCrossOriginStylesheet() {\n return parse_crossorigin_stylesheet_default;\n },\n parseSameOriginStylesheet: function parseSameOriginStylesheet() {\n return parse_sameorigin_stylesheet_default;\n },\n parseStylesheet: function parseStylesheet() {\n return parse_stylesheet_default;\n },\n parseTabindex: function parseTabindex() {\n return parse_tabindex_default;\n },\n performanceTimer: function performanceTimer() {\n return performance_timer_default;\n },\n pollyfillElementsFromPoint: function pollyfillElementsFromPoint() {\n return _pollyfillElementsFromPoint;\n },\n preload: function preload() {\n return _preload;\n },\n preloadCssom: function preloadCssom() {\n return preload_cssom_default;\n },\n preloadMedia: function preloadMedia() {\n return preload_media_default;\n },\n processMessage: function processMessage() {\n return process_message_default;\n },\n publishMetaData: function publishMetaData() {\n return _publishMetaData;\n },\n querySelectorAll: function querySelectorAll() {\n return query_selector_all_default;\n },\n querySelectorAllFilter: function querySelectorAllFilter() {\n return query_selector_all_filter_default;\n },\n queue: function queue() {\n return queue_default;\n },\n respondable: function respondable() {\n return _respondable;\n },\n ruleShouldRun: function ruleShouldRun() {\n return rule_should_run_default;\n },\n select: function select() {\n return _select;\n },\n sendCommandToFrame: function sendCommandToFrame() {\n return _sendCommandToFrame;\n },\n serializeError: function serializeError() {\n return _serializeError;\n },\n setScrollState: function setScrollState() {\n return set_scroll_state_default;\n },\n shadowSelect: function shadowSelect() {\n return _shadowSelect;\n },\n shadowSelectAll: function shadowSelectAll() {\n return _shadowSelectAll;\n },\n shouldPreload: function shouldPreload() {\n return _shouldPreload;\n },\n toArray: function toArray() {\n return to_array_default;\n },\n tokenList: function tokenList() {\n return token_list_default;\n },\n uniqueArray: function uniqueArray() {\n return unique_array_default;\n },\n uuid: function uuid() {\n return uuid_default;\n },\n validInputTypes: function validInputTypes() {\n return valid_input_type_default;\n },\n validLangs: function validLangs() {\n return _validLangs;\n }\n });\n function aggregate(map, values2, initial) {\n values2 = values2.slice();\n if (initial) {\n values2.push(initial);\n }\n var sorting = values2.map(function(val) {\n return map.indexOf(val);\n }).sort();\n return map[sorting.pop()];\n }\n var aggregate_default = aggregate;\n var CANTTELL_PRIO = constants_default.CANTTELL_PRIO, FAIL_PRIO = constants_default.FAIL_PRIO;\n var checkMap = [];\n checkMap[constants_default.PASS_PRIO] = true;\n checkMap[constants_default.CANTTELL_PRIO] = null;\n checkMap[constants_default.FAIL_PRIO] = false;\n var checkTypes = [ 'any', 'all', 'none' ];\n function anyAllNone(obj, functor) {\n return checkTypes.reduce(function(out, type2) {\n out[type2] = (obj[type2] || []).map(function(val) {\n return functor(val, type2);\n });\n return out;\n }, {});\n }\n function aggregateChecks(nodeResOriginal) {\n var nodeResult = Object.assign({}, nodeResOriginal);\n anyAllNone(nodeResult, function(check, type2) {\n var i = typeof check.result === 'undefined' ? -1 : checkMap.indexOf(check.result);\n check.priority = i !== -1 ? i : constants_default.CANTTELL_PRIO;\n if (type2 === 'none') {\n if (check.priority === constants_default.PASS_PRIO) {\n check.priority = constants_default.FAIL_PRIO;\n } else if (check.priority === constants_default.FAIL_PRIO) {\n check.priority = constants_default.PASS_PRIO;\n }\n }\n });\n var priorities = {\n all: nodeResult.all.reduce(function(a2, b2) {\n return Math.max(a2, b2.priority);\n }, 0),\n none: nodeResult.none.reduce(function(a2, b2) {\n return Math.max(a2, b2.priority);\n }, 0),\n any: nodeResult.any.reduce(function(a2, b2) {\n return Math.min(a2, b2.priority);\n }, 4) % 4\n };\n nodeResult.priority = Math.max(priorities.all, priorities.none, priorities.any);\n var impacts = [];\n checkTypes.forEach(function(type2) {\n nodeResult[type2] = nodeResult[type2].filter(function(check) {\n return check.priority === nodeResult.priority && check.priority === priorities[type2];\n });\n nodeResult[type2].forEach(function(check) {\n return impacts.push(check.impact);\n });\n });\n if ([ CANTTELL_PRIO, FAIL_PRIO ].includes(nodeResult.priority)) {\n nodeResult.impact = aggregate_default(constants_default.impact, impacts);\n } else {\n nodeResult.impact = null;\n }\n anyAllNone(nodeResult, function(c4) {\n delete c4.result;\n delete c4.priority;\n });\n nodeResult.result = constants_default.results[nodeResult.priority];\n delete nodeResult.priority;\n return nodeResult;\n }\n var aggregate_checks_default = aggregateChecks;\n function _finalizeRuleResult(ruleResult) {\n var rule = axe._audit.rules.find(function(_ref) {\n var id = _ref.id;\n return id === ruleResult.id;\n });\n if (rule && rule.impact) {\n ruleResult.nodes.forEach(function(node) {\n [ 'any', 'all', 'none' ].forEach(function(checkType) {\n (node[checkType] || []).forEach(function(checkResult) {\n checkResult.impact = rule.impact;\n });\n });\n });\n }\n Object.assign(ruleResult, aggregate_node_results_default(ruleResult.nodes));\n delete ruleResult.nodes;\n return ruleResult;\n }\n function aggregateNodeResults(nodeResults) {\n var ruleResult = {};\n nodeResults = nodeResults.map(function(nodeResult) {\n if (nodeResult.any && nodeResult.all && nodeResult.none) {\n return aggregate_checks_default(nodeResult);\n } else if (Array.isArray(nodeResult.node)) {\n return _finalizeRuleResult(nodeResult);\n } else {\n throw new TypeError('Invalid Result type');\n }\n });\n if (nodeResults && nodeResults.length) {\n var resultList = nodeResults.map(function(node) {\n return node.result;\n });\n ruleResult.result = aggregate_default(constants_default.results, resultList, ruleResult.result);\n } else {\n ruleResult.result = 'inapplicable';\n }\n constants_default.resultGroups.forEach(function(group) {\n return ruleResult[group] = [];\n });\n nodeResults.forEach(function(nodeResult) {\n var groupName = constants_default.resultGroupMap[nodeResult.result];\n ruleResult[groupName].push(nodeResult);\n });\n var impactGroup = constants_default.FAIL_GROUP;\n if (ruleResult[impactGroup].length === 0) {\n impactGroup = constants_default.CANTTELL_GROUP;\n }\n if (ruleResult[impactGroup].length > 0) {\n var impactList = ruleResult[impactGroup].map(function(failure) {\n return failure.impact;\n });\n ruleResult.impact = aggregate_default(constants_default.impact, impactList) || null;\n } else {\n ruleResult.impact = null;\n }\n return ruleResult;\n }\n var aggregate_node_results_default = aggregateNodeResults;\n function copyToGroup(resultObject, subResult, group) {\n var resultCopy = Object.assign({}, subResult);\n resultCopy.nodes = (resultCopy[group] || []).concat();\n constants_default.resultGroups.forEach(function(resultGroup) {\n delete resultCopy[resultGroup];\n });\n resultObject[group].push(resultCopy);\n }\n function aggregateResult(results) {\n var resultObject = {};\n constants_default.resultGroups.forEach(function(groupName) {\n return resultObject[groupName] = [];\n });\n results.forEach(function(subResult) {\n if (subResult.error) {\n copyToGroup(resultObject, subResult, constants_default.CANTTELL_GROUP);\n } else if (subResult.result === constants_default.NA) {\n copyToGroup(resultObject, subResult, constants_default.NA_GROUP);\n } else {\n constants_default.resultGroups.forEach(function(group) {\n if (Array.isArray(subResult[group]) && subResult[group].length > 0) {\n copyToGroup(resultObject, subResult, group);\n }\n });\n }\n });\n return resultObject;\n }\n var aggregate_result_default = aggregateResult;\n function areStylesSet(el, styles, stopAt) {\n var styl = window.getComputedStyle(el, null);\n if (!styl) {\n return false;\n }\n for (var i = 0; i < styles.length; ++i) {\n var att = styles[i];\n if (styl.getPropertyValue(att.property) === att.value) {\n return true;\n }\n }\n if (!el.parentNode || el.nodeName.toUpperCase() === stopAt.toUpperCase()) {\n return false;\n }\n return areStylesSet(el.parentNode, styles, stopAt);\n }\n var are_styles_set_default = areStylesSet;\n function assert(bool, message) {\n if (!bool) {\n throw new Error(message);\n }\n }\n var assert_default = assert;\n function toArray(thing) {\n return Array.prototype.slice.call(thing);\n }\n var to_array_default = toArray;\n function escapeSelector(value) {\n var string = String(value);\n var length = string.length;\n var index = -1;\n var codeUnit;\n var result = '';\n var firstCodeUnit = string.charCodeAt(0);\n while (++index < length) {\n codeUnit = string.charCodeAt(index);\n if (codeUnit == 0) {\n result += '\\ufffd';\n continue;\n }\n if (codeUnit >= 1 && codeUnit <= 31 || codeUnit == 127 || index == 0 && codeUnit >= 48 && codeUnit <= 57 || index == 1 && codeUnit >= 48 && codeUnit <= 57 && firstCodeUnit == 45) {\n result += '\\\\' + codeUnit.toString(16) + ' ';\n continue;\n }\n if (index == 0 && length == 1 && codeUnit == 45) {\n result += '\\\\' + string.charAt(index);\n continue;\n }\n if (codeUnit >= 128 || codeUnit == 45 || codeUnit == 95 || codeUnit >= 48 && codeUnit <= 57 || codeUnit >= 65 && codeUnit <= 90 || codeUnit >= 97 && codeUnit <= 122) {\n result += string.charAt(index);\n continue;\n }\n result += '\\\\' + string.charAt(index);\n }\n return result;\n }\n var escape_selector_default = escapeSelector;\n function isMostlyNumbers() {\n var str = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n return str.length !== 0 && (str.match(/[0-9]/g) || '').length >= str.length / 2;\n }\n function splitString(str, splitIndex) {\n return [ str.substring(0, splitIndex), str.substring(splitIndex) ];\n }\n function trimRight(str) {\n return str.replace(/\\s+$/, '');\n }\n function uriParser(url) {\n var original = url;\n var protocol = '', domain = '', port = '', path = '', query = '', hash = '';\n if (url.includes('#')) {\n var _splitString = splitString(url, url.indexOf('#'));\n var _splitString2 = _slicedToArray(_splitString, 2);\n url = _splitString2[0];\n hash = _splitString2[1];\n }\n if (url.includes('?')) {\n var _splitString3 = splitString(url, url.indexOf('?'));\n var _splitString4 = _slicedToArray(_splitString3, 2);\n url = _splitString4[0];\n query = _splitString4[1];\n }\n if (url.includes('://')) {\n var _url$split = url.split('://');\n var _url$split2 = _slicedToArray(_url$split, 2);\n protocol = _url$split2[0];\n url = _url$split2[1];\n var _splitString5 = splitString(url, url.indexOf('/'));\n var _splitString6 = _slicedToArray(_splitString5, 2);\n domain = _splitString6[0];\n url = _splitString6[1];\n } else if (url.substr(0, 2) === '//') {\n url = url.substr(2);\n var _splitString7 = splitString(url, url.indexOf('/'));\n var _splitString8 = _slicedToArray(_splitString7, 2);\n domain = _splitString8[0];\n url = _splitString8[1];\n }\n if (domain.substr(0, 4) === 'www.') {\n domain = domain.substr(4);\n }\n if (domain && domain.includes(':')) {\n var _splitString9 = splitString(domain, domain.indexOf(':'));\n var _splitString0 = _slicedToArray(_splitString9, 2);\n domain = _splitString0[0];\n port = _splitString0[1];\n }\n path = url;\n return {\n original: original,\n protocol: protocol,\n domain: domain,\n port: port,\n path: path,\n query: query,\n hash: hash\n };\n }\n function getFriendlyUriEnd() {\n var uri = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (uri.length <= 1 || uri.substr(0, 5) === 'data:' || uri.substr(0, 11) === 'javascript:' || uri.includes('?')) {\n return;\n }\n var currentDomain = options.currentDomain, _options$maxLength = options.maxLength, maxLength = _options$maxLength === void 0 ? 25 : _options$maxLength;\n var _uriParser = uriParser(uri), path = _uriParser.path, domain = _uriParser.domain, hash = _uriParser.hash;\n var pathEnd = path.substr(path.substr(0, path.length - 2).lastIndexOf('/') + 1);\n if (hash) {\n if (pathEnd && (pathEnd + hash).length <= maxLength) {\n return trimRight(pathEnd + hash);\n } else if (pathEnd.length < 2 && hash.length > 2 && hash.length <= maxLength) {\n return trimRight(hash);\n } else {\n return;\n }\n } else if (domain && domain.length < maxLength && path.length <= 1) {\n return trimRight(domain + path);\n }\n if (path === '/' + pathEnd && domain && currentDomain && domain !== currentDomain && (domain + path).length <= maxLength) {\n return trimRight(domain + path);\n }\n var lastDotIndex = pathEnd.lastIndexOf('.');\n if ((lastDotIndex === -1 || lastDotIndex > 1) && (lastDotIndex !== -1 || pathEnd.length > 2) && pathEnd.length <= maxLength && !pathEnd.match(/index(\\.[a-zA-Z]{2-4})?/) && !isMostlyNumbers(pathEnd)) {\n return trimRight(pathEnd);\n }\n }\n var get_friendly_uri_end_default = getFriendlyUriEnd;\n function getNodeAttributes(node) {\n if (node.attributes instanceof window.NamedNodeMap) {\n return node.attributes;\n }\n return node.cloneNode(false).attributes;\n }\n var get_node_attributes_default = getNodeAttributes;\n var matchesSelector = function() {\n var method;\n function getMethod(node) {\n var candidates = [ 'matches', 'matchesSelector', 'mozMatchesSelector', 'webkitMatchesSelector', 'msMatchesSelector' ];\n var length = candidates.length;\n var index, candidate;\n for (index = 0; index < length; index++) {\n candidate = candidates[index];\n if (node[candidate]) {\n return candidate;\n }\n }\n }\n return function(node, selector) {\n if (!method || !node[method]) {\n method = getMethod(node);\n }\n if (node[method]) {\n return node[method](selector);\n }\n return false;\n };\n }();\n var element_matches_default = matchesSelector;\n var imports_exports = {};\n __export(imports_exports, {\n ArrayFrom: function ArrayFrom() {\n return import_from2['default'];\n },\n Colorjs: function Colorjs() {\n return _Color;\n },\n CssSelectorParser: function CssSelectorParser() {\n return import_css_selector_parser.CssSelectorParser;\n },\n doT: function doT() {\n return import_dot['default'];\n },\n emojiRegexText: function emojiRegexText() {\n return emoji_regex_default;\n },\n memoize: function memoize() {\n return import_memoizee['default'];\n }\n });\n var import_es6_promise = __toModule(require_es6_promise());\n var import_typedarray = __toModule(require_typedarray());\n var import_weakmap_polyfill = __toModule(require_weakmap_polyfill());\n var import_has_own = __toModule(require_has_own3());\n var import_values = __toModule(require_values3());\n var import_from = __toModule(require_from3());\n if (!('hasOwn' in Object)) {\n Object.hasOwn = import_has_own['default'];\n }\n if (!('values' in Object)) {\n Object.values = import_values['default'];\n }\n if (!('Promise' in window)) {\n import_es6_promise['default'].polyfill();\n }\n if (!('Uint32Array' in window)) {\n window.Uint32Array = import_typedarray.Uint32Array;\n }\n if (window.Uint32Array) {\n if (!('some' in window.Uint32Array.prototype)) {\n Object.defineProperty(window.Uint32Array.prototype, 'some', {\n value: Array.prototype.some\n });\n }\n if (!('reduce' in window.Uint32Array.prototype)) {\n Object.defineProperty(window.Uint32Array.prototype, 'reduce', {\n value: Array.prototype.reduce\n });\n }\n }\n if (typeof Object.assign !== 'function') {\n (function() {\n Object.assign = function(target) {\n if (target === void 0 || target === null) {\n throw new TypeError('Cannot convert undefined or null to object');\n }\n var output = Object(target);\n for (var index = 1; index < arguments.length; index++) {\n var source = arguments[index];\n if (source !== void 0 && source !== null) {\n for (var nextKey in source) {\n if (source.hasOwnProperty(nextKey)) {\n output[nextKey] = source[nextKey];\n }\n }\n }\n }\n return output;\n };\n })();\n }\n if (!Array.prototype.find) {\n Object.defineProperty(Array.prototype, 'find', {\n value: function value(predicate) {\n if (this === null) {\n throw new TypeError('Array.prototype.find called on null or undefined');\n }\n if (typeof predicate !== 'function') {\n throw new TypeError('predicate must be a function');\n }\n var list = Object(this);\n var length = list.length >>> 0;\n var thisArg = arguments[1];\n var value;\n for (var i = 0; i < length; i++) {\n value = list[i];\n if (predicate.call(thisArg, value, i, list)) {\n return value;\n }\n }\n return void 0;\n }\n });\n }\n if (!Array.prototype.findIndex) {\n Object.defineProperty(Array.prototype, 'findIndex', {\n value: function value(predicate, thisArg) {\n if (this === null) {\n throw new TypeError('Array.prototype.find called on null or undefined');\n }\n if (typeof predicate !== 'function') {\n throw new TypeError('predicate must be a function');\n }\n var list = Object(this);\n var length = list.length >>> 0;\n var value;\n for (var i = 0; i < length; i++) {\n value = list[i];\n if (predicate.call(thisArg, value, i, list)) {\n return i;\n }\n }\n return -1;\n }\n });\n }\n if (!Array.prototype.includes) {\n Object.defineProperty(Array.prototype, 'includes', {\n value: function value(searchElement) {\n var O = Object(this);\n var len = parseInt(O.length, 10) || 0;\n if (len === 0) {\n return false;\n }\n var n2 = parseInt(arguments[1], 10) || 0;\n var k;\n if (n2 >= 0) {\n k = n2;\n } else {\n k = len + n2;\n if (k < 0) {\n k = 0;\n }\n }\n var currentElement;\n while (k < len) {\n currentElement = O[k];\n if (searchElement === currentElement || searchElement !== searchElement && currentElement !== currentElement) {\n return true;\n }\n k++;\n }\n return false;\n }\n });\n }\n if (!Array.prototype.some) {\n Object.defineProperty(Array.prototype, 'some', {\n value: function value(fun) {\n if (this == null) {\n throw new TypeError('Array.prototype.some called on null or undefined');\n }\n if (typeof fun !== 'function') {\n throw new TypeError();\n }\n var t = Object(this);\n var len = t.length >>> 0;\n var thisArg = arguments.length >= 2 ? arguments[1] : void 0;\n for (var i = 0; i < len; i++) {\n if (i in t && fun.call(thisArg, t[i], i, t)) {\n return true;\n }\n }\n return false;\n }\n });\n }\n if (!Array.from) {\n Array.from = import_from['default'];\n }\n if (!String.prototype.includes) {\n String.prototype.includes = function(search, start) {\n if (typeof start !== 'number') {\n start = 0;\n }\n if (start + search.length > this.length) {\n return false;\n } else {\n return this.indexOf(search, start) !== -1;\n }\n };\n }\n if (!Array.prototype.flat) {\n Object.defineProperty(Array.prototype, 'flat', {\n configurable: true,\n value: function flat() {\n var depth = isNaN(arguments[0]) ? 1 : Number(arguments[0]);\n return depth ? Array.prototype.reduce.call(this, function(acc, cur) {\n if (Array.isArray(cur)) {\n acc.push.apply(acc, flat.call(cur, depth - 1));\n } else {\n acc.push(cur);\n }\n return acc;\n }, []) : Array.prototype.slice.call(this);\n },\n writable: true\n });\n }\n if (window.Node && !('isConnected' in window.Node.prototype)) {\n Object.defineProperty(window.Node.prototype, 'isConnected', {\n get: function get() {\n return !this.ownerDocument || !(this.ownerDocument.compareDocumentPosition(this) & this.DOCUMENT_POSITION_DISCONNECTED);\n }\n });\n }\n var import_css_selector_parser = __toModule(require_lib());\n var import_dot = __toModule(require_doT());\n var emoji_regex_default = function emoji_regex_default() {\n return /[#*0-9]\\uFE0F?\\u20E3|[\\xA9\\xAE\\u203C\\u2049\\u2122\\u2139\\u2194-\\u2199\\u21A9\\u21AA\\u231A\\u231B\\u2328\\u23CF\\u23ED-\\u23EF\\u23F1\\u23F2\\u23F8-\\u23FA\\u24C2\\u25AA\\u25AB\\u25B6\\u25C0\\u25FB\\u25FC\\u25FE\\u2600-\\u2604\\u260E\\u2611\\u2614\\u2615\\u2618\\u2620\\u2622\\u2623\\u2626\\u262A\\u262E\\u262F\\u2638-\\u263A\\u2640\\u2642\\u2648-\\u2653\\u265F\\u2660\\u2663\\u2665\\u2666\\u2668\\u267B\\u267E\\u267F\\u2692\\u2694-\\u2697\\u2699\\u269B\\u269C\\u26A0\\u26A7\\u26AA\\u26B0\\u26B1\\u26BD\\u26BE\\u26C4\\u26C8\\u26CF\\u26D1\\u26E9\\u26F0-\\u26F5\\u26F7\\u26F8\\u26FA\\u2702\\u2708\\u2709\\u270F\\u2712\\u2714\\u2716\\u271D\\u2721\\u2733\\u2734\\u2744\\u2747\\u2757\\u2763\\u27A1\\u2934\\u2935\\u2B05-\\u2B07\\u2B1B\\u2B1C\\u2B55\\u3030\\u303D\\u3297\\u3299]\\uFE0F?|[\\u261D\\u270C\\u270D](?:\\uD83C[\\uDFFB-\\uDFFF]|\\uFE0F)?|[\\u270A\\u270B](?:\\uD83C[\\uDFFB-\\uDFFF])?|[\\u23E9-\\u23EC\\u23F0\\u23F3\\u25FD\\u2693\\u26A1\\u26AB\\u26C5\\u26CE\\u26D4\\u26EA\\u26FD\\u2705\\u2728\\u274C\\u274E\\u2753-\\u2755\\u2795-\\u2797\\u27B0\\u27BF\\u2B50]|\\u26D3\\uFE0F?(?:\\u200D\\uD83D\\uDCA5)?|\\u26F9(?:\\uD83C[\\uDFFB-\\uDFFF]|\\uFE0F)?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|\\u2764\\uFE0F?(?:\\u200D(?:\\uD83D\\uDD25|\\uD83E\\uDE79))?|\\uD83C(?:[\\uDC04\\uDD70\\uDD71\\uDD7E\\uDD7F\\uDE02\\uDE37\\uDF21\\uDF24-\\uDF2C\\uDF36\\uDF7D\\uDF96\\uDF97\\uDF99-\\uDF9B\\uDF9E\\uDF9F\\uDFCD\\uDFCE\\uDFD4-\\uDFDF\\uDFF5\\uDFF7]\\uFE0F?|[\\uDF85\\uDFC2\\uDFC7](?:\\uD83C[\\uDFFB-\\uDFFF])?|[\\uDFC4\\uDFCA](?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDFCB\\uDFCC](?:\\uD83C[\\uDFFB-\\uDFFF]|\\uFE0F)?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDCCF\\uDD8E\\uDD91-\\uDD9A\\uDE01\\uDE1A\\uDE2F\\uDE32-\\uDE36\\uDE38-\\uDE3A\\uDE50\\uDE51\\uDF00-\\uDF20\\uDF2D-\\uDF35\\uDF37-\\uDF43\\uDF45-\\uDF4A\\uDF4C-\\uDF7C\\uDF7E-\\uDF84\\uDF86-\\uDF93\\uDFA0-\\uDFC1\\uDFC5\\uDFC6\\uDFC8\\uDFC9\\uDFCF-\\uDFD3\\uDFE0-\\uDFF0\\uDFF8-\\uDFFF]|\\uDDE6\\uD83C[\\uDDE8-\\uDDEC\\uDDEE\\uDDF1\\uDDF2\\uDDF4\\uDDF6-\\uDDFA\\uDDFC\\uDDFD\\uDDFF]|\\uDDE7\\uD83C[\\uDDE6\\uDDE7\\uDDE9-\\uDDEF\\uDDF1-\\uDDF4\\uDDF6-\\uDDF9\\uDDFB\\uDDFC\\uDDFE\\uDDFF]|\\uDDE8\\uD83C[\\uDDE6\\uDDE8\\uDDE9\\uDDEB-\\uDDEE\\uDDF0-\\uDDF7\\uDDFA-\\uDDFF]|\\uDDE9\\uD83C[\\uDDEA\\uDDEC\\uDDEF\\uDDF0\\uDDF2\\uDDF4\\uDDFF]|\\uDDEA\\uD83C[\\uDDE6\\uDDE8\\uDDEA\\uDDEC\\uDDED\\uDDF7-\\uDDFA]|\\uDDEB\\uD83C[\\uDDEE-\\uDDF0\\uDDF2\\uDDF4\\uDDF7]|\\uDDEC\\uD83C[\\uDDE6\\uDDE7\\uDDE9-\\uDDEE\\uDDF1-\\uDDF3\\uDDF5-\\uDDFA\\uDDFC\\uDDFE]|\\uDDED\\uD83C[\\uDDF0\\uDDF2\\uDDF3\\uDDF7\\uDDF9\\uDDFA]|\\uDDEE\\uD83C[\\uDDE8-\\uDDEA\\uDDF1-\\uDDF4\\uDDF6-\\uDDF9]|\\uDDEF\\uD83C[\\uDDEA\\uDDF2\\uDDF4\\uDDF5]|\\uDDF0\\uD83C[\\uDDEA\\uDDEC-\\uDDEE\\uDDF2\\uDDF3\\uDDF5\\uDDF7\\uDDFC\\uDDFE\\uDDFF]|\\uDDF1\\uD83C[\\uDDE6-\\uDDE8\\uDDEE\\uDDF0\\uDDF7-\\uDDFB\\uDDFE]|\\uDDF2\\uD83C[\\uDDE6\\uDDE8-\\uDDED\\uDDF0-\\uDDFF]|\\uDDF3\\uD83C[\\uDDE6\\uDDE8\\uDDEA-\\uDDEC\\uDDEE\\uDDF1\\uDDF4\\uDDF5\\uDDF7\\uDDFA\\uDDFF]|\\uDDF4\\uD83C\\uDDF2|\\uDDF5\\uD83C[\\uDDE6\\uDDEA-\\uDDED\\uDDF0-\\uDDF3\\uDDF7-\\uDDF9\\uDDFC\\uDDFE]|\\uDDF6\\uD83C\\uDDE6|\\uDDF7\\uD83C[\\uDDEA\\uDDF4\\uDDF8\\uDDFA\\uDDFC]|\\uDDF8\\uD83C[\\uDDE6-\\uDDEA\\uDDEC-\\uDDF4\\uDDF7-\\uDDF9\\uDDFB\\uDDFD-\\uDDFF]|\\uDDF9\\uD83C[\\uDDE6\\uDDE8\\uDDE9\\uDDEB-\\uDDED\\uDDEF-\\uDDF4\\uDDF7\\uDDF9\\uDDFB\\uDDFC\\uDDFF]|\\uDDFA\\uD83C[\\uDDE6\\uDDEC\\uDDF2\\uDDF3\\uDDF8\\uDDFE\\uDDFF]|\\uDDFB\\uD83C[\\uDDE6\\uDDE8\\uDDEA\\uDDEC\\uDDEE\\uDDF3\\uDDFA]|\\uDDFC\\uD83C[\\uDDEB\\uDDF8]|\\uDDFD\\uD83C\\uDDF0|\\uDDFE\\uD83C[\\uDDEA\\uDDF9]|\\uDDFF\\uD83C[\\uDDE6\\uDDF2\\uDDFC]|\\uDF44(?:\\u200D\\uD83D\\uDFEB)?|\\uDF4B(?:\\u200D\\uD83D\\uDFE9)?|\\uDFC3(?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D(?:[\\u2640\\u2642]\\uFE0F?(?:\\u200D\\u27A1\\uFE0F?)?|\\u27A1\\uFE0F?))?|\\uDFF3\\uFE0F?(?:\\u200D(?:\\u26A7\\uFE0F?|\\uD83C\\uDF08))?|\\uDFF4(?:\\u200D\\u2620\\uFE0F?|\\uDB40\\uDC67\\uDB40\\uDC62\\uDB40(?:\\uDC65\\uDB40\\uDC6E\\uDB40\\uDC67|\\uDC73\\uDB40\\uDC63\\uDB40\\uDC74|\\uDC77\\uDB40\\uDC6C\\uDB40\\uDC73)\\uDB40\\uDC7F)?)|\\uD83D(?:[\\uDC3F\\uDCFD\\uDD49\\uDD4A\\uDD6F\\uDD70\\uDD73\\uDD76-\\uDD79\\uDD87\\uDD8A-\\uDD8D\\uDDA5\\uDDA8\\uDDB1\\uDDB2\\uDDBC\\uDDC2-\\uDDC4\\uDDD1-\\uDDD3\\uDDDC-\\uDDDE\\uDDE1\\uDDE3\\uDDE8\\uDDEF\\uDDF3\\uDDFA\\uDECB\\uDECD-\\uDECF\\uDEE0-\\uDEE5\\uDEE9\\uDEF0\\uDEF3]\\uFE0F?|[\\uDC42\\uDC43\\uDC46-\\uDC50\\uDC66\\uDC67\\uDC6B-\\uDC6D\\uDC72\\uDC74-\\uDC76\\uDC78\\uDC7C\\uDC83\\uDC85\\uDC8F\\uDC91\\uDCAA\\uDD7A\\uDD95\\uDD96\\uDE4C\\uDE4F\\uDEC0\\uDECC](?:\\uD83C[\\uDFFB-\\uDFFF])?|[\\uDC6E-\\uDC71\\uDC73\\uDC77\\uDC81\\uDC82\\uDC86\\uDC87\\uDE45-\\uDE47\\uDE4B\\uDE4D\\uDE4E\\uDEA3\\uDEB4\\uDEB5](?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDD74\\uDD90](?:\\uD83C[\\uDFFB-\\uDFFF]|\\uFE0F)?|[\\uDC00-\\uDC07\\uDC09-\\uDC14\\uDC16-\\uDC25\\uDC27-\\uDC3A\\uDC3C-\\uDC3E\\uDC40\\uDC44\\uDC45\\uDC51-\\uDC65\\uDC6A\\uDC79-\\uDC7B\\uDC7D-\\uDC80\\uDC84\\uDC88-\\uDC8E\\uDC90\\uDC92-\\uDCA9\\uDCAB-\\uDCFC\\uDCFF-\\uDD3D\\uDD4B-\\uDD4E\\uDD50-\\uDD67\\uDDA4\\uDDFB-\\uDE2D\\uDE2F-\\uDE34\\uDE37-\\uDE41\\uDE43\\uDE44\\uDE48-\\uDE4A\\uDE80-\\uDEA2\\uDEA4-\\uDEB3\\uDEB7-\\uDEBF\\uDEC1-\\uDEC5\\uDED0-\\uDED2\\uDED5-\\uDED8\\uDEDC-\\uDEDF\\uDEEB\\uDEEC\\uDEF4-\\uDEFC\\uDFE0-\\uDFEB\\uDFF0]|\\uDC08(?:\\u200D\\u2B1B)?|\\uDC15(?:\\u200D\\uD83E\\uDDBA)?|\\uDC26(?:\\u200D(?:\\u2B1B|\\uD83D\\uDD25))?|\\uDC3B(?:\\u200D\\u2744\\uFE0F?)?|\\uDC41\\uFE0F?(?:\\u200D\\uD83D\\uDDE8\\uFE0F?)?|\\uDC68(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDC68\\uDC69]\\u200D\\uD83D(?:\\uDC66(?:\\u200D\\uD83D\\uDC66)?|\\uDC67(?:\\u200D\\uD83D[\\uDC66\\uDC67])?)|[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC66(?:\\u200D\\uD83D\\uDC66)?|\\uDC67(?:\\u200D\\uD83D[\\uDC66\\uDC67])?)|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]))|\\uD83C(?:\\uDFFB(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC30\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFC-\\uDFFF])|\\uD83E(?:[\\uDD1D\\uDEEF]\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFC-\\uDFFF]|[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3])))?|\\uDFFC(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC30\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])|\\uD83E(?:[\\uDD1D\\uDEEF]\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB\\uDFFD-\\uDFFF]|[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3])))?|\\uDFFD(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC30\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])|\\uD83E(?:[\\uDD1D\\uDEEF]\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF]|[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3])))?|\\uDFFE(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC30\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])|\\uD83E(?:[\\uDD1D\\uDEEF]\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB-\\uDFFD\\uDFFF]|[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3])))?|\\uDFFF(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC30\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB-\\uDFFE])|\\uD83E(?:[\\uDD1D\\uDEEF]\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB-\\uDFFE]|[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3])))?))?|\\uDC69(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?[\\uDC68\\uDC69]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC66(?:\\u200D\\uD83D\\uDC66)?|\\uDC67(?:\\u200D\\uD83D[\\uDC66\\uDC67])?|\\uDC69\\u200D\\uD83D(?:\\uDC66(?:\\u200D\\uD83D\\uDC66)?|\\uDC67(?:\\u200D\\uD83D[\\uDC66\\uDC67])?))|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]))|\\uD83C(?:\\uDFFB(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC30\\u200D\\uD83D\\uDC69\\uD83C[\\uDFFC-\\uDFFF])|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFC-\\uDFFF]|\\uDEEF\\u200D\\uD83D\\uDC69\\uD83C[\\uDFFC-\\uDFFF])))?|\\uDFFC(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC30\\u200D\\uD83D\\uDC69\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFB\\uDFFD-\\uDFFF]|\\uDEEF\\u200D\\uD83D\\uDC69\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])))?|\\uDFFD(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC30\\u200D\\uD83D\\uDC69\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF]|\\uDEEF\\u200D\\uD83D\\uDC69\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])))?|\\uDFFE(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC30\\u200D\\uD83D\\uDC69\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFB-\\uDFFD\\uDFFF]|\\uDEEF\\u200D\\uD83D\\uDC69\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])))?|\\uDFFF(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC30\\u200D\\uD83D\\uDC69\\uD83C[\\uDFFB-\\uDFFE])|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFB-\\uDFFE]|\\uDEEF\\u200D\\uD83D\\uDC69\\uD83C[\\uDFFB-\\uDFFE])))?))?|\\uDD75(?:\\uD83C[\\uDFFB-\\uDFFF]|\\uFE0F)?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|\\uDE2E(?:\\u200D\\uD83D\\uDCA8)?|\\uDE35(?:\\u200D\\uD83D\\uDCAB)?|\\uDE36(?:\\u200D\\uD83C\\uDF2B\\uFE0F?)?|\\uDE42(?:\\u200D[\\u2194\\u2195]\\uFE0F?)?|\\uDEB6(?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D(?:[\\u2640\\u2642]\\uFE0F?(?:\\u200D\\u27A1\\uFE0F?)?|\\u27A1\\uFE0F?))?)|\\uD83E(?:[\\uDD0C\\uDD0F\\uDD18-\\uDD1F\\uDD30-\\uDD34\\uDD36\\uDD77\\uDDB5\\uDDB6\\uDDBB\\uDDD2\\uDDD3\\uDDD5\\uDEC3-\\uDEC5\\uDEF0\\uDEF2-\\uDEF8](?:\\uD83C[\\uDFFB-\\uDFFF])?|[\\uDD26\\uDD35\\uDD37-\\uDD39\\uDD3C-\\uDD3E\\uDDB8\\uDDB9\\uDDCD\\uDDCF\\uDDD4\\uDDD6-\\uDDDD](?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDDDE\\uDDDF](?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDD0D\\uDD0E\\uDD10-\\uDD17\\uDD20-\\uDD25\\uDD27-\\uDD2F\\uDD3A\\uDD3F-\\uDD45\\uDD47-\\uDD76\\uDD78-\\uDDB4\\uDDB7\\uDDBA\\uDDBC-\\uDDCC\\uDDD0\\uDDE0-\\uDDFF\\uDE70-\\uDE7C\\uDE80-\\uDE8A\\uDE8E-\\uDEC2\\uDEC6\\uDEC8\\uDECD-\\uDEDC\\uDEDF-\\uDEEA\\uDEEF]|\\uDDCE(?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D(?:[\\u2640\\u2642]\\uFE0F?(?:\\u200D\\u27A1\\uFE0F?)?|\\u27A1\\uFE0F?))?|\\uDDD1(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3\\uDE70]|\\uDD1D\\u200D\\uD83E\\uDDD1|\\uDDD1\\u200D\\uD83E\\uDDD2(?:\\u200D\\uD83E\\uDDD2)?|\\uDDD2(?:\\u200D\\uD83E\\uDDD2)?))|\\uD83C(?:\\uDFFB(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFC-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC30\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFC-\\uDFFF])|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3\\uDE70]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF]|\\uDEEF\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFC-\\uDFFF])))?|\\uDFFC(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFB\\uDFFD-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC30\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3\\uDE70]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF]|\\uDEEF\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])))?|\\uDFFD(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC30\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3\\uDE70]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF]|\\uDEEF\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])))?|\\uDFFE(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFD\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC30\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3\\uDE70]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF]|\\uDEEF\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])))?|\\uDFFF(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFE]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC30\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFE])|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3\\uDE70]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF]|\\uDEEF\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFE])))?))?|\\uDEF1(?:\\uD83C(?:\\uDFFB(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFC-\\uDFFF])?|\\uDFFC(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])?|\\uDFFD(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])?|\\uDFFE(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])?|\\uDFFF(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFB-\\uDFFE])?))?)/g;\n };\n var import_memoizee = __toModule(require_memoizee());\n function multiplyMatrices(A, B) {\n var m3 = A.length;\n if (!Array.isArray(A[0])) {\n A = [ A ];\n }\n if (!Array.isArray(B[0])) {\n B = B.map(function(x) {\n return [ x ];\n });\n }\n var p2 = B[0].length;\n var B_cols = B[0].map(function(_, i) {\n return B.map(function(x) {\n return x[i];\n });\n });\n var product = A.map(function(row) {\n return B_cols.map(function(col) {\n var ret = 0;\n if (!Array.isArray(row)) {\n var _iterator2 = _createForOfIteratorHelper(col), _step2;\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done; ) {\n var c4 = _step2.value;\n ret += row * c4;\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n return ret;\n }\n for (var i = 0; i < row.length; i++) {\n ret += row[i] * (col[i] || 0);\n }\n return ret;\n });\n });\n if (m3 === 1) {\n product = product[0];\n }\n if (p2 === 1) {\n return product.map(function(x) {\n return x[0];\n });\n }\n return product;\n }\n function isString(str) {\n return type(str) === 'string';\n }\n function type(o) {\n var str = Object.prototype.toString.call(o);\n return (str.match(/^\\[object\\s+(.*?)\\]$/)[1] || '').toLowerCase();\n }\n function toPrecision(n2, precision) {\n n2 = +n2;\n precision = +precision;\n var integerLength = (Math.floor(n2) + '').length;\n if (precision > integerLength) {\n return +n2.toFixed(precision - integerLength);\n } else {\n var p10 = Math.pow(10, integerLength - precision);\n return Math.round(n2 / p10) * p10;\n }\n }\n function parseFunction(str) {\n if (!str) {\n return;\n }\n str = str.trim();\n var isFunctionRegex = /^([a-z]+)\\((.+?)\\)$/i;\n var isNumberRegex = /^-?[\\d.]+$/;\n var parts = str.match(isFunctionRegex);\n if (parts) {\n var args = [];\n parts[2].replace(/\\/?\\s*([-\\w.]+(?:%|deg)?)/g, function($0, arg) {\n if (/%$/.test(arg)) {\n arg = new Number(arg.slice(0, -1) / 100);\n arg.type = '<percentage>';\n } else if (/deg$/.test(arg)) {\n arg = new Number(+arg.slice(0, -3));\n arg.type = '<angle>';\n arg.unit = 'deg';\n } else if (isNumberRegex.test(arg)) {\n arg = new Number(arg);\n arg.type = '<number>';\n }\n if ($0.startsWith('/')) {\n arg = arg instanceof Number ? arg : new Number(arg);\n arg.alpha = true;\n }\n args.push(arg);\n });\n return {\n name: parts[1].toLowerCase(),\n rawName: parts[1],\n rawArgs: parts[2],\n args: args\n };\n }\n }\n function last(arr) {\n return arr[arr.length - 1];\n }\n function interpolate(start, end, p2) {\n if (isNaN(start)) {\n return end;\n }\n if (isNaN(end)) {\n return start;\n }\n return start + (end - start) * p2;\n }\n function interpolateInv(start, end, value) {\n return (value - start) / (end - start);\n }\n function mapRange(from, to2, value) {\n return interpolate(to2[0], to2[1], interpolateInv(from[0], from[1], value));\n }\n function parseCoordGrammar(coordGrammars) {\n return coordGrammars.map(function(coordGrammar2) {\n return coordGrammar2.split('|').map(function(type2) {\n type2 = type2.trim();\n var range2 = type2.match(/^(<[a-z]+>)\\[(-?[.\\d]+),\\s*(-?[.\\d]+)\\]?$/);\n if (range2) {\n var ret = new String(range2[1]);\n ret.range = [ +range2[2], +range2[3] ];\n return ret;\n }\n return type2;\n });\n });\n }\n var util = Object.freeze({\n __proto__: null,\n isString: isString,\n type: type,\n toPrecision: toPrecision,\n parseFunction: parseFunction,\n last: last,\n interpolate: interpolate,\n interpolateInv: interpolateInv,\n mapRange: mapRange,\n parseCoordGrammar: parseCoordGrammar,\n multiplyMatrices: multiplyMatrices\n });\n var Hooks = function() {\n function Hooks() {\n _classCallCheck(this, Hooks);\n }\n return _createClass(Hooks, [ {\n key: 'add',\n value: function add(name, callback, first) {\n if (typeof arguments[0] != 'string') {\n for (var name in arguments[0]) {\n this.add(name, arguments[0][name], arguments[1]);\n }\n return;\n }\n (Array.isArray(name) ? name : [ name ]).forEach(function(name2) {\n this[name2] = this[name2] || [];\n if (callback) {\n this[name2][first ? 'unshift' : 'push'](callback);\n }\n }, this);\n }\n }, {\n key: 'run',\n value: function run(name, env) {\n this[name] = this[name] || [];\n this[name].forEach(function(callback) {\n callback.call(env && env.context ? env.context : env, env);\n });\n }\n } ]);\n }();\n var hooks = new Hooks();\n var defaults = {\n gamut_mapping: 'lch.c',\n precision: 5,\n deltaE: '76'\n };\n var WHITES = {\n D50: [ .3457 / .3585, 1, (1 - .3457 - .3585) / .3585 ],\n D65: [ .3127 / .329, 1, (1 - .3127 - .329) / .329 ]\n };\n function getWhite(name) {\n if (Array.isArray(name)) {\n return name;\n }\n return WHITES[name];\n }\n function adapt$1(W1, W2, XYZ) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n W1 = getWhite(W1);\n W2 = getWhite(W2);\n if (!W1 || !W2) {\n throw new TypeError('Missing white point to convert '.concat(!W1 ? 'from' : '').concat(!W1 && !W2 ? '/' : '').concat(!W2 ? 'to' : ''));\n }\n if (W1 === W2) {\n return XYZ;\n }\n var env = {\n W1: W1,\n W2: W2,\n XYZ: XYZ,\n options: options\n };\n hooks.run('chromatic-adaptation-start', env);\n if (!env.M) {\n if (env.W1 === WHITES.D65 && env.W2 === WHITES.D50) {\n env.M = [ [ 1.0479298208405488, .022946793341019088, -.05019222954313557 ], [ .029627815688159344, .990434484573249, -.01707382502938514 ], [ -.009243058152591178, .015055144896577895, .7518742899580008 ] ];\n } else if (env.W1 === WHITES.D50 && env.W2 === WHITES.D65) {\n env.M = [ [ .9554734527042182, -.023098536874261423, .0632593086610217 ], [ -.028369706963208136, 1.0099954580058226, .021041398966943008 ], [ .012314001688319899, -.020507696433477912, 1.3303659366080753 ] ];\n }\n }\n hooks.run('chromatic-adaptation-end', env);\n if (env.M) {\n return multiplyMatrices(env.M, env.XYZ);\n } else {\n throw new TypeError('Only Bradford CAT with white points D50 and D65 supported for now.');\n }\n }\n var \\u03b5$4 = 75e-6;\n var _ColorSpace2 = (_Class_brand = new WeakSet(), _path = new WeakMap(), function() {\n function _ColorSpace(options) {\n var _options$coords, _ref2, _options$white, _options$formats, _this$formats$functio, _this$formats, _this$formats2;\n _classCallCheck(this, _ColorSpace);\n _classPrivateMethodInitSpec(this, _Class_brand);\n _classPrivateFieldInitSpec(this, _path, void 0);\n this.id = options.id;\n this.name = options.name;\n this.base = options.base ? _ColorSpace2.get(options.base) : null;\n this.aliases = options.aliases;\n if (this.base) {\n this.fromBase = options.fromBase;\n this.toBase = options.toBase;\n }\n var _coords = (_options$coords = options.coords) !== null && _options$coords !== void 0 ? _options$coords : this.base.coords;\n this.coords = _coords;\n var white2 = (_ref2 = (_options$white = options.white) !== null && _options$white !== void 0 ? _options$white : this.base.white) !== null && _ref2 !== void 0 ? _ref2 : 'D65';\n this.white = getWhite(white2);\n this.formats = (_options$formats = options.formats) !== null && _options$formats !== void 0 ? _options$formats : {};\n for (var name in this.formats) {\n var format = this.formats[name];\n format.type || (format.type = 'function');\n format.name || (format.name = name);\n }\n if (options.cssId && !((_this$formats$functio = this.formats.functions) !== null && _this$formats$functio !== void 0 && _this$formats$functio.color)) {\n this.formats.color = {\n id: options.cssId\n };\n Object.defineProperty(this, 'cssId', {\n value: options.cssId\n });\n } else if ((_this$formats = this.formats) !== null && _this$formats !== void 0 && _this$formats.color && !((_this$formats2 = this.formats) !== null && _this$formats2 !== void 0 && _this$formats2.color.id)) {\n this.formats.color.id = this.id;\n }\n this.referred = options.referred;\n _classPrivateFieldSet(_path, this, _assertClassBrand(_Class_brand, this, _getPath).call(this).reverse());\n hooks.run('colorspace-init-end', this);\n }\n return _createClass(_ColorSpace, [ {\n key: 'inGamut',\n value: function inGamut(coords) {\n var _ref3 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, _ref3$epsilon = _ref3.epsilon, epsilon = _ref3$epsilon === void 0 ? \\u03b5$4 : _ref3$epsilon;\n if (this.isPolar) {\n coords = this.toBase(coords);\n return this.base.inGamut(coords, {\n epsilon: epsilon\n });\n }\n var coordMeta = Object.values(this.coords);\n return coords.every(function(c4, i) {\n var meta = coordMeta[i];\n if (meta.type !== 'angle' && meta.range) {\n if (Number.isNaN(c4)) {\n return true;\n }\n var _meta$range = _slicedToArray(meta.range, 2), min = _meta$range[0], max2 = _meta$range[1];\n return (min === void 0 || c4 >= min - epsilon) && (max2 === void 0 || c4 <= max2 + epsilon);\n }\n return true;\n });\n }\n }, {\n key: 'cssId',\n get: function get() {\n var _this$formats$functio2;\n return ((_this$formats$functio2 = this.formats.functions) === null || _this$formats$functio2 === void 0 || (_this$formats$functio2 = _this$formats$functio2.color) === null || _this$formats$functio2 === void 0 ? void 0 : _this$formats$functio2.id) || this.id;\n }\n }, {\n key: 'isPolar',\n get: function get() {\n for (var id in this.coords) {\n if (this.coords[id].type === 'angle') {\n return true;\n }\n }\n return false;\n }\n }, {\n key: 'getFormat',\n value: function getFormat(format) {\n if (_typeof(format) === 'object') {\n format = _assertClassBrand(_Class_brand, this, _processFormat).call(this, format);\n return format;\n }\n var ret;\n if (format === 'default') {\n ret = Object.values(this.formats)[0];\n } else {\n ret = this.formats[format];\n }\n if (ret) {\n ret = _assertClassBrand(_Class_brand, this, _processFormat).call(this, ret);\n return ret;\n }\n return null;\n }\n }, {\n key: 'to',\n value: function to(space, coords) {\n if (arguments.length === 1) {\n var _ref4 = [ space.space, space.coords ];\n space = _ref4[0];\n coords = _ref4[1];\n }\n space = _ColorSpace2.get(space);\n if (this === space) {\n return coords;\n }\n coords = coords.map(function(c4) {\n return Number.isNaN(c4) ? 0 : c4;\n });\n var myPath = _classPrivateFieldGet(_path, this);\n var otherPath = _classPrivateFieldGet(_path, space);\n var connectionSpace, connectionSpaceIndex;\n for (var i = 0; i < myPath.length; i++) {\n if (myPath[i] === otherPath[i]) {\n connectionSpace = myPath[i];\n connectionSpaceIndex = i;\n } else {\n break;\n }\n }\n if (!connectionSpace) {\n throw new Error('Cannot convert between color spaces '.concat(this, ' and ').concat(space, ': no connection space was found'));\n }\n for (var _i2 = myPath.length - 1; _i2 > connectionSpaceIndex; _i2--) {\n coords = myPath[_i2].toBase(coords);\n }\n for (var _i3 = connectionSpaceIndex + 1; _i3 < otherPath.length; _i3++) {\n coords = otherPath[_i3].fromBase(coords);\n }\n return coords;\n }\n }, {\n key: 'from',\n value: function from(space, coords) {\n if (arguments.length === 1) {\n var _ref5 = [ space.space, space.coords ];\n space = _ref5[0];\n coords = _ref5[1];\n }\n space = _ColorSpace2.get(space);\n return space.to(this, coords);\n }\n }, {\n key: 'toString',\n value: function toString() {\n return ''.concat(this.name, ' (').concat(this.id, ')');\n }\n }, {\n key: 'getMinCoords',\n value: function getMinCoords() {\n var ret = [];\n for (var id in this.coords) {\n var _range2$min;\n var meta = this.coords[id];\n var range2 = meta.range || meta.refRange;\n ret.push((_range2$min = range2 === null || range2 === void 0 ? void 0 : range2.min) !== null && _range2$min !== void 0 ? _range2$min : 0);\n }\n return ret;\n }\n } ], [ {\n key: 'all',\n get: function get() {\n return _toConsumableArray(new Set(Object.values(_ColorSpace2.registry)));\n }\n }, {\n key: 'register',\n value: function register(id, space) {\n if (arguments.length === 1) {\n space = arguments[0];\n id = space.id;\n }\n space = this.get(space);\n if (this.registry[id] && this.registry[id] !== space) {\n throw new Error('Duplicate color space registration: \\''.concat(id, '\\''));\n }\n this.registry[id] = space;\n if (arguments.length === 1 && space.aliases) {\n var _iterator3 = _createForOfIteratorHelper(space.aliases), _step3;\n try {\n for (_iterator3.s(); !(_step3 = _iterator3.n()).done; ) {\n var alias = _step3.value;\n this.register(alias, space);\n }\n } catch (err) {\n _iterator3.e(err);\n } finally {\n _iterator3.f();\n }\n }\n return space;\n }\n }, {\n key: 'get',\n value: function get(space) {\n if (!space || space instanceof _ColorSpace2) {\n return space;\n }\n var argType = type(space);\n if (argType === 'string') {\n var ret = _ColorSpace2.registry[space.toLowerCase()];\n if (!ret) {\n throw new TypeError('No color space found with id = \"'.concat(space, '\"'));\n }\n return ret;\n }\n for (var _len = arguments.length, alternatives = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n alternatives[_key - 1] = arguments[_key];\n }\n if (alternatives.length) {\n return _ColorSpace2.get.apply(_ColorSpace2, alternatives);\n }\n throw new TypeError(''.concat(space, ' is not a valid color space'));\n }\n }, {\n key: 'resolveCoord',\n value: function resolveCoord(ref, workingSpace) {\n var coordType = type(ref);\n var space, coord;\n if (coordType === 'string') {\n if (ref.includes('.')) {\n var _ref$split = ref.split('.');\n var _ref$split2 = _slicedToArray(_ref$split, 2);\n space = _ref$split2[0];\n coord = _ref$split2[1];\n } else {\n space = void 0;\n coord = ref;\n }\n } else if (Array.isArray(ref)) {\n var _ref6 = _slicedToArray(ref, 2);\n space = _ref6[0];\n coord = _ref6[1];\n } else {\n space = ref.space;\n coord = ref.coordId;\n }\n space = _ColorSpace2.get(space);\n if (!space) {\n space = workingSpace;\n }\n if (!space) {\n throw new TypeError('Cannot resolve coordinate reference '.concat(ref, ': No color space specified and relative references are not allowed here'));\n }\n coordType = type(coord);\n if (coordType === 'number' || coordType === 'string' && coord >= 0) {\n var meta = Object.entries(space.coords)[coord];\n if (meta) {\n return _extends({\n space: space,\n id: meta[0],\n index: coord\n }, meta[1]);\n }\n }\n space = _ColorSpace2.get(space);\n var normalizedCoord = coord.toLowerCase();\n var i = 0;\n for (var id in space.coords) {\n var _meta$name;\n var _meta = space.coords[id];\n if (id.toLowerCase() === normalizedCoord || ((_meta$name = _meta.name) === null || _meta$name === void 0 ? void 0 : _meta$name.toLowerCase()) === normalizedCoord) {\n return _extends({\n space: space,\n id: id,\n index: i\n }, _meta);\n }\n i++;\n }\n throw new TypeError('No \"'.concat(coord, '\" coordinate found in ').concat(space.name, '. Its coordinates are: ').concat(Object.keys(space.coords).join(', ')));\n }\n } ]);\n }());\n function _processFormat(format) {\n if (format.coords && !format.coordGrammar) {\n format.type || (format.type = 'function');\n format.name || (format.name = 'color');\n format.coordGrammar = parseCoordGrammar(format.coords);\n var coordFormats = Object.entries(this.coords).map(function(_ref149, i) {\n var _ref150 = _slicedToArray(_ref149, 2), id = _ref150[0], coordMeta = _ref150[1];\n var outputType = format.coordGrammar[i][0];\n var fromRange = coordMeta.range || coordMeta.refRange;\n var toRange = outputType.range, suffix = '';\n if (outputType == '<percentage>') {\n toRange = [ 0, 100 ];\n suffix = '%';\n } else if (outputType == '<angle>') {\n suffix = 'deg';\n }\n return {\n fromRange: fromRange,\n toRange: toRange,\n suffix: suffix\n };\n });\n format.serializeCoords = function(coords, precision) {\n return coords.map(function(c4, i) {\n var _coordFormats$i = coordFormats[i], fromRange = _coordFormats$i.fromRange, toRange = _coordFormats$i.toRange, suffix = _coordFormats$i.suffix;\n if (fromRange && toRange) {\n c4 = mapRange(fromRange, toRange, c4);\n }\n c4 = toPrecision(c4, precision);\n if (suffix) {\n c4 += suffix;\n }\n return c4;\n });\n };\n }\n return format;\n }\n function _getPath() {\n var ret = [ this ];\n for (var _space2 = this; _space2 = _space2.base; ) {\n ret.push(_space2);\n }\n return ret;\n }\n var ColorSpace = _ColorSpace2;\n __publicField(ColorSpace, 'registry', {});\n __publicField(ColorSpace, 'DEFAULT_FORMAT', {\n type: 'functions',\n name: 'color'\n });\n var XYZ_D65 = new ColorSpace({\n id: 'xyz-d65',\n name: 'XYZ D65',\n coords: {\n x: {\n name: 'X'\n },\n y: {\n name: 'Y'\n },\n z: {\n name: 'Z'\n }\n },\n white: 'D65',\n formats: {\n color: {\n ids: [ 'xyz-d65', 'xyz' ]\n }\n },\n aliases: [ 'xyz' ]\n });\n var RGBColorSpace = function(_ColorSpace3) {\n function RGBColorSpace(options) {\n var _options$referred;\n var _this;\n _classCallCheck(this, RGBColorSpace);\n if (!options.coords) {\n options.coords = {\n r: {\n range: [ 0, 1 ],\n name: 'Red'\n },\n g: {\n range: [ 0, 1 ],\n name: 'Green'\n },\n b: {\n range: [ 0, 1 ],\n name: 'Blue'\n }\n };\n }\n if (!options.base) {\n options.base = XYZ_D65;\n }\n if (options.toXYZ_M && options.fromXYZ_M) {\n var _options$toBase, _options$fromBase;\n (_options$toBase = options.toBase) !== null && _options$toBase !== void 0 ? _options$toBase : options.toBase = function(rgb) {\n var xyz = multiplyMatrices(options.toXYZ_M, rgb);\n if (_this.white !== _this.base.white) {\n xyz = adapt$1(_this.white, _this.base.white, xyz);\n }\n return xyz;\n };\n (_options$fromBase = options.fromBase) !== null && _options$fromBase !== void 0 ? _options$fromBase : options.fromBase = function(xyz) {\n xyz = adapt$1(_this.base.white, _this.white, xyz);\n return multiplyMatrices(options.fromXYZ_M, xyz);\n };\n }\n (_options$referred = options.referred) !== null && _options$referred !== void 0 ? _options$referred : options.referred = 'display';\n return _this = _callSuper(this, RGBColorSpace, [ options ]);\n }\n _inherits(RGBColorSpace, _ColorSpace3);\n return _createClass(RGBColorSpace);\n }(ColorSpace);\n function parse(str) {\n var _String;\n var env = {\n str: (_String = String(str)) === null || _String === void 0 ? void 0 : _String.trim()\n };\n hooks.run('parse-start', env);\n if (env.color) {\n return env.color;\n }\n env.parsed = parseFunction(env.str);\n if (env.parsed) {\n var name = env.parsed.name;\n if (name === 'color') {\n var id = env.parsed.args.shift();\n var alpha = env.parsed.rawArgs.indexOf('/') > 0 ? env.parsed.args.pop() : 1;\n var _iterator4 = _createForOfIteratorHelper(ColorSpace.all), _step4;\n try {\n var _loop2 = function _loop2() {\n var space = _step4.value;\n var colorSpec = space.getFormat('color');\n if (colorSpec) {\n var _colorSpec$ids;\n if (id === colorSpec.id || (_colorSpec$ids = colorSpec.ids) !== null && _colorSpec$ids !== void 0 && _colorSpec$ids.includes(id)) {\n var argCount = Object.keys(space.coords).length;\n var coords = Array(argCount).fill(0);\n coords.forEach(function(_, i) {\n return coords[i] = env.parsed.args[i] || 0;\n });\n return {\n v: {\n spaceId: space.id,\n coords: coords,\n alpha: alpha\n }\n };\n }\n }\n }, _ret;\n for (_iterator4.s(); !(_step4 = _iterator4.n()).done; ) {\n _ret = _loop2();\n if (_ret) {\n return _ret.v;\n }\n }\n } catch (err) {\n _iterator4.e(err);\n } finally {\n _iterator4.f();\n }\n var didYouMean = '';\n if (id in ColorSpace.registry) {\n var _ColorSpace$registry$;\n var cssId = (_ColorSpace$registry$ = ColorSpace.registry[id].formats) === null || _ColorSpace$registry$ === void 0 || (_ColorSpace$registry$ = _ColorSpace$registry$.functions) === null || _ColorSpace$registry$ === void 0 || (_ColorSpace$registry$ = _ColorSpace$registry$.color) === null || _ColorSpace$registry$ === void 0 ? void 0 : _ColorSpace$registry$.id;\n if (cssId) {\n didYouMean = 'Did you mean color('.concat(cssId, ')?');\n }\n }\n throw new TypeError('Cannot parse color('.concat(id, '). ') + (didYouMean || 'Missing a plugin?'));\n } else {\n var _iterator5 = _createForOfIteratorHelper(ColorSpace.all), _step5;\n try {\n var _loop3 = function _loop3() {\n var space = _step5.value;\n var format = space.getFormat(name);\n if (format && format.type === 'function') {\n var _alpha = 1;\n if (format.lastAlpha || last(env.parsed.args).alpha) {\n _alpha = env.parsed.args.pop();\n }\n var coords = env.parsed.args;\n if (format.coordGrammar) {\n Object.entries(space.coords).forEach(function(_ref7, i) {\n var _coords$i;\n var _ref8 = _slicedToArray(_ref7, 2), id = _ref8[0], coordMeta = _ref8[1];\n var coordGrammar2 = format.coordGrammar[i];\n var providedType = (_coords$i = coords[i]) === null || _coords$i === void 0 ? void 0 : _coords$i.type;\n coordGrammar2 = coordGrammar2.find(function(c4) {\n return c4 == providedType;\n });\n if (!coordGrammar2) {\n var coordName = coordMeta.name || id;\n throw new TypeError(''.concat(providedType, ' not allowed for ').concat(coordName, ' in ').concat(name, '()'));\n }\n var fromRange = coordGrammar2.range;\n if (providedType === '<percentage>') {\n fromRange || (fromRange = [ 0, 1 ]);\n }\n var toRange = coordMeta.range || coordMeta.refRange;\n if (fromRange && toRange) {\n coords[i] = mapRange(fromRange, toRange, coords[i]);\n }\n });\n }\n return {\n v: {\n spaceId: space.id,\n coords: coords,\n alpha: _alpha\n }\n };\n }\n }, _ret2;\n for (_iterator5.s(); !(_step5 = _iterator5.n()).done; ) {\n _ret2 = _loop3();\n if (_ret2) {\n return _ret2.v;\n }\n }\n } catch (err) {\n _iterator5.e(err);\n } finally {\n _iterator5.f();\n }\n }\n } else {\n var _iterator6 = _createForOfIteratorHelper(ColorSpace.all), _step6;\n try {\n for (_iterator6.s(); !(_step6 = _iterator6.n()).done; ) {\n var space = _step6.value;\n for (var formatId in space.formats) {\n var format = space.formats[formatId];\n if (format.type !== 'custom') {\n continue;\n }\n if (format.test && !format.test(env.str)) {\n continue;\n }\n var color = format.parse(env.str);\n if (color) {\n var _color$alpha;\n (_color$alpha = color.alpha) !== null && _color$alpha !== void 0 ? _color$alpha : color.alpha = 1;\n return color;\n }\n }\n }\n } catch (err) {\n _iterator6.e(err);\n } finally {\n _iterator6.f();\n }\n }\n throw new TypeError('Could not parse '.concat(str, ' as a color. Missing a plugin?'));\n }\n function getColor(color) {\n if (!color) {\n throw new TypeError('Empty color reference');\n }\n if (isString(color)) {\n color = parse(color);\n }\n var space = color.space || color.spaceId;\n if (!(space instanceof ColorSpace)) {\n color.space = ColorSpace.get(space);\n }\n if (color.alpha === void 0) {\n color.alpha = 1;\n }\n return color;\n }\n function getAll(color, space) {\n space = ColorSpace.get(space);\n return space.from(color);\n }\n function get(color, prop) {\n var _ColorSpace$resolveCo = ColorSpace.resolveCoord(prop, color.space), space = _ColorSpace$resolveCo.space, index = _ColorSpace$resolveCo.index;\n var coords = getAll(color, space);\n return coords[index];\n }\n function setAll(color, space, coords) {\n space = ColorSpace.get(space);\n color.coords = space.to(color.space, coords);\n return color;\n }\n function set(color, prop, value) {\n color = getColor(color);\n if (arguments.length === 2 && type(arguments[1]) === 'object') {\n var object = arguments[1];\n for (var p2 in object) {\n set(color, p2, object[p2]);\n }\n } else {\n if (typeof value === 'function') {\n value = value(get(color, prop));\n }\n var _ColorSpace$resolveCo2 = ColorSpace.resolveCoord(prop, color.space), space = _ColorSpace$resolveCo2.space, index = _ColorSpace$resolveCo2.index;\n var coords = getAll(color, space);\n coords[index] = value;\n setAll(color, space, coords);\n }\n return color;\n }\n var XYZ_D50 = new ColorSpace({\n id: 'xyz-d50',\n name: 'XYZ D50',\n white: 'D50',\n base: XYZ_D65,\n fromBase: function fromBase(coords) {\n return adapt$1(XYZ_D65.white, 'D50', coords);\n },\n toBase: function toBase(coords) {\n return adapt$1('D50', XYZ_D65.white, coords);\n },\n formats: {\n color: {}\n }\n });\n var \\u03b5$3 = 216 / 24389;\n var \\u03b53$1 = 24 / 116;\n var \\u03ba$1 = 24389 / 27;\n var white$1 = WHITES.D50;\n var lab = new ColorSpace({\n id: 'lab',\n name: 'Lab',\n coords: {\n l: {\n refRange: [ 0, 100 ],\n name: 'L'\n },\n a: {\n refRange: [ -125, 125 ]\n },\n b: {\n refRange: [ -125, 125 ]\n }\n },\n white: white$1,\n base: XYZ_D50,\n fromBase: function fromBase(XYZ) {\n var xyz = XYZ.map(function(value, i) {\n return value / white$1[i];\n });\n var f = xyz.map(function(value) {\n return value > \\u03b5$3 ? Math.cbrt(value) : (\\u03ba$1 * value + 16) / 116;\n });\n return [ 116 * f[1] - 16, 500 * (f[0] - f[1]), 200 * (f[1] - f[2]) ];\n },\n toBase: function toBase(Lab) {\n var f = [];\n f[1] = (Lab[0] + 16) / 116;\n f[0] = Lab[1] / 500 + f[1];\n f[2] = f[1] - Lab[2] / 200;\n var xyz = [ f[0] > \\u03b53$1 ? Math.pow(f[0], 3) : (116 * f[0] - 16) / \\u03ba$1, Lab[0] > 8 ? Math.pow((Lab[0] + 16) / 116, 3) : Lab[0] / \\u03ba$1, f[2] > \\u03b53$1 ? Math.pow(f[2], 3) : (116 * f[2] - 16) / \\u03ba$1 ];\n return xyz.map(function(value, i) {\n return value * white$1[i];\n });\n },\n formats: {\n lab: {\n coords: [ '<number> | <percentage>', '<number>', '<number>' ]\n }\n }\n });\n function constrain(angle) {\n return (angle % 360 + 360) % 360;\n }\n function adjust(arc, angles) {\n if (arc === 'raw') {\n return angles;\n }\n var _angles$map = angles.map(constrain), _angles$map2 = _slicedToArray(_angles$map, 2), a1 = _angles$map2[0], a2 = _angles$map2[1];\n var angleDiff = a2 - a1;\n if (arc === 'increasing') {\n if (angleDiff < 0) {\n a2 += 360;\n }\n } else if (arc === 'decreasing') {\n if (angleDiff > 0) {\n a1 += 360;\n }\n } else if (arc === 'longer') {\n if (-180 < angleDiff && angleDiff < 180) {\n if (angleDiff > 0) {\n a2 += 360;\n } else {\n a1 += 360;\n }\n }\n } else if (arc === 'shorter') {\n if (angleDiff > 180) {\n a1 += 360;\n } else if (angleDiff < -180) {\n a2 += 360;\n }\n }\n return [ a1, a2 ];\n }\n var lch = new ColorSpace({\n id: 'lch',\n name: 'LCH',\n coords: {\n l: {\n refRange: [ 0, 100 ],\n name: 'Lightness'\n },\n c: {\n refRange: [ 0, 150 ],\n name: 'Chroma'\n },\n h: {\n refRange: [ 0, 360 ],\n type: 'angle',\n name: 'Hue'\n }\n },\n base: lab,\n fromBase: function fromBase(Lab) {\n var _Lab = _slicedToArray(Lab, 3), L = _Lab[0], a2 = _Lab[1], b2 = _Lab[2];\n var hue;\n var \\u03b52 = .02;\n if (Math.abs(a2) < \\u03b52 && Math.abs(b2) < \\u03b52) {\n hue = NaN;\n } else {\n hue = Math.atan2(b2, a2) * 180 / Math.PI;\n }\n return [ L, Math.sqrt(Math.pow(a2, 2) + Math.pow(b2, 2)), constrain(hue) ];\n },\n toBase: function toBase(LCH) {\n var _LCH = _slicedToArray(LCH, 3), Lightness = _LCH[0], Chroma = _LCH[1], Hue = _LCH[2];\n if (Chroma < 0) {\n Chroma = 0;\n }\n if (isNaN(Hue)) {\n Hue = 0;\n }\n return [ Lightness, Chroma * Math.cos(Hue * Math.PI / 180), Chroma * Math.sin(Hue * Math.PI / 180) ];\n },\n formats: {\n lch: {\n coords: [ '<number> | <percentage>', '<number>', '<number> | <angle>' ]\n }\n }\n });\n var Gfactor = Math.pow(25, 7);\n var \\u03c0$1 = Math.PI;\n var r2d = 180 / \\u03c0$1;\n var d2r$1 = \\u03c0$1 / 180;\n function deltaE2000(color, sample) {\n var _ref9 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}, _ref9$kL = _ref9.kL, kL = _ref9$kL === void 0 ? 1 : _ref9$kL, _ref9$kC = _ref9.kC, kC = _ref9$kC === void 0 ? 1 : _ref9$kC, _ref9$kH = _ref9.kH, kH = _ref9$kH === void 0 ? 1 : _ref9$kH;\n var _lab$from = lab.from(color), _lab$from2 = _slicedToArray(_lab$from, 3), L1 = _lab$from2[0], a1 = _lab$from2[1], b1 = _lab$from2[2];\n var C1 = lch.from(lab, [ L1, a1, b1 ])[1];\n var _lab$from3 = lab.from(sample), _lab$from4 = _slicedToArray(_lab$from3, 3), L2 = _lab$from4[0], a2 = _lab$from4[1], b2 = _lab$from4[2];\n var C2 = lch.from(lab, [ L2, a2, b2 ])[1];\n if (C1 < 0) {\n C1 = 0;\n }\n if (C2 < 0) {\n C2 = 0;\n }\n var Cbar = (C1 + C2) / 2;\n var C7 = Math.pow(Cbar, 7);\n var G = .5 * (1 - Math.sqrt(C7 / (C7 + Gfactor)));\n var adash1 = (1 + G) * a1;\n var adash2 = (1 + G) * a2;\n var Cdash1 = Math.sqrt(Math.pow(adash1, 2) + Math.pow(b1, 2));\n var Cdash2 = Math.sqrt(Math.pow(adash2, 2) + Math.pow(b2, 2));\n var h1 = adash1 === 0 && b1 === 0 ? 0 : Math.atan2(b1, adash1);\n var h2 = adash2 === 0 && b2 === 0 ? 0 : Math.atan2(b2, adash2);\n if (h1 < 0) {\n h1 += 2 * \\u03c0$1;\n }\n if (h2 < 0) {\n h2 += 2 * \\u03c0$1;\n }\n h1 *= r2d;\n h2 *= r2d;\n var \\u0394L = L2 - L1;\n var \\u0394C = Cdash2 - Cdash1;\n var hdiff = h2 - h1;\n var hsum = h1 + h2;\n var habs = Math.abs(hdiff);\n var \\u0394h;\n if (Cdash1 * Cdash2 === 0) {\n \\u0394h = 0;\n } else if (habs <= 180) {\n \\u0394h = hdiff;\n } else if (hdiff > 180) {\n \\u0394h = hdiff - 360;\n } else if (hdiff < -180) {\n \\u0394h = hdiff + 360;\n } else {\n console.log('the unthinkable has happened');\n }\n var \\u0394H = 2 * Math.sqrt(Cdash2 * Cdash1) * Math.sin(\\u0394h * d2r$1 / 2);\n var Ldash = (L1 + L2) / 2;\n var Cdash = (Cdash1 + Cdash2) / 2;\n var Cdash7 = Math.pow(Cdash, 7);\n var hdash;\n if (Cdash1 * Cdash2 === 0) {\n hdash = hsum;\n } else if (habs <= 180) {\n hdash = hsum / 2;\n } else if (hsum < 360) {\n hdash = (hsum + 360) / 2;\n } else {\n hdash = (hsum - 360) / 2;\n }\n var lsq = Math.pow(Ldash - 50, 2);\n var SL = 1 + .015 * lsq / Math.sqrt(20 + lsq);\n var SC = 1 + .045 * Cdash;\n var T = 1;\n T -= .17 * Math.cos((hdash - 30) * d2r$1);\n T += .24 * Math.cos(2 * hdash * d2r$1);\n T += .32 * Math.cos((3 * hdash + 6) * d2r$1);\n T -= .2 * Math.cos((4 * hdash - 63) * d2r$1);\n var SH = 1 + .015 * Cdash * T;\n var \\u0394\\u03b8 = 30 * Math.exp(-1 * Math.pow((hdash - 275) / 25, 2));\n var RC = 2 * Math.sqrt(Cdash7 / (Cdash7 + Gfactor));\n var RT = -1 * Math.sin(2 * \\u0394\\u03b8 * d2r$1) * RC;\n var dE = Math.pow(\\u0394L / (kL * SL), 2);\n dE += Math.pow(\\u0394C / (kC * SC), 2);\n dE += Math.pow(\\u0394H / (kH * SH), 2);\n dE += RT * (\\u0394C / (kC * SC)) * (\\u0394H / (kH * SH));\n return Math.sqrt(dE);\n }\n var \\u03b5$2 = 75e-6;\n function inGamut(color) {\n var space = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : color.space;\n var _ref0 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}, _ref0$epsilon = _ref0.epsilon, epsilon = _ref0$epsilon === void 0 ? \\u03b5$2 : _ref0$epsilon;\n color = getColor(color);\n space = ColorSpace.get(space);\n var coords = color.coords;\n if (space !== color.space) {\n coords = space.from(color);\n }\n return space.inGamut(coords, {\n epsilon: epsilon\n });\n }\n function clone(color) {\n return {\n space: color.space,\n coords: color.coords.slice(),\n alpha: color.alpha\n };\n }\n function toGamut(color) {\n var _ref1 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, _ref1$method = _ref1.method, method = _ref1$method === void 0 ? defaults.gamut_mapping : _ref1$method, _ref1$space = _ref1.space, space = _ref1$space === void 0 ? color.space : _ref1$space;\n if (isString(arguments[1])) {\n space = arguments[1];\n }\n space = ColorSpace.get(space);\n if (inGamut(color, space, {\n epsilon: 0\n })) {\n return color;\n }\n var spaceColor = to(color, space);\n if (method !== 'clip' && !inGamut(color, space)) {\n var clipped = toGamut(clone(spaceColor), {\n method: 'clip',\n space: space\n });\n if (deltaE2000(color, clipped) > 2) {\n var coordMeta = ColorSpace.resolveCoord(method);\n var mapSpace = coordMeta.space;\n var coordId = coordMeta.id;\n var mappedColor = to(spaceColor, mapSpace);\n var bounds = coordMeta.range || coordMeta.refRange;\n var min = bounds[0];\n var \\u03b52 = .01;\n var low = min;\n var high = get(mappedColor, coordId);\n while (high - low > \\u03b52) {\n var clipped2 = clone(mappedColor);\n clipped2 = toGamut(clipped2, {\n space: space,\n method: 'clip'\n });\n var deltaE2 = deltaE2000(mappedColor, clipped2);\n if (deltaE2 - 2 < \\u03b52) {\n low = get(mappedColor, coordId);\n } else {\n high = get(mappedColor, coordId);\n }\n set(mappedColor, coordId, (low + high) / 2);\n }\n spaceColor = to(mappedColor, space);\n } else {\n spaceColor = clipped;\n }\n }\n if (method === 'clip' || !inGamut(spaceColor, space, {\n epsilon: 0\n })) {\n var _bounds = Object.values(space.coords).map(function(c4) {\n return c4.range || [];\n });\n spaceColor.coords = spaceColor.coords.map(function(c4, i) {\n var _bounds$i = _slicedToArray(_bounds[i], 2), min = _bounds$i[0], max2 = _bounds$i[1];\n if (min !== void 0) {\n c4 = Math.max(min, c4);\n }\n if (max2 !== void 0) {\n c4 = Math.min(c4, max2);\n }\n return c4;\n });\n }\n if (space !== color.space) {\n spaceColor = to(spaceColor, color.space);\n }\n color.coords = spaceColor.coords;\n return color;\n }\n toGamut.returns = 'color';\n function to(color, space) {\n var _ref10 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}, inGamut2 = _ref10.inGamut;\n color = getColor(color);\n space = ColorSpace.get(space);\n var coords = space.from(color);\n var ret = {\n space: space,\n coords: coords,\n alpha: color.alpha\n };\n if (inGamut2) {\n ret = toGamut(ret);\n }\n return ret;\n }\n to.returns = 'color';\n function serialize(color) {\n var _ref12, _color$space$getForma;\n var _ref11 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _ref11$precision = _ref11.precision, precision = _ref11$precision === void 0 ? defaults.precision : _ref11$precision, _ref11$format = _ref11.format, format = _ref11$format === void 0 ? 'default' : _ref11$format, _ref11$inGamut = _ref11.inGamut, inGamut$1 = _ref11$inGamut === void 0 ? true : _ref11$inGamut, customOptions = _objectWithoutProperties(_ref11, _excluded);\n var ret;\n color = getColor(color);\n var formatId = format;\n format = (_ref12 = (_color$space$getForma = color.space.getFormat(format)) !== null && _color$space$getForma !== void 0 ? _color$space$getForma : color.space.getFormat('default')) !== null && _ref12 !== void 0 ? _ref12 : ColorSpace.DEFAULT_FORMAT;\n inGamut$1 || (inGamut$1 = format.toGamut);\n var coords = color.coords;\n coords = coords.map(function(c4) {\n return c4 ? c4 : 0;\n });\n if (inGamut$1 && !inGamut(color)) {\n coords = toGamut(clone(color), inGamut$1 === true ? void 0 : inGamut$1).coords;\n }\n if (format.type === 'custom') {\n customOptions.precision = precision;\n if (format.serialize) {\n ret = format.serialize(coords, color.alpha, customOptions);\n } else {\n throw new TypeError('format '.concat(formatId, ' can only be used to parse colors, not for serialization'));\n }\n } else {\n var name = format.name || 'color';\n if (format.serializeCoords) {\n coords = format.serializeCoords(coords, precision);\n } else {\n if (precision !== null) {\n coords = coords.map(function(c4) {\n return toPrecision(c4, precision);\n });\n }\n }\n var args = _toConsumableArray(coords);\n if (name === 'color') {\n var _format$ids;\n var cssId = format.id || ((_format$ids = format.ids) === null || _format$ids === void 0 ? void 0 : _format$ids[0]) || color.space.id;\n args.unshift(cssId);\n }\n var alpha = color.alpha;\n if (precision !== null) {\n alpha = toPrecision(alpha, precision);\n }\n var strAlpha = color.alpha < 1 && !format.noAlpha ? ''.concat(format.commas ? ',' : ' /', ' ').concat(alpha) : '';\n ret = ''.concat(name, '(').concat(args.join(format.commas ? ', ' : ' ')).concat(strAlpha, ')');\n }\n return ret;\n }\n var toXYZ_M$5 = [ [ .6369580483012914, .14461690358620832, .1688809751641721 ], [ .2627002120112671, .6779980715188708, .05930171646986196 ], [ 0, .028072693049087428, 1.060985057710791 ] ];\n var fromXYZ_M$5 = [ [ 1.716651187971268, -.355670783776392, -.25336628137366 ], [ -.666684351832489, 1.616481236634939, .0157685458139111 ], [ .017639857445311, -.042770613257809, .942103121235474 ] ];\n var REC2020Linear = new RGBColorSpace({\n id: 'rec2020-linear',\n name: 'Linear REC.2020',\n white: 'D65',\n toXYZ_M: toXYZ_M$5,\n fromXYZ_M: fromXYZ_M$5,\n formats: {\n color: {}\n }\n });\n var \\u03b1 = 1.09929682680944;\n var \\u03b2 = .018053968510807;\n var REC2020 = new RGBColorSpace({\n id: 'rec2020',\n name: 'REC.2020',\n base: REC2020Linear,\n toBase: function toBase(RGB) {\n return RGB.map(function(val) {\n if (val < \\u03b2 * 4.5) {\n return val / 4.5;\n }\n return Math.pow((val + \\u03b1 - 1) / \\u03b1, 1 / .45);\n });\n },\n fromBase: function fromBase(RGB) {\n return RGB.map(function(val) {\n if (val >= \\u03b2) {\n return \\u03b1 * Math.pow(val, .45) - (\\u03b1 - 1);\n }\n return 4.5 * val;\n });\n },\n formats: {\n color: {}\n }\n });\n var toXYZ_M$4 = [ [ .4865709486482162, .26566769316909306, .1982172852343625 ], [ .2289745640697488, .6917385218365064, .079286914093745 ], [ 0, .04511338185890264, 1.043944368900976 ] ];\n var fromXYZ_M$4 = [ [ 2.493496911941425, -.9313836179191239, -.40271078445071684 ], [ -.8294889695615747, 1.7626640603183463, .023624685841943577 ], [ .03584583024378447, -.07617238926804182, .9568845240076872 ] ];\n var P3Linear = new RGBColorSpace({\n id: 'p3-linear',\n name: 'Linear P3',\n white: 'D65',\n toXYZ_M: toXYZ_M$4,\n fromXYZ_M: fromXYZ_M$4\n });\n var toXYZ_M$3 = [ [ .41239079926595934, .357584339383878, .1804807884018343 ], [ .21263900587151027, .715168678767756, .07219231536073371 ], [ .01933081871559182, .11919477979462598, .9505321522496607 ] ];\n var fromXYZ_M$3 = [ [ 3.2409699419045226, -1.537383177570094, -.4986107602930034 ], [ -.9692436362808796, 1.8759675015077202, .04155505740717559 ], [ .05563007969699366, -.20397695888897652, 1.0569715142428786 ] ];\n var sRGBLinear = new RGBColorSpace({\n id: 'srgb-linear',\n name: 'Linear sRGB',\n white: 'D65',\n toXYZ_M: toXYZ_M$3,\n fromXYZ_M: fromXYZ_M$3,\n formats: {\n color: {}\n }\n });\n var KEYWORDS = {\n aliceblue: [ 240 / 255, 248 / 255, 1 ],\n antiquewhite: [ 250 / 255, 235 / 255, 215 / 255 ],\n aqua: [ 0, 1, 1 ],\n aquamarine: [ 127 / 255, 1, 212 / 255 ],\n azure: [ 240 / 255, 1, 1 ],\n beige: [ 245 / 255, 245 / 255, 220 / 255 ],\n bisque: [ 1, 228 / 255, 196 / 255 ],\n black: [ 0, 0, 0 ],\n blanchedalmond: [ 1, 235 / 255, 205 / 255 ],\n blue: [ 0, 0, 1 ],\n blueviolet: [ 138 / 255, 43 / 255, 226 / 255 ],\n brown: [ 165 / 255, 42 / 255, 42 / 255 ],\n burlywood: [ 222 / 255, 184 / 255, 135 / 255 ],\n cadetblue: [ 95 / 255, 158 / 255, 160 / 255 ],\n chartreuse: [ 127 / 255, 1, 0 ],\n chocolate: [ 210 / 255, 105 / 255, 30 / 255 ],\n coral: [ 1, 127 / 255, 80 / 255 ],\n cornflowerblue: [ 100 / 255, 149 / 255, 237 / 255 ],\n cornsilk: [ 1, 248 / 255, 220 / 255 ],\n crimson: [ 220 / 255, 20 / 255, 60 / 255 ],\n cyan: [ 0, 1, 1 ],\n darkblue: [ 0, 0, 139 / 255 ],\n darkcyan: [ 0, 139 / 255, 139 / 255 ],\n darkgoldenrod: [ 184 / 255, 134 / 255, 11 / 255 ],\n darkgray: [ 169 / 255, 169 / 255, 169 / 255 ],\n darkgreen: [ 0, 100 / 255, 0 ],\n darkgrey: [ 169 / 255, 169 / 255, 169 / 255 ],\n darkkhaki: [ 189 / 255, 183 / 255, 107 / 255 ],\n darkmagenta: [ 139 / 255, 0, 139 / 255 ],\n darkolivegreen: [ 85 / 255, 107 / 255, 47 / 255 ],\n darkorange: [ 1, 140 / 255, 0 ],\n darkorchid: [ 153 / 255, 50 / 255, 204 / 255 ],\n darkred: [ 139 / 255, 0, 0 ],\n darksalmon: [ 233 / 255, 150 / 255, 122 / 255 ],\n darkseagreen: [ 143 / 255, 188 / 255, 143 / 255 ],\n darkslateblue: [ 72 / 255, 61 / 255, 139 / 255 ],\n darkslategray: [ 47 / 255, 79 / 255, 79 / 255 ],\n darkslategrey: [ 47 / 255, 79 / 255, 79 / 255 ],\n darkturquoise: [ 0, 206 / 255, 209 / 255 ],\n darkviolet: [ 148 / 255, 0, 211 / 255 ],\n deeppink: [ 1, 20 / 255, 147 / 255 ],\n deepskyblue: [ 0, 191 / 255, 1 ],\n dimgray: [ 105 / 255, 105 / 255, 105 / 255 ],\n dimgrey: [ 105 / 255, 105 / 255, 105 / 255 ],\n dodgerblue: [ 30 / 255, 144 / 255, 1 ],\n firebrick: [ 178 / 255, 34 / 255, 34 / 255 ],\n floralwhite: [ 1, 250 / 255, 240 / 255 ],\n forestgreen: [ 34 / 255, 139 / 255, 34 / 255 ],\n fuchsia: [ 1, 0, 1 ],\n gainsboro: [ 220 / 255, 220 / 255, 220 / 255 ],\n ghostwhite: [ 248 / 255, 248 / 255, 1 ],\n gold: [ 1, 215 / 255, 0 ],\n goldenrod: [ 218 / 255, 165 / 255, 32 / 255 ],\n gray: [ 128 / 255, 128 / 255, 128 / 255 ],\n green: [ 0, 128 / 255, 0 ],\n greenyellow: [ 173 / 255, 1, 47 / 255 ],\n grey: [ 128 / 255, 128 / 255, 128 / 255 ],\n honeydew: [ 240 / 255, 1, 240 / 255 ],\n hotpink: [ 1, 105 / 255, 180 / 255 ],\n indianred: [ 205 / 255, 92 / 255, 92 / 255 ],\n indigo: [ 75 / 255, 0, 130 / 255 ],\n ivory: [ 1, 1, 240 / 255 ],\n khaki: [ 240 / 255, 230 / 255, 140 / 255 ],\n lavender: [ 230 / 255, 230 / 255, 250 / 255 ],\n lavenderblush: [ 1, 240 / 255, 245 / 255 ],\n lawngreen: [ 124 / 255, 252 / 255, 0 ],\n lemonchiffon: [ 1, 250 / 255, 205 / 255 ],\n lightblue: [ 173 / 255, 216 / 255, 230 / 255 ],\n lightcoral: [ 240 / 255, 128 / 255, 128 / 255 ],\n lightcyan: [ 224 / 255, 1, 1 ],\n lightgoldenrodyellow: [ 250 / 255, 250 / 255, 210 / 255 ],\n lightgray: [ 211 / 255, 211 / 255, 211 / 255 ],\n lightgreen: [ 144 / 255, 238 / 255, 144 / 255 ],\n lightgrey: [ 211 / 255, 211 / 255, 211 / 255 ],\n lightpink: [ 1, 182 / 255, 193 / 255 ],\n lightsalmon: [ 1, 160 / 255, 122 / 255 ],\n lightseagreen: [ 32 / 255, 178 / 255, 170 / 255 ],\n lightskyblue: [ 135 / 255, 206 / 255, 250 / 255 ],\n lightslategray: [ 119 / 255, 136 / 255, 153 / 255 ],\n lightslategrey: [ 119 / 255, 136 / 255, 153 / 255 ],\n lightsteelblue: [ 176 / 255, 196 / 255, 222 / 255 ],\n lightyellow: [ 1, 1, 224 / 255 ],\n lime: [ 0, 1, 0 ],\n limegreen: [ 50 / 255, 205 / 255, 50 / 255 ],\n linen: [ 250 / 255, 240 / 255, 230 / 255 ],\n magenta: [ 1, 0, 1 ],\n maroon: [ 128 / 255, 0, 0 ],\n mediumaquamarine: [ 102 / 255, 205 / 255, 170 / 255 ],\n mediumblue: [ 0, 0, 205 / 255 ],\n mediumorchid: [ 186 / 255, 85 / 255, 211 / 255 ],\n mediumpurple: [ 147 / 255, 112 / 255, 219 / 255 ],\n mediumseagreen: [ 60 / 255, 179 / 255, 113 / 255 ],\n mediumslateblue: [ 123 / 255, 104 / 255, 238 / 255 ],\n mediumspringgreen: [ 0, 250 / 255, 154 / 255 ],\n mediumturquoise: [ 72 / 255, 209 / 255, 204 / 255 ],\n mediumvioletred: [ 199 / 255, 21 / 255, 133 / 255 ],\n midnightblue: [ 25 / 255, 25 / 255, 112 / 255 ],\n mintcream: [ 245 / 255, 1, 250 / 255 ],\n mistyrose: [ 1, 228 / 255, 225 / 255 ],\n moccasin: [ 1, 228 / 255, 181 / 255 ],\n navajowhite: [ 1, 222 / 255, 173 / 255 ],\n navy: [ 0, 0, 128 / 255 ],\n oldlace: [ 253 / 255, 245 / 255, 230 / 255 ],\n olive: [ 128 / 255, 128 / 255, 0 ],\n olivedrab: [ 107 / 255, 142 / 255, 35 / 255 ],\n orange: [ 1, 165 / 255, 0 ],\n orangered: [ 1, 69 / 255, 0 ],\n orchid: [ 218 / 255, 112 / 255, 214 / 255 ],\n palegoldenrod: [ 238 / 255, 232 / 255, 170 / 255 ],\n palegreen: [ 152 / 255, 251 / 255, 152 / 255 ],\n paleturquoise: [ 175 / 255, 238 / 255, 238 / 255 ],\n palevioletred: [ 219 / 255, 112 / 255, 147 / 255 ],\n papayawhip: [ 1, 239 / 255, 213 / 255 ],\n peachpuff: [ 1, 218 / 255, 185 / 255 ],\n peru: [ 205 / 255, 133 / 255, 63 / 255 ],\n pink: [ 1, 192 / 255, 203 / 255 ],\n plum: [ 221 / 255, 160 / 255, 221 / 255 ],\n powderblue: [ 176 / 255, 224 / 255, 230 / 255 ],\n purple: [ 128 / 255, 0, 128 / 255 ],\n rebeccapurple: [ 102 / 255, 51 / 255, 153 / 255 ],\n red: [ 1, 0, 0 ],\n rosybrown: [ 188 / 255, 143 / 255, 143 / 255 ],\n royalblue: [ 65 / 255, 105 / 255, 225 / 255 ],\n saddlebrown: [ 139 / 255, 69 / 255, 19 / 255 ],\n salmon: [ 250 / 255, 128 / 255, 114 / 255 ],\n sandybrown: [ 244 / 255, 164 / 255, 96 / 255 ],\n seagreen: [ 46 / 255, 139 / 255, 87 / 255 ],\n seashell: [ 1, 245 / 255, 238 / 255 ],\n sienna: [ 160 / 255, 82 / 255, 45 / 255 ],\n silver: [ 192 / 255, 192 / 255, 192 / 255 ],\n skyblue: [ 135 / 255, 206 / 255, 235 / 255 ],\n slateblue: [ 106 / 255, 90 / 255, 205 / 255 ],\n slategray: [ 112 / 255, 128 / 255, 144 / 255 ],\n slategrey: [ 112 / 255, 128 / 255, 144 / 255 ],\n snow: [ 1, 250 / 255, 250 / 255 ],\n springgreen: [ 0, 1, 127 / 255 ],\n steelblue: [ 70 / 255, 130 / 255, 180 / 255 ],\n tan: [ 210 / 255, 180 / 255, 140 / 255 ],\n teal: [ 0, 128 / 255, 128 / 255 ],\n thistle: [ 216 / 255, 191 / 255, 216 / 255 ],\n tomato: [ 1, 99 / 255, 71 / 255 ],\n turquoise: [ 64 / 255, 224 / 255, 208 / 255 ],\n violet: [ 238 / 255, 130 / 255, 238 / 255 ],\n wheat: [ 245 / 255, 222 / 255, 179 / 255 ],\n white: [ 1, 1, 1 ],\n whitesmoke: [ 245 / 255, 245 / 255, 245 / 255 ],\n yellow: [ 1, 1, 0 ],\n yellowgreen: [ 154 / 255, 205 / 255, 50 / 255 ]\n };\n var coordGrammar = Array(3).fill('<percentage> | <number>[0, 255]');\n var coordGrammarNumber = Array(3).fill('<number>[0, 255]');\n var sRGB = new RGBColorSpace({\n id: 'srgb',\n name: 'sRGB',\n base: sRGBLinear,\n fromBase: function fromBase(rgb) {\n return rgb.map(function(val) {\n var sign = val < 0 ? -1 : 1;\n var abs = val * sign;\n if (abs > .0031308) {\n return sign * (1.055 * Math.pow(abs, 1 / 2.4) - .055);\n }\n return 12.92 * val;\n });\n },\n toBase: function toBase(rgb) {\n return rgb.map(function(val) {\n var sign = val < 0 ? -1 : 1;\n var abs = val * sign;\n if (abs < .04045) {\n return val / 12.92;\n }\n return sign * Math.pow((abs + .055) / 1.055, 2.4);\n });\n },\n formats: {\n rgb: {\n coords: coordGrammar\n },\n rgb_number: {\n name: 'rgb',\n commas: true,\n coords: coordGrammarNumber,\n noAlpha: true\n },\n color: {},\n rgba: {\n coords: coordGrammar,\n commas: true,\n lastAlpha: true\n },\n rgba_number: {\n name: 'rgba',\n commas: true,\n coords: coordGrammarNumber\n },\n hex: {\n type: 'custom',\n toGamut: true,\n test: function test(str) {\n return /^#([a-f0-9]{3,4}){1,2}$/i.test(str);\n },\n parse: function parse(str) {\n if (str.length <= 5) {\n str = str.replace(/[a-f0-9]/gi, '$&$&');\n }\n var rgba = [];\n str.replace(/[a-f0-9]{2}/gi, function(component) {\n rgba.push(parseInt(component, 16) / 255);\n });\n return {\n spaceId: 'srgb',\n coords: rgba.slice(0, 3),\n alpha: rgba.slice(3)[0]\n };\n },\n serialize: function serialize(coords, alpha) {\n var _ref13 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}, _ref13$collapse = _ref13.collapse, collapse = _ref13$collapse === void 0 ? true : _ref13$collapse;\n if (alpha < 1) {\n coords.push(alpha);\n }\n coords = coords.map(function(c4) {\n return Math.round(c4 * 255);\n });\n var collapsible = collapse && coords.every(function(c4) {\n return c4 % 17 === 0;\n });\n var hex = coords.map(function(c4) {\n if (collapsible) {\n return (c4 / 17).toString(16);\n }\n return c4.toString(16).padStart(2, '0');\n }).join('');\n return '#' + hex;\n }\n },\n keyword: {\n type: 'custom',\n test: function test(str) {\n return /^[a-z]+$/i.test(str);\n },\n parse: function parse(str) {\n str = str.toLowerCase();\n var ret = {\n spaceId: 'srgb',\n coords: null,\n alpha: 1\n };\n if (str === 'transparent') {\n ret.coords = KEYWORDS.black;\n ret.alpha = 0;\n } else {\n ret.coords = KEYWORDS[str];\n }\n if (ret.coords) {\n return ret;\n }\n }\n }\n }\n });\n var P3 = new RGBColorSpace({\n id: 'p3',\n name: 'P3',\n base: P3Linear,\n fromBase: sRGB.fromBase,\n toBase: sRGB.toBase,\n formats: {\n color: {\n id: 'display-p3'\n }\n }\n });\n defaults.display_space = sRGB;\n if (typeof CSS !== 'undefined' && (_CSS = CSS) !== null && _CSS !== void 0 && _CSS.supports) {\n for (var _i4 = 0, _arr = [ lab, REC2020, P3 ]; _i4 < _arr.length; _i4++) {\n var space = _arr[_i4];\n var coords = space.getMinCoords();\n var color = {\n space: space,\n coords: coords,\n alpha: 1\n };\n var str = serialize(color);\n if (CSS.supports('color', str)) {\n defaults.display_space = space;\n break;\n }\n }\n }\n function _display(color) {\n var _CSS2;\n var _ref14 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _ref14$space = _ref14.space, space = _ref14$space === void 0 ? defaults.display_space : _ref14$space, options = _objectWithoutProperties(_ref14, _excluded2);\n var ret = serialize(color, options);\n if (typeof CSS === 'undefined' || (_CSS2 = CSS) !== null && _CSS2 !== void 0 && _CSS2.supports('color', ret) || !defaults.display_space) {\n ret = new String(ret);\n ret.color = color;\n } else {\n var fallbackColor = to(color, space);\n ret = new String(serialize(fallbackColor, options));\n ret.color = fallbackColor;\n }\n return ret;\n }\n function distance(color1, color2) {\n var space = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'lab';\n space = ColorSpace.get(space);\n var coords1 = space.from(color1);\n var coords2 = space.from(color2);\n return Math.sqrt(coords1.reduce(function(acc, c12, i) {\n var c22 = coords2[i];\n if (isNaN(c12) || isNaN(c22)) {\n return acc;\n }\n return acc + Math.pow(c22 - c12, 2);\n }, 0));\n }\n function equals(color1, color2) {\n color1 = getColor(color1);\n color2 = getColor(color2);\n return color1.space === color2.space && color1.alpha === color2.alpha && color1.coords.every(function(c4, i) {\n return c4 === color2.coords[i];\n });\n }\n function getLuminance(color) {\n return get(color, [ XYZ_D65, 'y' ]);\n }\n function setLuminance(color, value) {\n set(color, [ XYZ_D65, 'y' ], value);\n }\n function register$2(Color3) {\n Object.defineProperty(Color3.prototype, 'luminance', {\n get: function get() {\n return getLuminance(this);\n },\n set: function set(value) {\n setLuminance(this, value);\n }\n });\n }\n var luminance = Object.freeze({\n __proto__: null,\n getLuminance: getLuminance,\n setLuminance: setLuminance,\n register: register$2\n });\n function contrastWCAG21(color1, color2) {\n color1 = getColor(color1);\n color2 = getColor(color2);\n var Y1 = Math.max(getLuminance(color1), 0);\n var Y2 = Math.max(getLuminance(color2), 0);\n if (Y2 > Y1) {\n var _ref15 = [ Y2, Y1 ];\n Y1 = _ref15[0];\n Y2 = _ref15[1];\n }\n return (Y1 + .05) / (Y2 + .05);\n }\n var normBG = .56;\n var normTXT = .57;\n var revTXT = .62;\n var revBG = .65;\n var blkThrs = .022;\n var blkClmp = 1.414;\n var loClip = .1;\n var deltaYmin = 5e-4;\n var scaleBoW = 1.14;\n var loBoWoffset = .027;\n var scaleWoB = 1.14;\n function fclamp(Y) {\n if (Y >= blkThrs) {\n return Y;\n }\n return Y + Math.pow(blkThrs - Y, blkClmp);\n }\n function linearize(val) {\n var sign = val < 0 ? -1 : 1;\n var abs = Math.abs(val);\n return sign * Math.pow(abs, 2.4);\n }\n function contrastAPCA(background, foreground) {\n foreground = getColor(foreground);\n background = getColor(background);\n var S;\n var C;\n var Sapc;\n var R, G, B;\n foreground = to(foreground, 'srgb');\n var _foreground$coords = _slicedToArray(foreground.coords, 3);\n R = _foreground$coords[0];\n G = _foreground$coords[1];\n B = _foreground$coords[2];\n var lumTxt = linearize(R) * .2126729 + linearize(G) * .7151522 + linearize(B) * .072175;\n background = to(background, 'srgb');\n var _background$coords = _slicedToArray(background.coords, 3);\n R = _background$coords[0];\n G = _background$coords[1];\n B = _background$coords[2];\n var lumBg = linearize(R) * .2126729 + linearize(G) * .7151522 + linearize(B) * .072175;\n var Ytxt = fclamp(lumTxt);\n var Ybg = fclamp(lumBg);\n var BoW = Ybg > Ytxt;\n if (Math.abs(Ybg - Ytxt) < deltaYmin) {\n C = 0;\n } else {\n if (BoW) {\n S = Math.pow(Ybg, normBG) - Math.pow(Ytxt, normTXT);\n C = S * scaleBoW;\n } else {\n S = Math.pow(Ybg, revBG) - Math.pow(Ytxt, revTXT);\n C = S * scaleWoB;\n }\n }\n if (Math.abs(C) < loClip) {\n Sapc = 0;\n } else if (C > 0) {\n Sapc = C - loBoWoffset;\n } else {\n Sapc = C + loBoWoffset;\n }\n return Sapc * 100;\n }\n function contrastMichelson(color1, color2) {\n color1 = getColor(color1);\n color2 = getColor(color2);\n var Y1 = Math.max(getLuminance(color1), 0);\n var Y2 = Math.max(getLuminance(color2), 0);\n if (Y2 > Y1) {\n var _ref16 = [ Y2, Y1 ];\n Y1 = _ref16[0];\n Y2 = _ref16[1];\n }\n var denom = Y1 + Y2;\n return denom === 0 ? 0 : (Y1 - Y2) / denom;\n }\n var max = 5e4;\n function contrastWeber(color1, color2) {\n color1 = getColor(color1);\n color2 = getColor(color2);\n var Y1 = Math.max(getLuminance(color1), 0);\n var Y2 = Math.max(getLuminance(color2), 0);\n if (Y2 > Y1) {\n var _ref17 = [ Y2, Y1 ];\n Y1 = _ref17[0];\n Y2 = _ref17[1];\n }\n return Y2 === 0 ? max : (Y1 - Y2) / Y2;\n }\n function contrastLstar(color1, color2) {\n color1 = getColor(color1);\n color2 = getColor(color2);\n var L1 = get(color1, [ lab, 'l' ]);\n var L2 = get(color2, [ lab, 'l' ]);\n return Math.abs(L1 - L2);\n }\n var \\u03b5$1 = 216 / 24389;\n var \\u03b53 = 24 / 116;\n var \\u03ba = 24389 / 27;\n var white = WHITES.D65;\n var lab_d65 = new ColorSpace({\n id: 'lab-d65',\n name: 'Lab D65',\n coords: {\n l: {\n refRange: [ 0, 100 ],\n name: 'L'\n },\n a: {\n refRange: [ -125, 125 ]\n },\n b: {\n refRange: [ -125, 125 ]\n }\n },\n white: white,\n base: XYZ_D65,\n fromBase: function fromBase(XYZ) {\n var xyz = XYZ.map(function(value, i) {\n return value / white[i];\n });\n var f = xyz.map(function(value) {\n return value > \\u03b5$1 ? Math.cbrt(value) : (\\u03ba * value + 16) / 116;\n });\n return [ 116 * f[1] - 16, 500 * (f[0] - f[1]), 200 * (f[1] - f[2]) ];\n },\n toBase: function toBase(Lab) {\n var f = [];\n f[1] = (Lab[0] + 16) / 116;\n f[0] = Lab[1] / 500 + f[1];\n f[2] = f[1] - Lab[2] / 200;\n var xyz = [ f[0] > \\u03b53 ? Math.pow(f[0], 3) : (116 * f[0] - 16) / \\u03ba, Lab[0] > 8 ? Math.pow((Lab[0] + 16) / 116, 3) : Lab[0] / \\u03ba, f[2] > \\u03b53 ? Math.pow(f[2], 3) : (116 * f[2] - 16) / \\u03ba ];\n return xyz.map(function(value, i) {\n return value * white[i];\n });\n },\n formats: {\n 'lab-d65': {\n coords: [ '<number> | <percentage>', '<number>', '<number>' ]\n }\n }\n });\n var phi = Math.pow(5, .5) * .5 + .5;\n function contrastDeltaPhi(color1, color2) {\n color1 = getColor(color1);\n color2 = getColor(color2);\n var Lstr1 = get(color1, [ lab_d65, 'l' ]);\n var Lstr2 = get(color2, [ lab_d65, 'l' ]);\n var deltaPhiStar = Math.abs(Math.pow(Lstr1, phi) - Math.pow(Lstr2, phi));\n var contrast2 = Math.pow(deltaPhiStar, 1 / phi) * Math.SQRT2 - 40;\n return contrast2 < 7.5 ? 0 : contrast2;\n }\n var contrastMethods = Object.freeze({\n __proto__: null,\n contrastWCAG21: contrastWCAG21,\n contrastAPCA: contrastAPCA,\n contrastMichelson: contrastMichelson,\n contrastWeber: contrastWeber,\n contrastLstar: contrastLstar,\n contrastDeltaPhi: contrastDeltaPhi\n });\n function contrast(background, foreground) {\n var o = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n if (isString(o)) {\n o = {\n algorithm: o\n };\n }\n var _o = o, algorithm = _o.algorithm, rest = _objectWithoutProperties(_o, _excluded3);\n if (!algorithm) {\n var algorithms = Object.keys(contrastMethods).map(function(a2) {\n return a2.replace(/^contrast/, '');\n }).join(', ');\n throw new TypeError('contrast() function needs a contrast algorithm. Please specify one of: '.concat(algorithms));\n }\n background = getColor(background);\n foreground = getColor(foreground);\n for (var a2 in contrastMethods) {\n if ('contrast' + algorithm.toLowerCase() === a2.toLowerCase()) {\n return contrastMethods[a2](background, foreground, rest);\n }\n }\n throw new TypeError('Unknown contrast algorithm: '.concat(algorithm));\n }\n function uv(color) {\n var _getAll = getAll(color, XYZ_D65), _getAll2 = _slicedToArray(_getAll, 3), X = _getAll2[0], Y = _getAll2[1], Z = _getAll2[2];\n var denom = X + 15 * Y + 3 * Z;\n return [ 4 * X / denom, 9 * Y / denom ];\n }\n function xy(color) {\n var _getAll3 = getAll(color, XYZ_D65), _getAll4 = _slicedToArray(_getAll3, 3), X = _getAll4[0], Y = _getAll4[1], Z = _getAll4[2];\n var sum = X + Y + Z;\n return [ X / sum, Y / sum ];\n }\n function register$1(Color3) {\n Object.defineProperty(Color3.prototype, 'uv', {\n get: function get() {\n return uv(this);\n }\n });\n Object.defineProperty(Color3.prototype, 'xy', {\n get: function get() {\n return xy(this);\n }\n });\n }\n var chromaticity = Object.freeze({\n __proto__: null,\n uv: uv,\n xy: xy,\n register: register$1\n });\n function deltaE76(color, sample) {\n return distance(color, sample, 'lab');\n }\n var \\u03c0 = Math.PI;\n var d2r = \\u03c0 / 180;\n function deltaECMC(color, sample) {\n var _ref18 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}, _ref18$l = _ref18.l, l = _ref18$l === void 0 ? 2 : _ref18$l, _ref18$c = _ref18.c, c4 = _ref18$c === void 0 ? 1 : _ref18$c;\n var _lab$from5 = lab.from(color), _lab$from6 = _slicedToArray(_lab$from5, 3), L1 = _lab$from6[0], a1 = _lab$from6[1], b1 = _lab$from6[2];\n var _lch$from = lch.from(lab, [ L1, a1, b1 ]), _lch$from2 = _slicedToArray(_lch$from, 3), C1 = _lch$from2[1], H1 = _lch$from2[2];\n var _lab$from7 = lab.from(sample), _lab$from8 = _slicedToArray(_lab$from7, 3), L2 = _lab$from8[0], a2 = _lab$from8[1], b2 = _lab$from8[2];\n var C2 = lch.from(lab, [ L2, a2, b2 ])[1];\n if (C1 < 0) {\n C1 = 0;\n }\n if (C2 < 0) {\n C2 = 0;\n }\n var \\u0394L = L1 - L2;\n var \\u0394C = C1 - C2;\n var \\u0394a = a1 - a2;\n var \\u0394b = b1 - b2;\n var H2 = Math.pow(\\u0394a, 2) + Math.pow(\\u0394b, 2) - Math.pow(\\u0394C, 2);\n var SL = .511;\n if (L1 >= 16) {\n SL = .040975 * L1 / (1 + .01765 * L1);\n }\n var SC = .0638 * C1 / (1 + .0131 * C1) + .638;\n var T;\n if (Number.isNaN(H1)) {\n H1 = 0;\n }\n if (H1 >= 164 && H1 <= 345) {\n T = .56 + Math.abs(.2 * Math.cos((H1 + 168) * d2r));\n } else {\n T = .36 + Math.abs(.4 * Math.cos((H1 + 35) * d2r));\n }\n var C4 = Math.pow(C1, 4);\n var F = Math.sqrt(C4 / (C4 + 1900));\n var SH = SC * (F * T + 1 - F);\n var dE = Math.pow(\\u0394L / (l * SL), 2);\n dE += Math.pow(\\u0394C / (c4 * SC), 2);\n dE += H2 / Math.pow(SH, 2);\n return Math.sqrt(dE);\n }\n var Yw$1 = 203;\n var XYZ_Abs_D65 = new ColorSpace({\n id: 'xyz-abs-d65',\n name: 'Absolute XYZ D65',\n coords: {\n x: {\n refRange: [ 0, 9504.7 ],\n name: 'Xa'\n },\n y: {\n refRange: [ 0, 1e4 ],\n name: 'Ya'\n },\n z: {\n refRange: [ 0, 10888.3 ],\n name: 'Za'\n }\n },\n base: XYZ_D65,\n fromBase: function fromBase(XYZ) {\n return XYZ.map(function(v) {\n return Math.max(v * Yw$1, 0);\n });\n },\n toBase: function toBase(AbsXYZ) {\n return AbsXYZ.map(function(v) {\n return Math.max(v / Yw$1, 0);\n });\n }\n });\n var b$1 = 1.15;\n var g = .66;\n var n$1 = 2610 / Math.pow(2, 14);\n var ninv$1 = Math.pow(2, 14) / 2610;\n var c1$2 = 3424 / Math.pow(2, 12);\n var c2$2 = 2413 / Math.pow(2, 7);\n var c3$2 = 2392 / Math.pow(2, 7);\n var p = 1.7 * 2523 / Math.pow(2, 5);\n var pinv = Math.pow(2, 5) / (1.7 * 2523);\n var d = -.56;\n var d0 = 16295499532821565e-27;\n var XYZtoCone_M = [ [ .41478972, .579999, .014648 ], [ -.20151, 1.120649, .0531008 ], [ -.0166008, .2648, .6684799 ] ];\n var ConetoXYZ_M = [ [ 1.9242264357876067, -1.0047923125953657, .037651404030618 ], [ .35031676209499907, .7264811939316552, -.06538442294808501 ], [ -.09098281098284752, -.3127282905230739, 1.5227665613052603 ] ];\n var ConetoIab_M = [ [ .5, .5, 0 ], [ 3.524, -4.066708, .542708 ], [ .199076, 1.096799, -1.295875 ] ];\n var IabtoCone_M = [ [ 1, .1386050432715393, .05804731615611886 ], [ .9999999999999999, -.1386050432715393, -.05804731615611886 ], [ .9999999999999998, -.09601924202631895, -.8118918960560388 ] ];\n var Jzazbz = new ColorSpace({\n id: 'jzazbz',\n name: 'Jzazbz',\n coords: {\n jz: {\n refRange: [ 0, 1 ],\n name: 'Jz'\n },\n az: {\n refRange: [ -.5, .5 ]\n },\n bz: {\n refRange: [ -.5, .5 ]\n }\n },\n base: XYZ_Abs_D65,\n fromBase: function fromBase(XYZ) {\n var _XYZ = _slicedToArray(XYZ, 3), Xa = _XYZ[0], Ya = _XYZ[1], Za = _XYZ[2];\n var Xm = b$1 * Xa - (b$1 - 1) * Za;\n var Ym = g * Ya - (g - 1) * Xa;\n var LMS = multiplyMatrices(XYZtoCone_M, [ Xm, Ym, Za ]);\n var PQLMS = LMS.map(function(val) {\n var num = c1$2 + c2$2 * Math.pow(val / 1e4, n$1);\n var denom = 1 + c3$2 * Math.pow(val / 1e4, n$1);\n return Math.pow(num / denom, p);\n });\n var _multiplyMatrices = multiplyMatrices(ConetoIab_M, PQLMS), _multiplyMatrices2 = _slicedToArray(_multiplyMatrices, 3), Iz = _multiplyMatrices2[0], az = _multiplyMatrices2[1], bz = _multiplyMatrices2[2];\n var Jz = (1 + d) * Iz / (1 + d * Iz) - d0;\n return [ Jz, az, bz ];\n },\n toBase: function toBase(Jzazbz2) {\n var _Jzazbz = _slicedToArray(Jzazbz2, 3), Jz = _Jzazbz[0], az = _Jzazbz[1], bz = _Jzazbz[2];\n var Iz = (Jz + d0) / (1 + d - d * (Jz + d0));\n var PQLMS = multiplyMatrices(IabtoCone_M, [ Iz, az, bz ]);\n var LMS = PQLMS.map(function(val) {\n var num = c1$2 - Math.pow(val, pinv);\n var denom = c3$2 * Math.pow(val, pinv) - c2$2;\n var x = 1e4 * Math.pow(num / denom, ninv$1);\n return x;\n });\n var _multiplyMatrices3 = multiplyMatrices(ConetoXYZ_M, LMS), _multiplyMatrices4 = _slicedToArray(_multiplyMatrices3, 3), Xm = _multiplyMatrices4[0], Ym = _multiplyMatrices4[1], Za = _multiplyMatrices4[2];\n var Xa = (Xm + (b$1 - 1) * Za) / b$1;\n var Ya = (Ym + (g - 1) * Xa) / g;\n return [ Xa, Ya, Za ];\n },\n formats: {\n color: {}\n }\n });\n var jzczhz = new ColorSpace({\n id: 'jzczhz',\n name: 'JzCzHz',\n coords: {\n jz: {\n refRange: [ 0, 1 ],\n name: 'Jz'\n },\n cz: {\n refRange: [ 0, 1 ],\n name: 'Chroma'\n },\n hz: {\n refRange: [ 0, 360 ],\n type: 'angle',\n name: 'Hue'\n }\n },\n base: Jzazbz,\n fromBase: function fromBase(jzazbz) {\n var _jzazbz = _slicedToArray(jzazbz, 3), Jz = _jzazbz[0], az = _jzazbz[1], bz = _jzazbz[2];\n var hue;\n var \\u03b52 = 2e-4;\n if (Math.abs(az) < \\u03b52 && Math.abs(bz) < \\u03b52) {\n hue = NaN;\n } else {\n hue = Math.atan2(bz, az) * 180 / Math.PI;\n }\n return [ Jz, Math.sqrt(Math.pow(az, 2) + Math.pow(bz, 2)), constrain(hue) ];\n },\n toBase: function toBase(jzczhz2) {\n return [ jzczhz2[0], jzczhz2[1] * Math.cos(jzczhz2[2] * Math.PI / 180), jzczhz2[1] * Math.sin(jzczhz2[2] * Math.PI / 180) ];\n },\n formats: {\n color: {}\n }\n });\n function deltaEJz(color, sample) {\n var _jzczhz$from = jzczhz.from(color), _jzczhz$from2 = _slicedToArray(_jzczhz$from, 3), Jz1 = _jzczhz$from2[0], Cz1 = _jzczhz$from2[1], Hz1 = _jzczhz$from2[2];\n var _jzczhz$from3 = jzczhz.from(sample), _jzczhz$from4 = _slicedToArray(_jzczhz$from3, 3), Jz2 = _jzczhz$from4[0], Cz2 = _jzczhz$from4[1], Hz2 = _jzczhz$from4[2];\n var \\u0394J = Jz1 - Jz2;\n var \\u0394C = Cz1 - Cz2;\n if (Number.isNaN(Hz1) && Number.isNaN(Hz2)) {\n Hz1 = 0;\n Hz2 = 0;\n } else if (Number.isNaN(Hz1)) {\n Hz1 = Hz2;\n } else if (Number.isNaN(Hz2)) {\n Hz2 = Hz1;\n }\n var \\u0394h = Hz1 - Hz2;\n var \\u0394H = 2 * Math.sqrt(Cz1 * Cz2) * Math.sin(\\u0394h / 2 * (Math.PI / 180));\n return Math.sqrt(Math.pow(\\u0394J, 2) + Math.pow(\\u0394C, 2) + Math.pow(\\u0394H, 2));\n }\n var c1$1 = 3424 / 4096;\n var c2$1 = 2413 / 128;\n var c3$1 = 2392 / 128;\n var m1 = 2610 / 16384;\n var m2 = 2523 / 32;\n var im1 = 16384 / 2610;\n var im2 = 32 / 2523;\n var XYZtoLMS_M$1 = [ [ .3592, .6976, -.0358 ], [ -.1922, 1.1004, .0755 ], [ .007, .0749, .8434 ] ];\n var LMStoIPT_M = [ [ 2048 / 4096, 2048 / 4096, 0 ], [ 6610 / 4096, -13613 / 4096, 7003 / 4096 ], [ 17933 / 4096, -17390 / 4096, -543 / 4096 ] ];\n var IPTtoLMS_M = [ [ .9999888965628402, .008605050147287059, .11103437159861648 ], [ 1.00001110343716, -.008605050147287059, -.11103437159861648 ], [ 1.0000320633910054, .56004913547279, -.3206339100541203 ] ];\n var LMStoXYZ_M$1 = [ [ 2.0701800566956137, -1.326456876103021, .20661600684785517 ], [ .3649882500326575, .6804673628522352, -.04542175307585323 ], [ -.04959554223893211, -.04942116118675749, 1.1879959417328034 ] ];\n var ictcp = new ColorSpace({\n id: 'ictcp',\n name: 'ICTCP',\n coords: {\n i: {\n refRange: [ 0, 1 ],\n name: 'I'\n },\n ct: {\n refRange: [ -.5, .5 ],\n name: 'CT'\n },\n cp: {\n refRange: [ -.5, .5 ],\n name: 'CP'\n }\n },\n base: XYZ_Abs_D65,\n fromBase: function fromBase(XYZ) {\n var LMS = multiplyMatrices(XYZtoLMS_M$1, XYZ);\n return LMStoICtCp(LMS);\n },\n toBase: function toBase(ICtCp) {\n var LMS = ICtCptoLMS(ICtCp);\n return multiplyMatrices(LMStoXYZ_M$1, LMS);\n },\n formats: {\n color: {}\n }\n });\n function LMStoICtCp(LMS) {\n var PQLMS = LMS.map(function(val) {\n var num = c1$1 + c2$1 * Math.pow(val / 1e4, m1);\n var denom = 1 + c3$1 * Math.pow(val / 1e4, m1);\n return Math.pow(num / denom, m2);\n });\n return multiplyMatrices(LMStoIPT_M, PQLMS);\n }\n function ICtCptoLMS(ICtCp) {\n var PQLMS = multiplyMatrices(IPTtoLMS_M, ICtCp);\n var LMS = PQLMS.map(function(val) {\n var num = Math.max(Math.pow(val, im2) - c1$1, 0);\n var denom = c2$1 - c3$1 * Math.pow(val, im2);\n return 1e4 * Math.pow(num / denom, im1);\n });\n return LMS;\n }\n function deltaEITP(color, sample) {\n var _ictcp$from = ictcp.from(color), _ictcp$from2 = _slicedToArray(_ictcp$from, 3), I1 = _ictcp$from2[0], T1 = _ictcp$from2[1], P1 = _ictcp$from2[2];\n var _ictcp$from3 = ictcp.from(sample), _ictcp$from4 = _slicedToArray(_ictcp$from3, 3), I2 = _ictcp$from4[0], T2 = _ictcp$from4[1], P2 = _ictcp$from4[2];\n return 720 * Math.sqrt(Math.pow(I1 - I2, 2) + .25 * Math.pow(T1 - T2, 2) + Math.pow(P1 - P2, 2));\n }\n var XYZtoLMS_M = [ [ .8190224432164319, .3619062562801221, -.12887378261216414 ], [ .0329836671980271, .9292868468965546, .03614466816999844 ], [ .048177199566046255, .26423952494422764, .6335478258136937 ] ];\n var LMStoXYZ_M = [ [ 1.2268798733741557, -.5578149965554813, .28139105017721583 ], [ -.04057576262431372, 1.1122868293970594, -.07171106666151701 ], [ -.07637294974672142, -.4214933239627914, 1.5869240244272418 ] ];\n var LMStoLab_M = [ [ .2104542553, .793617785, -.0040720468 ], [ 1.9779984951, -2.428592205, .4505937099 ], [ .0259040371, .7827717662, -.808675766 ] ];\n var LabtoLMS_M = [ [ .9999999984505198, .39633779217376786, .2158037580607588 ], [ 1.0000000088817609, -.10556134232365635, -.06385417477170591 ], [ 1.0000000546724108, -.08948418209496575, -1.2914855378640917 ] ];\n var OKLab = new ColorSpace({\n id: 'oklab',\n name: 'OKLab',\n coords: {\n l: {\n refRange: [ 0, 1 ],\n name: 'L'\n },\n a: {\n refRange: [ -.4, .4 ]\n },\n b: {\n refRange: [ -.4, .4 ]\n }\n },\n white: 'D65',\n base: XYZ_D65,\n fromBase: function fromBase(XYZ) {\n var LMS = multiplyMatrices(XYZtoLMS_M, XYZ);\n var LMSg = LMS.map(function(val) {\n return Math.cbrt(val);\n });\n return multiplyMatrices(LMStoLab_M, LMSg);\n },\n toBase: function toBase(OKLab2) {\n var LMSg = multiplyMatrices(LabtoLMS_M, OKLab2);\n var LMS = LMSg.map(function(val) {\n return Math.pow(val, 3);\n });\n return multiplyMatrices(LMStoXYZ_M, LMS);\n },\n formats: {\n oklab: {\n coords: [ '<number> | <percentage>', '<number>', '<number>' ]\n }\n }\n });\n function deltaEOK(color, sample) {\n var _OKLab$from = OKLab.from(color), _OKLab$from2 = _slicedToArray(_OKLab$from, 3), L1 = _OKLab$from2[0], a1 = _OKLab$from2[1], b1 = _OKLab$from2[2];\n var _OKLab$from3 = OKLab.from(sample), _OKLab$from4 = _slicedToArray(_OKLab$from3, 3), L2 = _OKLab$from4[0], a2 = _OKLab$from4[1], b2 = _OKLab$from4[2];\n var \\u0394L = L1 - L2;\n var \\u0394a = a1 - a2;\n var \\u0394b = b1 - b2;\n return Math.sqrt(Math.pow(\\u0394L, 2) + Math.pow(\\u0394a, 2) + Math.pow(\\u0394b, 2));\n }\n var deltaEMethods = Object.freeze({\n __proto__: null,\n deltaE76: deltaE76,\n deltaECMC: deltaECMC,\n deltaE2000: deltaE2000,\n deltaEJz: deltaEJz,\n deltaEITP: deltaEITP,\n deltaEOK: deltaEOK\n });\n function deltaE(c12, c22) {\n var o = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n if (isString(o)) {\n o = {\n method: o\n };\n }\n var _o2 = o, _o2$method = _o2.method, method = _o2$method === void 0 ? defaults.deltaE : _o2$method, rest = _objectWithoutProperties(_o2, _excluded4);\n c12 = getColor(c12);\n c22 = getColor(c22);\n for (var m3 in deltaEMethods) {\n if ('deltae' + method.toLowerCase() === m3.toLowerCase()) {\n return deltaEMethods[m3](c12, c22, rest);\n }\n }\n throw new TypeError('Unknown deltaE method: '.concat(method));\n }\n function lighten(color) {\n var amount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : .25;\n var space = ColorSpace.get('oklch', 'lch');\n var lightness = [ space, 'l' ];\n return set(color, lightness, function(l) {\n return l * (1 + amount);\n });\n }\n function darken(color) {\n var amount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : .25;\n var space = ColorSpace.get('oklch', 'lch');\n var lightness = [ space, 'l' ];\n return set(color, lightness, function(l) {\n return l * (1 - amount);\n });\n }\n var variations = Object.freeze({\n __proto__: null,\n lighten: lighten,\n darken: darken\n });\n function mix(c12, c22) {\n var p2 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : .5;\n var o = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var _ref19 = [ getColor(c12), getColor(c22) ];\n c12 = _ref19[0];\n c22 = _ref19[1];\n if (type(p2) === 'object') {\n var _ref20 = [ .5, p2 ];\n p2 = _ref20[0];\n o = _ref20[1];\n }\n var _o3 = o, space = _o3.space, outputSpace = _o3.outputSpace, premultiplied = _o3.premultiplied;\n var r = range(c12, c22, {\n space: space,\n outputSpace: outputSpace,\n premultiplied: premultiplied\n });\n return r(p2);\n }\n function steps(c12, c22) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var colorRange;\n if (isRange(c12)) {\n colorRange = c12;\n options = c22;\n var _colorRange$rangeArgs = _slicedToArray(colorRange.rangeArgs.colors, 2);\n c12 = _colorRange$rangeArgs[0];\n c22 = _colorRange$rangeArgs[1];\n }\n var _options = options, maxDeltaE = _options.maxDeltaE, deltaEMethod = _options.deltaEMethod, _options$steps = _options.steps, steps2 = _options$steps === void 0 ? 2 : _options$steps, _options$maxSteps = _options.maxSteps, maxSteps = _options$maxSteps === void 0 ? 1e3 : _options$maxSteps, rangeOptions = _objectWithoutProperties(_options, _excluded5);\n if (!colorRange) {\n var _ref21 = [ getColor(c12), getColor(c22) ];\n c12 = _ref21[0];\n c22 = _ref21[1];\n colorRange = range(c12, c22, rangeOptions);\n }\n var totalDelta = deltaE(c12, c22);\n var actualSteps = maxDeltaE > 0 ? Math.max(steps2, Math.ceil(totalDelta / maxDeltaE) + 1) : steps2;\n var ret = [];\n if (maxSteps !== void 0) {\n actualSteps = Math.min(actualSteps, maxSteps);\n }\n if (actualSteps === 1) {\n ret = [ {\n p: .5,\n color: colorRange(.5)\n } ];\n } else {\n var step = 1 / (actualSteps - 1);\n ret = Array.from({\n length: actualSteps\n }, function(_, i) {\n var p2 = i * step;\n return {\n p: p2,\n color: colorRange(p2)\n };\n });\n }\n if (maxDeltaE > 0) {\n var maxDelta = ret.reduce(function(acc, cur, i) {\n if (i === 0) {\n return 0;\n }\n var \\u0394\\u0395 = deltaE(cur.color, ret[i - 1].color, deltaEMethod);\n return Math.max(acc, \\u0394\\u0395);\n }, 0);\n while (maxDelta > maxDeltaE) {\n maxDelta = 0;\n for (var i = 1; i < ret.length && ret.length < maxSteps; i++) {\n var prev = ret[i - 1];\n var cur = ret[i];\n var p2 = (cur.p + prev.p) / 2;\n var _color = colorRange(p2);\n maxDelta = Math.max(maxDelta, deltaE(_color, prev.color), deltaE(_color, cur.color));\n ret.splice(i, 0, {\n p: p2,\n color: colorRange(p2)\n });\n i++;\n }\n }\n }\n ret = ret.map(function(a2) {\n return a2.color;\n });\n return ret;\n }\n function range(color1, color2) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n if (isRange(color1)) {\n var r = color1, options2 = color2;\n return range.apply(void 0, _toConsumableArray(r.rangeArgs.colors).concat([ _extends({}, r.rangeArgs.options, options2) ]));\n }\n var space = options.space, outputSpace = options.outputSpace, progression = options.progression, premultiplied = options.premultiplied;\n color1 = getColor(color1);\n color2 = getColor(color2);\n color1 = clone(color1);\n color2 = clone(color2);\n var rangeArgs = {\n colors: [ color1, color2 ],\n options: options\n };\n if (space) {\n space = ColorSpace.get(space);\n } else {\n space = ColorSpace.registry[defaults.interpolationSpace] || color1.space;\n }\n outputSpace = outputSpace ? ColorSpace.get(outputSpace) : space;\n color1 = to(color1, space);\n color2 = to(color2, space);\n color1 = toGamut(color1);\n color2 = toGamut(color2);\n if (space.coords.h && space.coords.h.type === 'angle') {\n var arc = options.hue = options.hue || 'shorter';\n var hue = [ space, 'h' ];\n var _ref22 = [ get(color1, hue), get(color2, hue) ], \\u03b81 = _ref22[0], \\u03b82 = _ref22[1];\n var _adjust = adjust(arc, [ \\u03b81, \\u03b82 ]);\n var _adjust2 = _slicedToArray(_adjust, 2);\n \\u03b81 = _adjust2[0];\n \\u03b82 = _adjust2[1];\n set(color1, hue, \\u03b81);\n set(color2, hue, \\u03b82);\n }\n if (premultiplied) {\n color1.coords = color1.coords.map(function(c4) {\n return c4 * color1.alpha;\n });\n color2.coords = color2.coords.map(function(c4) {\n return c4 * color2.alpha;\n });\n }\n return Object.assign(function(p2) {\n p2 = progression ? progression(p2) : p2;\n var coords = color1.coords.map(function(start, i) {\n var end = color2.coords[i];\n return interpolate(start, end, p2);\n });\n var alpha = interpolate(color1.alpha, color2.alpha, p2);\n var ret = {\n space: space,\n coords: coords,\n alpha: alpha\n };\n if (premultiplied) {\n ret.coords = ret.coords.map(function(c4) {\n return c4 / alpha;\n });\n }\n if (outputSpace !== space) {\n ret = to(ret, outputSpace);\n }\n return ret;\n }, {\n rangeArgs: rangeArgs\n });\n }\n function isRange(val) {\n return type(val) === 'function' && !!val.rangeArgs;\n }\n defaults.interpolationSpace = 'lab';\n function register(Color3) {\n Color3.defineFunction('mix', mix, {\n returns: 'color'\n });\n Color3.defineFunction('range', range, {\n returns: 'function<color>'\n });\n Color3.defineFunction('steps', steps, {\n returns: 'array<color>'\n });\n }\n var interpolation = Object.freeze({\n __proto__: null,\n mix: mix,\n steps: steps,\n range: range,\n isRange: isRange,\n register: register\n });\n var HSL = new ColorSpace({\n id: 'hsl',\n name: 'HSL',\n coords: {\n h: {\n refRange: [ 0, 360 ],\n type: 'angle',\n name: 'Hue'\n },\n s: {\n range: [ 0, 100 ],\n name: 'Saturation'\n },\n l: {\n range: [ 0, 100 ],\n name: 'Lightness'\n }\n },\n base: sRGB,\n fromBase: function fromBase(rgb) {\n var max2 = Math.max.apply(Math, _toConsumableArray(rgb));\n var min = Math.min.apply(Math, _toConsumableArray(rgb));\n var _rgb = _slicedToArray(rgb, 3), r = _rgb[0], g2 = _rgb[1], b2 = _rgb[2];\n var h = NaN, s = 0, l = (min + max2) / 2;\n var d2 = max2 - min;\n if (d2 !== 0) {\n s = l === 0 || l === 1 ? 0 : (max2 - l) / Math.min(l, 1 - l);\n switch (max2) {\n case r:\n h = (g2 - b2) / d2 + (g2 < b2 ? 6 : 0);\n break;\n\n case g2:\n h = (b2 - r) / d2 + 2;\n break;\n\n case b2:\n h = (r - g2) / d2 + 4;\n }\n h = h * 60;\n }\n return [ h, s * 100, l * 100 ];\n },\n toBase: function toBase(hsl) {\n var _hsl = _slicedToArray(hsl, 3), h = _hsl[0], s = _hsl[1], l = _hsl[2];\n h = h % 360;\n if (h < 0) {\n h += 360;\n }\n s /= 100;\n l /= 100;\n function f(n2) {\n var k = (n2 + h / 30) % 12;\n var a2 = s * Math.min(l, 1 - l);\n return l - a2 * Math.max(-1, Math.min(k - 3, 9 - k, 1));\n }\n return [ f(0), f(8), f(4) ];\n },\n formats: {\n hsl: {\n toGamut: true,\n coords: [ '<number> | <angle>', '<percentage>', '<percentage>' ]\n },\n hsla: {\n coords: [ '<number> | <angle>', '<percentage>', '<percentage>' ],\n commas: true,\n lastAlpha: true\n }\n }\n });\n var HSV = new ColorSpace({\n id: 'hsv',\n name: 'HSV',\n coords: {\n h: {\n refRange: [ 0, 360 ],\n type: 'angle',\n name: 'Hue'\n },\n s: {\n range: [ 0, 100 ],\n name: 'Saturation'\n },\n v: {\n range: [ 0, 100 ],\n name: 'Value'\n }\n },\n base: HSL,\n fromBase: function fromBase(hsl) {\n var _hsl2 = _slicedToArray(hsl, 3), h = _hsl2[0], s = _hsl2[1], l = _hsl2[2];\n s /= 100;\n l /= 100;\n var v = l + s * Math.min(l, 1 - l);\n return [ h, v === 0 ? 0 : 200 * (1 - l / v), 100 * v ];\n },\n toBase: function toBase(hsv) {\n var _hsv = _slicedToArray(hsv, 3), h = _hsv[0], s = _hsv[1], v = _hsv[2];\n s /= 100;\n v /= 100;\n var l = v * (1 - s / 2);\n return [ h, l === 0 || l === 1 ? 0 : (v - l) / Math.min(l, 1 - l) * 100, l * 100 ];\n },\n formats: {\n color: {\n toGamut: true\n }\n }\n });\n var hwb = new ColorSpace({\n id: 'hwb',\n name: 'HWB',\n coords: {\n h: {\n refRange: [ 0, 360 ],\n type: 'angle',\n name: 'Hue'\n },\n w: {\n range: [ 0, 100 ],\n name: 'Whiteness'\n },\n b: {\n range: [ 0, 100 ],\n name: 'Blackness'\n }\n },\n base: HSV,\n fromBase: function fromBase(hsv) {\n var _hsv2 = _slicedToArray(hsv, 3), h = _hsv2[0], s = _hsv2[1], v = _hsv2[2];\n return [ h, v * (100 - s) / 100, 100 - v ];\n },\n toBase: function toBase(hwb2) {\n var _hwb = _slicedToArray(hwb2, 3), h = _hwb[0], w = _hwb[1], b2 = _hwb[2];\n w /= 100;\n b2 /= 100;\n var sum = w + b2;\n if (sum >= 1) {\n var gray = w / sum;\n return [ h, 0, gray * 100 ];\n }\n var v = 1 - b2;\n var s = v === 0 ? 0 : 1 - w / v;\n return [ h, s * 100, v * 100 ];\n },\n formats: {\n hwb: {\n toGamut: true,\n coords: [ '<number> | <angle>', '<percentage>', '<percentage>' ]\n }\n }\n });\n var toXYZ_M$2 = [ [ .5766690429101305, .1855582379065463, .1882286462349947 ], [ .29734497525053605, .6273635662554661, .07529145849399788 ], [ .02703136138641234, .07068885253582723, .9913375368376388 ] ];\n var fromXYZ_M$2 = [ [ 2.0415879038107465, -.5650069742788596, -.34473135077832956 ], [ -.9692436362808795, 1.8759675015077202, .04155505740717557 ], [ .013444280632031142, -.11836239223101838, 1.0151749943912054 ] ];\n var A98Linear = new RGBColorSpace({\n id: 'a98rgb-linear',\n name: 'Linear Adobe\\xae 98 RGB compatible',\n white: 'D65',\n toXYZ_M: toXYZ_M$2,\n fromXYZ_M: fromXYZ_M$2\n });\n var a98rgb = new RGBColorSpace({\n id: 'a98rgb',\n name: 'Adobe\\xae 98 RGB compatible',\n base: A98Linear,\n toBase: function toBase(RGB) {\n return RGB.map(function(val) {\n return Math.pow(Math.abs(val), 563 / 256) * Math.sign(val);\n });\n },\n fromBase: function fromBase(RGB) {\n return RGB.map(function(val) {\n return Math.pow(Math.abs(val), 256 / 563) * Math.sign(val);\n });\n },\n formats: {\n color: {\n id: 'a98-rgb'\n }\n }\n });\n var toXYZ_M$1 = [ [ .7977604896723027, .13518583717574031, .0313493495815248 ], [ .2880711282292934, .7118432178101014, 8565396060525902e-20 ], [ 0, 0, .8251046025104601 ] ];\n var fromXYZ_M$1 = [ [ 1.3457989731028281, -.25558010007997534, -.05110628506753401 ], [ -.5446224939028347, 1.5082327413132781, .02053603239147973 ], [ 0, 0, 1.2119675456389454 ] ];\n var ProPhotoLinear = new RGBColorSpace({\n id: 'prophoto-linear',\n name: 'Linear ProPhoto',\n white: 'D50',\n base: XYZ_D50,\n toXYZ_M: toXYZ_M$1,\n fromXYZ_M: fromXYZ_M$1\n });\n var Et = 1 / 512;\n var Et2 = 16 / 512;\n var prophoto = new RGBColorSpace({\n id: 'prophoto',\n name: 'ProPhoto',\n base: ProPhotoLinear,\n toBase: function toBase(RGB) {\n return RGB.map(function(v) {\n return v < Et2 ? v / 16 : Math.pow(v, 1.8);\n });\n },\n fromBase: function fromBase(RGB) {\n return RGB.map(function(v) {\n return v >= Et ? Math.pow(v, 1 / 1.8) : 16 * v;\n });\n },\n formats: {\n color: {\n id: 'prophoto-rgb'\n }\n }\n });\n var oklch = new ColorSpace({\n id: 'oklch',\n name: 'OKLCh',\n coords: {\n l: {\n refRange: [ 0, 1 ],\n name: 'Lightness'\n },\n c: {\n refRange: [ 0, .4 ],\n name: 'Chroma'\n },\n h: {\n refRange: [ 0, 360 ],\n type: 'angle',\n name: 'Hue'\n }\n },\n white: 'D65',\n base: OKLab,\n fromBase: function fromBase(oklab) {\n var _oklab = _slicedToArray(oklab, 3), L = _oklab[0], a2 = _oklab[1], b2 = _oklab[2];\n var h;\n var \\u03b52 = 2e-4;\n if (Math.abs(a2) < \\u03b52 && Math.abs(b2) < \\u03b52) {\n h = NaN;\n } else {\n h = Math.atan2(b2, a2) * 180 / Math.PI;\n }\n return [ L, Math.sqrt(Math.pow(a2, 2) + Math.pow(b2, 2)), constrain(h) ];\n },\n toBase: function toBase(oklch2) {\n var _oklch = _slicedToArray(oklch2, 3), L = _oklch[0], C = _oklch[1], h = _oklch[2];\n var a2, b2;\n if (isNaN(h)) {\n a2 = 0;\n b2 = 0;\n } else {\n a2 = C * Math.cos(h * Math.PI / 180);\n b2 = C * Math.sin(h * Math.PI / 180);\n }\n return [ L, a2, b2 ];\n },\n formats: {\n oklch: {\n coords: [ '<number> | <percentage>', '<number>', '<number> | <angle>' ]\n }\n }\n });\n var Yw = 203;\n var n = 2610 / Math.pow(2, 14);\n var ninv = Math.pow(2, 14) / 2610;\n var m = 2523 / Math.pow(2, 5);\n var minv = Math.pow(2, 5) / 2523;\n var c1 = 3424 / Math.pow(2, 12);\n var c2 = 2413 / Math.pow(2, 7);\n var c3 = 2392 / Math.pow(2, 7);\n var rec2100Pq = new RGBColorSpace({\n id: 'rec2100pq',\n name: 'REC.2100-PQ',\n base: REC2020Linear,\n toBase: function toBase(RGB) {\n return RGB.map(function(val) {\n var x = Math.pow(Math.max(Math.pow(val, minv) - c1, 0) / (c2 - c3 * Math.pow(val, minv)), ninv);\n return x * 1e4 / Yw;\n });\n },\n fromBase: function fromBase(RGB) {\n return RGB.map(function(val) {\n var x = Math.max(val * Yw / 1e4, 0);\n var num = c1 + c2 * Math.pow(x, n);\n var denom = 1 + c3 * Math.pow(x, n);\n return Math.pow(num / denom, m);\n });\n },\n formats: {\n color: {\n id: 'rec2100-pq'\n }\n }\n });\n var a = .17883277;\n var b = .28466892;\n var c = .55991073;\n var scale = 3.7743;\n var rec2100Hlg = new RGBColorSpace({\n id: 'rec2100hlg',\n cssid: 'rec2100-hlg',\n name: 'REC.2100-HLG',\n referred: 'scene',\n base: REC2020Linear,\n toBase: function toBase(RGB) {\n return RGB.map(function(val) {\n if (val <= .5) {\n return Math.pow(val, 2) / 3 * scale;\n }\n return Math.exp((val - c) / a + b) / 12 * scale;\n });\n },\n fromBase: function fromBase(RGB) {\n return RGB.map(function(val) {\n val /= scale;\n if (val <= 1 / 12) {\n return Math.sqrt(3 * val);\n }\n return a * Math.log(12 * val - b) + c;\n });\n },\n formats: {\n color: {\n id: 'rec2100-hlg'\n }\n }\n });\n var CATs = {};\n hooks.add('chromatic-adaptation-start', function(env) {\n if (env.options.method) {\n env.M = adapt(env.W1, env.W2, env.options.method);\n }\n });\n hooks.add('chromatic-adaptation-end', function(env) {\n if (!env.M) {\n env.M = adapt(env.W1, env.W2, env.options.method);\n }\n });\n function defineCAT(_ref23) {\n var id = _ref23.id, toCone_M = _ref23.toCone_M, fromCone_M = _ref23.fromCone_M;\n CATs[id] = arguments[0];\n }\n function adapt(W1, W2) {\n var id = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'Bradford';\n var method = CATs[id];\n var _multiplyMatrices5 = multiplyMatrices(method.toCone_M, W1), _multiplyMatrices6 = _slicedToArray(_multiplyMatrices5, 3), \\u03c1s = _multiplyMatrices6[0], \\u03b3s = _multiplyMatrices6[1], \\u03b2s = _multiplyMatrices6[2];\n var _multiplyMatrices7 = multiplyMatrices(method.toCone_M, W2), _multiplyMatrices8 = _slicedToArray(_multiplyMatrices7, 3), \\u03c1d = _multiplyMatrices8[0], \\u03b3d = _multiplyMatrices8[1], \\u03b2d = _multiplyMatrices8[2];\n var scale2 = [ [ \\u03c1d / \\u03c1s, 0, 0 ], [ 0, \\u03b3d / \\u03b3s, 0 ], [ 0, 0, \\u03b2d / \\u03b2s ] ];\n var scaled_cone_M = multiplyMatrices(scale2, method.toCone_M);\n var adapt_M = multiplyMatrices(method.fromCone_M, scaled_cone_M);\n return adapt_M;\n }\n defineCAT({\n id: 'von Kries',\n toCone_M: [ [ .40024, .7076, -.08081 ], [ -.2263, 1.16532, .0457 ], [ 0, 0, .91822 ] ],\n fromCone_M: [ [ 1.8599364, -1.1293816, .2198974 ], [ .3611914, .6388125, -64e-7 ], [ 0, 0, 1.0890636 ] ]\n });\n defineCAT({\n id: 'Bradford',\n toCone_M: [ [ .8951, .2664, -.1614 ], [ -.7502, 1.7135, .0367 ], [ .0389, -.0685, 1.0296 ] ],\n fromCone_M: [ [ .9869929, -.1470543, .1599627 ], [ .4323053, .5183603, .0492912 ], [ -.0085287, .0400428, .9684867 ] ]\n });\n defineCAT({\n id: 'CAT02',\n toCone_M: [ [ .7328, .4296, -.1624 ], [ -.7036, 1.6975, .0061 ], [ .003, .0136, .9834 ] ],\n fromCone_M: [ [ 1.0961238, -.278869, .1827452 ], [ .454369, .4735332, .0720978 ], [ -.0096276, -.005698, 1.0153256 ] ]\n });\n defineCAT({\n id: 'CAT16',\n toCone_M: [ [ .401288, .650173, -.051461 ], [ -.250268, 1.204414, .045854 ], [ -.002079, .048952, .953127 ] ],\n fromCone_M: [ [ 1.862067855087233, -1.011254630531685, .1491867754444518 ], [ .3875265432361372, .6214474419314753, -.008973985167612518 ], [ -.01584149884933386, -.03412293802851557, 1.04996443687785 ] ]\n });\n Object.assign(WHITES, {\n A: [ 1.0985, 1, .35585 ],\n C: [ .98074, 1, 1.18232 ],\n D55: [ .95682, 1, .92149 ],\n D75: [ .94972, 1, 1.22638 ],\n E: [ 1, 1, 1 ],\n F2: [ .99186, 1, .67393 ],\n F7: [ .95041, 1, 1.08747 ],\n F11: [ 1.00962, 1, .6435 ]\n });\n WHITES.ACES = [ .32168 / .33767, 1, (1 - .32168 - .33767) / .33767 ];\n var toXYZ_M = [ [ .6624541811085053, .13400420645643313, .1561876870049078 ], [ .27222871678091454, .6740817658111484, .05368951740793705 ], [ -.005574649490394108, .004060733528982826, 1.0103391003129971 ] ];\n var fromXYZ_M = [ [ 1.6410233796943257, -.32480329418479, -.23642469523761225 ], [ -.6636628587229829, 1.6153315916573379, .016756347685530137 ], [ .011721894328375376, -.008284441996237409, .9883948585390215 ] ];\n var ACEScg = new RGBColorSpace({\n id: 'acescg',\n name: 'ACEScg',\n coords: {\n r: {\n range: [ 0, 65504 ],\n name: 'Red'\n },\n g: {\n range: [ 0, 65504 ],\n name: 'Green'\n },\n b: {\n range: [ 0, 65504 ],\n name: 'Blue'\n }\n },\n referred: 'scene',\n white: WHITES.ACES,\n toXYZ_M: toXYZ_M,\n fromXYZ_M: fromXYZ_M,\n formats: {\n color: {}\n }\n });\n var \\u03b5 = Math.pow(2, -16);\n var ACES_min_nonzero = -.35828683;\n var ACES_cc_max = (Math.log2(65504) + 9.72) / 17.52;\n var acescc = new RGBColorSpace({\n id: 'acescc',\n name: 'ACEScc',\n coords: {\n r: {\n range: [ ACES_min_nonzero, ACES_cc_max ],\n name: 'Red'\n },\n g: {\n range: [ ACES_min_nonzero, ACES_cc_max ],\n name: 'Green'\n },\n b: {\n range: [ ACES_min_nonzero, ACES_cc_max ],\n name: 'Blue'\n }\n },\n referred: 'scene',\n base: ACEScg,\n toBase: function toBase(RGB) {\n var low = (9.72 - 15) / 17.52;\n return RGB.map(function(val) {\n if (val <= low) {\n return (Math.pow(2, val * 17.52 - 9.72) - \\u03b5) * 2;\n } else if (val < ACES_cc_max) {\n return Math.pow(2, val * 17.52 - 9.72);\n } else {\n return 65504;\n }\n });\n },\n fromBase: function fromBase(RGB) {\n return RGB.map(function(val) {\n if (val <= 0) {\n return (Math.log2(\\u03b5) + 9.72) / 17.52;\n } else if (val < \\u03b5) {\n return (Math.log2(\\u03b5 + val * .5) + 9.72) / 17.52;\n } else {\n return (Math.log2(val) + 9.72) / 17.52;\n }\n });\n },\n formats: {\n color: {}\n }\n });\n var spaces = Object.freeze({\n __proto__: null,\n XYZ_D65: XYZ_D65,\n XYZ_D50: XYZ_D50,\n XYZ_ABS_D65: XYZ_Abs_D65,\n Lab_D65: lab_d65,\n Lab: lab,\n LCH: lch,\n sRGB_Linear: sRGBLinear,\n sRGB: sRGB,\n HSL: HSL,\n HWB: hwb,\n HSV: HSV,\n P3_Linear: P3Linear,\n P3: P3,\n A98RGB_Linear: A98Linear,\n A98RGB: a98rgb,\n ProPhoto_Linear: ProPhotoLinear,\n ProPhoto: prophoto,\n REC_2020_Linear: REC2020Linear,\n REC_2020: REC2020,\n OKLab: OKLab,\n OKLCH: oklch,\n Jzazbz: Jzazbz,\n JzCzHz: jzczhz,\n ICTCP: ictcp,\n REC_2100_PQ: rec2100Pq,\n REC_2100_HLG: rec2100Hlg,\n ACEScg: ACEScg,\n ACEScc: acescc\n });\n var _Color = (_space = new WeakMap(), function() {\n function Color() {\n var _this2 = this;\n _classCallCheck(this, Color);\n _classPrivateFieldInitSpec(this, _space, void 0);\n var color;\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n if (args.length === 1) {\n color = getColor(args[0]);\n }\n var space, coords, alpha;\n if (color) {\n space = color.space || color.spaceId;\n coords = color.coords;\n alpha = color.alpha;\n } else {\n space = args[0];\n coords = args[1];\n alpha = args[2];\n }\n _classPrivateFieldSet(_space, this, ColorSpace.get(space));\n this.coords = coords ? coords.slice() : [ 0, 0, 0 ];\n this.alpha = alpha < 1 ? alpha : 1;\n for (var i = 0; i < this.coords.length; i++) {\n if (this.coords[i] === 'NaN') {\n this.coords[i] = NaN;\n }\n }\n var _loop4 = function _loop4(id) {\n Object.defineProperty(_this2, id, {\n get: function get() {\n return _this2.get(id);\n },\n set: function set(value) {\n return _this2.set(id, value);\n }\n });\n };\n for (var id in _classPrivateFieldGet(_space, this).coords) {\n _loop4(id);\n }\n }\n return _createClass(Color, [ {\n key: 'space',\n get: function get() {\n return _classPrivateFieldGet(_space, this);\n }\n }, {\n key: 'spaceId',\n get: function get() {\n return _classPrivateFieldGet(_space, this).id;\n }\n }, {\n key: 'clone',\n value: function clone() {\n return new _Color(this.space, this.coords, this.alpha);\n }\n }, {\n key: 'toJSON',\n value: function toJSON() {\n return {\n spaceId: this.spaceId,\n coords: this.coords,\n alpha: this.alpha\n };\n }\n }, {\n key: 'display',\n value: function display() {\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n var ret = _display.apply(void 0, [ this ].concat(args));\n ret.color = new _Color(ret.color);\n return ret;\n }\n } ], [ {\n key: 'get',\n value: function get(color) {\n if (color instanceof _Color) {\n return color;\n }\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n return _construct(_Color, [ color ].concat(args));\n }\n }, {\n key: 'defineFunction',\n value: function defineFunction(name, code) {\n var o = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : code;\n var _o$instance = o.instance, instance = _o$instance === void 0 ? true : _o$instance, returns = o.returns;\n var func = function func() {\n var ret = code.apply(void 0, arguments);\n if (returns === 'color') {\n ret = _Color.get(ret);\n } else if (returns === 'function<color>') {\n var f = ret;\n ret = function ret() {\n var ret2 = f.apply(void 0, arguments);\n return _Color.get(ret2);\n };\n Object.assign(ret, f);\n } else if (returns === 'array<color>') {\n ret = ret.map(function(c4) {\n return _Color.get(c4);\n });\n }\n return ret;\n };\n if (!(name in _Color)) {\n _Color[name] = func;\n }\n if (instance) {\n _Color.prototype[name] = function() {\n for (var _len5 = arguments.length, args = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {\n args[_key5] = arguments[_key5];\n }\n return func.apply(void 0, [ this ].concat(args));\n };\n }\n }\n }, {\n key: 'defineFunctions',\n value: function defineFunctions(o) {\n for (var name in o) {\n _Color.defineFunction(name, o[name], o[name]);\n }\n }\n }, {\n key: 'extend',\n value: function extend(exports) {\n if (exports.register) {\n exports.register(_Color);\n } else {\n for (var name in exports) {\n _Color.defineFunction(name, exports[name]);\n }\n }\n }\n } ]);\n }());\n _Color.defineFunctions({\n get: get,\n getAll: getAll,\n set: set,\n setAll: setAll,\n to: to,\n equals: equals,\n inGamut: inGamut,\n toGamut: toGamut,\n distance: distance,\n toString: serialize\n });\n Object.assign(_Color, {\n util: util,\n hooks: hooks,\n WHITES: WHITES,\n Space: ColorSpace,\n spaces: ColorSpace.registry,\n parse: parse,\n defaults: defaults\n });\n for (var _i5 = 0, _Object$keys = Object.keys(spaces); _i5 < _Object$keys.length; _i5++) {\n var key = _Object$keys[_i5];\n ColorSpace.register(spaces[key]);\n }\n for (var id in ColorSpace.registry) {\n addSpaceAccessors(id, ColorSpace.registry[id]);\n }\n hooks.add('colorspace-init-end', function(space) {\n var _space$aliases;\n addSpaceAccessors(space.id, space);\n (_space$aliases = space.aliases) === null || _space$aliases === void 0 || _space$aliases.forEach(function(alias) {\n addSpaceAccessors(alias, space);\n });\n });\n function addSpaceAccessors(id, space) {\n Object.keys(space.coords);\n Object.values(space.coords).map(function(c4) {\n return c4.name;\n });\n var propId = id.replace(/-/g, '_');\n Object.defineProperty(_Color.prototype, propId, {\n get: function get() {\n var _this3 = this;\n var ret = this.getAll(id);\n if (typeof Proxy === 'undefined') {\n return ret;\n }\n return new Proxy(ret, {\n has: function has(obj, property) {\n try {\n ColorSpace.resolveCoord([ space, property ]);\n return true;\n } catch (e) {}\n return Reflect.has(obj, property);\n },\n get: function get(obj, property, receiver) {\n if (property && _typeof(property) !== 'symbol' && !(property in obj)) {\n var _ColorSpace$resolveCo3 = ColorSpace.resolveCoord([ space, property ]), index = _ColorSpace$resolveCo3.index;\n if (index >= 0) {\n return obj[index];\n }\n }\n return Reflect.get(obj, property, receiver);\n },\n set: function set(obj, property, value, receiver) {\n if (property && _typeof(property) !== 'symbol' && !(property in obj) || property >= 0) {\n var _ColorSpace$resolveCo4 = ColorSpace.resolveCoord([ space, property ]), index = _ColorSpace$resolveCo4.index;\n if (index >= 0) {\n obj[index] = value;\n _this3.setAll(id, obj);\n return true;\n }\n }\n return Reflect.set(obj, property, value, receiver);\n }\n });\n },\n set: function set(coords) {\n this.setAll(id, coords);\n },\n configurable: true,\n enumerable: true\n });\n }\n _Color.extend(deltaEMethods);\n _Color.extend({\n deltaE: deltaE\n });\n _Color.extend(variations);\n _Color.extend({\n contrast: contrast\n });\n _Color.extend(chromaticity);\n _Color.extend(luminance);\n _Color.extend(interpolation);\n _Color.extend(contrastMethods);\n var import_from2 = __toModule(require_from3());\n import_dot['default'].templateSettings.strip = false;\n axe._memoizedFns = [];\n function memoizeImplementation(fn) {\n var memoized = (0, import_memoizee['default'])(fn);\n axe._memoizedFns.push(memoized);\n return memoized;\n }\n var memoize_default = memoizeImplementation;\n var isXHTML = memoize_default(function(doc) {\n if (!(doc !== null && doc !== void 0 && doc.createElement)) {\n return false;\n }\n return doc.createElement('A').localName === 'A';\n });\n var is_xhtml_default = isXHTML;\n function _getShadowSelector(generateSelector2, elm) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n if (!elm) {\n return '';\n }\n var doc = elm.getRootNode && elm.getRootNode() || document;\n if (doc.nodeType !== 11) {\n return generateSelector2(elm, options, doc);\n }\n var stack = [];\n while (doc.nodeType === 11) {\n if (!doc.host) {\n return '';\n }\n stack.unshift({\n elm: elm,\n doc: doc\n });\n elm = doc.host;\n doc = elm.getRootNode();\n }\n stack.unshift({\n elm: elm,\n doc: doc\n });\n return stack.map(function(item) {\n return generateSelector2(item.elm, options, item.doc);\n });\n }\n var ignoredAttributes = [ 'class', 'style', 'id', 'selected', 'checked', 'disabled', 'tabindex', 'aria-checked', 'aria-selected', 'aria-invalid', 'aria-activedescendant', 'aria-busy', 'aria-disabled', 'aria-expanded', 'aria-grabbed', 'aria-pressed', 'aria-valuenow', 'xmlns' ];\n var MAXATTRIBUTELENGTH = 31;\n var attrCharsRegex = /([\\\\\"])/g;\n var newlineChars = /(\\r\\n|\\r|\\n)/g;\n function escapeAttribute(str) {\n return str.replace(attrCharsRegex, '\\\\$1').replace(newlineChars, '\\\\a ');\n }\n function getAttributeNameValue(node, at) {\n var name = at.name;\n var atnv;\n if (name.indexOf('href') !== -1 || name.indexOf('src') !== -1) {\n var friendly = get_friendly_uri_end_default(node.getAttribute(name));\n if (friendly) {\n atnv = escape_selector_default(at.name) + '$=\"' + escapeAttribute(friendly) + '\"';\n } else {\n atnv = escape_selector_default(at.name) + '=\"' + escapeAttribute(node.getAttribute(name)) + '\"';\n }\n } else {\n atnv = escape_selector_default(name) + '=\"' + escapeAttribute(at.value) + '\"';\n }\n return atnv;\n }\n function countSort(a2, b2) {\n return a2.count < b2.count ? -1 : a2.count === b2.count ? 0 : 1;\n }\n function filterAttributes(at) {\n return !ignoredAttributes.includes(at.name) && at.name.indexOf(':') === -1 && (!at.value || at.value.length < MAXATTRIBUTELENGTH);\n }\n function _getSelectorData(domTree) {\n var data = {\n classes: {},\n tags: {},\n attributes: {}\n };\n domTree = Array.isArray(domTree) ? domTree : [ domTree ];\n var currentLevel = domTree.slice();\n var stack = [];\n var _loop5 = function _loop5() {\n var current = currentLevel.pop();\n var node = current.actualNode;\n if (!!node.querySelectorAll) {\n var tag = node.nodeName;\n if (data.tags[tag]) {\n data.tags[tag]++;\n } else {\n data.tags[tag] = 1;\n }\n if (node.classList) {\n Array.from(node.classList).forEach(function(cl) {\n var ind = escape_selector_default(cl);\n if (data.classes[ind]) {\n data.classes[ind]++;\n } else {\n data.classes[ind] = 1;\n }\n });\n }\n if (node.hasAttributes()) {\n Array.from(get_node_attributes_default(node)).filter(filterAttributes).forEach(function(at) {\n var atnv = getAttributeNameValue(node, at);\n if (atnv) {\n if (data.attributes[atnv]) {\n data.attributes[atnv]++;\n } else {\n data.attributes[atnv] = 1;\n }\n }\n });\n }\n }\n if (current.children.length) {\n stack.push(currentLevel);\n currentLevel = current.children.slice();\n }\n while (!currentLevel.length && stack.length) {\n currentLevel = stack.pop();\n }\n };\n while (currentLevel.length) {\n _loop5();\n }\n return data;\n }\n function uncommonClasses(node, selectorData) {\n var retVal = [];\n var classData = selectorData.classes;\n var tagData = selectorData.tags;\n if (node.classList) {\n Array.from(node.classList).forEach(function(cl) {\n var ind = escape_selector_default(cl);\n if (classData[ind] < tagData[node.nodeName]) {\n retVal.push({\n name: ind,\n count: classData[ind],\n species: 'class'\n });\n }\n });\n }\n return retVal.sort(countSort);\n }\n function getNthChildString(elm, selector) {\n var siblings = elm.parentNode && Array.from(elm.parentNode.children || '') || [];\n var hasMatchingSiblings = siblings.find(function(sibling) {\n return sibling !== elm && element_matches_default(sibling, selector);\n });\n if (hasMatchingSiblings) {\n var nthChild = 1 + siblings.indexOf(elm);\n return ':nth-child(' + nthChild + ')';\n } else {\n return '';\n }\n }\n function getElmId(elm) {\n if (!elm.getAttribute('id')) {\n return;\n }\n var doc = elm.getRootNode && elm.getRootNode() || document;\n var id = '#' + escape_selector_default(elm.getAttribute('id') || '');\n if (!id.match(/player_uid_/) && doc.querySelectorAll(id).length === 1) {\n return id;\n }\n }\n function getBaseSelector(elm) {\n var xhtml = is_xhtml_default(document);\n return escape_selector_default(xhtml ? elm.localName : elm.nodeName.toLowerCase());\n }\n function uncommonAttributes(node, selectorData) {\n var retVal = [];\n var attData = selectorData.attributes;\n var tagData = selectorData.tags;\n if (node.hasAttributes()) {\n Array.from(get_node_attributes_default(node)).filter(filterAttributes).forEach(function(at) {\n var atnv = getAttributeNameValue(node, at);\n if (atnv && attData[atnv] < tagData[node.nodeName]) {\n retVal.push({\n name: atnv,\n count: attData[atnv],\n species: 'attribute'\n });\n }\n });\n }\n return retVal.sort(countSort);\n }\n function getThreeLeastCommonFeatures(elm, selectorData) {\n var selector = '';\n var features;\n var clss = uncommonClasses(elm, selectorData);\n var atts = uncommonAttributes(elm, selectorData);\n if (clss.length && clss[0].count === 1) {\n features = [ clss[0] ];\n } else if (atts.length && atts[0].count === 1) {\n features = [ atts[0] ];\n selector = getBaseSelector(elm);\n } else {\n features = clss.concat(atts);\n features.sort(countSort);\n features = features.slice(0, 3);\n if (!features.some(function(feat) {\n return feat.species === 'class';\n })) {\n selector = getBaseSelector(elm);\n } else {\n features.sort(function(a2, b2) {\n return a2.species !== b2.species && a2.species === 'class' ? -1 : a2.species === b2.species ? 0 : 1;\n });\n }\n }\n return selector += features.reduce(function(val, feat) {\n switch (feat.species) {\n case 'class':\n return val + '.' + feat.name;\n\n case 'attribute':\n return val + '[' + feat.name + ']';\n }\n return val;\n }, '');\n }\n function generateSelector(elm, options, doc) {\n if (!axe._selectorData) {\n throw new Error('Expect axe._selectorData to be set up');\n }\n var _options$toRoot = options.toRoot, toRoot = _options$toRoot === void 0 ? false : _options$toRoot;\n var selector;\n var similar;\n do {\n var features = getElmId(elm);\n if (!features) {\n features = getThreeLeastCommonFeatures(elm, axe._selectorData);\n features += getNthChildString(elm, features);\n }\n if (selector) {\n selector = features + ' > ' + selector;\n } else {\n selector = features;\n }\n if (!similar || similar.length > constants_default.selectorSimilarFilterLimit) {\n similar = findSimilar(doc, selector);\n } else {\n similar = similar.filter(function(item) {\n return element_matches_default(item, selector);\n });\n }\n elm = elm.parentElement;\n } while ((similar.length > 1 || toRoot) && elm && elm.nodeType !== 11);\n if (similar.length === 1) {\n return selector;\n } else if (selector.indexOf(' > ') !== -1) {\n return ':root' + selector.substring(selector.indexOf(' > '));\n }\n return ':root';\n }\n function getSelector(elm, options) {\n return _getShadowSelector(generateSelector, elm, options);\n }\n var get_selector_default = memoize_default(getSelector);\n var findSimilar = memoize_default(function(doc, selector) {\n return Array.from(doc.querySelectorAll(selector));\n });\n function generateAncestry(node) {\n var nodeName2 = node.nodeName.toLowerCase();\n var parentElement = node.parentElement;\n var parentNode = node.parentNode;\n var nthChild = '';\n if (nodeName2 !== 'head' && nodeName2 !== 'body' && (parentNode === null || parentNode === void 0 ? void 0 : parentNode.children.length) > 1) {\n var index = Array.prototype.indexOf.call(parentNode.children, node) + 1;\n nthChild = ':nth-child('.concat(index, ')');\n }\n if (!parentElement) {\n return nodeName2 + nthChild;\n }\n return generateAncestry(parentElement) + ' > ' + nodeName2 + nthChild;\n }\n function _getAncestry(elm, options) {\n return _getShadowSelector(generateAncestry, elm, options);\n }\n function getXPathArray(node, path) {\n var sibling, count;\n if (!node) {\n return [];\n }\n if (!path && node.nodeType === 9) {\n path = [ {\n str: 'html'\n } ];\n return path;\n }\n path = path || [];\n if (node.parentNode && node.parentNode !== node) {\n path = getXPathArray(node.parentNode, path);\n }\n if (node.previousSibling) {\n count = 1;\n sibling = node.previousSibling;\n do {\n if (sibling.nodeType === 1 && sibling.nodeName === node.nodeName) {\n count++;\n }\n sibling = sibling.previousSibling;\n } while (sibling);\n if (count === 1) {\n count = null;\n }\n } else if (node.nextSibling) {\n sibling = node.nextSibling;\n do {\n if (sibling.nodeType === 1 && sibling.nodeName === node.nodeName) {\n count = 1;\n sibling = null;\n } else {\n count = null;\n sibling = sibling.previousSibling;\n }\n } while (sibling);\n }\n if (node.nodeType === 1) {\n var element = {};\n element.str = node.nodeName.toLowerCase();\n var _id = node.getAttribute && escape_selector_default(node.getAttribute('id'));\n if (_id && node.ownerDocument.querySelectorAll('#' + _id).length === 1) {\n element.id = node.getAttribute('id');\n }\n if (count > 1) {\n element.count = count;\n }\n path.push(element);\n }\n return path;\n }\n function xpathToString(xpathArray) {\n return xpathArray.reduce(function(str, elm) {\n if (elm.id) {\n return '//'.concat(elm.str, '[@id=\\'').concat(elm.id, '\\']');\n } else {\n return str + '/'.concat(elm.str) + (elm.count > 0 ? '['.concat(elm.count, ']') : '');\n }\n }, '');\n }\n function getXpath(node) {\n var xpathArray = getXPathArray(node);\n return xpathToString(xpathArray);\n }\n var get_xpath_default = getXpath;\n var _cache = {};\n var cache = {\n set: function set(key, value) {\n validateKey(key);\n _cache[key] = value;\n },\n get: function get(key, creator) {\n validateCreator(creator);\n if (key in _cache) {\n return _cache[key];\n }\n if (typeof creator === 'function') {\n var value = creator();\n assert_default(value !== void 0, 'Cache creator function should not return undefined');\n this.set(key, value);\n return _cache[key];\n }\n },\n clear: function clear() {\n _cache = {};\n }\n };\n function validateKey(key) {\n assert_default(typeof key === 'string', 'key must be a string, ' + _typeof(key) + ' given');\n assert_default(key !== '', 'key must not be empty');\n }\n function validateCreator(creator) {\n assert_default(typeof creator === 'function' || typeof creator === 'undefined', 'creator must be a function or undefined, ' + _typeof(creator) + ' given');\n }\n var cache_default = cache;\n function getNodeFromTree(vNode, node) {\n var el = node || vNode;\n return cache_default.get('nodeMap') ? cache_default.get('nodeMap').get(el) : null;\n }\n var get_node_from_tree_default = getNodeFromTree;\n var dom_exports = {};\n __export(dom_exports, {\n createGrid: function createGrid() {\n return _createGrid;\n },\n findElmsInContext: function findElmsInContext() {\n return find_elms_in_context_default;\n },\n findNearbyElms: function findNearbyElms() {\n return _findNearbyElms;\n },\n findUp: function findUp() {\n return find_up_default;\n },\n findUpVirtual: function findUpVirtual() {\n return find_up_virtual_default;\n },\n focusDisabled: function focusDisabled() {\n return focus_disabled_default;\n },\n getComposedParent: function getComposedParent() {\n return get_composed_parent_default;\n },\n getElementByReference: function getElementByReference() {\n return get_element_by_reference_default;\n },\n getElementCoordinates: function getElementCoordinates() {\n return get_element_coordinates_default;\n },\n getElementStack: function getElementStack() {\n return get_element_stack_default;\n },\n getModalDialog: function getModalDialog() {\n return get_modal_dialog_default;\n },\n getNodeGrid: function getNodeGrid() {\n return _getNodeGrid;\n },\n getOverflowHiddenAncestors: function getOverflowHiddenAncestors() {\n return get_overflow_hidden_ancestors_default;\n },\n getRootNode: function getRootNode() {\n return get_root_node_default2;\n },\n getScrollOffset: function getScrollOffset() {\n return get_scroll_offset_default;\n },\n getTabbableElements: function getTabbableElements() {\n return get_tabbable_elements_default;\n },\n getTargetRects: function getTargetRects() {\n return get_target_rects_default;\n },\n getTargetSize: function getTargetSize() {\n return get_target_size_default;\n },\n getTextElementStack: function getTextElementStack() {\n return get_text_element_stack_default;\n },\n getViewportSize: function getViewportSize() {\n return get_viewport_size_default;\n },\n getVisibleChildTextRects: function getVisibleChildTextRects() {\n return get_visible_child_text_rects_default;\n },\n hasContent: function hasContent() {\n return has_content_default;\n },\n hasContentVirtual: function hasContentVirtual() {\n return has_content_virtual_default;\n },\n hasLangText: function hasLangText() {\n return _hasLangText;\n },\n idrefs: function idrefs() {\n return idrefs_default;\n },\n insertedIntoFocusOrder: function insertedIntoFocusOrder() {\n return inserted_into_focus_order_default;\n },\n isCurrentPageLink: function isCurrentPageLink() {\n return _isCurrentPageLink;\n },\n isFocusable: function isFocusable() {\n return _isFocusable;\n },\n isHTML5: function isHTML5() {\n return is_html5_default;\n },\n isHiddenForEveryone: function isHiddenForEveryone() {\n return _isHiddenForEveryone;\n },\n isHiddenWithCSS: function isHiddenWithCSS() {\n return is_hidden_with_css_default;\n },\n isInTabOrder: function isInTabOrder() {\n return _isInTabOrder;\n },\n isInTextBlock: function isInTextBlock() {\n return is_in_text_block_default;\n },\n isInert: function isInert() {\n return _isInert;\n },\n isModalOpen: function isModalOpen() {\n return is_modal_open_default;\n },\n isMultiline: function isMultiline() {\n return _isMultiline;\n },\n isNativelyFocusable: function isNativelyFocusable() {\n return is_natively_focusable_default;\n },\n isNode: function isNode() {\n return is_node_default;\n },\n isOffscreen: function isOffscreen() {\n return is_offscreen_default;\n },\n isOpaque: function isOpaque() {\n return is_opaque_default;\n },\n isSkipLink: function isSkipLink() {\n return _isSkipLink;\n },\n isVisible: function isVisible() {\n return is_visible_default;\n },\n isVisibleOnScreen: function isVisibleOnScreen() {\n return _isVisibleOnScreen;\n },\n isVisibleToScreenReaders: function isVisibleToScreenReaders() {\n return _isVisibleToScreenReaders;\n },\n isVisualContent: function isVisualContent() {\n return is_visual_content_default;\n },\n reduceToElementsBelowFloating: function reduceToElementsBelowFloating() {\n return reduce_to_elements_below_floating_default;\n },\n shadowElementsFromPoint: function shadowElementsFromPoint() {\n return shadow_elements_from_point_default;\n },\n urlPropsFromAttribute: function urlPropsFromAttribute() {\n return url_props_from_attribute_default;\n },\n visuallyContains: function visuallyContains() {\n return _visuallyContains;\n },\n visuallyOverlaps: function visuallyOverlaps() {\n return visually_overlaps_default;\n },\n visuallySort: function visuallySort() {\n return _visuallySort;\n }\n });\n function getRootNode(node) {\n var doc = node.getRootNode && node.getRootNode() || document;\n if (doc === node) {\n doc = document;\n }\n return doc;\n }\n var get_root_node_default = getRootNode;\n var get_root_node_default2 = get_root_node_default;\n function findElmsInContext(_ref24) {\n var context = _ref24.context, value = _ref24.value, attr = _ref24.attr, _ref24$elm = _ref24.elm, elm = _ref24$elm === void 0 ? '' : _ref24$elm;\n var root;\n var escapedValue = escape_selector_default(value);\n if (context.nodeType === 9 || context.nodeType === 11) {\n root = context;\n } else {\n root = get_root_node_default2(context);\n }\n return Array.from(root.querySelectorAll(elm + '[' + attr + '=' + escapedValue + ']'));\n }\n var find_elms_in_context_default = findElmsInContext;\n function findUpVirtual(element, target) {\n var parent;\n parent = element.actualNode;\n if (!element.shadowId && typeof element.actualNode.closest === 'function') {\n var match = element.actualNode.closest(target);\n if (match) {\n return match;\n }\n return null;\n }\n do {\n parent = parent.assignedSlot ? parent.assignedSlot : parent.parentNode;\n if (parent && parent.nodeType === 11) {\n parent = parent.host;\n }\n } while (parent && !element_matches_default(parent, target) && parent !== document.documentElement);\n if (!parent) {\n return null;\n }\n if (!element_matches_default(parent, target)) {\n return null;\n }\n return parent;\n }\n var find_up_virtual_default = findUpVirtual;\n function findUp(element, target) {\n return find_up_virtual_default(get_node_from_tree_default(element), target);\n }\n var find_up_default = findUp;\n function _rectsOverlap(rect1, rect2) {\n return (rect1.left | 0) < (rect2.right | 0) && (rect1.right | 0) > (rect2.left | 0) && (rect1.top | 0) < (rect2.bottom | 0) && (rect1.bottom | 0) > (rect2.top | 0);\n }\n var getOverflowHiddenAncestors = memoize_default(function getOverflowHiddenAncestorsMemoized(vNode) {\n var ancestors = [];\n if (!vNode) {\n return ancestors;\n }\n var overflow = vNode.getComputedStylePropertyValue('overflow');\n if (overflow === 'hidden') {\n ancestors.push(vNode);\n }\n return ancestors.concat(getOverflowHiddenAncestors(vNode.parent));\n });\n var get_overflow_hidden_ancestors_default = getOverflowHiddenAncestors;\n var clipRegex = /rect\\s*\\(([0-9]+)px,?\\s*([0-9]+)px,?\\s*([0-9]+)px,?\\s*([0-9]+)px\\s*\\)/;\n var clipPathRegex = /(\\w+)\\((\\d+)/;\n function nativelyHidden(vNode) {\n return [ 'style', 'script', 'noscript', 'template' ].includes(vNode.props.nodeName);\n }\n function displayHidden(vNode) {\n if (vNode.props.nodeName === 'area') {\n return false;\n }\n return vNode.getComputedStylePropertyValue('display') === 'none';\n }\n function visibilityHidden(vNode) {\n var _ref25 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, isAncestor = _ref25.isAncestor;\n return !isAncestor && [ 'hidden', 'collapse' ].includes(vNode.getComputedStylePropertyValue('visibility'));\n }\n function contentVisibiltyHidden(vNode) {\n var _ref26 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, isAncestor = _ref26.isAncestor;\n return !!isAncestor && vNode.getComputedStylePropertyValue('content-visibility') === 'hidden';\n }\n function ariaHidden(vNode) {\n return vNode.attr('aria-hidden') === 'true';\n }\n function opacityHidden(vNode) {\n return vNode.getComputedStylePropertyValue('opacity') === '0';\n }\n function scrollHidden(vNode) {\n var scroll = get_scroll_default(vNode.actualNode);\n var elHeight = parseInt(vNode.getComputedStylePropertyValue('height'));\n var elWidth = parseInt(vNode.getComputedStylePropertyValue('width'));\n return !!scroll && (elHeight === 0 || elWidth === 0);\n }\n function overflowHidden(vNode) {\n var _ref27 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, isAncestor = _ref27.isAncestor;\n if (isAncestor) {\n return false;\n }\n var position = vNode.getComputedStylePropertyValue('position');\n if (position === 'fixed') {\n return false;\n }\n var nodes = get_overflow_hidden_ancestors_default(vNode);\n if (!nodes.length) {\n return false;\n }\n var rect = vNode.boundingClientRect;\n return nodes.some(function(node) {\n if (position === 'absolute' && !hasPositionedAncestorBetween(vNode, node) && node.getComputedStylePropertyValue('position') === 'static') {\n return false;\n }\n var nodeRect = node.boundingClientRect;\n if (nodeRect.width < 2 || nodeRect.height < 2) {\n return true;\n }\n return !_rectsOverlap(rect, nodeRect);\n });\n }\n function clipHidden(vNode) {\n var matchesClip = vNode.getComputedStylePropertyValue('clip').match(clipRegex);\n var matchesClipPath = vNode.getComputedStylePropertyValue('clip-path').match(clipPathRegex);\n if (matchesClip && matchesClip.length === 5) {\n var position = vNode.getComputedStylePropertyValue('position');\n if ([ 'fixed', 'absolute' ].includes(position)) {\n return matchesClip[3] - matchesClip[1] <= 0 && matchesClip[2] - matchesClip[4] <= 0;\n }\n }\n if (matchesClipPath) {\n var type2 = matchesClipPath[1];\n var value = parseInt(matchesClipPath[2], 10);\n switch (type2) {\n case 'inset':\n return value >= 50;\n\n case 'circle':\n return value === 0;\n\n default:\n }\n }\n return false;\n }\n function areaHidden(vNode, visibleFunction) {\n var mapEl = closest_default(vNode, 'map');\n if (!mapEl) {\n return true;\n }\n var mapElName = mapEl.attr('name');\n if (!mapElName) {\n return true;\n }\n var mapElRootNode = get_root_node_default(vNode.actualNode);\n if (!mapElRootNode || mapElRootNode.nodeType !== 9) {\n return true;\n }\n var refs = query_selector_all_default(axe._tree, 'img[usemap=\"#'.concat(escape_selector_default(mapElName), '\"]'));\n if (!refs || !refs.length) {\n return true;\n }\n return refs.some(function(ref) {\n return !visibleFunction(ref);\n });\n }\n function detailsHidden(vNode) {\n var _vNode$parent;\n if (((_vNode$parent = vNode.parent) === null || _vNode$parent === void 0 ? void 0 : _vNode$parent.props.nodeName) !== 'details') {\n return false;\n }\n if (vNode.props.nodeName === 'summary') {\n var firstSummary = vNode.parent.children.find(function(node) {\n return node.props.nodeName === 'summary';\n });\n if (firstSummary === vNode) {\n return false;\n }\n }\n return !vNode.parent.hasAttr('open');\n }\n function hasPositionedAncestorBetween(child, ancestor) {\n var node = child.parent;\n while (node && node !== ancestor) {\n if ([ 'relative', 'sticky' ].includes(node.getComputedStylePropertyValue('position'))) {\n return true;\n }\n node = node.parent;\n }\n return false;\n }\n var hiddenMethods = [ displayHidden, visibilityHidden, contentVisibiltyHidden, detailsHidden ];\n function _isHiddenForEveryone(vNode) {\n var _ref28 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, skipAncestors = _ref28.skipAncestors, _ref28$isAncestor = _ref28.isAncestor, isAncestor = _ref28$isAncestor === void 0 ? false : _ref28$isAncestor;\n vNode = _nodeLookup(vNode).vNode;\n if (skipAncestors) {\n return isHiddenSelf(vNode, isAncestor);\n }\n return isHiddenAncestors(vNode, isAncestor);\n }\n var isHiddenSelf = memoize_default(function isHiddenSelfMemoized(vNode, isAncestor) {\n if (nativelyHidden(vNode)) {\n return true;\n }\n if (!vNode.actualNode) {\n return false;\n }\n if (hiddenMethods.some(function(method) {\n return method(vNode, {\n isAncestor: isAncestor\n });\n })) {\n return true;\n }\n if (!vNode.actualNode.isConnected) {\n return true;\n }\n return false;\n });\n var isHiddenAncestors = memoize_default(function isHiddenAncestorsMemoized(vNode, isAncestor) {\n if (isHiddenSelf(vNode, isAncestor)) {\n return true;\n }\n if (!vNode.parent) {\n return false;\n }\n return isHiddenAncestors(vNode.parent, true);\n });\n function getComposedParent(element) {\n if (element.assignedSlot) {\n return getComposedParent(element.assignedSlot);\n } else if (element.parentNode) {\n var parentNode = element.parentNode;\n if (parentNode.nodeType === 1) {\n return parentNode;\n } else if (parentNode.host) {\n return parentNode.host;\n }\n }\n return null;\n }\n var get_composed_parent_default = getComposedParent;\n function getScrollOffset(element) {\n if (!element.nodeType && element.document) {\n element = element.document;\n }\n if (element.nodeType === 9) {\n var docElement = element.documentElement, body = element.body;\n return {\n left: docElement && docElement.scrollLeft || body && body.scrollLeft || 0,\n top: docElement && docElement.scrollTop || body && body.scrollTop || 0\n };\n }\n return {\n left: element.scrollLeft,\n top: element.scrollTop\n };\n }\n var get_scroll_offset_default = getScrollOffset;\n function getElementCoordinates(element) {\n var scrollOffset = get_scroll_offset_default(document), xOffset = scrollOffset.left, yOffset = scrollOffset.top, coords = element.getBoundingClientRect();\n return {\n top: coords.top + yOffset,\n right: coords.right + xOffset,\n bottom: coords.bottom + yOffset,\n left: coords.left + xOffset,\n width: coords.right - coords.left,\n height: coords.bottom - coords.top\n };\n }\n var get_element_coordinates_default = getElementCoordinates;\n function getViewportSize(win) {\n var doc = win.document;\n var docElement = doc.documentElement;\n if (win.innerWidth) {\n return {\n width: win.innerWidth,\n height: win.innerHeight\n };\n }\n if (docElement) {\n return {\n width: docElement.clientWidth,\n height: docElement.clientHeight\n };\n }\n var body = doc.body;\n return {\n width: body.clientWidth,\n height: body.clientHeight\n };\n }\n var get_viewport_size_default = getViewportSize;\n function noParentScrolled(element, offset) {\n element = get_composed_parent_default(element);\n while (element && element.nodeName.toLowerCase() !== 'html') {\n if (element.scrollTop) {\n offset += element.scrollTop;\n if (offset >= 0) {\n return false;\n }\n }\n element = get_composed_parent_default(element);\n }\n return true;\n }\n function isOffscreen(element) {\n var _ref29 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, isAncestor = _ref29.isAncestor;\n if (isAncestor) {\n return false;\n }\n var _nodeLookup2 = _nodeLookup(element), domNode = _nodeLookup2.domNode;\n if (!domNode) {\n return void 0;\n }\n var leftBoundary;\n var docElement = document.documentElement;\n var styl = window.getComputedStyle(domNode);\n var dir = window.getComputedStyle(document.body || docElement).getPropertyValue('direction');\n var coords = get_element_coordinates_default(domNode);\n if (coords.bottom < 0 && (noParentScrolled(domNode, coords.bottom) || styl.position === 'absolute')) {\n return true;\n }\n if (coords.left === 0 && coords.right === 0) {\n return false;\n }\n if (dir === 'ltr') {\n if (coords.right <= 0) {\n return true;\n }\n } else {\n leftBoundary = Math.max(docElement.scrollWidth, get_viewport_size_default(window).width);\n if (coords.left >= leftBoundary) {\n return true;\n }\n }\n return false;\n }\n var is_offscreen_default = isOffscreen;\n var hiddenMethods2 = [ opacityHidden, scrollHidden, overflowHidden, clipHidden, is_offscreen_default ];\n function _isVisibleOnScreen(vNode) {\n vNode = _nodeLookup(vNode).vNode;\n return isVisibleOnScreenVirtual(vNode);\n }\n var isVisibleOnScreenVirtual = memoize_default(function isVisibleOnScreenMemoized(vNode, isAncestor) {\n if (vNode.actualNode && vNode.props.nodeName === 'area') {\n return !areaHidden(vNode, isVisibleOnScreenVirtual);\n }\n if (_isHiddenForEveryone(vNode, {\n skipAncestors: true,\n isAncestor: isAncestor\n })) {\n return false;\n }\n if (vNode.actualNode && hiddenMethods2.some(function(method) {\n return method(vNode, {\n isAncestor: isAncestor\n });\n })) {\n return false;\n }\n if (!vNode.parent) {\n return true;\n }\n return isVisibleOnScreenVirtual(vNode.parent, true);\n });\n function _getBoundingRect(rectA, rectB) {\n var top = Math.min(rectA.top, rectB.top);\n var right = Math.max(rectA.right, rectB.right);\n var bottom = Math.max(rectA.bottom, rectB.bottom);\n var left = Math.min(rectA.left, rectB.left);\n return new window.DOMRect(left, top, right - left, bottom - top);\n }\n function _isPointInRect(_ref30, _ref31) {\n var x = _ref30.x, y = _ref30.y;\n var top = _ref31.top, right = _ref31.right, bottom = _ref31.bottom, left = _ref31.left;\n return y >= top && x <= right && y <= bottom && x >= left;\n }\n var math_exports = {};\n __export(math_exports, {\n getBoundingRect: function getBoundingRect() {\n return _getBoundingRect;\n },\n getIntersectionRect: function getIntersectionRect() {\n return _getIntersectionRect;\n },\n getOffset: function getOffset() {\n return _getOffset;\n },\n getRectCenter: function getRectCenter() {\n return _getRectCenter;\n },\n hasVisualOverlap: function hasVisualOverlap() {\n return _hasVisualOverlap;\n },\n isPointInRect: function isPointInRect() {\n return _isPointInRect;\n },\n rectHasMinimumSize: function rectHasMinimumSize() {\n return _rectHasMinimumSize;\n },\n rectsOverlap: function rectsOverlap() {\n return _rectsOverlap;\n },\n splitRects: function splitRects() {\n return _splitRects;\n }\n });\n function _getIntersectionRect(rect1, rect2) {\n var leftX = Math.max(rect1.left, rect2.left);\n var rightX = Math.min(rect1.right, rect2.right);\n var topY = Math.max(rect1.top, rect2.top);\n var bottomY = Math.min(rect1.bottom, rect2.bottom);\n if (leftX >= rightX || topY >= bottomY) {\n return null;\n }\n return new window.DOMRect(leftX, topY, rightX - leftX, bottomY - topY);\n }\n function _getRectCenter(_ref32) {\n var left = _ref32.left, top = _ref32.top, width = _ref32.width, height = _ref32.height;\n return new window.DOMPoint(left + width / 2, top + height / 2);\n }\n var roundingMargin = .05;\n function _rectHasMinimumSize(minSize, _ref33) {\n var width = _ref33.width, height = _ref33.height;\n return width + roundingMargin >= minSize && height + roundingMargin >= minSize;\n }\n function _getOffset(vTarget, vNeighbor) {\n var minRadiusNeighbour = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 12;\n var targetRects = get_target_rects_default(vTarget);\n var neighborRects = get_target_rects_default(vNeighbor);\n if (!targetRects.length || !neighborRects.length) {\n return null;\n }\n var targetBoundingBox = targetRects.reduce(_getBoundingRect);\n var targetCenter = _getRectCenter(targetBoundingBox);\n var minDistance = Infinity;\n var _iterator7 = _createForOfIteratorHelper(neighborRects), _step7;\n try {\n for (_iterator7.s(); !(_step7 = _iterator7.n()).done; ) {\n var rect = _step7.value;\n if (_isPointInRect(targetCenter, rect)) {\n return 0;\n }\n var closestPoint = getClosestPoint(targetCenter, rect);\n var distance2 = pointDistance(targetCenter, closestPoint);\n minDistance = Math.min(minDistance, distance2);\n }\n } catch (err) {\n _iterator7.e(err);\n } finally {\n _iterator7.f();\n }\n var neighborTargetSize = get_target_size_default(vNeighbor);\n if (_rectHasMinimumSize(minRadiusNeighbour * 2, neighborTargetSize)) {\n return minDistance;\n }\n var neighborBoundingBox = neighborRects.reduce(_getBoundingRect);\n var neighborCenter = _getRectCenter(neighborBoundingBox);\n var centerDistance = pointDistance(targetCenter, neighborCenter) - minRadiusNeighbour;\n return Math.max(0, Math.min(minDistance, centerDistance));\n }\n function getClosestPoint(point, rect) {\n var x;\n var y;\n if (point.x < rect.left) {\n x = rect.left;\n } else if (point.x > rect.right) {\n x = rect.right;\n } else {\n x = point.x;\n }\n if (point.y < rect.top) {\n y = rect.top;\n } else if (point.y > rect.bottom) {\n y = rect.bottom;\n } else {\n y = point.y;\n }\n return {\n x: x,\n y: y\n };\n }\n function pointDistance(pointA, pointB) {\n return Math.hypot(pointA.x - pointB.x, pointA.y - pointB.y);\n }\n function _hasVisualOverlap(vNodeA, vNodeB) {\n var rectA = vNodeA.boundingClientRect;\n var rectB = vNodeB.boundingClientRect;\n if (rectA.left >= rectB.right || rectA.right <= rectB.left || rectA.top >= rectB.bottom || rectA.bottom <= rectB.top) {\n return false;\n }\n return _visuallySort(vNodeA, vNodeB) > 0;\n }\n function _splitRects(outerRect, overlapRects) {\n var uniqueRects = [ outerRect ];\n var _iterator8 = _createForOfIteratorHelper(overlapRects), _step8;\n try {\n var _loop6 = function _loop6() {\n var overlapRect = _step8.value;\n uniqueRects = uniqueRects.reduce(function(rects, inputRect) {\n return rects.concat(splitRect(inputRect, overlapRect));\n }, []);\n if (uniqueRects.length > 4e3) {\n throw new Error('splitRects: Too many rects');\n }\n };\n for (_iterator8.s(); !(_step8 = _iterator8.n()).done; ) {\n _loop6();\n }\n } catch (err) {\n _iterator8.e(err);\n } finally {\n _iterator8.f();\n }\n return uniqueRects;\n }\n function splitRect(inputRect, clipRect) {\n var top = inputRect.top, left = inputRect.left, bottom = inputRect.bottom, right = inputRect.right;\n var yAligned = top < clipRect.bottom && bottom > clipRect.top;\n var xAligned = left < clipRect.right && right > clipRect.left;\n var rects = [];\n if (between(clipRect.top, top, bottom) && xAligned) {\n rects.push({\n top: top,\n left: left,\n bottom: clipRect.top,\n right: right\n });\n }\n if (between(clipRect.right, left, right) && yAligned) {\n rects.push({\n top: top,\n left: clipRect.right,\n bottom: bottom,\n right: right\n });\n }\n if (between(clipRect.bottom, top, bottom) && xAligned) {\n rects.push({\n top: clipRect.bottom,\n right: right,\n bottom: bottom,\n left: left\n });\n }\n if (between(clipRect.left, left, right) && yAligned) {\n rects.push({\n top: top,\n left: left,\n bottom: bottom,\n right: clipRect.left\n });\n }\n if (rects.length === 0) {\n if (isEnclosedRect(inputRect, clipRect)) {\n return [];\n }\n rects.push(inputRect);\n }\n return rects.map(computeRect);\n }\n var between = function between(num, min, max2) {\n return num > min && num < max2;\n };\n function computeRect(baseRect) {\n return new window.DOMRect(baseRect.left, baseRect.top, baseRect.right - baseRect.left, baseRect.bottom - baseRect.top);\n }\n function isEnclosedRect(rectA, rectB) {\n return rectA.top >= rectB.top && rectA.left >= rectB.left && rectA.bottom <= rectB.bottom && rectA.right <= rectB.right;\n }\n var ROOT_LEVEL = 0;\n var DEFAULT_LEVEL = .1;\n var FLOAT_LEVEL = .2;\n var POSITION_LEVEL = .3;\n var nodeIndex = 0;\n function _createGrid() {\n var root = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : document.body;\n var rootGrid = arguments.length > 1 ? arguments[1] : undefined;\n var parentVNode = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n if (cache_default.get('gridCreated') && !parentVNode) {\n return constants_default.gridSize;\n }\n cache_default.set('gridCreated', true);\n if (!parentVNode) {\n var vNode = get_node_from_tree_default(document.documentElement);\n if (!vNode) {\n vNode = new virtual_node_default(document.documentElement);\n }\n nodeIndex = 0;\n vNode._stackingOrder = [ createStackingContext(ROOT_LEVEL, nodeIndex++, null) ];\n rootGrid !== null && rootGrid !== void 0 ? rootGrid : rootGrid = new Grid();\n addNodeToGrid(rootGrid, vNode);\n if (get_scroll_default(vNode.actualNode)) {\n var subGrid = new Grid(vNode);\n vNode._subGrid = subGrid;\n }\n }\n var treeWalker = document.createTreeWalker(root, window.NodeFilter.SHOW_ELEMENT, null, false);\n var node = parentVNode ? treeWalker.nextNode() : treeWalker.currentNode;\n while (node) {\n var _vNode = get_node_from_tree_default(node);\n if (_vNode && _vNode.parent) {\n parentVNode = _vNode.parent;\n } else if (node.assignedSlot) {\n parentVNode = get_node_from_tree_default(node.assignedSlot);\n } else if (node.parentElement) {\n parentVNode = get_node_from_tree_default(node.parentElement);\n } else if (node.parentNode && get_node_from_tree_default(node.parentNode)) {\n parentVNode = get_node_from_tree_default(node.parentNode);\n }\n if (!_vNode) {\n _vNode = new axe.VirtualNode(node, parentVNode);\n }\n _vNode._stackingOrder = createStackingOrder(_vNode, parentVNode, nodeIndex++);\n var scrollRegionParent = findScrollRegionParent(_vNode, parentVNode);\n var grid = scrollRegionParent ? scrollRegionParent._subGrid : rootGrid;\n if (get_scroll_default(_vNode.actualNode)) {\n var _subGrid = new Grid(_vNode);\n _vNode._subGrid = _subGrid;\n }\n var rect = _vNode.boundingClientRect;\n if (rect.width !== 0 && rect.height !== 0 && _isVisibleOnScreen(node)) {\n addNodeToGrid(grid, _vNode);\n }\n if (is_shadow_root_default(node)) {\n _createGrid(node.shadowRoot, grid, _vNode);\n }\n node = treeWalker.nextNode();\n }\n return constants_default.gridSize;\n }\n function isStackingContext(vNode, parentVNode) {\n var position = vNode.getComputedStylePropertyValue('position');\n var zIndex = vNode.getComputedStylePropertyValue('z-index');\n if (position === 'fixed' || position === 'sticky') {\n return true;\n }\n if (zIndex !== 'auto' && position !== 'static') {\n return true;\n }\n if (vNode.getComputedStylePropertyValue('opacity') !== '1') {\n return true;\n }\n var transform = vNode.getComputedStylePropertyValue('-webkit-transform') || vNode.getComputedStylePropertyValue('-ms-transform') || vNode.getComputedStylePropertyValue('transform') || 'none';\n if (transform !== 'none') {\n return true;\n }\n var mixBlendMode = vNode.getComputedStylePropertyValue('mix-blend-mode');\n if (mixBlendMode && mixBlendMode !== 'normal') {\n return true;\n }\n var filter = vNode.getComputedStylePropertyValue('filter');\n if (filter && filter !== 'none') {\n return true;\n }\n var perspective = vNode.getComputedStylePropertyValue('perspective');\n if (perspective && perspective !== 'none') {\n return true;\n }\n var clipPath = vNode.getComputedStylePropertyValue('clip-path');\n if (clipPath && clipPath !== 'none') {\n return true;\n }\n var mask = vNode.getComputedStylePropertyValue('-webkit-mask') || vNode.getComputedStylePropertyValue('mask') || 'none';\n if (mask !== 'none') {\n return true;\n }\n var maskImage = vNode.getComputedStylePropertyValue('-webkit-mask-image') || vNode.getComputedStylePropertyValue('mask-image') || 'none';\n if (maskImage !== 'none') {\n return true;\n }\n var maskBorder = vNode.getComputedStylePropertyValue('-webkit-mask-border') || vNode.getComputedStylePropertyValue('mask-border') || 'none';\n if (maskBorder !== 'none') {\n return true;\n }\n if (vNode.getComputedStylePropertyValue('isolation') === 'isolate') {\n return true;\n }\n var willChange = vNode.getComputedStylePropertyValue('will-change');\n if (willChange === 'transform' || willChange === 'opacity') {\n return true;\n }\n if (vNode.getComputedStylePropertyValue('-webkit-overflow-scrolling') === 'touch') {\n return true;\n }\n var contain = vNode.getComputedStylePropertyValue('contain');\n if ([ 'layout', 'paint', 'strict', 'content' ].includes(contain)) {\n return true;\n }\n if (zIndex !== 'auto' && isFlexOrGridContainer(parentVNode)) {\n return true;\n }\n return false;\n }\n function isFlexOrGridContainer(vNode) {\n if (!vNode) {\n return false;\n }\n var display2 = vNode.getComputedStylePropertyValue('display');\n return [ 'flex', 'inline-flex', 'grid', 'inline-grid' ].includes(display2);\n }\n function createStackingOrder(vNode, parentVNode, treeOrder) {\n var stackingOrder = parentVNode._stackingOrder.slice();\n if (isStackingContext(vNode, parentVNode)) {\n var index = stackingOrder.findIndex(function(_ref34) {\n var stackLevel2 = _ref34.stackLevel;\n return [ ROOT_LEVEL, FLOAT_LEVEL, POSITION_LEVEL ].includes(stackLevel2);\n });\n if (index !== -1) {\n stackingOrder.splice(index, stackingOrder.length - index);\n }\n }\n var stackLevel = getStackLevel(vNode, parentVNode);\n if (stackLevel !== null) {\n stackingOrder.push(createStackingContext(stackLevel, treeOrder, vNode));\n }\n return stackingOrder;\n }\n function createStackingContext(stackLevel, treeOrder, vNode) {\n return {\n stackLevel: stackLevel,\n treeOrder: treeOrder,\n vNode: vNode\n };\n }\n function getStackLevel(vNode, parentVNode) {\n var zIndex = getRealZIndex(vNode, parentVNode);\n if (![ 'auto', '0' ].includes(zIndex)) {\n return parseInt(zIndex);\n }\n if (vNode.getComputedStylePropertyValue('position') !== 'static') {\n return POSITION_LEVEL;\n }\n if (vNode.getComputedStylePropertyValue('float') !== 'none') {\n return FLOAT_LEVEL;\n }\n if (isStackingContext(vNode, parentVNode)) {\n return DEFAULT_LEVEL;\n }\n return null;\n }\n function getRealZIndex(vNode, parentVNode) {\n var position = vNode.getComputedStylePropertyValue('position');\n if (position === 'static' && !isFlexOrGridContainer(parentVNode)) {\n return 'auto';\n }\n return vNode.getComputedStylePropertyValue('z-index');\n }\n function findScrollRegionParent(vNode, parentVNode) {\n var scrollRegionParent = null;\n var checkedNodes = [ vNode ];\n while (parentVNode) {\n if (get_scroll_default(parentVNode.actualNode)) {\n scrollRegionParent = parentVNode;\n break;\n }\n if (parentVNode._scrollRegionParent) {\n scrollRegionParent = parentVNode._scrollRegionParent;\n break;\n }\n checkedNodes.push(parentVNode);\n parentVNode = get_node_from_tree_default(parentVNode.actualNode.parentElement || parentVNode.actualNode.parentNode);\n }\n checkedNodes.forEach(function(virtualNode) {\n return virtualNode._scrollRegionParent = scrollRegionParent;\n });\n return scrollRegionParent;\n }\n function addNodeToGrid(grid, vNode) {\n var overflowHiddenNodes = get_overflow_hidden_ancestors_default(vNode);\n vNode.clientRects.forEach(function(clientRect) {\n var _vNode$_grid;\n var visibleRect = overflowHiddenNodes.reduce(function(rect, overflowNode) {\n return rect && _getIntersectionRect(rect, overflowNode.boundingClientRect);\n }, clientRect);\n if (!visibleRect) {\n return;\n }\n (_vNode$_grid = vNode._grid) !== null && _vNode$_grid !== void 0 ? _vNode$_grid : vNode._grid = grid;\n var gridRect = grid.getGridPositionOfRect(visibleRect);\n grid.loopGridPosition(gridRect, function(gridCell) {\n if (!gridCell.includes(vNode)) {\n gridCell.push(vNode);\n }\n });\n });\n }\n var Grid = function() {\n function Grid() {\n var container = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n _classCallCheck(this, Grid);\n this.container = container;\n this.cells = [];\n }\n return _createClass(Grid, [ {\n key: 'toGridIndex',\n value: function toGridIndex(num) {\n return Math.floor(num / constants_default.gridSize);\n }\n }, {\n key: 'getCellFromPoint',\n value: function getCellFromPoint(_ref35) {\n var _this$cells, _row;\n var x = _ref35.x, y = _ref35.y;\n assert_default(this.boundaries, 'Grid does not have cells added');\n var rowIndex = this.toGridIndex(y);\n var colIndex = this.toGridIndex(x);\n assert_default(_isPointInRect({\n y: rowIndex,\n x: colIndex\n }, this.boundaries), 'Element midpoint exceeds the grid bounds');\n var row = (_this$cells = this.cells[rowIndex - this.cells._negativeIndex]) !== null && _this$cells !== void 0 ? _this$cells : [];\n return (_row = row[colIndex - row._negativeIndex]) !== null && _row !== void 0 ? _row : [];\n }\n }, {\n key: 'loopGridPosition',\n value: function loopGridPosition(gridPosition, callback) {\n var _gridPosition = gridPosition, left = _gridPosition.left, right = _gridPosition.right, top = _gridPosition.top, bottom = _gridPosition.bottom;\n if (this.boundaries) {\n gridPosition = _getBoundingRect(this.boundaries, gridPosition);\n }\n this.boundaries = gridPosition;\n loopNegativeIndexMatrix(this.cells, top, bottom, function(gridRow, row) {\n loopNegativeIndexMatrix(gridRow, left, right, function(gridCell, col) {\n callback(gridCell, {\n row: row,\n col: col\n });\n });\n });\n }\n }, {\n key: 'getGridPositionOfRect',\n value: function getGridPositionOfRect(_ref36) {\n var top = _ref36.top, right = _ref36.right, bottom = _ref36.bottom, left = _ref36.left;\n var margin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n top = this.toGridIndex(top - margin);\n right = this.toGridIndex(right + margin - 1);\n bottom = this.toGridIndex(bottom + margin - 1);\n left = this.toGridIndex(left - margin);\n return new window.DOMRect(left, top, right - left, bottom - top);\n }\n } ]);\n }();\n function loopNegativeIndexMatrix(matrix, start, end, callback) {\n var _matrix$_negativeInde;\n (_matrix$_negativeInde = matrix._negativeIndex) !== null && _matrix$_negativeInde !== void 0 ? _matrix$_negativeInde : matrix._negativeIndex = 0;\n if (start < matrix._negativeIndex) {\n for (var i = 0; i < matrix._negativeIndex - start; i++) {\n matrix.splice(0, 0, []);\n }\n matrix._negativeIndex = start;\n }\n var startOffset = start - matrix._negativeIndex;\n var endOffset = end - matrix._negativeIndex;\n for (var index = startOffset; index <= endOffset; index++) {\n var _index, _matrix$_index;\n (_matrix$_index = matrix[_index = index]) !== null && _matrix$_index !== void 0 ? _matrix$_index : matrix[_index] = [];\n callback(matrix[index], index + matrix._negativeIndex);\n }\n }\n function _getNodeGrid(node) {\n _createGrid();\n var _nodeLookup3 = _nodeLookup(node), vNode = _nodeLookup3.vNode;\n return vNode._grid;\n }\n function _findNearbyElms(vNode) {\n var _grid$cells;\n var margin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var grid = _getNodeGrid(vNode);\n if (!(grid !== null && grid !== void 0 && (_grid$cells = grid.cells) !== null && _grid$cells !== void 0 && _grid$cells.length)) {\n return [];\n }\n var rect = vNode.boundingClientRect;\n var selfIsFixed = hasFixedPosition(vNode);\n var gridPosition = grid.getGridPositionOfRect(rect, margin);\n var neighbors = [];\n grid.loopGridPosition(gridPosition, function(vNeighbors) {\n var _iterator9 = _createForOfIteratorHelper(vNeighbors), _step9;\n try {\n for (_iterator9.s(); !(_step9 = _iterator9.n()).done; ) {\n var vNeighbor = _step9.value;\n if (vNeighbor && vNeighbor !== vNode && !neighbors.includes(vNeighbor) && selfIsFixed === hasFixedPosition(vNeighbor)) {\n neighbors.push(vNeighbor);\n }\n }\n } catch (err) {\n _iterator9.e(err);\n } finally {\n _iterator9.f();\n }\n });\n return neighbors;\n }\n var hasFixedPosition = memoize_default(function(vNode) {\n if (!vNode) {\n return false;\n }\n if (vNode.getComputedStylePropertyValue('position') === 'fixed') {\n return true;\n }\n return hasFixedPosition(vNode.parent);\n });\n var getModalDialog = memoize_default(function getModalDialogMemoized() {\n var _dialogs$find;\n if (!axe._tree) {\n return null;\n }\n var dialogs = query_selector_all_filter_default(axe._tree[0], 'dialog[open]', function(vNode) {\n var rect = vNode.boundingClientRect;\n var stack = document.elementsFromPoint(rect.left + 1, rect.top + 1);\n return stack.includes(vNode.actualNode) && _isVisibleOnScreen(vNode);\n });\n if (!dialogs.length) {\n return null;\n }\n var modalDialog = dialogs.find(function(dialog) {\n var rect = dialog.boundingClientRect;\n var stack = document.elementsFromPoint(rect.left - 10, rect.top - 10);\n return stack.includes(dialog.actualNode);\n });\n if (modalDialog) {\n return modalDialog;\n }\n return (_dialogs$find = dialogs.find(function(dialog) {\n var _getNodeFromGrid;\n var _ref37 = (_getNodeFromGrid = getNodeFromGrid(dialog)) !== null && _getNodeFromGrid !== void 0 ? _getNodeFromGrid : {}, vNode = _ref37.vNode, rect = _ref37.rect;\n if (!vNode) {\n return false;\n }\n var stack = document.elementsFromPoint(rect.left + 1, rect.top + 1);\n return !stack.includes(vNode.actualNode);\n })) !== null && _dialogs$find !== void 0 ? _dialogs$find : null;\n });\n var get_modal_dialog_default = getModalDialog;\n function getNodeFromGrid(dialog) {\n _createGrid();\n var grid = axe._tree[0]._grid;\n var viewRect = new window.DOMRect(0, 0, window.innerWidth, window.innerHeight);\n if (!grid) {\n return;\n }\n for (var row = 0; row < grid.cells.length; row++) {\n var cols = grid.cells[row];\n if (!cols) {\n continue;\n }\n for (var col = 0; col < cols.length; col++) {\n var cells = cols[col];\n if (!cells) {\n continue;\n }\n for (var i = 0; i < cells.length; i++) {\n var vNode = cells[i];\n var rect = vNode.boundingClientRect;\n var intersection = _getIntersectionRect(rect, viewRect);\n if (vNode.props.nodeName !== 'html' && vNode !== dialog && vNode.getComputedStylePropertyValue('pointer-events') !== 'none' && intersection) {\n return {\n vNode: vNode,\n rect: intersection\n };\n }\n }\n }\n }\n }\n function _isInert(vNode) {\n var _ref38 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, skipAncestors = _ref38.skipAncestors, isAncestor = _ref38.isAncestor;\n if (skipAncestors) {\n return isInertSelf(vNode, isAncestor);\n }\n return isInertAncestors(vNode, isAncestor);\n }\n var isInertSelf = memoize_default(function isInertSelfMemoized(vNode, isAncestor) {\n if (vNode.hasAttr('inert')) {\n return true;\n }\n if (!isAncestor && vNode.actualNode) {\n var modalDialog = get_modal_dialog_default();\n if (modalDialog && !_contains(modalDialog, vNode)) {\n return true;\n }\n }\n return false;\n });\n var isInertAncestors = memoize_default(function isInertAncestorsMemoized(vNode, isAncestor) {\n if (isInertSelf(vNode, isAncestor)) {\n return true;\n }\n if (!vNode.parent) {\n return false;\n }\n return isInertAncestors(vNode.parent, true);\n });\n var allowedDisabledNodeNames = [ 'button', 'command', 'fieldset', 'keygen', 'optgroup', 'option', 'select', 'textarea', 'input' ];\n function isDisabledAttrAllowed(nodeName2) {\n return allowedDisabledNodeNames.includes(nodeName2);\n }\n function focusDisabled(el) {\n var _nodeLookup4 = _nodeLookup(el), vNode = _nodeLookup4.vNode;\n if (isDisabledAttrAllowed(vNode.props.nodeName) && vNode.hasAttr('disabled') || _isInert(vNode)) {\n return true;\n }\n var parentNode = vNode.parent;\n var ancestors = [];\n var fieldsetDisabled = false;\n while (parentNode && parentNode.shadowId === vNode.shadowId && !fieldsetDisabled) {\n ancestors.push(parentNode);\n if (parentNode.props.nodeName === 'legend') {\n break;\n }\n if (parentNode._inDisabledFieldset !== void 0) {\n fieldsetDisabled = parentNode._inDisabledFieldset;\n break;\n }\n if (parentNode.props.nodeName === 'fieldset' && parentNode.hasAttr('disabled')) {\n fieldsetDisabled = true;\n }\n parentNode = parentNode.parent;\n }\n ancestors.forEach(function(ancestor) {\n return ancestor._inDisabledFieldset = fieldsetDisabled;\n });\n if (fieldsetDisabled) {\n return true;\n }\n if (vNode.props.nodeName !== 'area') {\n if (!vNode.actualNode) {\n return false;\n }\n return _isHiddenForEveryone(vNode);\n }\n return false;\n }\n var focus_disabled_default = focusDisabled;\n var angularSkipLinkRegex = /^\\/\\#/;\n var angularRouterLinkRegex = /^#[!/]/;\n function _isCurrentPageLink(anchor) {\n var _window$location;\n var href = anchor.getAttribute('href');\n if (!href || href === '#') {\n return false;\n }\n if (angularSkipLinkRegex.test(href)) {\n return true;\n }\n var hash = anchor.hash, protocol = anchor.protocol, hostname = anchor.hostname, port = anchor.port, pathname = anchor.pathname;\n if (angularRouterLinkRegex.test(hash)) {\n return false;\n }\n if (href.charAt(0) === '#') {\n return true;\n }\n if (typeof ((_window$location = window.location) === null || _window$location === void 0 ? void 0 : _window$location.origin) !== 'string' || window.location.origin.indexOf('://') === -1) {\n return null;\n }\n var currentPageUrl = window.location.origin + window.location.pathname;\n var url;\n if (!hostname) {\n url = window.location.origin;\n } else {\n url = ''.concat(protocol, '//').concat(hostname).concat(port ? ':'.concat(port) : '');\n }\n if (!pathname) {\n url += window.location.pathname;\n } else {\n url += (pathname[0] !== '/' ? '/' : '') + pathname;\n }\n return url === currentPageUrl;\n }\n function getElementByReference(node, attr) {\n var fragment = node.getAttribute(attr);\n if (!fragment) {\n return null;\n }\n if (attr === 'href' && !_isCurrentPageLink(node)) {\n return null;\n }\n if (fragment.indexOf('#') !== -1) {\n fragment = decodeURIComponent(fragment.substr(fragment.indexOf('#') + 1));\n }\n var candidate = document.getElementById(fragment);\n if (candidate) {\n return candidate;\n }\n candidate = document.getElementsByName(fragment);\n if (candidate.length) {\n return candidate[0];\n }\n return null;\n }\n var get_element_by_reference_default = getElementByReference;\n function _visuallySort(a2, b2) {\n _createGrid();\n var length = Math.max(a2._stackingOrder.length, b2._stackingOrder.length);\n for (var i = 0; i < length; i++) {\n if (typeof b2._stackingOrder[i] === 'undefined') {\n return -1;\n } else if (typeof a2._stackingOrder[i] === 'undefined') {\n return 1;\n }\n if (b2._stackingOrder[i].stackLevel > a2._stackingOrder[i].stackLevel) {\n return 1;\n }\n if (b2._stackingOrder[i].stackLevel < a2._stackingOrder[i].stackLevel) {\n return -1;\n }\n if (b2._stackingOrder[i].treeOrder !== a2._stackingOrder[i].treeOrder) {\n return b2._stackingOrder[i].treeOrder - a2._stackingOrder[i].treeOrder;\n }\n }\n var aNode = a2.actualNode;\n var bNode = b2.actualNode;\n if (aNode.getRootNode && aNode.getRootNode() !== bNode.getRootNode()) {\n var boundaries = [];\n while (aNode) {\n boundaries.push({\n root: aNode.getRootNode(),\n node: aNode\n });\n aNode = aNode.getRootNode().host;\n }\n while (bNode && !boundaries.find(function(boundary) {\n return boundary.root === bNode.getRootNode();\n })) {\n bNode = bNode.getRootNode().host;\n }\n aNode = boundaries.find(function(boundary) {\n return boundary.root === bNode.getRootNode();\n }).node;\n if (aNode === bNode) {\n return a2.actualNode.getRootNode() !== aNode.getRootNode() ? -1 : 1;\n }\n }\n var _window$Node = window.Node, DOCUMENT_POSITION_FOLLOWING = _window$Node.DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_CONTAINS = _window$Node.DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_CONTAINED_BY = _window$Node.DOCUMENT_POSITION_CONTAINED_BY;\n var docPosition = aNode.compareDocumentPosition(bNode);\n var DOMOrder = docPosition & DOCUMENT_POSITION_FOLLOWING ? 1 : -1;\n var isDescendant = docPosition & DOCUMENT_POSITION_CONTAINS || docPosition & DOCUMENT_POSITION_CONTAINED_BY;\n var aPosition = getPositionOrder(a2);\n var bPosition = getPositionOrder(b2);\n if (aPosition === bPosition || isDescendant) {\n return DOMOrder;\n }\n return bPosition - aPosition;\n }\n function getPositionOrder(vNode) {\n if (vNode.getComputedStylePropertyValue('display').indexOf('inline') !== -1) {\n return 2;\n }\n if (isFloated(vNode)) {\n return 1;\n }\n return 0;\n }\n function isFloated(vNode) {\n if (!vNode) {\n return false;\n }\n if (vNode._isFloated !== void 0) {\n return vNode._isFloated;\n }\n var floatStyle = vNode.getComputedStylePropertyValue('float');\n if (floatStyle !== 'none') {\n vNode._isFloated = true;\n return true;\n }\n var floated = isFloated(vNode.parent);\n vNode._isFloated = floated;\n return floated;\n }\n function getRectStack(grid, rect) {\n var recursed = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var center = _getRectCenter(rect);\n var gridCell = grid.getCellFromPoint(center) || [];\n var floorX = Math.floor(center.x);\n var floorY = Math.floor(center.y);\n var stack = gridCell.filter(function(gridCellNode) {\n return gridCellNode.clientRects.some(function(clientRect) {\n var rectX = clientRect.left;\n var rectY = clientRect.top;\n return floorX < Math.floor(rectX + clientRect.width) && floorX >= Math.floor(rectX) && floorY < Math.floor(rectY + clientRect.height) && floorY >= Math.floor(rectY);\n });\n });\n var gridContainer = grid.container;\n if (gridContainer) {\n stack = getRectStack(gridContainer._grid, gridContainer.boundingClientRect, true).concat(stack);\n }\n if (!recursed) {\n stack = stack.sort(_visuallySort).map(function(vNode) {\n return vNode.actualNode;\n }).concat(document.documentElement).filter(function(node, index, array) {\n return array.indexOf(node) === index;\n });\n }\n return stack;\n }\n function getElementStack(node) {\n var grid = _getNodeGrid(node);\n if (!grid) {\n return [];\n }\n var rect = get_node_from_tree_default(node).boundingClientRect;\n return getRectStack(grid, rect);\n }\n var get_element_stack_default = getElementStack;\n function getTabbableElements(virtualNode) {\n var nodeAndDescendents = query_selector_all_default(virtualNode, '*');\n var tabbableElements = nodeAndDescendents.filter(function(vNode) {\n var isFocusable2 = vNode.isFocusable;\n var tabIndex = parse_tabindex_default(vNode.actualNode.getAttribute('tabindex'));\n return tabIndex !== null ? isFocusable2 && tabIndex >= 0 : isFocusable2;\n });\n return tabbableElements;\n }\n var get_tabbable_elements_default = getTabbableElements;\n function isNativelyFocusable(el) {\n var _nodeLookup5 = _nodeLookup(el), vNode = _nodeLookup5.vNode;\n if (!vNode || focus_disabled_default(vNode)) {\n return false;\n }\n switch (vNode.props.nodeName) {\n case 'a':\n case 'area':\n if (vNode.hasAttr('href')) {\n return true;\n }\n break;\n\n case 'input':\n return vNode.props.type !== 'hidden';\n\n case 'textarea':\n case 'select':\n case 'summary':\n case 'button':\n return true;\n\n case 'details':\n return !query_selector_all_default(vNode, 'summary').length;\n }\n return false;\n }\n var is_natively_focusable_default = isNativelyFocusable;\n function _isFocusable(el) {\n var _nodeLookup6 = _nodeLookup(el), vNode = _nodeLookup6.vNode;\n if (vNode.props.nodeType !== 1) {\n return false;\n }\n if (focus_disabled_default(vNode)) {\n return false;\n } else if (is_natively_focusable_default(vNode)) {\n return true;\n }\n var tabindex = parse_tabindex_default(vNode.attr('tabindex'));\n return tabindex !== null;\n }\n function _isInTabOrder(el) {\n var _nodeLookup7 = _nodeLookup(el), vNode = _nodeLookup7.vNode;\n if (vNode.props.nodeType !== 1) {\n return false;\n }\n var tabindex = parse_tabindex_default(vNode.attr('tabindex'));\n if (tabindex <= -1) {\n return false;\n }\n return _isFocusable(vNode);\n }\n var get_target_rects_default = memoize_default(getTargetRects);\n function getTargetRects(vNode) {\n var nodeRect = vNode.boundingClientRect;\n var overlappingVNodes = _findNearbyElms(vNode).filter(function(vNeighbor) {\n return _hasVisualOverlap(vNode, vNeighbor) && vNeighbor.getComputedStylePropertyValue('pointer-events') !== 'none' && !isDescendantNotInTabOrder(vNode, vNeighbor);\n });\n if (!overlappingVNodes.length) {\n return [ nodeRect ];\n }\n var obscuringRects = overlappingVNodes.map(function(_ref39) {\n var rect = _ref39.boundingClientRect;\n return rect;\n });\n return _splitRects(nodeRect, obscuringRects);\n }\n function isDescendantNotInTabOrder(vAncestor, vNode) {\n return _contains(vAncestor, vNode) && !_isInTabOrder(vNode);\n }\n var get_target_size_default = memoize_default(getTargetSize);\n function getTargetSize(vNode, minSize) {\n var rects = get_target_rects_default(vNode);\n return getLargestRect(rects, minSize);\n }\n function getLargestRect(rects, minSize) {\n return rects.reduce(function(rectA, rectB) {\n var rectAisMinimum = _rectHasMinimumSize(minSize, rectA);\n var rectBisMinimum = _rectHasMinimumSize(minSize, rectB);\n if (rectAisMinimum !== rectBisMinimum) {\n return rectAisMinimum ? rectA : rectB;\n }\n var areaA = rectA.width * rectA.height;\n var areaB = rectB.width * rectB.height;\n return areaA > areaB ? rectA : rectB;\n });\n }\n var text_exports = {};\n __export(text_exports, {\n accessibleText: function accessibleText() {\n return accessible_text_default;\n },\n accessibleTextVirtual: function accessibleTextVirtual() {\n return _accessibleTextVirtual;\n },\n autocomplete: function autocomplete() {\n return _autocomplete;\n },\n formControlValue: function formControlValue() {\n return form_control_value_default;\n },\n formControlValueMethods: function formControlValueMethods() {\n return _formControlValueMethods;\n },\n hasUnicode: function hasUnicode() {\n return has_unicode_default;\n },\n isHumanInterpretable: function isHumanInterpretable() {\n return is_human_interpretable_default;\n },\n isIconLigature: function isIconLigature() {\n return _isIconLigature;\n },\n isValidAutocomplete: function isValidAutocomplete() {\n return is_valid_autocomplete_default;\n },\n label: function label() {\n return label_default;\n },\n labelText: function labelText() {\n return label_text_default;\n },\n labelVirtual: function labelVirtual() {\n return label_virtual_default2;\n },\n nativeElementType: function nativeElementType() {\n return native_element_type_default;\n },\n nativeTextAlternative: function nativeTextAlternative() {\n return _nativeTextAlternative;\n },\n nativeTextMethods: function nativeTextMethods() {\n return native_text_methods_default;\n },\n removeUnicode: function removeUnicode() {\n return remove_unicode_default;\n },\n sanitize: function sanitize() {\n return sanitize_default;\n },\n subtreeText: function subtreeText() {\n return subtree_text_default;\n },\n titleText: function titleText() {\n return title_text_default;\n },\n unsupported: function unsupported() {\n return unsupported_default;\n },\n visible: function visible() {\n return visible_default;\n },\n visibleTextNodes: function visibleTextNodes() {\n return visible_text_nodes_default;\n },\n visibleVirtual: function visibleVirtual() {\n return visible_virtual_default;\n }\n });\n function idrefs(node, attr) {\n node = node.actualNode || node;\n try {\n var doc = get_root_node_default2(node);\n var result = [];\n var attrValue = node.getAttribute(attr);\n if (attrValue) {\n attrValue = token_list_default(attrValue);\n for (var index = 0; index < attrValue.length; index++) {\n result.push(doc.getElementById(attrValue[index]));\n }\n }\n return result;\n } catch (_unused) {\n throw new TypeError('Cannot resolve id references for non-DOM nodes');\n }\n }\n var idrefs_default = idrefs;\n function accessibleText(element, context) {\n var virtualNode = get_node_from_tree_default(element);\n return _accessibleTextVirtual(virtualNode, context);\n }\n var accessible_text_default = accessibleText;\n function arialabelledbyText(element) {\n var context = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _nodeLookup8 = _nodeLookup(element), vNode = _nodeLookup8.vNode;\n if ((vNode === null || vNode === void 0 ? void 0 : vNode.props.nodeType) !== 1) {\n return '';\n }\n if (vNode.props.nodeType !== 1 || context.inLabelledByContext || context.inControlContext || !vNode.attr('aria-labelledby')) {\n return '';\n }\n var refs = idrefs_default(vNode, 'aria-labelledby').filter(function(elm) {\n return elm;\n });\n return refs.reduce(function(accessibleName, elm) {\n var accessibleNameAdd = accessible_text_default(elm, _extends({\n inLabelledByContext: true,\n startNode: context.startNode || vNode\n }, context));\n if (!accessibleName) {\n return accessibleNameAdd;\n } else {\n return ''.concat(accessibleName, ' ').concat(accessibleNameAdd);\n }\n }, '');\n }\n var arialabelledby_text_default = arialabelledbyText;\n function _arialabelText(element) {\n var _nodeLookup9 = _nodeLookup(element), vNode = _nodeLookup9.vNode;\n if ((vNode === null || vNode === void 0 ? void 0 : vNode.props.nodeType) !== 1) {\n return '';\n }\n return vNode.attr('aria-label') || '';\n }\n var ariaAttrs = {\n 'aria-activedescendant': {\n type: 'idref',\n allowEmpty: true\n },\n 'aria-atomic': {\n type: 'boolean',\n global: true\n },\n 'aria-autocomplete': {\n type: 'nmtoken',\n values: [ 'inline', 'list', 'both', 'none' ]\n },\n 'aria-braillelabel': {\n type: 'string',\n allowEmpty: true,\n global: true\n },\n 'aria-brailleroledescription': {\n type: 'string',\n allowEmpty: true,\n global: true\n },\n 'aria-busy': {\n type: 'boolean',\n global: true\n },\n 'aria-checked': {\n type: 'nmtoken',\n values: [ 'false', 'mixed', 'true', 'undefined' ]\n },\n 'aria-colcount': {\n type: 'int',\n minValue: -1\n },\n 'aria-colindex': {\n type: 'int',\n minValue: 1\n },\n 'aria-colspan': {\n type: 'int',\n minValue: 1\n },\n 'aria-controls': {\n type: 'idrefs',\n allowEmpty: true,\n global: true\n },\n 'aria-current': {\n type: 'nmtoken',\n allowEmpty: true,\n values: [ 'page', 'step', 'location', 'date', 'time', 'true', 'false' ],\n global: true\n },\n 'aria-describedby': {\n type: 'idrefs',\n allowEmpty: true,\n global: true\n },\n 'aria-description': {\n type: 'string',\n allowEmpty: true,\n global: true\n },\n 'aria-details': {\n type: 'idref',\n allowEmpty: true,\n global: true\n },\n 'aria-disabled': {\n type: 'boolean',\n global: true\n },\n 'aria-dropeffect': {\n type: 'nmtokens',\n values: [ 'copy', 'execute', 'link', 'move', 'none', 'popup' ],\n global: true\n },\n 'aria-errormessage': {\n type: 'idref',\n allowEmpty: true,\n global: true\n },\n 'aria-expanded': {\n type: 'nmtoken',\n values: [ 'true', 'false', 'undefined' ]\n },\n 'aria-flowto': {\n type: 'idrefs',\n allowEmpty: true,\n global: true\n },\n 'aria-grabbed': {\n type: 'nmtoken',\n values: [ 'true', 'false', 'undefined' ],\n global: true\n },\n 'aria-haspopup': {\n type: 'nmtoken',\n allowEmpty: true,\n values: [ 'true', 'false', 'menu', 'listbox', 'tree', 'grid', 'dialog' ],\n global: true\n },\n 'aria-hidden': {\n type: 'nmtoken',\n values: [ 'true', 'false', 'undefined' ],\n global: true\n },\n 'aria-invalid': {\n type: 'nmtoken',\n values: [ 'grammar', 'false', 'spelling', 'true' ],\n global: true\n },\n 'aria-keyshortcuts': {\n type: 'string',\n allowEmpty: true,\n global: true\n },\n 'aria-label': {\n type: 'string',\n allowEmpty: true,\n global: true\n },\n 'aria-labelledby': {\n type: 'idrefs',\n allowEmpty: true,\n global: true\n },\n 'aria-level': {\n type: 'int',\n minValue: 1\n },\n 'aria-live': {\n type: 'nmtoken',\n values: [ 'assertive', 'off', 'polite' ],\n global: true\n },\n 'aria-modal': {\n type: 'boolean'\n },\n 'aria-multiline': {\n type: 'boolean'\n },\n 'aria-multiselectable': {\n type: 'boolean'\n },\n 'aria-orientation': {\n type: 'nmtoken',\n values: [ 'horizontal', 'undefined', 'vertical' ]\n },\n 'aria-owns': {\n type: 'idrefs',\n allowEmpty: true,\n global: true\n },\n 'aria-placeholder': {\n type: 'string',\n allowEmpty: true\n },\n 'aria-posinset': {\n type: 'int',\n minValue: 1\n },\n 'aria-pressed': {\n type: 'nmtoken',\n values: [ 'false', 'mixed', 'true', 'undefined' ]\n },\n 'aria-readonly': {\n type: 'boolean'\n },\n 'aria-relevant': {\n type: 'nmtokens',\n values: [ 'additions', 'all', 'removals', 'text' ],\n global: true\n },\n 'aria-required': {\n type: 'boolean'\n },\n 'aria-roledescription': {\n type: 'string',\n allowEmpty: true,\n global: true\n },\n 'aria-rowcount': {\n type: 'int',\n minValue: -1\n },\n 'aria-rowindex': {\n type: 'int',\n minValue: 1\n },\n 'aria-rowspan': {\n type: 'int',\n minValue: 0\n },\n 'aria-selected': {\n type: 'nmtoken',\n values: [ 'false', 'true', 'undefined' ]\n },\n 'aria-setsize': {\n type: 'int',\n minValue: -1\n },\n 'aria-sort': {\n type: 'nmtoken',\n values: [ 'ascending', 'descending', 'none', 'other' ]\n },\n 'aria-valuemax': {\n type: 'decimal'\n },\n 'aria-valuemin': {\n type: 'decimal'\n },\n 'aria-valuenow': {\n type: 'decimal'\n },\n 'aria-valuetext': {\n type: 'string',\n allowEmpty: true\n }\n };\n var aria_attrs_default = ariaAttrs;\n var ariaRoles = {\n alert: {\n type: 'structure',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ]\n },\n alertdialog: {\n type: 'window',\n allowedAttrs: [ 'aria-expanded', 'aria-modal' ],\n superclassRole: [ 'alert', 'dialog' ],\n accessibleNameRequired: true\n },\n application: {\n type: 'landmark',\n allowedAttrs: [ 'aria-activedescendant', 'aria-expanded' ],\n superclassRole: [ 'structure' ],\n accessibleNameRequired: true\n },\n article: {\n type: 'structure',\n allowedAttrs: [ 'aria-posinset', 'aria-setsize', 'aria-expanded' ],\n superclassRole: [ 'document' ]\n },\n banner: {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n blockquote: {\n type: 'structure',\n superclassRole: [ 'section' ]\n },\n button: {\n type: 'widget',\n allowedAttrs: [ 'aria-expanded', 'aria-pressed' ],\n superclassRole: [ 'command' ],\n accessibleNameRequired: true,\n nameFromContent: true,\n childrenPresentational: true\n },\n caption: {\n type: 'structure',\n requiredContext: [ 'figure', 'table', 'grid', 'treegrid' ],\n superclassRole: [ 'section' ],\n prohibitedAttrs: [ 'aria-label', 'aria-labelledby' ]\n },\n cell: {\n type: 'structure',\n requiredContext: [ 'row' ],\n allowedAttrs: [ 'aria-colindex', 'aria-colspan', 'aria-rowindex', 'aria-rowspan', 'aria-expanded' ],\n superclassRole: [ 'section' ],\n nameFromContent: true\n },\n checkbox: {\n type: 'widget',\n requiredAttrs: [ 'aria-checked' ],\n allowedAttrs: [ 'aria-readonly', 'aria-expanded', 'aria-required' ],\n superclassRole: [ 'input' ],\n accessibleNameRequired: true,\n nameFromContent: true,\n childrenPresentational: true\n },\n code: {\n type: 'structure',\n superclassRole: [ 'section' ],\n prohibitedAttrs: [ 'aria-label', 'aria-labelledby' ]\n },\n columnheader: {\n type: 'structure',\n requiredContext: [ 'row' ],\n allowedAttrs: [ 'aria-sort', 'aria-colindex', 'aria-colspan', 'aria-expanded', 'aria-readonly', 'aria-required', 'aria-rowindex', 'aria-rowspan', 'aria-selected' ],\n superclassRole: [ 'cell', 'gridcell', 'sectionhead' ],\n accessibleNameRequired: false,\n nameFromContent: true\n },\n combobox: {\n type: 'widget',\n requiredAttrs: [ 'aria-expanded', 'aria-controls' ],\n allowedAttrs: [ 'aria-owns', 'aria-autocomplete', 'aria-readonly', 'aria-required', 'aria-activedescendant', 'aria-orientation' ],\n superclassRole: [ 'select' ],\n accessibleNameRequired: true\n },\n command: {\n type: 'abstract',\n superclassRole: [ 'widget' ]\n },\n complementary: {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n composite: {\n type: 'abstract',\n superclassRole: [ 'widget' ]\n },\n contentinfo: {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n comment: {\n type: 'structure',\n allowedAttrs: [ 'aria-level', 'aria-posinset', 'aria-setsize' ],\n superclassRole: [ 'article' ]\n },\n definition: {\n type: 'structure',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ]\n },\n deletion: {\n type: 'structure',\n superclassRole: [ 'section' ],\n prohibitedAttrs: [ 'aria-label', 'aria-labelledby' ]\n },\n dialog: {\n type: 'window',\n allowedAttrs: [ 'aria-expanded', 'aria-modal' ],\n superclassRole: [ 'window' ],\n accessibleNameRequired: true\n },\n directory: {\n type: 'structure',\n deprecated: true,\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'list' ],\n nameFromContent: true\n },\n document: {\n type: 'structure',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'structure' ]\n },\n emphasis: {\n type: 'structure',\n superclassRole: [ 'section' ],\n prohibitedAttrs: [ 'aria-label', 'aria-labelledby' ]\n },\n feed: {\n type: 'structure',\n requiredOwned: [ 'article' ],\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'list' ]\n },\n figure: {\n type: 'structure',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ],\n nameFromContent: true\n },\n form: {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n grid: {\n type: 'composite',\n requiredOwned: [ 'rowgroup', 'row' ],\n allowedAttrs: [ 'aria-level', 'aria-multiselectable', 'aria-readonly', 'aria-activedescendant', 'aria-colcount', 'aria-expanded', 'aria-rowcount' ],\n superclassRole: [ 'composite', 'table' ],\n accessibleNameRequired: false\n },\n gridcell: {\n type: 'widget',\n requiredContext: [ 'row' ],\n allowedAttrs: [ 'aria-readonly', 'aria-required', 'aria-selected', 'aria-colindex', 'aria-colspan', 'aria-expanded', 'aria-rowindex', 'aria-rowspan' ],\n superclassRole: [ 'cell', 'widget' ],\n nameFromContent: true\n },\n group: {\n type: 'structure',\n allowedAttrs: [ 'aria-activedescendant', 'aria-expanded' ],\n superclassRole: [ 'section' ]\n },\n heading: {\n type: 'structure',\n requiredAttrs: [ 'aria-level' ],\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'sectionhead' ],\n accessibleNameRequired: false,\n nameFromContent: true\n },\n img: {\n type: 'structure',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ],\n accessibleNameRequired: true,\n childrenPresentational: true\n },\n input: {\n type: 'abstract',\n superclassRole: [ 'widget' ]\n },\n insertion: {\n type: 'structure',\n superclassRole: [ 'section' ],\n prohibitedAttrs: [ 'aria-label', 'aria-labelledby' ]\n },\n landmark: {\n type: 'abstract',\n superclassRole: [ 'section' ]\n },\n link: {\n type: 'widget',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'command' ],\n accessibleNameRequired: true,\n nameFromContent: true\n },\n list: {\n type: 'structure',\n requiredOwned: [ 'listitem' ],\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ]\n },\n listbox: {\n type: 'widget',\n requiredOwned: [ 'group', 'option' ],\n allowedAttrs: [ 'aria-multiselectable', 'aria-readonly', 'aria-required', 'aria-activedescendant', 'aria-expanded', 'aria-orientation' ],\n superclassRole: [ 'select' ],\n accessibleNameRequired: true\n },\n listitem: {\n type: 'structure',\n requiredContext: [ 'list' ],\n allowedAttrs: [ 'aria-level', 'aria-posinset', 'aria-setsize', 'aria-expanded' ],\n superclassRole: [ 'section' ],\n nameFromContent: true\n },\n log: {\n type: 'structure',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ]\n },\n main: {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n marquee: {\n type: 'structure',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ]\n },\n math: {\n type: 'structure',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ],\n childrenPresentational: true\n },\n menu: {\n type: 'composite',\n requiredOwned: [ 'group', 'menuitemradio', 'menuitem', 'menuitemcheckbox', 'menu', 'separator' ],\n allowedAttrs: [ 'aria-activedescendant', 'aria-expanded', 'aria-orientation' ],\n superclassRole: [ 'select' ]\n },\n menubar: {\n type: 'composite',\n requiredOwned: [ 'group', 'menuitemradio', 'menuitem', 'menuitemcheckbox', 'menu', 'separator' ],\n allowedAttrs: [ 'aria-activedescendant', 'aria-expanded', 'aria-orientation' ],\n superclassRole: [ 'menu' ]\n },\n menuitem: {\n type: 'widget',\n requiredContext: [ 'menu', 'menubar', 'group' ],\n allowedAttrs: [ 'aria-posinset', 'aria-setsize', 'aria-expanded' ],\n superclassRole: [ 'command' ],\n accessibleNameRequired: true,\n nameFromContent: true\n },\n menuitemcheckbox: {\n type: 'widget',\n requiredContext: [ 'menu', 'menubar', 'group' ],\n requiredAttrs: [ 'aria-checked' ],\n allowedAttrs: [ 'aria-expanded', 'aria-posinset', 'aria-readonly', 'aria-setsize' ],\n superclassRole: [ 'checkbox', 'menuitem' ],\n accessibleNameRequired: true,\n nameFromContent: true,\n childrenPresentational: true\n },\n menuitemradio: {\n type: 'widget',\n requiredContext: [ 'menu', 'menubar', 'group' ],\n requiredAttrs: [ 'aria-checked' ],\n allowedAttrs: [ 'aria-expanded', 'aria-posinset', 'aria-readonly', 'aria-setsize' ],\n superclassRole: [ 'menuitemcheckbox', 'radio' ],\n accessibleNameRequired: true,\n nameFromContent: true,\n childrenPresentational: true\n },\n meter: {\n type: 'structure',\n requiredAttrs: [ 'aria-valuenow' ],\n allowedAttrs: [ 'aria-valuemax', 'aria-valuemin', 'aria-valuetext' ],\n superclassRole: [ 'range' ],\n accessibleNameRequired: true,\n childrenPresentational: true\n },\n mark: {\n type: 'structure',\n superclassRole: [ 'section' ],\n prohibitedAttrs: [ 'aria-label', 'aria-labelledby' ]\n },\n navigation: {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n none: {\n type: 'structure',\n superclassRole: [ 'structure' ],\n prohibitedAttrs: [ 'aria-label', 'aria-labelledby' ]\n },\n note: {\n type: 'structure',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ]\n },\n option: {\n type: 'widget',\n requiredContext: [ 'group', 'listbox' ],\n allowedAttrs: [ 'aria-selected', 'aria-checked', 'aria-posinset', 'aria-setsize' ],\n superclassRole: [ 'input' ],\n accessibleNameRequired: true,\n nameFromContent: true,\n childrenPresentational: true\n },\n paragraph: {\n type: 'structure',\n superclassRole: [ 'section' ],\n prohibitedAttrs: [ 'aria-label', 'aria-labelledby' ]\n },\n presentation: {\n type: 'structure',\n superclassRole: [ 'structure' ],\n prohibitedAttrs: [ 'aria-label', 'aria-labelledby' ]\n },\n progressbar: {\n type: 'widget',\n allowedAttrs: [ 'aria-expanded', 'aria-valuemax', 'aria-valuemin', 'aria-valuenow', 'aria-valuetext' ],\n superclassRole: [ 'range' ],\n accessibleNameRequired: true,\n childrenPresentational: true\n },\n radio: {\n type: 'widget',\n requiredAttrs: [ 'aria-checked' ],\n allowedAttrs: [ 'aria-posinset', 'aria-setsize', 'aria-required' ],\n superclassRole: [ 'input' ],\n accessibleNameRequired: true,\n nameFromContent: true,\n childrenPresentational: true\n },\n radiogroup: {\n type: 'composite',\n allowedAttrs: [ 'aria-readonly', 'aria-required', 'aria-activedescendant', 'aria-expanded', 'aria-orientation' ],\n superclassRole: [ 'select' ],\n accessibleNameRequired: false\n },\n range: {\n type: 'abstract',\n superclassRole: [ 'widget' ]\n },\n region: {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ],\n accessibleNameRequired: false\n },\n roletype: {\n type: 'abstract',\n superclassRole: []\n },\n row: {\n type: 'structure',\n requiredContext: [ 'grid', 'rowgroup', 'table', 'treegrid' ],\n requiredOwned: [ 'cell', 'columnheader', 'gridcell', 'rowheader' ],\n allowedAttrs: [ 'aria-colindex', 'aria-level', 'aria-rowindex', 'aria-selected', 'aria-activedescendant', 'aria-expanded', 'aria-posinset', 'aria-setsize' ],\n superclassRole: [ 'group', 'widget' ],\n nameFromContent: true\n },\n rowgroup: {\n type: 'structure',\n requiredContext: [ 'grid', 'table', 'treegrid' ],\n requiredOwned: [ 'row' ],\n superclassRole: [ 'structure' ],\n nameFromContent: true\n },\n rowheader: {\n type: 'structure',\n requiredContext: [ 'row' ],\n allowedAttrs: [ 'aria-sort', 'aria-colindex', 'aria-colspan', 'aria-expanded', 'aria-readonly', 'aria-required', 'aria-rowindex', 'aria-rowspan', 'aria-selected' ],\n superclassRole: [ 'cell', 'gridcell', 'sectionhead' ],\n accessibleNameRequired: false,\n nameFromContent: true\n },\n scrollbar: {\n type: 'widget',\n requiredAttrs: [ 'aria-valuenow' ],\n allowedAttrs: [ 'aria-controls', 'aria-orientation', 'aria-valuemax', 'aria-valuemin', 'aria-valuetext' ],\n superclassRole: [ 'range' ],\n childrenPresentational: true\n },\n search: {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n searchbox: {\n type: 'widget',\n allowedAttrs: [ 'aria-activedescendant', 'aria-autocomplete', 'aria-multiline', 'aria-placeholder', 'aria-readonly', 'aria-required' ],\n superclassRole: [ 'textbox' ],\n accessibleNameRequired: true\n },\n section: {\n type: 'abstract',\n superclassRole: [ 'structure' ],\n nameFromContent: true\n },\n sectionhead: {\n type: 'abstract',\n superclassRole: [ 'structure' ],\n nameFromContent: true\n },\n select: {\n type: 'abstract',\n superclassRole: [ 'composite', 'group' ]\n },\n separator: {\n type: 'structure',\n requiredAttrs: [ 'aria-valuenow' ],\n allowedAttrs: [ 'aria-valuemax', 'aria-valuemin', 'aria-orientation', 'aria-valuetext' ],\n superclassRole: [ 'structure', 'widget' ],\n childrenPresentational: true\n },\n slider: {\n type: 'widget',\n requiredAttrs: [ 'aria-valuenow' ],\n allowedAttrs: [ 'aria-valuemax', 'aria-valuemin', 'aria-orientation', 'aria-readonly', 'aria-required', 'aria-valuetext' ],\n superclassRole: [ 'input', 'range' ],\n accessibleNameRequired: true,\n childrenPresentational: true\n },\n spinbutton: {\n type: 'widget',\n allowedAttrs: [ 'aria-valuemax', 'aria-valuemin', 'aria-readonly', 'aria-required', 'aria-activedescendant', 'aria-valuetext', 'aria-valuenow' ],\n superclassRole: [ 'composite', 'input', 'range' ],\n accessibleNameRequired: true\n },\n status: {\n type: 'structure',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ]\n },\n strong: {\n type: 'structure',\n superclassRole: [ 'section' ],\n prohibitedAttrs: [ 'aria-label', 'aria-labelledby' ]\n },\n structure: {\n type: 'abstract',\n superclassRole: [ 'roletype' ]\n },\n subscript: {\n type: 'structure',\n superclassRole: [ 'section' ],\n prohibitedAttrs: [ 'aria-label', 'aria-labelledby' ]\n },\n superscript: {\n type: 'structure',\n superclassRole: [ 'section' ],\n prohibitedAttrs: [ 'aria-label', 'aria-labelledby' ]\n },\n switch: {\n type: 'widget',\n requiredAttrs: [ 'aria-checked' ],\n allowedAttrs: [ 'aria-expanded', 'aria-readonly', 'aria-required' ],\n superclassRole: [ 'checkbox' ],\n accessibleNameRequired: true,\n nameFromContent: true,\n childrenPresentational: true\n },\n suggestion: {\n type: 'structure',\n requiredOwned: [ 'insertion', 'deletion' ],\n superclassRole: [ 'section' ],\n prohibitedAttrs: [ 'aria-label', 'aria-labelledby' ]\n },\n tab: {\n type: 'widget',\n requiredContext: [ 'tablist' ],\n allowedAttrs: [ 'aria-posinset', 'aria-selected', 'aria-setsize', 'aria-expanded' ],\n superclassRole: [ 'sectionhead', 'widget' ],\n nameFromContent: true,\n childrenPresentational: true\n },\n table: {\n type: 'structure',\n requiredOwned: [ 'rowgroup', 'row' ],\n allowedAttrs: [ 'aria-colcount', 'aria-rowcount', 'aria-expanded' ],\n superclassRole: [ 'section' ],\n accessibleNameRequired: false,\n nameFromContent: true\n },\n tablist: {\n type: 'composite',\n requiredOwned: [ 'tab' ],\n allowedAttrs: [ 'aria-level', 'aria-multiselectable', 'aria-orientation', 'aria-activedescendant', 'aria-expanded' ],\n superclassRole: [ 'composite' ]\n },\n tabpanel: {\n type: 'structure',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ],\n accessibleNameRequired: false\n },\n term: {\n type: 'structure',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ],\n nameFromContent: true\n },\n text: {\n type: 'structure',\n superclassRole: [ 'section' ],\n nameFromContent: true\n },\n textbox: {\n type: 'widget',\n allowedAttrs: [ 'aria-activedescendant', 'aria-autocomplete', 'aria-multiline', 'aria-placeholder', 'aria-readonly', 'aria-required' ],\n superclassRole: [ 'input' ],\n accessibleNameRequired: true\n },\n time: {\n type: 'structure',\n superclassRole: [ 'section' ]\n },\n timer: {\n type: 'structure',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'status' ]\n },\n toolbar: {\n type: 'structure',\n allowedAttrs: [ 'aria-orientation', 'aria-activedescendant', 'aria-expanded' ],\n superclassRole: [ 'group' ],\n accessibleNameRequired: true\n },\n tooltip: {\n type: 'structure',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ],\n nameFromContent: true\n },\n tree: {\n type: 'composite',\n requiredOwned: [ 'group', 'treeitem' ],\n allowedAttrs: [ 'aria-multiselectable', 'aria-required', 'aria-activedescendant', 'aria-expanded', 'aria-orientation' ],\n superclassRole: [ 'select' ],\n accessibleNameRequired: false\n },\n treegrid: {\n type: 'composite',\n requiredOwned: [ 'rowgroup', 'row' ],\n allowedAttrs: [ 'aria-activedescendant', 'aria-colcount', 'aria-expanded', 'aria-level', 'aria-multiselectable', 'aria-orientation', 'aria-readonly', 'aria-required', 'aria-rowcount' ],\n superclassRole: [ 'grid', 'tree' ],\n accessibleNameRequired: false\n },\n treeitem: {\n type: 'widget',\n requiredContext: [ 'group', 'tree' ],\n allowedAttrs: [ 'aria-checked', 'aria-expanded', 'aria-level', 'aria-posinset', 'aria-selected', 'aria-setsize' ],\n superclassRole: [ 'listitem', 'option' ],\n accessibleNameRequired: true,\n nameFromContent: true\n },\n widget: {\n type: 'abstract',\n superclassRole: [ 'roletype' ]\n },\n window: {\n type: 'abstract',\n superclassRole: [ 'roletype' ]\n }\n };\n var aria_roles_default = ariaRoles;\n var dpubRoles = {\n 'doc-abstract': {\n type: 'section',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ]\n },\n 'doc-acknowledgments': {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n 'doc-afterword': {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n 'doc-appendix': {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n 'doc-backlink': {\n type: 'link',\n allowedAttrs: [ 'aria-expanded' ],\n nameFromContent: true,\n superclassRole: [ 'link' ]\n },\n 'doc-biblioentry': {\n type: 'listitem',\n allowedAttrs: [ 'aria-expanded', 'aria-level', 'aria-posinset', 'aria-setsize' ],\n superclassRole: [ 'listitem' ],\n deprecated: true\n },\n 'doc-bibliography': {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n 'doc-biblioref': {\n type: 'link',\n allowedAttrs: [ 'aria-expanded' ],\n nameFromContent: true,\n superclassRole: [ 'link' ]\n },\n 'doc-chapter': {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n 'doc-colophon': {\n type: 'section',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ]\n },\n 'doc-conclusion': {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n 'doc-cover': {\n type: 'img',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'img' ]\n },\n 'doc-credit': {\n type: 'section',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ]\n },\n 'doc-credits': {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n 'doc-dedication': {\n type: 'section',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ]\n },\n 'doc-endnote': {\n type: 'listitem',\n allowedAttrs: [ 'aria-expanded', 'aria-level', 'aria-posinset', 'aria-setsize' ],\n superclassRole: [ 'listitem' ],\n deprecated: true\n },\n 'doc-endnotes': {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n 'doc-epigraph': {\n type: 'section',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ]\n },\n 'doc-epilogue': {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n 'doc-errata': {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n 'doc-example': {\n type: 'section',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ]\n },\n 'doc-footnote': {\n type: 'section',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ]\n },\n 'doc-foreword': {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n 'doc-glossary': {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n 'doc-glossref': {\n type: 'link',\n allowedAttrs: [ 'aria-expanded' ],\n nameFromContent: true,\n superclassRole: [ 'link' ]\n },\n 'doc-index': {\n type: 'navigation',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'navigation' ]\n },\n 'doc-introduction': {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n 'doc-noteref': {\n type: 'link',\n allowedAttrs: [ 'aria-expanded' ],\n nameFromContent: true,\n superclassRole: [ 'link' ]\n },\n 'doc-notice': {\n type: 'note',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'note' ]\n },\n 'doc-pagebreak': {\n type: 'separator',\n allowedAttrs: [ 'aria-expanded', 'aria-orientation' ],\n superclassRole: [ 'separator' ],\n childrenPresentational: true\n },\n 'doc-pagelist': {\n type: 'navigation',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'navigation' ]\n },\n 'doc-part': {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n 'doc-preface': {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n 'doc-prologue': {\n type: 'landmark',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'landmark' ]\n },\n 'doc-pullquote': {\n type: 'none',\n superclassRole: [ 'none' ]\n },\n 'doc-qna': {\n type: 'section',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'section' ]\n },\n 'doc-subtitle': {\n type: 'sectionhead',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'sectionhead' ]\n },\n 'doc-tip': {\n type: 'note',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'note' ]\n },\n 'doc-toc': {\n type: 'navigation',\n allowedAttrs: [ 'aria-expanded' ],\n superclassRole: [ 'navigation' ]\n }\n };\n var dpub_roles_default = dpubRoles;\n var graphicsRoles = {\n 'graphics-document': {\n type: 'structure',\n superclassRole: [ 'document' ],\n accessibleNameRequired: true\n },\n 'graphics-object': {\n type: 'structure',\n superclassRole: [ 'group' ],\n nameFromContent: true\n },\n 'graphics-symbol': {\n type: 'structure',\n superclassRole: [ 'img' ],\n accessibleNameRequired: true,\n childrenPresentational: true\n }\n };\n var graphics_roles_default = graphicsRoles;\n var htmlElms = {\n a: {\n variant: {\n href: {\n matches: '[href]',\n contentTypes: [ 'interactive', 'phrasing', 'flow' ],\n allowedRoles: [ 'button', 'checkbox', 'menuitem', 'menuitemcheckbox', 'menuitemradio', 'option', 'radio', 'switch', 'tab', 'treeitem', 'doc-backlink', 'doc-biblioref', 'doc-glossref', 'doc-noteref' ],\n namingMethods: [ 'subtreeText' ]\n },\n default: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n }\n }\n },\n abbr: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n address: {\n contentTypes: [ 'flow' ],\n allowedRoles: true\n },\n area: {\n variant: {\n href: {\n matches: '[href]',\n allowedRoles: false\n },\n default: {\n allowedRoles: [ 'button', 'link' ]\n }\n },\n contentTypes: [ 'phrasing', 'flow' ],\n namingMethods: [ 'altText' ]\n },\n article: {\n contentTypes: [ 'sectioning', 'flow' ],\n allowedRoles: [ 'feed', 'presentation', 'none', 'document', 'application', 'main', 'region' ],\n shadowRoot: true\n },\n aside: {\n contentTypes: [ 'sectioning', 'flow' ],\n allowedRoles: [ 'feed', 'note', 'presentation', 'none', 'region', 'search', 'doc-dedication', 'doc-example', 'doc-footnote', 'doc-glossary', 'doc-pullquote', 'doc-tip' ]\n },\n audio: {\n variant: {\n controls: {\n matches: '[controls]',\n contentTypes: [ 'interactive', 'embedded', 'phrasing', 'flow' ]\n },\n default: {\n contentTypes: [ 'embedded', 'phrasing', 'flow' ]\n }\n },\n allowedRoles: [ 'application' ],\n chromiumRole: 'Audio'\n },\n b: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n base: {\n allowedRoles: false,\n noAriaAttrs: true\n },\n bdi: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n bdo: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n blockquote: {\n contentTypes: [ 'flow' ],\n allowedRoles: true,\n shadowRoot: true\n },\n body: {\n allowedRoles: false,\n shadowRoot: true\n },\n br: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: [ 'presentation', 'none' ],\n namingMethods: [ 'titleText', 'singleSpace' ]\n },\n button: {\n contentTypes: [ 'interactive', 'phrasing', 'flow' ],\n allowedRoles: [ 'checkbox', 'combobox', 'gridcell', 'link', 'menuitem', 'menuitemcheckbox', 'menuitemradio', 'option', 'radio', 'separator', 'slider', 'switch', 'tab', 'treeitem' ],\n namingMethods: [ 'subtreeText' ]\n },\n canvas: {\n allowedRoles: true,\n contentTypes: [ 'embedded', 'phrasing', 'flow' ],\n chromiumRole: 'Canvas'\n },\n caption: {\n allowedRoles: false\n },\n cite: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n code: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n col: {\n allowedRoles: false,\n noAriaAttrs: true\n },\n colgroup: {\n allowedRoles: false,\n noAriaAttrs: true\n },\n data: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n datalist: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: false,\n noAriaAttrs: true,\n implicitAttrs: {\n 'aria-multiselectable': 'false'\n }\n },\n dd: {\n allowedRoles: false\n },\n del: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n dfn: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n details: {\n contentTypes: [ 'interactive', 'flow' ],\n allowedRoles: false\n },\n dialog: {\n contentTypes: [ 'flow' ],\n allowedRoles: [ 'alertdialog' ]\n },\n div: {\n contentTypes: [ 'flow' ],\n allowedRoles: true,\n shadowRoot: true\n },\n dl: {\n contentTypes: [ 'flow' ],\n allowedRoles: [ 'group', 'list', 'presentation', 'none' ],\n chromiumRole: 'DescriptionList'\n },\n dt: {\n allowedRoles: [ 'listitem' ]\n },\n em: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n embed: {\n contentTypes: [ 'interactive', 'embedded', 'phrasing', 'flow' ],\n allowedRoles: [ 'application', 'document', 'img', 'presentation', 'none' ],\n chromiumRole: 'EmbeddedObject'\n },\n fieldset: {\n contentTypes: [ 'flow' ],\n allowedRoles: [ 'none', 'presentation', 'radiogroup' ],\n namingMethods: [ 'fieldsetLegendText' ]\n },\n figcaption: {\n allowedRoles: [ 'group', 'none', 'presentation' ]\n },\n figure: {\n contentTypes: [ 'flow' ],\n allowedRoles: true,\n namingMethods: [ 'figureText', 'titleText' ]\n },\n footer: {\n contentTypes: [ 'flow' ],\n allowedRoles: [ 'group', 'none', 'presentation', 'doc-footnote' ],\n shadowRoot: true\n },\n form: {\n contentTypes: [ 'flow' ],\n allowedRoles: [ 'form', 'search', 'none', 'presentation' ]\n },\n h1: {\n contentTypes: [ 'heading', 'flow' ],\n allowedRoles: [ 'none', 'presentation', 'tab', 'doc-subtitle' ],\n shadowRoot: true,\n implicitAttrs: {\n 'aria-level': '1'\n }\n },\n h2: {\n contentTypes: [ 'heading', 'flow' ],\n allowedRoles: [ 'none', 'presentation', 'tab', 'doc-subtitle' ],\n shadowRoot: true,\n implicitAttrs: {\n 'aria-level': '2'\n }\n },\n h3: {\n contentTypes: [ 'heading', 'flow' ],\n allowedRoles: [ 'none', 'presentation', 'tab', 'doc-subtitle' ],\n shadowRoot: true,\n implicitAttrs: {\n 'aria-level': '3'\n }\n },\n h4: {\n contentTypes: [ 'heading', 'flow' ],\n allowedRoles: [ 'none', 'presentation', 'tab', 'doc-subtitle' ],\n shadowRoot: true,\n implicitAttrs: {\n 'aria-level': '4'\n }\n },\n h5: {\n contentTypes: [ 'heading', 'flow' ],\n allowedRoles: [ 'none', 'presentation', 'tab', 'doc-subtitle' ],\n shadowRoot: true,\n implicitAttrs: {\n 'aria-level': '5'\n }\n },\n h6: {\n contentTypes: [ 'heading', 'flow' ],\n allowedRoles: [ 'none', 'presentation', 'tab', 'doc-subtitle' ],\n shadowRoot: true,\n implicitAttrs: {\n 'aria-level': '6'\n }\n },\n head: {\n allowedRoles: false,\n noAriaAttrs: true\n },\n header: {\n contentTypes: [ 'flow' ],\n allowedRoles: [ 'group', 'none', 'presentation', 'doc-footnote' ],\n shadowRoot: true\n },\n hgroup: {\n contentTypes: [ 'heading', 'flow' ],\n allowedRoles: true\n },\n hr: {\n contentTypes: [ 'flow' ],\n allowedRoles: [ 'none', 'presentation', 'doc-pagebreak' ],\n namingMethods: [ 'titleText', 'singleSpace' ]\n },\n html: {\n allowedRoles: false,\n noAriaAttrs: true\n },\n i: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n iframe: {\n contentTypes: [ 'interactive', 'embedded', 'phrasing', 'flow' ],\n allowedRoles: [ 'application', 'document', 'img', 'none', 'presentation' ],\n chromiumRole: 'Iframe'\n },\n img: {\n variant: {\n nonEmptyAlt: {\n matches: [ {\n attributes: {\n alt: '/.+/'\n }\n }, {\n hasAccessibleName: true\n } ],\n allowedRoles: [ 'button', 'checkbox', 'link', 'math', 'menuitem', 'menuitemcheckbox', 'menuitemradio', 'meter', 'option', 'progressbar', 'radio', 'scrollbar', 'separator', 'slider', 'switch', 'tab', 'treeitem', 'doc-cover' ]\n },\n usemap: {\n matches: '[usemap]',\n contentTypes: [ 'interactive', 'embedded', 'flow' ]\n },\n default: {\n allowedRoles: [ 'presentation', 'none' ],\n contentTypes: [ 'embedded', 'flow' ]\n }\n },\n namingMethods: [ 'altText' ]\n },\n input: {\n variant: {\n button: {\n matches: {\n properties: {\n type: 'button'\n }\n },\n allowedRoles: [ 'checkbox', 'combobox', 'link', 'menuitem', 'menuitemcheckbox', 'menuitemradio', 'option', 'radio', 'switch', 'tab' ]\n },\n buttonType: {\n matches: {\n properties: {\n type: [ 'button', 'submit', 'reset' ]\n }\n },\n namingMethods: [ 'valueText', 'titleText', 'buttonDefaultText' ]\n },\n checkboxPressed: {\n matches: {\n properties: {\n type: 'checkbox'\n },\n attributes: {\n 'aria-pressed': '/.*/'\n }\n },\n allowedRoles: [ 'button', 'menuitemcheckbox', 'option', 'switch' ],\n implicitAttrs: {\n 'aria-checked': 'false'\n }\n },\n checkbox: {\n matches: {\n properties: {\n type: 'checkbox'\n },\n attributes: {\n 'aria-pressed': null\n }\n },\n allowedRoles: [ 'menuitemcheckbox', 'option', 'switch' ],\n implicitAttrs: {\n 'aria-checked': 'false'\n }\n },\n noRoles: {\n matches: {\n properties: {\n type: [ 'color', 'date', 'datetime-local', 'file', 'month', 'number', 'password', 'range', 'reset', 'submit', 'time', 'week' ]\n }\n },\n allowedRoles: false\n },\n hidden: {\n matches: {\n properties: {\n type: 'hidden'\n }\n },\n contentTypes: [ 'flow' ],\n allowedRoles: false,\n noAriaAttrs: true\n },\n image: {\n matches: {\n properties: {\n type: 'image'\n }\n },\n allowedRoles: [ 'link', 'menuitem', 'menuitemcheckbox', 'menuitemradio', 'radio', 'switch' ],\n namingMethods: [ 'altText', 'valueText', 'labelText', 'titleText', 'buttonDefaultText' ]\n },\n radio: {\n matches: {\n properties: {\n type: 'radio'\n }\n },\n allowedRoles: [ 'menuitemradio' ],\n implicitAttrs: {\n 'aria-checked': 'false'\n }\n },\n textWithList: {\n matches: {\n properties: {\n type: 'text'\n },\n attributes: {\n list: '/.*/'\n }\n },\n allowedRoles: false\n },\n default: {\n contentTypes: [ 'interactive', 'flow' ],\n allowedRoles: [ 'combobox', 'searchbox', 'spinbutton' ],\n implicitAttrs: {\n 'aria-valuenow': ''\n },\n namingMethods: [ 'labelText', 'placeholderText' ]\n }\n }\n },\n ins: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n kbd: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n label: {\n contentTypes: [ 'interactive', 'phrasing', 'flow' ],\n allowedRoles: false,\n chromiumRole: 'Label'\n },\n legend: {\n allowedRoles: false\n },\n li: {\n allowedRoles: [ 'menuitem', 'menuitemcheckbox', 'menuitemradio', 'option', 'none', 'presentation', 'radio', 'separator', 'tab', 'treeitem', 'doc-biblioentry', 'doc-endnote' ],\n implicitAttrs: {\n 'aria-setsize': '1',\n 'aria-posinset': '1'\n }\n },\n link: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: false,\n noAriaAttrs: true\n },\n main: {\n contentTypes: [ 'flow' ],\n allowedRoles: false,\n shadowRoot: true\n },\n map: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: false,\n noAriaAttrs: true\n },\n math: {\n contentTypes: [ 'embedded', 'phrasing', 'flow' ],\n allowedRoles: false\n },\n mark: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n menu: {\n contentTypes: [ 'flow' ],\n allowedRoles: [ 'directory', 'group', 'listbox', 'menu', 'menubar', 'none', 'presentation', 'radiogroup', 'tablist', 'toolbar', 'tree' ]\n },\n meta: {\n variant: {\n itemprop: {\n matches: '[itemprop]',\n contentTypes: [ 'phrasing', 'flow' ]\n }\n },\n allowedRoles: false,\n noAriaAttrs: true\n },\n meter: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: false,\n chromiumRole: 'progressbar'\n },\n nav: {\n contentTypes: [ 'sectioning', 'flow' ],\n allowedRoles: [ 'doc-index', 'doc-pagelist', 'doc-toc', 'menu', 'menubar', 'none', 'presentation', 'tablist' ],\n shadowRoot: true\n },\n noscript: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: false,\n noAriaAttrs: true\n },\n object: {\n variant: {\n usemap: {\n matches: '[usemap]',\n contentTypes: [ 'interactive', 'embedded', 'phrasing', 'flow' ]\n },\n default: {\n contentTypes: [ 'embedded', 'phrasing', 'flow' ]\n }\n },\n allowedRoles: [ 'application', 'document', 'img' ],\n chromiumRole: 'PluginObject'\n },\n ol: {\n contentTypes: [ 'flow' ],\n allowedRoles: [ 'directory', 'group', 'listbox', 'menu', 'menubar', 'none', 'presentation', 'radiogroup', 'tablist', 'toolbar', 'tree' ]\n },\n optgroup: {\n allowedRoles: false\n },\n option: {\n allowedRoles: false,\n implicitAttrs: {\n 'aria-selected': 'false'\n }\n },\n output: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true,\n namingMethods: [ 'subtreeText' ]\n },\n p: {\n contentTypes: [ 'flow' ],\n allowedRoles: true,\n shadowRoot: true\n },\n param: {\n allowedRoles: false,\n noAriaAttrs: true\n },\n picture: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: false,\n noAriaAttrs: true\n },\n pre: {\n contentTypes: [ 'flow' ],\n allowedRoles: true\n },\n progress: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: false,\n implicitAttrs: {\n 'aria-valuemax': '100',\n 'aria-valuemin': '0',\n 'aria-valuenow': '0'\n }\n },\n q: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n rp: {\n allowedRoles: true\n },\n rt: {\n allowedRoles: true\n },\n ruby: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n s: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n samp: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n script: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: false,\n noAriaAttrs: true\n },\n search: {\n contentTypes: [ 'flow' ],\n allowedRoles: [ 'form', 'group', 'none', 'presentation', 'region', 'search' ]\n },\n section: {\n contentTypes: [ 'sectioning', 'flow' ],\n allowedRoles: [ 'alert', 'alertdialog', 'application', 'banner', 'complementary', 'contentinfo', 'dialog', 'document', 'feed', 'group', 'log', 'main', 'marquee', 'navigation', 'none', 'note', 'presentation', 'search', 'status', 'tabpanel', 'doc-abstract', 'doc-acknowledgments', 'doc-afterword', 'doc-appendix', 'doc-bibliography', 'doc-chapter', 'doc-colophon', 'doc-conclusion', 'doc-credit', 'doc-credits', 'doc-dedication', 'doc-endnotes', 'doc-epigraph', 'doc-epilogue', 'doc-errata', 'doc-example', 'doc-foreword', 'doc-glossary', 'doc-index', 'doc-introduction', 'doc-notice', 'doc-pagelist', 'doc-part', 'doc-preface', 'doc-prologue', 'doc-pullquote', 'doc-qna', 'doc-toc' ],\n shadowRoot: true\n },\n select: {\n variant: {\n combobox: {\n matches: {\n attributes: {\n multiple: null,\n size: [ null, '1' ]\n }\n },\n allowedRoles: [ 'menu' ]\n },\n default: {\n allowedRoles: false\n }\n },\n contentTypes: [ 'interactive', 'phrasing', 'flow' ],\n implicitAttrs: {\n 'aria-valuenow': ''\n },\n namingMethods: [ 'labelText' ]\n },\n slot: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: false,\n noAriaAttrs: true\n },\n small: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n source: {\n allowedRoles: false,\n noAriaAttrs: true\n },\n span: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true,\n shadowRoot: true\n },\n strong: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n style: {\n allowedRoles: false,\n noAriaAttrs: true\n },\n svg: {\n contentTypes: [ 'embedded', 'phrasing', 'flow' ],\n allowedRoles: true,\n chromiumRole: 'SVGRoot',\n namingMethods: [ 'svgTitleText' ]\n },\n sub: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n summary: {\n allowedRoles: false,\n namingMethods: [ 'subtreeText' ]\n },\n sup: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n table: {\n contentTypes: [ 'flow' ],\n allowedRoles: true,\n namingMethods: [ 'tableCaptionText', 'tableSummaryText' ]\n },\n tbody: {\n allowedRoles: true\n },\n template: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: false,\n noAriaAttrs: true\n },\n textarea: {\n contentTypes: [ 'interactive', 'phrasing', 'flow' ],\n allowedRoles: false,\n implicitAttrs: {\n 'aria-valuenow': '',\n 'aria-multiline': 'true'\n },\n namingMethods: [ 'labelText', 'placeholderText' ]\n },\n tfoot: {\n allowedRoles: true\n },\n thead: {\n allowedRoles: true\n },\n time: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n title: {\n allowedRoles: false,\n noAriaAttrs: true\n },\n td: {\n allowedRoles: true\n },\n th: {\n allowedRoles: true\n },\n tr: {\n allowedRoles: true\n },\n track: {\n allowedRoles: false,\n noAriaAttrs: true\n },\n u: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n ul: {\n contentTypes: [ 'flow' ],\n allowedRoles: [ 'directory', 'group', 'listbox', 'menu', 'menubar', 'none', 'presentation', 'radiogroup', 'tablist', 'toolbar', 'tree' ]\n },\n var: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: true\n },\n video: {\n variant: {\n controls: {\n matches: '[controls]',\n contentTypes: [ 'interactive', 'embedded', 'phrasing', 'flow' ]\n },\n default: {\n contentTypes: [ 'embedded', 'phrasing', 'flow' ]\n }\n },\n allowedRoles: [ 'application' ],\n chromiumRole: 'video'\n },\n wbr: {\n contentTypes: [ 'phrasing', 'flow' ],\n allowedRoles: [ 'presentation', 'none' ]\n }\n };\n var html_elms_default = htmlElms;\n var cssColors = {\n aliceblue: [ 240, 248, 255 ],\n antiquewhite: [ 250, 235, 215 ],\n aqua: [ 0, 255, 255 ],\n aquamarine: [ 127, 255, 212 ],\n azure: [ 240, 255, 255 ],\n beige: [ 245, 245, 220 ],\n bisque: [ 255, 228, 196 ],\n black: [ 0, 0, 0 ],\n blanchedalmond: [ 255, 235, 205 ],\n blue: [ 0, 0, 255 ],\n blueviolet: [ 138, 43, 226 ],\n brown: [ 165, 42, 42 ],\n burlywood: [ 222, 184, 135 ],\n cadetblue: [ 95, 158, 160 ],\n chartreuse: [ 127, 255, 0 ],\n chocolate: [ 210, 105, 30 ],\n coral: [ 255, 127, 80 ],\n cornflowerblue: [ 100, 149, 237 ],\n cornsilk: [ 255, 248, 220 ],\n crimson: [ 220, 20, 60 ],\n cyan: [ 0, 255, 255 ],\n darkblue: [ 0, 0, 139 ],\n darkcyan: [ 0, 139, 139 ],\n darkgoldenrod: [ 184, 134, 11 ],\n darkgray: [ 169, 169, 169 ],\n darkgreen: [ 0, 100, 0 ],\n darkgrey: [ 169, 169, 169 ],\n darkkhaki: [ 189, 183, 107 ],\n darkmagenta: [ 139, 0, 139 ],\n darkolivegreen: [ 85, 107, 47 ],\n darkorange: [ 255, 140, 0 ],\n darkorchid: [ 153, 50, 204 ],\n darkred: [ 139, 0, 0 ],\n darksalmon: [ 233, 150, 122 ],\n darkseagreen: [ 143, 188, 143 ],\n darkslateblue: [ 72, 61, 139 ],\n darkslategray: [ 47, 79, 79 ],\n darkslategrey: [ 47, 79, 79 ],\n darkturquoise: [ 0, 206, 209 ],\n darkviolet: [ 148, 0, 211 ],\n deeppink: [ 255, 20, 147 ],\n deepskyblue: [ 0, 191, 255 ],\n dimgray: [ 105, 105, 105 ],\n dimgrey: [ 105, 105, 105 ],\n dodgerblue: [ 30, 144, 255 ],\n firebrick: [ 178, 34, 34 ],\n floralwhite: [ 255, 250, 240 ],\n forestgreen: [ 34, 139, 34 ],\n fuchsia: [ 255, 0, 255 ],\n gainsboro: [ 220, 220, 220 ],\n ghostwhite: [ 248, 248, 255 ],\n gold: [ 255, 215, 0 ],\n goldenrod: [ 218, 165, 32 ],\n gray: [ 128, 128, 128 ],\n green: [ 0, 128, 0 ],\n greenyellow: [ 173, 255, 47 ],\n grey: [ 128, 128, 128 ],\n honeydew: [ 240, 255, 240 ],\n hotpink: [ 255, 105, 180 ],\n indianred: [ 205, 92, 92 ],\n indigo: [ 75, 0, 130 ],\n ivory: [ 255, 255, 240 ],\n khaki: [ 240, 230, 140 ],\n lavender: [ 230, 230, 250 ],\n lavenderblush: [ 255, 240, 245 ],\n lawngreen: [ 124, 252, 0 ],\n lemonchiffon: [ 255, 250, 205 ],\n lightblue: [ 173, 216, 230 ],\n lightcoral: [ 240, 128, 128 ],\n lightcyan: [ 224, 255, 255 ],\n lightgoldenrodyellow: [ 250, 250, 210 ],\n lightgray: [ 211, 211, 211 ],\n lightgreen: [ 144, 238, 144 ],\n lightgrey: [ 211, 211, 211 ],\n lightpink: [ 255, 182, 193 ],\n lightsalmon: [ 255, 160, 122 ],\n lightseagreen: [ 32, 178, 170 ],\n lightskyblue: [ 135, 206, 250 ],\n lightslategray: [ 119, 136, 153 ],\n lightslategrey: [ 119, 136, 153 ],\n lightsteelblue: [ 176, 196, 222 ],\n lightyellow: [ 255, 255, 224 ],\n lime: [ 0, 255, 0 ],\n limegreen: [ 50, 205, 50 ],\n linen: [ 250, 240, 230 ],\n magenta: [ 255, 0, 255 ],\n maroon: [ 128, 0, 0 ],\n mediumaquamarine: [ 102, 205, 170 ],\n mediumblue: [ 0, 0, 205 ],\n mediumorchid: [ 186, 85, 211 ],\n mediumpurple: [ 147, 112, 219 ],\n mediumseagreen: [ 60, 179, 113 ],\n mediumslateblue: [ 123, 104, 238 ],\n mediumspringgreen: [ 0, 250, 154 ],\n mediumturquoise: [ 72, 209, 204 ],\n mediumvioletred: [ 199, 21, 133 ],\n midnightblue: [ 25, 25, 112 ],\n mintcream: [ 245, 255, 250 ],\n mistyrose: [ 255, 228, 225 ],\n moccasin: [ 255, 228, 181 ],\n navajowhite: [ 255, 222, 173 ],\n navy: [ 0, 0, 128 ],\n oldlace: [ 253, 245, 230 ],\n olive: [ 128, 128, 0 ],\n olivedrab: [ 107, 142, 35 ],\n orange: [ 255, 165, 0 ],\n orangered: [ 255, 69, 0 ],\n orchid: [ 218, 112, 214 ],\n palegoldenrod: [ 238, 232, 170 ],\n palegreen: [ 152, 251, 152 ],\n paleturquoise: [ 175, 238, 238 ],\n palevioletred: [ 219, 112, 147 ],\n papayawhip: [ 255, 239, 213 ],\n peachpuff: [ 255, 218, 185 ],\n peru: [ 205, 133, 63 ],\n pink: [ 255, 192, 203 ],\n plum: [ 221, 160, 221 ],\n powderblue: [ 176, 224, 230 ],\n purple: [ 128, 0, 128 ],\n rebeccapurple: [ 102, 51, 153 ],\n red: [ 255, 0, 0 ],\n rosybrown: [ 188, 143, 143 ],\n royalblue: [ 65, 105, 225 ],\n saddlebrown: [ 139, 69, 19 ],\n salmon: [ 250, 128, 114 ],\n sandybrown: [ 244, 164, 96 ],\n seagreen: [ 46, 139, 87 ],\n seashell: [ 255, 245, 238 ],\n sienna: [ 160, 82, 45 ],\n silver: [ 192, 192, 192 ],\n skyblue: [ 135, 206, 235 ],\n slateblue: [ 106, 90, 205 ],\n slategray: [ 112, 128, 144 ],\n slategrey: [ 112, 128, 144 ],\n snow: [ 255, 250, 250 ],\n springgreen: [ 0, 255, 127 ],\n steelblue: [ 70, 130, 180 ],\n tan: [ 210, 180, 140 ],\n teal: [ 0, 128, 128 ],\n thistle: [ 216, 191, 216 ],\n tomato: [ 255, 99, 71 ],\n turquoise: [ 64, 224, 208 ],\n violet: [ 238, 130, 238 ],\n wheat: [ 245, 222, 179 ],\n white: [ 255, 255, 255 ],\n whitesmoke: [ 245, 245, 245 ],\n yellow: [ 255, 255, 0 ],\n yellowgreen: [ 154, 205, 50 ]\n };\n var css_colors_default = cssColors;\n var originals = {\n ariaAttrs: aria_attrs_default,\n ariaRoles: _extends({}, aria_roles_default, dpub_roles_default, graphics_roles_default),\n htmlElms: html_elms_default,\n cssColors: css_colors_default\n };\n var standards = _extends({}, originals);\n function configureStandards(config) {\n Object.keys(standards).forEach(function(propName) {\n if (config[propName]) {\n standards[propName] = deep_merge_default(standards[propName], config[propName]);\n }\n });\n }\n function resetStandards() {\n Object.keys(standards).forEach(function(propName) {\n standards[propName] = originals[propName];\n });\n }\n var standards_default = standards;\n function isUnsupportedRole(role) {\n var roleDefinition = standards_default.ariaRoles[role];\n return roleDefinition ? !!roleDefinition.unsupported : false;\n }\n var is_unsupported_role_default = isUnsupportedRole;\n function isValidRole(role) {\n var _ref40 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, allowAbstract = _ref40.allowAbstract, _ref40$flagUnsupporte = _ref40.flagUnsupported, flagUnsupported = _ref40$flagUnsupporte === void 0 ? false : _ref40$flagUnsupporte;\n var roleDefinition = standards_default.ariaRoles[role];\n var isRoleUnsupported = is_unsupported_role_default(role);\n if (!roleDefinition || flagUnsupported && isRoleUnsupported) {\n return false;\n }\n return allowAbstract ? true : roleDefinition.type !== 'abstract';\n }\n var is_valid_role_default = isValidRole;\n function getExplicitRole(vNode) {\n var _ref41 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, fallback = _ref41.fallback, abstracts = _ref41.abstracts, dpub = _ref41.dpub;\n vNode = vNode instanceof abstract_virtual_node_default ? vNode : get_node_from_tree_default(vNode);\n if (vNode.props.nodeType !== 1) {\n return null;\n }\n var roleAttr = (vNode.attr('role') || '').trim().toLowerCase();\n var roleList = fallback ? token_list_default(roleAttr) : [ roleAttr ];\n var firstValidRole = roleList.find(function(role) {\n if (!dpub && role.substr(0, 4) === 'doc-') {\n return false;\n }\n return is_valid_role_default(role, {\n allowAbstract: abstracts\n });\n });\n return firstValidRole || null;\n }\n var get_explicit_role_default = getExplicitRole;\n function getElementsByContentType(type2) {\n return Object.keys(standards_default.htmlElms).filter(function(nodeName2) {\n var elm = standards_default.htmlElms[nodeName2];\n if (elm.contentTypes) {\n return elm.contentTypes.includes(type2);\n }\n if (!elm.variant) {\n return false;\n }\n if (elm.variant['default'] && elm.variant['default'].contentTypes) {\n return elm.variant['default'].contentTypes.includes(type2);\n }\n return false;\n });\n }\n var get_elements_by_content_type_default = getElementsByContentType;\n function getGlobalAriaAttrs() {\n return cache_default.get('globalAriaAttrs', function() {\n return Object.keys(standards_default.ariaAttrs).filter(function(attrName) {\n return standards_default.ariaAttrs[attrName].global;\n });\n });\n }\n var get_global_aria_attrs_default = getGlobalAriaAttrs;\n function toGrid(node) {\n var table = [];\n var rows = node.rows;\n for (var i = 0, rowLength = rows.length; i < rowLength; i++) {\n var cells = rows[i].cells;\n table[i] = table[i] || [];\n var columnIndex = 0;\n for (var j = 0, cellLength = cells.length; j < cellLength; j++) {\n for (var colSpan = 0; colSpan < cells[j].colSpan; colSpan++) {\n var rowspanAttr = cells[j].getAttribute('rowspan');\n var rowspanValue = parseInt(rowspanAttr) === 0 || cells[j].rowspan === 0 ? rows.length : cells[j].rowSpan;\n for (var rowSpan = 0; rowSpan < rowspanValue; rowSpan++) {\n table[i + rowSpan] = table[i + rowSpan] || [];\n while (table[i + rowSpan][columnIndex]) {\n columnIndex++;\n }\n table[i + rowSpan][columnIndex] = cells[j];\n }\n columnIndex++;\n }\n }\n }\n return table;\n }\n var to_grid_default = memoize_default(toGrid);\n function getCellPosition(cell, tableGrid) {\n var rowIndex, index;\n if (!tableGrid) {\n tableGrid = to_grid_default(find_up_default(cell, 'table'));\n }\n for (rowIndex = 0; rowIndex < tableGrid.length; rowIndex++) {\n if (tableGrid[rowIndex]) {\n index = tableGrid[rowIndex].indexOf(cell);\n if (index !== -1) {\n return {\n x: index,\n y: rowIndex\n };\n }\n }\n }\n }\n var get_cell_position_default = memoize_default(getCellPosition);\n function _getScope(el) {\n var _nodeLookup0 = _nodeLookup(el), vNode = _nodeLookup0.vNode, cell = _nodeLookup0.domNode;\n var scope = vNode.attr('scope');\n var role = get_explicit_role_default(vNode);\n if (![ 'td', 'th' ].includes(vNode.props.nodeName)) {\n throw new TypeError('Expected TD or TH element');\n }\n if (role === 'columnheader') {\n return 'col';\n } else if (role === 'rowheader') {\n return 'row';\n } else if (scope === 'col' || scope === 'row') {\n return scope;\n } else if (vNode.props.nodeName !== 'th') {\n return false;\n } else if (!vNode.actualNode) {\n return 'auto';\n }\n var tableGrid = to_grid_default(find_up_default(cell, 'table'));\n var pos = get_cell_position_default(cell, tableGrid);\n var headerRow = tableGrid[pos.y].every(function(node) {\n return node.nodeName.toUpperCase() === 'TH';\n });\n if (headerRow) {\n return 'col';\n }\n var headerCol = tableGrid.map(function(col) {\n return col[pos.x];\n }).every(function(node) {\n return node && node.nodeName.toUpperCase() === 'TH';\n });\n if (headerCol) {\n return 'row';\n }\n return 'auto';\n }\n function isColumnHeader(element) {\n return [ 'col', 'auto' ].indexOf(_getScope(element)) !== -1;\n }\n var is_column_header_default = isColumnHeader;\n function isRowHeader(cell) {\n return [ 'row', 'auto' ].includes(_getScope(cell));\n }\n var is_row_header_default = isRowHeader;\n function sanitize(str) {\n if (!str) {\n return '';\n }\n return str.replace(/\\r\\n/g, '\\n').replace(/\\u00A0/g, ' ').replace(/[\\s]{2,}/g, ' ').trim();\n }\n var sanitize_default = sanitize;\n var getSectioningContentSelector = function getSectioningContentSelector() {\n return cache_default.get('sectioningContentSelector', function() {\n return get_elements_by_content_type_default('sectioning').map(function(nodeName2) {\n return ''.concat(nodeName2, ':not([role])');\n }).join(', ') + ' , [role=article], [role=complementary], [role=navigation], [role=region]';\n });\n };\n var getSectioningContentPlusMainSelector = function getSectioningContentPlusMainSelector() {\n return cache_default.get('sectioningContentPlusMainSelector', function() {\n return getSectioningContentSelector() + ' , main:not([role]), [role=main]';\n });\n };\n function hasAccessibleName(vNode) {\n var _ref42 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, _ref42$checkTitle = _ref42.checkTitle, checkTitle = _ref42$checkTitle === void 0 ? false : _ref42$checkTitle;\n return !!(sanitize_default(arialabelledby_text_default(vNode)) || sanitize_default(_arialabelText(vNode)) || checkTitle && (vNode === null || vNode === void 0 ? void 0 : vNode.props.nodeType) === 1 && sanitize_default(vNode.attr('title')));\n }\n var implicitHtmlRoles = {\n a: function a(vNode) {\n return vNode.hasAttr('href') ? 'link' : null;\n },\n area: function area(vNode) {\n return vNode.hasAttr('href') ? 'link' : null;\n },\n article: 'article',\n aside: function aside(vNode) {\n if (closest_default(vNode.parent, getSectioningContentSelector()) && !hasAccessibleName(vNode, {\n checkTitle: true\n })) {\n return null;\n }\n return 'complementary';\n },\n body: 'document',\n button: 'button',\n datalist: 'listbox',\n dd: 'definition',\n dfn: 'term',\n details: 'group',\n dialog: 'dialog',\n dt: 'term',\n fieldset: 'group',\n figure: 'figure',\n footer: function footer(vNode) {\n var sectioningElement = closest_default(vNode, getSectioningContentPlusMainSelector());\n return !sectioningElement ? 'contentinfo' : null;\n },\n form: function form(vNode) {\n return hasAccessibleName(vNode) ? 'form' : null;\n },\n h1: 'heading',\n h2: 'heading',\n h3: 'heading',\n h4: 'heading',\n h5: 'heading',\n h6: 'heading',\n header: function header(vNode) {\n var sectioningElement = closest_default(vNode, getSectioningContentPlusMainSelector());\n return !sectioningElement ? 'banner' : null;\n },\n hr: 'separator',\n img: function img(vNode) {\n var emptyAlt = vNode.hasAttr('alt') && !vNode.attr('alt');\n var hasGlobalAria = get_global_aria_attrs_default().find(function(attr) {\n return vNode.hasAttr(attr);\n });\n return emptyAlt && !hasGlobalAria && !_isFocusable(vNode) ? 'presentation' : 'img';\n },\n input: function input(vNode) {\n var suggestionsSourceElement;\n if (vNode.hasAttr('list')) {\n var listElement = idrefs_default(vNode.actualNode, 'list').filter(function(node) {\n return !!node;\n })[0];\n suggestionsSourceElement = listElement && listElement.nodeName.toLowerCase() === 'datalist';\n }\n switch (vNode.props.type) {\n case 'checkbox':\n return 'checkbox';\n\n case 'number':\n return 'spinbutton';\n\n case 'radio':\n return 'radio';\n\n case 'range':\n return 'slider';\n\n case 'search':\n return !suggestionsSourceElement ? 'searchbox' : 'combobox';\n\n case 'button':\n case 'image':\n case 'reset':\n case 'submit':\n return 'button';\n\n case 'text':\n case 'tel':\n case 'url':\n case 'email':\n case '':\n return !suggestionsSourceElement ? 'textbox' : 'combobox';\n\n default:\n return 'textbox';\n }\n },\n li: 'listitem',\n main: 'main',\n math: 'math',\n menu: 'list',\n meter: 'meter',\n nav: 'navigation',\n ol: 'list',\n optgroup: 'group',\n option: 'option',\n output: 'status',\n progress: 'progressbar',\n search: 'search',\n section: function section(vNode) {\n return hasAccessibleName(vNode) ? 'region' : null;\n },\n select: function select(vNode) {\n return vNode.hasAttr('multiple') || parseInt(vNode.attr('size')) > 1 ? 'listbox' : 'combobox';\n },\n summary: 'button',\n table: 'table',\n tbody: 'rowgroup',\n td: function td(vNode) {\n var table = closest_default(vNode, 'table');\n var role = get_explicit_role_default(table);\n return [ 'grid', 'treegrid' ].includes(role) ? 'gridcell' : 'cell';\n },\n textarea: 'textbox',\n tfoot: 'rowgroup',\n th: function th(vNode) {\n if (is_column_header_default(vNode)) {\n return 'columnheader';\n }\n if (is_row_header_default(vNode)) {\n return 'rowheader';\n }\n },\n thead: 'rowgroup',\n tr: 'row',\n ul: 'list'\n };\n var implicit_html_roles_default = implicitHtmlRoles;\n function fromPrimative(someString, matcher) {\n var matcherType = _typeof(matcher);\n if (Array.isArray(matcher) && typeof someString !== 'undefined') {\n return matcher.includes(someString);\n }\n if (matcherType === 'function') {\n return !!matcher(someString);\n }\n if (someString !== null && someString !== void 0) {\n if (matcher instanceof RegExp) {\n return matcher.test(someString);\n }\n if (/^\\/.*\\/$/.test(matcher)) {\n var pattern = matcher.substring(1, matcher.length - 1);\n return new RegExp(pattern).test(someString);\n }\n }\n return matcher === someString;\n }\n var from_primative_default = fromPrimative;\n function hasAccessibleName2(vNode, matcher) {\n return from_primative_default(!!_accessibleTextVirtual(vNode), matcher);\n }\n var has_accessible_name_default = hasAccessibleName2;\n function fromFunction(getValue, matcher) {\n var matcherType = _typeof(matcher);\n if (matcherType !== 'object' || Array.isArray(matcher) || matcher instanceof RegExp) {\n throw new Error('Expect matcher to be an object');\n }\n return Object.keys(matcher).every(function(propName) {\n return from_primative_default(getValue(propName), matcher[propName]);\n });\n }\n var from_function_default = fromFunction;\n function attributes(vNode, matcher) {\n vNode = _nodeLookup(vNode).vNode;\n return from_function_default(function(attrName) {\n return vNode.attr(attrName);\n }, matcher);\n }\n var attributes_default = attributes;\n function condition(arg, matcher) {\n return !!matcher(arg);\n }\n function explicitRole(vNode, matcher) {\n return from_primative_default(get_explicit_role_default(vNode), matcher);\n }\n var explicit_role_default = explicitRole;\n function implicitRole(vNode, matcher) {\n return from_primative_default(implicit_role_default(vNode), matcher);\n }\n var implicit_role_default2 = implicitRole;\n function nodeName(vNode, matcher) {\n vNode = _nodeLookup(vNode).vNode;\n return from_primative_default(vNode.props.nodeName, matcher);\n }\n var node_name_default = nodeName;\n function properties(vNode, matcher) {\n vNode = _nodeLookup(vNode).vNode;\n return from_function_default(function(propName) {\n return vNode.props[propName];\n }, matcher);\n }\n var properties_default = properties;\n function semanticRole(vNode, matcher) {\n return from_primative_default(get_role_default(vNode), matcher);\n }\n var semantic_role_default = semanticRole;\n var matchers = {\n hasAccessibleName: has_accessible_name_default,\n attributes: attributes_default,\n condition: condition,\n explicitRole: explicit_role_default,\n implicitRole: implicit_role_default2,\n nodeName: node_name_default,\n properties: properties_default,\n semanticRole: semantic_role_default\n };\n function fromDefinition(vNode, definition) {\n vNode = _nodeLookup(vNode).vNode;\n if (Array.isArray(definition)) {\n return definition.some(function(definitionItem) {\n return fromDefinition(vNode, definitionItem);\n });\n }\n if (typeof definition === 'string') {\n return _matches(vNode, definition);\n }\n return Object.keys(definition).every(function(matcherName) {\n if (!matchers[matcherName]) {\n throw new Error('Unknown matcher type \"'.concat(matcherName, '\"'));\n }\n var matchMethod = matchers[matcherName];\n var matcher = definition[matcherName];\n return matchMethod(vNode, matcher);\n });\n }\n var from_definition_default = fromDefinition;\n function matches2(vNode, definition) {\n return from_definition_default(vNode, definition);\n }\n var matches_default = matches2;\n matches_default.hasAccessibleName = has_accessible_name_default;\n matches_default.attributes = attributes_default;\n matches_default.condition = condition;\n matches_default.explicitRole = explicit_role_default;\n matches_default.fromDefinition = from_definition_default;\n matches_default.fromFunction = from_function_default;\n matches_default.fromPrimative = from_primative_default;\n matches_default.implicitRole = implicit_role_default2;\n matches_default.nodeName = node_name_default;\n matches_default.properties = properties_default;\n matches_default.semanticRole = semantic_role_default;\n var matches_default2 = matches_default;\n function getElementSpec(vNode) {\n var _ref43 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, _ref43$noMatchAccessi = _ref43.noMatchAccessibleName, noMatchAccessibleName = _ref43$noMatchAccessi === void 0 ? false : _ref43$noMatchAccessi;\n var standard = standards_default.htmlElms[vNode.props.nodeName];\n if (!standard) {\n return {};\n }\n if (!standard.variant) {\n return standard;\n }\n var variant = standard.variant, spec = _objectWithoutProperties(standard, _excluded6);\n for (var variantName in variant) {\n if (!variant.hasOwnProperty(variantName) || variantName === 'default') {\n continue;\n }\n var _variant$variantName = variant[variantName], matches4 = _variant$variantName.matches, props = _objectWithoutProperties(_variant$variantName, _excluded7);\n var matchProperties = Array.isArray(matches4) ? matches4 : [ matches4 ];\n for (var i = 0; i < matchProperties.length && noMatchAccessibleName; i++) {\n if (matchProperties[i].hasOwnProperty('hasAccessibleName')) {\n return standard;\n }\n }\n if (matches_default2(vNode, matches4)) {\n for (var propName in props) {\n if (props.hasOwnProperty(propName)) {\n spec[propName] = props[propName];\n }\n }\n }\n }\n for (var _propName in variant['default']) {\n if (variant['default'].hasOwnProperty(_propName) && typeof spec[_propName] === 'undefined') {\n spec[_propName] = variant['default'][_propName];\n }\n }\n return spec;\n }\n var get_element_spec_default = getElementSpec;\n function implicitRole2(node) {\n var _ref44 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, chromium = _ref44.chromium;\n var vNode = node instanceof abstract_virtual_node_default ? node : get_node_from_tree_default(node);\n node = vNode.actualNode;\n if (!vNode) {\n throw new ReferenceError('Cannot get implicit role of a node outside the current scope.');\n }\n var nodeName2 = vNode.props.nodeName;\n var role = implicit_html_roles_default[nodeName2];\n if (!role && chromium) {\n var _get_element_spec_def = get_element_spec_default(vNode), chromiumRole = _get_element_spec_def.chromiumRole;\n return chromiumRole || null;\n }\n if (typeof role === 'function') {\n return role(vNode);\n }\n return role || null;\n }\n var implicit_role_default = implicitRole2;\n var inheritsPresentationChain = {\n td: [ 'tr' ],\n th: [ 'tr' ],\n tr: [ 'thead', 'tbody', 'tfoot', 'table' ],\n thead: [ 'table' ],\n tbody: [ 'table' ],\n tfoot: [ 'table' ],\n li: [ 'ol', 'ul' ],\n dt: [ 'dl', 'div' ],\n dd: [ 'dl', 'div' ],\n div: [ 'dl' ]\n };\n function getInheritedRole(vNode, explicitRoleOptions) {\n var parentNodeNames = inheritsPresentationChain[vNode.props.nodeName];\n if (!parentNodeNames) {\n return null;\n }\n if (!vNode.parent) {\n if (!vNode.actualNode) {\n return null;\n }\n throw new ReferenceError('Cannot determine role presentational inheritance of a required parent outside the current scope.');\n }\n if (!parentNodeNames.includes(vNode.parent.props.nodeName)) {\n return null;\n }\n var parentRole = get_explicit_role_default(vNode.parent, explicitRoleOptions);\n if ([ 'none', 'presentation' ].includes(parentRole) && !hasConflictResolution(vNode.parent)) {\n return parentRole;\n }\n if (parentRole) {\n return null;\n }\n return getInheritedRole(vNode.parent, explicitRoleOptions);\n }\n function resolveImplicitRole(vNode, _ref45) {\n var chromium = _ref45.chromium, explicitRoleOptions = _objectWithoutProperties(_ref45, _excluded8);\n var implicitRole3 = implicit_role_default(vNode, {\n chromium: chromium\n });\n if (!implicitRole3) {\n return null;\n }\n var presentationalRole = getInheritedRole(vNode, explicitRoleOptions);\n if (presentationalRole) {\n return presentationalRole;\n }\n return implicitRole3;\n }\n function hasConflictResolution(vNode) {\n var hasGlobalAria = get_global_aria_attrs_default().some(function(attr) {\n return vNode.hasAttr(attr);\n });\n return hasGlobalAria || _isFocusable(vNode);\n }\n function resolveRole(node) {\n var _ref46 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var noImplicit = _ref46.noImplicit, roleOptions = _objectWithoutProperties(_ref46, _excluded9);\n var _nodeLookup1 = _nodeLookup(node), vNode = _nodeLookup1.vNode;\n if (vNode.props.nodeType !== 1) {\n return null;\n }\n var explicitRole2 = get_explicit_role_default(vNode, roleOptions);\n if (!explicitRole2) {\n return noImplicit ? null : resolveImplicitRole(vNode, roleOptions);\n }\n if (![ 'presentation', 'none' ].includes(explicitRole2)) {\n return explicitRole2;\n }\n if (hasConflictResolution(vNode)) {\n return noImplicit ? null : resolveImplicitRole(vNode, roleOptions);\n }\n return explicitRole2;\n }\n function getRole(node) {\n var _ref47 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var noPresentational = _ref47.noPresentational, options = _objectWithoutProperties(_ref47, _excluded0);\n var role = resolveRole(node, options);\n if (noPresentational && [ 'presentation', 'none' ].includes(role)) {\n return null;\n }\n return role;\n }\n var get_role_default = getRole;\n var alwaysTitleElements = [ 'iframe' ];\n function titleText(node) {\n var _nodeLookup10 = _nodeLookup(node), vNode = _nodeLookup10.vNode;\n if (vNode.props.nodeType !== 1 || !node.hasAttr('title')) {\n return '';\n }\n if (!matches_default(vNode, alwaysTitleElements) && [ 'none', 'presentation' ].includes(get_role_default(vNode))) {\n return '';\n }\n return vNode.attr('title');\n }\n var title_text_default = titleText;\n function namedFromContents(vNode) {\n var _ref48 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, strict = _ref48.strict;\n vNode = vNode instanceof abstract_virtual_node_default ? vNode : get_node_from_tree_default(vNode);\n if (vNode.props.nodeType !== 1) {\n return false;\n }\n var role = get_role_default(vNode);\n var roleDef = standards_default.ariaRoles[role];\n if (roleDef && roleDef.nameFromContent) {\n return true;\n }\n if (strict) {\n return false;\n }\n return !roleDef || [ 'presentation', 'none' ].includes(role);\n }\n var named_from_contents_default = namedFromContents;\n function getOwnedVirtual(virtualNode) {\n var actualNode = virtualNode.actualNode, children = virtualNode.children;\n if (!children) {\n throw new Error('getOwnedVirtual requires a virtual node');\n }\n if (virtualNode.hasAttr('aria-owns')) {\n var owns = idrefs_default(actualNode, 'aria-owns').filter(function(element) {\n return !!element;\n }).map(function(element) {\n return axe.utils.getNodeFromTree(element);\n });\n return [].concat(_toConsumableArray(children), _toConsumableArray(owns));\n }\n return _toConsumableArray(children);\n }\n var get_owned_virtual_default = getOwnedVirtual;\n var unsupported_default = {\n accessibleNameFromFieldValue: [ 'progressbar' ]\n };\n function _isVisibleToScreenReaders(vNode) {\n vNode = _nodeLookup(vNode).vNode;\n return isVisibleToScreenReadersVirtual(vNode);\n }\n var isVisibleToScreenReadersVirtual = memoize_default(function isVisibleToScreenReadersMemoized(vNode, isAncestor) {\n if (ariaHidden(vNode) || _isInert(vNode, {\n skipAncestors: true,\n isAncestor: isAncestor\n })) {\n return false;\n }\n if (vNode.actualNode && vNode.props.nodeName === 'area') {\n return !areaHidden(vNode, isVisibleToScreenReadersVirtual);\n }\n if (_isHiddenForEveryone(vNode, {\n skipAncestors: true,\n isAncestor: isAncestor\n })) {\n return false;\n }\n if (!vNode.parent) {\n return true;\n }\n return isVisibleToScreenReadersVirtual(vNode.parent, true);\n });\n function visibleVirtual(element, screenReader, noRecursing) {\n var _nodeLookup11 = _nodeLookup(element), vNode = _nodeLookup11.vNode;\n var visibleMethod = screenReader ? _isVisibleToScreenReaders : _isVisibleOnScreen;\n var visible2 = !element.actualNode || element.actualNode && visibleMethod(element);\n var result = vNode.children.map(function(child) {\n var _child$props = child.props, nodeType = _child$props.nodeType, nodeValue = _child$props.nodeValue;\n if (nodeType === 3) {\n if (nodeValue && visible2) {\n return nodeValue;\n }\n } else if (!noRecursing) {\n return visibleVirtual(child, screenReader);\n }\n }).join('');\n return sanitize_default(result);\n }\n var visible_virtual_default = visibleVirtual;\n var nonTextInputTypes = [ 'button', 'checkbox', 'color', 'file', 'hidden', 'image', 'password', 'radio', 'reset', 'submit' ];\n function isNativeTextbox(node) {\n node = node instanceof abstract_virtual_node_default ? node : get_node_from_tree_default(node);\n var nodeName2 = node.props.nodeName;\n return nodeName2 === 'textarea' || nodeName2 === 'input' && !nonTextInputTypes.includes((node.attr('type') || '').toLowerCase());\n }\n var is_native_textbox_default = isNativeTextbox;\n function isNativeSelect(node) {\n node = node instanceof abstract_virtual_node_default ? node : get_node_from_tree_default(node);\n var nodeName2 = node.props.nodeName;\n return nodeName2 === 'select';\n }\n var is_native_select_default = isNativeSelect;\n function isAriaTextbox(node) {\n var role = get_explicit_role_default(node);\n return role === 'textbox';\n }\n var is_aria_textbox_default = isAriaTextbox;\n function isAriaListbox(node) {\n var role = get_explicit_role_default(node);\n return role === 'listbox';\n }\n var is_aria_listbox_default = isAriaListbox;\n function isAriaCombobox(node) {\n var role = get_explicit_role_default(node);\n return role === 'combobox';\n }\n var is_aria_combobox_default = isAriaCombobox;\n var rangeRoles = [ 'progressbar', 'scrollbar', 'slider', 'spinbutton' ];\n function isAriaRange(node) {\n var role = get_explicit_role_default(node);\n return rangeRoles.includes(role);\n }\n var is_aria_range_default = isAriaRange;\n var controlValueRoles = [ 'textbox', 'progressbar', 'scrollbar', 'slider', 'spinbutton', 'combobox', 'listbox' ];\n var _formControlValueMethods = {\n nativeTextboxValue: nativeTextboxValue,\n nativeSelectValue: nativeSelectValue,\n ariaTextboxValue: ariaTextboxValue,\n ariaListboxValue: ariaListboxValue,\n ariaComboboxValue: ariaComboboxValue,\n ariaRangeValue: ariaRangeValue\n };\n function formControlValue(virtualNode) {\n var context = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var actualNode = virtualNode.actualNode;\n var unsupportedRoles = unsupported_default.accessibleNameFromFieldValue || [];\n var role = get_role_default(virtualNode);\n if (context.startNode === virtualNode || !controlValueRoles.includes(role) || unsupportedRoles.includes(role)) {\n return '';\n }\n var valueMethods = Object.keys(_formControlValueMethods).map(function(name) {\n return _formControlValueMethods[name];\n });\n var valueString = valueMethods.reduce(function(accName, step) {\n return accName || step(virtualNode, context);\n }, '');\n if (context.debug) {\n log_default(valueString || '{empty-value}', actualNode, context);\n }\n return valueString;\n }\n function nativeTextboxValue(node) {\n var _nodeLookup12 = _nodeLookup(node), vNode = _nodeLookup12.vNode;\n if (is_native_textbox_default(vNode)) {\n return vNode.props.value || '';\n }\n return '';\n }\n function nativeSelectValue(node) {\n var _nodeLookup13 = _nodeLookup(node), vNode = _nodeLookup13.vNode;\n if (!is_native_select_default(vNode)) {\n return '';\n }\n var options = query_selector_all_default(vNode, 'option');\n var selectedOptions = options.filter(function(option) {\n return option.props.selected;\n });\n if (!selectedOptions.length) {\n selectedOptions.push(options[0]);\n }\n return selectedOptions.map(function(option) {\n return visible_virtual_default(option);\n }).join(' ') || '';\n }\n function ariaTextboxValue(node) {\n var _nodeLookup14 = _nodeLookup(node), vNode = _nodeLookup14.vNode, domNode = _nodeLookup14.domNode;\n if (!is_aria_textbox_default(vNode)) {\n return '';\n }\n if (!domNode || domNode && !_isHiddenForEveryone(domNode)) {\n return visible_virtual_default(vNode, true);\n } else {\n return domNode.textContent;\n }\n }\n function ariaListboxValue(node, context) {\n var _nodeLookup15 = _nodeLookup(node), vNode = _nodeLookup15.vNode;\n if (!is_aria_listbox_default(vNode)) {\n return '';\n }\n var selected = get_owned_virtual_default(vNode).filter(function(owned) {\n return get_role_default(owned) === 'option' && owned.attr('aria-selected') === 'true';\n });\n if (selected.length === 0) {\n return '';\n }\n return _accessibleTextVirtual(selected[0], context);\n }\n function ariaComboboxValue(node, context) {\n var _nodeLookup16 = _nodeLookup(node), vNode = _nodeLookup16.vNode;\n if (!is_aria_combobox_default(vNode)) {\n return '';\n }\n var listbox = get_owned_virtual_default(vNode).filter(function(elm) {\n return get_role_default(elm) === 'listbox';\n })[0];\n return listbox ? ariaListboxValue(listbox, context) : '';\n }\n function ariaRangeValue(node) {\n var _nodeLookup17 = _nodeLookup(node), vNode = _nodeLookup17.vNode;\n if (!is_aria_range_default(vNode) || !vNode.hasAttr('aria-valuenow')) {\n return '';\n }\n var valueNow = +vNode.attr('aria-valuenow');\n return !isNaN(valueNow) ? String(valueNow) : '0';\n }\n var form_control_value_default = formControlValue;\n function subtreeText(virtualNode) {\n var context = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var alreadyProcessed2 = _accessibleTextVirtual.alreadyProcessed;\n context.startNode = context.startNode || virtualNode;\n var _context = context, strict = _context.strict, inControlContext = _context.inControlContext, inLabelledByContext = _context.inLabelledByContext;\n var role = get_role_default(virtualNode);\n var _get_element_spec_def2 = get_element_spec_default(virtualNode, {\n noMatchAccessibleName: true\n }), contentTypes = _get_element_spec_def2.contentTypes;\n if (alreadyProcessed2(virtualNode, context) || virtualNode.props.nodeType !== 1 || contentTypes !== null && contentTypes !== void 0 && contentTypes.includes('embedded') || controlValueRoles.includes(role)) {\n return '';\n }\n if (!context.subtreeDescendant && !context.inLabelledByContext && !named_from_contents_default(virtualNode, {\n strict: strict\n })) {\n return '';\n }\n if (!strict) {\n var subtreeDescendant = !inControlContext && !inLabelledByContext;\n context = _extends({\n subtreeDescendant: subtreeDescendant\n }, context);\n }\n return get_owned_virtual_default(virtualNode).reduce(function(contentText, child) {\n return appendAccessibleText(contentText, child, context);\n }, '');\n }\n var phrasingElements = get_elements_by_content_type_default('phrasing').concat([ '#text' ]);\n function appendAccessibleText(contentText, virtualNode, context) {\n var nodeName2 = virtualNode.props.nodeName;\n var contentTextAdd = _accessibleTextVirtual(virtualNode, context);\n if (!contentTextAdd) {\n return contentText;\n }\n if (!phrasingElements.includes(nodeName2)) {\n if (contentTextAdd[0] !== ' ') {\n contentTextAdd += ' ';\n }\n if (contentText && contentText[contentText.length - 1] !== ' ') {\n contentTextAdd = ' ' + contentTextAdd;\n }\n }\n return contentText + contentTextAdd;\n }\n var subtree_text_default = subtreeText;\n function labelText(virtualNode) {\n var context = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var alreadyProcessed2 = _accessibleTextVirtual.alreadyProcessed;\n if (context.inControlContext || context.inLabelledByContext || alreadyProcessed2(virtualNode, context)) {\n return '';\n }\n if (!context.startNode) {\n context.startNode = virtualNode;\n }\n var labelContext = _extends({\n inControlContext: true\n }, context);\n var explicitLabels = getExplicitLabels(virtualNode);\n var implicitLabel = closest_default(virtualNode, 'label');\n var labels;\n if (implicitLabel) {\n labels = [].concat(_toConsumableArray(explicitLabels), [ implicitLabel.actualNode ]);\n labels.sort(node_sorter_default);\n } else {\n labels = explicitLabels;\n }\n return labels.map(function(label3) {\n return accessible_text_default(label3, labelContext);\n }).filter(function(text) {\n return text !== '';\n }).join(' ');\n }\n function getExplicitLabels(virtualNode) {\n if (!virtualNode.attr('id')) {\n return [];\n }\n if (!virtualNode.actualNode) {\n throw new TypeError('Cannot resolve explicit label reference for non-DOM nodes');\n }\n return find_elms_in_context_default({\n elm: 'label',\n attr: 'for',\n value: virtualNode.attr('id'),\n context: virtualNode.actualNode\n });\n }\n var label_text_default = labelText;\n var defaultButtonValues = {\n submit: 'Submit',\n image: 'Submit',\n reset: 'Reset',\n button: ''\n };\n var nativeTextMethods = {\n valueText: function valueText(vNode) {\n return vNode.props.value || '';\n },\n buttonDefaultText: function buttonDefaultText(vNode) {\n return defaultButtonValues[vNode.props.type] || '';\n },\n tableCaptionText: descendantText.bind(null, 'caption'),\n figureText: descendantText.bind(null, 'figcaption'),\n svgTitleText: descendantText.bind(null, 'title'),\n fieldsetLegendText: descendantText.bind(null, 'legend'),\n altText: attrText.bind(null, 'alt'),\n tableSummaryText: attrText.bind(null, 'summary'),\n titleText: title_text_default,\n subtreeText: subtree_text_default,\n labelText: label_text_default,\n singleSpace: function singleSpace() {\n return ' ';\n },\n placeholderText: attrText.bind(null, 'placeholder')\n };\n function attrText(attr, vNode) {\n return vNode.attr(attr) || '';\n }\n function descendantText(nodeName2, _ref49, context) {\n var actualNode = _ref49.actualNode;\n nodeName2 = nodeName2.toLowerCase();\n var nodeNames2 = [ nodeName2, actualNode.nodeName.toLowerCase() ].join(',');\n var candidate = actualNode.querySelector(nodeNames2);\n if (!candidate || candidate.nodeName.toLowerCase() !== nodeName2) {\n return '';\n }\n return accessible_text_default(candidate, context);\n }\n var native_text_methods_default = nativeTextMethods;\n function _nativeTextAlternative(virtualNode) {\n var context = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var actualNode = virtualNode.actualNode;\n if (virtualNode.props.nodeType !== 1 || [ 'presentation', 'none' ].includes(get_role_default(virtualNode))) {\n return '';\n }\n var textMethods = findTextMethods(virtualNode);\n var accessibleName = textMethods.reduce(function(accName, step) {\n return accName || step(virtualNode, context);\n }, '');\n if (context.debug) {\n axe.log(accessibleName || '{empty-value}', actualNode, context);\n }\n return accessibleName;\n }\n function findTextMethods(virtualNode) {\n var elmSpec = get_element_spec_default(virtualNode, {\n noMatchAccessibleName: true\n });\n var methods = elmSpec.namingMethods || [];\n return methods.map(function(methodName) {\n return native_text_methods_default[methodName];\n });\n }\n function getUnicodeNonBmpRegExp() {\n return /[\\u1D00-\\u1D7F\\u1D80-\\u1DBF\\u1DC0-\\u1DFF\\u20A0-\\u20CF\\u20D0-\\u20FF\\u2100-\\u214F\\u2150-\\u218F\\u2190-\\u21FF\\u2200-\\u22FF\\u2300-\\u23FF\\u2400-\\u243F\\u2440-\\u245F\\u2460-\\u24FF\\u2500-\\u257F\\u2580-\\u259F\\u25A0-\\u25FF\\u2600-\\u26FF\\u2700-\\u27BF\\uE000-\\uF8FF]/g;\n }\n function getPunctuationRegExp() {\n return /[\\u2000-\\u206F\\u2E00-\\u2E7F\\\\'!\"#$%&\\xa3\\xa2\\xa5\\xa7\\u20ac()*+,\\-.\\/:;<=>?@\\[\\]^_`{|}~\\xb1]/g;\n }\n function getSupplementaryPrivateUseRegExp() {\n return /[\\uDB80-\\uDBBF][\\uDC00-\\uDFFF]/g;\n }\n function getCategoryFormatRegExp() {\n return /[\\xAD\\u0600-\\u0605\\u061C\\u06DD\\u070F\\u08E2\\u180E\\u200B-\\u200F\\u202A-\\u202E\\u2060-\\u2064\\u2066-\\u206F\\uFEFF\\uFFF9-\\uFFFB]|\\uD804[\\uDCBD\\uDCCD]|\\uD80D[\\uDC30-\\uDC38]|\\uD82F[\\uDCA0-\\uDCA3]|\\uD834[\\uDD73-\\uDD7A]|\\uDB40[\\uDC01\\uDC20-\\uDC7F]/g;\n }\n function hasUnicode(str, options) {\n var emoji = options.emoji, nonBmp = options.nonBmp, punctuations = options.punctuations;\n var value = false;\n if (emoji) {\n value || (value = emoji_regex_default().test(str));\n }\n if (nonBmp) {\n value || (value = getUnicodeNonBmpRegExp().test(str) || getSupplementaryPrivateUseRegExp().test(str) || getCategoryFormatRegExp().test(str));\n }\n if (punctuations) {\n value || (value = getPunctuationRegExp().test(str));\n }\n return value;\n }\n var has_unicode_default = hasUnicode;\n function _isIconLigature(textVNode) {\n var differenceThreshold = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : .15;\n var occurrenceThreshold = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 3;\n var nodeValue = textVNode.actualNode.nodeValue.trim();\n if (!sanitize_default(nodeValue) || has_unicode_default(nodeValue, {\n emoji: true,\n nonBmp: true\n })) {\n return false;\n }\n var canvasContext = cache_default.get('canvasContext', function() {\n return document.createElement('canvas').getContext('2d', {\n willReadFrequently: true\n });\n });\n var canvas = canvasContext.canvas;\n var fonts = cache_default.get('fonts', function() {\n return {};\n });\n var style = window.getComputedStyle(textVNode.parent.actualNode);\n var fontFamily = style.getPropertyValue('font-family');\n if (!fonts[fontFamily]) {\n fonts[fontFamily] = {\n occurrences: 0,\n numLigatures: 0\n };\n }\n var font = fonts[fontFamily];\n if (font.occurrences >= occurrenceThreshold) {\n if (font.numLigatures / font.occurrences === 1) {\n return true;\n } else if (font.numLigatures === 0) {\n return false;\n }\n }\n font.occurrences++;\n var fontSize = 30;\n var fontStyle = ''.concat(fontSize, 'px ').concat(fontFamily);\n canvasContext.font = fontStyle;\n var firstChar = nodeValue.charAt(0);\n var width = canvasContext.measureText(firstChar).width;\n if (width === 0) {\n font.numLigatures++;\n return true;\n }\n if (width < 30) {\n var diff = 30 / width;\n width *= diff;\n fontSize *= diff;\n fontStyle = ''.concat(fontSize, 'px ').concat(fontFamily);\n }\n canvas.width = width;\n canvas.height = fontSize;\n canvasContext.font = fontStyle;\n canvasContext.textAlign = 'left';\n canvasContext.textBaseline = 'top';\n canvasContext.fillText(firstChar, 0, 0);\n var compareData = new Uint32Array(canvasContext.getImageData(0, 0, width, fontSize).data.buffer);\n if (!compareData.some(function(pixel) {\n return pixel;\n })) {\n font.numLigatures++;\n return true;\n }\n canvasContext.clearRect(0, 0, width, fontSize);\n canvasContext.fillText(nodeValue, 0, 0);\n var compareWith = new Uint32Array(canvasContext.getImageData(0, 0, width, fontSize).data.buffer);\n var differences = compareData.reduce(function(diff, pixel, i) {\n if (pixel === 0 && compareWith[i] === 0) {\n return diff;\n }\n if (pixel !== 0 && compareWith[i] !== 0) {\n return diff;\n }\n return ++diff;\n }, 0);\n var expectedWidth = nodeValue.split('').reduce(function(totalWidth, _char2) {\n return totalWidth + canvasContext.measureText(_char2).width;\n }, 0);\n var actualWidth = canvasContext.measureText(nodeValue).width;\n var pixelDifference = differences / compareData.length;\n var sizeDifference = 1 - actualWidth / expectedWidth;\n if (pixelDifference >= differenceThreshold && sizeDifference >= differenceThreshold) {\n font.numLigatures++;\n return true;\n }\n return false;\n }\n function _accessibleTextVirtual(virtualNode) {\n var context = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n context = prepareContext(virtualNode, context);\n if (shouldIgnoreHidden(virtualNode, context)) {\n return '';\n }\n if (shouldIgnoreIconLigature(virtualNode, context)) {\n return '';\n }\n var computationSteps = [ arialabelledby_text_default, _arialabelText, _nativeTextAlternative, form_control_value_default, subtree_text_default, textNodeValue, title_text_default ];\n var accessibleName = computationSteps.reduce(function(accName, step) {\n if (context.startNode === virtualNode) {\n accName = sanitize_default(accName);\n }\n if (accName !== '') {\n return accName;\n }\n return step(virtualNode, context);\n }, '');\n if (context.debug) {\n axe.log(accessibleName || '{empty-value}', virtualNode.actualNode, context);\n }\n return accessibleName;\n }\n function textNodeValue(virtualNode) {\n if (virtualNode.props.nodeType !== 3) {\n return '';\n }\n return virtualNode.props.nodeValue;\n }\n function shouldIgnoreHidden(virtualNode, context) {\n if (!virtualNode) {\n return false;\n }\n if (virtualNode.props.nodeType !== 1 || context.includeHidden) {\n return false;\n }\n return !_isVisibleToScreenReaders(virtualNode);\n }\n function shouldIgnoreIconLigature(virtualNode, context) {\n var _context$occurrenceTh;\n var ignoreIconLigature = context.ignoreIconLigature, pixelThreshold = context.pixelThreshold;\n var occurrenceThreshold = (_context$occurrenceTh = context.occurrenceThreshold) !== null && _context$occurrenceTh !== void 0 ? _context$occurrenceTh : context.occuranceThreshold;\n if (virtualNode.props.nodeType !== 3 || !ignoreIconLigature) {\n return false;\n }\n return _isIconLigature(virtualNode, pixelThreshold, occurrenceThreshold);\n }\n function prepareContext(virtualNode, context) {\n if (!context.startNode) {\n context = _extends({\n startNode: virtualNode\n }, context);\n }\n if (virtualNode.props.nodeType === 1 && context.inLabelledByContext && context.includeHidden === void 0) {\n context = _extends({\n includeHidden: !_isVisibleToScreenReaders(virtualNode)\n }, context);\n }\n return context;\n }\n _accessibleTextVirtual.alreadyProcessed = function alreadyProcessed(virtualnode, context) {\n context.processed = context.processed || [];\n if (context.processed.includes(virtualnode)) {\n return true;\n }\n context.processed.push(virtualnode);\n return false;\n };\n function removeUnicode(str, options) {\n var emoji = options.emoji, nonBmp = options.nonBmp, punctuations = options.punctuations;\n if (emoji) {\n str = str.replace(emoji_regex_default(), '');\n }\n if (nonBmp) {\n str = str.replace(getUnicodeNonBmpRegExp(), '').replace(getSupplementaryPrivateUseRegExp(), '').replace(getCategoryFormatRegExp(), '');\n }\n if (punctuations) {\n str = str.replace(getPunctuationRegExp(), '');\n }\n return str;\n }\n var remove_unicode_default = removeUnicode;\n function isHumanInterpretable(str) {\n if (isEmpty(str) || isNonDigitCharacter(str) || isSymbolicText(str) || isUnicodeOrPunctuation(str)) {\n return 0;\n }\n return 1;\n }\n function isEmpty(str) {\n return sanitize_default(str).length === 0;\n }\n function isNonDigitCharacter(str) {\n return str.length === 1 && str.match(/\\D/);\n }\n function isSymbolicText(str) {\n var symbolicText = [ 'aa', 'abc' ];\n return symbolicText.includes(str.toLowerCase());\n }\n function isUnicodeOrPunctuation(str) {\n var noUnicodeStr = remove_unicode_default(str, {\n emoji: true,\n nonBmp: true,\n punctuations: true\n });\n return !sanitize_default(noUnicodeStr);\n }\n var is_human_interpretable_default = isHumanInterpretable;\n var _autocomplete = {\n stateTerms: [ 'on', 'off' ],\n standaloneTerms: [ 'name', 'honorific-prefix', 'given-name', 'additional-name', 'family-name', 'honorific-suffix', 'nickname', 'username', 'new-password', 'current-password', 'organization-title', 'organization', 'street-address', 'address-line1', 'address-line2', 'address-line3', 'address-level4', 'address-level3', 'address-level2', 'address-level1', 'country', 'country-name', 'postal-code', 'cc-name', 'cc-given-name', 'cc-additional-name', 'cc-family-name', 'cc-number', 'cc-exp', 'cc-exp-month', 'cc-exp-year', 'cc-csc', 'cc-type', 'transaction-currency', 'transaction-amount', 'language', 'bday', 'bday-day', 'bday-month', 'bday-year', 'sex', 'url', 'photo', 'one-time-code' ],\n qualifiers: [ 'home', 'work', 'mobile', 'fax', 'pager' ],\n qualifiedTerms: [ 'tel', 'tel-country-code', 'tel-national', 'tel-area-code', 'tel-local', 'tel-local-prefix', 'tel-local-suffix', 'tel-extension', 'email', 'impp' ],\n locations: [ 'billing', 'shipping' ]\n };\n function isValidAutocomplete(autocompleteValue) {\n var _ref50 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, _ref50$looseTyped = _ref50.looseTyped, looseTyped = _ref50$looseTyped === void 0 ? false : _ref50$looseTyped, _ref50$stateTerms = _ref50.stateTerms, stateTerms = _ref50$stateTerms === void 0 ? [] : _ref50$stateTerms, _ref50$locations = _ref50.locations, locations = _ref50$locations === void 0 ? [] : _ref50$locations, _ref50$qualifiers = _ref50.qualifiers, qualifiers = _ref50$qualifiers === void 0 ? [] : _ref50$qualifiers, _ref50$standaloneTerm = _ref50.standaloneTerms, standaloneTerms = _ref50$standaloneTerm === void 0 ? [] : _ref50$standaloneTerm, _ref50$qualifiedTerms = _ref50.qualifiedTerms, qualifiedTerms = _ref50$qualifiedTerms === void 0 ? [] : _ref50$qualifiedTerms, _ref50$ignoredValues = _ref50.ignoredValues, ignoredValues = _ref50$ignoredValues === void 0 ? [] : _ref50$ignoredValues;\n autocompleteValue = autocompleteValue.toLowerCase().trim();\n stateTerms = stateTerms.concat(_autocomplete.stateTerms);\n if (stateTerms.includes(autocompleteValue) || autocompleteValue === '') {\n return true;\n }\n qualifiers = qualifiers.concat(_autocomplete.qualifiers);\n locations = locations.concat(_autocomplete.locations);\n standaloneTerms = standaloneTerms.concat(_autocomplete.standaloneTerms);\n qualifiedTerms = qualifiedTerms.concat(_autocomplete.qualifiedTerms);\n var autocompleteTerms = autocompleteValue.split(/\\s+/g);\n if (autocompleteTerms[autocompleteTerms.length - 1] === 'webauthn') {\n autocompleteTerms.pop();\n if (autocompleteTerms.length === 0) {\n return false;\n }\n }\n if (!looseTyped) {\n if (autocompleteTerms[0].length > 8 && autocompleteTerms[0].substr(0, 8) === 'section-') {\n autocompleteTerms.shift();\n }\n if (locations.includes(autocompleteTerms[0])) {\n autocompleteTerms.shift();\n }\n if (qualifiers.includes(autocompleteTerms[0])) {\n autocompleteTerms.shift();\n standaloneTerms = [];\n }\n if (autocompleteTerms.length !== 1) {\n return false;\n }\n }\n var purposeTerm = autocompleteTerms[autocompleteTerms.length - 1];\n if (ignoredValues.includes(purposeTerm)) {\n return void 0;\n }\n return standaloneTerms.includes(purposeTerm) || qualifiedTerms.includes(purposeTerm);\n }\n var is_valid_autocomplete_default = isValidAutocomplete;\n function labelVirtual(virtualNode) {\n var ref, candidate;\n if (virtualNode.attr('aria-labelledby')) {\n ref = idrefs_default(virtualNode.actualNode, 'aria-labelledby');\n candidate = ref.map(function(thing) {\n var vNode = get_node_from_tree_default(thing);\n return vNode ? visible_virtual_default(vNode) : '';\n }).join(' ').trim();\n if (candidate) {\n return candidate;\n }\n }\n candidate = virtualNode.attr('aria-label');\n if (candidate) {\n candidate = sanitize_default(candidate);\n if (candidate) {\n return candidate;\n }\n }\n return null;\n }\n var label_virtual_default = labelVirtual;\n function visible(element, screenReader, noRecursing) {\n element = get_node_from_tree_default(element);\n return visible_virtual_default(element, screenReader, noRecursing);\n }\n var visible_default = visible;\n function labelVirtual2(virtualNode) {\n var ref, candidate, doc;\n candidate = label_virtual_default(virtualNode);\n if (candidate) {\n return candidate;\n }\n if (virtualNode.attr('id')) {\n if (!virtualNode.actualNode) {\n throw new TypeError('Cannot resolve explicit label reference for non-DOM nodes');\n }\n var _id2 = escape_selector_default(virtualNode.attr('id'));\n doc = get_root_node_default2(virtualNode.actualNode);\n ref = doc.querySelector('label[for=\"' + _id2 + '\"]');\n candidate = ref && visible_default(ref, true);\n if (candidate) {\n return candidate;\n }\n }\n ref = closest_default(virtualNode, 'label');\n candidate = ref && visible_virtual_default(ref, true);\n if (candidate) {\n return candidate;\n }\n return null;\n }\n var label_virtual_default2 = labelVirtual2;\n function label(node) {\n node = get_node_from_tree_default(node);\n return label_virtual_default2(node);\n }\n var label_default = label;\n var nativeElementType = [ {\n matches: [ {\n nodeName: 'textarea'\n }, {\n nodeName: 'input',\n properties: {\n type: [ 'text', 'password', 'search', 'tel', 'email', 'url' ]\n }\n } ],\n namingMethods: 'labelText'\n }, {\n matches: {\n nodeName: 'input',\n properties: {\n type: [ 'button', 'submit', 'reset' ]\n }\n },\n namingMethods: [ 'valueText', 'titleText', 'buttonDefaultText' ]\n }, {\n matches: {\n nodeName: 'input',\n properties: {\n type: 'image'\n }\n },\n namingMethods: [ 'altText', 'valueText', 'labelText', 'titleText', 'buttonDefaultText' ]\n }, {\n matches: 'button',\n namingMethods: 'subtreeText'\n }, {\n matches: 'fieldset',\n namingMethods: 'fieldsetLegendText'\n }, {\n matches: 'OUTPUT',\n namingMethods: 'subtreeText'\n }, {\n matches: [ {\n nodeName: 'select'\n }, {\n nodeName: 'input',\n properties: {\n type: /^(?!text|password|search|tel|email|url|button|submit|reset)/\n }\n } ],\n namingMethods: 'labelText'\n }, {\n matches: 'summary',\n namingMethods: 'subtreeText'\n }, {\n matches: 'figure',\n namingMethods: [ 'figureText', 'titleText' ]\n }, {\n matches: 'img',\n namingMethods: 'altText'\n }, {\n matches: 'table',\n namingMethods: [ 'tableCaptionText', 'tableSummaryText' ]\n }, {\n matches: [ 'hr', 'br' ],\n namingMethods: [ 'titleText', 'singleSpace' ]\n } ];\n var native_element_type_default = nativeElementType;\n function visibleTextNodes(vNode) {\n var parentVisible = _isVisibleOnScreen(vNode);\n var nodes = [];\n vNode.children.forEach(function(child) {\n if (child.actualNode.nodeType === 3) {\n if (parentVisible) {\n nodes.push(child);\n }\n } else {\n nodes = nodes.concat(visibleTextNodes(child));\n }\n });\n return nodes;\n }\n var visible_text_nodes_default = visibleTextNodes;\n var getVisibleChildTextRects = memoize_default(function getVisibleChildTextRectsMemoized(node) {\n var vNode = get_node_from_tree_default(node);\n var nodeRect = vNode.boundingClientRect;\n var clientRects = [];\n var overflowHiddenNodes = get_overflow_hidden_ancestors_default(vNode);\n node.childNodes.forEach(function(textNode) {\n if (textNode.nodeType !== 3 || sanitize_default(textNode.nodeValue) === '') {\n return;\n }\n var contentRects = getContentRects(textNode);\n if (isOutsideNodeBounds(contentRects, nodeRect)) {\n return;\n }\n clientRects.push.apply(clientRects, _toConsumableArray(filterHiddenRects(contentRects, overflowHiddenNodes)));\n });\n return clientRects.length ? clientRects : filterHiddenRects([ nodeRect ], overflowHiddenNodes);\n });\n var get_visible_child_text_rects_default = getVisibleChildTextRects;\n function getContentRects(node) {\n var range2 = document.createRange();\n range2.selectNodeContents(node);\n return Array.from(range2.getClientRects());\n }\n function isOutsideNodeBounds(rects, nodeRect) {\n return rects.some(function(rect) {\n var centerPoint = _getRectCenter(rect);\n return !_isPointInRect(centerPoint, nodeRect);\n });\n }\n function filterHiddenRects(contentRects, overflowHiddenNodes) {\n var visibleRects = [];\n contentRects.forEach(function(contentRect) {\n if (contentRect.width < 1 || contentRect.height < 1) {\n return;\n }\n var visibleRect = overflowHiddenNodes.reduce(function(rect, overflowNode) {\n return rect && _getIntersectionRect(rect, overflowNode.boundingClientRect);\n }, contentRect);\n if (visibleRect) {\n visibleRects.push(visibleRect);\n }\n });\n return visibleRects;\n }\n function getTextElementStack(node) {\n var grid = _getNodeGrid(node);\n if (!grid) {\n return [];\n }\n var clientRects = get_visible_child_text_rects_default(node);\n return clientRects.map(function(rect) {\n return getRectStack(grid, rect);\n });\n }\n var get_text_element_stack_default = getTextElementStack;\n var visualRoles = [ 'checkbox', 'img', 'meter', 'progressbar', 'scrollbar', 'radio', 'slider', 'spinbutton', 'textbox' ];\n function isVisualContent(el) {\n var _nodeLookup18 = _nodeLookup(el), vNode = _nodeLookup18.vNode;\n var role = axe.commons.aria.getExplicitRole(vNode);\n if (role) {\n return visualRoles.indexOf(role) !== -1;\n }\n switch (vNode.props.nodeName) {\n case 'img':\n case 'iframe':\n case 'object':\n case 'video':\n case 'audio':\n case 'canvas':\n case 'svg':\n case 'math':\n case 'button':\n case 'select':\n case 'textarea':\n case 'keygen':\n case 'progress':\n case 'meter':\n return true;\n\n case 'input':\n return vNode.props.type !== 'hidden';\n\n default:\n return false;\n }\n }\n var is_visual_content_default = isVisualContent;\n var hiddenTextElms = [ 'head', 'title', 'template', 'script', 'style', 'iframe', 'object', 'video', 'audio', 'noscript' ];\n function hasChildTextNodes(elm) {\n if (hiddenTextElms.includes(elm.props.nodeName)) {\n return false;\n }\n return elm.children.some(function(_ref51) {\n var props = _ref51.props;\n return props.nodeType === 3 && props.nodeValue.trim();\n });\n }\n function hasContentVirtual(elm, noRecursion, ignoreAria) {\n return hasChildTextNodes(elm) || is_visual_content_default(elm.actualNode) || !ignoreAria && !!label_virtual_default(elm) || !noRecursion && elm.children.some(function(child) {\n return child.actualNode.nodeType === 1 && hasContentVirtual(child);\n });\n }\n var has_content_virtual_default = hasContentVirtual;\n function hasContent(elm, noRecursion, ignoreAria) {\n elm = get_node_from_tree_default(elm);\n return has_content_virtual_default(elm, noRecursion, ignoreAria);\n }\n var has_content_default = hasContent;\n function _hasLangText(virtualNode) {\n if (typeof virtualNode.children === 'undefined' || hasChildTextNodes(virtualNode)) {\n return true;\n }\n if (virtualNode.props.nodeType === 1 && is_visual_content_default(virtualNode)) {\n return !!axe.commons.text.accessibleTextVirtual(virtualNode);\n }\n return virtualNode.children.some(function(child) {\n return !child.attr('lang') && _hasLangText(child) && !_isHiddenForEveryone(child);\n });\n }\n function insertedIntoFocusOrder(el) {\n var tabIndex = parse_tabindex_default(el.getAttribute('tabindex'));\n return tabIndex > -1 && _isFocusable(el) && !is_natively_focusable_default(el);\n }\n var inserted_into_focus_order_default = insertedIntoFocusOrder;\n function isHiddenWithCSS(el, descendentVisibilityValue) {\n var _nodeLookup19 = _nodeLookup(el), vNode = _nodeLookup19.vNode, domNode = _nodeLookup19.domNode;\n if (!vNode) {\n return _isHiddenWithCSS(domNode, descendentVisibilityValue);\n }\n if (vNode._isHiddenWithCSS === void 0) {\n vNode._isHiddenWithCSS = _isHiddenWithCSS(domNode, descendentVisibilityValue);\n }\n return vNode._isHiddenWithCSS;\n }\n function _isHiddenWithCSS(el, descendentVisibilityValue) {\n if (el.nodeType === 9) {\n return false;\n }\n if (el.nodeType === 11) {\n el = el.host;\n }\n if ([ 'STYLE', 'SCRIPT' ].includes(el.nodeName.toUpperCase())) {\n return false;\n }\n var style = window.getComputedStyle(el, null);\n if (!style) {\n throw new Error('Style does not exist for the given element.');\n }\n var displayValue = style.getPropertyValue('display');\n if (displayValue === 'none') {\n return true;\n }\n var HIDDEN_VISIBILITY_VALUES = [ 'hidden', 'collapse' ];\n var visibilityValue = style.getPropertyValue('visibility');\n if (HIDDEN_VISIBILITY_VALUES.includes(visibilityValue) && !descendentVisibilityValue) {\n return true;\n }\n if (HIDDEN_VISIBILITY_VALUES.includes(visibilityValue) && descendentVisibilityValue && HIDDEN_VISIBILITY_VALUES.includes(descendentVisibilityValue)) {\n return true;\n }\n var parent = get_composed_parent_default(el);\n if (parent && !HIDDEN_VISIBILITY_VALUES.includes(visibilityValue)) {\n return isHiddenWithCSS(parent, visibilityValue);\n }\n return false;\n }\n var is_hidden_with_css_default = isHiddenWithCSS;\n function isHTML5(doc) {\n var node = doc.doctype;\n if (node === null) {\n return false;\n }\n return node.name === 'html' && !node.publicId && !node.systemId;\n }\n var is_html5_default = isHTML5;\n function getRoleType(role) {\n var _window;\n if (role instanceof abstract_virtual_node_default || (_window = window) !== null && _window !== void 0 && _window.Node && role instanceof window.Node) {\n role = axe.commons.aria.getRole(role);\n }\n var roleDef = standards_default.ariaRoles[role];\n return (roleDef === null || roleDef === void 0 ? void 0 : roleDef.type) || null;\n }\n var get_role_type_default = getRoleType;\n function walkDomNode(node, functor) {\n if (functor(node.actualNode) !== false) {\n node.children.forEach(function(child) {\n return walkDomNode(child, functor);\n });\n }\n }\n var blockLike = [ 'block', 'list-item', 'table', 'flex', 'grid', 'inline-block' ];\n function isBlock(elm) {\n var display2 = window.getComputedStyle(elm).getPropertyValue('display');\n return blockLike.includes(display2) || display2.substr(0, 6) === 'table-';\n }\n function getBlockParent(node) {\n var parentBlock = get_composed_parent_default(node);\n while (parentBlock && !isBlock(parentBlock)) {\n parentBlock = get_composed_parent_default(parentBlock);\n }\n return get_node_from_tree_default(parentBlock);\n }\n function isInTextBlock(node, options) {\n if (isBlock(node)) {\n return false;\n }\n var virtualParent = getBlockParent(node);\n var parentText = '';\n var widgetText = '';\n var inBrBlock = 0;\n walkDomNode(virtualParent, function(currNode) {\n if (inBrBlock === 2) {\n return false;\n }\n if (currNode.nodeType === 3) {\n parentText += currNode.nodeValue;\n }\n if (currNode.nodeType !== 1) {\n return;\n }\n var nodeName2 = (currNode.nodeName || '').toUpperCase();\n if (currNode === node) {\n inBrBlock = 1;\n }\n if ([ 'BR', 'HR' ].includes(nodeName2)) {\n if (inBrBlock === 0) {\n parentText = '';\n widgetText = '';\n } else {\n inBrBlock = 2;\n }\n } else if (currNode.style.display === 'none' || currNode.style.overflow === 'hidden' || ![ '', null, 'none' ].includes(currNode.style['float']) || ![ '', null, 'relative' ].includes(currNode.style.position)) {\n return false;\n } else if (get_role_type_default(currNode) === 'widget') {\n widgetText += currNode.textContent;\n return false;\n }\n });\n parentText = sanitize_default(parentText);\n if (options !== null && options !== void 0 && options.noLengthCompare) {\n return parentText.length !== 0;\n }\n widgetText = sanitize_default(widgetText);\n return parentText.length > widgetText.length;\n }\n var is_in_text_block_default = isInTextBlock;\n function isModalOpen(options) {\n options = options || {};\n var modalPercent = options.modalPercent || .75;\n if (cache_default.get('isModalOpen')) {\n return cache_default.get('isModalOpen');\n }\n var definiteModals = query_selector_all_filter_default(axe._tree[0], 'dialog, [role=dialog], [aria-modal=true]', _isVisibleOnScreen);\n if (definiteModals.length) {\n cache_default.set('isModalOpen', true);\n return true;\n }\n var viewport = get_viewport_size_default(window);\n var percentWidth = viewport.width * modalPercent;\n var percentHeight = viewport.height * modalPercent;\n var x = (viewport.width - percentWidth) / 2;\n var y = (viewport.height - percentHeight) / 2;\n var points = [ {\n x: x,\n y: y\n }, {\n x: viewport.width - x,\n y: y\n }, {\n x: viewport.width / 2,\n y: viewport.height / 2\n }, {\n x: x,\n y: viewport.height - y\n }, {\n x: viewport.width - x,\n y: viewport.height - y\n } ];\n var stacks = points.map(function(point) {\n return Array.from(document.elementsFromPoint(point.x, point.y));\n });\n var _loop7 = function _loop7() {\n var modalElement = stacks[i].find(function(elm) {\n var style = window.getComputedStyle(elm);\n return parseInt(style.width, 10) >= percentWidth && parseInt(style.height, 10) >= percentHeight && style.getPropertyValue('pointer-events') !== 'none' && (style.position === 'absolute' || style.position === 'fixed');\n });\n if (modalElement && stacks.every(function(stack) {\n return stack.includes(modalElement);\n })) {\n cache_default.set('isModalOpen', true);\n return {\n v: true\n };\n }\n }, _ret3;\n for (var i = 0; i < stacks.length; i++) {\n _ret3 = _loop7();\n if (_ret3) {\n return _ret3.v;\n }\n }\n cache_default.set('isModalOpen', void 0);\n return void 0;\n }\n var is_modal_open_default = isModalOpen;\n function _isMultiline(domNode) {\n var margin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;\n var range2 = domNode.ownerDocument.createRange();\n range2.setStart(domNode, 0);\n range2.setEnd(domNode, domNode.childNodes.length);\n var lastLineEnd = 0;\n var lineCount = 0;\n var _iterator0 = _createForOfIteratorHelper(range2.getClientRects()), _step0;\n try {\n for (_iterator0.s(); !(_step0 = _iterator0.n()).done; ) {\n var rect = _step0.value;\n if (rect.height <= margin) {\n continue;\n }\n if (lastLineEnd > rect.top + margin) {\n lastLineEnd = Math.max(lastLineEnd, rect.bottom);\n } else if (lineCount === 0) {\n lastLineEnd = rect.bottom;\n lineCount++;\n } else {\n return true;\n }\n }\n } catch (err) {\n _iterator0.e(err);\n } finally {\n _iterator0.f();\n }\n return false;\n }\n function isNode(element) {\n return element instanceof window.Node;\n }\n var is_node_default = isNode;\n var cacheKey = 'color.incompleteData';\n var incompleteData = {\n set: function set(key, reason) {\n if (typeof key !== 'string') {\n throw new Error('Incomplete data: key must be a string');\n }\n var data = cache_default.get(cacheKey, function() {\n return {};\n });\n if (reason) {\n data[key] = reason;\n }\n return data[key];\n },\n get: function get(key) {\n var data = cache_default.get(cacheKey);\n return data === null || data === void 0 ? void 0 : data[key];\n },\n clear: function clear() {\n cache_default.set(cacheKey, {});\n }\n };\n var incomplete_data_default = incompleteData;\n function elementHasImage(elm, style) {\n var graphicNodes = [ 'IMG', 'CANVAS', 'OBJECT', 'IFRAME', 'VIDEO', 'SVG' ];\n var nodeName2 = elm.nodeName.toUpperCase();\n if (graphicNodes.includes(nodeName2)) {\n incomplete_data_default.set('bgColor', 'imgNode');\n return true;\n }\n style = style || window.getComputedStyle(elm);\n var bgImageStyle = style.getPropertyValue('background-image');\n var hasBgImage = bgImageStyle !== 'none';\n if (hasBgImage) {\n var hasGradient = /gradient/.test(bgImageStyle);\n incomplete_data_default.set('bgColor', hasGradient ? 'bgGradient' : 'bgImage');\n }\n return hasBgImage;\n }\n var element_has_image_default = elementHasImage;\n var hexRegex = /^#[0-9a-f]{3,8}$/i;\n var hslRegex = /hsl\\(\\s*([-\\d.]+)(rad|turn)/;\n var _Color2 = (_r = new WeakMap(), _g = new WeakMap(), _b = new WeakMap(), _red = new WeakMap(), \n _green = new WeakMap(), _blue = new WeakMap(), _Class3_brand = new WeakSet(), \n function() {\n function Color2(red, green, blue) {\n var alpha = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1;\n _classCallCheck(this, Color2);\n _classPrivateMethodInitSpec(this, _Class3_brand);\n _classPrivateFieldInitSpec(this, _r, void 0);\n _classPrivateFieldInitSpec(this, _g, void 0);\n _classPrivateFieldInitSpec(this, _b, void 0);\n _classPrivateFieldInitSpec(this, _red, void 0);\n _classPrivateFieldInitSpec(this, _green, void 0);\n _classPrivateFieldInitSpec(this, _blue, void 0);\n if (red instanceof _Color2) {\n var r = red.r, g2 = red.g, b2 = red.b;\n this.r = r;\n this.g = g2;\n this.b = b2;\n this.alpha = red.alpha;\n return;\n }\n this.red = red;\n this.green = green;\n this.blue = blue;\n this.alpha = alpha;\n }\n return _createClass(Color2, [ {\n key: 'r',\n get: function get() {\n return _classPrivateFieldGet(_r, this);\n },\n set: function set(value) {\n _classPrivateFieldSet(_r, this, value);\n _classPrivateFieldSet(_red, this, Math.round(clamp(value, 0, 1) * 255));\n }\n }, {\n key: 'g',\n get: function get() {\n return _classPrivateFieldGet(_g, this);\n },\n set: function set(value) {\n _classPrivateFieldSet(_g, this, value);\n _classPrivateFieldSet(_green, this, Math.round(clamp(value, 0, 1) * 255));\n }\n }, {\n key: 'b',\n get: function get() {\n return _classPrivateFieldGet(_b, this);\n },\n set: function set(value) {\n _classPrivateFieldSet(_b, this, value);\n _classPrivateFieldSet(_blue, this, Math.round(clamp(value, 0, 1) * 255));\n }\n }, {\n key: 'red',\n get: function get() {\n return _classPrivateFieldGet(_red, this);\n },\n set: function set(value) {\n _classPrivateFieldSet(_r, this, value / 255);\n _classPrivateFieldSet(_red, this, clamp(value, 0, 255));\n }\n }, {\n key: 'green',\n get: function get() {\n return _classPrivateFieldGet(_green, this);\n },\n set: function set(value) {\n _classPrivateFieldSet(_g, this, value / 255);\n _classPrivateFieldSet(_green, this, clamp(value, 0, 255));\n }\n }, {\n key: 'blue',\n get: function get() {\n return _classPrivateFieldGet(_blue, this);\n },\n set: function set(value) {\n _classPrivateFieldSet(_b, this, value / 255);\n _classPrivateFieldSet(_blue, this, clamp(value, 0, 255));\n }\n }, {\n key: 'toHexString',\n value: function toHexString() {\n var redString = Math.round(this.red).toString(16);\n var greenString = Math.round(this.green).toString(16);\n var blueString = Math.round(this.blue).toString(16);\n return '#' + (this.red > 15.5 ? redString : '0' + redString) + (this.green > 15.5 ? greenString : '0' + greenString) + (this.blue > 15.5 ? blueString : '0' + blueString);\n }\n }, {\n key: 'toJSON',\n value: function toJSON() {\n var red = this.red, green = this.green, blue = this.blue, alpha = this.alpha;\n return {\n red: red,\n green: green,\n blue: blue,\n alpha: alpha\n };\n }\n }, {\n key: 'parseString',\n value: function parseString(colorString) {\n colorString = colorString.replace(hslRegex, function(match, angle, unit) {\n var value = angle + unit;\n switch (unit) {\n case 'rad':\n return match.replace(value, radToDeg(angle));\n\n case 'turn':\n return match.replace(value, turnToDeg(angle));\n }\n });\n try {\n var prototypeArrayFrom;\n if ('Prototype' in window && 'Version' in window.Prototype) {\n prototypeArrayFrom = Array.from;\n Array.from = import_from2['default'];\n }\n var _color2 = new _Color(colorString).to('srgb');\n if (prototypeArrayFrom) {\n Array.from = prototypeArrayFrom;\n prototypeArrayFrom = null;\n }\n this.r = _color2.r;\n this.g = _color2.g;\n this.b = _color2.b;\n this.alpha = +_color2.alpha;\n } catch (_unused2) {\n throw new Error('Unable to parse color \"'.concat(colorString, '\"'));\n }\n return this;\n }\n }, {\n key: 'parseRgbString',\n value: function parseRgbString(colorString) {\n this.parseString(colorString);\n }\n }, {\n key: 'parseHexString',\n value: function parseHexString(colorString) {\n if (!colorString.match(hexRegex) || [ 6, 8 ].includes(colorString.length)) {\n return;\n }\n this.parseString(colorString);\n }\n }, {\n key: 'parseColorFnString',\n value: function parseColorFnString(colorString) {\n this.parseString(colorString);\n }\n }, {\n key: 'getRelativeLuminance',\n value: function getRelativeLuminance() {\n var rSRGB = this.r, gSRGB = this.g, bSRGB = this.b;\n var r = rSRGB <= .03928 ? rSRGB / 12.92 : Math.pow((rSRGB + .055) / 1.055, 2.4);\n var g2 = gSRGB <= .03928 ? gSRGB / 12.92 : Math.pow((gSRGB + .055) / 1.055, 2.4);\n var b2 = bSRGB <= .03928 ? bSRGB / 12.92 : Math.pow((bSRGB + .055) / 1.055, 2.4);\n return .2126 * r + .7152 * g2 + .0722 * b2;\n }\n }, {\n key: 'getLuminosity',\n value: function getLuminosity() {\n return .3 * this.r + .59 * this.g + .11 * this.b;\n }\n }, {\n key: 'setLuminosity',\n value: function setLuminosity(L) {\n var d2 = L - this.getLuminosity();\n return _assertClassBrand(_Class3_brand, this, _add).call(this, d2).clip();\n }\n }, {\n key: 'getSaturation',\n value: function getSaturation() {\n return Math.max(this.r, this.g, this.b) - Math.min(this.r, this.g, this.b);\n }\n }, {\n key: 'setSaturation',\n value: function setSaturation(s) {\n var C = new _Color2(this);\n var colorEntires = [ {\n name: 'r',\n value: C.r\n }, {\n name: 'g',\n value: C.g\n }, {\n name: 'b',\n value: C.b\n } ];\n var _colorEntires$sort = colorEntires.sort(function(a2, b2) {\n return a2.value - b2.value;\n }), _colorEntires$sort2 = _slicedToArray(_colorEntires$sort, 3), Cmin = _colorEntires$sort2[0], Cmid = _colorEntires$sort2[1], Cmax = _colorEntires$sort2[2];\n if (Cmax.value > Cmin.value) {\n Cmid.value = (Cmid.value - Cmin.value) * s / (Cmax.value - Cmin.value);\n Cmax.value = s;\n } else {\n Cmid.value = Cmax.value = 0;\n }\n Cmin.value = 0;\n C[Cmax.name] = Cmax.value;\n C[Cmin.name] = Cmin.value;\n C[Cmid.name] = Cmid.value;\n return C;\n }\n }, {\n key: 'clip',\n value: function clip() {\n var C = new _Color2(this);\n var L = C.getLuminosity();\n var n2 = Math.min(C.r, C.g, C.b);\n var x = Math.max(C.r, C.g, C.b);\n if (n2 < 0) {\n C.r = L + (C.r - L) * L / (L - n2);\n C.g = L + (C.g - L) * L / (L - n2);\n C.b = L + (C.b - L) * L / (L - n2);\n }\n if (x > 1) {\n C.r = L + (C.r - L) * (1 - L) / (x - L);\n C.g = L + (C.g - L) * (1 - L) / (x - L);\n C.b = L + (C.b - L) * (1 - L) / (x - L);\n }\n return C;\n }\n } ]);\n }());\n function _add(value) {\n var C = new _Color2(this);\n C.r += value;\n C.g += value;\n C.b += value;\n return C;\n }\n var color_default = _Color2;\n function clamp(value, min, max2) {\n return Math.min(Math.max(min, value), max2);\n }\n function radToDeg(rad) {\n return rad * 180 / Math.PI;\n }\n function turnToDeg(turn) {\n return turn * 360;\n }\n function getOwnBackgroundColor(elmStyle) {\n var bgColor = new color_default();\n bgColor.parseString(elmStyle.getPropertyValue('background-color'));\n if (bgColor.alpha !== 0) {\n var opacity = elmStyle.getPropertyValue('opacity');\n bgColor.alpha = bgColor.alpha * opacity;\n }\n return bgColor;\n }\n var get_own_background_color_default = getOwnBackgroundColor;\n function isOpaque(node) {\n var style = window.getComputedStyle(node);\n return element_has_image_default(node, style) || get_own_background_color_default(style).alpha === 1;\n }\n var is_opaque_default = isOpaque;\n function _isSkipLink(element) {\n if (!element.href) {\n return false;\n }\n var firstPageLink = cache_default.get('firstPageLink', generateFirstPageLink);\n if (!firstPageLink) {\n return true;\n }\n return element.compareDocumentPosition(firstPageLink.actualNode) === element.DOCUMENT_POSITION_FOLLOWING;\n }\n function generateFirstPageLink() {\n var firstPageLink;\n if (!window.location.origin) {\n firstPageLink = query_selector_all_default(axe._tree, 'a:not([href^=\"#\"]):not([href^=\"/#\"]):not([href^=\"javascript:\"])')[0];\n } else {\n firstPageLink = query_selector_all_default(axe._tree, 'a[href]:not([href^=\"javascript:\"])').find(function(link) {\n return !_isCurrentPageLink(link.actualNode);\n });\n }\n return firstPageLink || null;\n }\n var clipRegex2 = /rect\\s*\\(([0-9]+)px,?\\s*([0-9]+)px,?\\s*([0-9]+)px,?\\s*([0-9]+)px\\s*\\)/;\n var clipPathRegex2 = /(\\w+)\\((\\d+)/;\n function isClipped(style) {\n var matchesClip = style.getPropertyValue('clip').match(clipRegex2);\n var matchesClipPath = style.getPropertyValue('clip-path').match(clipPathRegex2);\n if (matchesClip && matchesClip.length === 5) {\n var position = style.getPropertyValue('position');\n if ([ 'fixed', 'absolute' ].includes(position)) {\n return matchesClip[3] - matchesClip[1] <= 0 && matchesClip[2] - matchesClip[4] <= 0;\n }\n }\n if (matchesClipPath) {\n var type2 = matchesClipPath[1];\n var value = parseInt(matchesClipPath[2], 10);\n switch (type2) {\n case 'inset':\n return value >= 50;\n\n case 'circle':\n return value === 0;\n\n default:\n }\n }\n return false;\n }\n function isAreaVisible(el, screenReader, recursed) {\n var mapEl = find_up_default(el, 'map');\n if (!mapEl) {\n return false;\n }\n var mapElName = mapEl.getAttribute('name');\n if (!mapElName) {\n return false;\n }\n var mapElRootNode = get_root_node_default2(el);\n if (!mapElRootNode || mapElRootNode.nodeType !== 9) {\n return false;\n }\n var refs = query_selector_all_default(axe._tree, 'img[usemap=\"#'.concat(escape_selector_default(mapElName), '\"]'));\n if (!refs || !refs.length) {\n return false;\n }\n return refs.some(function(_ref52) {\n var actualNode = _ref52.actualNode;\n return isVisible(actualNode, screenReader, recursed);\n });\n }\n function isVisible(el, screenReader, recursed) {\n var _window$Node2;\n if (!el) {\n throw new TypeError('Cannot determine if element is visible for non-DOM nodes');\n }\n var vNode = el instanceof abstract_virtual_node_default ? el : get_node_from_tree_default(el);\n el = vNode ? vNode.actualNode : el;\n var cacheName = '_isVisible' + (screenReader ? 'ScreenReader' : '');\n var _ref53 = (_window$Node2 = window.Node) !== null && _window$Node2 !== void 0 ? _window$Node2 : {}, DOCUMENT_NODE = _ref53.DOCUMENT_NODE, DOCUMENT_FRAGMENT_NODE = _ref53.DOCUMENT_FRAGMENT_NODE;\n var nodeType = vNode ? vNode.props.nodeType : el.nodeType;\n var nodeName2 = vNode ? vNode.props.nodeName : el.nodeName.toLowerCase();\n if (vNode && typeof vNode[cacheName] !== 'undefined') {\n return vNode[cacheName];\n }\n if (nodeType === DOCUMENT_NODE) {\n return true;\n }\n if ([ 'style', 'script', 'noscript', 'template' ].includes(nodeName2)) {\n return false;\n }\n if (el && nodeType === DOCUMENT_FRAGMENT_NODE) {\n el = el.host;\n }\n if (screenReader) {\n var ariaHiddenValue = vNode ? vNode.attr('aria-hidden') : el.getAttribute('aria-hidden');\n if (ariaHiddenValue === 'true') {\n return false;\n }\n }\n if (!el) {\n var parent2 = vNode.parent;\n var visible3 = true;\n if (parent2) {\n visible3 = isVisible(parent2, screenReader, true);\n }\n if (vNode) {\n vNode[cacheName] = visible3;\n }\n return visible3;\n }\n var style = window.getComputedStyle(el, null);\n if (style === null) {\n return false;\n }\n if (nodeName2 === 'area') {\n return isAreaVisible(el, screenReader, recursed);\n }\n if (style.getPropertyValue('display') === 'none') {\n return false;\n }\n var elHeight = parseInt(style.getPropertyValue('height'));\n var elWidth = parseInt(style.getPropertyValue('width'));\n var scroll = get_scroll_default(el);\n var scrollableWithZeroHeight = scroll && elHeight === 0;\n var scrollableWithZeroWidth = scroll && elWidth === 0;\n var posAbsoluteOverflowHiddenAndSmall = style.getPropertyValue('position') === 'absolute' && (elHeight < 2 || elWidth < 2) && style.getPropertyValue('overflow') === 'hidden';\n if (!screenReader && (isClipped(style) || style.getPropertyValue('opacity') === '0' || scrollableWithZeroHeight || scrollableWithZeroWidth || posAbsoluteOverflowHiddenAndSmall)) {\n return false;\n }\n if (!recursed && (style.getPropertyValue('visibility') === 'hidden' || !screenReader && is_offscreen_default(el))) {\n return false;\n }\n var parent = el.assignedSlot ? el.assignedSlot : el.parentNode;\n var visible2 = false;\n if (parent) {\n visible2 = isVisible(parent, screenReader, true);\n }\n if (vNode) {\n vNode[cacheName] = visible2;\n }\n return visible2;\n }\n var is_visible_default = isVisible;\n function reduceToElementsBelowFloating(elements, targetNode) {\n var floatingPositions = [ 'fixed', 'sticky' ];\n var finalElements = [];\n var targetFound = false;\n for (var index = 0; index < elements.length; ++index) {\n var currentNode = elements[index];\n if (currentNode === targetNode) {\n targetFound = true;\n }\n var style = window.getComputedStyle(currentNode);\n if (!targetFound && floatingPositions.indexOf(style.position) !== -1) {\n finalElements = [];\n continue;\n }\n finalElements.push(currentNode);\n }\n return finalElements;\n }\n var reduce_to_elements_below_floating_default = reduceToElementsBelowFloating;\n function _visuallyContains(node, parent) {\n var parentScrollAncestor = getScrollAncestor(parent);\n do {\n var nextScrollAncestor = getScrollAncestor(node);\n if (nextScrollAncestor === parentScrollAncestor || nextScrollAncestor === parent) {\n return contains2(node, parent);\n }\n node = nextScrollAncestor;\n } while (node);\n return false;\n }\n function getScrollAncestor(node) {\n var vNode = get_node_from_tree_default(node);\n var ancestor = vNode.parent;\n while (ancestor) {\n if (get_scroll_default(ancestor.actualNode)) {\n return ancestor.actualNode;\n }\n ancestor = ancestor.parent;\n }\n }\n function contains2(node, parent) {\n var style = window.getComputedStyle(parent);\n var overflow = style.getPropertyValue('overflow');\n if (style.getPropertyValue('display') === 'inline') {\n return true;\n }\n var clientRects = Array.from(node.getClientRects());\n var boundingRect = parent.getBoundingClientRect();\n var rect = {\n left: boundingRect.left,\n top: boundingRect.top,\n width: boundingRect.width,\n height: boundingRect.height\n };\n if ([ 'scroll', 'auto' ].includes(overflow) || parent instanceof window.HTMLHtmlElement) {\n rect.width = parent.scrollWidth;\n rect.height = parent.scrollHeight;\n }\n if (clientRects.length === 1 && overflow === 'hidden' && style.getPropertyValue('white-space') === 'nowrap') {\n clientRects[0] = rect;\n }\n return clientRects.some(function(clientRect) {\n return !(Math.ceil(clientRect.left) < Math.floor(rect.left) || Math.ceil(clientRect.top) < Math.floor(rect.top) || Math.floor(clientRect.left + clientRect.width) > Math.ceil(rect.left + rect.width) || Math.floor(clientRect.top + clientRect.height) > Math.ceil(rect.top + rect.height));\n });\n }\n function shadowElementsFromPoint(nodeX, nodeY) {\n var root = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : document;\n var i = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;\n if (i > 999) {\n throw new Error('Infinite loop detected');\n }\n return Array.from(root.elementsFromPoint(nodeX, nodeY) || []).filter(function(nodes) {\n return get_root_node_default2(nodes) === root;\n }).reduce(function(stack, elm) {\n if (is_shadow_root_default(elm)) {\n var shadowStack = shadowElementsFromPoint(nodeX, nodeY, elm.shadowRoot, i + 1);\n stack = stack.concat(shadowStack);\n if (stack.length && _visuallyContains(stack[0], elm)) {\n stack.push(elm);\n }\n } else {\n stack.push(elm);\n }\n return stack;\n }, []);\n }\n var shadow_elements_from_point_default = shadowElementsFromPoint;\n function urlPropsFromAttribute(node, attribute) {\n if (!node.hasAttribute(attribute)) {\n return void 0;\n }\n var nodeName2 = node.nodeName.toUpperCase();\n var parser2 = node;\n if (![ 'A', 'AREA' ].includes(nodeName2) || node.ownerSVGElement) {\n parser2 = document.createElement('a');\n parser2.href = node.getAttribute(attribute);\n }\n var protocol = [ 'https:', 'ftps:' ].includes(parser2.protocol) ? parser2.protocol.replace(/s:$/, ':') : parser2.protocol;\n var parserPathname = /^\\//.test(parser2.pathname) ? parser2.pathname : '/'.concat(parser2.pathname);\n var _getPathnameOrFilenam = getPathnameOrFilename(parserPathname), pathname = _getPathnameOrFilenam.pathname, filename = _getPathnameOrFilenam.filename;\n return {\n protocol: protocol,\n hostname: parser2.hostname,\n port: getPort(parser2.port),\n pathname: /\\/$/.test(pathname) ? pathname : ''.concat(pathname, '/'),\n search: getSearchPairs(parser2.search),\n hash: getHashRoute(parser2.hash),\n filename: filename\n };\n }\n function getPort(port) {\n var excludePorts = [ '443', '80' ];\n return !excludePorts.includes(port) ? port : '';\n }\n function getPathnameOrFilename(pathname) {\n var filename = pathname.split('/').pop();\n if (!filename || filename.indexOf('.') === -1) {\n return {\n pathname: pathname,\n filename: ''\n };\n }\n return {\n pathname: pathname.replace(filename, ''),\n filename: /index./.test(filename) ? '' : filename\n };\n }\n function getSearchPairs(searchStr) {\n var query = {};\n if (!searchStr || !searchStr.length) {\n return query;\n }\n var pairs = searchStr.substring(1).split('&');\n if (!pairs || !pairs.length) {\n return query;\n }\n for (var index = 0; index < pairs.length; index++) {\n var pair = pairs[index];\n var _pair$split = pair.split('='), _pair$split2 = _slicedToArray(_pair$split, 2), _key6 = _pair$split2[0], _pair$split2$ = _pair$split2[1], value = _pair$split2$ === void 0 ? '' : _pair$split2$;\n query[decodeURIComponent(_key6)] = decodeURIComponent(value);\n }\n return query;\n }\n function getHashRoute(hash) {\n if (!hash) {\n return '';\n }\n var hashRegex = /#!?\\/?/g;\n var hasMatch = hash.match(hashRegex);\n if (!hasMatch) {\n return '';\n }\n var _hasMatch = _slicedToArray(hasMatch, 1), matchedStr = _hasMatch[0];\n if (matchedStr === '#') {\n return '';\n }\n return hash;\n }\n var url_props_from_attribute_default = urlPropsFromAttribute;\n function visuallyOverlaps(rect, parent) {\n var parentRect = parent.getBoundingClientRect();\n var parentTop = parentRect.top;\n var parentLeft = parentRect.left;\n var parentScrollArea = {\n top: parentTop - parent.scrollTop,\n bottom: parentTop - parent.scrollTop + parent.scrollHeight,\n left: parentLeft - parent.scrollLeft,\n right: parentLeft - parent.scrollLeft + parent.scrollWidth\n };\n if (rect.left > parentScrollArea.right && rect.left > parentRect.right || rect.top > parentScrollArea.bottom && rect.top > parentRect.bottom || rect.right < parentScrollArea.left && rect.right < parentRect.left || rect.bottom < parentScrollArea.top && rect.bottom < parentRect.top) {\n return false;\n }\n var style = window.getComputedStyle(parent);\n if (rect.left > parentRect.right || rect.top > parentRect.bottom) {\n return style.overflow === 'scroll' || style.overflow === 'auto' || parent instanceof window.HTMLBodyElement || parent instanceof window.HTMLHtmlElement;\n }\n return true;\n }\n var visually_overlaps_default = visuallyOverlaps;\n var nodeIndex2 = 0;\n var VirtualNode = function(_abstract_virtual_nod) {\n function VirtualNode(node, parent, shadowId) {\n var _this4;\n _classCallCheck(this, VirtualNode);\n _this4 = _callSuper(this, VirtualNode);\n _this4.shadowId = shadowId;\n _this4.children = [];\n _this4.actualNode = node;\n _this4.parent = parent;\n if (!parent) {\n nodeIndex2 = 0;\n }\n _this4.nodeIndex = nodeIndex2++;\n _this4._isHidden = null;\n _this4._cache = {};\n _this4._isXHTML = is_xhtml_default(node.ownerDocument);\n if (node.nodeName.toLowerCase() === 'input') {\n var type2 = node.getAttribute('type');\n type2 = _this4._isXHTML ? type2 : (type2 || '').toLowerCase();\n if (!valid_input_type_default().includes(type2)) {\n type2 = 'text';\n }\n _this4._type = type2;\n }\n if (cache_default.get('nodeMap')) {\n cache_default.get('nodeMap').set(node, _this4);\n }\n return _this4;\n }\n _inherits(VirtualNode, _abstract_virtual_nod);\n return _createClass(VirtualNode, [ {\n key: 'props',\n get: function get() {\n if (!this._cache.hasOwnProperty('props')) {\n var _this$actualNode = this.actualNode, nodeType = _this$actualNode.nodeType, nodeName2 = _this$actualNode.nodeName, _id3 = _this$actualNode.id, nodeValue = _this$actualNode.nodeValue;\n this._cache.props = {\n nodeType: nodeType,\n nodeName: this._isXHTML ? nodeName2 : nodeName2.toLowerCase(),\n id: _id3,\n type: this._type,\n nodeValue: nodeValue\n };\n if (nodeType === 1) {\n this._cache.props.multiple = this.actualNode.multiple;\n this._cache.props.value = this.actualNode.value;\n this._cache.props.selected = this.actualNode.selected;\n this._cache.props.checked = this.actualNode.checked;\n this._cache.props.indeterminate = this.actualNode.indeterminate;\n }\n }\n return this._cache.props;\n }\n }, {\n key: 'attr',\n value: function attr(attrName) {\n if (typeof this.actualNode.getAttribute !== 'function') {\n return null;\n }\n return this.actualNode.getAttribute(attrName);\n }\n }, {\n key: 'hasAttr',\n value: function hasAttr(attrName) {\n if (typeof this.actualNode.hasAttribute !== 'function') {\n return false;\n }\n return this.actualNode.hasAttribute(attrName);\n }\n }, {\n key: 'attrNames',\n get: function get() {\n if (!this._cache.hasOwnProperty('attrNames')) {\n var attrs;\n if (this.actualNode.attributes instanceof window.NamedNodeMap) {\n attrs = this.actualNode.attributes;\n } else {\n attrs = this.actualNode.cloneNode(false).attributes;\n }\n this._cache.attrNames = Array.from(attrs).map(function(attr) {\n return attr.name;\n });\n }\n return this._cache.attrNames;\n }\n }, {\n key: 'getComputedStylePropertyValue',\n value: function getComputedStylePropertyValue(property) {\n var key = 'computedStyle_' + property;\n if (!this._cache.hasOwnProperty(key)) {\n if (!this._cache.hasOwnProperty('computedStyle')) {\n this._cache.computedStyle = window.getComputedStyle(this.actualNode);\n }\n this._cache[key] = this._cache.computedStyle.getPropertyValue(property);\n }\n return this._cache[key];\n }\n }, {\n key: 'isFocusable',\n get: function get() {\n if (!this._cache.hasOwnProperty('isFocusable')) {\n this._cache.isFocusable = _isFocusable(this.actualNode);\n }\n return this._cache.isFocusable;\n }\n }, {\n key: 'tabbableElements',\n get: function get() {\n if (!this._cache.hasOwnProperty('tabbableElements')) {\n this._cache.tabbableElements = get_tabbable_elements_default(this);\n }\n return this._cache.tabbableElements;\n }\n }, {\n key: 'clientRects',\n get: function get() {\n if (!this._cache.hasOwnProperty('clientRects')) {\n this._cache.clientRects = Array.from(this.actualNode.getClientRects()).filter(function(rect) {\n return rect.width > 0;\n });\n }\n return this._cache.clientRects;\n }\n }, {\n key: 'boundingClientRect',\n get: function get() {\n if (!this._cache.hasOwnProperty('boundingClientRect')) {\n this._cache.boundingClientRect = this.actualNode.getBoundingClientRect();\n }\n return this._cache.boundingClientRect;\n }\n } ]);\n }(abstract_virtual_node_default);\n var virtual_node_default = VirtualNode;\n var CACHE_KEY = 'DqElm.RunOptions';\n function getOuterHtml(element) {\n var source = element.outerHTML;\n if (!source && typeof window.XMLSerializer === 'function') {\n source = new window.XMLSerializer().serializeToString(element);\n }\n return source || '';\n }\n function truncateElement(element) {\n var maxLen = 300;\n var maxAttrNameOrValueLen = 20;\n var deepStr = getOuterHtml(element);\n var vNode = get_node_from_tree_default(element);\n if (!vNode) {\n vNode = new virtual_node_default(element);\n }\n var nodeName2 = vNode.props.nodeName;\n if (deepStr.length < maxLen) {\n return deepStr;\n }\n var attributeStrList = [];\n var shallowNode = element.cloneNode(false);\n var elementNodeMap = get_node_attributes_default(shallowNode);\n var str = getOuterHtml(shallowNode);\n if (str.length < maxLen) {\n var attrString = '';\n var _iterator1 = _createForOfIteratorHelper(elementNodeMap), _step1;\n try {\n for (_iterator1.s(); !(_step1 = _iterator1.n()).done; ) {\n var _step1$value = _step1.value, name = _step1$value.name, value = _step1$value.value;\n var attr = {\n name: name,\n value: value\n };\n attrString += ' '.concat(attr.name, '=\"').concat(attr.value, '\"');\n }\n } catch (err) {\n _iterator1.e(err);\n } finally {\n _iterator1.f();\n }\n str = '<'.concat(nodeName2).concat(attrString, '>');\n return str;\n }\n var strLen = '<'.concat(nodeName2, '>').length;\n var _iterator10 = _createForOfIteratorHelper(elementNodeMap), _step10;\n try {\n for (_iterator10.s(); !(_step10 = _iterator10.n()).done; ) {\n var _step10$value = _step10.value, _name = _step10$value.name, _value = _step10$value.value;\n if (strLen > maxLen) {\n break;\n }\n var _attr = {\n name: _name,\n value: _value\n };\n var attrName = _attr.name;\n var attrValue = _attr.value;\n attrName = attrName.length > maxAttrNameOrValueLen ? attrName.substring(0, maxAttrNameOrValueLen) + '...' : attrName;\n attrValue = attrValue.length > maxAttrNameOrValueLen ? attrValue.substring(0, maxAttrNameOrValueLen) + '...' : attrValue;\n var strAttr = ''.concat(attrName, '=\"').concat(attrValue, '\"');\n strLen += (' ' + strAttr).length;\n attributeStrList.push(strAttr);\n }\n } catch (err) {\n _iterator10.e(err);\n } finally {\n _iterator10.f();\n }\n str = '<'.concat(nodeName2, ' ').concat(attributeStrList.join(' '), '>');\n if (str.length > maxLen) {\n str = str.substring(0, maxLen) + ' ...>';\n } else if (attributeStrList.length < elementNodeMap.length) {\n str = str.substring(0, str.length - 1) + ' ...>';\n }\n return str;\n }\n function getSource(element) {\n if (!element) {\n return '';\n }\n return truncateElement(element);\n }\n var DqElement = memoize_default(function DqElement2(elm, options, spec) {\n var _this$spec$selector, _this$_virtualNode;\n options !== null && options !== void 0 ? options : options = null;\n spec !== null && spec !== void 0 ? spec : spec = {};\n if (!options) {\n var _cache_default$get;\n options = (_cache_default$get = cache_default.get(CACHE_KEY)) !== null && _cache_default$get !== void 0 ? _cache_default$get : {};\n }\n this.spec = spec;\n if (elm instanceof abstract_virtual_node_default) {\n this._virtualNode = elm;\n this._element = elm.actualNode;\n } else {\n this._element = elm;\n this._virtualNode = get_node_from_tree_default(elm);\n }\n this.fromFrame = ((_this$spec$selector = this.spec.selector) === null || _this$spec$selector === void 0 ? void 0 : _this$spec$selector.length) > 1;\n this._includeElementInJson = options.elementRef;\n if (options.absolutePaths) {\n this._options = {\n toRoot: true\n };\n }\n this.nodeIndexes = [];\n if (Array.isArray(this.spec.nodeIndexes)) {\n this.nodeIndexes = this.spec.nodeIndexes;\n } else if (typeof ((_this$_virtualNode = this._virtualNode) === null || _this$_virtualNode === void 0 ? void 0 : _this$_virtualNode.nodeIndex) === 'number') {\n this.nodeIndexes = [ this._virtualNode.nodeIndex ];\n }\n this.source = null;\n if (!axe._audit.noHtml) {\n var _this$spec$source;\n this.source = (_this$spec$source = this.spec.source) !== null && _this$spec$source !== void 0 ? _this$spec$source : getSource(this._element);\n }\n return this;\n });\n DqElement.prototype = {\n get selector() {\n return this.spec.selector || [ get_selector_default(this.element, this._options) ];\n },\n get ancestry() {\n return this.spec.ancestry || [ _getAncestry(this.element) ];\n },\n get xpath() {\n return this.spec.xpath || [ get_xpath_default(this.element) ];\n },\n get element() {\n return this._element;\n },\n toJSON: function toJSON() {\n var spec = {\n selector: this.selector,\n source: this.source,\n xpath: this.xpath,\n ancestry: this.ancestry,\n nodeIndexes: this.nodeIndexes,\n fromFrame: this.fromFrame\n };\n if (this._includeElementInJson) {\n spec.element = this._element;\n }\n return spec;\n }\n };\n DqElement.fromFrame = function fromFrame(node, options, frame) {\n var spec = DqElement.mergeSpecs(node, frame);\n return new DqElement(frame.element, options, spec);\n };\n DqElement.mergeSpecs = function mergeSpecs(child, parentFrame) {\n return _extends({}, child, {\n selector: [].concat(_toConsumableArray(parentFrame.selector), _toConsumableArray(child.selector)),\n ancestry: [].concat(_toConsumableArray(parentFrame.ancestry), _toConsumableArray(child.ancestry)),\n xpath: [].concat(_toConsumableArray(parentFrame.xpath), _toConsumableArray(child.xpath)),\n nodeIndexes: [].concat(_toConsumableArray(parentFrame.nodeIndexes), _toConsumableArray(child.nodeIndexes)),\n fromFrame: true\n });\n };\n DqElement.setRunOptions = function setRunOptions(_ref54) {\n var elementRef = _ref54.elementRef, absolutePaths = _ref54.absolutePaths;\n cache_default.set(CACHE_KEY, {\n elementRef: elementRef,\n absolutePaths: absolutePaths\n });\n };\n var dq_element_default = DqElement;\n function checkHelper(checkResult, options, resolve, reject) {\n return {\n isAsync: false,\n async: function async() {\n this.isAsync = true;\n return function(result) {\n if (result instanceof Error === false) {\n checkResult.result = result;\n resolve(checkResult);\n } else {\n reject(result);\n }\n };\n },\n data: function data(_data) {\n checkResult.data = _data;\n },\n relatedNodes: function relatedNodes(nodes) {\n if (!window.Node) {\n return;\n }\n if (nodes instanceof window.Node || nodes instanceof abstract_virtual_node_default) {\n nodes = [ nodes ];\n } else {\n nodes = to_array_default(nodes);\n }\n checkResult.relatedNodes = [];\n nodes.forEach(function(node) {\n if (node instanceof abstract_virtual_node_default) {\n node = node.actualNode;\n }\n if (node instanceof window.Node) {\n var dqElm = new dq_element_default(node);\n checkResult.relatedNodes.push(dqElm);\n }\n });\n }\n };\n }\n var check_helper_default = checkHelper;\n function clone2(obj) {\n return cloneRecused(obj, new Map());\n }\n function cloneRecused(obj, seen) {\n var _window2, _window3;\n if (obj === null || _typeof(obj) !== 'object') {\n return obj;\n }\n if ((_window2 = window) !== null && _window2 !== void 0 && _window2.Node && obj instanceof window.Node || (_window3 = window) !== null && _window3 !== void 0 && _window3.HTMLCollection && obj instanceof window.HTMLCollection || 'nodeName' in obj && 'nodeType' in obj && 'ownerDocument' in obj) {\n return obj;\n }\n if (seen.has(obj)) {\n return seen.get(obj);\n }\n if (Array.isArray(obj)) {\n var out2 = [];\n seen.set(obj, out2);\n obj.forEach(function(value) {\n out2.push(cloneRecused(value, seen));\n });\n return out2;\n }\n var out = {};\n seen.set(obj, out);\n for (var _key7 in obj) {\n out[_key7] = cloneRecused(obj[_key7], seen);\n }\n return out;\n }\n var parser = new import_css_selector_parser.CssSelectorParser();\n parser.registerSelectorPseudos('not');\n parser.registerSelectorPseudos('is');\n parser.registerNestingOperators('>');\n parser.registerAttrEqualityMods('^', '$', '*', '~');\n var css_parser_default = parser;\n function _matches(vNode, selector) {\n var expressions = _convertSelector(selector);\n return expressions.some(function(expression) {\n return _matchesExpression(vNode, expression);\n });\n }\n function matchesTag(vNode, exp) {\n return vNode.props.nodeType === 1 && (exp.tag === '*' || vNode.props.nodeName === exp.tag);\n }\n function matchesClasses(vNode, exp) {\n return !exp.classes || exp.classes.every(function(cl) {\n return vNode.hasClass(cl.value);\n });\n }\n function matchesAttributes(vNode, exp) {\n return !exp.attributes || exp.attributes.every(function(att) {\n var nodeAtt = vNode.attr(att.key);\n return nodeAtt !== null && att.test(nodeAtt);\n });\n }\n function matchesId(vNode, exp) {\n return !exp.id || vNode.props.id === exp.id;\n }\n function matchesPseudos(target, exp) {\n if (!exp.pseudos || exp.pseudos.every(function(pseudo) {\n if (pseudo.name === 'not') {\n return !pseudo.expressions.some(function(expression) {\n return _matchesExpression(target, expression);\n });\n } else if (pseudo.name === 'is') {\n return pseudo.expressions.some(function(expression) {\n return _matchesExpression(target, expression);\n });\n }\n throw new Error('the pseudo selector ' + pseudo.name + ' has not yet been implemented');\n })) {\n return true;\n }\n return false;\n }\n function matchExpression(vNode, expression) {\n return matchesTag(vNode, expression) && matchesClasses(vNode, expression) && matchesAttributes(vNode, expression) && matchesId(vNode, expression) && matchesPseudos(vNode, expression);\n }\n var escapeRegExp = function() {\n var from = /(?=[\\-\\[\\]{}()*+?.\\\\\\^$|,#\\s])/g;\n var to2 = '\\\\';\n return function(string) {\n return string.replace(from, to2);\n };\n }();\n var reUnescape = /\\\\/g;\n function convertAttributes(atts) {\n if (!atts) {\n return;\n }\n return atts.map(function(att) {\n var attributeKey = att.name.replace(reUnescape, '');\n var attributeValue = (att.value || '').replace(reUnescape, '');\n var test, regexp;\n switch (att.operator) {\n case '^=':\n regexp = new RegExp('^' + escapeRegExp(attributeValue));\n break;\n\n case '$=':\n regexp = new RegExp(escapeRegExp(attributeValue) + '$');\n break;\n\n case '~=':\n regexp = new RegExp('(^|\\\\s)' + escapeRegExp(attributeValue) + '(\\\\s|$)');\n break;\n\n case '|=':\n regexp = new RegExp('^' + escapeRegExp(attributeValue) + '(-|$)');\n break;\n\n case '=':\n test = function test(value) {\n return attributeValue === value;\n };\n break;\n\n case '*=':\n test = function test(value) {\n return value && value.includes(attributeValue);\n };\n break;\n\n case '!=':\n test = function test(value) {\n return attributeValue !== value;\n };\n break;\n\n default:\n test = function test(value) {\n return value !== null;\n };\n }\n if (attributeValue === '' && /^[*$^]=$/.test(att.operator)) {\n test = function test() {\n return false;\n };\n }\n if (!test) {\n test = function test(value) {\n return value && regexp.test(value);\n };\n }\n return {\n key: attributeKey,\n value: attributeValue,\n type: typeof att.value === 'undefined' ? 'attrExist' : 'attrValue',\n test: test\n };\n });\n }\n function convertClasses(classes) {\n if (!classes) {\n return;\n }\n return classes.map(function(className) {\n className = className.replace(reUnescape, '');\n return {\n value: className,\n regexp: new RegExp('(^|\\\\s)' + escapeRegExp(className) + '(\\\\s|$)')\n };\n });\n }\n function convertPseudos(pseudos) {\n if (!pseudos) {\n return;\n }\n return pseudos.map(function(p2) {\n var expressions;\n if ([ 'is', 'not' ].includes(p2.name)) {\n expressions = p2.value;\n expressions = expressions.selectors ? expressions.selectors : [ expressions ];\n expressions = convertExpressions(expressions);\n }\n return {\n name: p2.name,\n expressions: expressions,\n value: p2.value\n };\n });\n }\n function convertExpressions(expressions) {\n return expressions.map(function(exp) {\n var newExp = [];\n var rule = exp.rule;\n while (rule) {\n newExp.push({\n tag: rule.tagName ? rule.tagName.toLowerCase() : '*',\n combinator: rule.nestingOperator ? rule.nestingOperator : ' ',\n id: rule.id,\n attributes: convertAttributes(rule.attrs),\n classes: convertClasses(rule.classNames),\n pseudos: convertPseudos(rule.pseudos)\n });\n rule = rule.rule;\n }\n return newExp;\n });\n }\n function _convertSelector(selector) {\n var expressions = css_parser_default.parse(selector);\n expressions = expressions.selectors ? expressions.selectors : [ expressions ];\n return convertExpressions(expressions);\n }\n function optimizedMatchesExpression(vNode, expressions, index, matchAnyParent) {\n if (!vNode) {\n return false;\n }\n var isArray = Array.isArray(expressions);\n var expression = isArray ? expressions[index] : expressions;\n var machedExpression = matchExpression(vNode, expression);\n while (!machedExpression && matchAnyParent && vNode.parent) {\n vNode = vNode.parent;\n machedExpression = matchExpression(vNode, expression);\n }\n if (index > 0) {\n if ([ ' ', '>' ].includes(expression.combinator) === false) {\n throw new Error('axe.utils.matchesExpression does not support the combinator: ' + expression.combinator);\n }\n machedExpression = machedExpression && optimizedMatchesExpression(vNode.parent, expressions, index - 1, expression.combinator === ' ');\n }\n return machedExpression;\n }\n function _matchesExpression(vNode, expressions, matchAnyParent) {\n return optimizedMatchesExpression(vNode, expressions, expressions.length - 1, matchAnyParent);\n }\n function closest(vNode, selector) {\n while (vNode) {\n if (_matches(vNode, selector)) {\n return vNode;\n }\n if (typeof vNode.parent === 'undefined') {\n throw new TypeError('Cannot resolve parent for non-DOM nodes');\n }\n vNode = vNode.parent;\n }\n return null;\n }\n var closest_default = closest;\n function noop() {}\n function funcGuard(f) {\n if (typeof f !== 'function') {\n throw new TypeError('Queue methods require functions as arguments');\n }\n }\n function queue() {\n var tasks = [];\n var started = 0;\n var remaining = 0;\n var completeQueue = noop;\n var complete = false;\n var err2;\n var defaultFail = function defaultFail(e) {\n err2 = e;\n setTimeout(function() {\n if (err2 !== void 0 && err2 !== null) {\n log_default('Uncaught error (of queue)', err2);\n }\n }, 1);\n };\n var failed = defaultFail;\n function createResolve(i) {\n return function(r) {\n tasks[i] = r;\n remaining -= 1;\n if (!remaining && completeQueue !== noop) {\n complete = true;\n completeQueue(tasks);\n }\n };\n }\n function abort(msg) {\n completeQueue = noop;\n failed(msg);\n return tasks;\n }\n function pop() {\n var length = tasks.length;\n for (;started < length; started++) {\n var task = tasks[started];\n try {\n task.call(null, createResolve(started), abort);\n } catch (e) {\n abort(e);\n }\n }\n }\n var q = {\n defer: function defer(fn) {\n if (_typeof(fn) === 'object' && fn.then && fn['catch']) {\n var defer = fn;\n fn = function fn(resolve, reject) {\n defer.then(resolve)['catch'](reject);\n };\n }\n funcGuard(fn);\n if (err2 !== void 0) {\n return;\n } else if (complete) {\n throw new Error('Queue already completed');\n }\n tasks.push(fn);\n ++remaining;\n pop();\n return q;\n },\n then: function then(fn) {\n funcGuard(fn);\n if (completeQueue !== noop) {\n throw new Error('queue `then` already set');\n }\n if (!err2) {\n completeQueue = fn;\n if (!remaining) {\n complete = true;\n completeQueue(tasks);\n }\n }\n return q;\n },\n catch: function _catch(fn) {\n funcGuard(fn);\n if (failed !== defaultFail) {\n throw new Error('queue `catch` already set');\n }\n if (!err2) {\n failed = fn;\n } else {\n fn(err2);\n err2 = null;\n }\n return q;\n },\n abort: abort\n };\n return q;\n }\n var queue_default = queue;\n var uuid;\n var _rng;\n var _crypto = window.crypto || window.msCrypto;\n if (!_rng && _crypto && _crypto.getRandomValues) {\n var _rnds8 = new Uint8Array(16);\n _rng = function whatwgRNG() {\n _crypto.getRandomValues(_rnds8);\n return _rnds8;\n };\n }\n if (!_rng) {\n var _rnds = new Array(16);\n _rng = function _rng() {\n for (var i = 0, r; i < 16; i++) {\n if ((i & 3) === 0) {\n r = Math.random() * 4294967296;\n }\n _rnds[i] = r >>> ((i & 3) << 3) & 255;\n }\n return _rnds;\n };\n }\n var BufferClass = typeof window.Buffer == 'function' ? window.Buffer : Array;\n var _byteToHex = [];\n var _hexToByte = {};\n for (var i = 0; i < 256; i++) {\n _byteToHex[i] = (i + 256).toString(16).substr(1);\n _hexToByte[_byteToHex[i]] = i;\n }\n function parse2(s, buf, offset) {\n var i = buf && offset || 0, ii = 0;\n buf = buf || [];\n s.toLowerCase().replace(/[0-9a-f]{2}/g, function(oct) {\n if (ii < 16) {\n buf[i + ii++] = _hexToByte[oct];\n }\n });\n while (ii < 16) {\n buf[i + ii++] = 0;\n }\n return buf;\n }\n function unparse(buf, offset) {\n var i = offset || 0, bth = _byteToHex;\n return bth[buf[i++]] + bth[buf[i++]] + bth[buf[i++]] + bth[buf[i++]] + '-' + bth[buf[i++]] + bth[buf[i++]] + '-' + bth[buf[i++]] + bth[buf[i++]] + '-' + bth[buf[i++]] + bth[buf[i++]] + '-' + bth[buf[i++]] + bth[buf[i++]] + bth[buf[i++]] + bth[buf[i++]] + bth[buf[i++]] + bth[buf[i++]];\n }\n var _seedBytes = _rng();\n var _nodeId = [ _seedBytes[0] | 1, _seedBytes[1], _seedBytes[2], _seedBytes[3], _seedBytes[4], _seedBytes[5] ];\n var _clockseq = (_seedBytes[6] << 8 | _seedBytes[7]) & 16383;\n var _lastMSecs = 0;\n var _lastNSecs = 0;\n function v1(options, buf, offset) {\n var i = buf && offset || 0;\n var b2 = buf || [];\n options = options || {};\n var clockseq = options.clockseq != null ? options.clockseq : _clockseq;\n var msecs = options.msecs != null ? options.msecs : new Date().getTime();\n var nsecs = options.nsecs != null ? options.nsecs : _lastNSecs + 1;\n var dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 1e4;\n if (dt < 0 && options.clockseq == null) {\n clockseq = clockseq + 1 & 16383;\n }\n if ((dt < 0 || msecs > _lastMSecs) && options.nsecs == null) {\n nsecs = 0;\n }\n if (nsecs >= 1e4) {\n throw new Error('uuid.v1(): Can\\'t create more than 10M uuids/sec');\n }\n _lastMSecs = msecs;\n _lastNSecs = nsecs;\n _clockseq = clockseq;\n msecs += 122192928e5;\n var tl = ((msecs & 268435455) * 1e4 + nsecs) % 4294967296;\n b2[i++] = tl >>> 24 & 255;\n b2[i++] = tl >>> 16 & 255;\n b2[i++] = tl >>> 8 & 255;\n b2[i++] = tl & 255;\n var tmh = msecs / 4294967296 * 1e4 & 268435455;\n b2[i++] = tmh >>> 8 & 255;\n b2[i++] = tmh & 255;\n b2[i++] = tmh >>> 24 & 15 | 16;\n b2[i++] = tmh >>> 16 & 255;\n b2[i++] = clockseq >>> 8 | 128;\n b2[i++] = clockseq & 255;\n var node = options.node || _nodeId;\n for (var n2 = 0; n2 < 6; n2++) {\n b2[i + n2] = node[n2];\n }\n return buf ? buf : unparse(b2);\n }\n function v4(options, buf, offset) {\n var i = buf && offset || 0;\n if (typeof options == 'string') {\n buf = options == 'binary' ? new BufferClass(16) : null;\n options = null;\n }\n options = options || {};\n var rnds = options.random || (options.rng || _rng)();\n rnds[6] = rnds[6] & 15 | 64;\n rnds[8] = rnds[8] & 63 | 128;\n if (buf) {\n for (var ii = 0; ii < 16; ii++) {\n buf[i + ii] = rnds[ii];\n }\n }\n return buf || unparse(rnds);\n }\n uuid = v4;\n uuid.v1 = v1;\n uuid.v4 = v4;\n uuid.parse = parse2;\n uuid.unparse = unparse;\n uuid.BufferClass = BufferClass;\n axe._uuid = v1();\n var uuid_default = v4;\n var errorTypes = Object.freeze([ 'EvalError', 'RangeError', 'ReferenceError', 'SyntaxError', 'TypeError', 'URIError' ]);\n function stringifyMessage(_ref55) {\n var topic = _ref55.topic, channelId = _ref55.channelId, message = _ref55.message, messageId = _ref55.messageId, keepalive = _ref55.keepalive;\n var data = {\n channelId: channelId,\n topic: topic,\n messageId: messageId,\n keepalive: !!keepalive,\n source: getSource2()\n };\n if (message instanceof Error) {\n data.error = {\n name: message.name,\n message: message.message,\n stack: message.stack\n };\n } else {\n data.payload = message;\n }\n return JSON.stringify(data);\n }\n function parseMessage(dataString) {\n var data;\n try {\n data = JSON.parse(dataString);\n } catch (_unused3) {\n return;\n }\n if (!isRespondableMessage(data)) {\n return;\n }\n var _data2 = data, topic = _data2.topic, channelId = _data2.channelId, messageId = _data2.messageId, keepalive = _data2.keepalive;\n var message = _typeof(data.error) === 'object' ? buildErrorObject(data.error) : data.payload;\n return {\n topic: topic,\n message: message,\n messageId: messageId,\n channelId: channelId,\n keepalive: !!keepalive\n };\n }\n function isRespondableMessage(postedMessage) {\n return postedMessage !== null && _typeof(postedMessage) === 'object' && typeof postedMessage.channelId === 'string' && postedMessage.source === getSource2();\n }\n function buildErrorObject(error) {\n var msg = error.message || 'Unknown error occurred';\n var errorName = errorTypes.includes(error.name) ? error.name : 'Error';\n var ErrConstructor = window[errorName] || Error;\n if (error.stack) {\n msg += '\\n' + error.stack.replace(error.message, '');\n }\n return new ErrConstructor(msg);\n }\n function getSource2() {\n var application = 'axeAPI';\n var version = '';\n if (typeof axe !== 'undefined' && axe._audit && axe._audit.application) {\n application = axe._audit.application;\n }\n if (typeof axe !== 'undefined') {\n version = axe.version;\n }\n return application + '.' + version;\n }\n function assertIsParentWindow(win) {\n assetNotGlobalWindow(win);\n assert_default(window.parent === win, 'Source of the response must be the parent window.');\n }\n function assertIsFrameWindow(win) {\n assetNotGlobalWindow(win);\n assert_default(win.parent === window, 'Respondable target must be a frame in the current window');\n }\n function assetNotGlobalWindow(win) {\n assert_default(window !== win, 'Messages can not be sent to the same window.');\n }\n var channels = {};\n function storeReplyHandler(channelId, replyHandler) {\n var sendToParent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;\n assert_default(!channels[channelId], 'A replyHandler already exists for this message channel.');\n channels[channelId] = {\n replyHandler: replyHandler,\n sendToParent: sendToParent\n };\n }\n function getReplyHandler(channelId) {\n return channels[channelId];\n }\n function deleteReplyHandler(channelId) {\n delete channels[channelId];\n }\n var messageIds = [];\n function createMessageId() {\n var uuid2 = ''.concat(v4(), ':').concat(v4());\n if (messageIds.includes(uuid2)) {\n return createMessageId();\n }\n messageIds.push(uuid2);\n return uuid2;\n }\n function isNewMessage(uuid2) {\n if (messageIds.includes(uuid2)) {\n return false;\n }\n messageIds.push(uuid2);\n return true;\n }\n function postMessage(win, data, sendToParent, replyHandler) {\n sendToParent ? assertIsParentWindow(win) : assertIsFrameWindow(win);\n if (data.message instanceof Error && !sendToParent) {\n axe.log(data.message);\n return false;\n }\n var dataString = stringifyMessage(_extends({\n messageId: createMessageId()\n }, data));\n var allowedOrigins = axe._audit.allowedOrigins;\n if (!allowedOrigins || !allowedOrigins.length) {\n return false;\n }\n if (typeof replyHandler === 'function') {\n storeReplyHandler(data.channelId, replyHandler, sendToParent);\n }\n allowedOrigins.forEach(function(origin) {\n try {\n win.postMessage(dataString, origin);\n } catch (err2) {\n if (err2 instanceof win.DOMException) {\n throw new Error('allowedOrigins value \"'.concat(origin, '\" is not a valid origin'));\n }\n throw err2;\n }\n });\n return true;\n }\n function processError(win, error, channelId) {\n if (!win.parent !== window) {\n return axe.log(error);\n }\n try {\n postMessage(win, {\n topic: null,\n channelId: channelId,\n message: error,\n messageId: createMessageId(),\n keepalive: true\n }, true);\n } catch (err2) {\n return axe.log(err2);\n }\n }\n function createResponder(win, channelId) {\n var sendToParent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;\n return function respond(message, keepalive, replyHandler) {\n var data = {\n channelId: channelId,\n message: message,\n keepalive: keepalive\n };\n postMessage(win, data, sendToParent, replyHandler);\n };\n }\n function originIsAllowed(origin) {\n var allowedOrigins = axe._audit.allowedOrigins;\n return allowedOrigins && allowedOrigins.includes('*') || allowedOrigins.includes(origin);\n }\n function messageHandler(_ref56, topicHandler) {\n var origin = _ref56.origin, dataString = _ref56.data, win = _ref56.source;\n try {\n var data = parseMessage(dataString) || {};\n var channelId = data.channelId, message = data.message, messageId = data.messageId;\n if (!originIsAllowed(origin) || !isNewMessage(messageId)) {\n return;\n }\n if (message instanceof Error && win.parent !== window) {\n axe.log(message);\n return false;\n }\n try {\n if (data.topic) {\n var responder = createResponder(win, channelId);\n assertIsParentWindow(win);\n topicHandler(data, responder);\n } else {\n callReplyHandler(win, data);\n }\n } catch (error) {\n processError(win, error, channelId);\n }\n } catch (error) {\n axe.log(error);\n return false;\n }\n }\n function callReplyHandler(win, data) {\n var channelId = data.channelId, message = data.message, keepalive = data.keepalive;\n var _ref57 = getReplyHandler(channelId) || {}, replyHandler = _ref57.replyHandler, sendToParent = _ref57.sendToParent;\n if (!replyHandler) {\n return;\n }\n sendToParent ? assertIsParentWindow(win) : assertIsFrameWindow(win);\n var responder = createResponder(win, channelId, sendToParent);\n if (!keepalive && channelId) {\n deleteReplyHandler(channelId);\n }\n try {\n replyHandler(message, keepalive, responder);\n } catch (error) {\n axe.log(error);\n responder(error, keepalive);\n }\n }\n var frameMessenger = {\n open: function open(topicHandler) {\n if (typeof window.addEventListener !== 'function') {\n return;\n }\n var handler = function handler(messageEvent) {\n messageHandler(messageEvent, topicHandler);\n };\n window.addEventListener('message', handler, false);\n return function() {\n window.removeEventListener('message', handler, false);\n };\n },\n post: function post(win, data, replyHandler) {\n if (typeof window.addEventListener !== 'function') {\n return false;\n }\n return postMessage(win, data, false, replyHandler);\n }\n };\n function setDefaultFrameMessenger(respondable2) {\n respondable2.updateMessenger(frameMessenger);\n }\n var closeHandler;\n var postMessage2;\n var topicHandlers = {};\n function _respondable(win, topic, message, keepalive, replyHandler) {\n var data = {\n topic: topic,\n message: message,\n channelId: ''.concat(v4(), ':').concat(v4()),\n keepalive: keepalive\n };\n return postMessage2(win, data, replyHandler);\n }\n function messageListener(data, responder) {\n var topic = data.topic, message = data.message, keepalive = data.keepalive;\n var topicHandler = topicHandlers[topic];\n if (!topicHandler) {\n return;\n }\n try {\n topicHandler(message, keepalive, responder);\n } catch (error) {\n axe.log(error);\n responder(error, keepalive);\n }\n }\n _respondable.updateMessenger = function updateMessenger(_ref58) {\n var open = _ref58.open, post = _ref58.post;\n assert_default(typeof open === 'function', 'open callback must be a function');\n assert_default(typeof post === 'function', 'post callback must be a function');\n if (closeHandler) {\n closeHandler();\n }\n var close = open(messageListener);\n if (close) {\n assert_default(typeof close === 'function', 'open callback must return a cleanup function');\n closeHandler = close;\n } else {\n closeHandler = null;\n }\n postMessage2 = post;\n };\n _respondable.subscribe = function subscribe(topic, topicHandler) {\n assert_default(typeof topicHandler === 'function', 'Subscriber callback must be a function');\n assert_default(!topicHandlers[topic], 'Topic '.concat(topic, ' is already registered to.'));\n topicHandlers[topic] = topicHandler;\n };\n _respondable.isInFrame = function isInFrame() {\n var win = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window;\n return !!win.frameElement;\n };\n setDefaultFrameMessenger(_respondable);\n function _sendCommandToFrame(node, parameters, resolve, reject) {\n var _parameters$options$p, _parameters$options;\n var win = node.contentWindow;\n var pingWaitTime = (_parameters$options$p = (_parameters$options = parameters.options) === null || _parameters$options === void 0 ? void 0 : _parameters$options.pingWaitTime) !== null && _parameters$options$p !== void 0 ? _parameters$options$p : 500;\n if (!win) {\n log_default('Frame does not have a content window', node);\n resolve(null);\n return;\n }\n if (pingWaitTime === 0) {\n callAxeStart(node, parameters, resolve, reject);\n return;\n }\n var timeout = setTimeout(function() {\n timeout = setTimeout(function() {\n if (!parameters.debug) {\n resolve(null);\n } else {\n reject(err('No response from frame', node));\n }\n }, 0);\n }, pingWaitTime);\n _respondable(win, 'axe.ping', null, void 0, function() {\n clearTimeout(timeout);\n callAxeStart(node, parameters, resolve, reject);\n });\n }\n function callAxeStart(node, parameters, resolve, reject) {\n var _parameters$options$f, _parameters$options2;\n var frameWaitTime = (_parameters$options$f = (_parameters$options2 = parameters.options) === null || _parameters$options2 === void 0 ? void 0 : _parameters$options2.frameWaitTime) !== null && _parameters$options$f !== void 0 ? _parameters$options$f : 6e4;\n var win = node.contentWindow;\n var timeout = setTimeout(function collectResultFramesTimeout() {\n reject(err('Axe in frame timed out', node));\n }, frameWaitTime);\n _respondable(win, 'axe.start', parameters, void 0, function(data) {\n clearTimeout(timeout);\n if (data instanceof Error === false) {\n resolve(data);\n } else {\n reject(data);\n }\n });\n }\n function err(message, node) {\n var selector;\n if (axe._tree) {\n selector = get_selector_default(node);\n }\n return new Error(message + ': ' + (selector || node));\n }\n var customSerializer = null;\n var nodeSerializer = {\n update: function update(serializer) {\n assert_default(_typeof(serializer) === 'object', 'serializer must be an object');\n customSerializer = serializer;\n },\n toSpec: function toSpec(node) {\n return nodeSerializer.dqElmToSpec(new dq_element_default(node));\n },\n dqElmToSpec: function dqElmToSpec(dqElm, runOptions) {\n var _customSerializer;\n if (dqElm instanceof dq_element_default === false) {\n return dqElm;\n }\n if (runOptions) {\n dqElm = cloneLimitedDqElement(dqElm, runOptions);\n }\n if (typeof ((_customSerializer = customSerializer) === null || _customSerializer === void 0 ? void 0 : _customSerializer.toSpec) === 'function') {\n return customSerializer.toSpec(dqElm);\n }\n return dqElm.toJSON();\n },\n mergeSpecs: function mergeSpecs(nodeSpec, parentFrameSpec) {\n var _customSerializer2;\n if (typeof ((_customSerializer2 = customSerializer) === null || _customSerializer2 === void 0 ? void 0 : _customSerializer2.mergeSpecs) === 'function') {\n return customSerializer.mergeSpecs(nodeSpec, parentFrameSpec);\n }\n return dq_element_default.mergeSpecs(nodeSpec, parentFrameSpec);\n },\n mapRawResults: function mapRawResults(rawResults) {\n return rawResults.map(function(rawResult) {\n return _extends({}, rawResult, {\n nodes: nodeSerializer.mapRawNodeResults(rawResult.nodes)\n });\n });\n },\n mapRawNodeResults: function mapRawNodeResults(nodeResults) {\n return nodeResults === null || nodeResults === void 0 ? void 0 : nodeResults.map(function(_ref59) {\n var node = _ref59.node, nodeResult = _objectWithoutProperties(_ref59, _excluded1);\n nodeResult.node = nodeSerializer.dqElmToSpec(node);\n for (var _i6 = 0, _arr2 = [ 'any', 'all', 'none' ]; _i6 < _arr2.length; _i6++) {\n var type2 = _arr2[_i6];\n nodeResult[type2] = nodeResult[type2].map(function(_ref60) {\n var relatedNodes = _ref60.relatedNodes, checkResult = _objectWithoutProperties(_ref60, _excluded10);\n checkResult.relatedNodes = relatedNodes.map(nodeSerializer.dqElmToSpec);\n return checkResult;\n });\n }\n return nodeResult;\n });\n }\n };\n var node_serializer_default = nodeSerializer;\n function cloneLimitedDqElement(dqElm, runOptions) {\n var fromFrame2 = dqElm.fromFrame;\n var hasAncestry = runOptions.ancestry, hasXpath = runOptions.xpath;\n var hasSelectors = runOptions.selectors !== false || fromFrame2;\n dqElm = new dq_element_default(dqElm.element, runOptions, {\n source: dqElm.source,\n nodeIndexes: dqElm.nodeIndexes,\n selector: hasSelectors ? dqElm.selector : [ ':root' ],\n ancestry: hasAncestry ? dqElm.ancestry : [ ':root' ],\n xpath: hasXpath ? dqElm.xpath : '/'\n });\n dqElm.fromFrame = fromFrame2;\n return dqElm;\n }\n function getAllChecks(object) {\n var result = [];\n return result.concat(object.any || []).concat(object.all || []).concat(object.none || []);\n }\n var get_all_checks_default = getAllChecks;\n function findBy(array, key, value) {\n if (Array.isArray(array)) {\n return array.find(function(obj) {\n return obj !== null && _typeof(obj) === 'object' && Object.hasOwn(obj, key) && obj[key] === value;\n });\n }\n }\n var find_by_default = findBy;\n function pushFrame(resultSet, options, frameSpec) {\n resultSet.forEach(function(res) {\n res.node = node_serializer_default.mergeSpecs(res.node, frameSpec);\n var checks = get_all_checks_default(res);\n checks.forEach(function(check) {\n check.relatedNodes = check.relatedNodes.map(function(node) {\n return node_serializer_default.mergeSpecs(node, frameSpec);\n });\n });\n });\n }\n function spliceNodes(target, to2) {\n var firstFromFrame = to2[0].node;\n var node;\n for (var _i7 = 0; _i7 < target.length; _i7++) {\n node = target[_i7].node;\n var resultSort = nodeIndexSort(node.nodeIndexes, firstFromFrame.nodeIndexes);\n if (resultSort > 0 || resultSort === 0 && firstFromFrame.selector.length < node.selector.length) {\n target.splice.apply(target, [ _i7, 0 ].concat(_toConsumableArray(to2)));\n return;\n }\n }\n target.push.apply(target, _toConsumableArray(to2));\n }\n function normalizeResult(result) {\n if (!result || !result.results) {\n return null;\n }\n if (!Array.isArray(result.results)) {\n return [ result.results ];\n }\n if (!result.results.length) {\n return null;\n }\n return result.results;\n }\n function mergeResults(frameResults, options) {\n var mergedResult = [];\n frameResults.forEach(function(frameResult) {\n var results = normalizeResult(frameResult);\n if (!results || !results.length) {\n return;\n }\n var frameSpec = getFrameSpec(frameResult);\n results.forEach(function(ruleResult) {\n if (ruleResult.nodes && frameSpec) {\n pushFrame(ruleResult.nodes, options, frameSpec);\n }\n var res = find_by_default(mergedResult, 'id', ruleResult.id);\n if (!res) {\n mergedResult.push(ruleResult);\n } else {\n if (ruleResult.nodes.length) {\n spliceNodes(res.nodes, ruleResult.nodes);\n }\n if (ruleResult.error) {\n var _res$error;\n (_res$error = res.error) !== null && _res$error !== void 0 ? _res$error : res.error = ruleResult.error;\n }\n }\n });\n });\n mergedResult.forEach(function(result) {\n if (result.nodes) {\n result.nodes.sort(function(nodeA, nodeB) {\n return nodeIndexSort(nodeA.node.nodeIndexes, nodeB.node.nodeIndexes);\n });\n }\n });\n return mergedResult;\n }\n function nodeIndexSort() {\n var nodeIndexesA = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var nodeIndexesB = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n var length = Math.max(nodeIndexesA === null || nodeIndexesA === void 0 ? void 0 : nodeIndexesA.length, nodeIndexesB === null || nodeIndexesB === void 0 ? void 0 : nodeIndexesB.length);\n for (var _i8 = 0; _i8 < length; _i8++) {\n var indexA = nodeIndexesA === null || nodeIndexesA === void 0 ? void 0 : nodeIndexesA[_i8];\n var indexB = nodeIndexesB === null || nodeIndexesB === void 0 ? void 0 : nodeIndexesB[_i8];\n if (typeof indexA !== 'number' || isNaN(indexA)) {\n return _i8 === 0 ? 1 : -1;\n }\n if (typeof indexB !== 'number' || isNaN(indexB)) {\n return _i8 === 0 ? -1 : 1;\n }\n if (indexA !== indexB) {\n return indexA - indexB;\n }\n }\n return 0;\n }\n var merge_results_default = mergeResults;\n function getFrameSpec(frameResult) {\n if (frameResult.frameElement) {\n return node_serializer_default.toSpec(frameResult.frameElement);\n } else if (frameResult.frameSpec) {\n return frameResult.frameSpec;\n }\n return null;\n }\n function _collectResultsFromFrames(parentContent, options, command, parameter, resolve, reject) {\n options = _extends({}, options, {\n elementRef: false\n });\n var q = queue_default();\n var frames = parentContent.frames;\n frames.forEach(function(_ref61) {\n var frameElement = _ref61.node, context = _objectWithoutProperties(_ref61, _excluded11);\n q.defer(function(res, rej) {\n var params = {\n options: options,\n command: command,\n parameter: parameter,\n context: context\n };\n function callback(results) {\n if (!results) {\n return res(null);\n }\n return res({\n results: results,\n frameElement: frameElement\n });\n }\n _sendCommandToFrame(frameElement, params, callback, rej);\n });\n });\n q.then(function(data) {\n resolve(merge_results_default(data, options));\n })['catch'](reject);\n }\n function _contains(vNode, otherVNode) {\n if (!vNode.shadowId && !otherVNode.shadowId && vNode.actualNode && typeof vNode.actualNode.contains === 'function') {\n return vNode.actualNode.contains(otherVNode.actualNode);\n }\n do {\n if (vNode === otherVNode) {\n return true;\n } else if (otherVNode.nodeIndex < vNode.nodeIndex) {\n return false;\n }\n otherVNode = otherVNode.parent;\n } while (otherVNode);\n return false;\n }\n function deepMerge() {\n var target = {};\n for (var _len6 = arguments.length, sources = new Array(_len6), _key8 = 0; _key8 < _len6; _key8++) {\n sources[_key8] = arguments[_key8];\n }\n sources.forEach(function(source) {\n if (!source || _typeof(source) !== 'object' || Array.isArray(source)) {\n return;\n }\n for (var _i9 = 0, _Object$keys2 = Object.keys(source); _i9 < _Object$keys2.length; _i9++) {\n var _key9 = _Object$keys2[_i9];\n if (!target.hasOwnProperty(_key9) || _typeof(source[_key9]) !== 'object' || Array.isArray(target[_key9])) {\n target[_key9] = source[_key9];\n } else {\n target[_key9] = deepMerge(target[_key9], source[_key9]);\n }\n }\n });\n return target;\n }\n var deep_merge_default = deepMerge;\n function extendMetaData(to2, from) {\n Object.assign(to2, from);\n Object.keys(from).filter(function(prop) {\n return typeof from[prop] === 'function';\n }).forEach(function(prop) {\n to2[prop] = null;\n try {\n to2[prop] = from[prop](to2);\n } catch (_unused4) {}\n });\n }\n var extend_meta_data_default = extendMetaData;\n var possibleShadowRoots = [ 'article', 'aside', 'blockquote', 'body', 'div', 'footer', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'header', 'main', 'nav', 'p', 'section', 'span' ];\n function isShadowRoot(node) {\n if (node.shadowRoot) {\n var nodeName2 = node.nodeName.toLowerCase();\n if (possibleShadowRoots.includes(nodeName2) || /^[a-z][a-z0-9_.-]*-[a-z0-9_.-]*$/.test(nodeName2)) {\n return true;\n }\n }\n return false;\n }\n var is_shadow_root_default = isShadowRoot;\n function tokenList(str) {\n return (str || '').trim().replace(/\\s{2,}/g, ' ').split(' ');\n }\n var token_list_default = tokenList;\n var idsKey = ' [idsMap]';\n function getNodesMatchingExpression(domTree, expressions, filter) {\n var selectorMap = domTree[0]._selectorMap;\n if (!selectorMap) {\n return;\n }\n var shadowId = domTree[0].shadowId;\n for (var _i0 = 0; _i0 < expressions.length; _i0++) {\n if (expressions[_i0].length > 1 && expressions[_i0].some(function(expression) {\n return isGlobalSelector(expression);\n })) {\n return;\n }\n }\n var nodeSet = new Set();\n expressions.forEach(function(expression) {\n var _matchingNodes$nodes;\n var matchingNodes = findMatchingNodes(expression, selectorMap, shadowId);\n matchingNodes === null || matchingNodes === void 0 || (_matchingNodes$nodes = matchingNodes.nodes) === null || _matchingNodes$nodes === void 0 || _matchingNodes$nodes.forEach(function(node) {\n if (matchingNodes.isComplexSelector && !_matchesExpression(node, expression)) {\n return;\n }\n nodeSet.add(node);\n });\n });\n var matchedNodes = [];\n nodeSet.forEach(function(node) {\n return matchedNodes.push(node);\n });\n if (filter) {\n matchedNodes = matchedNodes.filter(filter);\n }\n return matchedNodes.sort(function(a2, b2) {\n return a2.nodeIndex - b2.nodeIndex;\n });\n }\n function findMatchingNodes(expression, selectorMap, shadowId) {\n var exp = expression[expression.length - 1];\n var nodes = null;\n var isComplexSelector = expression.length > 1 || !!exp.pseudos || !!exp.classes;\n if (isGlobalSelector(exp)) {\n nodes = selectorMap['*'];\n } else {\n if (exp.id) {\n var _selectorMap$idsKey$e;\n if (!selectorMap[idsKey] || !Object.hasOwn(selectorMap[idsKey], exp.id) || !((_selectorMap$idsKey$e = selectorMap[idsKey][exp.id]) !== null && _selectorMap$idsKey$e !== void 0 && _selectorMap$idsKey$e.length)) {\n return;\n }\n nodes = selectorMap[idsKey][exp.id].filter(function(node) {\n return node.shadowId === shadowId;\n });\n }\n if (exp.tag && exp.tag !== '*') {\n var _selectorMap$exp$tag;\n if (!((_selectorMap$exp$tag = selectorMap[exp.tag]) !== null && _selectorMap$exp$tag !== void 0 && _selectorMap$exp$tag.length)) {\n return;\n }\n var cachedNodes = selectorMap[exp.tag];\n nodes = nodes ? getSharedValues(cachedNodes, nodes) : cachedNodes;\n }\n if (exp.classes) {\n var _selectorMap$Class;\n if (!((_selectorMap$Class = selectorMap['[class]']) !== null && _selectorMap$Class !== void 0 && _selectorMap$Class.length)) {\n return;\n }\n var _cachedNodes = selectorMap['[class]'];\n nodes = nodes ? getSharedValues(_cachedNodes, nodes) : _cachedNodes;\n }\n if (exp.attributes) {\n for (var _i1 = 0; _i1 < exp.attributes.length; _i1++) {\n var _selectorMap;\n var attr = exp.attributes[_i1];\n if (attr.type === 'attrValue') {\n isComplexSelector = true;\n }\n if (!((_selectorMap = selectorMap['['.concat(attr.key, ']')]) !== null && _selectorMap !== void 0 && _selectorMap.length)) {\n return;\n }\n var _cachedNodes2 = selectorMap['['.concat(attr.key, ']')];\n nodes = nodes ? getSharedValues(_cachedNodes2, nodes) : _cachedNodes2;\n }\n }\n }\n return {\n nodes: nodes,\n isComplexSelector: isComplexSelector\n };\n }\n function isGlobalSelector(expression) {\n return expression.tag === '*' && !expression.attributes && !expression.id && !expression.classes;\n }\n function getSharedValues(a2, b2) {\n return a2.filter(function(node) {\n return b2.includes(node);\n });\n }\n function cacheSelector(key, vNode, map) {\n if (!Object.hasOwn(map, key)) {\n map[key] = [];\n }\n map[key].push(vNode);\n }\n function cacheNodeSelectors(vNode, selectorMap) {\n if (vNode.props.nodeType !== 1) {\n return;\n }\n cacheSelector(vNode.props.nodeName, vNode, selectorMap);\n cacheSelector('*', vNode, selectorMap);\n vNode.attrNames.forEach(function(attrName) {\n if (attrName === 'id') {\n selectorMap[idsKey] = selectorMap[idsKey] || {};\n token_list_default(vNode.attr(attrName)).forEach(function(value) {\n cacheSelector(value, vNode, selectorMap[idsKey]);\n });\n }\n cacheSelector('['.concat(attrName, ']'), vNode, selectorMap);\n });\n }\n var hasShadowRoot;\n function _getFlattenedTree() {\n var node = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : document.documentElement;\n var shadowId = arguments.length > 1 ? arguments[1] : undefined;\n hasShadowRoot = false;\n var selectorMap = {};\n cache_default.set('nodeMap', new WeakMap());\n cache_default.set('selectorMap', selectorMap);\n var tree = flattenTree(node, shadowId, null);\n tree[0]._selectorMap = selectorMap;\n tree[0]._hasShadowRoot = hasShadowRoot;\n return tree;\n }\n function getSlotChildren(node) {\n var childNodes = [];\n node = node.firstChild;\n while (node) {\n childNodes.push(node);\n node = node.nextSibling;\n }\n return childNodes;\n }\n function createNode(node, parent, shadowId) {\n var vNode = new virtual_node_default(node, parent, shadowId);\n cacheNodeSelectors(vNode, cache_default.get('selectorMap'));\n return vNode;\n }\n function createChildren(childNodes, parent, shadowId) {\n var children = [];\n childNodes.forEach(function(childNode) {\n var child = flattenTree(childNode, shadowId, parent);\n if (child) {\n children.push.apply(children, _toConsumableArray(child));\n }\n });\n return children;\n }\n function flattenTree(node, shadowId, parent) {\n var vNode, childNodes;\n if (node.documentElement) {\n node = node.documentElement;\n }\n var nodeName2 = node.nodeName.toLowerCase();\n if (is_shadow_root_default(node)) {\n hasShadowRoot = true;\n vNode = createNode(node, parent, shadowId);\n shadowId = 'a' + Math.random().toString().substring(2);\n childNodes = Array.from(node.shadowRoot.childNodes);\n vNode.children = createChildren(childNodes, vNode, shadowId);\n return [ vNode ];\n }\n if (nodeName2 === 'content' && typeof node.getDistributedNodes === 'function') {\n childNodes = Array.from(node.getDistributedNodes());\n return createChildren(childNodes, parent, shadowId);\n }\n if (nodeName2 === 'slot' && typeof node.assignedNodes === 'function') {\n childNodes = Array.from(node.assignedNodes());\n if (!childNodes.length) {\n childNodes = getSlotChildren(node);\n }\n var styl = window.getComputedStyle(node);\n if (false) {\n vNode = createNode(node, parent, shadowId);\n vNode.children = createChildren(childNodes, vNode, shadowId);\n return [ vNode ];\n }\n return createChildren(childNodes, parent, shadowId);\n }\n if (node.nodeType === document.ELEMENT_NODE) {\n vNode = createNode(node, parent, shadowId);\n childNodes = Array.from(node.childNodes);\n vNode.children = createChildren(childNodes, vNode, shadowId);\n return [ vNode ];\n }\n if (node.nodeType === document.TEXT_NODE) {\n return [ createNode(node, parent) ];\n }\n return void 0;\n }\n function getBaseLang(lang) {\n if (!lang) {\n return '';\n }\n return lang.trim().split('-')[0].toLowerCase();\n }\n var get_base_lang_default = getBaseLang;\n function failureSummary(nodeData) {\n var failingChecks = {};\n failingChecks.none = nodeData.none.concat(nodeData.all);\n failingChecks.any = nodeData.any;\n return Object.keys(failingChecks).map(function(key) {\n if (!failingChecks[key].length) {\n return;\n }\n var sum = axe._audit.data.failureSummaries[key];\n if (sum && typeof sum.failureMessage === 'function') {\n return sum.failureMessage(failingChecks[key].map(function(check) {\n return check.message || '';\n }));\n }\n }).filter(function(i) {\n return i !== void 0;\n }).join('\\n\\n');\n }\n var failure_summary_default = failureSummary;\n function incompleteFallbackMessage() {\n var message = axe._audit.data.incompleteFallbackMessage;\n if (typeof message === 'function') {\n message = message();\n }\n if (typeof message !== 'string') {\n return '';\n }\n return message;\n }\n var resultKeys = constants_default.resultGroups;\n function processAggregate(results, options) {\n var resultObject = axe.utils.aggregateResult(results);\n resultKeys.forEach(function(key) {\n if (options.resultTypes && !options.resultTypes.includes(key)) {\n (resultObject[key] || []).forEach(function(ruleResult) {\n if (Array.isArray(ruleResult.nodes) && ruleResult.nodes.length > 0) {\n ruleResult.nodes = [ ruleResult.nodes[0] ];\n }\n });\n }\n resultObject[key] = (resultObject[key] || []).map(function(ruleResult) {\n ruleResult = Object.assign({}, ruleResult);\n if (Array.isArray(ruleResult.nodes) && ruleResult.nodes.length > 0) {\n ruleResult.nodes = ruleResult.nodes.map(function(subResult) {\n if (_typeof(subResult.node) === 'object') {\n var serialElm = trimElementSpec(subResult.node, options);\n Object.assign(subResult, serialElm);\n }\n delete subResult.result;\n delete subResult.node;\n normalizeRelatedNodes(subResult, options);\n return subResult;\n });\n }\n resultKeys.forEach(function(resultKey) {\n return delete ruleResult[resultKey];\n });\n delete ruleResult.pageLevel;\n delete ruleResult.result;\n return ruleResult;\n });\n });\n return resultObject;\n }\n function normalizeRelatedNodes(node, options) {\n [ 'any', 'all', 'none' ].forEach(function(type2) {\n if (!Array.isArray(node[type2])) {\n return;\n }\n node[type2].filter(function(checkRes) {\n return Array.isArray(checkRes.relatedNodes);\n }).forEach(function(checkRes) {\n checkRes.relatedNodes = checkRes.relatedNodes.map(function(relatedNode) {\n return trimElementSpec(relatedNode, options);\n });\n });\n });\n }\n function trimElementSpec() {\n var elmSpec = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var runOptions = arguments.length > 1 ? arguments[1] : undefined;\n elmSpec = node_serializer_default.dqElmToSpec(elmSpec, runOptions);\n var serialElm = {};\n if (axe._audit.noHtml) {\n serialElm.html = null;\n } else {\n var _elmSpec$source;\n serialElm.html = (_elmSpec$source = elmSpec.source) !== null && _elmSpec$source !== void 0 ? _elmSpec$source : 'Undefined';\n }\n if (runOptions.elementRef && !elmSpec.fromFrame) {\n var _elmSpec$element;\n serialElm.element = (_elmSpec$element = elmSpec.element) !== null && _elmSpec$element !== void 0 ? _elmSpec$element : null;\n }\n if (runOptions.selectors !== false || elmSpec.fromFrame) {\n var _elmSpec$selector;\n serialElm.target = (_elmSpec$selector = elmSpec.selector) !== null && _elmSpec$selector !== void 0 ? _elmSpec$selector : [ ':root' ];\n }\n if (runOptions.ancestry) {\n var _elmSpec$ancestry;\n serialElm.ancestry = (_elmSpec$ancestry = elmSpec.ancestry) !== null && _elmSpec$ancestry !== void 0 ? _elmSpec$ancestry : [ ':root' ];\n }\n if (runOptions.xpath) {\n var _elmSpec$xpath;\n serialElm.xpath = (_elmSpec$xpath = elmSpec.xpath) !== null && _elmSpec$xpath !== void 0 ? _elmSpec$xpath : [ '/' ];\n }\n return serialElm;\n }\n var dataRegex = /\\$\\{\\s?data\\s?\\}/g;\n function substitute(str, data) {\n if (typeof data === 'string') {\n return str.replace(dataRegex, data);\n }\n for (var prop in data) {\n if (data.hasOwnProperty(prop)) {\n var regex = new RegExp('\\\\${\\\\s?data\\\\.' + prop + '\\\\s?}', 'g');\n var replace = typeof data[prop] === 'undefined' ? '' : String(data[prop]);\n str = str.replace(regex, replace);\n }\n }\n return str;\n }\n function processMessage(message, data) {\n if (!message) {\n return;\n }\n if (Array.isArray(data)) {\n data.values = data.join(', ');\n if (typeof message.singular === 'string' && typeof message.plural === 'string') {\n var str2 = data.length === 1 ? message.singular : message.plural;\n return substitute(str2, data);\n }\n return substitute(message, data);\n }\n if (typeof message === 'string') {\n return substitute(message, data);\n }\n if (typeof data === 'string') {\n var _str = message[data];\n return substitute(_str, data);\n }\n var str = message['default'] || incompleteFallbackMessage();\n if (data && data.messageKey && message[data.messageKey]) {\n str = message[data.messageKey];\n }\n return processMessage(str, data);\n }\n var process_message_default = processMessage;\n function getCheckMessage(checkId, type2, data) {\n var check = axe._audit.data.checks[checkId];\n if (!check) {\n throw new Error('Cannot get message for unknown check: '.concat(checkId, '.'));\n }\n if (!check.messages[type2]) {\n throw new Error('Check \"'.concat(checkId, '\"\" does not have a \"').concat(type2, '\" message.'));\n }\n return process_message_default(check.messages[type2], data);\n }\n var get_check_message_default = getCheckMessage;\n function getCheckOption(check, ruleID, options) {\n var ruleCheckOption = ((options.rules && options.rules[ruleID] || {}).checks || {})[check.id];\n var checkOption = (options.checks || {})[check.id];\n var enabled = check.enabled;\n var opts = check.options;\n if (checkOption) {\n if (checkOption.hasOwnProperty('enabled')) {\n enabled = checkOption.enabled;\n }\n if (checkOption.hasOwnProperty('options')) {\n opts = checkOption.options;\n }\n }\n if (ruleCheckOption) {\n if (ruleCheckOption.hasOwnProperty('enabled')) {\n enabled = ruleCheckOption.enabled;\n }\n if (ruleCheckOption.hasOwnProperty('options')) {\n opts = ruleCheckOption.options;\n }\n }\n return {\n enabled: enabled,\n options: opts,\n absolutePaths: options.absolutePaths\n };\n }\n var get_check_option_default = getCheckOption;\n function _getEnvironmentData() {\n var _win$location;\n var metadata = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var win = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window;\n if (metadata && _typeof(metadata) === 'object') {\n return metadata;\n } else if (_typeof(win) !== 'object') {\n return {};\n }\n return {\n testEngine: {\n name: 'axe-core',\n version: axe.version\n },\n testRunner: {\n name: axe._audit.brand\n },\n testEnvironment: getTestEnvironment(win),\n timestamp: new Date().toISOString(),\n url: (_win$location = win.location) === null || _win$location === void 0 ? void 0 : _win$location.href\n };\n }\n function getTestEnvironment(win) {\n if (!win.navigator || _typeof(win.navigator) !== 'object') {\n return {};\n }\n var navigator = win.navigator, innerHeight = win.innerHeight, innerWidth = win.innerWidth;\n var _ref62 = getOrientation(win) || {}, angle = _ref62.angle, type2 = _ref62.type;\n return {\n userAgent: navigator.userAgent,\n windowWidth: innerWidth,\n windowHeight: innerHeight,\n orientationAngle: angle,\n orientationType: type2\n };\n }\n function getOrientation(_ref63) {\n var screen = _ref63.screen;\n return screen.orientation || screen.msOrientation || screen.mozOrientation;\n }\n function createFrameContext(frame, _ref64) {\n var focusable = _ref64.focusable, page = _ref64.page;\n return {\n node: frame,\n include: [],\n exclude: [],\n initiator: false,\n focusable: focusable && frameFocusable(frame),\n size: getBoundingSize(frame),\n page: page\n };\n }\n function frameFocusable(frame) {\n var tabIndex = parse_tabindex_default(frame.getAttribute('tabindex'));\n return tabIndex === null || tabIndex >= 0;\n }\n function getBoundingSize(domNode) {\n var width = parseInt(domNode.getAttribute('width'), 10);\n var height = parseInt(domNode.getAttribute('height'), 10);\n if (isNaN(width) || isNaN(height)) {\n var rect = domNode.getBoundingClientRect();\n width = isNaN(width) ? rect.width : width;\n height = isNaN(height) ? rect.height : height;\n }\n return {\n width: width,\n height: height\n };\n }\n function normalizeContext(contextSpec) {\n if (_isContextObject(contextSpec)) {\n var msg = ' must be used inside include or exclude. It should not be on the same object.';\n assert2(!_objectHasOwn(contextSpec, 'fromFrames'), 'fromFrames' + msg);\n assert2(!_objectHasOwn(contextSpec, 'fromShadowDom'), 'fromShadowDom' + msg);\n } else if (_isContextProp(contextSpec)) {\n contextSpec = {\n include: contextSpec,\n exclude: []\n };\n } else {\n return {\n include: [ document ],\n exclude: []\n };\n }\n var include = normalizeContextList(contextSpec.include);\n if (include.length === 0) {\n include.push(document);\n }\n var exclude = normalizeContextList(contextSpec.exclude);\n return {\n include: include,\n exclude: exclude\n };\n }\n function normalizeContextList() {\n var selectorList = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var normalizedList = [];\n if (!_isArrayLike(selectorList)) {\n selectorList = [ selectorList ];\n }\n for (var _i10 = 0; _i10 < selectorList.length; _i10++) {\n var normalizedSelector = normalizeContextSelector(selectorList[_i10]);\n if (normalizedSelector) {\n normalizedList.push(normalizedSelector);\n }\n }\n return normalizedList;\n }\n function normalizeContextSelector(selector) {\n if (selector instanceof window.Node) {\n return selector;\n }\n if (typeof selector === 'string') {\n return [ selector ];\n }\n if (_isLabelledFramesSelector(selector)) {\n assertLabelledFrameSelector(selector);\n selector = selector.fromFrames;\n } else if (_isLabelledShadowDomSelector(selector)) {\n selector = [ selector ];\n }\n return normalizeFrameSelectors(selector);\n }\n function normalizeFrameSelectors(frameSelectors) {\n if (!Array.isArray(frameSelectors)) {\n return;\n }\n var normalizedSelectors = [];\n var _iterator11 = _createForOfIteratorHelper(frameSelectors), _step11;\n try {\n for (_iterator11.s(); !(_step11 = _iterator11.n()).done; ) {\n var selector = _step11.value;\n if (_isLabelledShadowDomSelector(selector)) {\n assertLabelledShadowDomSelector(selector);\n selector = selector.fromShadowDom;\n }\n if (typeof selector !== 'string' && !isShadowSelector(selector)) {\n return;\n }\n normalizedSelectors.push(selector);\n }\n } catch (err) {\n _iterator11.e(err);\n } finally {\n _iterator11.f();\n }\n return normalizedSelectors;\n }\n function assertLabelledFrameSelector(selector) {\n assert2(Array.isArray(selector.fromFrames), 'fromFrames property must be an array');\n assert2(selector.fromFrames.every(function(fromFrameSelector) {\n return !_objectHasOwn(fromFrameSelector, 'fromFrames');\n }), 'Invalid context; fromFrames selector must be appended, rather than nested');\n assert2(!_objectHasOwn(selector, 'fromShadowDom'), 'fromFrames and fromShadowDom cannot be used on the same object');\n }\n function assertLabelledShadowDomSelector(selector) {\n assert2(Array.isArray(selector.fromShadowDom), 'fromShadowDom property must be an array');\n assert2(selector.fromShadowDom.every(function(fromShadowDomSelector) {\n return !_objectHasOwn(fromShadowDomSelector, 'fromFrames');\n }), 'shadow selector must be inside fromFrame instead');\n assert2(selector.fromShadowDom.every(function(fromShadowDomSelector) {\n return !_objectHasOwn(fromShadowDomSelector, 'fromShadowDom');\n }), 'fromShadowDom selector must be appended, rather than nested');\n }\n function isShadowSelector(selector) {\n return Array.isArray(selector) && selector.every(function(str) {\n return typeof str === 'string';\n });\n }\n function assert2(bool, str) {\n assert_default(bool, 'Invalid context; '.concat(str, '\\nSee: https://github.com/dequelabs/axe-core/blob/master/doc/context.md'));\n }\n function parseSelectorArray(context, type2) {\n var result = [];\n for (var _i11 = 0, l = context[type2].length; _i11 < l; _i11++) {\n var item = context[type2][_i11];\n if (item instanceof window.Node) {\n if (item.documentElement instanceof window.Node) {\n result.push(context.flatTree[0]);\n } else {\n result.push(get_node_from_tree_default(item));\n }\n } else if (item && item.length) {\n if (item.length > 1) {\n pushUniqueFrameSelector(context, type2, item);\n } else {\n var nodeList = _shadowSelectAll(item[0]);\n result.push.apply(result, _toConsumableArray(nodeList.map(function(node) {\n return get_node_from_tree_default(node);\n })));\n }\n }\n }\n return result.filter(function(r) {\n return r;\n });\n }\n function pushUniqueFrameSelector(context, type2, selectorArray) {\n context.frames = context.frames || [];\n var frameSelector = selectorArray.shift();\n var frames = _shadowSelectAll(frameSelector);\n frames.forEach(function(frame) {\n var frameContext = context.frames.find(function(result) {\n return result.node === frame;\n });\n if (!frameContext) {\n frameContext = createFrameContext(frame, context);\n context.frames.push(frameContext);\n }\n frameContext[type2].push(selectorArray);\n });\n }\n function Context(spec, flatTree) {\n var _spec, _spec2, _spec3, _spec4, _this5 = this;\n spec = clone2(spec);\n this.frames = [];\n this.page = typeof ((_spec = spec) === null || _spec === void 0 ? void 0 : _spec.page) === 'boolean' ? spec.page : void 0;\n this.initiator = typeof ((_spec2 = spec) === null || _spec2 === void 0 ? void 0 : _spec2.initiator) === 'boolean' ? spec.initiator : true;\n this.focusable = typeof ((_spec3 = spec) === null || _spec3 === void 0 ? void 0 : _spec3.focusable) === 'boolean' ? spec.focusable : true;\n this.size = _typeof((_spec4 = spec) === null || _spec4 === void 0 ? void 0 : _spec4.size) === 'object' ? spec.size : {};\n spec = normalizeContext(spec);\n this.flatTree = flatTree !== null && flatTree !== void 0 ? flatTree : _getFlattenedTree(getRootNode2(spec));\n this.exclude = spec.exclude;\n this.include = spec.include;\n this.include = parseSelectorArray(this, 'include');\n this.exclude = parseSelectorArray(this, 'exclude');\n _select('frame, iframe', this).forEach(function(frame) {\n if (_isNodeInContext(frame, _this5)) {\n pushUniqueFrame(_this5, frame.actualNode);\n }\n });\n if (typeof this.page === 'undefined') {\n this.page = isPageContext(this);\n this.frames.forEach(function(frame) {\n frame.page = _this5.page;\n });\n }\n validateContext(this);\n if (!Array.isArray(this.include)) {\n this.include = Array.from(this.include);\n }\n this.include.sort(node_sorter_default);\n }\n function pushUniqueFrame(context, frame) {\n if (!_isVisibleToScreenReaders(frame) || find_by_default(context.frames, 'node', frame)) {\n return;\n }\n context.frames.push(createFrameContext(frame, context));\n }\n function isPageContext(_ref65) {\n var include = _ref65.include;\n return include.length === 1 && include[0].actualNode === document.documentElement;\n }\n function validateContext(context) {\n if (context.include.length === 0 && context.frames.length === 0) {\n var env = _respondable.isInFrame() ? 'frame' : 'page';\n throw new Error('No elements found for include in ' + env + ' Context');\n }\n }\n function getRootNode2(_ref66) {\n var include = _ref66.include, exclude = _ref66.exclude;\n var selectors = Array.from(include).concat(Array.from(exclude));\n for (var _i12 = 0; _i12 < selectors.length; _i12++) {\n var item = selectors[_i12];\n if (item instanceof window.Element) {\n return item.ownerDocument.documentElement;\n }\n if (item instanceof window.Document) {\n return item.documentElement;\n }\n }\n return document.documentElement;\n }\n function _getFrameContexts(context) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (options.iframes === false) {\n return [];\n }\n var _Context = new Context(context), frames = _Context.frames;\n return frames.map(function(_ref67) {\n var node = _ref67.node, frameContext = _objectWithoutProperties(_ref67, _excluded12);\n frameContext.initiator = false;\n var frameSelector = _getAncestry(node);\n return {\n frameSelector: frameSelector,\n frameContext: frameContext\n };\n });\n }\n function _getRule(ruleId) {\n var rule = axe._audit.rules.find(function(_ref68) {\n var id = _ref68.id;\n return id === ruleId;\n });\n if (!rule) {\n throw new Error('Cannot find rule by id: '.concat(ruleId));\n }\n return rule;\n }\n function getScroll(elm) {\n var buffer = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var overflowX = elm.scrollWidth > elm.clientWidth + buffer;\n var overflowY = elm.scrollHeight > elm.clientHeight + buffer;\n if (!(overflowX || overflowY)) {\n return;\n }\n var style = window.getComputedStyle(elm);\n var scrollableX = isScrollable(style, 'overflow-x');\n var scrollableY = isScrollable(style, 'overflow-y');\n if (overflowX && scrollableX || overflowY && scrollableY) {\n return {\n elm: elm,\n top: elm.scrollTop,\n left: elm.scrollLeft\n };\n }\n }\n function isScrollable(style, prop) {\n var overflowProp = style.getPropertyValue(prop);\n return [ 'scroll', 'auto' ].includes(overflowProp);\n }\n var get_scroll_default = memoize_default(getScroll);\n function getElmScrollRecursive(root) {\n return Array.from(root.children || root.childNodes || []).reduce(function(scrolls, elm) {\n var scroll = get_scroll_default(elm);\n if (scroll) {\n scrolls.push(scroll);\n }\n return scrolls.concat(getElmScrollRecursive(elm));\n }, []);\n }\n function getScrollState() {\n var win = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window;\n var root = win.document.documentElement;\n var windowScroll = [ win.pageXOffset !== void 0 ? {\n elm: win,\n top: win.pageYOffset,\n left: win.pageXOffset\n } : {\n elm: root,\n top: root.scrollTop,\n left: root.scrollLeft\n } ];\n return windowScroll.concat(getElmScrollRecursive(document.body));\n }\n var get_scroll_state_default = getScrollState;\n function _getStandards() {\n return clone2(standards_default);\n }\n function getStyleSheetFactory(dynamicDoc) {\n if (!dynamicDoc) {\n throw new Error('axe.utils.getStyleSheetFactory should be invoked with an argument');\n }\n return function(options) {\n var data = options.data, _options$isCrossOrigi = options.isCrossOrigin, isCrossOrigin = _options$isCrossOrigi === void 0 ? false : _options$isCrossOrigi, shadowId = options.shadowId, root = options.root, priority = options.priority, _options$isLink = options.isLink, isLink = _options$isLink === void 0 ? false : _options$isLink;\n var style = dynamicDoc.createElement('style');\n if (isLink) {\n var text = dynamicDoc.createTextNode('@import \"'.concat(data.href, '\"'));\n style.appendChild(text);\n } else {\n style.appendChild(dynamicDoc.createTextNode(data));\n }\n dynamicDoc.head.appendChild(style);\n return {\n sheet: style.sheet,\n isCrossOrigin: isCrossOrigin,\n shadowId: shadowId,\n root: root,\n priority: priority\n };\n };\n }\n var get_stylesheet_factory_default = getStyleSheetFactory;\n var styleSheet;\n function injectStyle(style) {\n if (styleSheet && styleSheet.parentNode) {\n if (styleSheet.styleSheet === void 0) {\n styleSheet.appendChild(document.createTextNode(style));\n } else {\n styleSheet.styleSheet.cssText += style;\n }\n return styleSheet;\n }\n if (!style) {\n return;\n }\n var head = document.head || document.getElementsByTagName('head')[0];\n styleSheet = document.createElement('style');\n styleSheet.type = 'text/css';\n if (styleSheet.styleSheet === void 0) {\n styleSheet.appendChild(document.createTextNode(style));\n } else {\n styleSheet.styleSheet.cssText = style;\n }\n head.appendChild(styleSheet);\n return styleSheet;\n }\n var inject_style_default = injectStyle;\n function _isArrayLike(arr) {\n return !!arr && _typeof(arr) === 'object' && typeof arr.length === 'number' && arr instanceof window.Node === false;\n }\n function _objectHasOwn(obj, prop) {\n if (!obj || _typeof(obj) !== 'object') {\n return false;\n }\n return Object.prototype.hasOwnProperty.call(obj, prop);\n }\n function _isContextSpec(contextSpec) {\n return _isContextObject(contextSpec) || _isContextProp(contextSpec);\n }\n function _isContextObject(contextSpec) {\n return [ 'include', 'exclude' ].some(function(prop) {\n return _objectHasOwn(contextSpec, prop) && _isContextProp(contextSpec[prop]);\n });\n }\n function _isContextProp(contextList) {\n return typeof contextList === 'string' || contextList instanceof window.Node || _isLabelledFramesSelector(contextList) || _isLabelledShadowDomSelector(contextList) || _isArrayLike(contextList);\n }\n function _isLabelledFramesSelector(selector) {\n return _objectHasOwn(selector, 'fromFrames');\n }\n function _isLabelledShadowDomSelector(selector) {\n return _objectHasOwn(selector, 'fromShadowDom');\n }\n function isHidden(el, recursed) {\n var node = get_node_from_tree_default(el);\n if (el.nodeType === 9) {\n return false;\n }\n if (el.nodeType === 11) {\n el = el.host;\n }\n if (node && node._isHidden !== null) {\n return node._isHidden;\n }\n var style = window.getComputedStyle(el, null);\n if (!style || !el.parentNode || style.getPropertyValue('display') === 'none' || !recursed && style.getPropertyValue('visibility') === 'hidden' || el.getAttribute('aria-hidden') === 'true') {\n return true;\n }\n var parent = el.assignedSlot ? el.assignedSlot : el.parentNode;\n var hidden = isHidden(parent, true);\n if (node) {\n node._isHidden = hidden;\n }\n return hidden;\n }\n var is_hidden_default = isHidden;\n function isHtmlElement(node) {\n var _node$props$nodeName, _node$props;\n var nodeName2 = (_node$props$nodeName = (_node$props = node.props) === null || _node$props === void 0 ? void 0 : _node$props.nodeName) !== null && _node$props$nodeName !== void 0 ? _node$props$nodeName : node.nodeName.toLowerCase();\n if (node.namespaceURI === 'http://www.w3.org/2000/svg') {\n return false;\n }\n return !!standards_default.htmlElms[nodeName2];\n }\n var is_html_element_default = isHtmlElement;\n function _isNodeInContext(node, _ref69) {\n var _ref69$include = _ref69.include, include = _ref69$include === void 0 ? [] : _ref69$include, _ref69$exclude = _ref69.exclude, exclude = _ref69$exclude === void 0 ? [] : _ref69$exclude;\n var filterInclude = include.filter(function(candidate) {\n return _contains(candidate, node);\n });\n if (filterInclude.length === 0) {\n return false;\n }\n var filterExcluded = exclude.filter(function(candidate) {\n return _contains(candidate, node);\n });\n if (filterExcluded.length === 0) {\n return true;\n }\n var deepestInclude = getDeepest(filterInclude);\n var deepestExclude = getDeepest(filterExcluded);\n return _contains(deepestExclude, deepestInclude);\n }\n function getDeepest(collection) {\n var deepest;\n var _iterator12 = _createForOfIteratorHelper(collection), _step12;\n try {\n for (_iterator12.s(); !(_step12 = _iterator12.n()).done; ) {\n var node = _step12.value;\n if (!deepest || !_contains(node, deepest)) {\n deepest = node;\n }\n }\n } catch (err) {\n _iterator12.e(err);\n } finally {\n _iterator12.f();\n }\n return deepest;\n }\n function _matchAncestry(ancestryA, ancestryB) {\n if (ancestryA.length !== ancestryB.length) {\n return false;\n }\n return ancestryA.every(function(selectorA, ancestorIndex) {\n var selectorB = ancestryB[ancestorIndex];\n if (!Array.isArray(selectorA)) {\n return selectorA === selectorB;\n }\n if (selectorA.length !== selectorB.length) {\n return false;\n }\n return selectorA.every(function(str, selectorIndex) {\n return selectorB[selectorIndex] === str;\n });\n });\n }\n function nodeSorter(nodeA, nodeB) {\n nodeA = nodeA.actualNode || nodeA;\n nodeB = nodeB.actualNode || nodeB;\n if (nodeA === nodeB) {\n return 0;\n }\n if (nodeA.compareDocumentPosition(nodeB) & 4) {\n return -1;\n } else {\n return 1;\n }\n }\n var node_sorter_default = nodeSorter;\n function _nodeLookup(node) {\n if (node instanceof abstract_virtual_node_default) {\n return {\n vNode: node,\n domNode: node.actualNode\n };\n }\n return {\n vNode: get_node_from_tree_default(node),\n domNode: node\n };\n }\n function parseSameOriginStylesheet(sheet, options, priority, importedUrls) {\n var isCrossOrigin = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n var rules = Array.from(sheet.cssRules);\n if (!rules) {\n return Promise.resolve();\n }\n var cssImportRules = rules.filter(function(r) {\n return r.type === 3;\n });\n if (!cssImportRules.length) {\n return Promise.resolve({\n isCrossOrigin: isCrossOrigin,\n priority: priority,\n root: options.rootNode,\n shadowId: options.shadowId,\n sheet: sheet\n });\n }\n var cssImportUrlsNotAlreadyImported = cssImportRules.filter(function(rule) {\n return rule.href;\n }).map(function(rule) {\n return rule.href;\n }).filter(function(url) {\n return !importedUrls.includes(url);\n });\n var promises = cssImportUrlsNotAlreadyImported.map(function(importUrl, cssRuleIndex) {\n var newPriority = [].concat(_toConsumableArray(priority), [ cssRuleIndex ]);\n var isCrossOriginRequest = /^https?:\\/\\/|^\\/\\//i.test(importUrl);\n return parse_crossorigin_stylesheet_default(importUrl, options, newPriority, importedUrls, isCrossOriginRequest);\n });\n var nonImportCSSRules = rules.filter(function(r) {\n return r.type !== 3;\n });\n if (!nonImportCSSRules.length) {\n return Promise.all(promises);\n }\n promises.push(Promise.resolve(options.convertDataToStylesheet({\n data: nonImportCSSRules.map(function(rule) {\n return rule.cssText;\n }).join(),\n isCrossOrigin: isCrossOrigin,\n priority: priority,\n root: options.rootNode,\n shadowId: options.shadowId\n })));\n return Promise.all(promises);\n }\n var parse_sameorigin_stylesheet_default = parseSameOriginStylesheet;\n function parseStylesheet(sheet, options, priority, importedUrls) {\n var isCrossOrigin = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n var isSameOrigin = isSameOriginStylesheet(sheet);\n if (isSameOrigin) {\n return parse_sameorigin_stylesheet_default(sheet, options, priority, importedUrls, isCrossOrigin);\n }\n return parse_crossorigin_stylesheet_default(sheet.href, options, priority, importedUrls, true);\n }\n function isSameOriginStylesheet(sheet) {\n try {\n var rules = sheet.cssRules;\n if (!rules && sheet.href) {\n return false;\n }\n return true;\n } catch (e) {\n return false;\n }\n }\n var parse_stylesheet_default = parseStylesheet;\n function parseCrossOriginStylesheet(url, options, priority, importedUrls, isCrossOrigin) {\n importedUrls.push(url);\n return new Promise(function(resolve, reject) {\n var request = new window.XMLHttpRequest();\n request.open('GET', url);\n request.timeout = constants_default.preload.timeout;\n request.addEventListener('error', reject);\n request.addEventListener('timeout', reject);\n request.addEventListener('loadend', function(event) {\n if (event.loaded && request.responseText) {\n return resolve(request.responseText);\n }\n reject(request.responseText);\n });\n request.send();\n }).then(function(data) {\n var result = options.convertDataToStylesheet({\n data: data,\n isCrossOrigin: isCrossOrigin,\n priority: priority,\n root: options.rootNode,\n shadowId: options.shadowId\n });\n return parse_stylesheet_default(result.sheet, options, priority, importedUrls, result.isCrossOrigin);\n });\n }\n var parse_crossorigin_stylesheet_default = parseCrossOriginStylesheet;\n function parseTabindex(value) {\n if (typeof value !== 'string') {\n return null;\n }\n var match = value.trim().match(/^([-+]?\\d+)/);\n if (match) {\n return Number(match[1]);\n }\n return null;\n }\n var parse_tabindex_default = parseTabindex;\n var performanceTimer = function() {\n function now() {\n if (window.performance && window.performance) {\n return window.performance.now();\n }\n }\n var axeStartTime = now();\n var axeStarted = false;\n return {\n start: function start() {\n this.reset();\n axeStarted = true;\n this.mark('mark_axe_start');\n },\n end: function end() {\n this.mark('mark_axe_end');\n this.measure('axe', 'mark_axe_start', 'mark_axe_end', true);\n this.logMeasures('axe');\n this.clearMark('mark_axe_start', 'mark_axe_end');\n axeStarted = false;\n },\n auditStart: function auditStart() {\n if (!axeStarted) {\n this.reset();\n }\n this.mark('mark_audit_start');\n },\n auditEnd: function auditEnd() {\n this.mark('mark_audit_end');\n this.measure('audit_start_to_end', 'mark_audit_start', 'mark_audit_end', true);\n this.logMeasures();\n this.clearMark('mark_audit_start', 'mark_audit_end');\n },\n mark: function mark(markName) {\n var _window$performance;\n if ((_window$performance = window.performance) !== null && _window$performance !== void 0 && _window$performance.mark) {\n window.performance.mark(markName);\n }\n },\n measure: function measure(measureName, startMark, endMark) {\n var _window$performance2;\n var keepMarks = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;\n if (!((_window$performance2 = window.performance) !== null && _window$performance2 !== void 0 && _window$performance2.measure)) {\n return;\n }\n try {\n window.performance.measure(measureName, startMark, endMark);\n } catch (e) {\n this._log(e);\n }\n if (!keepMarks) {\n this.clearMark(startMark, endMark);\n }\n },\n logMeasures: function logMeasures(measureName) {\n var _this6 = this, _window$performance3, _window$performance4;\n var last2 = function last2(arr) {\n return Array.isArray(arr) ? arr[arr.length - 1] : arr;\n };\n var logMeasure = function logMeasure(req) {\n _this6._log('Measure ' + req.name + ' took ' + req.duration + 'ms');\n };\n if (!((_window$performance3 = window.performance) !== null && _window$performance3 !== void 0 && _window$performance3.getEntriesByType) || !((_window$performance4 = window.performance) !== null && _window$performance4 !== void 0 && _window$performance4.getEntriesByName)) {\n return;\n }\n var axeStart = last2(window.performance.getEntriesByName('mark_axe_start')) || last2(window.performance.getEntriesByName('mark_audit_start'));\n if (!axeStart) {\n this._log('Axe must be started before using performanceTimer');\n return;\n }\n var measures = window.performance.getEntriesByType('measure').filter(function(measure) {\n return measure.startTime >= axeStart.startTime;\n });\n for (var _i13 = 0; _i13 < measures.length; ++_i13) {\n var req = measures[_i13];\n if (req.name === measureName) {\n logMeasure(req);\n return;\n } else if (!measureName) {\n logMeasure(req);\n }\n }\n },\n timeElapsed: function timeElapsed() {\n var currentTime = now();\n return currentTime - axeStartTime;\n },\n clearMark: function clearMark() {\n var _window$performance5;\n if (!((_window$performance5 = window.performance) !== null && _window$performance5 !== void 0 && _window$performance5.clearMarks)) {\n return;\n }\n for (var _len7 = arguments.length, markNames = new Array(_len7), _key0 = 0; _key0 < _len7; _key0++) {\n markNames[_key0] = arguments[_key0];\n }\n for (var _i14 = 0, _markNames = markNames; _i14 < _markNames.length; _i14++) {\n var markName = _markNames[_i14];\n window.performance.clearMarks(markName);\n }\n },\n reset: function reset() {\n axeStartTime = now();\n },\n _log: function _log(message) {\n log_default(message);\n }\n };\n }();\n var performance_timer_default = performanceTimer;\n function _pollyfillElementsFromPoint() {\n if (document.elementsFromPoint) {\n return document.elementsFromPoint;\n }\n if (document.msElementsFromPoint) {\n return document.msElementsFromPoint;\n }\n var usePointer = function() {\n var element = document.createElement('x');\n element.style.cssText = 'pointer-events:auto';\n return element.style.pointerEvents === 'auto';\n }();\n var cssProp = usePointer ? 'pointer-events' : 'visibility';\n var cssDisableVal = usePointer ? 'none' : 'hidden';\n var style = document.createElement('style');\n style.innerHTML = usePointer ? '* { pointer-events: all }' : '* { visibility: visible }';\n return function(x, y) {\n var current, i, d2;\n var elements = [];\n var previousPointerEvents = [];\n document.head.appendChild(style);\n while ((current = document.elementFromPoint(x, y)) && elements.indexOf(current) === -1) {\n elements.push(current);\n previousPointerEvents.push({\n value: current.style.getPropertyValue(cssProp),\n priority: current.style.getPropertyPriority(cssProp)\n });\n current.style.setProperty(cssProp, cssDisableVal, 'important');\n }\n if (elements.indexOf(document.documentElement) < elements.length - 1) {\n elements.splice(elements.indexOf(document.documentElement), 1);\n elements.push(document.documentElement);\n }\n for (i = previousPointerEvents.length; !!(d2 = previousPointerEvents[--i]); ) {\n elements[i].style.setProperty(cssProp, d2.value ? d2.value : '', d2.priority);\n }\n document.head.removeChild(style);\n return elements;\n };\n }\n if (typeof window.addEventListener === 'function') {\n document.elementsFromPoint = _pollyfillElementsFromPoint();\n }\n function uniqueArray(arr1, arr2) {\n return arr1.concat(arr2).filter(function(elem, pos, arr) {\n return arr.indexOf(elem) === pos;\n });\n }\n var unique_array_default = uniqueArray;\n function createLocalVariables(vNodes, anyLevel, thisLevel, parentShadowId, recycledLocalVariable) {\n var retVal = recycledLocalVariable || {};\n retVal.vNodes = vNodes;\n retVal.vNodesIndex = 0;\n retVal.anyLevel = anyLevel;\n retVal.thisLevel = thisLevel;\n retVal.parentShadowId = parentShadowId;\n return retVal;\n }\n function matchExpressions(domTree, expressions, filter) {\n var recycledLocalVariables = cache_default.get('qsa.recycledLocalVariables', function() {\n return [];\n });\n var stack = [];\n var vNodes = Array.isArray(domTree) ? domTree : [ domTree ];\n var currentLevel = createLocalVariables(vNodes, expressions, null, domTree[0].shadowId, recycledLocalVariables.pop());\n var result = [];\n while (currentLevel.vNodesIndex < currentLevel.vNodes.length) {\n var _currentLevel$anyLeve, _currentLevel$thisLev;\n var vNode = currentLevel.vNodes[currentLevel.vNodesIndex++];\n var childOnly = null;\n var childAny = null;\n var combinedLength = (((_currentLevel$anyLeve = currentLevel.anyLevel) === null || _currentLevel$anyLeve === void 0 ? void 0 : _currentLevel$anyLeve.length) || 0) + (((_currentLevel$thisLev = currentLevel.thisLevel) === null || _currentLevel$thisLev === void 0 ? void 0 : _currentLevel$thisLev.length) || 0);\n var added = false;\n for (var _i15 = 0; _i15 < combinedLength; _i15++) {\n var _currentLevel$anyLeve2, _currentLevel$anyLeve3, _currentLevel$anyLeve4;\n var exp = _i15 < (((_currentLevel$anyLeve2 = currentLevel.anyLevel) === null || _currentLevel$anyLeve2 === void 0 ? void 0 : _currentLevel$anyLeve2.length) || 0) ? currentLevel.anyLevel[_i15] : currentLevel.thisLevel[_i15 - (((_currentLevel$anyLeve3 = currentLevel.anyLevel) === null || _currentLevel$anyLeve3 === void 0 ? void 0 : _currentLevel$anyLeve3.length) || 0)];\n if ((!exp[0].id || vNode.shadowId === currentLevel.parentShadowId) && _matchesExpression(vNode, exp[0])) {\n if (exp.length === 1) {\n if (!added && (!filter || filter(vNode))) {\n result.push(vNode);\n added = true;\n }\n } else {\n var rest = exp.slice(1);\n if ([ ' ', '>' ].includes(rest[0].combinator) === false) {\n throw new Error('axe.utils.querySelectorAll does not support the combinator: ' + exp[1].combinator);\n }\n if (rest[0].combinator === '>') {\n (childOnly = childOnly || []).push(rest);\n } else {\n (childAny = childAny || []).push(rest);\n }\n }\n }\n if ((!exp[0].id || vNode.shadowId === currentLevel.parentShadowId) && (_currentLevel$anyLeve4 = currentLevel.anyLevel) !== null && _currentLevel$anyLeve4 !== void 0 && _currentLevel$anyLeve4.includes(exp)) {\n (childAny = childAny || []).push(exp);\n }\n }\n if (vNode.children && vNode.children.length) {\n stack.push(currentLevel);\n currentLevel = createLocalVariables(vNode.children, childAny, childOnly, vNode.shadowId, recycledLocalVariables.pop());\n }\n while (currentLevel.vNodesIndex === currentLevel.vNodes.length && stack.length) {\n recycledLocalVariables.push(currentLevel);\n currentLevel = stack.pop();\n }\n }\n return result;\n }\n function querySelectorAllFilter(domTree, selector, filter) {\n domTree = Array.isArray(domTree) ? domTree : [ domTree ];\n var expressions = _convertSelector(selector);\n var nodes = getNodesMatchingExpression(domTree, expressions, filter);\n if (nodes) {\n return nodes;\n }\n return matchExpressions(domTree, expressions, filter);\n }\n var query_selector_all_filter_default = querySelectorAllFilter;\n function preloadCssom(_ref70) {\n var _ref70$treeRoot = _ref70.treeRoot, treeRoot = _ref70$treeRoot === void 0 ? axe._tree[0] : _ref70$treeRoot;\n var rootNodes = getAllRootNodesInTree(treeRoot);\n if (!rootNodes.length) {\n return Promise.resolve();\n }\n var dynamicDoc = document.implementation.createHTMLDocument('Dynamic document for loading cssom');\n var convertDataToStylesheet = get_stylesheet_factory_default(dynamicDoc);\n return getCssomForAllRootNodes(rootNodes, convertDataToStylesheet).then(function(assets) {\n return flattenAssets(assets);\n });\n }\n var preload_cssom_default = preloadCssom;\n function getAllRootNodesInTree(tree) {\n var ids = [];\n var rootNodes = query_selector_all_filter_default(tree, '*', function(node) {\n if (ids.includes(node.shadowId)) {\n return false;\n }\n ids.push(node.shadowId);\n return true;\n }).map(function(node) {\n return {\n shadowId: node.shadowId,\n rootNode: get_root_node_default(node.actualNode)\n };\n });\n return unique_array_default(rootNodes, []);\n }\n function getCssomForAllRootNodes(rootNodes, convertDataToStylesheet) {\n var promises = [];\n rootNodes.forEach(function(_ref71, index) {\n var rootNode = _ref71.rootNode, shadowId = _ref71.shadowId;\n var sheets = getStylesheetsOfRootNode(rootNode, shadowId, convertDataToStylesheet);\n if (!sheets) {\n return Promise.all(promises);\n }\n var rootIndex = index + 1;\n var parseOptions = {\n rootNode: rootNode,\n shadowId: shadowId,\n convertDataToStylesheet: convertDataToStylesheet,\n rootIndex: rootIndex\n };\n var importedUrls = [];\n var p2 = Promise.all(sheets.map(function(sheet, sheetIndex) {\n var priority = [ rootIndex, sheetIndex ];\n return parse_stylesheet_default(sheet, parseOptions, priority, importedUrls);\n }));\n promises.push(p2);\n });\n return Promise.all(promises);\n }\n function flattenAssets(assets) {\n return assets.reduce(function(acc, val) {\n return Array.isArray(val) ? acc.concat(flattenAssets(val)) : acc.concat(val);\n }, []);\n }\n function getStylesheetsOfRootNode(rootNode, shadowId, convertDataToStylesheet) {\n var sheets;\n if (rootNode.nodeType === 11 && shadowId) {\n sheets = getStylesheetsFromDocumentFragment(rootNode, convertDataToStylesheet);\n } else {\n sheets = getStylesheetsFromDocument(rootNode);\n }\n return filterStylesheetsWithSameHref(sheets);\n }\n function getStylesheetsFromDocumentFragment(rootNode, convertDataToStylesheet) {\n return Array.from(rootNode.children).filter(filerStyleAndLinkAttributesInDocumentFragment).reduce(function(out, node) {\n var nodeName2 = node.nodeName.toUpperCase();\n var data = nodeName2 === 'STYLE' ? node.textContent : node;\n var isLink = nodeName2 === 'LINK';\n var stylesheet = convertDataToStylesheet({\n data: data,\n isLink: isLink,\n root: rootNode\n });\n if (stylesheet.sheet) {\n out.push(stylesheet.sheet);\n }\n return out;\n }, []);\n }\n function getStylesheetsFromDocument(rootNode) {\n return Array.from(rootNode.styleSheets).filter(function(sheet) {\n if (!sheet.media) {\n return false;\n }\n return filterMediaIsPrint(sheet.media.mediaText);\n });\n }\n function filerStyleAndLinkAttributesInDocumentFragment(node) {\n var nodeName2 = node.nodeName.toUpperCase();\n var linkHref = node.getAttribute('href');\n var linkRel = node.getAttribute('rel');\n var isLink = nodeName2 === 'LINK' && linkHref && linkRel && node.rel.toUpperCase().includes('STYLESHEET');\n var isStyle = nodeName2 === 'STYLE';\n return isStyle || isLink && filterMediaIsPrint(node.media);\n }\n function filterMediaIsPrint(media) {\n if (!media) {\n return true;\n }\n return !media.toUpperCase().includes('PRINT');\n }\n function filterStylesheetsWithSameHref(sheets) {\n var hrefs = [];\n return sheets.filter(function(sheet) {\n if (!sheet.href) {\n return true;\n }\n if (hrefs.includes(sheet.href)) {\n return false;\n }\n hrefs.push(sheet.href);\n return true;\n });\n }\n function preloadMedia(_ref72) {\n var _ref72$treeRoot = _ref72.treeRoot, treeRoot = _ref72$treeRoot === void 0 ? axe._tree[0] : _ref72$treeRoot;\n var mediaVirtualNodes = query_selector_all_filter_default(treeRoot, 'video[autoplay], audio[autoplay]', function(_ref73) {\n var actualNode = _ref73.actualNode;\n if (actualNode.preload === 'none' && actualNode.readyState === 0 && actualNode.networkState !== actualNode.NETWORK_LOADING) {\n return false;\n }\n if (actualNode.hasAttribute('paused') || actualNode.hasAttribute('muted')) {\n return false;\n }\n if (actualNode.hasAttribute('src')) {\n return !!actualNode.getAttribute('src');\n }\n var sourceWithSrc = Array.from(actualNode.getElementsByTagName('source')).filter(function(source) {\n return !!source.getAttribute('src');\n });\n if (sourceWithSrc.length <= 0) {\n return false;\n }\n return true;\n });\n return Promise.all(mediaVirtualNodes.map(function(_ref74) {\n var actualNode = _ref74.actualNode;\n return isMediaElementReady(actualNode);\n }));\n }\n var preload_media_default = preloadMedia;\n function isMediaElementReady(elm) {\n return new Promise(function(resolve) {\n if (elm.readyState > 0) {\n resolve(elm);\n }\n function onMediaReady() {\n elm.removeEventListener('loadedmetadata', onMediaReady);\n resolve(elm);\n }\n elm.addEventListener('loadedmetadata', onMediaReady);\n });\n }\n function _preload(options) {\n var preloadFunctionsMap = {\n cssom: preload_cssom_default,\n media: preload_media_default\n };\n if (!_shouldPreload(options)) {\n return Promise.resolve();\n }\n return new Promise(function(resolve, reject) {\n var _getPreloadConfig2 = _getPreloadConfig(options), assets = _getPreloadConfig2.assets, timeout = _getPreloadConfig2.timeout;\n var preloadTimeout = setTimeout(function() {\n return reject(new Error('Preload assets timed out.'));\n }, timeout);\n Promise.all(assets.map(function(asset) {\n return preloadFunctionsMap[asset](options).then(function(results) {\n return _defineProperty({}, asset, results);\n });\n })).then(function(results) {\n var preloadAssets = results.reduce(function(out, result) {\n return _extends({}, out, result);\n }, {});\n clearTimeout(preloadTimeout);\n resolve(preloadAssets);\n })['catch'](function(err2) {\n clearTimeout(preloadTimeout);\n reject(err2);\n });\n });\n }\n function isValidPreloadObject(preloadObj) {\n return _typeof(preloadObj) === 'object' && Array.isArray(preloadObj.assets);\n }\n function _shouldPreload(options) {\n if (!options || options.preload === void 0 || options.preload === null) {\n return true;\n }\n if (typeof options.preload === 'boolean') {\n return options.preload;\n }\n return isValidPreloadObject(options.preload);\n }\n function _getPreloadConfig(options) {\n var _constants_default$pr = constants_default.preload, assets = _constants_default$pr.assets, timeout = _constants_default$pr.timeout;\n var config = {\n assets: assets,\n timeout: timeout\n };\n if (!options.preload) {\n return config;\n }\n if (typeof options.preload === 'boolean') {\n return config;\n }\n var areRequestedAssetsValid = options.preload.assets.every(function(a2) {\n return assets.includes(a2.toLowerCase());\n });\n if (!areRequestedAssetsValid) {\n throw new Error('Requested assets, not supported. Supported assets are: '.concat(assets.join(', '), '.'));\n }\n config.assets = unique_array_default(options.preload.assets.map(function(a2) {\n return a2.toLowerCase();\n }), []);\n if (options.preload.timeout && typeof options.preload.timeout === 'number' && !isNaN(options.preload.timeout)) {\n config.timeout = options.preload.timeout;\n }\n return config;\n }\n function _publishMetaData(ruleResult) {\n var checksData = axe._audit.data.checks || {};\n var rulesData = axe._audit.data.rules || {};\n var rule = find_by_default(axe._audit.rules, 'id', ruleResult.id) || {};\n ruleResult.tags = clone2(rule.tags || []);\n var shouldBeTrue = extender(checksData, true, rule);\n var shouldBeFalse = extender(checksData, false, rule);\n ruleResult.nodes.forEach(function(detail) {\n detail.any.forEach(shouldBeTrue);\n detail.all.forEach(shouldBeTrue);\n detail.none.forEach(shouldBeFalse);\n });\n extend_meta_data_default(ruleResult, clone2(rulesData[ruleResult.id] || {}));\n }\n function getIncompleteReason(checkData, messages) {\n function getDefaultMsg(message) {\n if (message.incomplete && message.incomplete['default']) {\n return message.incomplete['default'];\n } else {\n return incompleteFallbackMessage();\n }\n }\n if (checkData && checkData.missingData) {\n try {\n var msg = messages.incomplete[checkData.missingData[0].reason];\n if (!msg) {\n throw new Error();\n }\n return msg;\n } catch (_unused5) {\n if (typeof checkData.missingData === 'string') {\n return messages.incomplete[checkData.missingData];\n } else {\n return getDefaultMsg(messages);\n }\n }\n } else if (checkData && checkData.messageKey) {\n return messages.incomplete[checkData.messageKey];\n } else {\n return getDefaultMsg(messages);\n }\n }\n function extender(checksData, shouldBeTrue, rule) {\n return function(check) {\n var sourceData = checksData[check.id] || {};\n var messages = sourceData.messages || {};\n var data = Object.assign({}, sourceData);\n delete data.messages;\n if (!rule.reviewOnFail && check.result === void 0) {\n if (_typeof(messages.incomplete) === 'object' && !Array.isArray(check.data)) {\n data.message = getIncompleteReason(check.data, messages);\n }\n if (!data.message) {\n data.message = messages.incomplete;\n }\n } else {\n data.message = check.result === shouldBeTrue ? messages.pass : messages.fail;\n }\n if (typeof data.message !== 'function') {\n data.message = process_message_default(data.message, check.data);\n }\n extend_meta_data_default(check, data);\n };\n }\n function querySelectorAll(domTree, selector) {\n return query_selector_all_filter_default(domTree, selector);\n }\n var query_selector_all_default = querySelectorAll;\n function matchTags(rule, runOnly) {\n var include, exclude;\n var defaultExclude = axe._audit && axe._audit.tagExclude ? axe._audit.tagExclude : [];\n if (runOnly.hasOwnProperty('include') || runOnly.hasOwnProperty('exclude')) {\n include = runOnly.include || [];\n include = Array.isArray(include) ? include : [ include ];\n exclude = runOnly.exclude || [];\n exclude = Array.isArray(exclude) ? exclude : [ exclude ];\n exclude = exclude.concat(defaultExclude.filter(function(tag) {\n return include.indexOf(tag) === -1;\n }));\n } else {\n include = Array.isArray(runOnly) ? runOnly : [ runOnly ];\n exclude = defaultExclude.filter(function(tag) {\n return include.indexOf(tag) === -1;\n });\n }\n var matching = include.some(function(tag) {\n return rule.tags.indexOf(tag) !== -1;\n });\n if (matching || include.length === 0 && rule.enabled !== false) {\n return exclude.every(function(tag) {\n return rule.tags.indexOf(tag) === -1;\n });\n } else {\n return false;\n }\n }\n function ruleShouldRun(rule, context, options) {\n var runOnly = options.runOnly || {};\n var ruleOptions = (options.rules || {})[rule.id];\n if (rule.pageLevel && !context.page) {\n return false;\n } else if (runOnly.type === 'rule') {\n return runOnly.values.indexOf(rule.id) !== -1;\n } else if (ruleOptions && typeof ruleOptions.enabled === 'boolean') {\n return ruleOptions.enabled;\n } else if (runOnly.type === 'tag' && runOnly.values) {\n return matchTags(rule, runOnly.values);\n } else {\n return matchTags(rule, []);\n }\n }\n var rule_should_run_default = ruleShouldRun;\n function _filterHtmlAttrs(element, filterAttrs) {\n if (!filterAttrs) {\n return element;\n }\n var node = element.cloneNode(false);\n var attributes2 = get_node_attributes_default(node);\n if (node.nodeType === 1) {\n var outerHTML = node.outerHTML;\n node = cache_default.get(outerHTML, function() {\n return setNodeAttributes(node, attributes2, element, filterAttrs);\n });\n } else {\n node = setNodeAttributes(node, attributes2, element, filterAttrs);\n }\n Array.from(element.childNodes).forEach(function(child) {\n node.appendChild(_filterHtmlAttrs(child, filterAttrs));\n });\n return node;\n }\n function setNodeAttributes(node, attributes2, element, filterAttrs) {\n if (!attributes2) {\n return node;\n }\n node = document.createElement(node.nodeName);\n Array.from(attributes2).forEach(function(attr) {\n if (!attributeMatches(element, attr.name, filterAttrs)) {\n node.setAttribute(attr.name, attr.value);\n }\n });\n return node;\n }\n function attributeMatches(node, attrName, filterAttrs) {\n if (typeof filterAttrs[attrName] === 'undefined') {\n return false;\n }\n if (filterAttrs[attrName] === true) {\n return true;\n }\n return element_matches_default(node, filterAttrs[attrName]);\n }\n function _select(selector, context) {\n var result = [];\n var candidate;\n if (axe._selectCache) {\n for (var j = 0, l = axe._selectCache.length; j < l; j++) {\n var item = axe._selectCache[j];\n if (item.selector === selector) {\n return item.result;\n }\n }\n }\n var outerIncludes = getOuterIncludes(context.include);\n var isInContext = getContextFilter(context);\n for (var _i16 = 0; _i16 < outerIncludes.length; _i16++) {\n candidate = outerIncludes[_i16];\n var nodes = query_selector_all_filter_default(candidate, selector, isInContext);\n result = mergeArrayUniques(result, nodes);\n }\n if (axe._selectCache) {\n axe._selectCache.push({\n selector: selector,\n result: result\n });\n }\n return result;\n }\n function getOuterIncludes(includes) {\n return includes.reduce(function(res, el) {\n if (!res.length || !_contains(res[res.length - 1], el)) {\n res.push(el);\n }\n return res;\n }, []);\n }\n function getContextFilter(context) {\n if (!context.exclude || context.exclude.length === 0) {\n return null;\n }\n return function(node) {\n return _isNodeInContext(node, context);\n };\n }\n function mergeArrayUniques(arr1, arr2) {\n if (arr1.length === 0) {\n return arr2;\n }\n if (arr1.length < arr2.length) {\n var temp = arr1;\n arr1 = arr2;\n arr2 = temp;\n }\n for (var _i17 = 0, l = arr2.length; _i17 < l; _i17++) {\n if (!arr1.includes(arr2[_i17])) {\n arr1.push(arr2[_i17]);\n }\n }\n return arr1;\n }\n function _serializeError(err2) {\n var iteration = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n if (_typeof(err2) !== 'object' || err2 === null) {\n return {\n message: String(err2)\n };\n }\n var serial = {};\n var _iterator13 = _createForOfIteratorHelper(constants_default.serializableErrorProps), _step13;\n try {\n for (_iterator13.s(); !(_step13 = _iterator13.n()).done; ) {\n var prop = _step13.value;\n if ([ 'string', 'number', 'boolean' ].includes(_typeof(err2[prop]))) {\n serial[prop] = err2[prop];\n }\n }\n } catch (err) {\n _iterator13.e(err);\n } finally {\n _iterator13.f();\n }\n if (err2.cause) {\n serial.cause = iteration < 10 ? _serializeError(err2.cause, iteration + 1) : '...';\n }\n return serial;\n }\n var RuleError = function(_Error) {\n function RuleError(_ref76) {\n var _error$name;\n var _this7;\n var error = _ref76.error, ruleId = _ref76.ruleId, method = _ref76.method, errorNode = _ref76.errorNode;\n _classCallCheck(this, RuleError);\n _this7 = _callSuper(this, RuleError);\n _this7.name = (_error$name = error.name) !== null && _error$name !== void 0 ? _error$name : 'RuleError';\n _this7.message = error.message;\n _this7.stack = error.stack;\n if (error.cause) {\n _this7.cause = _serializeError(error.cause);\n }\n if (ruleId) {\n _this7.ruleId = ruleId;\n _this7.message += ' Skipping '.concat(_this7.ruleId, ' rule.');\n }\n if (method) {\n _this7.method = method;\n }\n if (errorNode) {\n _this7.errorNode = errorNode;\n }\n return _this7;\n }\n _inherits(RuleError, _Error);\n return _createClass(RuleError);\n }(_wrapNativeSuper(Error));\n var rule_error_default = RuleError;\n function setScroll(elm, top, left) {\n if (elm === window) {\n return elm.scroll(left, top);\n } else {\n elm.scrollTop = top;\n elm.scrollLeft = left;\n }\n }\n function setScrollState(scrollState) {\n scrollState.forEach(function(_ref77) {\n var elm = _ref77.elm, top = _ref77.top, left = _ref77.left;\n return setScroll(elm, top, left);\n });\n }\n var set_scroll_state_default = setScrollState;\n function _shadowSelect(selectors) {\n var selectorArr = Array.isArray(selectors) ? _toConsumableArray(selectors) : [ selectors ];\n return selectRecursive(selectorArr, document);\n }\n function selectRecursive(selectors, doc) {\n var selectorStr = selectors.shift();\n var elm = selectorStr ? doc.querySelector(selectorStr) : null;\n if (selectors.length === 0) {\n return elm;\n }\n if (!(elm !== null && elm !== void 0 && elm.shadowRoot)) {\n return null;\n }\n return selectRecursive(selectors, elm.shadowRoot);\n }\n function _shadowSelectAll(selectors) {\n var doc = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : document;\n var selectorArr = Array.isArray(selectors) ? _toConsumableArray(selectors) : [ selectors ];\n if (selectors.length === 0) {\n return [];\n }\n return selectAllRecursive(selectorArr, doc);\n }\n function selectAllRecursive(_ref78, doc) {\n var _ref79 = _toArray(_ref78), selectorStr = _ref79[0], restSelector = _ref79.slice(1);\n var elms = doc.querySelectorAll(selectorStr);\n if (restSelector.length === 0) {\n return Array.from(elms);\n }\n var selected = [];\n var _iterator14 = _createForOfIteratorHelper(elms), _step14;\n try {\n for (_iterator14.s(); !(_step14 = _iterator14.n()).done; ) {\n var elm = _step14.value;\n if (elm !== null && elm !== void 0 && elm.shadowRoot) {\n selected.push.apply(selected, _toConsumableArray(selectAllRecursive(restSelector, elm.shadowRoot)));\n }\n }\n } catch (err) {\n _iterator14.e(err);\n } finally {\n _iterator14.f();\n }\n return selected;\n }\n function validInputTypes() {\n return [ 'hidden', 'text', 'search', 'tel', 'url', 'email', 'password', 'date', 'month', 'week', 'time', 'datetime-local', 'number', 'range', 'color', 'checkbox', 'radio', 'file', 'submit', 'image', 'reset', 'button' ];\n }\n var valid_input_type_default = validInputTypes;\n var langs = [ , [ , [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, , 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, , 1, 1, 1, , 1, 1, , 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, , 1, 1, 1, 1, 1, 1, 1, , 1, , 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, , , , , , 1, 1, 1, 1, , , 1, 1, 1, , 1, , 1, , 1, 1 ], [ 1, 1, 1, , 1, 1, , 1, 1, 1, , 1, , , 1, 1, 1, , , 1, 1, 1, , , , , 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, , , , , 1, 1, 1, , 1, 1, 1, 1, 1, 1, , 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , , 1, 1, 1 ], [ , 1, , , , , , 1, , 1, , , , , 1, , 1, , , , 1, 1, , 1, , , 1 ], [ 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, , 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , , , 1, 1, 1, 1, , , 1, , 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, , 1, 1, , , 1, , , , , 1, 1, 1, , 1, , 1, , 1, , , , , , 1 ], [ 1, , 1, 1, 1, 1, , , 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1 ], [ 1, , 1, , 1, , , , , 1, , 1, 1, 1, 1, 1, , , , 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, , 1, 1, 1, , 1, , 1, 1, 1, , , 1, 1, 1, 1, 1, 1, 1, 1 ], [ , , 1, , , 1, , 1, , , , 1, 1, 1, , , , , , , , , , , 1 ], [ 1, 1, 1, 1, 1, 1, , 1, 1, 1, , 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, , , 1, 1, 1 ], [ 1, 1, 1, 1, 1, , , 1, , , 1, , , 1, 1, 1, , , , , 1, , , , , , 1 ] ], [ , [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, , 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, , , 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, , , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, , 1, , , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, , 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ] ], [ , [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, , 1, 1, , 1, 1, 1, 1, 1, 1, 1, , 1 ], [ , 1, , 1, 1, 1, , 1, 1, , 1, , 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, , 1, 1, 1, 1, 1, 1, 1, 1, , , 1, 1, 1, , , 1, 1, , , , , , 1, 1 ], [ 1, 1, 1, , , , , 1, , , , 1, 1, , 1, , , , , , 1, , , , , 1 ], [ , 1, , , 1, , , 1, , , , , , 1 ], [ , 1, , 1, , , , 1, , , , 1 ], [ 1, , 1, 1, 1, , 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, , , 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, , , 1, , , 1, , 1, 1, , 1, , 1, , , , , 1, , 1 ], [ , 1, , , , 1, , , 1, 1, , 1, , 1, 1, 1, 1, , 1, 1, , , 1, , , 1 ], [ , 1, 1, , , , , , 1, , , , 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, , 1, 1, 1 ], [ , 1, , 1, 1, 1, , , 1, 1, 1, 1, 1, 1, , 1, , , , , 1, 1, , 1, , 1 ], [ , 1, , 1, , 1, , 1, , 1, , 1, 1, 1, 1, 1, , , 1, 1, 1 ], [ , 1, 1, 1, , , , 1, 1, 1, , 1, 1, , , 1, 1, , 1, 1, 1, 1, , 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, , , 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, , 1, 1, 1, , 1, , , , , 1, 1, 1, , , 1, , 1, , , 1, 1 ], [ , , , , 1, , , , , , , , , , , , , , , , , 1 ], [ 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1 ], [ , 1, , 1, 1, 1, , 1, 1, , , , 1, 1, 1, 1, 1, , , 1, 1, 1, , , , , 1 ], [ 1, 1, 1, 1, , , , 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, , , , , , , 1, , , , , , , 1 ], [ , 1, 1, , 1, 1, , 1, , , , , , , , , , , , , 1 ], , [ 1, 1, 1, , , , , , , , , , , , , 1 ], [ , , , , , , , , 1, , , 1, , , 1, 1, , , , , 1 ] ], [ , [ 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1 ], [ , 1, 1, , 1, 1, 1, 1, , 1, 1, , 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, , 1 ], [ , , , 1, , , , , , , , , , , , , , , 1 ], [ , 1, , , 1, 1, , 1, , 1, 1, , , , 1, 1, , , 1, 1, , , , 1 ], [ 1, , , 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, , 1, 1, 1, 1, , , 1, , , , 1 ], , [ , 1, 1, 1, 1, 1, , 1, 1, 1, , 1, 1, , 1, 1, , , 1, 1, 1, 1, , 1, 1, , 1 ], [ , 1, , , 1, , , 1, , 1, , , 1, 1, 1, 1, , , 1, 1, , 1, 1, 1, 1 ], [ , 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, , , 1, 1, 1, 1, 1, 1, 1, , , 1, , , 1, , 1 ], [ , 1, , , , , , , , , , 1, 1, , , , , , 1, 1, , , , , 1 ], [ , , , , , , , 1, , , , 1, , 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, , , , 1, 1, 1, 1, 1, , , 1, 1, , 1, 1, 1, 1, 1 ], [ , 1, , , 1, 1, , 1, , 1, 1, 1, , , 1, 1, , , 1, , 1, 1, 1, 1, , 1 ], [ , 1, 1, 1, , 1, 1, , 1, 1, , 1, 1, , 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1 ], [ , , , , , , , , , , , , , , , , 1 ], , [ , 1, 1, 1, 1, 1, , 1, 1, 1, , , 1, , 1, 1, , 1, 1, 1, 1, 1, , 1, , 1 ], [ , , 1, , , 1, , , 1, 1, , , 1, , 1, 1, , 1 ], [ , 1, 1, , 1, , , , 1, 1, , 1, , 1, 1, 1, 1, , 1, 1, 1, 1, , , , 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1 ], [ 1, 1 ], [ , 1, , , , , , , , , , 1, 1, , , , , , 1, 1, , 1, , 1, , 1, 1 ], , [ , 1, 1, , 1, , , 1, , 1, , , , 1, 1, 1, , , , , , 1, , , , 1 ], [ 1, 1, , , 1, 1, , 1, , , , , 1, , 1 ] ], [ , [ , 1 ], [ , , , 1, , , , 1, , , , 1, , , , 1, , , 1, , , 1 ], [ , , , , , , , , , , , , , , , , , , 1, 1, , , , , , 1 ], , [ 1, , , , , 1 ], [ , 1, , , , 1, , , , 1 ], [ , 1, , , , , , , , , , , 1, , , 1, , , , , , , , , 1, 1 ], [ , , , , , , , , , , , , , , , , , , , , , 1 ], [ , , , , , , , , , , , , , , , , 1, , , , 1, , 1 ], [ , 1 ], [ , 1, , 1, , 1, , 1, , 1, , 1, 1, 1, , 1, 1, , 1, , , , , , , 1 ], [ 1, , , , , 1, , , 1, 1, , 1, , 1, , 1, 1, , , , , 1, , , 1 ], [ , 1, 1, , , 1, , 1, , 1, , 1, , 1, 1, 1, 1, , , 1, , 1, , 1, 1, 1 ], [ 1, 1, 1, 1, 1, , 1, , 1, , , , 1, 1, 1, 1, , 1, 1, , , 1, 1, 1, 1 ], [ 1, , , , , , , , , , , , , , , , , , , , 1 ], [ , , , , , , , , , 1 ], , [ , 1, , , , , , 1, 1, 1, , 1, , , , 1, , , 1, 1, 1, , , 1 ], [ 1, , , , , 1, , 1, 1, 1, , 1, 1, 1, 1, 1, , 1, , 1, , 1, , , 1, 1 ], [ 1, , 1, 1, , , , , 1, , , , , , 1, 1, , , 1, 1, 1, 1, , , 1, , 1 ], [ 1, , , , , , , , , , , , , , , , , 1 ], [ , , , , , 1, , , 1, , , , , , 1 ], [ , , , , , , , , , , , , , , , 1 ], [ , , , , , , , , , , , , , , , , , , , , 1 ], [ , 1, , , , , , , , , , , , , , 1 ], [ , 1, , , , 1 ] ], [ , [ 1, 1, 1, , 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, , 1, , 1, 1, , , 1, 1, 1 ], [ , , , , , , , , , , , , 1 ], [ , , , , , , , , , , , , , , , , , , , 1 ], , [ , , , , , , , , , , , , , , , , , , 1 ], [ 1, , , , , , , , , 1, , , , 1 ], [ , , , , , , , , , , , , , , , , , , 1 ], , [ 1, 1, , , , 1, 1, , , , , , 1, , , , 1, , 1, , 1, 1, , 1 ], [ 1 ], [ , , , , , , , , , , , 1, , , , , , , , , , , 1 ], [ , 1, , , , , , , 1, 1, , , 1, , 1, , , , 1, , , , , , , 1 ], [ , , , , , , , , , , , , , , , , 1, , , , , 1 ], [ , , 1, , , , , 1, , 1 ], [ 1, , , , 1, , , , , 1, , , , 1, 1, , , , 1, 1, , , , , 1 ], [ , , , , , 1 ], [ , , , , , , , , , , , , , , , , , , , 1 ], [ 1, , , 1, 1, , , , , , , 1, , 1, , 1, 1, 1, 1, 1, 1 ], [ , , , , , 1, , , , , , , 1, , , , , , , 1 ], , [ , , 1, 1, 1, 1, 1, , 1, 1, 1, , , 1, 1, , , 1, 1, , 1, 1, 1, , , 1 ], [ , , , , , , , , , , , , , , , , , , 1 ], [ , 1, , , , 1 ], , [ 1 ] ], [ , [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1 ], [ , , , 1, 1, 1, 1, , , , , , 1, , 1, , , , 1, , 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, , , 1 ], [ , 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, , , , 1, , 1, , , 1, 1, 1, 1, 1 ], [ , , , , , , , , , , , 1, , , , , , , , , 1, , , , 1 ], [ , 1, 1, , 1, 1, , 1, , , , 1, 1, , 1, 1, , , 1, , 1, 1, , 1 ], [ , 1, , 1, , 1, , , 1, , , 1, 1, , 1, 1, , , 1, 1, 1 ], [ , 1, 1, 1, 1, 1, , 1, 1, , , , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1 ], [ , , , , , , , , , 1, , 1, , 1, 1, , , , 1, , , 1 ], [ , 1, , , 1, 1, , , , , , , , , 1, 1, 1, , , , , 1 ], [ 1, , , 1, 1, , , , 1, 1, 1, 1, 1, , , 1, , , 1, , , 1, , 1, , 1 ], [ , 1, 1, , 1, 1, , 1, 1, , , , 1, 1, 1, , , 1, 1, , , 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, , 1, 1, , 1, , , 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1 ], [ , 1, , , , 1, , , , , , , , , 1 ], [ , 1, , , , , , , , 1, , , , , 1, , , , 1, , , 1 ], [ , 1, 1, 1, 1, , , 1, 1, 1, 1, 1, , 1, , 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , , , , , 1, , 1, , , , , 1, 1, 1, 1, 1, , , 1, , , , 1 ], [ , 1, , , , , , , , 1, , , , , , , , , , , , 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1 ], [ 1, 1, , 1, , 1, 1, , , , 1, , 1, 1, 1, 1, 1, , 1, 1, , , , , , 1 ], [ , 1, 1, 1, 1, 1, 1, 1, , 1, 1, , , 1, 1, , , , 1, , 1, 1, , 1, 1 ], [ , , , , , , , , , , , , , , , , , , , , , , , , 1 ], [ , 1, 1, , 1, 1, 1, 1, , 1, , , 1, 1, 1, 1, , , 1, , , , , , , 1 ], [ , 1, , , , , , , , 1, , , , , 1 ] ], [ , [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , , 1, 1, 1, 1, 1 ], [ , 1, 1, , , , , , , , , , , , 1, 1, , , , , , 1 ], [ , 1, , , , , , , 1 ], [ , , , , , , , , , , , , , , 1, , , , , 1, , , , , , 1 ], [ 1, 1, , , 1, , , 1, 1, 1, , , , 1 ], , [ , , , , , , , , , , , , , 1, , , , , , , , , , 1 ], [ , , , , , , , , , 1, , , , , , , , , 1, , , , , , , 1 ], [ 1, 1, 1, , 1, , 1, 1, 1, 1, 1, 1, 1, 1, , 1, , , 1, , 1, , , 1, 1 ], [ , , , , , , , , , 1 ], [ , 1, , , , 1, , , , , , 1, , , 1, , , , , 1 ], [ , 1, 1, , 1, 1, , , , , , , , , , , , , , , 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, , , 1, 1, , 1, 1, 1, 1, , , , 1, 1, , , , 1, , 1 ], [ 1, 1, 1, 1, 1, 1, , , 1, 1, 1, 1, 1, 1, , 1, 1, , 1, 1, 1, , 1, 1, , 1, 1 ], [ , , , , , , , , , , , , , , , 1, , , , 1 ], , [ 1, 1, , 1, , 1, , , , , , 1, , 1, , 1, 1, , 1, , 1, 1, , 1, 1, , 1 ], [ , , 1, , , , , , 1, , , , 1, , 1, , , , , 1 ], [ 1, , , , , , , , , 1, , , , , , 1, , , , 1, , 1, , , 1 ], [ 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , , , 1, , 1, , , , , , 1, , , 1, , , , , , , , 1 ], [ , 1, , 1, , , , , , , , , , , , 1 ], , [ 1, 1, , , , , , , , , , , , , , , , , , , , , , 1, 1 ], [ 1 ] ], [ , [ 1, , , , , , , , , 1, , , , , 1, , 1, , 1 ], [ , 1, 1, , 1, 1, , 1, 1, 1, , , 1, 1, 1, , , , 1, , , 1, , , , 1 ], [ , 1, , , , , , , 1, , , , 1, , , , , , 1 ], [ 1, 1, 1, 1, 1, 1, , , , 1, , , , , , , , , 1, 1, 1, 1 ], [ 1 ], [ , 1, 1, , , 1, 1, , , , , 1, , 1, , , , , , , , 1, , , , 1 ], [ 1, , 1, , , 1, , 1, , , , , 1, 1, 1, 1, , , , 1, , , , 1 ], [ , , 1, , , , , , , 1, , , , , , , 1, , , , , , , 1 ], [ 1, , , , , , , , , , , , , , 1, , , , 1 ], [ , , , 1, , 1, , , , , 1, , , , 1, 1, , , , 1 ], [ 1, , , , , 1, , , , 1, , 1, 1, , , 1, 1, , 1, 1, 1, , 1, 1, 1, , 1 ], [ , 1, 1, , , , , 1, , 1, , 1, 1, 1, , 1, 1, , , 1, , 1, 1, 1 ], [ , 1, , , , 1, , , , 1, , , 1, , 1, 1, , , 1, 1, , , , , , 1 ], [ 1, , 1, 1, , 1, , 1, 1, , 1, , 1, 1, 1, 1, 1, , , 1, 1, , , , , , 1 ], [ 1, , , , , , , , , , , , , , , , , , 1, , , 1, , 1 ], [ , , , , , , , , , 1, , , , , , 1 ], [ , , , , , , , , , , , , , , , , , , , , , 1, , 1 ], [ , 1, , , , 1, , , 1, 1, , 1, , , 1, 1, , , 1, , , 1, , , 1, 1 ], [ 1, 1, , 1, 1, 1, , 1, 1, 1, , 1, , 1, 1, 1, , , 1, , 1, 1 ], [ 1, , 1, 1, 1, 1, , , , 1, , 1, 1, 1, , 1, , , 1, 1, 1, , 1, 1, 1, 1, 1 ], [ 1, , , , , , , , , , , , , 1 ], [ , , 1, , , , , , , , , , , , , , , , , , , , 1 ], [ 1, , , , , , , , , , , 1, , 1, , 1, , , , 1 ], [ , , , 1, , , , , , , , , 1 ], [ , 1, , , , , , , , , , , , , , 1, , , , , , , , , 1 ], [ , , , , , , , , 1, 1, , , , , , , , , 1, , , , , , , , 1 ] ], [ , [ 1, 1, 1, 1, 1, 1, 1, , 1, , 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, , , 1, 1, 1 ], [ , , , , , 1, , , , 1, 1, 1, , , 1, 1, , , 1, , 1, 1, , 1 ], [ , , , , , , , , , , , , , , , , , , , 1, 1 ], [ , 1, , , , , , 1, , , , , , , , , , , , , 1 ], [ , , 1, , , 1, , 1, 1, 1, , 1, 1, , 1, , , , 1, , 1, 1 ], , [ , , 1, , , 1, , , , , , 1, , , , 1 ], [ , , , , , , , , , 1, , , , , , , , , , 1 ], [ 1, 1, 1, 1, 1, 1, , 1, 1, 1, , , 1, 1, , 1, , 1, , , 1, 1, 1, , , 1 ], [ , , , , , 1, , , , , , , , , , , , , 1 ], [ , 1, , , , , , , , , , , , 1, , 1, 1, , 1, , , 1 ], [ , , , , , 1, , , , , , , , , , , , , , 1 ], [ , 1, 1, 1, 1, , , , , 1, , , 1, , 1, , , , 1, 1, , , , 1, 1 ], [ , 1, , , 1, , , 1, , 1, 1, , 1, , , , , , , 1 ], [ , , 1, , 1, , , 1, , , , , , , , , , , 1, 1, , , , 1 ], [ , 1, , , , , , , , , , , , , , , , , 1, , , , , , 1 ], [ , , , , , , , , , , , , , , , , , , 1 ], [ , 1, 1, , , , , , , , , , , , , , , , 1, , 1, 1 ], [ , , , , , , , , , , , , 1 ], , [ , 1, 1, 1, 1, , , , 1, 1, , 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, , 1, , 1 ], [ 1, , , , 1, , , , , , , , , , 1 ], [ 1, , , , , , , , , 1 ], , [ , 1, , , , 1, , , , , , , , , , , , , , , , , , , , 1 ] ], [ , [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, , 1, 1, 1, 1, , , , 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, , 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , , 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ] ], [ , [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, , 1, , 1, 1, 1, 1 ], [ 1, 1, 1, 1, , 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , , , 1, 1, 1, 1, , 1, , , , 1, 1, , , 1, 1, , 1 ], [ , 1, 1, , 1, , , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, , , , , , , , , , , , , 1 ], [ 1, 1, 1, , , , , 1, 1, 1, , 1, 1, 1, 1, , , 1, 1, , 1, 1, , , , , 1 ], [ , 1, , , , , , , 1, 1, , , 1, 1, 1, , 1, , , 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , , 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1 ], [ , 1, , , , 1, , , , 1, , , 1, , , , 1, , , , , , , 1, 1 ], [ , 1, 1, 1, 1, 1, , , 1, 1, 1, , 1, 1, 1, 1, , , 1, 1, 1, 1, , , , 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, , 1, , , 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , , 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, , 1, , , 1, 1, 1, 1, , 1, 1, 1, 1, , , , 1, , 1, , 1, , , 1 ], [ 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, , , , 1, , , , , , , , , 1, 1, , , , , , , , , 1 ], , [ , 1, , 1, , 1, , 1, , 1, , 1, 1, 1, 1, 1, , , 1, , 1, , 1, , , , 1 ], [ , 1, , , 1, 1, , 1, 1, 1, , , 1, 1, 1, 1, 1, , 1, 1, 1, , 1, , , 1 ], [ 1, , , 1, , , , 1, 1, 1, , , , , 1, 1, , , , 1, , 1 ], [ 1, 1, , 1, 1, 1, 1, , , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1 ], [ 1, 1, , , , , , , , 1, , 1, , , , , , , , 1, , 1 ], [ , 1, , , , 1, , 1, 1, , , , 1, 1, , 1, , , , 1, 1, 1, , 1 ], , [ , 1, , , , , , 1, , , , , , , 1 ], [ , , , , , , , , 1, , , , 1, , 1, , , , , , , , , , , , 1 ] ], [ , [ , 1, 1, , 1, 1, 1, 1, , 1, 1, 1, , 1, 1, , 1, 1, , 1, 1, 1, 1, 1, 1, , 1 ], [ , 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, , 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1 ], [ , 1, 1, , 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ] ], [ , [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , , 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , , 1, , 1 ], [ 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, , , 1, , , , , , , , 1, , , , , , 1, , , 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, , 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, , 1, , , , 1, 1, 1, , 1, 1, 1, 1, , , 1, 1, 1, 1, , , 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1 ], [ 1, 1, , 1, , 1, , 1, , 1, 1, 1, 1, 1, 1, 1, , 1, 1, , , 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, , 1, 1 ], [ , 1, 1, , , , , 1, 1, 1, , , 1, , 1, 1, , , , 1, , 1, , , 1, 1 ], [ , , , , , , , 1, , , , 1, 1, 1, 1, 1, , 1, , , , , , , , 1 ], [ 1, 1, 1, 1, , 1, 1, 1, , 1, , 1, 1, 1, 1, , 1, , 1, , 1, 1, , , 1, , 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , , , , 1, 1, , 1, , 1, 1, 1, , 1, , 1, 1, , 1, 1, , 1, , 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, , , , , , , , 1, , , , , 1, , 1 ], [ , 1, 1, 1, , 1, , 1, , 1, , , , 1, , 1, , , 1, , , , , , 1, 1 ], [ , 1, , , 1, 1, , 1, , 1, , 1, 1, 1, 1, 1, , 1, 1, , , 1, , , 1 ], [ 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, , 1, , , , , 1, , 1, , 1, , , , , , 1, , 1, , , , 1, 1 ] ], [ , [ , 1, , 1, , , , , , , , , , , , , , , 1, , , , 1 ], [ , , , , , , , , , 1, , 1, 1, 1, , 1, , , 1, , 1, 1 ], [ 1, 1, , , , , , , 1, , , , , , , 1, , , , , , 1 ], [ , 1, , , , , , , , , , 1, , , , , , , , , 1, 1 ], , [ , , , , , , , , , , , , , , , 1, , , , 1, , 1 ], [ , , 1, 1, , 1, , 1, , , , , , , , 1, , , , , , 1 ], [ , , , , , , , , , , , , , , , , , , , , 1, 1 ], [ , 1, , , , , , , , , , , , , 1 ], [ 1, , 1, 1, , , , 1, , , , , , , , , 1, , , 1, , , 1, 1 ], [ , 1, 1, , 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, , , 1, 1, , 1, 1, , 1 ], [ , 1, , , 1, 1, , , , , , 1, , 1, , 1, , , 1, , 1, 1 ], [ 1, 1, 1, 1, , 1, , 1, , 1, , 1, 1, , 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1 ], [ , 1, 1, , , 1, , 1, , 1, 1, 1, , , 1, 1, 1, , 1, 1, 1, 1, , 1, 1 ], [ , , , , 1, , , 1, , , , , , , 1, , , , 1, 1 ], [ , 1, , , , , , , , , , 1, , 1, , 1, , , , , 1, , , , , 1 ], , [ 1, 1, , 1, , 1, , 1, 1, , , , , , 1, 1, , , 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, , 1, , , , , , 1, , , , , , 1, 1, , , , 1, 1, , , 1 ], [ , 1, 1, , 1, 1, , , , 1, , 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, , 1, 1, 1, 1 ], [ , 1, 1, , , 1, , , , 1, , , , 1, 1 ], [ , , , , 1 ], [ , , , , , , , , , 1, , , 1 ], , [ , , 1, , 1, , , , , , , , , 1, , , , , , , , , , , , 1 ], [ , , , , , , , , , , , , , 1 ] ], [ , [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , , 1, 1, , 1, 1, 1, 1, 1, , , 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, , , 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, , 1, , , , , 1 ], [ , 1, , 1, , , , , , 1, , , , , 1, 1, , , , , 1, 1 ], [ , 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, , 1, , , 1, , 1, 1, 1 ], [ , 1, , , , 1, , , , , , , 1 ], [ , 1, , , 1, , , 1, , 1, , 1, 1, , 1, , , , , 1, , 1, , , , 1, 1 ], [ , 1, , , 1, , , 1, 1, 1, , 1, 1, 1, 1, 1, , 1, 1, , 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , , , , , , , , , , , , , , , , , , , , 1 ], [ , 1, 1, 1, , , , 1, 1, , , , , , 1, 1, 1, , 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1 ], [ , 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, , 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , , , 1, 1, 1, 1, 1, 1, 1, , 1, , 1, 1, 1, 1, 1, , 1, 1, , 1, 1, 1, 1, 1 ], [ , 1, , , , 1, , , , 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, , , , 1, , , , , , , , 1, , , , , , , , , , 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1 ], [ 1, 1, , 1, 1, 1, , 1, 1, 1, , , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, , 1 ], [ 1, 1, , , , , , , 1, 1, , , , , 1, 1, 1, 1, 1, , 1, 1, 1, 1, , 1 ], [ , 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, , 1, , 1, 1, 1, 1, , 1, 1, , 1, 1, 1, 1 ], , [ , 1, 1, , , , , 1, , 1, , , , 1, 1, 1, , , 1, , , , , 1 ], [ , , , , , , , , , , , , , 1 ], [ , , , , , 1, , , , , , , , 1, 1, , , , , 1, , 1, , , 1, 1 ], [ , , , , , , , , , , , , , , 1 ] ], [ , [ , 1 ], , , , , , , , , , , , , , , , , , , , [ 1, 1, 1, 1, 1, , 1, 1, 1, 1, , 1, 1, 1, 1, , 1, 1, 1, 1, , , 1, 1, 1, 1, 1 ], [ , 1, , 1, , 1, , , 1, 1, 1, , 1, 1, 1, 1, 1, , , 1, , , , 1, , 1, 1 ], [ , 1, , 1, , 1, , , 1, , , , , 1, , , , , , 1, 1 ], [ , 1, , 1, , , , , 1, , , , 1, , 1, 1, 1, 1, 1, 1, 1, 1, , 1 ], [ , 1, , , , , , , , , , , , , , , 1 ] ], [ , [ , 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , , 1, , , , , , , , , 1, 1, , , , 1 ], [ , , , , , , 1 ], [ , , 1 ], [ , 1, 1, , , 1, , 1, , 1, 1, , 1, 1, 1, , , , 1, 1, 1, , , , , 1 ], , [ , 1, , , , 1, , , , , , 1, , , 1, , , , 1, 1, , 1 ], [ , , , , , , , 1, , , , , , , , , 1 ], [ , 1, , , , 1, 1, , , , , , 1, 1, 1, , , , 1, , 1, 1 ], [ , , , , , , , 1, , 1, , , , , , , , , , 1 ], [ , 1, 1, , , , , , 1, 1, , , , 1, , , , , , , 1, , , 1 ], , [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, , , 1, , , 1, , , , , 1, , 1, , 1, , 1, , , , , 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, , , , , 1, 1, , 1, 1, , 1, , , 1, , 1 ], [ , , , , , , , , , , , , , , 1, , , , , , 1 ], , [ , , , , , , , , , 1, , , , , , 1, , , , , 1 ], [ , , 1, , , , , , , 1, , , 1, 1 ], [ , , , 1, , , , , 1, , , , , 1, , , , , , 1, , , , 1 ], [ 1, , 1, 1, , 1, 1, 1, 1, 1, , 1, , , , 1, 1, 1, , , 1, 1, , , , 1, 1 ], , [ 1, 1, , , , , , , , , , 1, , 1, , 1, , , 1 ], [ , , , , 1, , , , , , , , , , , , , , , , , , , 1 ], [ , , , , , , , , , , , , , , 1, , , , , 1, , 1 ], [ , , , , , , , , 1 ] ], [ , [ 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, , , 1, 1, 1, 1, 1, , 1, 1, , 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, , 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, , 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1 ], [ , , 1, , , 1, , , , , , , , 1, , , , , , 1, , , , 1 ], [ 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, , 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, , 1, 1, , 1, , , , 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, , 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, , 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, , 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1 ], [ , , 1, 1, 1, 1, , 1, , 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1 ], [ 1, 1, , , , , , , 1, , 1, 1, , 1, 1, 1, , 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, , 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1 ], [ 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1 ], [ 1, 1, 1, 1, , 1, , 1, , 1, 1, 1, 1, 1, , , , 1, 1, 1, 1, , 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, , 1, , , , , , 1, , 1, , , , , 1, 1, , , , , 1 ], [ 1, , 1, 1, , , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , , 1, 1, , 1, , 1, , , , 1, 1, 1, 1, 1, , , 1, 1, , 1, , 1 ], [ , 1, 1, 1, 1, , , , , 1, , 1, 1, 1, 1, 1, , , 1, 1, , , , 1, 1, 1 ], [ , 1, 1, 1, 1, 1, , 1, , , , , 1, , 1, , 1, , , 1, , , 1, 1, , 1 ] ], [ , [ 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, , 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, , 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , , , , , , , , , 1, , , , , 1, 1, , , 1, , 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , , , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, , , 1, 1, 1, 1, , 1, 1, , 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, , , , , , 1, , 1, 1, , 1, 1, 1, 1, 1, , , 1, , 1, , 1 ], [ 1, 1, 1, , 1, 1, 1, 1, , , , 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1 ], [ 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, , 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1 ], [ , 1, , 1, , 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1 ], [ , , 1, , , , , , , , , , 1, 1, 1, 1, 1, 1, 1, , 1, 1, , 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, , , 1, 1, , , , , , 1, 1, 1, 1, 1, , , , 1, 1, 1, , 1, 1, 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, 1, , , , 1, 1, 1, 1, 1, 1, 1, , 1, 1, , 1, 1, 1 ], [ , 1, 1, 1, , 1, , 1, 1, 1, 1, , , 1, 1, 1, , 1, 1, 1, 1, 1, , , 1, 1 ], [ 1, 1, , , , 1, , , 1, 1, 1, , 1, , 1, , 1, , 1, 1, 1, 1, 1, , 1, , 1 ], [ , 1, , , , , , , 1, , 1, , 1, 1, 1, 1, , , , , , , , , 1 ] ], [ , [ , , , , , , , , , , , , , 1, 1, , , , 1 ], [ , 1, , , , , , , , 1, , , 1, , , , , , 1, , , 1, , , , 1 ], , [ , 1, , , , 1, , 1, , 1, 1, , 1, 1, , , , , , , , 1 ], [ , , , , , , , , , , , , , , , , , , , 1 ], [ , , , , , , , , , 1 ], [ 1, 1, 1, , , 1, , , , , , , , , 1, 1, , , , , , , , , , 1 ], [ , 1, , , , , , , , , , , , , 1 ], [ , , , , , , , , , , , , , , , , , , , 1, , , 1 ], [ , , , , , , , , , 1 ], [ 1, 1, , , , , , 1, 1, 1, , 1, 1, , , , 1, 1, , 1, , 1, 1, 1, , 1 ], [ , 1, 1, 1, , 1, 1, , , 1, , 1, 1, 1, 1, , , , , , , 1, , 1 ], [ , 1, 1, 1, 1, , , 1, , 1, , , , 1, 1, 1, 1, , 1, 1, , 1 ], [ , 1, , , 1, 1, , 1, , , , 1, , 1, 1, , 1, , 1, , , 1, , , 1, , 1 ], [ , , , , , , , , , , , 1 ], [ , , , , , , , , , 1, , , , , , , , , , , , , 1 ], , [ 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, , 1, 1, 1, 1, 1, 1, 1 ], [ , 1, , , , , , , 1, 1, , 1, , , , , 1, , , 1, , 1 ], [ , 1, , , , 1, , , 1, , , , , , , , 1, , 1, , , 1 ], [ , , , , , , , , , , , , , 1, 1, , , , 1, , , 1 ], [ , , , , , 1, , , 1, , , , 1 ], [ , 1 ], , [ , 1 ], [ 1, , , , , , , , , , , , , , 1, , , , , 1 ] ], [ , [ , 1, , , , 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, , 1, 1, , 1, 1, , , 1 ], [ , , 1, , , , , , , , , 1 ], , , [ 1, , , 1, 1, , , , , , , , 1, 1, , 1, 1, , 1 ], , [ , , , , , , , , , , , , , , , , , , 1, , 1 ], , [ 1, , , 1, 1, , 1, 1, , , , , 1, , 1, , , , , 1, 1, , 1 ], , [ , 1, , , , , , , , 1, 1, 1, 1, 1, , 1, 1, , , , 1, 1 ], [ , , , , , , , , , , , , , , , , 1, , , 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , , 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1 ], [ , , , , , , , , , , , 1, , 1, , , 1 ], [ 1, , , , , , , , , , , , , , , , , , 1, , 1 ], , , [ , 1, , , , , , , , , , , , , , 1, , , , 1, 1 ], [ , , , , , , , , , 1, , , 1, , , , , , , , , , 1 ], [ , , , , , , , , , , , , , , , 1 ], [ , , , , , , , , , , , , , 1, 1, , , , , , 1 ], , [ , 1 ] ], [ , [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, , , 1, 1, , 1, 1, 1, 1, 1, 1, , , 1, 1, 1, 1, 1, , 1, 1 ], [ , 1, , , , , , , , 1 ], [ , , , , 1, , , 1, , , 1, 1, , , , , , , , , , 1, , , , 1 ], [ , 1, , 1, 1, , , 1, 1, 1, , , , 1, 1, 1, 1, , 1, 1, 1, 1, , 1 ], [ , , , , , , , 1 ], [ , 1, 1, , , , , 1, , 1, , , , , , 1, , , , , , 1, , 1, , 1 ], [ , 1, , , , , , 1, , , , 1, , , , , , , , , , 1 ], [ , , 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , , , 1, , 1, 1, 1, 1, , 1 ], [ , 1, , , , , , , , 1 ], [ , 1, 1, , 1, , , , , , , , 1, , , , , , 1, , , 1, , 1, , 1 ], [ , 1, , 1, , 1, , 1, 1, 1, , 1, 1, 1, , 1, , , 1, 1, , 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, , , 1, 1, , , , 1, 1, 1, , , , 1, 1, , , 1, 1 ], [ , , 1, 1, 1, 1, , 1, , 1, , 1, , 1, 1, 1, 1, , , , , 1, , 1, , 1 ], [ 1, 1, 1, 1, 1, 1, 1, 1, , 1, , 1, , 1, 1, 1, , , 1, 1, , , , 1, , 1 ], [ , , , 1 ], , [ , 1, 1, , 1, , , 1, 1, 1, , 1, 1, 1, 1, 1, 1, , 1, 1, , 1, 1, 1, 1, 1, 1 ], [ , 1, , , , , , 1, , 1, , 1, , , , , , , 1, 1, , 1, 1 ], [ , , , , , , 1, , 1, 1, , 1, , 1, , , , , , , , , , 1 ], [ , 1, 1, , 1, , , , 1, , , , 1, 1, 1, , , , 1, , 1, 1, 1, , 1, 1 ], , [ , 1, 1, , , , , , , , , , , , , 1, , , 1, , , , , 1 ], [ , 1, , , , , , , , , , , , , , , , , , , , , , 1 ], [ , 1, 1, , , , , , , 1, , , , 1, , , , , 1, , , , , , , 1 ] ], [ , [ , 1, 1, 1, 1, 1, , 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1 ], [ , 1, 1, 1, 1, 1, , 1, , 1, 1, , , 1, 1, 1, 1, , 1, , , , , 1, 1, 1 ], [ , , 1, 1, , 1, , 1, 1, , , , 1, 1, 1, 1, , , 1, , 1, 1, 1, 1, , 1 ], [ , 1, , 1, , , , , , , , 1, , 1, , 1, , , , , , , , , , 1 ], [ , , 1, , 1, , , 1, , , , , 1, 1, , , 1, , 1, 1, 1, 1 ], [ , 1 ], [ , 1, 1, , 1, , 1, 1, , 1, , , 1, 1, 1, , , , 1, , , 1, , 1 ], [ 1, 1, , 1, 1, 1, , , , , , , , , , , , , 1, , 1, 1, 1 ], [ , 1, 1, , , , , , , 1, , , 1, , 1, , 1, , 1, 1, , , 1, , , 1 ], [ , , 1, , , , , , , , , , , , , , , , , , 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, 1, 1, 1, , 1, , 1, , , , , 1, 1, 1, , , 1, , 1, , , , 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, , 1, , , 1, 1, 1, , 1, , 1, 1, 1, , , 1, 1, 1, 1, , , , 1, 1 ], [ , , , 1, 1, , , 1, , 1, , 1, , 1, 1, 1, 1, , 1, , , , , 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, , , , , , , , , , , , , , , , , , , 1 ], [ , 1, 1, , 1, 1, , 1, , 1, , , , 1, 1, , , 1, 1, , 1, 1, , 1 ], [ , 1, 1, 1, 1, 1, , , 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, , , 1 ], [ , 1, 1, 1, 1, 1, , 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1 ], [ , 1, 1, , 1, , , 1, , , 1, , 1, 1, 1, 1, 1, , 1, , 1, 1 ], [ , , , , , 1, , , , 1, , , , , 1, 1, , , , 1 ], [ , 1, , 1, 1, 1, , 1, , , 1, 1, 1, , , 1, , , 1, , 1, , , 1 ], [ , , 1, , , , , , , , , 1, , 1, , , , , 1, , 1 ], [ , 1, 1, , , , , , , , 1, 1, 1, , , , , , , , 1, , , , , 1 ], [ , , , , , , , , 1, , , , , 1, , , 1 ] ], [ , [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, 1, , 1, 1, , , 1, 1, 1, 1, 1, 1, 1, 1, , , , , , , , , 1, 1 ], [ , , , , , , , , 1, , , , 1, , 1, , 1 ], [ , 1, , , 1, 1, , 1, , , , 1, , , , , , , , 1 ], [ , 1, , 1, , 1, , , , 1, 1, , 1, , 1, , , , 1, 1, 1, 1, 1, , , 1 ], , [ , 1, , , , , , , , 1, , , 1, 1, , , 1, , 1, 1, , 1, , 1 ], [ , 1, , , 1, , , , , , , , 1, , , , , , , 1 ], [ 1, 1, , , , , 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1 ], , [ , 1, , , , , , 1, , 1, , 1, 1, 1, 1, 1, , , 1, , 1, 1, , , , 1 ], [ , 1, 1, , , 1, , 1, , 1, , , 1, 1, 1, 1, , , 1, , , 1, , , , 1 ], [ , 1, 1, 1, 1, 1, , 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , , , 1, , 1 ], [ , 1, , , 1, 1, , 1, 1, , , 1, 1, , 1, 1, , 1, , 1, , 1 ], [ 1, , 1, , , , , 1, , 1, , 1, 1, 1, 1, , , , , 1, 1, , , , 1, 1 ], [ , 1, 1, , , , , 1, 1, , , 1, , 1, 1, 1, 1, , , , , , , , , , 1 ], , [ , 1, 1, , , 1, , , , 1, , 1, 1, 1, 1, 1, , , , 1, , , , 1, , 1 ], [ , , , 1, 1, , , 1, , , , , 1, , 1, 1, 1, , 1, 1, , , , , , 1 ], [ , 1, , , , , , , , , , , 1, , , , 1, , , , , , , 1, , 1 ], [ , 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, , 1, 1, 1, , 1, 1, , 1, 1, 1, 1 ], [ , 1, , , , , , , , , , , , , , , , , , , 1 ], [ , 1, , , , , , 1, , , , , 1, , 1, , , 1, 1, , 1, 1, , 1 ], [ , 1, , , , , , 1, , , , , 1, 1, , , , , , , , 1, , , , 1 ], [ , , , , , , , , , , , , , , , , , , 1, , , 1, , , , , 1 ], [ , , , , , , , 1, , , , 1 ] ], [ , [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, , 1, , 1, , , , , , , 1, , , , , , , , 1, , , 1 ], [ , 1, , , , , , , 1 ], [ , , , , , , , , , , 1 ], [ , 1, , , , , , 1, 1, , , , , , 1 ], , [ , 1, 1, , , , , , 1, , , , , 1, 1, , , , 1 ], [ 1, , 1, , 1, , , , , 1, , , , , 1, , , , , , , , , 1, 1 ], [ , 1, 1, , , , , , , , , 1, 1, 1, 1, , , , 1, , , , , 1, , , 1 ], , [ , 1, 1, , 1, , , 1, 1, , , 1, , , 1, 1, 1, , 1, , 1, 1, 1, , , , 1 ], [ , , , , , 1, , , , , 1, , , 1, 1, , , 1, , 1, , , , 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , 1, , , 1, 1, , 1, , , , 1, , , , , , , , 1 ], [ , , , 1, , , , , 1, , , , , 1, , 1, , 1, 1, 1 ], [ , 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ], [ , , , , , 1 ], [ , 1, , , , , , 1, , , , , , , 1, 1, 1, , , 1 ], [ , 1, , , , , , , , , , 1, 1, 1, , , , , 1, , , 1 ], [ , , , , , 1, , 1, , , , , 1, 1, 1, , 1, 1, , 1, 1, 1, , , 1, 1 ], [ 1, 1, , , , , , , 1, , , , , 1, 1, , , , , , , , , , , 1 ], , [ , 1 ], [ , , , , , , , , , , , , , , , , , , , , , , , , 1 ], [ , , 1, , , , , 1, , , 1, , , , 1, , 1 ], [ , 1, , , , , , , , , 1 ] ] ];\n function isValidLang(lang) {\n var array = langs;\n while (lang.length < 3) {\n lang += '`';\n }\n for (var _i18 = 0; _i18 <= lang.length - 1; _i18++) {\n var index = lang.charCodeAt(_i18) - 96;\n array = array[index];\n if (!array) {\n return false;\n }\n }\n return true;\n }\n function _validLangs(langArray) {\n langArray = Array.isArray(langArray) ? langArray : langs;\n var codes = [];\n langArray.forEach(function(lang, index) {\n var _char3 = String.fromCharCode(index + 96).replace('`', '');\n if (Array.isArray(lang)) {\n codes = codes.concat(_validLangs(lang).map(function(newLang) {\n return _char3 + newLang;\n }));\n } else {\n codes.push(_char3);\n }\n });\n return codes;\n }\n var valid_langs_default = isValidLang;\n var SerialVirtualNode = function(_abstract_virtual_nod2) {\n function SerialVirtualNode(serialNode) {\n var _this8;\n _classCallCheck(this, SerialVirtualNode);\n _this8 = _callSuper(this, SerialVirtualNode);\n _this8._props = normaliseProps(serialNode);\n _this8._attrs = normaliseAttrs(serialNode);\n return _this8;\n }\n _inherits(SerialVirtualNode, _abstract_virtual_nod2);\n return _createClass(SerialVirtualNode, [ {\n key: 'props',\n get: function get() {\n return this._props;\n }\n }, {\n key: 'attr',\n value: function attr(attrName) {\n var _this$_attrs$attrName;\n return (_this$_attrs$attrName = this._attrs[attrName]) !== null && _this$_attrs$attrName !== void 0 ? _this$_attrs$attrName : null;\n }\n }, {\n key: 'hasAttr',\n value: function hasAttr(attrName) {\n return this._attrs[attrName] !== void 0;\n }\n }, {\n key: 'attrNames',\n get: function get() {\n return Object.keys(this._attrs);\n }\n } ]);\n }(abstract_virtual_node_default);\n var nodeNamesToTypes = {\n '#cdata-section': 2,\n '#text': 3,\n '#comment': 8,\n '#document': 9,\n '#document-fragment': 11\n };\n var nodeTypeToName = {};\n var nodeNames = Object.keys(nodeNamesToTypes);\n nodeNames.forEach(function(nodeName2) {\n nodeTypeToName[nodeNamesToTypes[nodeName2]] = nodeName2;\n });\n function normaliseProps(serialNode) {\n var _serialNode$nodeName, _ref80, _serialNode$nodeType;\n var nodeName2 = (_serialNode$nodeName = serialNode.nodeName) !== null && _serialNode$nodeName !== void 0 ? _serialNode$nodeName : nodeTypeToName[serialNode.nodeType];\n var nodeType = (_ref80 = (_serialNode$nodeType = serialNode.nodeType) !== null && _serialNode$nodeType !== void 0 ? _serialNode$nodeType : nodeNamesToTypes[serialNode.nodeName]) !== null && _ref80 !== void 0 ? _ref80 : 1;\n assert_default(typeof nodeType === 'number', 'nodeType has to be a number, got \\''.concat(nodeType, '\\''));\n assert_default(typeof nodeName2 === 'string', 'nodeName has to be a string, got \\''.concat(nodeName2, '\\''));\n nodeName2 = nodeName2.toLowerCase();\n var type2 = null;\n if (nodeName2 === 'input') {\n type2 = (serialNode.type || serialNode.attributes && serialNode.attributes.type || '').toLowerCase();\n if (!valid_input_type_default().includes(type2)) {\n type2 = 'text';\n }\n }\n var props = _extends({}, serialNode, {\n nodeType: nodeType,\n nodeName: nodeName2\n });\n if (type2) {\n props.type = type2;\n }\n delete props.attributes;\n return Object.freeze(props);\n }\n function normaliseAttrs(_ref81) {\n var _ref81$attributes = _ref81.attributes, attributes2 = _ref81$attributes === void 0 ? {} : _ref81$attributes;\n var attrMap = {\n htmlFor: 'for',\n className: 'class'\n };\n return Object.keys(attributes2).reduce(function(attrs, attrName) {\n var value = attributes2[attrName];\n assert_default(_typeof(value) !== 'object' || value === null, 'expects attributes not to be an object, \\''.concat(attrName, '\\' was'));\n if (value !== void 0) {\n var mappedName = attrMap[attrName] || attrName;\n attrs[mappedName] = value !== null ? String(value) : null;\n }\n return attrs;\n }, {});\n }\n var serial_virtual_node_default = SerialVirtualNode;\n function cleanup(resolve, reject) {\n resolve = resolve || function res() {};\n reject = reject || axe.log;\n if (!axe._audit) {\n throw new Error('No audit configured');\n }\n var q = axe.utils.queue();\n var cleanupErrors = [];\n Object.keys(axe.plugins).forEach(function(key) {\n q.defer(function(res) {\n var rej = function rej2(err2) {\n cleanupErrors.push(err2);\n res();\n };\n try {\n axe.plugins[key].cleanup(res, rej);\n } catch (err2) {\n rej(err2);\n }\n });\n });\n var flattenedTree = axe.utils.getFlattenedTree(document.body);\n axe.utils.querySelectorAll(flattenedTree, 'iframe, frame').forEach(function(node) {\n q.defer(function(res, rej) {\n return axe.utils.sendCommandToFrame(node.actualNode, {\n command: 'cleanup-plugin'\n }, res, rej);\n });\n });\n q.then(function(results) {\n if (cleanupErrors.length === 0) {\n resolve(results);\n } else {\n reject(cleanupErrors);\n }\n })['catch'](reject);\n }\n var cleanup_default = cleanup;\n var reporters = {};\n var defaultReporter;\n function hasReporter(reporterName) {\n return reporters.hasOwnProperty(reporterName);\n }\n function getReporter(reporter) {\n if (typeof reporter === 'string' && reporters[reporter]) {\n return reporters[reporter];\n }\n if (typeof reporter === 'function') {\n return reporter;\n }\n return defaultReporter;\n }\n function addReporter(name, cb, isDefault) {\n reporters[name] = cb;\n if (isDefault) {\n defaultReporter = cb;\n }\n }\n function configure(spec) {\n var audit = axe._audit;\n if (!audit) {\n throw new Error('No audit configured');\n }\n if (spec.axeVersion || spec.ver) {\n var specVersion = spec.axeVersion || spec.ver;\n if (!/^\\d+\\.\\d+\\.\\d+(-canary)?/.test(specVersion)) {\n throw new Error('Invalid configured version '.concat(specVersion));\n }\n var _specVersion$split = specVersion.split('-'), _specVersion$split2 = _slicedToArray(_specVersion$split, 2), version = _specVersion$split2[0], canary = _specVersion$split2[1];\n var _version$split$map = version.split('.').map(Number), _version$split$map2 = _slicedToArray(_version$split$map, 3), major = _version$split$map2[0], minor = _version$split$map2[1], patch = _version$split$map2[2];\n var _axe$version$split = axe.version.split('-'), _axe$version$split2 = _slicedToArray(_axe$version$split, 2), axeVersion = _axe$version$split2[0], axeCanary = _axe$version$split2[1];\n var _axeVersion$split$map = axeVersion.split('.').map(Number), _axeVersion$split$map2 = _slicedToArray(_axeVersion$split$map, 3), axeMajor = _axeVersion$split$map2[0], axeMinor = _axeVersion$split$map2[1], axePatch = _axeVersion$split$map2[2];\n if (major !== axeMajor || axeMinor < minor || axeMinor === minor && axePatch < patch || major === axeMajor && minor === axeMinor && patch === axePatch && canary && canary !== axeCanary) {\n throw new Error('Configured version '.concat(specVersion, ' is not compatible with current axe version ').concat(axe.version));\n }\n }\n if (spec.reporter && (typeof spec.reporter === 'function' || hasReporter(spec.reporter))) {\n audit.reporter = spec.reporter;\n }\n if (spec.checks) {\n if (!Array.isArray(spec.checks)) {\n throw new TypeError('Checks property must be an array');\n }\n spec.checks.forEach(function(check) {\n if (!check.id) {\n throw new TypeError('Configured check '.concat(JSON.stringify(check), ' is invalid. Checks must be an object with at least an id property'));\n }\n audit.addCheck(check);\n });\n }\n var modifiedRules = [];\n if (spec.rules) {\n if (!Array.isArray(spec.rules)) {\n throw new TypeError('Rules property must be an array');\n }\n spec.rules.forEach(function(rule) {\n if (!rule.id) {\n throw new TypeError('Configured rule '.concat(JSON.stringify(rule), ' is invalid. Rules must be an object with at least an id property'));\n }\n modifiedRules.push(rule.id);\n audit.addRule(rule);\n });\n }\n if (spec.disableOtherRules) {\n audit.rules.forEach(function(rule) {\n if (modifiedRules.includes(rule.id) === false) {\n rule.enabled = false;\n }\n });\n }\n if (typeof spec.branding !== 'undefined') {\n audit.setBranding(spec.branding);\n } else {\n audit._constructHelpUrls();\n }\n if (spec.tagExclude) {\n audit.tagExclude = spec.tagExclude;\n }\n if (spec.locale) {\n audit.applyLocale(spec.locale);\n }\n if (spec.standards) {\n configureStandards(spec.standards);\n }\n if (spec.noHtml) {\n audit.noHtml = true;\n }\n if (spec.allowedOrigins) {\n if (!Array.isArray(spec.allowedOrigins)) {\n throw new TypeError('Allowed origins property must be an array');\n }\n if (spec.allowedOrigins.includes('*')) {\n throw new Error('\"*\" is not allowed. Use \"'.concat(constants_default.allOrigins, '\" instead'));\n }\n audit.setAllowedOrigins(spec.allowedOrigins);\n }\n }\n var configure_default = configure;\n function frameMessenger2(frameHandler) {\n _respondable.updateMessenger(frameHandler);\n }\n function getRules(tags) {\n tags = tags || [];\n var matchingRules = !tags.length ? axe._audit.rules : axe._audit.rules.filter(function(item) {\n return !!tags.filter(function(tag) {\n return item.tags.indexOf(tag) !== -1;\n }).length;\n });\n var ruleData = axe._audit.data.rules || {};\n return matchingRules.map(function(matchingRule) {\n var rd = ruleData[matchingRule.id] || {};\n return {\n ruleId: matchingRule.id,\n description: rd.description,\n help: rd.help,\n helpUrl: rd.helpUrl,\n tags: matchingRule.tags,\n actIds: matchingRule.actIds\n };\n });\n }\n var get_rules_default = getRules;\n function hiddenContentEvaluate(node, options, virtualNode) {\n var allowlist = [ 'SCRIPT', 'HEAD', 'TITLE', 'NOSCRIPT', 'STYLE', 'TEMPLATE' ];\n if (!allowlist.includes(node.nodeName.toUpperCase()) && has_content_virtual_default(virtualNode)) {\n var styles = window.getComputedStyle(node);\n if (styles.getPropertyValue('display') === 'none') {\n return void 0;\n } else if (styles.getPropertyValue('visibility') === 'hidden') {\n var parent = get_composed_parent_default(node);\n var parentStyle = parent && window.getComputedStyle(parent);\n if (!parentStyle || parentStyle.getPropertyValue('visibility') !== 'hidden') {\n return void 0;\n }\n }\n }\n return true;\n }\n var hidden_content_evaluate_default = hiddenContentEvaluate;\n var table_exports = {};\n __export(table_exports, {\n getAllCells: function getAllCells() {\n return get_all_cells_default;\n },\n getCellPosition: function getCellPosition() {\n return get_cell_position_default;\n },\n getHeaders: function getHeaders() {\n return get_headers_default;\n },\n getScope: function getScope() {\n return _getScope;\n },\n isColumnHeader: function isColumnHeader() {\n return is_column_header_default;\n },\n isDataCell: function isDataCell() {\n return is_data_cell_default;\n },\n isDataTable: function isDataTable() {\n return is_data_table_default;\n },\n isHeader: function isHeader() {\n return is_header_default;\n },\n isRowHeader: function isRowHeader() {\n return is_row_header_default;\n },\n toArray: function toArray() {\n return to_grid_default;\n },\n toGrid: function toGrid() {\n return to_grid_default;\n },\n traverse: function traverse() {\n return traverse_default;\n }\n });\n function getAllCells(tableElm) {\n var rowIndex, cellIndex, rowLength, cellLength;\n var cells = [];\n for (rowIndex = 0, rowLength = tableElm.rows.length; rowIndex < rowLength; rowIndex++) {\n for (cellIndex = 0, cellLength = tableElm.rows[rowIndex].cells.length; cellIndex < cellLength; cellIndex++) {\n cells.push(tableElm.rows[rowIndex].cells[cellIndex]);\n }\n }\n return cells;\n }\n var get_all_cells_default = getAllCells;\n function traverseForHeaders(headerType, position, tableGrid) {\n var property = headerType === 'row' ? '_rowHeaders' : '_colHeaders';\n var predicate = headerType === 'row' ? is_row_header_default : is_column_header_default;\n var startCell = tableGrid[position.y][position.x];\n var colspan = startCell.colSpan - 1;\n var rowspanAttr = startCell.getAttribute('rowspan');\n var rowspanValue = parseInt(rowspanAttr) === 0 || startCell.rowspan === 0 ? tableGrid.length : startCell.rowSpan;\n var rowspan = rowspanValue - 1;\n var rowStart = position.y + rowspan;\n var colStart = position.x + colspan;\n var rowEnd = headerType === 'row' ? position.y : 0;\n var colEnd = headerType === 'row' ? 0 : position.x;\n var headers;\n var cells = [];\n for (var row = rowStart; row >= rowEnd && !headers; row--) {\n for (var col = colStart; col >= colEnd; col--) {\n var cell = tableGrid[row] ? tableGrid[row][col] : void 0;\n if (!cell) {\n continue;\n }\n var vNode = axe.utils.getNodeFromTree(cell);\n if (vNode[property]) {\n headers = vNode[property];\n break;\n }\n cells.push(cell);\n }\n }\n headers = (headers || []).concat(cells.filter(predicate));\n cells.forEach(function(tableCell) {\n var vNode = axe.utils.getNodeFromTree(tableCell);\n vNode[property] = headers;\n });\n return headers;\n }\n function getHeaders(cell, tableGrid) {\n if (cell.getAttribute('headers')) {\n var headers = idrefs_default(cell, 'headers');\n if (headers.filter(function(header) {\n return header;\n }).length) {\n return headers;\n }\n }\n if (!tableGrid) {\n tableGrid = to_grid_default(find_up_default(cell, 'table'));\n }\n var position = get_cell_position_default(cell, tableGrid);\n var rowHeaders = traverseForHeaders('row', position, tableGrid);\n var colHeaders = traverseForHeaders('col', position, tableGrid);\n return [].concat(rowHeaders, colHeaders).reverse();\n }\n var get_headers_default = getHeaders;\n function isDataCell(cell) {\n if (!cell.children.length && !cell.textContent.trim()) {\n return false;\n }\n var role = get_explicit_role_default(cell);\n if (role) {\n return [ 'cell', 'gridcell' ].includes(role);\n } else {\n return cell.nodeName.toUpperCase() === 'TD';\n }\n }\n var is_data_cell_default = isDataCell;\n function isDataTable(node) {\n var role = get_explicit_role_default(node);\n if ((role === 'presentation' || role === 'none') && !_isFocusable(node)) {\n return false;\n }\n if (node.getAttribute('contenteditable') === 'true' || find_up_default(node, '[contenteditable=\"true\"]')) {\n return true;\n }\n if (role === 'grid' || role === 'treegrid' || role === 'table') {\n return true;\n }\n if (get_role_type_default(role) === 'landmark') {\n return true;\n }\n if (node.getAttribute('datatable') === '0') {\n return false;\n }\n if (node.getAttribute('summary')) {\n return true;\n }\n if (node.tHead || node.tFoot || node.caption) {\n return true;\n }\n for (var childIndex = 0, childLength = node.children.length; childIndex < childLength; childIndex++) {\n if (node.children[childIndex].nodeName.toUpperCase() === 'COLGROUP') {\n return true;\n }\n }\n var cells = 0;\n var rowLength = node.rows.length;\n var row, cell;\n var hasBorder = false;\n for (var rowIndex = 0; rowIndex < rowLength; rowIndex++) {\n row = node.rows[rowIndex];\n for (var cellIndex = 0, cellLength = row.cells.length; cellIndex < cellLength; cellIndex++) {\n cell = row.cells[cellIndex];\n if (cell.nodeName.toUpperCase() === 'TH') {\n return true;\n }\n if (!hasBorder && (cell.offsetWidth !== cell.clientWidth || cell.offsetHeight !== cell.clientHeight)) {\n hasBorder = true;\n }\n if (cell.getAttribute('scope') || cell.getAttribute('headers') || cell.getAttribute('abbr')) {\n return true;\n }\n if ([ 'columnheader', 'rowheader' ].includes(get_explicit_role_default(cell))) {\n return true;\n }\n if (cell.children.length === 1 && cell.children[0].nodeName.toUpperCase() === 'ABBR') {\n return true;\n }\n cells++;\n }\n }\n if (node.getElementsByTagName('table').length) {\n return false;\n }\n if (rowLength < 2) {\n return false;\n }\n var sampleRow = node.rows[Math.ceil(rowLength / 2)];\n if (sampleRow.cells.length === 1 && sampleRow.cells[0].colSpan === 1) {\n return false;\n }\n if (sampleRow.cells.length >= 5) {\n return true;\n }\n if (hasBorder) {\n return true;\n }\n var bgColor, bgImage;\n for (var _rowIndex = 0; _rowIndex < rowLength; _rowIndex++) {\n row = node.rows[_rowIndex];\n if (bgColor && bgColor !== window.getComputedStyle(row).getPropertyValue('background-color')) {\n return true;\n } else {\n bgColor = window.getComputedStyle(row).getPropertyValue('background-color');\n }\n if (bgImage && bgImage !== window.getComputedStyle(row).getPropertyValue('background-image')) {\n return true;\n } else {\n bgImage = window.getComputedStyle(row).getPropertyValue('background-image');\n }\n }\n if (rowLength >= 20) {\n return true;\n }\n if (get_element_coordinates_default(node).width > get_viewport_size_default(window).width * .95) {\n return false;\n }\n if (cells < 10) {\n return false;\n }\n if (node.querySelector('object, embed, iframe, applet')) {\n return false;\n }\n return true;\n }\n var is_data_table_default = isDataTable;\n function isHeader(cell) {\n if (is_column_header_default(cell) || is_row_header_default(cell)) {\n return true;\n }\n if (cell.getAttribute('id')) {\n var _id4 = escape_selector_default(cell.getAttribute('id'));\n return !!document.querySelector('[headers~=\"'.concat(_id4, '\"]'));\n }\n return false;\n }\n var is_header_default = isHeader;\n function traverseTable(dir, position, tableGrid, callback) {\n var result;\n var cell = tableGrid[position.y] ? tableGrid[position.y][position.x] : void 0;\n if (!cell) {\n return [];\n }\n if (typeof callback === 'function') {\n result = callback(cell, position, tableGrid);\n if (result === true) {\n return [ cell ];\n }\n }\n result = traverseTable(dir, {\n x: position.x + dir.x,\n y: position.y + dir.y\n }, tableGrid, callback);\n result.unshift(cell);\n return result;\n }\n function traverse(dir, startPos, tableGrid, callback) {\n if (Array.isArray(startPos)) {\n callback = tableGrid;\n tableGrid = startPos;\n startPos = {\n x: 0,\n y: 0\n };\n }\n if (typeof dir === 'string') {\n switch (dir) {\n case 'left':\n dir = {\n x: -1,\n y: 0\n };\n break;\n\n case 'up':\n dir = {\n x: 0,\n y: -1\n };\n break;\n\n case 'right':\n dir = {\n x: 1,\n y: 0\n };\n break;\n\n case 'down':\n dir = {\n x: 0,\n y: 1\n };\n break;\n }\n }\n return traverseTable(dir, {\n x: startPos.x + dir.x,\n y: startPos.y + dir.y\n }, tableGrid, callback);\n }\n var traverse_default = traverse;\n var aria_exports = {};\n __export(aria_exports, {\n allowedAttr: function allowedAttr() {\n return allowed_attr_default;\n },\n arialabelText: function arialabelText() {\n return _arialabelText;\n },\n arialabelledbyText: function arialabelledbyText() {\n return arialabelledby_text_default;\n },\n getAccessibleRefs: function getAccessibleRefs() {\n return get_accessible_refs_default;\n },\n getElementUnallowedRoles: function getElementUnallowedRoles() {\n return get_element_unallowed_roles_default;\n },\n getExplicitRole: function getExplicitRole() {\n return get_explicit_role_default;\n },\n getImplicitRole: function getImplicitRole() {\n return implicit_role_default;\n },\n getOwnedVirtual: function getOwnedVirtual() {\n return get_owned_virtual_default;\n },\n getRole: function getRole() {\n return get_role_default;\n },\n getRoleType: function getRoleType() {\n return get_role_type_default;\n },\n getRolesByType: function getRolesByType() {\n return get_roles_by_type_default;\n },\n getRolesWithNameFromContents: function getRolesWithNameFromContents() {\n return get_roles_with_name_from_contents_default;\n },\n implicitNodes: function implicitNodes() {\n return implicit_nodes_default;\n },\n implicitRole: function implicitRole() {\n return implicit_role_default;\n },\n isAccessibleRef: function isAccessibleRef() {\n return is_accessible_ref_default;\n },\n isAriaRoleAllowedOnElement: function isAriaRoleAllowedOnElement() {\n return is_aria_role_allowed_on_element_default;\n },\n isComboboxPopup: function isComboboxPopup() {\n return _isComboboxPopup;\n },\n isUnsupportedRole: function isUnsupportedRole() {\n return is_unsupported_role_default;\n },\n isValidRole: function isValidRole() {\n return is_valid_role_default;\n },\n label: function label() {\n return label_default2;\n },\n labelVirtual: function labelVirtual() {\n return label_virtual_default;\n },\n lookupTable: function lookupTable() {\n return lookup_table_default;\n },\n namedFromContents: function namedFromContents() {\n return named_from_contents_default;\n },\n requiredAttr: function requiredAttr() {\n return required_attr_default;\n },\n requiredContext: function requiredContext() {\n return required_context_default;\n },\n requiredOwned: function requiredOwned() {\n return required_owned_default;\n },\n validateAttr: function validateAttr() {\n return validate_attr_default;\n },\n validateAttrValue: function validateAttrValue() {\n return validate_attr_value_default;\n }\n });\n function allowedAttr(role) {\n var roleDef = standards_default.ariaRoles[role];\n var attrs = _toConsumableArray(get_global_aria_attrs_default());\n if (!roleDef) {\n return attrs;\n }\n if (roleDef.allowedAttrs) {\n attrs.push.apply(attrs, _toConsumableArray(roleDef.allowedAttrs));\n }\n if (roleDef.requiredAttrs) {\n attrs.push.apply(attrs, _toConsumableArray(roleDef.requiredAttrs));\n }\n return attrs;\n }\n var allowed_attr_default = allowedAttr;\n var idRefsRegex = /^idrefs?$/;\n function cacheIdRefs(node, idRefs, refAttrs) {\n if (node.hasAttribute) {\n if (node.nodeName.toUpperCase() === 'LABEL' && node.hasAttribute('for')) {\n var _id5 = node.getAttribute('for');\n if (!idRefs.has(_id5)) {\n idRefs.set(_id5, [ node ]);\n } else {\n idRefs.get(_id5).push(node);\n }\n }\n for (var _i19 = 0; _i19 < refAttrs.length; ++_i19) {\n var attr = refAttrs[_i19];\n var attrValue = sanitize_default(node.getAttribute(attr) || '');\n if (!attrValue) {\n continue;\n }\n var _iterator15 = _createForOfIteratorHelper(token_list_default(attrValue)), _step15;\n try {\n for (_iterator15.s(); !(_step15 = _iterator15.n()).done; ) {\n var token = _step15.value;\n if (!idRefs.has(token)) {\n idRefs.set(token, [ node ]);\n } else {\n idRefs.get(token).push(node);\n }\n }\n } catch (err) {\n _iterator15.e(err);\n } finally {\n _iterator15.f();\n }\n }\n }\n for (var _i20 = 0; _i20 < node.childNodes.length; _i20++) {\n if (node.childNodes[_i20].nodeType === 1) {\n cacheIdRefs(node.childNodes[_i20], idRefs, refAttrs);\n }\n }\n }\n function getAccessibleRefs(node) {\n var _idRefs$get;\n node = node.actualNode || node;\n var root = get_root_node_default2(node);\n root = root.documentElement || root;\n var idRefsByRoot = cache_default.get('idRefsByRoot', function() {\n return new Map();\n });\n var idRefs = idRefsByRoot.get(root);\n if (!idRefs) {\n idRefs = new Map();\n idRefsByRoot.set(root, idRefs);\n var refAttrs = Object.keys(standards_default.ariaAttrs).filter(function(attr) {\n var type2 = standards_default.ariaAttrs[attr].type;\n return idRefsRegex.test(type2);\n });\n cacheIdRefs(root, idRefs, refAttrs);\n }\n return (_idRefs$get = idRefs.get(node.id)) !== null && _idRefs$get !== void 0 ? _idRefs$get : [];\n }\n var get_accessible_refs_default = getAccessibleRefs;\n function isAriaRoleAllowedOnElement(node, role) {\n var vNode = node instanceof abstract_virtual_node_default ? node : get_node_from_tree_default(node);\n var implicitRole3 = implicit_role_default(vNode);\n var spec = get_element_spec_default(vNode);\n if (Array.isArray(spec.allowedRoles)) {\n return spec.allowedRoles.includes(role);\n }\n if (role === implicitRole3) {\n return false;\n }\n return !!spec.allowedRoles;\n }\n var is_aria_role_allowed_on_element_default = isAriaRoleAllowedOnElement;\n var dpubRoles2 = [ 'doc-backlink', 'doc-biblioentry', 'doc-biblioref', 'doc-cover', 'doc-endnote', 'doc-glossref', 'doc-noteref' ];\n var landmarkRoles = {\n header: 'banner',\n footer: 'contentinfo'\n };\n function getRoleSegments(vNode) {\n var roles = [];\n if (!vNode) {\n return roles;\n }\n if (vNode.hasAttr('role')) {\n var nodeRoles = token_list_default(vNode.attr('role').toLowerCase());\n roles = roles.concat(nodeRoles);\n }\n return roles.filter(function(role) {\n return is_valid_role_default(role);\n });\n }\n function getElementUnallowedRoles(node) {\n var allowImplicit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n var _nodeLookup20 = _nodeLookup(node), vNode = _nodeLookup20.vNode;\n if (!is_html_element_default(vNode)) {\n return [];\n }\n var nodeName2 = vNode.props.nodeName;\n var implicitRole3 = implicit_role_default(vNode) || landmarkRoles[nodeName2];\n var roleSegments = getRoleSegments(vNode);\n return roleSegments.filter(function(role) {\n return !roleIsAllowed(role, vNode, allowImplicit, implicitRole3);\n });\n }\n function roleIsAllowed(role, vNode, allowImplicit, implicitRole3) {\n if (allowImplicit && role === implicitRole3) {\n return true;\n }\n if (dpubRoles2.includes(role) && get_role_type_default(role) !== implicitRole3) {\n return false;\n }\n return is_aria_role_allowed_on_element_default(vNode, role);\n }\n var get_element_unallowed_roles_default = getElementUnallowedRoles;\n function getAriaRolesByType(type2) {\n return Object.keys(standards_default.ariaRoles).filter(function(roleName) {\n return standards_default.ariaRoles[roleName].type === type2;\n });\n }\n var get_aria_roles_by_type_default = getAriaRolesByType;\n function getRolesByType(roleType) {\n return get_aria_roles_by_type_default(roleType);\n }\n var get_roles_by_type_default = getRolesByType;\n function getAriaRolesSupportingNameFromContent() {\n return cache_default.get('ariaRolesNameFromContent', function() {\n return Object.keys(standards_default.ariaRoles).filter(function(roleName) {\n return standards_default.ariaRoles[roleName].nameFromContent;\n });\n });\n }\n var get_aria_roles_supporting_name_from_content_default = getAriaRolesSupportingNameFromContent;\n function getRolesWithNameFromContents() {\n return get_aria_roles_supporting_name_from_content_default();\n }\n var get_roles_with_name_from_contents_default = getRolesWithNameFromContents;\n var isNull = function isNull(value) {\n return value === null;\n };\n var isNotNull = function isNotNull(value) {\n return value !== null;\n };\n var lookupTable = {};\n lookupTable.attributes = {\n 'aria-activedescendant': {\n type: 'idref',\n allowEmpty: true,\n unsupported: false\n },\n 'aria-atomic': {\n type: 'boolean',\n values: [ 'true', 'false' ],\n unsupported: false\n },\n 'aria-autocomplete': {\n type: 'nmtoken',\n values: [ 'inline', 'list', 'both', 'none' ],\n unsupported: false\n },\n 'aria-busy': {\n type: 'boolean',\n values: [ 'true', 'false' ],\n unsupported: false\n },\n 'aria-checked': {\n type: 'nmtoken',\n values: [ 'true', 'false', 'mixed', 'undefined' ],\n unsupported: false\n },\n 'aria-colcount': {\n type: 'int',\n unsupported: false\n },\n 'aria-colindex': {\n type: 'int',\n unsupported: false\n },\n 'aria-colspan': {\n type: 'int',\n unsupported: false\n },\n 'aria-controls': {\n type: 'idrefs',\n allowEmpty: true,\n unsupported: false\n },\n 'aria-current': {\n type: 'nmtoken',\n allowEmpty: true,\n values: [ 'page', 'step', 'location', 'date', 'time', 'true', 'false' ],\n unsupported: false\n },\n 'aria-describedby': {\n type: 'idrefs',\n allowEmpty: true,\n unsupported: false\n },\n 'aria-describedat': {\n unsupported: true,\n unstandardized: true\n },\n 'aria-details': {\n type: 'idref',\n allowEmpty: true,\n unsupported: false\n },\n 'aria-disabled': {\n type: 'boolean',\n values: [ 'true', 'false' ],\n unsupported: false\n },\n 'aria-dropeffect': {\n type: 'nmtokens',\n values: [ 'copy', 'move', 'reference', 'execute', 'popup', 'none' ],\n unsupported: false\n },\n 'aria-errormessage': {\n type: 'idref',\n allowEmpty: true,\n unsupported: false\n },\n 'aria-expanded': {\n type: 'nmtoken',\n values: [ 'true', 'false', 'undefined' ],\n unsupported: false\n },\n 'aria-flowto': {\n type: 'idrefs',\n allowEmpty: true,\n unsupported: false\n },\n 'aria-grabbed': {\n type: 'nmtoken',\n values: [ 'true', 'false', 'undefined' ],\n unsupported: false\n },\n 'aria-haspopup': {\n type: 'nmtoken',\n allowEmpty: true,\n values: [ 'true', 'false', 'menu', 'listbox', 'tree', 'grid', 'dialog' ],\n unsupported: false\n },\n 'aria-hidden': {\n type: 'boolean',\n values: [ 'true', 'false' ],\n unsupported: false\n },\n 'aria-invalid': {\n type: 'nmtoken',\n allowEmpty: true,\n values: [ 'true', 'false', 'spelling', 'grammar' ],\n unsupported: false\n },\n 'aria-keyshortcuts': {\n type: 'string',\n allowEmpty: true,\n unsupported: false\n },\n 'aria-label': {\n type: 'string',\n allowEmpty: true,\n unsupported: false\n },\n 'aria-labelledby': {\n type: 'idrefs',\n allowEmpty: true,\n unsupported: false\n },\n 'aria-level': {\n type: 'int',\n unsupported: false\n },\n 'aria-live': {\n type: 'nmtoken',\n values: [ 'off', 'polite', 'assertive' ],\n unsupported: false\n },\n 'aria-modal': {\n type: 'boolean',\n values: [ 'true', 'false' ],\n unsupported: false\n },\n 'aria-multiline': {\n type: 'boolean',\n values: [ 'true', 'false' ],\n unsupported: false\n },\n 'aria-multiselectable': {\n type: 'boolean',\n values: [ 'true', 'false' ],\n unsupported: false\n },\n 'aria-orientation': {\n type: 'nmtoken',\n values: [ 'horizontal', 'vertical' ],\n unsupported: false\n },\n 'aria-owns': {\n type: 'idrefs',\n allowEmpty: true,\n unsupported: false\n },\n 'aria-placeholder': {\n type: 'string',\n allowEmpty: true,\n unsupported: false\n },\n 'aria-posinset': {\n type: 'int',\n unsupported: false\n },\n 'aria-pressed': {\n type: 'nmtoken',\n values: [ 'true', 'false', 'mixed', 'undefined' ],\n unsupported: false\n },\n 'aria-readonly': {\n type: 'boolean',\n values: [ 'true', 'false' ],\n unsupported: false\n },\n 'aria-relevant': {\n type: 'nmtokens',\n values: [ 'additions', 'removals', 'text', 'all' ],\n unsupported: false\n },\n 'aria-required': {\n type: 'boolean',\n values: [ 'true', 'false' ],\n unsupported: false\n },\n 'aria-roledescription': {\n type: 'string',\n allowEmpty: true,\n unsupported: false\n },\n 'aria-rowcount': {\n type: 'int',\n unsupported: false\n },\n 'aria-rowindex': {\n type: 'int',\n unsupported: false\n },\n 'aria-rowspan': {\n type: 'int',\n unsupported: false\n },\n 'aria-selected': {\n type: 'nmtoken',\n values: [ 'true', 'false', 'undefined' ],\n unsupported: false\n },\n 'aria-setsize': {\n type: 'int',\n unsupported: false\n },\n 'aria-sort': {\n type: 'nmtoken',\n values: [ 'ascending', 'descending', 'other', 'none' ],\n unsupported: false\n },\n 'aria-valuemax': {\n type: 'decimal',\n unsupported: false\n },\n 'aria-valuemin': {\n type: 'decimal',\n unsupported: false\n },\n 'aria-valuenow': {\n type: 'decimal',\n unsupported: false\n },\n 'aria-valuetext': {\n type: 'string',\n unsupported: false\n }\n };\n lookupTable.globalAttributes = [ 'aria-atomic', 'aria-busy', 'aria-controls', 'aria-current', 'aria-describedby', 'aria-details', 'aria-disabled', 'aria-dropeffect', 'aria-flowto', 'aria-grabbed', 'aria-haspopup', 'aria-hidden', 'aria-invalid', 'aria-keyshortcuts', 'aria-label', 'aria-labelledby', 'aria-live', 'aria-owns', 'aria-relevant', 'aria-roledescription' ];\n lookupTable.role = {\n alert: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n alertdialog: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-modal', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'dialog', 'section' ]\n },\n application: {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage', 'aria-activedescendant' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'article', 'audio', 'embed', 'iframe', 'object', 'section', 'svg', 'video' ]\n },\n article: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-posinset', 'aria-setsize', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'article' ],\n unsupported: false\n },\n banner: {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'header' ],\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n button: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-pressed', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: null,\n implicit: [ 'button', 'input[type=\"button\"]', 'input[type=\"image\"]', 'input[type=\"reset\"]', 'input[type=\"submit\"]', 'summary' ],\n unsupported: false,\n allowedElements: [ {\n nodeName: 'a',\n attributes: {\n href: isNotNull\n }\n } ]\n },\n cell: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-colindex', 'aria-colspan', 'aria-rowindex', 'aria-rowspan', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: [ 'row' ],\n implicit: [ 'td', 'th' ],\n unsupported: false\n },\n checkbox: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-checked', 'aria-required', 'aria-readonly', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: null,\n implicit: [ 'input[type=\"checkbox\"]' ],\n unsupported: false,\n allowedElements: [ 'button' ]\n },\n columnheader: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-colindex', 'aria-colspan', 'aria-expanded', 'aria-rowindex', 'aria-rowspan', 'aria-required', 'aria-readonly', 'aria-selected', 'aria-sort', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: [ 'row' ],\n implicit: [ 'th' ],\n unsupported: false\n },\n combobox: {\n type: 'composite',\n attributes: {\n allowed: [ 'aria-autocomplete', 'aria-required', 'aria-activedescendant', 'aria-orientation', 'aria-errormessage' ],\n required: [ 'aria-expanded' ]\n },\n owned: {\n all: [ 'listbox', 'tree', 'grid', 'dialog', 'textbox' ]\n },\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ {\n nodeName: 'input',\n properties: {\n type: [ 'text', 'search', 'tel', 'url', 'email' ]\n }\n } ]\n },\n command: {\n nameFrom: [ 'author' ],\n type: 'abstract',\n unsupported: false\n },\n complementary: {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'aside' ],\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n composite: {\n nameFrom: [ 'author' ],\n type: 'abstract',\n unsupported: false\n },\n contentinfo: {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'footer' ],\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n definition: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'dd', 'dfn' ],\n unsupported: false\n },\n dialog: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-modal', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'dialog' ],\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n directory: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'ol', 'ul' ]\n },\n document: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'body' ],\n unsupported: false,\n allowedElements: [ 'article', 'embed', 'iframe', 'object', 'section', 'svg' ]\n },\n 'doc-abstract': {\n type: 'section',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-acknowledgments': {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-afterword': {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-appendix': {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-backlink': {\n type: 'link',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: null,\n unsupported: false,\n allowedElements: [ {\n nodeName: 'a',\n attributes: {\n href: isNotNull\n }\n } ]\n },\n 'doc-biblioentry': {\n type: 'listitem',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-level', 'aria-posinset', 'aria-setsize', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: [ 'doc-bibliography' ],\n unsupported: false,\n allowedElements: [ 'li' ]\n },\n 'doc-bibliography': {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: {\n one: [ 'doc-biblioentry' ]\n },\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-biblioref': {\n type: 'link',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: null,\n unsupported: false,\n allowedElements: [ {\n nodeName: 'a',\n attributes: {\n href: isNotNull\n }\n } ]\n },\n 'doc-chapter': {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-colophon': {\n type: 'section',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-conclusion': {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-cover': {\n type: 'img',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false\n },\n 'doc-credit': {\n type: 'section',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-credits': {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-dedication': {\n type: 'section',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-endnote': {\n type: 'listitem',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-level', 'aria-posinset', 'aria-setsize', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: [ 'doc-endnotes' ],\n unsupported: false,\n allowedElements: [ 'li' ]\n },\n 'doc-endnotes': {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: {\n one: [ 'doc-endnote' ]\n },\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-epigraph': {\n type: 'section',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false\n },\n 'doc-epilogue': {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-errata': {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-example': {\n type: 'section',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'aside', 'section' ]\n },\n 'doc-footnote': {\n type: 'section',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'aside', 'footer', 'header' ]\n },\n 'doc-foreword': {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-glossary': {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: [ 'term', 'definition' ],\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'dl' ]\n },\n 'doc-glossref': {\n type: 'link',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author', 'contents' ],\n context: null,\n unsupported: false,\n allowedElements: [ {\n nodeName: 'a',\n attributes: {\n href: isNotNull\n }\n } ]\n },\n 'doc-index': {\n type: 'navigation',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'nav', 'section' ]\n },\n 'doc-introduction': {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-noteref': {\n type: 'link',\n attributes: {\n allowed: [ 'aria-expanded' ]\n },\n owned: null,\n namefrom: [ 'author', 'contents' ],\n context: null,\n unsupported: false,\n allowedElements: [ {\n nodeName: 'a',\n attributes: {\n href: isNotNull\n }\n } ]\n },\n 'doc-notice': {\n type: 'note',\n attributes: {\n allowed: [ 'aria-expanded' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-pagebreak': {\n type: 'separator',\n attributes: {\n allowed: [ 'aria-expanded' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'hr' ]\n },\n 'doc-pagelist': {\n type: 'navigation',\n attributes: {\n allowed: [ 'aria-expanded' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'nav', 'section' ]\n },\n 'doc-part': {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-preface': {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-prologue': {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-pullquote': {\n type: 'none',\n attributes: {\n allowed: [ 'aria-expanded' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'aside', 'section' ]\n },\n 'doc-qna': {\n type: 'section',\n attributes: {\n allowed: [ 'aria-expanded' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n 'doc-subtitle': {\n type: 'sectionhead',\n attributes: {\n allowed: [ 'aria-expanded' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: {\n nodeName: [ 'h1', 'h2', 'h3', 'h4', 'h5', 'h6' ]\n }\n },\n 'doc-tip': {\n type: 'note',\n attributes: {\n allowed: [ 'aria-expanded' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'aside' ]\n },\n 'doc-toc': {\n type: 'navigation',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n namefrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'nav', 'section' ]\n },\n feed: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: {\n one: [ 'article' ]\n },\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'article', 'aside', 'section' ]\n },\n figure: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: null,\n implicit: [ 'figure' ],\n unsupported: false\n },\n form: {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'form' ],\n unsupported: false\n },\n grid: {\n type: 'composite',\n attributes: {\n allowed: [ 'aria-activedescendant', 'aria-expanded', 'aria-colcount', 'aria-level', 'aria-multiselectable', 'aria-readonly', 'aria-rowcount', 'aria-errormessage' ]\n },\n owned: {\n one: [ 'rowgroup', 'row' ]\n },\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'table' ],\n unsupported: false\n },\n gridcell: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-colindex', 'aria-colspan', 'aria-expanded', 'aria-rowindex', 'aria-rowspan', 'aria-selected', 'aria-readonly', 'aria-required', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: [ 'row' ],\n implicit: [ 'td', 'th' ],\n unsupported: false\n },\n group: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-activedescendant', 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'details', 'optgroup' ],\n unsupported: false,\n allowedElements: [ 'dl', 'figcaption', 'fieldset', 'figure', 'footer', 'header', 'ol', 'ul' ]\n },\n heading: {\n type: 'structure',\n attributes: {\n required: [ 'aria-level' ],\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: null,\n implicit: [ 'h1', 'h2', 'h3', 'h4', 'h5', 'h6' ],\n unsupported: false\n },\n img: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'img' ],\n unsupported: false,\n allowedElements: [ 'embed', 'iframe', 'object', 'svg' ]\n },\n input: {\n nameFrom: [ 'author' ],\n type: 'abstract',\n unsupported: false\n },\n landmark: {\n nameFrom: [ 'author' ],\n type: 'abstract',\n unsupported: false\n },\n link: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: null,\n implicit: [ 'a[href]', 'area[href]' ],\n unsupported: false,\n allowedElements: [ 'button', {\n nodeName: 'input',\n properties: {\n type: [ 'image', 'button' ]\n }\n } ]\n },\n list: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: {\n all: [ 'listitem' ]\n },\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'ol', 'ul', 'dl' ],\n unsupported: false\n },\n listbox: {\n type: 'composite',\n attributes: {\n allowed: [ 'aria-activedescendant', 'aria-multiselectable', 'aria-readonly', 'aria-required', 'aria-expanded', 'aria-orientation', 'aria-errormessage' ]\n },\n owned: {\n all: [ 'option' ]\n },\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'select' ],\n unsupported: false,\n allowedElements: [ 'ol', 'ul' ]\n },\n listitem: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-level', 'aria-posinset', 'aria-setsize', 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: [ 'list' ],\n implicit: [ 'li', 'dt' ],\n unsupported: false\n },\n log: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n main: {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'main' ],\n unsupported: false,\n allowedElements: [ 'article', 'section' ]\n },\n marquee: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n math: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'math' ],\n unsupported: false\n },\n menu: {\n type: 'composite',\n attributes: {\n allowed: [ 'aria-activedescendant', 'aria-expanded', 'aria-orientation', 'aria-errormessage' ]\n },\n owned: {\n one: [ 'menuitem', 'menuitemradio', 'menuitemcheckbox' ]\n },\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'menu[type=\"context\"]' ],\n unsupported: false,\n allowedElements: [ 'ol', 'ul' ]\n },\n menubar: {\n type: 'composite',\n attributes: {\n allowed: [ 'aria-activedescendant', 'aria-expanded', 'aria-orientation', 'aria-errormessage' ]\n },\n owned: {\n one: [ 'menuitem', 'menuitemradio', 'menuitemcheckbox' ]\n },\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'ol', 'ul' ]\n },\n menuitem: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-posinset', 'aria-setsize', 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: [ 'menu', 'menubar' ],\n implicit: [ 'menuitem[type=\"command\"]' ],\n unsupported: false,\n allowedElements: [ 'button', 'li', {\n nodeName: 'iput',\n properties: {\n type: [ 'image', 'button' ]\n }\n }, {\n nodeName: 'a',\n attributes: {\n href: isNotNull\n }\n } ]\n },\n menuitemcheckbox: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-checked', 'aria-posinset', 'aria-setsize', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: [ 'menu', 'menubar' ],\n implicit: [ 'menuitem[type=\"checkbox\"]' ],\n unsupported: false,\n allowedElements: [ {\n nodeName: [ 'button', 'li' ]\n }, {\n nodeName: 'input',\n properties: {\n type: [ 'checkbox', 'image', 'button' ]\n }\n }, {\n nodeName: 'a',\n attributes: {\n href: isNotNull\n }\n } ]\n },\n menuitemradio: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-checked', 'aria-selected', 'aria-posinset', 'aria-setsize', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: [ 'menu', 'menubar' ],\n implicit: [ 'menuitem[type=\"radio\"]' ],\n unsupported: false,\n allowedElements: [ {\n nodeName: [ 'button', 'li' ]\n }, {\n nodeName: 'input',\n properties: {\n type: [ 'image', 'button', 'radio' ]\n }\n }, {\n nodeName: 'a',\n attributes: {\n href: isNotNull\n }\n } ]\n },\n navigation: {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'nav' ],\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n none: {\n type: 'structure',\n attributes: null,\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ {\n nodeName: [ 'article', 'aside', 'dl', 'embed', 'figcaption', 'fieldset', 'figure', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'header', 'hr', 'iframe', 'li', 'ol', 'section', 'ul' ]\n }, {\n nodeName: 'img',\n attributes: {\n alt: isNotNull\n }\n } ]\n },\n note: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'aside' ]\n },\n option: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-selected', 'aria-posinset', 'aria-setsize', 'aria-checked', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: [ 'listbox' ],\n implicit: [ 'option' ],\n unsupported: false,\n allowedElements: [ {\n nodeName: [ 'button', 'li' ]\n }, {\n nodeName: 'input',\n properties: {\n type: [ 'checkbox', 'button' ]\n }\n }, {\n nodeName: 'a',\n attributes: {\n href: isNotNull\n }\n } ]\n },\n presentation: {\n type: 'structure',\n attributes: null,\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ {\n nodeName: [ 'article', 'aside', 'dl', 'embed', 'figcaption', 'fieldset', 'figure', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'header', 'hr', 'iframe', 'li', 'ol', 'section', 'ul' ]\n }, {\n nodeName: 'img',\n attributes: {\n alt: isNotNull\n }\n } ]\n },\n progressbar: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-valuetext', 'aria-valuenow', 'aria-valuemax', 'aria-valuemin', 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'progress' ],\n unsupported: false\n },\n radio: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-selected', 'aria-posinset', 'aria-setsize', 'aria-required', 'aria-errormessage', 'aria-checked' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: null,\n implicit: [ 'input[type=\"radio\"]' ],\n unsupported: false,\n allowedElements: [ {\n nodeName: [ 'button', 'li' ]\n }, {\n nodeName: 'input',\n properties: {\n type: [ 'image', 'button' ]\n }\n } ]\n },\n radiogroup: {\n type: 'composite',\n attributes: {\n allowed: [ 'aria-activedescendant', 'aria-required', 'aria-expanded', 'aria-readonly', 'aria-errormessage', 'aria-orientation' ]\n },\n owned: {\n all: [ 'radio' ]\n },\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: {\n nodeName: [ 'ol', 'ul', 'fieldset' ]\n }\n },\n range: {\n nameFrom: [ 'author' ],\n type: 'abstract',\n unsupported: false\n },\n region: {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'section[aria-label]', 'section[aria-labelledby]', 'section[title]' ],\n unsupported: false,\n allowedElements: {\n nodeName: [ 'article', 'aside' ]\n }\n },\n roletype: {\n type: 'abstract',\n unsupported: false\n },\n row: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-activedescendant', 'aria-colindex', 'aria-expanded', 'aria-level', 'aria-selected', 'aria-rowindex', 'aria-errormessage' ]\n },\n owned: {\n one: [ 'cell', 'columnheader', 'rowheader', 'gridcell' ]\n },\n nameFrom: [ 'author', 'contents' ],\n context: [ 'rowgroup', 'grid', 'treegrid', 'table' ],\n implicit: [ 'tr' ],\n unsupported: false\n },\n rowgroup: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-activedescendant', 'aria-expanded', 'aria-errormessage' ]\n },\n owned: {\n all: [ 'row' ]\n },\n nameFrom: [ 'author', 'contents' ],\n context: [ 'grid', 'table', 'treegrid' ],\n implicit: [ 'tbody', 'thead', 'tfoot' ],\n unsupported: false\n },\n rowheader: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-colindex', 'aria-colspan', 'aria-expanded', 'aria-rowindex', 'aria-rowspan', 'aria-required', 'aria-readonly', 'aria-selected', 'aria-sort', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: [ 'row' ],\n implicit: [ 'th' ],\n unsupported: false\n },\n scrollbar: {\n type: 'widget',\n attributes: {\n required: [ 'aria-controls', 'aria-valuenow' ],\n allowed: [ 'aria-valuetext', 'aria-orientation', 'aria-errormessage', 'aria-valuemax', 'aria-valuemin' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false\n },\n search: {\n type: 'landmark',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: {\n nodeName: [ 'aside', 'form', 'section' ]\n }\n },\n searchbox: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-activedescendant', 'aria-autocomplete', 'aria-multiline', 'aria-readonly', 'aria-required', 'aria-placeholder', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'input[type=\"search\"]' ],\n unsupported: false,\n allowedElements: {\n nodeName: 'input',\n properties: {\n type: 'text'\n }\n }\n },\n section: {\n nameFrom: [ 'author', 'contents' ],\n type: 'abstract',\n unsupported: false\n },\n sectionhead: {\n nameFrom: [ 'author', 'contents' ],\n type: 'abstract',\n unsupported: false\n },\n select: {\n nameFrom: [ 'author' ],\n type: 'abstract',\n unsupported: false\n },\n separator: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-orientation', 'aria-valuenow', 'aria-valuemax', 'aria-valuemin', 'aria-valuetext', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'hr' ],\n unsupported: false,\n allowedElements: [ 'li' ]\n },\n slider: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-valuetext', 'aria-orientation', 'aria-readonly', 'aria-errormessage', 'aria-valuemax', 'aria-valuemin' ],\n required: [ 'aria-valuenow' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'input[type=\"range\"]' ],\n unsupported: false\n },\n spinbutton: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-valuetext', 'aria-required', 'aria-readonly', 'aria-errormessage', 'aria-valuemax', 'aria-valuemin' ],\n required: [ 'aria-valuenow' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'input[type=\"number\"]' ],\n unsupported: false,\n allowedElements: {\n nodeName: 'input',\n properties: {\n type: [ 'text', 'tel' ]\n }\n }\n },\n status: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'output' ],\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n structure: {\n type: 'abstract',\n unsupported: false\n },\n switch: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-errormessage' ],\n required: [ 'aria-checked' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'button', {\n nodeName: 'input',\n properties: {\n type: [ 'checkbox', 'image', 'button' ]\n }\n }, {\n nodeName: 'a',\n attributes: {\n href: isNotNull\n }\n } ]\n },\n tab: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-selected', 'aria-expanded', 'aria-setsize', 'aria-posinset', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: [ 'tablist' ],\n unsupported: false,\n allowedElements: [ {\n nodeName: [ 'button', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'li' ]\n }, {\n nodeName: 'input',\n properties: {\n type: 'button'\n }\n }, {\n nodeName: 'a',\n attributes: {\n href: isNotNull\n }\n } ]\n },\n table: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-colcount', 'aria-rowcount', 'aria-errormessage' ]\n },\n owned: {\n one: [ 'rowgroup', 'row' ]\n },\n nameFrom: [ 'author', 'contents' ],\n context: null,\n implicit: [ 'table' ],\n unsupported: false\n },\n tablist: {\n type: 'composite',\n attributes: {\n allowed: [ 'aria-activedescendant', 'aria-expanded', 'aria-level', 'aria-multiselectable', 'aria-orientation', 'aria-errormessage' ]\n },\n owned: {\n all: [ 'tab' ]\n },\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'ol', 'ul' ]\n },\n tabpanel: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'section' ]\n },\n term: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: null,\n implicit: [ 'dt' ],\n unsupported: false\n },\n textbox: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-activedescendant', 'aria-autocomplete', 'aria-multiline', 'aria-readonly', 'aria-required', 'aria-placeholder', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'input[type=\"text\"]', 'input[type=\"email\"]', 'input[type=\"password\"]', 'input[type=\"tel\"]', 'input[type=\"url\"]', 'input:not([type])', 'textarea' ],\n unsupported: false\n },\n timer: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false\n },\n toolbar: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-activedescendant', 'aria-expanded', 'aria-orientation', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author' ],\n context: null,\n implicit: [ 'menu[type=\"toolbar\"]' ],\n unsupported: false,\n allowedElements: [ 'ol', 'ul' ]\n },\n tooltip: {\n type: 'structure',\n attributes: {\n allowed: [ 'aria-expanded', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: null,\n unsupported: false\n },\n tree: {\n type: 'composite',\n attributes: {\n allowed: [ 'aria-activedescendant', 'aria-multiselectable', 'aria-required', 'aria-expanded', 'aria-orientation', 'aria-errormessage' ]\n },\n owned: {\n all: [ 'treeitem' ]\n },\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false,\n allowedElements: [ 'ol', 'ul' ]\n },\n treegrid: {\n type: 'composite',\n attributes: {\n allowed: [ 'aria-activedescendant', 'aria-colcount', 'aria-expanded', 'aria-level', 'aria-multiselectable', 'aria-readonly', 'aria-required', 'aria-rowcount', 'aria-orientation', 'aria-errormessage' ]\n },\n owned: {\n one: [ 'rowgroup', 'row' ]\n },\n nameFrom: [ 'author' ],\n context: null,\n unsupported: false\n },\n treeitem: {\n type: 'widget',\n attributes: {\n allowed: [ 'aria-checked', 'aria-selected', 'aria-expanded', 'aria-level', 'aria-posinset', 'aria-setsize', 'aria-errormessage' ]\n },\n owned: null,\n nameFrom: [ 'author', 'contents' ],\n context: [ 'group', 'tree' ],\n unsupported: false,\n allowedElements: [ 'li', {\n nodeName: 'a',\n attributes: {\n href: isNotNull\n }\n } ]\n },\n widget: {\n type: 'abstract',\n unsupported: false\n },\n window: {\n nameFrom: [ 'author' ],\n type: 'abstract',\n unsupported: false\n }\n };\n lookupTable.implicitHtmlRole = implicit_html_roles_default;\n lookupTable.elementsAllowedNoRole = [ {\n nodeName: [ 'base', 'body', 'caption', 'col', 'colgroup', 'datalist', 'dd', 'details', 'dt', 'head', 'html', 'keygen', 'label', 'legend', 'main', 'map', 'math', 'meta', 'meter', 'noscript', 'optgroup', 'param', 'picture', 'progress', 'script', 'source', 'style', 'template', 'textarea', 'title', 'track' ]\n }, {\n nodeName: 'area',\n attributes: {\n href: isNotNull\n }\n }, {\n nodeName: 'input',\n properties: {\n type: [ 'color', 'data', 'datatime', 'file', 'hidden', 'month', 'number', 'password', 'range', 'reset', 'submit', 'time', 'week' ]\n }\n }, {\n nodeName: 'link',\n attributes: {\n href: isNotNull\n }\n }, {\n nodeName: 'menu',\n attributes: {\n type: 'context'\n }\n }, {\n nodeName: 'menuitem',\n attributes: {\n type: [ 'command', 'checkbox', 'radio' ]\n }\n }, {\n nodeName: 'select',\n condition: function condition(vNode) {\n if (!(vNode instanceof axe.AbstractVirtualNode)) {\n vNode = axe.utils.getNodeFromTree(vNode);\n }\n return Number(vNode.attr('size')) > 1;\n },\n properties: {\n multiple: true\n }\n }, {\n nodeName: [ 'clippath', 'cursor', 'defs', 'desc', 'feblend', 'fecolormatrix', 'fecomponenttransfer', 'fecomposite', 'feconvolvematrix', 'fediffuselighting', 'fedisplacementmap', 'fedistantlight', 'fedropshadow', 'feflood', 'fefunca', 'fefuncb', 'fefuncg', 'fefuncr', 'fegaussianblur', 'feimage', 'femerge', 'femergenode', 'femorphology', 'feoffset', 'fepointlight', 'fespecularlighting', 'fespotlight', 'fetile', 'feturbulence', 'filter', 'hatch', 'hatchpath', 'lineargradient', 'marker', 'mask', 'meshgradient', 'meshpatch', 'meshrow', 'metadata', 'mpath', 'pattern', 'radialgradient', 'solidcolor', 'stop', 'switch', 'view' ]\n } ];\n lookupTable.elementsAllowedAnyRole = [ {\n nodeName: 'a',\n attributes: {\n href: isNull\n }\n }, {\n nodeName: 'img',\n attributes: {\n alt: isNull\n }\n }, {\n nodeName: [ 'abbr', 'address', 'canvas', 'div', 'p', 'pre', 'blockquote', 'ins', 'del', 'output', 'span', 'table', 'tbody', 'thead', 'tfoot', 'td', 'em', 'strong', 'small', 's', 'cite', 'q', 'dfn', 'abbr', 'time', 'code', 'var', 'samp', 'kbd', 'sub', 'sup', 'i', 'b', 'u', 'mark', 'ruby', 'rt', 'rp', 'bdi', 'bdo', 'br', 'wbr', 'th', 'tr' ]\n } ];\n lookupTable.evaluateRoleForElement = {\n A: function A(_ref82) {\n var node = _ref82.node, out = _ref82.out;\n if (node.namespaceURI === 'http://www.w3.org/2000/svg') {\n return true;\n }\n if (node.href.length) {\n return out;\n }\n return true;\n },\n AREA: function AREA(_ref83) {\n var node = _ref83.node;\n return !node.href;\n },\n BUTTON: function BUTTON(_ref84) {\n var node = _ref84.node, role = _ref84.role, out = _ref84.out;\n if (node.getAttribute('type') === 'menu') {\n return role === 'menuitem';\n }\n return out;\n },\n IMG: function IMG(_ref85) {\n var node = _ref85.node, role = _ref85.role, out = _ref85.out;\n switch (node.alt) {\n case null:\n return out;\n\n case '':\n return role === 'presentation' || role === 'none';\n\n default:\n return role !== 'presentation' && role !== 'none';\n }\n },\n INPUT: function INPUT(_ref86) {\n var node = _ref86.node, role = _ref86.role, out = _ref86.out;\n switch (node.type) {\n case 'button':\n case 'image':\n return out;\n\n case 'checkbox':\n if (role === 'button' && node.hasAttribute('aria-pressed')) {\n return true;\n }\n return out;\n\n case 'radio':\n return role === 'menuitemradio';\n\n case 'text':\n return role === 'combobox' || role === 'searchbox' || role === 'spinbutton';\n\n case 'tel':\n return role === 'combobox' || role === 'spinbutton';\n\n case 'url':\n case 'search':\n case 'email':\n return role === 'combobox';\n\n default:\n return false;\n }\n },\n LI: function LI(_ref87) {\n var node = _ref87.node, out = _ref87.out;\n var hasImplicitListitemRole = axe.utils.matchesSelector(node, 'ol li, ul li');\n if (hasImplicitListitemRole) {\n return out;\n }\n return true;\n },\n MENU: function MENU(_ref88) {\n var node = _ref88.node;\n if (node.getAttribute('type') === 'context') {\n return false;\n }\n return true;\n },\n OPTION: function OPTION(_ref89) {\n var node = _ref89.node;\n var withinOptionList = axe.utils.matchesSelector(node, 'select > option, datalist > option, optgroup > option');\n return !withinOptionList;\n },\n SELECT: function SELECT(_ref90) {\n var node = _ref90.node, role = _ref90.role;\n return !node.multiple && node.size <= 1 && role === 'menu';\n },\n SVG: function SVG(_ref91) {\n var node = _ref91.node, out = _ref91.out;\n if (node.parentNode && node.parentNode.namespaceURI === 'http://www.w3.org/2000/svg') {\n return true;\n }\n return out;\n }\n };\n lookupTable.rolesOfType = {\n widget: [ 'button', 'checkbox', 'dialog', 'gridcell', 'link', 'log', 'marquee', 'menuitem', 'menuitemcheckbox', 'menuitemradio', 'option', 'progressbar', 'radio', 'scrollbar', 'searchbox', 'slider', 'spinbutton', 'status', 'switch', 'tab', 'tabpanel', 'textbox', 'timer', 'tooltip', 'tree', 'treeitem' ]\n };\n var lookup_table_default = lookupTable;\n function implicitNodes(role) {\n var implicit = null;\n var roles = lookup_table_default.role[role];\n if (roles && roles.implicit) {\n implicit = clone2(roles.implicit);\n }\n return implicit;\n }\n var implicit_nodes_default = implicitNodes;\n function isAccessibleRef(node) {\n return !!get_accessible_refs_default(node).length;\n }\n var is_accessible_ref_default = isAccessibleRef;\n function _isComboboxPopup(virtualNode) {\n var _ref92 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, popupRoles = _ref92.popupRoles;\n var role = get_role_default(virtualNode);\n popupRoles !== null && popupRoles !== void 0 ? popupRoles : popupRoles = aria_attrs_default['aria-haspopup'].values;\n if (!popupRoles.includes(role)) {\n return false;\n }\n var vParent = nearestParentWithRole(virtualNode);\n if (isCombobox(vParent)) {\n return true;\n }\n var id = virtualNode.props.id;\n if (!id) {\n return false;\n }\n if (!virtualNode.actualNode) {\n throw new Error('Unable to determine combobox popup without an actualNode');\n }\n var root = get_root_node_default(virtualNode.actualNode);\n var ownedCombobox = root.querySelectorAll('[aria-owns~=\"'.concat(id, '\"][role~=\"combobox\"]:not(select),\\n [aria-controls~=\"').concat(id, '\"][role~=\"combobox\"]:not(select)'));\n return Array.from(ownedCombobox).some(isCombobox);\n }\n var isCombobox = function isCombobox(node) {\n return node && get_role_default(node) === 'combobox';\n };\n function nearestParentWithRole(vNode) {\n while (vNode = vNode.parent) {\n if (get_role_default(vNode, {\n noPresentational: true\n }) !== null) {\n return vNode;\n }\n }\n return null;\n }\n function label2(node) {\n node = get_node_from_tree_default(node);\n return label_virtual_default(node);\n }\n var label_default2 = label2;\n function requiredAttr(role) {\n var roleDef = standards_default.ariaRoles[role];\n if (!roleDef || !Array.isArray(roleDef.requiredAttrs)) {\n return [];\n }\n return _toConsumableArray(roleDef.requiredAttrs);\n }\n var required_attr_default = requiredAttr;\n function requiredContext(role) {\n var roleDef = standards_default.ariaRoles[role];\n if (!roleDef || !Array.isArray(roleDef.requiredContext)) {\n return null;\n }\n return _toConsumableArray(roleDef.requiredContext);\n }\n var required_context_default = requiredContext;\n function requiredOwned(role) {\n var roleDef = standards_default.ariaRoles[role];\n if (!roleDef || !Array.isArray(roleDef.requiredOwned)) {\n return null;\n }\n return _toConsumableArray(roleDef.requiredOwned);\n }\n var required_owned_default = requiredOwned;\n function validateAttrValue(vNode, attr) {\n vNode = vNode instanceof abstract_virtual_node_default ? vNode : get_node_from_tree_default(vNode);\n var matches4;\n var list;\n var value = vNode.attr(attr);\n var attrInfo = standards_default.ariaAttrs[attr];\n if (!attrInfo) {\n return true;\n }\n if (attrInfo.allowEmpty && (!value || value.trim() === '')) {\n return true;\n }\n switch (attrInfo.type) {\n case 'boolean':\n return [ 'true', 'false' ].includes(value.toLowerCase());\n\n case 'nmtoken':\n return typeof value === 'string' && attrInfo.values.includes(value.toLowerCase());\n\n case 'nmtokens':\n list = token_list_default(value);\n return list.reduce(function(result, token) {\n return result && attrInfo.values.includes(token);\n }, list.length !== 0);\n\n case 'idref':\n try {\n var doc = get_root_node_default2(vNode.actualNode);\n return !!(value && doc.getElementById(value));\n } catch (_unused6) {\n throw new TypeError('Cannot resolve id references for partial DOM');\n }\n\n case 'idrefs':\n return idrefs_default(vNode, attr).some(function(node) {\n return !!node;\n });\n\n case 'string':\n return value.trim() !== '';\n\n case 'decimal':\n matches4 = value.match(/^[-+]?([0-9]*)\\.?([0-9]*)$/);\n return !!(matches4 && (matches4[1] || matches4[2]));\n\n case 'int':\n var minValue = typeof attrInfo.minValue !== 'undefined' ? attrInfo.minValue : -Infinity;\n return /^[-+]?[0-9]+$/.test(value) && parseInt(value) >= minValue;\n }\n }\n var validate_attr_value_default = validateAttrValue;\n function validateAttr(att) {\n var attrDefinition = standards_default.ariaAttrs[att];\n return !!attrDefinition;\n }\n var validate_attr_default = validateAttr;\n function thHasDataCellsEvaluate(node) {\n var cells = get_all_cells_default(node);\n var checkResult = this;\n var reffedHeaders = [];\n cells.forEach(function(cell) {\n var headers2 = cell.getAttribute('headers');\n if (headers2) {\n reffedHeaders = reffedHeaders.concat(headers2.split(/\\s+/));\n }\n var ariaLabel = cell.getAttribute('aria-labelledby');\n if (ariaLabel) {\n reffedHeaders = reffedHeaders.concat(ariaLabel.split(/\\s+/));\n }\n });\n var headers = cells.filter(function(cell) {\n if (sanitize_default(cell.textContent) === '') {\n return false;\n }\n return cell.nodeName.toUpperCase() === 'TH' || [ 'rowheader', 'columnheader' ].indexOf(get_explicit_role_default(cell)) !== -1;\n });\n var tableGrid = to_grid_default(node);\n var out = true;\n headers.forEach(function(header) {\n if (header.getAttribute('id') && reffedHeaders.includes(header.getAttribute('id'))) {\n return;\n }\n var pos = get_cell_position_default(header, tableGrid);\n var hasCell = false;\n if (is_column_header_default(header)) {\n hasCell = traverse_default('down', pos, tableGrid).find(function(cell) {\n return !is_column_header_default(cell) && get_headers_default(cell, tableGrid).includes(header);\n });\n }\n if (!hasCell && is_row_header_default(header)) {\n hasCell = traverse_default('right', pos, tableGrid).find(function(cell) {\n return !is_row_header_default(cell) && get_headers_default(cell, tableGrid).includes(header);\n });\n }\n if (!hasCell) {\n checkResult.relatedNodes(header);\n }\n out = out && hasCell;\n });\n return out ? true : void 0;\n }\n var th_has_data_cells_evaluate_default = thHasDataCellsEvaluate;\n var messageKeys = [ 'cell-header-not-in-table', 'cell-header-not-th', 'header-refs-self', 'empty-hdrs' ];\n var notInTable = messageKeys[0], notTh = messageKeys[1], selfRef = messageKeys[2], emptyHdrs = messageKeys[3];\n function tdHeadersAttrEvaluate(node) {\n var cells = [];\n var cellRoleById = {};\n for (var rowIndex = 0; rowIndex < node.rows.length; rowIndex++) {\n var row = node.rows[rowIndex];\n for (var cellIndex = 0; cellIndex < row.cells.length; cellIndex++) {\n var cell = row.cells[cellIndex];\n cells.push(cell);\n var cellId = cell.getAttribute('id');\n if (cellId) {\n cellRoleById[cellId] = get_role_default(cell);\n }\n }\n }\n var badCells = _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, selfRef, new Set()), notInTable, new Set()), notTh, new Set()), emptyHdrs, new Set());\n cells.forEach(function(cell) {\n if (!cell.hasAttribute('headers') || !_isVisibleToScreenReaders(cell)) {\n return;\n }\n var headersAttr = cell.getAttribute('headers').trim();\n if (!headersAttr) {\n badCells[emptyHdrs].add(cell);\n return;\n }\n var cellId = cell.getAttribute('id');\n var headers = token_list_default(headersAttr);\n headers.forEach(function(headerId) {\n if (cellId && headerId === cellId) {\n badCells[selfRef].add(cell);\n } else if (!cellRoleById[headerId]) {\n badCells[notInTable].add(cell);\n } else if (![ 'columnheader', 'rowheader' ].includes(cellRoleById[headerId])) {\n badCells[notTh].add(cell);\n }\n });\n });\n var _iterator16 = _createForOfIteratorHelper(messageKeys), _step16;\n try {\n for (_iterator16.s(); !(_step16 = _iterator16.n()).done; ) {\n var messageKey = _step16.value;\n if (badCells[messageKey].size > 0) {\n this.relatedNodes(_toConsumableArray(badCells[messageKey]));\n if (messageKey === emptyHdrs) {\n return void 0;\n }\n this.data({\n messageKey: messageKey\n });\n return false;\n }\n }\n } catch (err) {\n _iterator16.e(err);\n } finally {\n _iterator16.f();\n }\n return true;\n }\n function tdHasHeaderEvaluate(node) {\n var badCells = [];\n var cells = get_all_cells_default(node);\n var tableGrid = to_grid_default(node);\n cells.forEach(function(cell) {\n if (has_content_default(cell) && is_data_cell_default(cell) && !label_default2(cell)) {\n var hasHeaders = get_headers_default(cell, tableGrid).some(function(header) {\n return header !== null && !!has_content_default(header);\n });\n if (!hasHeaders) {\n badCells.push(cell);\n }\n }\n });\n if (badCells.length) {\n this.relatedNodes(badCells);\n return false;\n }\n return true;\n }\n var td_has_header_evaluate_default = tdHasHeaderEvaluate;\n function scopeValueEvaluate(node, options) {\n var value = node.getAttribute('scope').toLowerCase();\n return options.values.indexOf(value) !== -1;\n }\n var scope_value_evaluate_default = scopeValueEvaluate;\n var same_caption_summary_evaluate_default = sameCaptionSummaryEvaluate;\n function sameCaptionSummaryEvaluate(node, options, virtualNode) {\n if (virtualNode.children === void 0) {\n return void 0;\n }\n var summary = virtualNode.attr('summary');\n var captionNode = virtualNode.children.find(isCaptionNode);\n var caption = captionNode ? sanitize_default(subtree_text_default(captionNode)) : false;\n if (!caption || !summary) {\n return false;\n }\n return sanitize_default(summary).toLowerCase() === sanitize_default(caption).toLowerCase();\n }\n function isCaptionNode(virtualNode) {\n return virtualNode.props.nodeName === 'caption';\n }\n function html5ScopeEvaluate(node) {\n if (!is_html5_default(document)) {\n return true;\n }\n return node.nodeName.toUpperCase() === 'TH';\n }\n var html5_scope_evaluate_default = html5ScopeEvaluate;\n function captionFakedEvaluate(node) {\n var table = to_grid_default(node);\n var firstRow = table[0];\n if (table.length <= 1 || firstRow.length <= 1 || node.rows.length <= 1) {\n return true;\n }\n return firstRow.reduce(function(out, curr, i) {\n return out || curr !== firstRow[i + 1] && firstRow[i + 1] !== void 0;\n }, false);\n }\n var caption_faked_evaluate_default = captionFakedEvaluate;\n function svgNonEmptyTitleEvaluate(node, options, virtualNode) {\n if (!virtualNode.children) {\n return void 0;\n }\n var titleNode = virtualNode.children.find(function(_ref93) {\n var props = _ref93.props;\n return props.nodeName === 'title';\n });\n if (!titleNode) {\n this.data({\n messageKey: 'noTitle'\n });\n return false;\n }\n try {\n var titleText2 = subtree_text_default(titleNode, {\n includeHidden: true\n }).trim();\n if (titleText2 === '') {\n this.data({\n messageKey: 'emptyTitle'\n });\n return false;\n }\n } catch (_unused7) {\n return void 0;\n }\n return true;\n }\n var svg_non_empty_title_evaluate_default = svgNonEmptyTitleEvaluate;\n var standards_exports = {};\n __export(standards_exports, {\n getAriaRolesByType: function getAriaRolesByType() {\n return get_aria_roles_by_type_default;\n },\n getAriaRolesSupportingNameFromContent: function getAriaRolesSupportingNameFromContent() {\n return get_aria_roles_supporting_name_from_content_default;\n },\n getElementSpec: function getElementSpec() {\n return get_element_spec_default;\n },\n getElementsByContentType: function getElementsByContentType() {\n return get_elements_by_content_type_default;\n },\n getGlobalAriaAttrs: function getGlobalAriaAttrs() {\n return get_global_aria_attrs_default;\n },\n implicitHtmlRoles: function implicitHtmlRoles() {\n return implicit_html_roles_default;\n }\n });\n function presentationalRoleEvaluate(node, options, virtualNode) {\n var explicitRole2 = get_explicit_role_default(virtualNode);\n if ([ 'presentation', 'none' ].includes(explicitRole2) && [ 'iframe', 'frame' ].includes(virtualNode.props.nodeName) && virtualNode.hasAttr('title')) {\n this.data({\n messageKey: 'iframe',\n nodeName: virtualNode.props.nodeName\n });\n return false;\n }\n var role = get_role_default(virtualNode);\n if ([ 'presentation', 'none' ].includes(role)) {\n this.data({\n role: role\n });\n return true;\n }\n if (![ 'presentation', 'none' ].includes(explicitRole2)) {\n return false;\n }\n var hasGlobalAria = get_global_aria_attrs_default().some(function(attr) {\n return virtualNode.hasAttr(attr);\n });\n var focusable = _isFocusable(virtualNode);\n var messageKey;\n if (hasGlobalAria && !focusable) {\n messageKey = 'globalAria';\n } else if (!hasGlobalAria && focusable) {\n messageKey = 'focusable';\n } else {\n messageKey = 'both';\n }\n this.data({\n messageKey: messageKey,\n role: role\n });\n return false;\n }\n function nonEmptyIfPresentEvaluate(node, options, virtualNode) {\n var nodeName2 = virtualNode.props.nodeName;\n var type2 = (virtualNode.attr('type') || '').toLowerCase();\n var label3 = virtualNode.attr('value');\n if (label3) {\n this.data({\n messageKey: 'has-label'\n });\n }\n if (nodeName2 === 'input' && [ 'submit', 'reset' ].includes(type2)) {\n return label3 === null;\n }\n return false;\n }\n var non_empty_if_present_evaluate_default = nonEmptyIfPresentEvaluate;\n function isOnScreenEvaluate(node) {\n return _isVisibleOnScreen(node);\n }\n var is_on_screen_evaluate_default = isOnScreenEvaluate;\n function inlineStyleProperty(node, options) {\n var cssProperty = options.cssProperty, absoluteValues = options.absoluteValues, minValue = options.minValue, maxValue = options.maxValue, _options$normalValue = options.normalValue, normalValue = _options$normalValue === void 0 ? 0 : _options$normalValue, noImportant = options.noImportant, multiLineOnly = options.multiLineOnly;\n if (!noImportant && node.style.getPropertyPriority(cssProperty) !== 'important' || multiLineOnly && !_isMultiline(node)) {\n return true;\n }\n var data = {};\n if (typeof minValue === 'number') {\n data.minValue = minValue;\n }\n if (typeof maxValue === 'number') {\n data.maxValue = maxValue;\n }\n var declaredPropValue = node.style.getPropertyValue(cssProperty);\n if ([ 'inherit', 'unset', 'revert', 'revert-layer' ].includes(declaredPropValue)) {\n this.data(_extends({\n value: declaredPropValue\n }, data));\n return true;\n }\n var value = getNumberValue(node, {\n absoluteValues: absoluteValues,\n cssProperty: cssProperty,\n normalValue: normalValue\n });\n this.data(_extends({\n value: value\n }, data));\n if (typeof value !== 'number') {\n return void 0;\n }\n if ((typeof minValue !== 'number' || value >= minValue) && (typeof maxValue !== 'number' || value <= maxValue)) {\n return true;\n }\n return false;\n }\n function getNumberValue(domNode, _ref94) {\n var cssProperty = _ref94.cssProperty, absoluteValues = _ref94.absoluteValues, normalValue = _ref94.normalValue;\n var computedStyle = window.getComputedStyle(domNode);\n var cssPropValue = computedStyle.getPropertyValue(cssProperty);\n if (cssPropValue === 'normal') {\n return normalValue;\n }\n var parsedValue = parseFloat(cssPropValue);\n if (absoluteValues) {\n return parsedValue;\n }\n var fontSize = parseFloat(computedStyle.getPropertyValue('font-size'));\n var value = Math.round(parsedValue / fontSize * 100) / 100;\n if (isNaN(value)) {\n return cssPropValue;\n }\n return value;\n }\n function hasAltEvaluate(node, options, virtualNode) {\n var nodeName2 = virtualNode.props.nodeName;\n if (![ 'img', 'input', 'area' ].includes(nodeName2)) {\n return false;\n }\n return virtualNode.hasAttr('alt');\n }\n var has_alt_evaluate_default = hasAltEvaluate;\n function existsEvaluate() {\n return void 0;\n }\n var exists_evaluate_default = existsEvaluate;\n function docHasTitleEvaluate() {\n var title = document.title;\n return !!sanitize_default(title);\n }\n var doc_has_title_evaluate_default = docHasTitleEvaluate;\n function avoidInlineSpacingEvaluate(node, options) {\n var overriddenProperties = options.cssProperties.filter(function(property) {\n if (node.style.getPropertyPriority(property) === 'important') {\n return property;\n }\n });\n if (overriddenProperties.length > 0) {\n this.data(overriddenProperties);\n return false;\n }\n return true;\n }\n var avoid_inline_spacing_evaluate_default = avoidInlineSpacingEvaluate;\n function ariaLabelledbyEvaluate(node, options, virtualNode) {\n try {\n return !!sanitize_default(arialabelledby_text_default(virtualNode));\n } catch (_unused8) {\n return void 0;\n }\n }\n var aria_labelledby_evaluate_default = ariaLabelledbyEvaluate;\n function ariaLabelEvaluate(node, options, virtualNode) {\n return !!sanitize_default(_arialabelText(virtualNode));\n }\n var aria_label_evaluate_default = ariaLabelEvaluate;\n function duplicateIdEvaluate(node) {\n var id = node.getAttribute('id').trim();\n if (!id) {\n return true;\n }\n var root = get_root_node_default2(node);\n var matchingNodes = Array.from(root.querySelectorAll('[id=\"'.concat(escape_selector_default(id), '\"]'))).filter(function(foundNode) {\n return foundNode !== node;\n });\n if (matchingNodes.length) {\n this.relatedNodes(matchingNodes);\n }\n this.data(id);\n return matchingNodes.length === 0;\n }\n var duplicate_id_evaluate_default = duplicateIdEvaluate;\n function duplicateIdAfter(results) {\n var uniqueIds = [];\n return results.filter(function(r) {\n if (uniqueIds.indexOf(r.data) === -1) {\n uniqueIds.push(r.data);\n return true;\n }\n return false;\n });\n }\n var duplicate_id_after_default = duplicateIdAfter;\n function uniqueFrameTitleEvaluate(node, options, vNode) {\n var title = sanitize_default(vNode.attr('title')).toLowerCase();\n this.data(title);\n return true;\n }\n var unique_frame_title_evaluate_default = uniqueFrameTitleEvaluate;\n function uniqueFrameTitleAfter(results) {\n var titles = {};\n results.forEach(function(r) {\n titles[r.data] = titles[r.data] !== void 0 ? ++titles[r.data] : 0;\n });\n results.forEach(function(r) {\n r.result = !!titles[r.data];\n });\n return results;\n }\n var unique_frame_title_after_default = uniqueFrameTitleAfter;\n function skipLinkEvaluate(node) {\n var target = get_element_by_reference_default(node, 'href');\n if (target) {\n return _isVisibleToScreenReaders(target) || void 0;\n }\n return false;\n }\n var skip_link_evaluate_default = skipLinkEvaluate;\n var implicitAriaLiveRoles = [ 'alert', 'log', 'status' ];\n function regionEvaluate(node, options, virtualNode) {\n this.data({\n isIframe: [ 'iframe', 'frame' ].includes(virtualNode.props.nodeName)\n });\n var regionlessNodes = cache_default.get('regionlessNodes', function() {\n return getRegionlessNodes(options);\n });\n return !regionlessNodes.includes(virtualNode);\n }\n function getRegionlessNodes(options) {\n var regionlessNodes = findRegionlessElms(axe._tree[0], options).map(function(vNode) {\n while (vNode.parent && !vNode.parent._hasRegionDescendant && vNode.parent.actualNode !== document.body) {\n vNode = vNode.parent;\n }\n return vNode;\n }).filter(function(vNode, index, array) {\n return array.indexOf(vNode) === index;\n });\n return regionlessNodes;\n }\n function findRegionlessElms(virtualNode, options) {\n var node = virtualNode.actualNode;\n if (get_role_default(virtualNode) === 'button' || isRegion(virtualNode, options) || [ 'iframe', 'frame' ].includes(virtualNode.props.nodeName) || _isSkipLink(virtualNode.actualNode) && get_element_by_reference_default(virtualNode.actualNode, 'href') || !_isVisibleToScreenReaders(node)) {\n var vNode = virtualNode;\n while (vNode) {\n vNode._hasRegionDescendant = true;\n vNode = vNode.parent;\n }\n if ([ 'iframe', 'frame' ].includes(virtualNode.props.nodeName)) {\n return [ virtualNode ];\n }\n return [];\n } else if (node !== document.body && has_content_default(node, true) && !isShallowlyHidden(virtualNode)) {\n return [ virtualNode ];\n } else {\n return virtualNode.children.filter(function(_ref95) {\n var actualNode = _ref95.actualNode;\n return actualNode.nodeType === 1;\n }).map(function(vNode) {\n return findRegionlessElms(vNode, options);\n }).reduce(function(a2, b2) {\n return a2.concat(b2);\n }, []);\n }\n }\n function isShallowlyHidden(virtualNode) {\n return [ 'none', 'presentation' ].includes(get_role_default(virtualNode)) && !hasChildTextNodes(virtualNode);\n }\n function isRegion(virtualNode, options) {\n var node = virtualNode.actualNode;\n var role = get_role_default(virtualNode);\n var ariaLive = (node.getAttribute('aria-live') || '').toLowerCase().trim();\n var landmarkRoles2 = get_aria_roles_by_type_default('landmark');\n if ([ 'assertive', 'polite' ].includes(ariaLive) || implicitAriaLiveRoles.includes(role)) {\n return true;\n }\n if (landmarkRoles2.includes(role)) {\n return true;\n }\n if (options.regionMatcher && matches_default2(virtualNode, options.regionMatcher)) {\n return true;\n }\n return false;\n }\n function regionAfter(results) {\n var iframeResults = results.filter(function(r) {\n return r.data.isIframe;\n });\n results.forEach(function(r) {\n if (r.result || r.node.ancestry.length === 1) {\n return;\n }\n var frameAncestry = r.node.ancestry.slice(0, -1);\n var _iterator17 = _createForOfIteratorHelper(iframeResults), _step17;\n try {\n for (_iterator17.s(); !(_step17 = _iterator17.n()).done; ) {\n var iframeResult = _step17.value;\n if (_matchAncestry(frameAncestry, iframeResult.node.ancestry)) {\n r.result = iframeResult.result;\n break;\n }\n }\n } catch (err) {\n _iterator17.e(err);\n } finally {\n _iterator17.f();\n }\n });\n iframeResults.forEach(function(r) {\n if (!r.result) {\n r.result = true;\n }\n });\n return results;\n }\n var region_after_default = regionAfter;\n function normalizeFontWeight(weight) {\n switch (weight) {\n case 'lighter':\n return 100;\n\n case 'normal':\n return 400;\n\n case 'bold':\n return 700;\n\n case 'bolder':\n return 900;\n }\n weight = parseInt(weight);\n return !isNaN(weight) ? weight : 400;\n }\n function getTextContainer(elm) {\n var nextNode = elm;\n var outerText = elm.textContent.trim();\n var innerText = outerText;\n while (innerText === outerText && nextNode !== void 0) {\n var _i21 = -1;\n elm = nextNode;\n if (elm.children.length === 0) {\n return elm;\n }\n do {\n _i21++;\n innerText = elm.children[_i21].textContent.trim();\n } while (innerText === '' && _i21 + 1 < elm.children.length);\n nextNode = elm.children[_i21];\n }\n return elm;\n }\n function getStyleValues(node) {\n var style = window.getComputedStyle(getTextContainer(node));\n return {\n fontWeight: normalizeFontWeight(style.getPropertyValue('font-weight')),\n fontSize: parseInt(style.getPropertyValue('font-size')),\n isItalic: style.getPropertyValue('font-style') === 'italic'\n };\n }\n function isHeaderStyle(styleA, styleB, margins) {\n return margins.reduce(function(out, margin) {\n return out || (!margin.size || styleA.fontSize / margin.size > styleB.fontSize) && (!margin.weight || styleA.fontWeight - margin.weight > styleB.fontWeight) && (!margin.italic || styleA.isItalic && !styleB.isItalic);\n }, false);\n }\n function pAsHeadingEvaluate(node, options, virtualNode) {\n var siblings = Array.from(node.parentNode.children);\n var currentIndex = siblings.indexOf(node);\n options = options || {};\n var margins = options.margins || [];\n var nextSibling = siblings.slice(currentIndex + 1).find(function(elm) {\n return elm.nodeName.toUpperCase() === 'P';\n });\n var prevSibling = siblings.slice(0, currentIndex).reverse().find(function(elm) {\n return elm.nodeName.toUpperCase() === 'P';\n });\n var currStyle = getStyleValues(node);\n var nextStyle = nextSibling ? getStyleValues(nextSibling) : null;\n var prevStyle = prevSibling ? getStyleValues(prevSibling) : null;\n var optionsPassLength = options.passLength;\n var optionsFailLength = options.failLength;\n var headingLength = node.textContent.trim().length;\n var paragraphLength = nextSibling === null || nextSibling === void 0 ? void 0 : nextSibling.textContent.trim().length;\n if (headingLength > paragraphLength * optionsPassLength) {\n return true;\n }\n if (!nextStyle || !isHeaderStyle(currStyle, nextStyle, margins)) {\n return true;\n }\n var blockquote = find_up_virtual_default(virtualNode, 'blockquote');\n if (blockquote && blockquote.nodeName.toUpperCase() === 'BLOCKQUOTE') {\n return void 0;\n }\n if (prevStyle && !isHeaderStyle(currStyle, prevStyle, margins)) {\n return void 0;\n }\n if (headingLength > paragraphLength * optionsFailLength) {\n return void 0;\n }\n return false;\n }\n var p_as_heading_evaluate_default = pAsHeadingEvaluate;\n var separatorRegex = /[;,\\s]/;\n var validRedirectNumRegex = /^[0-9.]+$/;\n function metaRefreshEvaluate(node, options, virtualNode) {\n var _ref96 = options || {}, minDelay = _ref96.minDelay, maxDelay = _ref96.maxDelay;\n var content = (virtualNode.attr('content') || '').trim();\n var _content$split = content.split(separatorRegex), _content$split2 = _slicedToArray(_content$split, 1), redirectStr = _content$split2[0];\n if (!redirectStr.match(validRedirectNumRegex)) {\n return true;\n }\n var redirectDelay = parseFloat(redirectStr);\n this.data({\n redirectDelay: redirectDelay\n });\n if (typeof minDelay === 'number' && redirectDelay <= options.minDelay) {\n return true;\n }\n if (typeof maxDelay === 'number' && redirectDelay > options.maxDelay) {\n return true;\n }\n return false;\n }\n function internalLinkPresentEvaluate(node, options, virtualNode) {\n var links = query_selector_all_default(virtualNode, 'a[href]');\n return links.some(function(vLink) {\n return /^#[^/!]/.test(vLink.attr('href'));\n });\n }\n var internal_link_present_evaluate_default = internalLinkPresentEvaluate;\n var commons_exports = {};\n __export(commons_exports, {\n aria: function aria() {\n return aria_exports;\n },\n color: function color() {\n return color_exports;\n },\n dom: function dom() {\n return dom_exports;\n },\n forms: function forms() {\n return forms_exports;\n },\n matches: function matches() {\n return matches_default2;\n },\n math: function math() {\n return math_exports;\n },\n standards: function standards() {\n return standards_exports;\n },\n table: function table() {\n return table_exports;\n },\n text: function text() {\n return text_exports;\n },\n utils: function utils() {\n return utils_exports;\n }\n });\n var color_exports = {};\n __export(color_exports, {\n Color: function Color() {\n return color_default;\n },\n centerPointOfRect: function centerPointOfRect() {\n return center_point_of_rect_default;\n },\n elementHasImage: function elementHasImage() {\n return element_has_image_default;\n },\n elementIsDistinct: function elementIsDistinct() {\n return element_is_distinct_default;\n },\n filteredRectStack: function filteredRectStack() {\n return filtered_rect_stack_default;\n },\n flattenColors: function flattenColors() {\n return _flattenColors;\n },\n flattenShadowColors: function flattenShadowColors() {\n return _flattenShadowColors;\n },\n getBackgroundColor: function getBackgroundColor() {\n return _getBackgroundColor2;\n },\n getBackgroundStack: function getBackgroundStack() {\n return _getBackgroundStack;\n },\n getContrast: function getContrast() {\n return get_contrast_default;\n },\n getForegroundColor: function getForegroundColor() {\n return _getForegroundColor;\n },\n getOwnBackgroundColor: function getOwnBackgroundColor() {\n return get_own_background_color_default;\n },\n getRectStack: function getRectStack() {\n return get_rect_stack_default;\n },\n getStackingContext: function getStackingContext() {\n return _getStackingContext;\n },\n getStrokeColorsFromShadows: function getStrokeColorsFromShadows() {\n return _getStrokeColorsFromShadows;\n },\n getTextShadowColors: function getTextShadowColors() {\n return _getTextShadowColors;\n },\n hasValidContrastRatio: function hasValidContrastRatio() {\n return has_valid_contrast_ratio_default;\n },\n incompleteData: function incompleteData() {\n return incomplete_data_default;\n },\n parseTextShadows: function parseTextShadows() {\n return _parseTextShadows;\n },\n stackingContextToColor: function stackingContextToColor() {\n return _stackingContextToColor;\n }\n });\n function centerPointOfRect(rect) {\n if (rect.left > window.innerWidth) {\n return void 0;\n }\n if (rect.top > window.innerHeight) {\n return void 0;\n }\n var x = Math.min(Math.ceil(rect.left + rect.width / 2), window.innerWidth - 1);\n var y = Math.min(Math.ceil(rect.top + rect.height / 2), window.innerHeight - 1);\n return {\n x: x,\n y: y\n };\n }\n var center_point_of_rect_default = centerPointOfRect;\n function _getFonts(style) {\n return style.getPropertyValue('font-family').split(/[,;]/g).map(function(font) {\n return font.trim().toLowerCase();\n });\n }\n function elementIsDistinct(node, ancestorNode) {\n var nodeStyle = window.getComputedStyle(node);\n if (nodeStyle.getPropertyValue('background-image') !== 'none') {\n return true;\n }\n var hasBorder = [ 'border-bottom', 'border-top', 'outline' ].reduce(function(result, edge) {\n var borderClr = new color_default();\n borderClr.parseString(nodeStyle.getPropertyValue(edge + '-color'));\n return result || nodeStyle.getPropertyValue(edge + '-style') !== 'none' && parseFloat(nodeStyle.getPropertyValue(edge + '-width')) > 0 && borderClr.alpha !== 0;\n }, false);\n if (hasBorder) {\n return true;\n }\n var parentStyle = window.getComputedStyle(ancestorNode);\n if (_getFonts(nodeStyle)[0] !== _getFonts(parentStyle)[0]) {\n return true;\n }\n var hasStyle = [ 'text-decoration-line', 'text-decoration-style', 'font-weight', 'font-style', 'font-size' ].reduce(function(result, cssProp) {\n return result || nodeStyle.getPropertyValue(cssProp) !== parentStyle.getPropertyValue(cssProp);\n }, false);\n var tDec = nodeStyle.getPropertyValue('text-decoration');\n if (tDec.split(' ').length < 3) {\n hasStyle = hasStyle || tDec !== parentStyle.getPropertyValue('text-decoration');\n }\n return hasStyle;\n }\n var element_is_distinct_default = elementIsDistinct;\n function getRectStack2(elm) {\n var boundingStack = get_element_stack_default(elm);\n var filteredArr = get_text_element_stack_default(elm);\n if (!filteredArr || filteredArr.length <= 1) {\n return [ boundingStack ];\n }\n if (filteredArr.some(function(stack) {\n return stack === void 0;\n })) {\n return null;\n }\n filteredArr.splice(0, 0, boundingStack);\n return filteredArr;\n }\n var get_rect_stack_default = getRectStack2;\n function filteredRectStack(elm) {\n var rectStack = get_rect_stack_default(elm);\n if (rectStack && rectStack.length === 1) {\n return rectStack[0];\n }\n if (rectStack && rectStack.length > 1) {\n var boundingStack = rectStack.shift();\n var isSame;\n rectStack.forEach(function(rectList, index) {\n if (index === 0) {\n return;\n }\n var rectA = rectStack[index - 1], rectB = rectStack[index];\n isSame = rectA.every(function(element, elementIndex) {\n return element === rectB[elementIndex];\n }) || boundingStack.includes(elm);\n });\n if (!isSame) {\n incomplete_data_default.set('bgColor', 'elmPartiallyObscuring');\n return null;\n }\n return rectStack[0];\n }\n incomplete_data_default.set('bgColor', 'outsideViewport');\n return null;\n }\n var filtered_rect_stack_default = filteredRectStack;\n var nonSeparableBlendModes = [ 'hue', 'saturation', 'color', 'luminosity' ];\n var blendFunctions = {\n normal: function normal(Cb, Cs) {\n return Cs;\n },\n multiply: function multiply(Cb, Cs) {\n return Cs * Cb;\n },\n screen: function screen(Cb, Cs) {\n return Cb + Cs - Cb * Cs;\n },\n overlay: function overlay(Cb, Cs) {\n return this['hard-light'](Cs, Cb);\n },\n darken: function darken(Cb, Cs) {\n return Math.min(Cb, Cs);\n },\n lighten: function lighten(Cb, Cs) {\n return Math.max(Cb, Cs);\n },\n 'color-dodge': function colorDodge(Cb, Cs) {\n return Cb === 0 ? 0 : Cs === 1 ? 1 : Math.min(1, Cb / (1 - Cs));\n },\n 'color-burn': function colorBurn(Cb, Cs) {\n return Cb === 1 ? 1 : Cs === 0 ? 0 : 1 - Math.min(1, (1 - Cb) / Cs);\n },\n 'hard-light': function hardLight(Cb, Cs) {\n return Cs <= .5 ? this.multiply(Cb, 2 * Cs) : this.screen(Cb, 2 * Cs - 1);\n },\n 'soft-light': function softLight(Cb, Cs) {\n if (Cs <= .5) {\n return Cb - (1 - 2 * Cs) * Cb * (1 - Cb);\n } else {\n var D = Cb <= .25 ? ((16 * Cb - 12) * Cb + 4) * Cb : Math.sqrt(Cb);\n return Cb + (2 * Cs - 1) * (D - Cb);\n }\n },\n difference: function difference(Cb, Cs) {\n return Math.abs(Cb - Cs);\n },\n exclusion: function exclusion(Cb, Cs) {\n return Cb + Cs - 2 * Cb * Cs;\n },\n hue: function hue(Cb, Cs) {\n return Cs.setSaturation(Cb.getSaturation()).setLuminosity(Cb.getLuminosity());\n },\n saturation: function saturation(Cb, Cs) {\n return Cb.setSaturation(Cs.getSaturation()).setLuminosity(Cb.getLuminosity());\n },\n color: function color(Cb, Cs) {\n return Cs.setLuminosity(Cb.getLuminosity());\n },\n luminosity: function luminosity(Cb, Cs) {\n return Cb.setLuminosity(Cs.getLuminosity());\n }\n };\n function _flattenColors(sourceColor, backdrop) {\n var blendMode = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'normal';\n var blendingResult = blend(backdrop, sourceColor, blendMode);\n var r = simpleAlphaCompositing(sourceColor.red, sourceColor.alpha, backdrop.red, backdrop.alpha, blendingResult.r * 255);\n var g2 = simpleAlphaCompositing(sourceColor.green, sourceColor.alpha, backdrop.green, backdrop.alpha, blendingResult.g * 255);\n var b2 = simpleAlphaCompositing(sourceColor.blue, sourceColor.alpha, backdrop.blue, backdrop.alpha, blendingResult.b * 255);\n var \\u03b1o = clamp2(sourceColor.alpha + backdrop.alpha * (1 - sourceColor.alpha), 0, 1);\n if (\\u03b1o === 0) {\n return new color_default(r, g2, b2, \\u03b1o);\n }\n var Cr = Math.round(r / \\u03b1o);\n var Cg = Math.round(g2 / \\u03b1o);\n var Cb = Math.round(b2 / \\u03b1o);\n return new color_default(Cr, Cg, Cb, \\u03b1o);\n }\n function simpleAlphaCompositing(Cs, \\u03b1s, Cb, \\u03b1b, blendingResult) {\n return \\u03b1s * (1 - \\u03b1b) * Cs + \\u03b1s * \\u03b1b * blendingResult + (1 - \\u03b1s) * \\u03b1b * Cb;\n }\n function clamp2(value, min, max2) {\n return Math.min(Math.max(min, value), max2);\n }\n function blend(Cb, Cs, blendMode) {\n if (nonSeparableBlendModes.includes(blendMode)) {\n return blendFunctions[blendMode](Cb, Cs);\n }\n var C = new color_default();\n [ 'r', 'g', 'b' ].forEach(function(channel) {\n C[channel] = blendFunctions[blendMode](Cb[channel], Cs[channel]);\n });\n return C;\n }\n function _flattenShadowColors(fgColor, bgColor) {\n var alpha = fgColor.alpha;\n var r = (1 - alpha) * bgColor.red + alpha * fgColor.red;\n var g2 = (1 - alpha) * bgColor.green + alpha * fgColor.green;\n var b2 = (1 - alpha) * bgColor.blue + alpha * fgColor.blue;\n var a2 = fgColor.alpha + bgColor.alpha * (1 - fgColor.alpha);\n return new color_default(r, g2, b2, a2);\n }\n function _getBackgroundStack(node) {\n var stacks = get_text_element_stack_default(node).map(function(stack) {\n stack = reduce_to_elements_below_floating_default(stack, node);\n stack = sortPageBackground(stack);\n return stack;\n });\n for (var index = 0; index < stacks.length; index++) {\n var stack = stacks[index];\n if (stack[0] !== node) {\n incomplete_data_default.set('bgColor', 'bgOverlap');\n return null;\n }\n if (index !== 0 && !shallowArraysEqual(stack, stacks[0])) {\n incomplete_data_default.set('bgColor', 'elmPartiallyObscuring');\n return null;\n }\n }\n return stacks[0] || null;\n }\n function sortPageBackground(elmStack) {\n var bodyIndex = elmStack.indexOf(document.body);\n var bgNodes = elmStack;\n var htmlBgColor = get_own_background_color_default(window.getComputedStyle(document.documentElement));\n if (bodyIndex > 1 && htmlBgColor.alpha === 0 && !element_has_image_default(document.documentElement)) {\n if (bodyIndex > 1) {\n bgNodes.splice(bodyIndex, 1);\n bgNodes.push(document.body);\n }\n var htmlIndex = bgNodes.indexOf(document.documentElement);\n if (htmlIndex > 0) {\n bgNodes.splice(htmlIndex, 1);\n bgNodes.push(document.documentElement);\n }\n }\n return bgNodes;\n }\n function shallowArraysEqual(a2, b2) {\n if (a2 === b2) {\n return true;\n }\n if (a2 === null || b2 === null) {\n return false;\n }\n if (a2.length !== b2.length) {\n return false;\n }\n for (var _i22 = 0; _i22 < a2.length; ++_i22) {\n if (a2[_i22] !== b2[_i22]) {\n return false;\n }\n }\n return true;\n }\n var SHADOW_STROKE_ALPHA = .54;\n var VISIBLE_SHADOW_MIN_PX = .5;\n var OPAQUE_STROKE_OFFSET_MIN_PX = 1.5;\n var edges = [ 'top', 'right', 'bottom', 'left' ];\n function _getStrokeColorsFromShadows(parsedShadows) {\n var _ref97 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, _ref97$ignoreEdgeCoun = _ref97.ignoreEdgeCount, ignoreEdgeCount = _ref97$ignoreEdgeCoun === void 0 ? false : _ref97$ignoreEdgeCoun;\n var shadowMap = getShadowColorsMap(parsedShadows);\n var shadowsByColor = Object.entries(shadowMap).map(function(_ref98) {\n var _ref99 = _slicedToArray(_ref98, 2), colorStr = _ref99[0], sides = _ref99[1];\n var edgeCount = edges.filter(function(side) {\n return sides[side].length !== 0;\n }).length;\n return {\n colorStr: colorStr,\n sides: sides,\n edgeCount: edgeCount\n };\n });\n if (!ignoreEdgeCount && shadowsByColor.some(function(_ref100) {\n var edgeCount = _ref100.edgeCount;\n return edgeCount > 1 && edgeCount < 4;\n })) {\n return null;\n }\n return shadowsByColor.map(shadowGroupToColor).filter(function(shadow) {\n return shadow !== null;\n });\n }\n function getShadowColorsMap(parsedShadows) {\n var colorMap = {};\n var _iterator18 = _createForOfIteratorHelper(parsedShadows), _step18;\n try {\n for (_iterator18.s(); !(_step18 = _iterator18.n()).done; ) {\n var _colorMap$colorStr;\n var _step18$value = _step18.value, colorStr = _step18$value.colorStr, pixels = _step18$value.pixels;\n (_colorMap$colorStr = colorMap[colorStr]) !== null && _colorMap$colorStr !== void 0 ? _colorMap$colorStr : colorMap[colorStr] = {\n top: [],\n right: [],\n bottom: [],\n left: []\n };\n var borders = colorMap[colorStr];\n var _pixels = _slicedToArray(pixels, 2), offsetX = _pixels[0], offsetY = _pixels[1];\n if (offsetX > VISIBLE_SHADOW_MIN_PX) {\n borders.right.push(offsetX);\n } else if (-offsetX > VISIBLE_SHADOW_MIN_PX) {\n borders.left.push(-offsetX);\n }\n if (offsetY > VISIBLE_SHADOW_MIN_PX) {\n borders.bottom.push(offsetY);\n } else if (-offsetY > VISIBLE_SHADOW_MIN_PX) {\n borders.top.push(-offsetY);\n }\n }\n } catch (err) {\n _iterator18.e(err);\n } finally {\n _iterator18.f();\n }\n return colorMap;\n }\n function shadowGroupToColor(_ref101) {\n var colorStr = _ref101.colorStr, sides = _ref101.sides, edgeCount = _ref101.edgeCount;\n if (edgeCount !== 4) {\n return null;\n }\n var strokeColor = new color_default();\n strokeColor.parseString(colorStr);\n var density = 0;\n var isSolid = true;\n edges.forEach(function(edge) {\n density += sides[edge].length / 4;\n isSolid && (isSolid = sides[edge].every(function(offset) {\n return offset > OPAQUE_STROKE_OFFSET_MIN_PX;\n }));\n });\n if (!isSolid) {\n strokeColor.alpha = 1 - Math.pow(SHADOW_STROKE_ALPHA, density);\n }\n return strokeColor;\n }\n function _parseTextShadows(textShadow) {\n var current = {\n pixels: []\n };\n var str = textShadow.trim();\n var shadows = [ current ];\n if (!str) {\n return [];\n }\n while (str) {\n var colorMatch = str.match(/^[a-z]+(\\([^)]+\\))?/i) || str.match(/^#[0-9a-f]+/i);\n var pixelMatch = str.match(/^([0-9.-]+)px/i) || str.match(/^(0)/);\n if (colorMatch) {\n assert_default(!current.colorStr, 'Multiple colors identified in text-shadow: '.concat(textShadow));\n str = str.replace(colorMatch[0], '').trim();\n current.colorStr = colorMatch[0];\n } else if (pixelMatch) {\n assert_default(current.pixels.length < 3, 'Too many pixel units in text-shadow: '.concat(textShadow));\n str = str.replace(pixelMatch[0], '').trim();\n var pixelUnit = parseFloat((pixelMatch[1][0] === '.' ? '0' : '') + pixelMatch[1]);\n current.pixels.push(pixelUnit);\n } else if (str[0] === ',') {\n assert_default(current.pixels.length >= 2, 'Missing pixel value in text-shadow: '.concat(textShadow));\n current = {\n pixels: []\n };\n shadows.push(current);\n str = str.substr(1).trim();\n } else {\n throw new Error('Unable to process text-shadows: '.concat(str));\n }\n }\n shadows.forEach(function(_ref102) {\n var pixels = _ref102.pixels;\n if (pixels.length === 2) {\n pixels.push(0);\n }\n });\n return shadows;\n }\n function _getTextShadowColors(node) {\n var _ref103 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, minRatio = _ref103.minRatio, maxRatio = _ref103.maxRatio, ignoreEdgeCount = _ref103.ignoreEdgeCount;\n var shadowColors = [];\n var style = window.getComputedStyle(node);\n var textShadow = style.getPropertyValue('text-shadow');\n if (textShadow === 'none') {\n return shadowColors;\n }\n var fontSizeStr = style.getPropertyValue('font-size');\n var fontSize = parseInt(fontSizeStr);\n assert_default(isNaN(fontSize) === false, 'Unable to determine font-size value '.concat(fontSizeStr));\n var thinShadows = [];\n var shadows = _parseTextShadows(textShadow);\n var _iterator19 = _createForOfIteratorHelper(shadows), _step19;\n try {\n for (_iterator19.s(); !(_step19 = _iterator19.n()).done; ) {\n var shadow = _step19.value;\n var colorStr = shadow.colorStr || style.getPropertyValue('color');\n var _shadow$pixels = _slicedToArray(shadow.pixels, 3), offsetX = _shadow$pixels[0], offsetY = _shadow$pixels[1], _shadow$pixels$ = _shadow$pixels[2], blurRadius = _shadow$pixels$ === void 0 ? 0 : _shadow$pixels$;\n if (maxRatio && blurRadius >= fontSize * maxRatio) {\n continue;\n }\n if (minRatio && blurRadius < fontSize * minRatio) {\n thinShadows.push({\n colorStr: colorStr,\n pixels: shadow.pixels\n });\n continue;\n }\n if (thinShadows.length > 0) {\n var _strokeColors = _getStrokeColorsFromShadows(thinShadows, {\n ignoreEdgeCount: ignoreEdgeCount\n });\n if (_strokeColors === null) {\n return null;\n }\n shadowColors.push.apply(shadowColors, _toConsumableArray(_strokeColors));\n thinShadows.splice(0, thinShadows.length);\n }\n var _color3 = textShadowColor({\n colorStr: colorStr,\n offsetX: offsetX,\n offsetY: offsetY,\n blurRadius: blurRadius,\n fontSize: fontSize\n });\n shadowColors.push(_color3);\n }\n } catch (err) {\n _iterator19.e(err);\n } finally {\n _iterator19.f();\n }\n if (thinShadows.length > 0) {\n var strokeColors = _getStrokeColorsFromShadows(thinShadows, {\n ignoreEdgeCount: ignoreEdgeCount\n });\n if (strokeColors === null) {\n return null;\n }\n shadowColors.push.apply(shadowColors, _toConsumableArray(strokeColors));\n }\n return shadowColors;\n }\n function textShadowColor(_ref104) {\n var colorStr = _ref104.colorStr, offsetX = _ref104.offsetX, offsetY = _ref104.offsetY, blurRadius = _ref104.blurRadius, fontSize = _ref104.fontSize;\n if (offsetX > blurRadius || offsetY > blurRadius) {\n return new color_default(0, 0, 0, 0);\n }\n var shadowColor = new color_default();\n shadowColor.parseString(colorStr);\n shadowColor.alpha *= blurRadiusToAlpha(blurRadius, fontSize);\n return shadowColor;\n }\n function blurRadiusToAlpha(blurRadius, fontSize) {\n if (blurRadius === 0) {\n return 1;\n }\n var relativeBlur = blurRadius / fontSize;\n return .185 / (relativeBlur + .4);\n }\n function _getStackingContext(elm, elmStack) {\n var virtualNode = get_node_from_tree_default(elm);\n if (virtualNode._stackingContext) {\n return virtualNode._stackingContext;\n }\n var stackingContext = [];\n var contextMap = new Map();\n elmStack = elmStack !== null && elmStack !== void 0 ? elmStack : _getBackgroundStack(elm);\n elmStack.forEach(function(bgElm) {\n var _stackingOrder2;\n var bgVNode = get_node_from_tree_default(bgElm);\n var bgColor = getOwnBackgroundColor2(bgVNode);\n var stackingOrder = bgVNode._stackingOrder.filter(function(_ref105) {\n var vNode = _ref105.vNode;\n return !!vNode;\n });\n stackingOrder.forEach(function(_ref106, index) {\n var _stackingOrder;\n var vNode = _ref106.vNode;\n var ancestorVNode2 = (_stackingOrder = stackingOrder[index - 1]) === null || _stackingOrder === void 0 ? void 0 : _stackingOrder.vNode;\n var context2 = addToStackingContext(contextMap, vNode, ancestorVNode2);\n if (index === 0 && !contextMap.get(vNode)) {\n stackingContext.unshift(context2);\n }\n contextMap.set(vNode, context2);\n });\n var ancestorVNode = (_stackingOrder2 = stackingOrder[stackingOrder.length - 1]) === null || _stackingOrder2 === void 0 ? void 0 : _stackingOrder2.vNode;\n var context = addToStackingContext(contextMap, bgVNode, ancestorVNode);\n if (!stackingOrder.length) {\n stackingContext.unshift(context);\n }\n context.bgColor = bgColor;\n });\n virtualNode._stackingContext = stackingContext;\n return stackingContext;\n }\n function _stackingContextToColor(context) {\n var _context$descendants;\n if (!((_context$descendants = context.descendants) !== null && _context$descendants !== void 0 && _context$descendants.length)) {\n var color2 = context.bgColor;\n color2.alpha *= context.opacity;\n return {\n color: color2,\n blendMode: context.blendMode\n };\n }\n var sourceColor = context.descendants.reduce(reduceToColor, createStackingContext2());\n var color = _flattenColors(sourceColor, context.bgColor, context.descendants[0].blendMode);\n color.alpha *= context.opacity;\n return {\n color: color,\n blendMode: context.blendMode\n };\n }\n function reduceToColor(backdropContext, sourceContext) {\n var backdrop;\n if (backdropContext instanceof color_default) {\n backdrop = backdropContext;\n } else {\n backdrop = _stackingContextToColor(backdropContext).color;\n }\n var sourceColor = _stackingContextToColor(sourceContext).color;\n return _flattenColors(sourceColor, backdrop, sourceContext.blendMode);\n }\n function createStackingContext2(vNode, ancestorContext) {\n var _vNode$getComputedSty;\n return {\n vNode: vNode,\n ancestor: ancestorContext,\n opacity: parseFloat((_vNode$getComputedSty = vNode === null || vNode === void 0 ? void 0 : vNode.getComputedStylePropertyValue('opacity')) !== null && _vNode$getComputedSty !== void 0 ? _vNode$getComputedSty : 1),\n bgColor: new color_default(0, 0, 0, 0),\n blendMode: normalizeBlendMode(vNode === null || vNode === void 0 ? void 0 : vNode.getComputedStylePropertyValue('mix-blend-mode')),\n descendants: []\n };\n }\n function normalizeBlendMode(blendmode) {\n return !!blendmode ? blendmode : void 0;\n }\n function addToStackingContext(contextMap, vNode, ancestorVNode) {\n var _contextMap$get;\n var ancestorContext = contextMap.get(ancestorVNode);\n var context = (_contextMap$get = contextMap.get(vNode)) !== null && _contextMap$get !== void 0 ? _contextMap$get : createStackingContext2(vNode, ancestorContext);\n if (ancestorContext && ancestorVNode !== vNode && !ancestorContext.descendants.includes(context)) {\n ancestorContext.descendants.unshift(context);\n }\n return context;\n }\n function getOwnBackgroundColor2(vNode) {\n var bgColor = new color_default();\n bgColor.parseString(vNode.getComputedStylePropertyValue('background-color'));\n return bgColor;\n }\n function _getBackgroundColor2(elm) {\n var bgElms = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n var shadowOutlineEmMax = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : .1;\n var vNode = get_node_from_tree_default(elm);\n var bgColorCache = vNode._cache.getBackgroundColor;\n if (bgColorCache) {\n bgElms.push.apply(bgElms, _toConsumableArray(bgColorCache.bgElms));\n incomplete_data_default.set('bgColor', bgColorCache.incompleteData);\n return bgColorCache.bgColor;\n }\n var bgColor = _getBackgroundColor(elm, bgElms, shadowOutlineEmMax);\n vNode._cache.getBackgroundColor = {\n bgColor: bgColor,\n bgElms: bgElms,\n incompleteData: incomplete_data_default.get('bgColor')\n };\n return bgColor;\n }\n function _getBackgroundColor(elm, bgElms, shadowOutlineEmMax) {\n var _getTextShadowColors2, _bgColors;\n var elmStack = _getBackgroundStack(elm);\n if (!elmStack) {\n return null;\n }\n var textRects = get_visible_child_text_rects_default(elm);\n var bgColors = (_getTextShadowColors2 = _getTextShadowColors(elm, {\n minRatio: shadowOutlineEmMax,\n ignoreEdgeCount: true\n })) !== null && _getTextShadowColors2 !== void 0 ? _getTextShadowColors2 : [];\n if (bgColors.length) {\n bgColors = [ {\n color: bgColors.reduce(_flattenShadowColors)\n } ];\n }\n for (var _i23 = 0; _i23 < elmStack.length; _i23++) {\n var bgElm = elmStack[_i23];\n var bgElmStyle = window.getComputedStyle(bgElm);\n if (element_has_image_default(bgElm, bgElmStyle)) {\n bgElms.push(bgElm);\n return null;\n }\n var bgColor = get_own_background_color_default(bgElmStyle);\n if (bgColor.alpha === 0) {\n continue;\n }\n if (bgElmStyle.getPropertyValue('display') !== 'inline' && !fullyEncompasses(bgElm, textRects)) {\n bgElms.push(bgElm);\n incomplete_data_default.set('bgColor', 'elmPartiallyObscured');\n return null;\n }\n bgElms.push(bgElm);\n if (bgColor.alpha === 1) {\n break;\n }\n }\n var stackingContext = _getStackingContext(elm, elmStack);\n bgColors = stackingContext.map(_stackingContextToColor).concat(bgColors);\n var pageBgs = getPageBackgroundColors(elm, elmStack.includes(document.body));\n (_bgColors = bgColors).unshift.apply(_bgColors, _toConsumableArray(pageBgs));\n if (bgColors.length === 0) {\n return new color_default(255, 255, 255, 1);\n }\n var blendedColor = bgColors.reduce(function(bgColor, fgColor) {\n return _flattenColors(fgColor.color, bgColor.color instanceof color_default ? bgColor.color : bgColor, fgColor.blendMode);\n });\n return _flattenColors(blendedColor.color instanceof color_default ? blendedColor.color : blendedColor, new color_default(255, 255, 255, 1));\n }\n function fullyEncompasses(node, rects) {\n rects = Array.isArray(rects) ? rects : [ rects ];\n var nodeRect = node.getBoundingClientRect();\n var right = nodeRect.right, bottom = nodeRect.bottom;\n var style = window.getComputedStyle(node);\n var overflow = style.getPropertyValue('overflow');\n if ([ 'scroll', 'auto' ].includes(overflow) || node instanceof window.HTMLHtmlElement) {\n right = nodeRect.left + node.scrollWidth;\n bottom = nodeRect.top + node.scrollHeight;\n }\n return rects.every(function(rect) {\n return rect.top >= nodeRect.top && rect.bottom <= bottom && rect.left >= nodeRect.left && rect.right <= right;\n });\n }\n function normalizeBlendMode2(blendmode) {\n return !!blendmode ? blendmode : void 0;\n }\n function getPageBackgroundColors(elm, stackContainsBody) {\n var pageColors = [];\n if (!stackContainsBody) {\n var html = document.documentElement;\n var body = document.body;\n var htmlStyle = window.getComputedStyle(html);\n var bodyStyle = window.getComputedStyle(body);\n var htmlBgColor = get_own_background_color_default(htmlStyle);\n var bodyBgColor = get_own_background_color_default(bodyStyle);\n var bodyBgColorApplies = bodyBgColor.alpha !== 0 && fullyEncompasses(body, elm.getBoundingClientRect());\n if (bodyBgColor.alpha !== 0 && htmlBgColor.alpha === 0 || bodyBgColorApplies && bodyBgColor.alpha !== 1) {\n pageColors.unshift({\n color: bodyBgColor,\n blendMode: normalizeBlendMode2(bodyStyle.getPropertyValue('mix-blend-mode'))\n });\n }\n if (htmlBgColor.alpha !== 0 && (!bodyBgColorApplies || bodyBgColorApplies && bodyBgColor.alpha !== 1)) {\n pageColors.unshift({\n color: htmlBgColor,\n blendMode: normalizeBlendMode2(htmlStyle.getPropertyValue('mix-blend-mode'))\n });\n }\n }\n return pageColors;\n }\n function getContrast(bgColor, fgColor) {\n if (!fgColor || !bgColor) {\n return null;\n }\n if (fgColor.alpha < 1) {\n fgColor = _flattenColors(fgColor, bgColor);\n }\n var bL = bgColor.getRelativeLuminance();\n var fL = fgColor.getRelativeLuminance();\n return (Math.max(fL, bL) + .05) / (Math.min(fL, bL) + .05);\n }\n var get_contrast_default = getContrast;\n function _getForegroundColor(node, _, bgColor) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var nodeStyle = window.getComputedStyle(node);\n var colorStack = [ function() {\n return getStrokeColor(nodeStyle, options);\n }, function() {\n return getTextColor(nodeStyle);\n }, function() {\n return _getTextShadowColors(node, {\n minRatio: 0\n });\n } ];\n var fgColors = [];\n for (var _i24 = 0, _colorStack = colorStack; _i24 < _colorStack.length; _i24++) {\n var colorFn = _colorStack[_i24];\n var _color4 = colorFn();\n if (!_color4) {\n continue;\n }\n fgColors = fgColors.concat(_color4);\n if (_color4.alpha === 1) {\n break;\n }\n }\n var fgColor = fgColors.reduce(function(source, backdrop) {\n return _flattenColors(source, backdrop);\n });\n bgColor !== null && bgColor !== void 0 ? bgColor : bgColor = _getBackgroundColor2(node, []);\n if (bgColor === null) {\n var reason = incomplete_data_default.get('bgColor');\n incomplete_data_default.set('fgColor', reason);\n return null;\n }\n var stackingContexts = _getStackingContext(node);\n var context = findNodeInContexts(stackingContexts, node);\n return _flattenColors(calculateBlendedForegroundColor(fgColor, context, stackingContexts), new color_default(255, 255, 255, 1));\n }\n function getTextColor(nodeStyle) {\n return new color_default().parseString(nodeStyle.getPropertyValue('-webkit-text-fill-color') || nodeStyle.getPropertyValue('color'));\n }\n function getStrokeColor(nodeStyle, _ref107) {\n var _ref107$textStrokeEmM = _ref107.textStrokeEmMin, textStrokeEmMin = _ref107$textStrokeEmM === void 0 ? 0 : _ref107$textStrokeEmM;\n var strokeWidth = parseFloat(nodeStyle.getPropertyValue('-webkit-text-stroke-width'));\n if (strokeWidth === 0) {\n return null;\n }\n var fontSize = nodeStyle.getPropertyValue('font-size');\n var relativeStrokeWidth = strokeWidth / parseFloat(fontSize);\n if (isNaN(relativeStrokeWidth) || relativeStrokeWidth < textStrokeEmMin) {\n return null;\n }\n var strokeColor = nodeStyle.getPropertyValue('-webkit-text-stroke-color');\n return new color_default().parseString(strokeColor);\n }\n function calculateBlendedForegroundColor(fgColor, context, stackingContexts) {\n while (context) {\n var _context$ancestor;\n if (context.opacity === 1 && context.ancestor) {\n context = context.ancestor;\n continue;\n }\n fgColor.alpha *= context.opacity;\n var stack = ((_context$ancestor = context.ancestor) === null || _context$ancestor === void 0 ? void 0 : _context$ancestor.descendants) || stackingContexts;\n if (context.opacity !== 1) {\n stack = stack.slice(0, stack.indexOf(context));\n }\n var bgColors = stack.map(_stackingContextToColor);\n if (!bgColors.length) {\n context = context.ancestor;\n continue;\n }\n var bgColor = bgColors.reduce(function(backdrop, source) {\n return _flattenColors(source.color, backdrop.color instanceof color_default ? backdrop.color : backdrop);\n }, {\n color: new color_default(0, 0, 0, 0),\n blendMode: 'normal'\n });\n fgColor = _flattenColors(fgColor, bgColor);\n context = context.ancestor;\n }\n return fgColor;\n }\n function findNodeInContexts(contexts, node) {\n var _iterator20 = _createForOfIteratorHelper(contexts), _step20;\n try {\n for (_iterator20.s(); !(_step20 = _iterator20.n()).done; ) {\n var _context$vNode;\n var context = _step20.value;\n if (((_context$vNode = context.vNode) === null || _context$vNode === void 0 ? void 0 : _context$vNode.actualNode) === node) {\n return context;\n }\n var found = findNodeInContexts(context.descendants, node);\n if (found) {\n return found;\n }\n }\n } catch (err) {\n _iterator20.e(err);\n } finally {\n _iterator20.f();\n }\n }\n function hasValidContrastRatio(bg, fg, fontSize, isBold) {\n var contrast2 = get_contrast_default(bg, fg);\n var isSmallFont = isBold && Math.ceil(fontSize * 72) / 96 < 14 || !isBold && Math.ceil(fontSize * 72) / 96 < 18;\n var expectedContrastRatio = isSmallFont ? 4.5 : 3;\n return {\n isValid: contrast2 > expectedContrastRatio,\n contrastRatio: contrast2,\n expectedContrastRatio: expectedContrastRatio\n };\n }\n var has_valid_contrast_ratio_default = hasValidContrastRatio;\n var forms_exports = {};\n __export(forms_exports, {\n isAriaCombobox: function isAriaCombobox() {\n return is_aria_combobox_default;\n },\n isAriaListbox: function isAriaListbox() {\n return is_aria_listbox_default;\n },\n isAriaRange: function isAriaRange() {\n return is_aria_range_default;\n },\n isAriaTextbox: function isAriaTextbox() {\n return is_aria_textbox_default;\n },\n isDisabled: function isDisabled() {\n return is_disabled_default;\n },\n isNativeSelect: function isNativeSelect() {\n return is_native_select_default;\n },\n isNativeTextbox: function isNativeTextbox() {\n return is_native_textbox_default;\n }\n });\n var disabledNodeNames = [ 'fieldset', 'button', 'select', 'input', 'textarea' ];\n function isDisabled(virtualNode) {\n var disabledState = virtualNode._isDisabled;\n if (typeof disabledState === 'boolean') {\n return disabledState;\n }\n var nodeName2 = virtualNode.props.nodeName;\n var ariaDisabled = virtualNode.attr('aria-disabled');\n if (disabledNodeNames.includes(nodeName2) && virtualNode.hasAttr('disabled')) {\n disabledState = true;\n } else if (ariaDisabled) {\n disabledState = ariaDisabled.toLowerCase() === 'true';\n } else if (virtualNode.parent) {\n disabledState = isDisabled(virtualNode.parent);\n } else {\n disabledState = false;\n }\n virtualNode._isDisabled = disabledState;\n return disabledState;\n }\n var is_disabled_default = isDisabled;\n function identicalLinksSamePurposeEvaluate(node, options, virtualNode) {\n var accText = text_exports.accessibleTextVirtual(virtualNode);\n var name = text_exports.sanitize(text_exports.removeUnicode(accText, {\n emoji: true,\n nonBmp: true,\n punctuations: true\n })).toLowerCase();\n if (!name) {\n return void 0;\n }\n var afterData = {\n name: name,\n urlProps: dom_exports.urlPropsFromAttribute(node, 'href')\n };\n this.data(afterData);\n this.relatedNodes([ node ]);\n return true;\n }\n var identical_links_same_purpose_evaluate_default = identicalLinksSamePurposeEvaluate;\n function isIdenticalObject(a2, b2) {\n if (!a2 || !b2) {\n return false;\n }\n var aProps = Object.getOwnPropertyNames(a2);\n var bProps = Object.getOwnPropertyNames(b2);\n if (aProps.length !== bProps.length) {\n return false;\n }\n var result = aProps.every(function(propName) {\n var aValue = a2[propName];\n var bValue = b2[propName];\n if (_typeof(aValue) !== _typeof(bValue)) {\n return false;\n }\n if (_typeof(aValue) === 'object' || _typeof(bValue) === 'object') {\n return isIdenticalObject(aValue, bValue);\n }\n return aValue === bValue;\n });\n return result;\n }\n function identicalLinksSamePurposeAfter(results) {\n if (results.length < 2) {\n return results;\n }\n var incompleteResults = results.filter(function(_ref108) {\n var result = _ref108.result;\n return result !== void 0;\n });\n var uniqueResults = [];\n var nameMap = {};\n var _loop8 = function _loop8(index) {\n var _currentResult$relate;\n var currentResult = incompleteResults[index];\n var _currentResult$data = currentResult.data, name = _currentResult$data.name, urlProps = _currentResult$data.urlProps;\n if (nameMap[name]) {\n return 1;\n }\n var sameNameResults = incompleteResults.filter(function(_ref109, resultNum) {\n var data = _ref109.data;\n return data.name === name && resultNum !== index;\n });\n var isSameUrl = sameNameResults.every(function(_ref110) {\n var data = _ref110.data;\n return isIdenticalObject(data.urlProps, urlProps);\n });\n if (sameNameResults.length && !isSameUrl) {\n currentResult.result = void 0;\n }\n currentResult.relatedNodes = [];\n (_currentResult$relate = currentResult.relatedNodes).push.apply(_currentResult$relate, _toConsumableArray(sameNameResults.map(function(node) {\n return node.relatedNodes[0];\n })));\n nameMap[name] = sameNameResults;\n uniqueResults.push(currentResult);\n };\n for (var index = 0; index < incompleteResults.length; index++) {\n if (_loop8(index)) {\n continue;\n }\n }\n return uniqueResults;\n }\n var identical_links_same_purpose_after_default = identicalLinksSamePurposeAfter;\n function getLevel(vNode) {\n var role = get_role_default(vNode);\n var headingRole = role && role.includes('heading');\n var ariaHeadingLevel = vNode.attr('aria-level');\n var ariaLevel = parseInt(ariaHeadingLevel, 10);\n var _ref111 = vNode.props.nodeName.match(/h(\\d)/) || [], _ref112 = _slicedToArray(_ref111, 2), headingLevel = _ref112[1];\n if (!headingRole) {\n return -1;\n }\n if (headingLevel && !ariaHeadingLevel) {\n return parseInt(headingLevel, 10);\n }\n if (isNaN(ariaLevel) || ariaLevel < 1) {\n if (headingLevel) {\n return parseInt(headingLevel, 10);\n }\n return 2;\n }\n if (ariaLevel) {\n return ariaLevel;\n }\n return -1;\n }\n function headingOrderEvaluate() {\n var headingOrder = cache_default.get('headingOrder');\n if (headingOrder) {\n return true;\n }\n var selector = 'h1, h2, h3, h4, h5, h6, [role=heading], iframe, frame';\n var vNodes = query_selector_all_filter_default(axe._tree[0], selector, _isVisibleToScreenReaders);\n headingOrder = vNodes.map(function(vNode) {\n return {\n ancestry: [ _getAncestry(vNode.actualNode) ],\n level: getLevel(vNode)\n };\n });\n this.data({\n headingOrder: headingOrder\n });\n cache_default.set('headingOrder', vNodes);\n return true;\n }\n var heading_order_evaluate_default = headingOrderEvaluate;\n function headingOrderAfter(results) {\n var headingOrder = getHeadingOrder(results);\n results.forEach(function(result) {\n result.result = getHeadingOrderOutcome(result, headingOrder);\n });\n return results;\n }\n function getHeadingOrderOutcome(result, headingOrder) {\n var _headingOrder$index$l, _headingOrder$index, _headingOrder$level, _headingOrder;\n var index = findHeadingOrderIndex(headingOrder, result.node.ancestry);\n var currLevel = (_headingOrder$index$l = (_headingOrder$index = headingOrder[index]) === null || _headingOrder$index === void 0 ? void 0 : _headingOrder$index.level) !== null && _headingOrder$index$l !== void 0 ? _headingOrder$index$l : -1;\n var prevLevel = (_headingOrder$level = (_headingOrder = headingOrder[index - 1]) === null || _headingOrder === void 0 ? void 0 : _headingOrder.level) !== null && _headingOrder$level !== void 0 ? _headingOrder$level : -1;\n if (index === 0) {\n return true;\n }\n if (currLevel === -1) {\n return void 0;\n }\n return currLevel - prevLevel <= 1;\n }\n function getHeadingOrder(results) {\n results = _toConsumableArray(results);\n results.sort(function(_ref113, _ref114) {\n var nodeA = _ref113.node;\n var nodeB = _ref114.node;\n return nodeA.ancestry.length - nodeB.ancestry.length;\n });\n var headingOrder = results.reduce(mergeHeadingOrder, []);\n return headingOrder.filter(function(_ref115) {\n var level = _ref115.level;\n return level !== -1;\n });\n }\n function mergeHeadingOrder(mergedHeadingOrder, result) {\n var _result$data;\n var frameHeadingOrder = (_result$data = result.data) === null || _result$data === void 0 ? void 0 : _result$data.headingOrder;\n var frameAncestry = shortenArray(result.node.ancestry, 1);\n if (!frameHeadingOrder) {\n return mergedHeadingOrder;\n }\n var normalizedHeadingOrder = frameHeadingOrder.map(function(heading) {\n return addFrameToHeadingAncestry(heading, frameAncestry);\n });\n var index = getFrameIndex(mergedHeadingOrder, frameAncestry);\n if (index === -1) {\n mergedHeadingOrder.push.apply(mergedHeadingOrder, _toConsumableArray(normalizedHeadingOrder));\n } else {\n mergedHeadingOrder.splice.apply(mergedHeadingOrder, [ index, 0 ].concat(_toConsumableArray(normalizedHeadingOrder)));\n }\n return mergedHeadingOrder;\n }\n function getFrameIndex(headingOrder, frameAncestry) {\n while (frameAncestry.length) {\n var index = findHeadingOrderIndex(headingOrder, frameAncestry);\n if (index !== -1) {\n return index;\n }\n frameAncestry = shortenArray(frameAncestry, 1);\n }\n return -1;\n }\n function findHeadingOrderIndex(headingOrder, ancestry) {\n return headingOrder.findIndex(function(heading) {\n return _matchAncestry(heading.ancestry, ancestry);\n });\n }\n function addFrameToHeadingAncestry(heading, frameAncestry) {\n var ancestry = frameAncestry.concat(heading.ancestry);\n return _extends({}, heading, {\n ancestry: ancestry\n });\n }\n function shortenArray(arr, spliceLength) {\n return arr.slice(0, arr.length - spliceLength);\n }\n function targetSizeEvaluate(node, options, vNode) {\n var minSize = (options === null || options === void 0 ? void 0 : options.minSize) || 24;\n var nodeRect = vNode.boundingClientRect;\n if (_rectHasMinimumSize(minSize * 10, nodeRect)) {\n this.data({\n messageKey: 'large',\n minSize: minSize\n });\n return true;\n }\n var hasMinimumSize = _rectHasMinimumSize.bind(null, minSize);\n var nearbyElms = _findNearbyElms(vNode);\n var overflowingContent = filterOverflowingContent(vNode, nearbyElms);\n var _filterByElmsOverlap = filterByElmsOverlap(vNode, nearbyElms), fullyObscuringElms = _filterByElmsOverlap.fullyObscuringElms, partialObscuringElms = _filterByElmsOverlap.partialObscuringElms;\n if (overflowingContent.length && (fullyObscuringElms.length || !hasMinimumSize(nodeRect))) {\n this.data({\n minSize: minSize,\n messageKey: 'contentOverflow'\n });\n this.relatedNodes(mapActualNodes(overflowingContent));\n return void 0;\n }\n if (fullyObscuringElms.length) {\n this.relatedNodes(mapActualNodes(fullyObscuringElms));\n this.data({\n messageKey: 'obscured'\n });\n return true;\n }\n var negativeOutcome = _isInTabOrder(vNode) ? false : void 0;\n if (!hasMinimumSize(nodeRect)) {\n this.data(_extends({\n minSize: minSize\n }, toDecimalSize(nodeRect)));\n return negativeOutcome;\n }\n var obscuredWidgets = filterFocusableWidgets(partialObscuringElms);\n if (!obscuredWidgets.length) {\n this.data(_extends({\n minSize: minSize\n }, toDecimalSize(nodeRect)));\n return true;\n }\n var largestInnerRect = getLargestUnobscuredArea(vNode, obscuredWidgets);\n if (!largestInnerRect) {\n this.data({\n minSize: minSize,\n messageKey: 'tooManyRects'\n });\n return void 0;\n }\n if (!hasMinimumSize(largestInnerRect)) {\n if (overflowingContent.length) {\n this.data({\n minSize: minSize,\n messageKey: 'contentOverflow'\n });\n this.relatedNodes(mapActualNodes(overflowingContent));\n return void 0;\n }\n var allTabbable = obscuredWidgets.every(_isInTabOrder);\n var messageKey = 'partiallyObscured'.concat(allTabbable ? '' : 'NonTabbable');\n this.data(_extends({\n messageKey: messageKey,\n minSize: minSize\n }, toDecimalSize(largestInnerRect)));\n this.relatedNodes(mapActualNodes(obscuredWidgets));\n return allTabbable ? negativeOutcome : void 0;\n }\n this.data(_extends({\n minSize: minSize\n }, toDecimalSize(largestInnerRect || nodeRect)));\n this.relatedNodes(mapActualNodes(obscuredWidgets));\n return true;\n }\n function filterOverflowingContent(vNode, nearbyElms) {\n return nearbyElms.filter(function(nearbyElm) {\n return !isEnclosedRect2(nearbyElm, vNode) && isDescendantNotInTabOrder2(vNode, nearbyElm);\n });\n }\n function filterByElmsOverlap(vNode, nearbyElms) {\n var fullyObscuringElms = [];\n var partialObscuringElms = [];\n var _iterator21 = _createForOfIteratorHelper(nearbyElms), _step21;\n try {\n for (_iterator21.s(); !(_step21 = _iterator21.n()).done; ) {\n var vNeighbor = _step21.value;\n if (!isDescendantNotInTabOrder2(vNode, vNeighbor) && _hasVisualOverlap(vNode, vNeighbor) && getCssPointerEvents(vNeighbor) !== 'none') {\n if (isEnclosedRect2(vNode, vNeighbor)) {\n fullyObscuringElms.push(vNeighbor);\n } else {\n partialObscuringElms.push(vNeighbor);\n }\n }\n }\n } catch (err) {\n _iterator21.e(err);\n } finally {\n _iterator21.f();\n }\n return {\n fullyObscuringElms: fullyObscuringElms,\n partialObscuringElms: partialObscuringElms\n };\n }\n function getLargestUnobscuredArea(vNode, obscuredNodes) {\n var nodeRect = vNode.boundingClientRect;\n var obscuringRects = obscuredNodes.map(function(_ref116) {\n var rect = _ref116.boundingClientRect;\n return rect;\n });\n var unobscuredRects;\n try {\n unobscuredRects = _splitRects(nodeRect, obscuringRects);\n } catch (_unused9) {\n return null;\n }\n return getLargestRect2(unobscuredRects);\n }\n function getLargestRect2(rects, minSize) {\n return rects.reduce(function(rectA, rectB) {\n var rectAisMinimum = _rectHasMinimumSize(minSize, rectA);\n var rectBisMinimum = _rectHasMinimumSize(minSize, rectB);\n if (rectAisMinimum !== rectBisMinimum) {\n return rectAisMinimum ? rectA : rectB;\n }\n var areaA = rectA.width * rectA.height;\n var areaB = rectB.width * rectB.height;\n return areaA > areaB ? rectA : rectB;\n });\n }\n function filterFocusableWidgets(vNodes) {\n return vNodes.filter(function(vNode) {\n return get_role_type_default(vNode) === 'widget' && _isFocusable(vNode);\n });\n }\n function isEnclosedRect2(vNodeA, vNodeB) {\n var rectA = vNodeA.boundingClientRect;\n var rectB = vNodeB.boundingClientRect;\n return rectA.top >= rectB.top && rectA.left >= rectB.left && rectA.bottom <= rectB.bottom && rectA.right <= rectB.right;\n }\n function getCssPointerEvents(vNode) {\n return vNode.getComputedStylePropertyValue('pointer-events');\n }\n function toDecimalSize(rect) {\n return {\n width: Math.round(rect.width * 10) / 10,\n height: Math.round(rect.height * 10) / 10\n };\n }\n function isDescendantNotInTabOrder2(vAncestor, vNode) {\n return _contains(vAncestor, vNode) && !_isInTabOrder(vNode);\n }\n function mapActualNodes(vNodes) {\n return vNodes.map(function(_ref117) {\n var actualNode = _ref117.actualNode;\n return actualNode;\n });\n }\n var roundingMargin2 = .05;\n function targetOffsetEvaluate(node, options, vNode) {\n var minOffset = (options === null || options === void 0 ? void 0 : options.minOffset) || 24;\n if (_rectHasMinimumSize(minOffset * 10, vNode.boundingClientRect)) {\n this.data({\n messageKey: 'large',\n minOffset: minOffset\n });\n return true;\n }\n var closeNeighbors = [];\n var closestOffset = minOffset;\n var _iterator22 = _createForOfIteratorHelper(_findNearbyElms(vNode, minOffset)), _step22;\n try {\n for (_iterator22.s(); !(_step22 = _iterator22.n()).done; ) {\n var vNeighbor = _step22.value;\n if (get_role_type_default(vNeighbor) !== 'widget' || !_isFocusable(vNeighbor)) {\n continue;\n }\n var offset = null;\n try {\n offset = _getOffset(vNode, vNeighbor, minOffset / 2);\n } catch (err2) {\n if (err2.message.startsWith('splitRects')) {\n this.data({\n messageKey: 'tooManyRects',\n closestOffset: 0,\n minOffset: minOffset\n });\n return void 0;\n }\n throw err2;\n }\n if (offset === null) {\n continue;\n }\n offset = roundToSingleDecimal(offset) * 2;\n if (offset + roundingMargin2 >= minOffset) {\n continue;\n }\n closestOffset = Math.min(closestOffset, offset);\n closeNeighbors.push(vNeighbor);\n }\n } catch (err) {\n _iterator22.e(err);\n } finally {\n _iterator22.f();\n }\n if (closeNeighbors.length === 0) {\n this.data({\n closestOffset: closestOffset,\n minOffset: minOffset\n });\n return true;\n }\n this.relatedNodes(closeNeighbors.map(function(_ref118) {\n var actualNode = _ref118.actualNode;\n return actualNode;\n }));\n if (!closeNeighbors.some(_isInTabOrder)) {\n this.data({\n messageKey: 'nonTabbableNeighbor',\n closestOffset: closestOffset,\n minOffset: minOffset\n });\n return void 0;\n }\n this.data({\n closestOffset: closestOffset,\n minOffset: minOffset\n });\n return _isInTabOrder(vNode) ? false : void 0;\n }\n function roundToSingleDecimal(num) {\n return Math.round(num * 10) / 10;\n }\n function metaViewportScaleEvaluate(node, options, virtualNode) {\n var _ref119 = options || {}, _ref119$scaleMinimum = _ref119.scaleMinimum, scaleMinimum = _ref119$scaleMinimum === void 0 ? 2 : _ref119$scaleMinimum, _ref119$lowerBound = _ref119.lowerBound, lowerBound = _ref119$lowerBound === void 0 ? false : _ref119$lowerBound;\n var content = virtualNode.attr('content') || '';\n if (!content) {\n return true;\n }\n var result = content.split(/[;,]/).reduce(function(out, item) {\n var contentValue = item.trim();\n if (!contentValue) {\n return out;\n }\n var _contentValue$split = contentValue.split('='), _contentValue$split2 = _slicedToArray(_contentValue$split, 2), key = _contentValue$split2[0], value = _contentValue$split2[1];\n if (!key || !value) {\n return out;\n }\n var curatedKey = key.toLowerCase().trim();\n var curatedValue = value.toLowerCase().trim();\n if (curatedKey === 'maximum-scale' && curatedValue === 'yes') {\n curatedValue = 1;\n }\n if (curatedKey === 'maximum-scale' && parseFloat(curatedValue) < 0) {\n return out;\n }\n out[curatedKey] = curatedValue;\n return out;\n }, {});\n if (lowerBound && result['maximum-scale'] && parseFloat(result['maximum-scale']) < lowerBound) {\n return true;\n }\n if (!lowerBound && result['user-scalable'] === 'no') {\n this.data('user-scalable=no');\n return false;\n }\n var userScalableAsFloat = parseFloat(result['user-scalable']);\n if (!lowerBound && result['user-scalable'] && (userScalableAsFloat || userScalableAsFloat === 0) && userScalableAsFloat > -1 && userScalableAsFloat < 1) {\n this.data('user-scalable');\n return false;\n }\n if (result['maximum-scale'] && parseFloat(result['maximum-scale']) < scaleMinimum) {\n this.data('maximum-scale');\n return false;\n }\n return true;\n }\n var meta_viewport_scale_evaluate_default = metaViewportScaleEvaluate;\n function cssOrientationLockEvaluate(node, options, virtualNode, context) {\n var _ref120 = context || {}, _ref120$cssom = _ref120.cssom, cssom = _ref120$cssom === void 0 ? void 0 : _ref120$cssom;\n var _ref121 = options || {}, _ref121$degreeThresho = _ref121.degreeThreshold, degreeThreshold = _ref121$degreeThresho === void 0 ? 0 : _ref121$degreeThresho;\n if (!cssom || !cssom.length) {\n return void 0;\n }\n var isLocked = false;\n var relatedElements = [];\n var rulesGroupByDocumentFragment = groupCssomByDocument(cssom);\n var _loop9 = function _loop9() {\n var key = _Object$keys3[_i25];\n var _rulesGroupByDocument = rulesGroupByDocumentFragment[key], root = _rulesGroupByDocument.root, rules = _rulesGroupByDocument.rules;\n var orientationRules = rules.filter(isMediaRuleWithOrientation);\n if (!orientationRules.length) {\n return 1;\n }\n orientationRules.forEach(function(_ref122) {\n var cssRules = _ref122.cssRules;\n Array.from(cssRules).forEach(function(cssRule) {\n var locked = getIsOrientationLocked(cssRule);\n if (locked && cssRule.selectorText.toUpperCase() !== 'HTML') {\n var elms = Array.from(root.querySelectorAll(cssRule.selectorText)) || [];\n relatedElements = relatedElements.concat(elms);\n }\n isLocked = isLocked || locked;\n });\n });\n };\n for (var _i25 = 0, _Object$keys3 = Object.keys(rulesGroupByDocumentFragment); _i25 < _Object$keys3.length; _i25++) {\n if (_loop9()) {\n continue;\n }\n }\n if (!isLocked) {\n return true;\n }\n if (relatedElements.length) {\n this.relatedNodes(relatedElements);\n }\n return false;\n function groupCssomByDocument(cssObjectModel) {\n return cssObjectModel.reduce(function(out, _ref123) {\n var sheet = _ref123.sheet, root = _ref123.root, shadowId = _ref123.shadowId;\n var key = shadowId ? shadowId : 'topDocument';\n if (!out[key]) {\n out[key] = {\n root: root,\n rules: []\n };\n }\n if (!sheet || !sheet.cssRules) {\n return out;\n }\n var rules = Array.from(sheet.cssRules);\n out[key].rules = out[key].rules.concat(rules);\n return out;\n }, {});\n }\n function isMediaRuleWithOrientation(_ref124) {\n var type2 = _ref124.type, cssText = _ref124.cssText;\n if (type2 !== 4) {\n return false;\n }\n return /orientation:\\s*landscape/i.test(cssText) || /orientation:\\s*portrait/i.test(cssText);\n }\n function getIsOrientationLocked(_ref125) {\n var selectorText = _ref125.selectorText, style = _ref125.style;\n if (!selectorText || style.length <= 0) {\n return false;\n }\n var transformStyle = style.transform || style.webkitTransform || style.msTransform || false;\n if (!transformStyle && !style.rotate) {\n return false;\n }\n var transformDegrees = getTransformDegrees(transformStyle);\n var rotateDegrees = getRotationInDegrees('rotate', style.rotate);\n var degrees = transformDegrees + rotateDegrees;\n if (!degrees) {\n return false;\n }\n degrees = Math.abs(degrees);\n if (Math.abs(degrees - 180) % 180 <= degreeThreshold) {\n return false;\n }\n return Math.abs(degrees - 90) % 90 <= degreeThreshold;\n }\n function getTransformDegrees(transformStyle) {\n if (!transformStyle) {\n return 0;\n }\n var matches4 = transformStyle.match(/(rotate|rotateZ|rotate3d|matrix|matrix3d)\\(([^)]+)\\)(?!.*(rotate|rotateZ|rotate3d|matrix|matrix3d))/);\n if (!matches4) {\n return 0;\n }\n var _matches2 = _slicedToArray(matches4, 3), transformFn = _matches2[1], transformFnValue = _matches2[2];\n return getRotationInDegrees(transformFn, transformFnValue);\n }\n function getRotationInDegrees(transformFunction, transformFnValue) {\n switch (transformFunction) {\n case 'rotate':\n case 'rotateZ':\n return getAngleInDegrees(transformFnValue);\n\n case 'rotate3d':\n var _transformFnValue$spl = transformFnValue.split(',').map(function(value) {\n return value.trim();\n }), _transformFnValue$spl2 = _slicedToArray(_transformFnValue$spl, 4), z = _transformFnValue$spl2[2], angleWithUnit = _transformFnValue$spl2[3];\n if (parseInt(z) === 0) {\n return;\n }\n return getAngleInDegrees(angleWithUnit);\n\n case 'matrix':\n case 'matrix3d':\n return getAngleInDegreesFromMatrixTransform(transformFnValue);\n\n default:\n return 0;\n }\n }\n function getAngleInDegrees(angleWithUnit) {\n var _ref126 = angleWithUnit.match(/(deg|grad|rad|turn)/) || [], _ref127 = _slicedToArray(_ref126, 1), unit = _ref127[0];\n if (!unit) {\n return 0;\n }\n var angle = parseFloat(angleWithUnit.replace(unit, ''));\n switch (unit) {\n case 'rad':\n return convertRadToDeg(angle);\n\n case 'grad':\n return convertGradToDeg(angle);\n\n case 'turn':\n return convertTurnToDeg(angle);\n\n case 'deg':\n default:\n return parseInt(angle);\n }\n }\n function getAngleInDegreesFromMatrixTransform(transformFnValue) {\n var values2 = transformFnValue.split(',');\n if (values2.length <= 6) {\n var _values = _slicedToArray(values2, 2), a2 = _values[0], b3 = _values[1];\n var radians = Math.atan2(parseFloat(b3), parseFloat(a2));\n return convertRadToDeg(radians);\n }\n var sinB = parseFloat(values2[8]);\n var b2 = Math.asin(sinB);\n var cosB = Math.cos(b2);\n var rotateZRadians = Math.acos(parseFloat(values2[0]) / cosB);\n return convertRadToDeg(rotateZRadians);\n }\n function convertRadToDeg(radians) {\n return Math.round(radians * (180 / Math.PI));\n }\n function convertGradToDeg(grad) {\n grad = grad % 400;\n if (grad < 0) {\n grad += 400;\n }\n return Math.round(grad / 400 * 360);\n }\n function convertTurnToDeg(turn) {\n return Math.round(360 / (1 / turn));\n }\n }\n var css_orientation_lock_evaluate_default = cssOrientationLockEvaluate;\n function noAutoplayAudioEvaluate(node, options) {\n var hasControls = node.hasAttribute('controls');\n if (node.hasAttribute('loop')) {\n return hasControls;\n }\n if (!node.duration) {\n console.warn('axe.utils.preloadMedia did not load metadata');\n return void 0;\n }\n var _options$allowedDurat = options.allowedDuration, allowedDuration = _options$allowedDurat === void 0 ? 3 : _options$allowedDurat;\n var playableDuration = getPlayableDuration(node);\n if (playableDuration <= allowedDuration) {\n return true;\n }\n if (!hasControls) {\n return false;\n }\n return true;\n function getPlayableDuration(elm) {\n if (!elm.currentSrc) {\n return 0;\n }\n var playbackRange = getPlaybackRange(elm.currentSrc);\n if (!playbackRange) {\n return Math.abs(elm.duration - (elm.currentTime || 0));\n }\n if (playbackRange.length === 1) {\n return Math.abs(elm.duration - playbackRange[0]);\n }\n return Math.abs(playbackRange[1] - playbackRange[0]);\n }\n function getPlaybackRange(src) {\n var match = src.match(/#t=(.*)/);\n if (!match) {\n return;\n }\n var _match = _slicedToArray(match, 2), value = _match[1];\n var ranges = value.split(',');\n return ranges.map(function(range2) {\n if (/:/.test(range2)) {\n return convertHourMinSecToSeconds(range2);\n }\n return parseFloat(range2);\n });\n }\n function convertHourMinSecToSeconds(hhMmSs) {\n var parts = hhMmSs.split(':');\n var secs = 0;\n var mins = 1;\n while (parts.length > 0) {\n secs += mins * parseInt(parts.pop(), 10);\n mins *= 60;\n }\n return parseFloat(secs);\n }\n }\n var no_autoplay_audio_evaluate_default = noAutoplayAudioEvaluate;\n function frameTestedEvaluate(node, options) {\n return options.isViolation ? false : void 0;\n }\n var frame_tested_evaluate_default = frameTestedEvaluate;\n var joinStr = ' > ';\n function frameTestedAfter(results) {\n var iframes = {};\n return results.filter(function(result) {\n var frameResult = result.node.ancestry[result.node.ancestry.length - 1] !== 'html';\n if (frameResult) {\n var ancestry2 = result.node.ancestry.flat(Infinity).join(joinStr);\n iframes[ancestry2] = result;\n return true;\n }\n var ancestry = result.node.ancestry.slice(0, result.node.ancestry.length - 1).flat(Infinity).join(joinStr);\n if (iframes[ancestry]) {\n iframes[ancestry].result = true;\n }\n return false;\n });\n }\n var frame_tested_after_default = frameTestedAfter;\n function captionEvaluate(node, options, virtualNode) {\n var tracks = query_selector_all_default(virtualNode, 'track');\n var hasCaptions = tracks.some(function(vNode) {\n return (vNode.attr('kind') || '').toLowerCase() === 'captions';\n });\n return hasCaptions ? false : void 0;\n }\n var caption_evaluate_default = captionEvaluate;\n function structuredDlitemsEvaluate(node, options, virtualNode) {\n var children = virtualNode.children;\n if (!children || !children.length) {\n return false;\n }\n var hasDt = false, hasDd = false, nodeName2;\n for (var _i26 = 0; _i26 < children.length; _i26++) {\n nodeName2 = children[_i26].props.nodeName.toUpperCase();\n if (nodeName2 === 'DT') {\n hasDt = true;\n }\n if (hasDt && nodeName2 === 'DD') {\n return false;\n }\n if (nodeName2 === 'DD') {\n hasDd = true;\n }\n }\n return hasDt || hasDd;\n }\n var structured_dlitems_evaluate_default = structuredDlitemsEvaluate;\n function onlyListitemsEvaluate(node, options, virtualNode) {\n var hasNonEmptyTextNode = false;\n var atLeastOneListitem = false;\n var isEmpty2 = true;\n var badNodes = [];\n var badRoleNodes = [];\n var badRoles = [];\n virtualNode.children.forEach(function(vNode) {\n var actualNode = vNode.actualNode;\n if (actualNode.nodeType === 3 && actualNode.nodeValue.trim() !== '') {\n hasNonEmptyTextNode = true;\n return;\n }\n if (actualNode.nodeType !== 1 || !_isVisibleToScreenReaders(actualNode)) {\n return;\n }\n isEmpty2 = false;\n var isLi = actualNode.nodeName.toUpperCase() === 'LI';\n var role = get_role_default(vNode);\n var isListItemRole = role === 'listitem';\n if (!isLi && !isListItemRole) {\n badNodes.push(actualNode);\n }\n if (isLi && !isListItemRole) {\n badRoleNodes.push(actualNode);\n if (!badRoles.includes(role)) {\n badRoles.push(role);\n }\n }\n if (isListItemRole) {\n atLeastOneListitem = true;\n }\n });\n if (hasNonEmptyTextNode || badNodes.length) {\n this.relatedNodes(badNodes);\n return true;\n }\n if (isEmpty2 || atLeastOneListitem) {\n return false;\n }\n this.relatedNodes(badRoleNodes);\n this.data({\n messageKey: 'roleNotValid',\n roles: badRoles.join(', ')\n });\n return true;\n }\n var only_listitems_evaluate_default = onlyListitemsEvaluate;\n function onlyDlitemsEvaluate(node, options, virtualNode) {\n var ALLOWED_ROLES = [ 'definition', 'term', 'list' ];\n var base = {\n badNodes: [],\n hasNonEmptyTextNode: false\n };\n var content = virtualNode.children.reduce(function(vNodes, child) {\n var actualNode = child.actualNode;\n if (actualNode.nodeName.toUpperCase() === 'DIV' && get_role_default(actualNode) === null) {\n return vNodes.concat(child.children);\n }\n return vNodes.concat(child);\n }, []);\n var result = content.reduce(function(out, childNode) {\n var actualNode = childNode.actualNode;\n var tagName = actualNode.nodeName.toUpperCase();\n if (actualNode.nodeType === 1 && _isVisibleToScreenReaders(actualNode)) {\n var explicitRole2 = get_explicit_role_default(actualNode);\n if (tagName !== 'DT' && tagName !== 'DD' || explicitRole2) {\n if (!ALLOWED_ROLES.includes(explicitRole2)) {\n out.badNodes.push(actualNode);\n }\n }\n } else if (actualNode.nodeType === 3 && actualNode.nodeValue.trim() !== '') {\n out.hasNonEmptyTextNode = true;\n }\n return out;\n }, base);\n if (result.badNodes.length) {\n this.relatedNodes(result.badNodes);\n }\n return !!result.badNodes.length || result.hasNonEmptyTextNode;\n }\n function listitemEvaluate(node, options, virtualNode) {\n var parent = virtualNode.parent;\n if (!parent) {\n return void 0;\n }\n var parentNodeName = parent.props.nodeName;\n var parentRole = get_explicit_role_default(parent);\n if ([ 'presentation', 'none', 'list' ].includes(parentRole)) {\n return true;\n }\n if (parentRole && is_valid_role_default(parentRole)) {\n this.data({\n messageKey: 'roleNotValid'\n });\n return false;\n }\n return [ 'ul', 'ol', 'menu' ].includes(parentNodeName);\n }\n function invalidChildrenEvaluate(node) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var virtualNode = arguments.length > 2 ? arguments[2] : undefined;\n var relatedNodes = [];\n var issues = [];\n if (!virtualNode.children) {\n return void 0;\n }\n var vChildren = mapWithNested(virtualNode.children);\n while (vChildren.length) {\n var _vChild$actualNode;\n var _vChildren$shift = vChildren.shift(), vChild = _vChildren$shift.vChild, nested = _vChildren$shift.nested;\n if (options.divGroups && !nested && isDivGroup(vChild)) {\n if (!vChild.children) {\n return void 0;\n }\n var vGrandChildren = mapWithNested(vChild.children, true);\n vChildren.push.apply(vChildren, _toConsumableArray(vGrandChildren));\n continue;\n }\n var issue = getInvalidSelector(vChild, nested, options);\n if (!issue) {\n continue;\n }\n if (!issues.includes(issue)) {\n issues.push(issue);\n }\n if ((vChild === null || vChild === void 0 || (_vChild$actualNode = vChild.actualNode) === null || _vChild$actualNode === void 0 ? void 0 : _vChild$actualNode.nodeType) === 1) {\n relatedNodes.push(vChild.actualNode);\n }\n }\n if (issues.length === 0) {\n return false;\n }\n this.data({\n values: issues.join(', ')\n });\n this.relatedNodes(relatedNodes);\n return true;\n }\n function getInvalidSelector(vChild, nested, _ref128) {\n var _ref128$validRoles = _ref128.validRoles, validRoles = _ref128$validRoles === void 0 ? [] : _ref128$validRoles, _ref128$validNodeName = _ref128.validNodeNames, validNodeNames = _ref128$validNodeName === void 0 ? [] : _ref128$validNodeName;\n var _vChild$props = vChild.props, nodeName2 = _vChild$props.nodeName, nodeType = _vChild$props.nodeType, nodeValue = _vChild$props.nodeValue;\n var selector = nested ? 'div > ' : '';\n if (nodeType === 3 && nodeValue.trim() !== '') {\n return selector + '#text';\n }\n if (nodeType !== 1 || !_isVisibleToScreenReaders(vChild)) {\n return false;\n }\n var role = get_explicit_role_default(vChild);\n if (role) {\n return validRoles.includes(role) ? false : selector + '[role='.concat(role, ']');\n } else {\n return validNodeNames.includes(nodeName2) ? false : selector + nodeName2;\n }\n }\n function isDivGroup(vNode) {\n return vNode.props.nodeName === 'div' && get_explicit_role_default(vNode) === null;\n }\n function mapWithNested(vNodes) {\n var nested = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n return vNodes.map(function(vChild) {\n return {\n vChild: vChild,\n nested: nested\n };\n });\n }\n function dlitemEvaluate(node) {\n var parent = get_composed_parent_default(node);\n var parentTagName = parent.nodeName.toUpperCase();\n var parentRole = get_explicit_role_default(parent);\n if (parentTagName === 'DIV' && [ 'presentation', 'none', null ].includes(parentRole)) {\n parent = get_composed_parent_default(parent);\n parentTagName = parent.nodeName.toUpperCase();\n parentRole = get_explicit_role_default(parent);\n }\n if (parentTagName !== 'DL') {\n return false;\n }\n if (!parentRole || [ 'presentation', 'none', 'list' ].includes(parentRole)) {\n return true;\n }\n return false;\n }\n var dlitem_evaluate_default = dlitemEvaluate;\n function xmlLangMismatchEvaluate(node, options, vNode) {\n var primaryLangValue = get_base_lang_default(vNode.attr('lang'));\n var primaryXmlLangValue = get_base_lang_default(vNode.attr('xml:lang'));\n return primaryLangValue === primaryXmlLangValue;\n }\n var xml_lang_mismatch_evaluate_default = xmlLangMismatchEvaluate;\n function validLangEvaluate(node, options, virtualNode) {\n var invalid = [];\n options.attributes.forEach(function(langAttr) {\n var langVal = virtualNode.attr(langAttr);\n if (typeof langVal !== 'string') {\n return;\n }\n var baselangVal = get_base_lang_default(langVal);\n var invalidLang = options.value ? !options.value.map(get_base_lang_default).includes(baselangVal) : !valid_langs_default(baselangVal);\n if (baselangVal !== '' && invalidLang || langVal !== '' && !sanitize_default(langVal)) {\n invalid.push(langAttr + '=\"' + virtualNode.attr(langAttr) + '\"');\n }\n });\n if (!invalid.length) {\n return false;\n }\n if (virtualNode.props.nodeName !== 'html' && !_hasLangText(virtualNode)) {\n return false;\n }\n this.data(invalid);\n return true;\n }\n var valid_lang_evaluate_default = validLangEvaluate;\n function hasValue(value) {\n return (value || '').trim() !== '';\n }\n function hasLangEvaluate(node, options, virtualNode) {\n var xhtml = typeof document !== 'undefined' ? is_xhtml_default(document) : false;\n if (options.attributes.includes('xml:lang') && options.attributes.includes('lang') && hasValue(virtualNode.attr('xml:lang')) && !hasValue(virtualNode.attr('lang')) && !xhtml) {\n this.data({\n messageKey: 'noXHTML'\n });\n return false;\n }\n var hasLang = options.attributes.some(function(name) {\n return hasValue(virtualNode.attr(name));\n });\n if (!hasLang) {\n this.data({\n messageKey: 'noLang'\n });\n return false;\n }\n return true;\n }\n var has_lang_evaluate_default = hasLangEvaluate;\n function landmarkIsUniqueEvaluate(node, options, virtualNode) {\n var role = get_role_default(node);\n var accessibleText2 = _accessibleTextVirtual(virtualNode);\n accessibleText2 = accessibleText2 ? accessibleText2.toLowerCase() : null;\n this.data({\n role: role,\n accessibleText: accessibleText2\n });\n this.relatedNodes([ node ]);\n return true;\n }\n var landmark_is_unique_evaluate_default = landmarkIsUniqueEvaluate;\n function landmarkIsUniqueAfter(results) {\n var uniqueLandmarks = [];\n return results.filter(function(currentResult) {\n var findMatch = function findMatch(someResult) {\n return currentResult.data.role === someResult.data.role && currentResult.data.accessibleText === someResult.data.accessibleText;\n };\n var matchedResult = uniqueLandmarks.find(findMatch);\n if (matchedResult) {\n matchedResult.result = false;\n matchedResult.relatedNodes.push(currentResult.relatedNodes[0]);\n return false;\n }\n uniqueLandmarks.push(currentResult);\n currentResult.relatedNodes = [];\n return true;\n });\n }\n var landmark_is_unique_after_default = landmarkIsUniqueAfter;\n function titleOnlyEvaluate(node, options, virtualNode) {\n var labelText2 = label_virtual_default2(virtualNode);\n var title = title_text_default(virtualNode);\n var ariaDescribedBy = virtualNode.attr('aria-describedby');\n return !labelText2 && !!(title || ariaDescribedBy);\n }\n var title_only_evaluate_default = titleOnlyEvaluate;\n function multipleLabelEvaluate(node) {\n var id = escape_selector_default(node.getAttribute('id'));\n var parent = node.parentNode;\n var root = get_root_node_default2(node);\n root = root.documentElement || root;\n var labels = Array.from(root.querySelectorAll('label[for=\"'.concat(id, '\"]')));\n if (labels.length) {\n labels = labels.filter(function(label3) {\n return !_isHiddenForEveryone(label3);\n });\n }\n while (parent) {\n if (parent.nodeName.toUpperCase() === 'LABEL' && labels.indexOf(parent) === -1) {\n labels.push(parent);\n }\n parent = parent.parentNode;\n }\n this.relatedNodes(labels);\n if (labels.length > 1) {\n var ATVisibleLabels = labels.filter(function(label3) {\n return _isVisibleToScreenReaders(label3);\n });\n if (ATVisibleLabels.length > 1) {\n return void 0;\n }\n var labelledby = idrefs_default(node, 'aria-labelledby');\n return !labelledby.includes(ATVisibleLabels[0]) ? void 0 : false;\n }\n return false;\n }\n var multiple_label_evaluate_default = multipleLabelEvaluate;\n function isStringContained(compare, compareWith) {\n var curatedCompareWith = curateString(compareWith);\n var curatedCompare = curateString(compare);\n if (!curatedCompareWith || !curatedCompare) {\n return false;\n }\n return curatedCompareWith.includes(curatedCompare);\n }\n function curateString(str) {\n var noUnicodeStr = remove_unicode_default(str, {\n emoji: true,\n nonBmp: true,\n punctuations: true\n });\n return sanitize_default(noUnicodeStr);\n }\n function labelContentNameMismatchEvaluate(node, options, virtualNode) {\n var _options$occurrenceTh;\n var pixelThreshold = options === null || options === void 0 ? void 0 : options.pixelThreshold;\n var occurrenceThreshold = (_options$occurrenceTh = options === null || options === void 0 ? void 0 : options.occurrenceThreshold) !== null && _options$occurrenceTh !== void 0 ? _options$occurrenceTh : options === null || options === void 0 ? void 0 : options.occuranceThreshold;\n var accText = accessible_text_default(node).toLowerCase();\n var visibleText = sanitize_default(subtree_text_default(virtualNode, {\n subtreeDescendant: true,\n ignoreIconLigature: true,\n pixelThreshold: pixelThreshold,\n occurrenceThreshold: occurrenceThreshold\n })).toLowerCase();\n if (!visibleText) {\n return true;\n }\n if (is_human_interpretable_default(accText) < 1 || is_human_interpretable_default(visibleText) < 1) {\n return void 0;\n }\n return isStringContained(visibleText, accText);\n }\n var label_content_name_mismatch_evaluate_default = labelContentNameMismatchEvaluate;\n function implicitEvaluate(node, options, virtualNode) {\n try {\n var label3 = closest_default(virtualNode, 'label');\n if (label3) {\n var implicitLabel = sanitize_default(_accessibleTextVirtual(label3, {\n inControlContext: true,\n startNode: virtualNode\n }));\n if (label3.actualNode) {\n this.relatedNodes([ label3.actualNode ]);\n }\n this.data({\n implicitLabel: implicitLabel\n });\n return !!implicitLabel;\n }\n return false;\n } catch (_unused0) {\n return void 0;\n }\n }\n var implicit_evaluate_default = implicitEvaluate;\n function hiddenExplicitLabelEvaluate(node, options, virtualNode) {\n if (virtualNode.hasAttr('id')) {\n if (!virtualNode.actualNode) {\n return void 0;\n }\n var root = get_root_node_default2(node);\n var _id6 = escape_selector_default(node.getAttribute('id'));\n var label3 = root.querySelector('label[for=\"'.concat(_id6, '\"]'));\n if (label3 && !_isVisibleToScreenReaders(label3)) {\n var name;\n try {\n name = _accessibleTextVirtual(virtualNode).trim();\n } catch (_unused1) {\n return void 0;\n }\n var isNameEmpty = name === '';\n return isNameEmpty;\n }\n }\n return false;\n }\n var hidden_explicit_label_evaluate_default = hiddenExplicitLabelEvaluate;\n function helpSameAsLabelEvaluate(node, options, virtualNode) {\n var labelText2 = label_virtual_default2(virtualNode);\n var check = node.getAttribute('title');\n if (!labelText2) {\n return false;\n }\n if (!check) {\n check = '';\n if (node.getAttribute('aria-describedby')) {\n var ref = idrefs_default(node, 'aria-describedby');\n check = ref.map(function(thing) {\n return thing ? accessible_text_default(thing) : '';\n }).join('');\n }\n }\n return sanitize_default(check) === sanitize_default(labelText2);\n }\n var help_same_as_label_evaluate_default = helpSameAsLabelEvaluate;\n function explicitEvaluate(node, options, virtualNode) {\n var _this9 = this;\n if (!virtualNode.attr('id')) {\n return false;\n }\n if (!virtualNode.actualNode) {\n return void 0;\n }\n var root = get_root_node_default2(virtualNode.actualNode);\n var id = escape_selector_default(virtualNode.attr('id'));\n var labels = Array.from(root.querySelectorAll('label[for=\"'.concat(id, '\"]')));\n this.relatedNodes(labels);\n if (!labels.length) {\n return false;\n }\n try {\n return labels.some(function(label3) {\n if (!_isVisibleOnScreen(label3)) {\n return true;\n } else {\n var explicitLabel = sanitize_default(accessible_text_default(label3, {\n inControlContext: true,\n startNode: virtualNode\n }));\n _this9.data({\n explicitLabel: explicitLabel\n });\n return !!explicitLabel;\n }\n });\n } catch (_unused10) {\n return void 0;\n }\n }\n var explicit_evaluate_default = explicitEvaluate;\n function duplicateImgLabelEvaluate(node, options, virtualNode) {\n if ([ 'none', 'presentation' ].includes(get_role_default(virtualNode))) {\n return false;\n }\n var parentVNode = closest_default(virtualNode, options.parentSelector);\n if (!parentVNode) {\n return false;\n }\n var visibleText = visible_virtual_default(parentVNode, true).toLowerCase();\n if (visibleText === '') {\n return false;\n }\n return visibleText === _accessibleTextVirtual(virtualNode).toLowerCase();\n }\n var duplicate_img_label_evaluate_default = duplicateImgLabelEvaluate;\n function altSpaceValueEvaluate(node, options, virtualNode) {\n var alt = virtualNode.attr('alt');\n var isOnlySpace = /^\\s+$/;\n return typeof alt === 'string' && isOnlySpace.test(alt);\n }\n var alt_space_value_evaluate_default = altSpaceValueEvaluate;\n function tabindexEvaluate(node, options, virtualNode) {\n var tabIndex = parse_tabindex_default(virtualNode.attr('tabindex'));\n return tabIndex === null || tabIndex <= 0;\n }\n var tabindex_evaluate_default = tabindexEvaluate;\n function noFocusableContentEvaluate(node, options, virtualNode) {\n if (!virtualNode.children) {\n return void 0;\n }\n try {\n var focusableDescendants2 = getFocusableDescendants(virtualNode);\n if (!focusableDescendants2.length) {\n return true;\n }\n var notHiddenElements = focusableDescendants2.filter(usesUnreliableHidingStrategy);\n if (notHiddenElements.length > 0) {\n this.data({\n messageKey: 'notHidden'\n });\n this.relatedNodes(notHiddenElements);\n } else {\n this.relatedNodes(focusableDescendants2);\n }\n return false;\n } catch (_unused11) {\n return void 0;\n }\n }\n function getFocusableDescendants(vNode) {\n if (!vNode.children) {\n if (vNode.props.nodeType === 1) {\n throw new Error('Cannot determine children');\n }\n return [];\n }\n var retVal = [];\n vNode.children.forEach(function(child) {\n if (get_role_type_default(child) === 'widget' && _isFocusable(child)) {\n retVal.push(child);\n } else {\n retVal.push.apply(retVal, _toConsumableArray(getFocusableDescendants(child)));\n }\n });\n return retVal;\n }\n function usesUnreliableHidingStrategy(vNode) {\n var tabIndex = parse_tabindex_default(vNode.attr('tabindex'));\n return tabIndex !== null && tabIndex < 0;\n }\n function landmarkIsTopLevelEvaluate(node) {\n var landmarks = get_aria_roles_by_type_default('landmark');\n var parent = get_composed_parent_default(node);\n var nodeRole = get_role_default(node);\n this.data({\n role: nodeRole\n });\n while (parent) {\n var role = get_explicit_role_default(parent);\n if (!role && parent.nodeName.toUpperCase() !== 'FORM') {\n role = implicit_role_default(parent);\n }\n if (role && landmarks.includes(role) && !(role === 'main' && nodeRole === 'complementary')) {\n return false;\n }\n parent = get_composed_parent_default(parent);\n }\n return true;\n }\n var landmark_is_top_level_evaluate_default = landmarkIsTopLevelEvaluate;\n function frameFocusableContentEvaluate(node, options, virtualNode) {\n if (!virtualNode.children) {\n return void 0;\n }\n try {\n return !virtualNode.children.some(function(child) {\n return focusableDescendants(child);\n });\n } catch (_unused12) {\n return void 0;\n }\n }\n function focusableDescendants(vNode) {\n if (_isInTabOrder(vNode)) {\n return true;\n }\n if (!vNode.children) {\n if (vNode.props.nodeType === 1) {\n throw new Error('Cannot determine children');\n }\n return false;\n }\n return vNode.children.some(function(child) {\n return focusableDescendants(child);\n });\n }\n function focusableNotTabbableEvaluate(node, options, virtualNode) {\n var elementsThatCanBeDisabled = [ 'button', 'fieldset', 'input', 'select', 'textarea' ];\n var tabbableElements = virtualNode.tabbableElements;\n if (!tabbableElements || !tabbableElements.length) {\n return true;\n }\n var relatedNodes = tabbableElements.filter(function(vNode) {\n return !elementsThatCanBeDisabled.includes(vNode.props.nodeName);\n });\n this.relatedNodes(relatedNodes.map(function(vNode) {\n return vNode.actualNode;\n }));\n if (relatedNodes.length === 0 || is_modal_open_default()) {\n return true;\n }\n return relatedNodes.every(function(vNode) {\n var pointerEvents = vNode.getComputedStylePropertyValue('pointer-events');\n var width = parseInt(vNode.getComputedStylePropertyValue('width'));\n var height = parseInt(vNode.getComputedStylePropertyValue('height'));\n return vNode.actualNode.onfocus || (width === 0 || height === 0) && pointerEvents === 'none';\n }) ? void 0 : false;\n }\n var focusable_not_tabbable_evaluate_default = focusableNotTabbableEvaluate;\n function focusableNoNameEvaluate(node, options, virtualNode) {\n if (!_isInTabOrder(virtualNode)) {\n return false;\n }\n try {\n return !_accessibleTextVirtual(virtualNode);\n } catch (_unused13) {\n return void 0;\n }\n }\n var focusable_no_name_evaluate_default = focusableNoNameEvaluate;\n function focusableModalOpenEvaluate(node, options, virtualNode) {\n var tabbableElements = virtualNode.tabbableElements.map(function(_ref129) {\n var actualNode = _ref129.actualNode;\n return actualNode;\n });\n if (!tabbableElements || !tabbableElements.length) {\n return true;\n }\n if (is_modal_open_default()) {\n this.relatedNodes(tabbableElements);\n return void 0;\n }\n return true;\n }\n var focusable_modal_open_evaluate_default = focusableModalOpenEvaluate;\n function focusableElementEvaluate(node, options, virtualNode) {\n if (virtualNode.hasAttr('contenteditable') && isContenteditable(virtualNode)) {\n return true;\n }\n return _isInTabOrder(virtualNode);\n function isContenteditable(vNode) {\n var contenteditable = vNode.attr('contenteditable');\n if (contenteditable === 'true' || contenteditable === '') {\n return true;\n }\n if (contenteditable === 'false') {\n return false;\n }\n var ancestor = closest_default(virtualNode.parent, '[contenteditable]');\n if (!ancestor) {\n return false;\n }\n return isContenteditable(ancestor);\n }\n }\n var focusable_element_evaluate_default = focusableElementEvaluate;\n function focusableDisabledEvaluate(node, options, virtualNode) {\n var elementsThatCanBeDisabled = [ 'button', 'fieldset', 'input', 'select', 'textarea' ];\n var tabbableElements = virtualNode.tabbableElements;\n if (!tabbableElements || !tabbableElements.length) {\n return true;\n }\n var relatedNodes = tabbableElements.filter(function(vNode) {\n return elementsThatCanBeDisabled.includes(vNode.props.nodeName);\n });\n this.relatedNodes(relatedNodes.map(function(vNode) {\n return vNode.actualNode;\n }));\n if (relatedNodes.length === 0 || is_modal_open_default()) {\n return true;\n }\n return relatedNodes.every(function(vNode) {\n var pointerEvents = vNode.getComputedStylePropertyValue('pointer-events');\n var width = parseInt(vNode.getComputedStylePropertyValue('width'));\n var height = parseInt(vNode.getComputedStylePropertyValue('height'));\n return vNode.actualNode.onfocus || (width === 0 || height === 0) && pointerEvents === 'none';\n }) ? void 0 : false;\n }\n var focusable_disabled_evaluate_default = focusableDisabledEvaluate;\n function focusableContentEvaluate(node, options, virtualNode) {\n var tabbableElements = virtualNode.tabbableElements;\n if (!tabbableElements) {\n return false;\n }\n var tabbableContentElements = tabbableElements.filter(function(el) {\n return el !== virtualNode;\n });\n return tabbableContentElements.length > 0;\n }\n var focusable_content_evaluate_default = focusableContentEvaluate;\n function accesskeysEvaluate(node, options, vNode) {\n if (!_isHiddenForEveryone(vNode)) {\n this.data(vNode.attr('accesskey'));\n this.relatedNodes([ node ]);\n }\n return true;\n }\n var accesskeys_evaluate_default = accesskeysEvaluate;\n function accesskeysAfter(results) {\n var seen = {};\n return results.filter(function(r) {\n if (!r.data) {\n return false;\n }\n var key = r.data.toUpperCase();\n if (!seen[key]) {\n seen[key] = r;\n r.relatedNodes = [];\n return true;\n }\n seen[key].relatedNodes.push(r.relatedNodes[0]);\n return false;\n }).map(function(r) {\n r.result = !!r.relatedNodes.length;\n return r;\n });\n }\n var accesskeys_after_default = accesskeysAfter;\n function pageNoDuplicateEvaluate(node, options, virtualNode) {\n if (!options || !options.selector || typeof options.selector !== 'string') {\n throw new TypeError('page-no-duplicate requires options.selector to be a string');\n }\n var key = 'page-no-duplicate;' + options.selector;\n if (cache_default.get(key)) {\n this.data('ignored');\n return;\n }\n cache_default.set(key, true);\n var elms = query_selector_all_filter_default(axe._tree[0], options.selector, function(elm) {\n return _isVisibleToScreenReaders(elm);\n });\n if (typeof options.nativeScopeFilter === 'string') {\n elms = elms.filter(function(elm) {\n return elm.actualNode.hasAttribute('role') || !find_up_virtual_default(elm, options.nativeScopeFilter);\n });\n }\n if (typeof options.role === 'string') {\n elms = elms.filter(function(elm) {\n return get_role_default(elm) === options.role;\n });\n }\n this.relatedNodes(elms.filter(function(elm) {\n return elm !== virtualNode;\n }).map(function(elm) {\n return elm.actualNode;\n }));\n return elms.length <= 1;\n }\n var page_no_duplicate_evaluate_default = pageNoDuplicateEvaluate;\n function pageNoDuplicateAfter(results) {\n return results.filter(function(checkResult) {\n return checkResult.data !== 'ignored';\n });\n }\n var page_no_duplicate_after_default = pageNoDuplicateAfter;\n function matchesDefinitionEvaluate(_, options, virtualNode) {\n return matches_default2(virtualNode, options.matcher);\n }\n var matches_definition_evaluate_default = matchesDefinitionEvaluate;\n function hasTextContentEvaluate(node, options, virtualNode) {\n try {\n return sanitize_default(subtree_text_default(virtualNode)) !== '';\n } catch (_unused14) {\n return void 0;\n }\n }\n function hasDescendant(node, options, virtualNode) {\n if (!options || !options.selector || typeof options.selector !== 'string') {\n throw new TypeError('has-descendant requires options.selector to be a string');\n }\n if (options.passForModal && is_modal_open_default()) {\n return true;\n }\n var matchingElms = query_selector_all_filter_default(virtualNode, options.selector, function(vNode) {\n return _isVisibleToScreenReaders(vNode);\n });\n this.relatedNodes(matchingElms.map(function(vNode) {\n return vNode.actualNode;\n }));\n return matchingElms.length > 0;\n }\n var has_descendant_evaluate_default = hasDescendant;\n function pageHasElmAfter(results) {\n var elmUsedAnywhere = results.some(function(frameResult) {\n return frameResult.result === true;\n });\n if (elmUsedAnywhere) {\n results.forEach(function(result) {\n result.result = true;\n });\n }\n return results;\n }\n var has_descendant_after_default = pageHasElmAfter;\n function attrNonSpaceContentEvaluate(node) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var vNode = arguments.length > 2 ? arguments[2] : undefined;\n if (!options.attribute || typeof options.attribute !== 'string') {\n throw new TypeError('attr-non-space-content requires options.attribute to be a string');\n }\n if (!vNode.hasAttr(options.attribute)) {\n this.data({\n messageKey: 'noAttr'\n });\n return false;\n }\n var attribute = vNode.attr(options.attribute);\n var attributeIsEmpty = !sanitize_default(attribute);\n if (attributeIsEmpty) {\n this.data({\n messageKey: 'emptyAttr'\n });\n return false;\n }\n return true;\n }\n var attr_non_space_content_evaluate_default = attrNonSpaceContentEvaluate;\n function autocompleteValidEvaluate(_node, options, virtualNode) {\n var autocomplete2 = virtualNode.attr('autocomplete') || '';\n return is_valid_autocomplete_default(autocomplete2, options);\n }\n var autocomplete_valid_evaluate_default = autocompleteValidEvaluate;\n function autocompleteAppropriateEvaluate(node, options, virtualNode) {\n if (virtualNode.props.nodeName !== 'input') {\n return true;\n }\n var number = [ 'text', 'search', 'number', 'tel' ];\n var url = [ 'text', 'search', 'url' ];\n var allowedTypesMap = {\n bday: [ 'text', 'search', 'date' ],\n email: [ 'text', 'search', 'email' ],\n username: [ 'text', 'search', 'email' ],\n 'street-address': [ 'text' ],\n tel: [ 'text', 'search', 'tel' ],\n 'tel-country-code': [ 'text', 'search', 'tel' ],\n 'tel-national': [ 'text', 'search', 'tel' ],\n 'tel-area-code': [ 'text', 'search', 'tel' ],\n 'tel-local': [ 'text', 'search', 'tel' ],\n 'tel-local-prefix': [ 'text', 'search', 'tel' ],\n 'tel-local-suffix': [ 'text', 'search', 'tel' ],\n 'tel-extension': [ 'text', 'search', 'tel' ],\n 'cc-number': number,\n 'cc-exp': [ 'text', 'search', 'month', 'tel' ],\n 'cc-exp-month': number,\n 'cc-exp-year': number,\n 'cc-csc': number,\n 'transaction-amount': number,\n 'bday-day': number,\n 'bday-month': number,\n 'bday-year': number,\n 'new-password': [ 'text', 'search', 'password' ],\n 'current-password': [ 'text', 'search', 'password' ],\n url: url,\n photo: url,\n impp: url\n };\n if (_typeof(options) === 'object') {\n Object.keys(options).forEach(function(key) {\n if (!allowedTypesMap[key]) {\n allowedTypesMap[key] = [];\n }\n allowedTypesMap[key] = allowedTypesMap[key].concat(options[key]);\n });\n }\n var autocompleteAttr = virtualNode.attr('autocomplete');\n var autocompleteTerms = autocompleteAttr.split(/\\s+/g).map(function(term) {\n return term.toLowerCase();\n });\n var purposeTerm = autocompleteTerms[autocompleteTerms.length - 1];\n if (_autocomplete.stateTerms.includes(purposeTerm)) {\n return true;\n }\n var allowedTypes = allowedTypesMap[purposeTerm];\n var type2 = virtualNode.hasAttr('type') ? sanitize_default(virtualNode.attr('type')).toLowerCase() : 'text';\n type2 = valid_input_type_default().includes(type2) ? type2 : 'text';\n if (typeof allowedTypes === 'undefined') {\n return type2 === 'text';\n }\n return allowedTypes.includes(type2);\n }\n var autocomplete_appropriate_evaluate_default = autocompleteAppropriateEvaluate;\n var blockLike2 = [ 'block', 'list-item', 'table', 'flex', 'grid', 'inline-block' ];\n function linkInTextBlockStyleEvaluate(node) {\n if (isBlock2(node)) {\n return false;\n }\n var parentBlock = get_composed_parent_default(node);\n while (parentBlock && parentBlock.nodeType === 1 && !isBlock2(parentBlock)) {\n parentBlock = get_composed_parent_default(parentBlock);\n }\n if (!parentBlock) {\n return void 0;\n }\n this.relatedNodes([ parentBlock ]);\n if (element_is_distinct_default(node, parentBlock)) {\n return true;\n }\n if (hasPseudoContent(node)) {\n this.data({\n messageKey: 'pseudoContent'\n });\n return void 0;\n }\n return false;\n }\n function isBlock2(elm) {\n var display2 = window.getComputedStyle(elm).getPropertyValue('display');\n return blockLike2.indexOf(display2) !== -1 || display2.substr(0, 6) === 'table-';\n }\n function hasPseudoContent(node) {\n for (var _i27 = 0, _arr3 = [ 'before', 'after' ]; _i27 < _arr3.length; _i27++) {\n var pseudo = _arr3[_i27];\n var style = window.getComputedStyle(node, ':'.concat(pseudo));\n var content = style.getPropertyValue('content');\n if (content !== 'none') {\n return true;\n }\n }\n return false;\n }\n function getContrast2(color1, color2) {\n var c1lum = color1.getRelativeLuminance();\n var c2lum = color2.getRelativeLuminance();\n return (Math.max(c1lum, c2lum) + .05) / (Math.min(c1lum, c2lum) + .05);\n }\n var blockLike3 = [ 'block', 'list-item', 'table', 'flex', 'grid', 'inline-block' ];\n function isBlock3(elm) {\n var display2 = window.getComputedStyle(elm).getPropertyValue('display');\n return blockLike3.indexOf(display2) !== -1 || display2.substr(0, 6) === 'table-';\n }\n function linkInTextBlockEvaluate(node, options) {\n var requiredContrastRatio = options.requiredContrastRatio, allowSameColor = options.allowSameColor;\n if (isBlock3(node)) {\n return false;\n }\n var parentBlock = get_composed_parent_default(node);\n while (parentBlock && parentBlock.nodeType === 1 && !isBlock3(parentBlock)) {\n parentBlock = get_composed_parent_default(parentBlock);\n }\n if (!parentBlock) {\n return void 0;\n }\n this.relatedNodes([ parentBlock ]);\n var nodeColor = _getForegroundColor(node);\n var parentColor = _getForegroundColor(parentBlock);\n var nodeBackgroundColor = _getBackgroundColor2(node);\n var parentBackgroundColor = _getBackgroundColor2(parentBlock);\n var textContrast = nodeColor && parentColor ? getContrast2(nodeColor, parentColor) : void 0;\n if (textContrast) {\n textContrast = Math.floor(textContrast * 100) / 100;\n }\n if (textContrast && textContrast >= requiredContrastRatio) {\n return true;\n }\n var backgroundContrast = nodeBackgroundColor && parentBackgroundColor ? getContrast2(nodeBackgroundColor, parentBackgroundColor) : void 0;\n if (backgroundContrast) {\n backgroundContrast = Math.floor(backgroundContrast * 100) / 100;\n }\n if (backgroundContrast && backgroundContrast >= requiredContrastRatio) {\n return true;\n }\n if (!backgroundContrast) {\n var _incomplete_data_defa;\n var reason = (_incomplete_data_defa = incomplete_data_default.get('bgColor')) !== null && _incomplete_data_defa !== void 0 ? _incomplete_data_defa : 'bgContrast';\n this.data({\n messageKey: reason\n });\n incomplete_data_default.clear();\n return void 0;\n }\n if (!textContrast) {\n return void 0;\n }\n if (allowSameColor && textContrast === 1 && backgroundContrast === 1) {\n return true;\n }\n if (textContrast === 1 && backgroundContrast > 1) {\n this.data({\n messageKey: 'bgContrast',\n contrastRatio: backgroundContrast,\n requiredContrastRatio: requiredContrastRatio,\n nodeBackgroundColor: nodeBackgroundColor ? nodeBackgroundColor.toHexString() : void 0,\n parentBackgroundColor: parentBackgroundColor ? parentBackgroundColor.toHexString() : void 0\n });\n return false;\n }\n this.data({\n messageKey: 'fgContrast',\n contrastRatio: textContrast,\n requiredContrastRatio: requiredContrastRatio,\n nodeColor: nodeColor ? nodeColor.toHexString() : void 0,\n parentColor: parentColor ? parentColor.toHexString() : void 0\n });\n return false;\n }\n var link_in_text_block_evaluate_default = linkInTextBlockEvaluate;\n function colorContrastEvaluate(node, options, virtualNode) {\n var ignoreUnicode = options.ignoreUnicode, ignoreLength = options.ignoreLength, ignorePseudo = options.ignorePseudo, boldValue = options.boldValue, boldTextPt = options.boldTextPt, largeTextPt = options.largeTextPt, contrastRatio = options.contrastRatio, shadowOutlineEmMax = options.shadowOutlineEmMax, pseudoSizeThreshold = options.pseudoSizeThreshold;\n if (!_isVisibleOnScreen(node)) {\n this.data({\n messageKey: 'hidden'\n });\n return true;\n }\n var visibleText = visible_virtual_default(virtualNode, false, true);\n if (ignoreUnicode && textIsEmojis(visibleText)) {\n this.data({\n messageKey: 'nonBmp'\n });\n return void 0;\n }\n var nodeStyle = window.getComputedStyle(node);\n var fontSize = parseFloat(nodeStyle.getPropertyValue('font-size'));\n var fontWeight = nodeStyle.getPropertyValue('font-weight');\n var bold = parseFloat(fontWeight) >= boldValue || fontWeight === 'bold';\n var ptSize = Math.ceil(fontSize * 72) / 96;\n var isSmallFont = bold && ptSize < boldTextPt || !bold && ptSize < largeTextPt;\n var _ref130 = isSmallFont ? contrastRatio.normal : contrastRatio.large, expected = _ref130.expected, minThreshold = _ref130.minThreshold, maxThreshold = _ref130.maxThreshold;\n var pseudoElm = findPseudoElement(virtualNode, {\n ignorePseudo: ignorePseudo,\n pseudoSizeThreshold: pseudoSizeThreshold\n });\n if (pseudoElm) {\n this.data({\n fontSize: ''.concat((fontSize * 72 / 96).toFixed(1), 'pt (').concat(fontSize, 'px)'),\n fontWeight: bold ? 'bold' : 'normal',\n messageKey: 'pseudoContent',\n expectedContrastRatio: expected + ':1'\n });\n this.relatedNodes(pseudoElm.actualNode);\n return void 0;\n }\n var shadowColors = _getTextShadowColors(node, {\n minRatio: .001,\n maxRatio: shadowOutlineEmMax\n });\n if (shadowColors === null) {\n this.data({\n messageKey: 'complexTextShadows'\n });\n return void 0;\n }\n var bgNodes = [];\n var bgColor = _getBackgroundColor2(node, bgNodes, shadowOutlineEmMax);\n var fgColor = _getForegroundColor(node, false, bgColor, options);\n var contrast2 = null;\n var contrastContributor = null;\n var shadowColor = null;\n if (shadowColors.length === 0) {\n contrast2 = get_contrast_default(bgColor, fgColor);\n } else if (fgColor && bgColor) {\n shadowColor = [].concat(_toConsumableArray(shadowColors), [ bgColor ]).reduce(_flattenShadowColors);\n var fgBgContrast = get_contrast_default(bgColor, fgColor);\n var bgShContrast = get_contrast_default(bgColor, shadowColor);\n var fgShContrast = get_contrast_default(shadowColor, fgColor);\n contrast2 = Math.max(fgBgContrast, bgShContrast, fgShContrast);\n if (contrast2 !== fgBgContrast) {\n contrastContributor = bgShContrast > fgShContrast ? 'shadowOnBgColor' : 'fgOnShadowColor';\n }\n }\n var isValid = contrast2 > expected;\n if (typeof minThreshold === 'number' && (typeof contrast2 !== 'number' || contrast2 < minThreshold) || typeof maxThreshold === 'number' && (typeof contrast2 !== 'number' || contrast2 > maxThreshold)) {\n this.data({\n contrastRatio: contrast2\n });\n return true;\n }\n var truncatedResult = Math.floor(contrast2 * 100) / 100;\n var missing;\n if (bgColor === null) {\n missing = incomplete_data_default.get('bgColor');\n } else if (!isValid) {\n missing = contrastContributor;\n }\n var equalRatio = truncatedResult === 1;\n var shortTextContent = visibleText.length === 1;\n if (equalRatio) {\n missing = incomplete_data_default.set('bgColor', 'equalRatio');\n } else if (!isValid && shortTextContent && !ignoreLength) {\n missing = 'shortTextContent';\n }\n this.data({\n fgColor: fgColor ? fgColor.toHexString() : void 0,\n bgColor: bgColor ? bgColor.toHexString() : void 0,\n contrastRatio: truncatedResult,\n fontSize: ''.concat((fontSize * 72 / 96).toFixed(1), 'pt (').concat(fontSize, 'px)'),\n fontWeight: bold ? 'bold' : 'normal',\n messageKey: missing,\n expectedContrastRatio: expected + ':1',\n shadowColor: shadowColor ? shadowColor.toHexString() : void 0\n });\n if (fgColor === null || bgColor === null || equalRatio || shortTextContent && !ignoreLength && !isValid) {\n missing = null;\n incomplete_data_default.clear();\n this.relatedNodes(bgNodes);\n return void 0;\n }\n if (!isValid) {\n this.relatedNodes(bgNodes);\n }\n return isValid;\n }\n function findPseudoElement(vNode, _ref131) {\n var _ref131$pseudoSizeThr = _ref131.pseudoSizeThreshold, pseudoSizeThreshold = _ref131$pseudoSizeThr === void 0 ? .25 : _ref131$pseudoSizeThr, _ref131$ignorePseudo = _ref131.ignorePseudo, ignorePseudo = _ref131$ignorePseudo === void 0 ? false : _ref131$ignorePseudo;\n if (ignorePseudo) {\n return;\n }\n var rect = vNode.boundingClientRect;\n var minimumSize = rect.width * rect.height * pseudoSizeThreshold;\n do {\n var beforeSize = getPseudoElementArea(vNode.actualNode, ':before');\n var afterSize = getPseudoElementArea(vNode.actualNode, ':after');\n if (beforeSize + afterSize > minimumSize) {\n return vNode;\n }\n } while (vNode = vNode.parent);\n }\n var getPseudoElementArea = memoize_default(function getPseudoElementArea2(node, pseudo) {\n var style = window.getComputedStyle(node, pseudo);\n var matchPseudoStyle = function matchPseudoStyle(prop, value) {\n return style.getPropertyValue(prop) === value;\n };\n if (matchPseudoStyle('content', 'none') || matchPseudoStyle('display', 'none') || matchPseudoStyle('visibility', 'hidden') || matchPseudoStyle('position', 'absolute') === false) {\n return 0;\n }\n if (get_own_background_color_default(style).alpha === 0 && matchPseudoStyle('background-image', 'none')) {\n return 0;\n }\n var pseudoWidth = parseUnit(style.getPropertyValue('width'));\n var pseudoHeight = parseUnit(style.getPropertyValue('height'));\n if (pseudoWidth.unit !== 'px' || pseudoHeight.unit !== 'px') {\n return pseudoWidth.value === 0 || pseudoHeight.value === 0 ? 0 : Infinity;\n }\n return pseudoWidth.value * pseudoHeight.value;\n });\n function textIsEmojis(visibleText) {\n var options = {\n nonBmp: true\n };\n var hasUnicodeChars = has_unicode_default(visibleText, options);\n var hasNonUnicodeChars = sanitize_default(remove_unicode_default(visibleText, options)) === '';\n return hasUnicodeChars && hasNonUnicodeChars;\n }\n function parseUnit(str) {\n var unitRegex = /^([0-9.]+)([a-z]+)$/i;\n var _ref132 = str.match(unitRegex) || [], _ref133 = _slicedToArray(_ref132, 3), _ref133$ = _ref133[1], value = _ref133$ === void 0 ? '' : _ref133$, _ref133$2 = _ref133[2], unit = _ref133$2 === void 0 ? '' : _ref133$2;\n return {\n value: parseFloat(value),\n unit: unit.toLowerCase()\n };\n }\n var VALID_TAG_NAMES_FOR_SCROLLABLE_REGIONS = {\n ARTICLE: true,\n ASIDE: true,\n NAV: true,\n SECTION: true\n };\n var VALID_ROLES_FOR_SCROLLABLE_REGIONS = {\n alert: true,\n alertdialog: true,\n application: true,\n article: true,\n banner: false,\n complementary: true,\n contentinfo: true,\n dialog: true,\n form: true,\n log: true,\n main: true,\n navigation: true,\n region: true,\n search: false,\n status: true,\n tabpanel: true\n };\n function validScrollableTagName(node) {\n var nodeName2 = node.nodeName.toUpperCase();\n return VALID_TAG_NAMES_FOR_SCROLLABLE_REGIONS[nodeName2] || false;\n }\n function validScrollableRole(node, options) {\n var role = get_explicit_role_default(node);\n if (!role) {\n return false;\n }\n return VALID_ROLES_FOR_SCROLLABLE_REGIONS[role] || options.roles.includes(role) || false;\n }\n function validScrollableSemanticsEvaluate(node, options) {\n return validScrollableRole(node, options) || validScrollableTagName(node);\n }\n var valid_scrollable_semantics_evaluate_default = validScrollableSemanticsEvaluate;\n function unsupportedroleEvaluate(node, options, virtualNode) {\n var role = get_role_default(virtualNode, {\n dpub: true,\n fallback: true\n });\n var isUnsupported = is_unsupported_role_default(role);\n if (isUnsupported) {\n this.data(role);\n }\n return isUnsupported;\n }\n var unsupportedrole_evaluate_default = unsupportedroleEvaluate;\n function noImplicitExplicitLabelEvaluate(node, options, virtualNode) {\n var role = get_role_default(virtualNode, {\n noImplicit: true\n });\n this.data(role);\n var label3;\n var accText;\n try {\n label3 = sanitize_default(label_text_default(virtualNode)).toLowerCase();\n accText = sanitize_default(_accessibleTextVirtual(virtualNode)).toLowerCase();\n } catch (_unused15) {\n return void 0;\n }\n if (!accText && !label3) {\n return false;\n }\n if (!accText && label3) {\n return void 0;\n }\n if (!accText.includes(label3)) {\n return void 0;\n }\n return false;\n }\n var no_implicit_explicit_label_evaluate_default = noImplicitExplicitLabelEvaluate;\n function isElementFocusableEvaluate(node, options, virtualNode) {\n return _isFocusable(virtualNode);\n }\n var is_element_focusable_evaluate_default = isElementFocusableEvaluate;\n function invalidroleEvaluate(node, options, virtualNode) {\n var allRoles = token_list_default(virtualNode.attr('role'));\n var allInvalid = allRoles.every(function(role) {\n return !is_valid_role_default(role.toLowerCase(), {\n allowAbstract: true\n });\n });\n if (allInvalid) {\n this.data(allRoles);\n return true;\n }\n return false;\n }\n var invalidrole_evaluate_default = invalidroleEvaluate;\n function hasWidgetRoleEvaluate(node, options, virtualNode) {\n var role = get_explicit_role_default(virtualNode);\n if (role === null) {\n return false;\n }\n var roleType = get_role_type_default(role);\n return roleType === 'widget' || roleType === 'composite';\n }\n var has_widget_role_evaluate_default = hasWidgetRoleEvaluate;\n function hasGlobalAriaAttributeEvaluate(node, options, virtualNode) {\n var globalAttrs = get_global_aria_attrs_default().filter(function(attr) {\n return virtualNode.hasAttr(attr);\n });\n this.data(globalAttrs);\n return globalAttrs.length > 0;\n }\n var has_global_aria_attribute_evaluate_default = hasGlobalAriaAttributeEvaluate;\n function nonePresentationOnElementWithNoImplicitRole(virtualNode, explicitRoles) {\n var hasImplicitRole = implicit_role_default(virtualNode);\n return !hasImplicitRole && explicitRoles.length === 2 && explicitRoles.includes('none') && explicitRoles.includes('presentation');\n }\n function fallbackroleEvaluate(node, options, virtualNode) {\n var explicitRoles = token_list_default(virtualNode.attr('role'));\n if (explicitRoles.length <= 1) {\n return false;\n }\n return nonePresentationOnElementWithNoImplicitRole(virtualNode, explicitRoles) ? void 0 : true;\n }\n var fallbackrole_evaluate_default = fallbackroleEvaluate;\n function deprecatedroleEvaluate(node, options, virtualNode) {\n var role = get_role_default(virtualNode, {\n dpub: true,\n fallback: true\n });\n var roleDefinition = standards_default.ariaRoles[role];\n if (!(roleDefinition !== null && roleDefinition !== void 0 && roleDefinition.deprecated)) {\n return false;\n }\n this.data(role);\n return true;\n }\n function brailleRoleDescriptionEquivalentEvaluate(node, options, virtualNode) {\n var _virtualNode$attr;\n var brailleRoleDesc = (_virtualNode$attr = virtualNode.attr('aria-brailleroledescription')) !== null && _virtualNode$attr !== void 0 ? _virtualNode$attr : '';\n if (sanitize_default(brailleRoleDesc) === '') {\n return true;\n }\n var roleDesc = virtualNode.attr('aria-roledescription');\n if (typeof roleDesc !== 'string') {\n this.data({\n messageKey: 'noRoleDescription'\n });\n return false;\n }\n if (sanitize_default(roleDesc) === '') {\n this.data({\n messageKey: 'emptyRoleDescription'\n });\n return false;\n }\n return true;\n }\n function brailleLabelEquivalentEvaluate(node, options, virtualNode) {\n var _virtualNode$attr2;\n var brailleLabel = (_virtualNode$attr2 = virtualNode.attr('aria-braillelabel')) !== null && _virtualNode$attr2 !== void 0 ? _virtualNode$attr2 : '';\n if (!brailleLabel.trim()) {\n return true;\n }\n try {\n return sanitize_default(_accessibleTextVirtual(virtualNode)) !== '';\n } catch (_unused16) {\n return void 0;\n }\n }\n function ariaValidAttrValueEvaluate(node, options, virtualNode) {\n options = Array.isArray(options.value) ? options.value : [];\n var needsReview = '';\n var messageKey = '';\n var invalid = [];\n var aria = /^aria-/;\n var skipAttrs = [ 'aria-errormessage' ];\n var preChecks = {\n 'aria-controls': function ariaControls() {\n var hasPopup = [ 'false', null ].includes(virtualNode.attr('aria-haspopup')) === false;\n if (hasPopup) {\n needsReview = 'aria-controls=\"'.concat(virtualNode.attr('aria-controls'), '\"');\n messageKey = 'controlsWithinPopup';\n }\n return virtualNode.attr('aria-expanded') !== 'false' && virtualNode.attr('aria-selected') !== 'false' && hasPopup === false;\n },\n 'aria-current': function ariaCurrent(validValue) {\n if (!validValue) {\n needsReview = 'aria-current=\"'.concat(virtualNode.attr('aria-current'), '\"');\n messageKey = 'ariaCurrent';\n }\n return;\n },\n 'aria-owns': function ariaOwns() {\n return virtualNode.attr('aria-expanded') !== 'false';\n },\n 'aria-describedby': function ariaDescribedby(validValue) {\n if (!validValue) {\n needsReview = 'aria-describedby=\"'.concat(virtualNode.attr('aria-describedby'), '\"');\n messageKey = axe._tree && axe._tree[0]._hasShadowRoot ? 'noIdShadow' : 'noId';\n }\n return;\n },\n 'aria-labelledby': function ariaLabelledby(validValue) {\n if (!validValue) {\n needsReview = 'aria-labelledby=\"'.concat(virtualNode.attr('aria-labelledby'), '\"');\n messageKey = axe._tree && axe._tree[0]._hasShadowRoot ? 'noIdShadow' : 'noId';\n }\n }\n };\n virtualNode.attrNames.forEach(function(attrName) {\n if (skipAttrs.includes(attrName) || options.includes(attrName) || !aria.test(attrName)) {\n return;\n }\n var validValue;\n var attrValue = virtualNode.attr(attrName);\n try {\n validValue = validate_attr_value_default(virtualNode, attrName);\n } catch (_unused17) {\n needsReview = ''.concat(attrName, '=\"').concat(attrValue, '\"');\n messageKey = 'idrefs';\n return;\n }\n if ((preChecks[attrName] ? preChecks[attrName](validValue) : true) && !validValue) {\n if (attrValue === '' && !isStringType(attrName)) {\n needsReview = attrName;\n messageKey = 'empty';\n } else {\n invalid.push(''.concat(attrName, '=\"').concat(attrValue, '\"'));\n }\n }\n });\n if (invalid.length) {\n this.data(invalid);\n return false;\n }\n if (needsReview) {\n this.data({\n messageKey: messageKey,\n needsReview: needsReview\n });\n return void 0;\n }\n return true;\n }\n function isStringType(attrName) {\n var _standards_default$ar;\n return ((_standards_default$ar = standards_default.ariaAttrs[attrName]) === null || _standards_default$ar === void 0 ? void 0 : _standards_default$ar.type) === 'string';\n }\n function ariaValidAttrEvaluate(node, options, virtualNode) {\n options = Array.isArray(options.value) ? options.value : [];\n var invalid = [];\n var aria = /^aria-/;\n virtualNode.attrNames.forEach(function(attr) {\n if (options.indexOf(attr) === -1 && aria.test(attr) && !validate_attr_default(attr)) {\n invalid.push(attr);\n }\n });\n if (invalid.length) {\n this.data(invalid);\n return false;\n }\n return true;\n }\n var aria_valid_attr_evaluate_default = ariaValidAttrEvaluate;\n function ariaUnsupportedAttrEvaluate(node, options, virtualNode) {\n var unsupportedAttrs = virtualNode.attrNames.filter(function(name) {\n var attribute = standards_default.ariaAttrs[name];\n if (!validate_attr_default(name)) {\n return false;\n }\n var unsupported = attribute.unsupported;\n if (_typeof(unsupported) !== 'object') {\n return !!unsupported;\n }\n return !matches_default2(node, unsupported.exceptions);\n });\n if (unsupportedAttrs.length) {\n this.data(unsupportedAttrs);\n return true;\n }\n return false;\n }\n var aria_unsupported_attr_evaluate_default = ariaUnsupportedAttrEvaluate;\n function ariaRoledescriptionEvaluate(node) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var virtualNode = arguments.length > 2 ? arguments[2] : undefined;\n var role = get_role_default(virtualNode);\n var supportedRoles = options.supportedRoles || [];\n if (supportedRoles.includes(role)) {\n return true;\n }\n if (role && role !== 'presentation' && role !== 'none') {\n return void 0;\n }\n return false;\n }\n var aria_roledescription_evaluate_default = ariaRoledescriptionEvaluate;\n function getMissingContext(virtualNode, ownGroupRoles, reqContext, includeElement) {\n var explicitRole2 = get_explicit_role_default(virtualNode);\n if (!reqContext) {\n reqContext = required_context_default(explicitRole2);\n }\n if (!reqContext) {\n return null;\n }\n var allowsGroup = reqContext.includes('group');\n var vNode = includeElement ? virtualNode : virtualNode.parent;\n while (vNode) {\n var role = get_role_default(vNode, {\n noPresentational: true\n });\n if (!role) {\n vNode = vNode.parent;\n } else if (role === 'group' && allowsGroup) {\n if (ownGroupRoles.includes(explicitRole2)) {\n reqContext.push(explicitRole2);\n }\n reqContext = reqContext.filter(function(r) {\n return r !== 'group';\n });\n vNode = vNode.parent;\n } else if (reqContext.includes(role)) {\n return null;\n } else {\n return reqContext;\n }\n }\n return reqContext;\n }\n function getAriaOwners(element) {\n var owners = [];\n var o = null;\n while (element) {\n if (element.getAttribute('id')) {\n var _id7 = escape_selector_default(element.getAttribute('id'));\n var doc = get_root_node_default2(element);\n o = doc.querySelector('[aria-owns~='.concat(_id7, ']'));\n if (o) {\n owners.push(o);\n }\n }\n element = element.parentElement;\n }\n return owners.length ? owners : null;\n }\n function ariaRequiredParentEvaluate(node, options, virtualNode) {\n var ownGroupRoles = options && Array.isArray(options.ownGroupRoles) ? options.ownGroupRoles : [];\n var missingParents = getMissingContext(virtualNode, ownGroupRoles);\n if (!missingParents) {\n return true;\n }\n var owners = getAriaOwners(node);\n if (owners) {\n for (var _i28 = 0, l = owners.length; _i28 < l; _i28++) {\n missingParents = getMissingContext(get_node_from_tree_default(owners[_i28]), ownGroupRoles, missingParents, true);\n if (!missingParents) {\n return true;\n }\n }\n }\n this.data(missingParents);\n return false;\n }\n var aria_required_parent_evaluate_default = ariaRequiredParentEvaluate;\n function ariaRequiredChildrenEvaluate(node, options, virtualNode) {\n var reviewEmpty = options && Array.isArray(options.reviewEmpty) ? options.reviewEmpty : [];\n var explicitRole2 = get_explicit_role_default(virtualNode, {\n dpub: true\n });\n var required = required_owned_default(explicitRole2);\n if (required === null) {\n return true;\n }\n var ownedRoles = getOwnedRoles(virtualNode, required);\n var unallowed = ownedRoles.filter(function(_ref134) {\n var role = _ref134.role, vNode = _ref134.vNode;\n return vNode.props.nodeType === 1 && !required.includes(role);\n });\n if (unallowed.length) {\n this.relatedNodes(unallowed.map(function(_ref135) {\n var vNode = _ref135.vNode;\n return vNode;\n }));\n this.data({\n messageKey: 'unallowed',\n values: unallowed.map(function(_ref136) {\n var vNode = _ref136.vNode, attr = _ref136.attr;\n return getUnallowedSelector(vNode, attr);\n }).filter(function(selector, index, array) {\n return array.indexOf(selector) === index;\n }).join(', ')\n });\n return false;\n }\n if (hasRequiredChildren(required, ownedRoles)) {\n return true;\n }\n if (virtualNode.attr('aria-busy') === 'true') {\n this.data({\n messageKey: 'aria-busy'\n });\n return true;\n }\n this.data(required);\n if (reviewEmpty.includes(explicitRole2) && !ownedRoles.some(isContent)) {\n return void 0;\n }\n return false;\n }\n function getOwnedRoles(virtualNode, required) {\n var vNode;\n var ownedRoles = [];\n var ownedVirtual = get_owned_virtual_default(virtualNode);\n var _loop0 = function _loop0() {\n if (vNode.props.nodeType === 3) {\n ownedRoles.push({\n vNode: vNode,\n role: null\n });\n }\n if (vNode.props.nodeType !== 1 || !_isVisibleToScreenReaders(vNode)) {\n return 1;\n }\n var role = get_role_default(vNode, {\n noPresentational: true\n });\n var globalAriaAttr = getGlobalAriaAttr(vNode);\n var hasGlobalAriaOrFocusable = !!globalAriaAttr || _isFocusable(vNode);\n if (!role && !hasGlobalAriaOrFocusable || [ 'group', 'rowgroup' ].includes(role) && required.some(function(requiredRole) {\n return requiredRole === role;\n })) {\n ownedVirtual.push.apply(ownedVirtual, _toConsumableArray(vNode.children));\n } else if (role || hasGlobalAriaOrFocusable) {\n var attr = globalAriaAttr || 'tabindex';\n ownedRoles.push({\n role: role,\n attr: attr,\n vNode: vNode\n });\n }\n };\n while (vNode = ownedVirtual.shift()) {\n if (_loop0()) {\n continue;\n }\n }\n return ownedRoles;\n }\n function hasRequiredChildren(required, ownedRoles) {\n return ownedRoles.some(function(_ref137) {\n var role = _ref137.role;\n return role && required.includes(role);\n });\n }\n function getGlobalAriaAttr(vNode) {\n return get_global_aria_attrs_default().find(function(attr) {\n return vNode.hasAttr(attr);\n });\n }\n function getUnallowedSelector(vNode, attr) {\n var _vNode$props = vNode.props, nodeName2 = _vNode$props.nodeName, nodeType = _vNode$props.nodeType;\n if (nodeType === 3) {\n return '#text';\n }\n var role = get_explicit_role_default(vNode, {\n dpub: true\n });\n if (role) {\n return '[role='.concat(role, ']');\n }\n if (attr) {\n return nodeName2 + '['.concat(attr, ']');\n }\n return nodeName2;\n }\n function isContent(_ref138) {\n var vNode = _ref138.vNode;\n if (vNode.props.nodeType === 3) {\n return vNode.props.nodeValue.trim().length > 0;\n }\n return has_content_virtual_default(vNode, false, true);\n }\n function ariaRequiredAttrEvaluate(node) {\n var _virtualNode$attr3;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var virtualNode = arguments.length > 2 ? arguments[2] : undefined;\n var role = get_explicit_role_default(virtualNode);\n var attrs = virtualNode.attrNames;\n var requiredAttrs = required_attr_default(role);\n if (Array.isArray(options[role])) {\n requiredAttrs = unique_array_default(options[role], requiredAttrs);\n }\n if (!role || !attrs.length || !requiredAttrs.length) {\n return true;\n }\n if (isStaticSeparator(virtualNode, role) || isClosedCombobox(virtualNode, role)) {\n return true;\n }\n if (role === 'slider' && (_virtualNode$attr3 = virtualNode.attr('aria-valuetext')) !== null && _virtualNode$attr3 !== void 0 && _virtualNode$attr3.trim()) {\n return true;\n }\n var elmSpec = get_element_spec_default(virtualNode);\n var missingAttrs = requiredAttrs.filter(function(requiredAttr2) {\n return !virtualNode.attr(requiredAttr2) && !hasImplicitAttr(elmSpec, requiredAttr2);\n });\n if (missingAttrs.length) {\n this.data(missingAttrs);\n return false;\n }\n return true;\n }\n function isStaticSeparator(vNode, role) {\n return role === 'separator' && !_isFocusable(vNode);\n }\n function hasImplicitAttr(elmSpec, attr) {\n var _elmSpec$implicitAttr;\n return ((_elmSpec$implicitAttr = elmSpec.implicitAttrs) === null || _elmSpec$implicitAttr === void 0 ? void 0 : _elmSpec$implicitAttr[attr]) !== void 0;\n }\n function isClosedCombobox(vNode, role) {\n return role === 'combobox' && vNode.attr('aria-expanded') === 'false';\n }\n function ariaProhibitedAttrEvaluate(node) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var virtualNode = arguments.length > 2 ? arguments[2] : undefined;\n var elementsAllowedAriaLabel = (options === null || options === void 0 ? void 0 : options.elementsAllowedAriaLabel) || [];\n var nodeName2 = virtualNode.props.nodeName;\n var role = get_role_default(virtualNode, {\n chromium: true,\n fallback: true\n });\n var prohibitedList = listProhibitedAttrs(virtualNode, role, nodeName2, elementsAllowedAriaLabel);\n var prohibited = prohibitedList.filter(function(attrName) {\n if (!virtualNode.attrNames.includes(attrName)) {\n return false;\n }\n return sanitize_default(virtualNode.attr(attrName)) !== '';\n });\n if (prohibited.length === 0) {\n return false;\n }\n var messageKey = role !== null ? 'hasRole' : 'noRole';\n messageKey += prohibited.length > 1 ? 'Plural' : 'Singular';\n this.data({\n role: role,\n nodeName: nodeName2,\n messageKey: messageKey,\n prohibited: prohibited\n });\n var textContent = subtree_text_default(virtualNode, {\n subtreeDescendant: true\n });\n if (sanitize_default(textContent) !== '') {\n return void 0;\n }\n return true;\n }\n function listProhibitedAttrs(vNode, role, nodeName2, elementsAllowedAriaLabel) {\n var roleSpec = standards_default.ariaRoles[role];\n if (roleSpec) {\n return roleSpec.prohibitedAttrs || [];\n }\n if (!!role || elementsAllowedAriaLabel.includes(nodeName2) || getClosestAncestorRoleType(vNode) === 'widget') {\n return [];\n }\n return [ 'aria-label', 'aria-labelledby' ];\n }\n var getClosestAncestorRoleType = memoize_default(function getClosestAncestorRoleTypeMemoized(vNode) {\n if (!vNode) {\n return;\n }\n var role = get_role_default(vNode, {\n noPresentational: true,\n chromium: true\n });\n if (role) {\n return get_role_type_default(role);\n }\n return getClosestAncestorRoleType(vNode.parent);\n });\n function ariaLevelEvaluate(node, options, virtualNode) {\n var ariaHeadingLevel = virtualNode.attr('aria-level');\n var ariaLevel = parseInt(ariaHeadingLevel, 10);\n if (ariaLevel > 6) {\n return void 0;\n }\n return true;\n }\n var aria_level_evaluate_default = ariaLevelEvaluate;\n function ariaHiddenBodyEvaluate(node, options, virtualNode) {\n return virtualNode.attr('aria-hidden') !== 'true';\n }\n var aria_hidden_body_evaluate_default = ariaHiddenBodyEvaluate;\n function ariaErrormessageEvaluate(node, options, virtualNode) {\n options = Array.isArray(options) ? options : [];\n var errorMessageAttr = virtualNode.attr('aria-errormessage');\n var hasAttr = virtualNode.hasAttr('aria-errormessage');\n var invaid = virtualNode.attr('aria-invalid');\n var hasInvallid = virtualNode.hasAttr('aria-invalid');\n if (!hasInvallid || invaid === 'false') {\n return true;\n }\n function validateAttrValue2(attr) {\n if (attr.trim() === '') {\n return standards_default.ariaAttrs['aria-errormessage'].allowEmpty;\n }\n var idref;\n try {\n idref = attr && idrefs_default(virtualNode, 'aria-errormessage')[0];\n } catch (_unused18) {\n this.data({\n messageKey: 'idrefs',\n values: token_list_default(attr)\n });\n return void 0;\n }\n if (idref) {\n if (!_isVisibleToScreenReaders(idref)) {\n this.data({\n messageKey: 'hidden',\n values: token_list_default(attr)\n });\n return false;\n }\n return get_explicit_role_default(idref) === 'alert' || idref.getAttribute('aria-live') === 'assertive' || idref.getAttribute('aria-live') === 'polite' || token_list_default(virtualNode.attr('aria-describedby')).indexOf(attr) > -1;\n }\n return;\n }\n if (options.indexOf(errorMessageAttr) === -1 && hasAttr) {\n this.data(token_list_default(errorMessageAttr));\n return validateAttrValue2.call(this, errorMessageAttr);\n }\n return true;\n }\n function ariaConditionalRowAttr(node) {\n var _invalidTableRowAttrs, _invalidTableRowAttrs2;\n var _ref139 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, invalidTableRowAttrs = _ref139.invalidTableRowAttrs;\n var virtualNode = arguments.length > 2 ? arguments[2] : undefined;\n var invalidAttrs = (_invalidTableRowAttrs = invalidTableRowAttrs === null || invalidTableRowAttrs === void 0 || (_invalidTableRowAttrs2 = invalidTableRowAttrs.filter) === null || _invalidTableRowAttrs2 === void 0 ? void 0 : _invalidTableRowAttrs2.call(invalidTableRowAttrs, function(invalidAttr) {\n return virtualNode.hasAttr(invalidAttr);\n })) !== null && _invalidTableRowAttrs !== void 0 ? _invalidTableRowAttrs : [];\n if (invalidAttrs.length === 0) {\n return true;\n }\n var owner = getRowOwner(virtualNode);\n var ownerRole = owner && get_role_default(owner);\n if (!ownerRole || ownerRole === 'treegrid') {\n return true;\n }\n var messageKey = 'row'.concat(invalidAttrs.length > 1 ? 'Plural' : 'Singular');\n this.data({\n messageKey: messageKey,\n invalidAttrs: invalidAttrs,\n ownerRole: ownerRole\n });\n return false;\n }\n function getRowOwner(virtualNode) {\n if (!virtualNode.parent) {\n return;\n }\n var rowOwnerQuery = 'table:not([role]), [role~=\"treegrid\"], [role~=\"table\"], [role~=\"grid\"]';\n return closest_default(virtualNode, rowOwnerQuery);\n }\n function ariaConditionalCheckboxAttr(node, options, virtualNode) {\n var _virtualNode$props = virtualNode.props, nodeName2 = _virtualNode$props.nodeName, type2 = _virtualNode$props.type;\n var ariaChecked = normalizeAriaChecked(virtualNode.attr('aria-checked'));\n if (nodeName2 !== 'input' || type2 !== 'checkbox' || !ariaChecked) {\n return true;\n }\n var checkState = getCheckState(virtualNode);\n if (ariaChecked === checkState) {\n return true;\n }\n this.data({\n messageKey: 'checkbox',\n checkState: checkState\n });\n return false;\n }\n function getCheckState(vNode) {\n if (vNode.props.indeterminate) {\n return 'mixed';\n }\n return vNode.props.checked ? 'true' : 'false';\n }\n function normalizeAriaChecked(ariaCheckedVal) {\n if (!ariaCheckedVal) {\n return '';\n }\n ariaCheckedVal = ariaCheckedVal.toLowerCase();\n if ([ 'mixed', 'true' ].includes(ariaCheckedVal)) {\n return ariaCheckedVal;\n }\n return 'false';\n }\n var conditionalRoleMap = {\n row: ariaConditionalRowAttr,\n checkbox: ariaConditionalCheckboxAttr\n };\n function ariaConditionalAttrEvaluate(node, options, virtualNode) {\n var role = get_role_default(virtualNode);\n if (!conditionalRoleMap[role]) {\n return true;\n }\n return conditionalRoleMap[role].call(this, node, options, virtualNode);\n }\n function ariaBusyEvaluate(node, options, virtualNode) {\n return virtualNode.attr('aria-busy') === 'true';\n }\n function ariaAllowedRoleEvaluate(node) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var virtualNode = arguments.length > 2 ? arguments[2] : undefined;\n var _options$allowImplici = options.allowImplicit, allowImplicit = _options$allowImplici === void 0 ? true : _options$allowImplici, _options$ignoredTags = options.ignoredTags, ignoredTags = _options$ignoredTags === void 0 ? [] : _options$ignoredTags;\n var nodeName2 = virtualNode.props.nodeName;\n if (ignoredTags.map(function(tag) {\n return tag.toLowerCase();\n }).includes(nodeName2)) {\n return true;\n }\n var unallowedRoles = get_element_unallowed_roles_default(virtualNode, allowImplicit);\n if (unallowedRoles.length) {\n this.data(unallowedRoles);\n if (!_isVisibleToScreenReaders(virtualNode)) {\n return void 0;\n }\n return false;\n }\n return true;\n }\n var aria_allowed_role_evaluate_default = ariaAllowedRoleEvaluate;\n function ariaAllowedAttrEvaluate(node, options, virtualNode) {\n var invalid = [];\n var role = get_role_default(virtualNode);\n var allowed = allowed_attr_default(role);\n if (Array.isArray(options[role])) {\n allowed = unique_array_default(options[role].concat(allowed));\n }\n var _iterator23 = _createForOfIteratorHelper(virtualNode.attrNames), _step23;\n try {\n for (_iterator23.s(); !(_step23 = _iterator23.n()).done; ) {\n var attrName = _step23.value;\n if (validate_attr_default(attrName) && !allowed.includes(attrName) && !ignoredAttrs(attrName, virtualNode.attr(attrName), virtualNode)) {\n invalid.push(attrName);\n }\n }\n } catch (err) {\n _iterator23.e(err);\n } finally {\n _iterator23.f();\n }\n if (!invalid.length) {\n return true;\n }\n this.data(invalid.map(function(attrName) {\n return attrName + '=\"' + virtualNode.attr(attrName) + '\"';\n }));\n if (!role && !is_html_element_default(virtualNode) && !_isFocusable(virtualNode)) {\n return void 0;\n }\n return false;\n }\n function ignoredAttrs(attrName, attrValue, vNode) {\n if (attrName === 'aria-required' && attrValue === 'false') {\n return true;\n }\n if (attrName === 'aria-multiline' && attrValue === 'false' && vNode.hasAttr('contenteditable')) {\n return true;\n }\n return false;\n }\n function abstractroleEvaluate(node, options, virtualNode) {\n var abstractRoles = token_list_default(virtualNode.attr('role')).filter(function(role) {\n return get_role_type_default(role) === 'abstract';\n });\n if (abstractRoles.length > 0) {\n this.data(abstractRoles);\n return true;\n }\n return false;\n }\n var abstractrole_evaluate_default = abstractroleEvaluate;\n function xmlLangMismatchMatches(node) {\n var primaryLangValue = get_base_lang_default(node.getAttribute('lang'));\n var primaryXmlLangValue = get_base_lang_default(node.getAttribute('xml:lang'));\n return valid_langs_default(primaryLangValue) && valid_langs_default(primaryXmlLangValue);\n }\n var xml_lang_mismatch_matches_default = xmlLangMismatchMatches;\n function windowIsTopMatches(node) {\n return node.ownerDocument.defaultView.self === node.ownerDocument.defaultView.top;\n }\n var window_is_top_matches_default = windowIsTopMatches;\n function svgNamespaceMatches(node, virtualNode) {\n try {\n var nodeName2 = virtualNode.props.nodeName;\n if (nodeName2 === 'svg') {\n return true;\n }\n return !!closest_default(virtualNode, 'svg');\n } catch (_unused19) {\n return false;\n }\n }\n var svg_namespace_matches_default = svgNamespaceMatches;\n function widgetNotInline(node, vNode) {\n return matchesFns.every(function(fn) {\n return fn(node, vNode);\n });\n }\n var matchesFns = [ function(node, vNode) {\n return isWidgetType(vNode);\n }, function(node, vNode) {\n return isNotAreaElement(vNode);\n }, function(node, vNode) {\n return !svg_namespace_matches_default(node, vNode);\n }, function(node, vNode) {\n return _isFocusable(vNode);\n }, function(node, vNode) {\n return _isInTabOrder(vNode) || !hasWidgetAncestorInTabOrder(vNode);\n }, function(node) {\n return !is_in_text_block_default(node, {\n noLengthCompare: true\n });\n } ];\n function isWidgetType(vNode) {\n return get_role_type_default(vNode) === 'widget';\n }\n function isNotAreaElement(vNode) {\n return vNode.props.nodeName !== 'area';\n }\n var hasWidgetAncestorInTabOrder = memoize_default(function hasWidgetAncestorInTabOrderMemoized(vNode) {\n if (!(vNode !== null && vNode !== void 0 && vNode.parent)) {\n return false;\n }\n if (isWidgetType(vNode.parent) && _isInTabOrder(vNode.parent)) {\n return true;\n }\n return hasWidgetAncestorInTabOrderMemoized(vNode.parent);\n });\n function tableOrGridRoleMatches(_, vNode) {\n var role = get_role_default(vNode);\n return [ 'treegrid', 'grid', 'table' ].includes(role);\n }\n function summaryIsInteractiveMatches(_, virtualNode) {\n var parent = virtualNode.parent;\n if (parent.props.nodeName !== 'details' || isSlottedElm(virtualNode)) {\n return false;\n }\n var firstSummary = parent.children.find(function(child) {\n return child.props.nodeName === 'summary';\n });\n if (firstSummary !== virtualNode) {\n return false;\n }\n return true;\n }\n function isSlottedElm(vNode) {\n var _vNode$actualNode;\n var domParent = (_vNode$actualNode = vNode.actualNode) === null || _vNode$actualNode === void 0 ? void 0 : _vNode$actualNode.parentElement;\n return domParent && domParent !== vNode.parent.actualNode;\n }\n function skipLinkMatches(node) {\n return _isSkipLink(node) && is_offscreen_default(node);\n }\n var skip_link_matches_default = skipLinkMatches;\n function scrollableRegionFocusableMatches(node, virtualNode) {\n return get_scroll_default(node, 13) !== void 0 && _isComboboxPopup(virtualNode) === false && isNoneEmptyElement(virtualNode);\n }\n function isNoneEmptyElement(vNode) {\n return query_selector_all_default(vNode, '*').some(function(elm) {\n return has_content_virtual_default(elm, true, true);\n });\n }\n function presentationRoleConflictMatches(node, virtualNode) {\n return implicit_role_default(virtualNode, {\n chromiumRoles: true\n }) !== null;\n }\n var presentation_role_conflict_matches_default = presentationRoleConflictMatches;\n function pAsHeadingMatches(node) {\n var children = Array.from(node.parentNode.childNodes);\n var nodeText = node.textContent.trim();\n var isSentence = /[.!?:;](?![.!?:;])/g;\n if (nodeText.length === 0 || (nodeText.match(isSentence) || []).length >= 2) {\n return false;\n }\n var siblingsAfter = children.slice(children.indexOf(node) + 1).filter(function(elm) {\n return elm.nodeName.toUpperCase() === 'P' && elm.textContent.trim() !== '';\n });\n return siblingsAfter.length !== 0;\n }\n var p_as_heading_matches_default = pAsHeadingMatches;\n function noExplicitNameRequired(node, virtualNode) {\n var role = get_explicit_role_default(virtualNode);\n if (!role || [ 'none', 'presentation' ].includes(role)) {\n return true;\n }\n var _ref140 = aria_roles_default[role] || {}, accessibleNameRequired = _ref140.accessibleNameRequired;\n if (accessibleNameRequired || _isFocusable(virtualNode)) {\n return true;\n }\n return false;\n }\n var no_explicit_name_required_matches_default = noExplicitNameRequired;\n var object_is_loaded_matches_default = function object_is_loaded_matches_default(node, vNode) {\n return [ no_explicit_name_required_matches_default, objectHasLoaded ].every(function(fn) {\n return fn(node, vNode);\n });\n };\n function objectHasLoaded(node) {\n var _node$ownerDocument;\n if (!(node !== null && node !== void 0 && (_node$ownerDocument = node.ownerDocument) !== null && _node$ownerDocument !== void 0 && _node$ownerDocument.createRange)) {\n return true;\n }\n var range2 = node.ownerDocument.createRange();\n range2.setStart(node, 0);\n range2.setEnd(node, node.childNodes.length);\n return range2.getClientRects().length === 0;\n }\n function notHtmlMatches(node, virtualNode) {\n return virtualNode.props.nodeName !== 'html';\n }\n var not_html_matches_default = notHtmlMatches;\n function noRoleMatches(node, vNode) {\n return !vNode.attr('role');\n }\n var no_role_matches_default = noRoleMatches;\n function noNegativeTabindexMatches(node, virtualNode) {\n var tabindex = parse_tabindex_default(virtualNode.attr('tabindex'));\n return tabindex === null || tabindex >= 0;\n }\n var no_negative_tabindex_matches_default = noNegativeTabindexMatches;\n function noNamingMethodMatches(node, virtualNode) {\n var _get_element_spec_def3 = get_element_spec_default(virtualNode), namingMethods = _get_element_spec_def3.namingMethods;\n if (namingMethods && namingMethods.length !== 0) {\n return false;\n }\n if (get_explicit_role_default(virtualNode) === 'combobox' && query_selector_all_default(virtualNode, 'input:not([type=\"hidden\"])').length) {\n return false;\n }\n if (_isComboboxPopup(virtualNode, {\n popupRoles: [ 'listbox' ]\n })) {\n return false;\n }\n return true;\n }\n var no_naming_method_matches_default = noNamingMethodMatches;\n function noEmptyRoleMatches(node, virtualNode) {\n if (!virtualNode.hasAttr('role')) {\n return false;\n }\n if (!virtualNode.attr('role').trim()) {\n return false;\n }\n return true;\n }\n var no_empty_role_matches_default = noEmptyRoleMatches;\n function noAutoplayAudioMatches(node) {\n if (!node.currentSrc) {\n return false;\n }\n if (node.hasAttribute('paused') || node.hasAttribute('muted')) {\n return false;\n }\n return true;\n }\n var no_autoplay_audio_matches_default = noAutoplayAudioMatches;\n function nestedInteractiveMatches(node, virtualNode) {\n var role = get_role_default(virtualNode);\n if (!role) {\n return false;\n }\n return !!standards_default.ariaRoles[role].childrenPresentational;\n }\n var nested_interactive_matches_default = nestedInteractiveMatches;\n function linkInTextBlockMatches(node) {\n var text = sanitize_default(node.innerText);\n var role = get_explicit_role_default(node);\n if (role && role !== 'link') {\n return false;\n }\n if (!text) {\n return false;\n }\n if (!_isVisibleOnScreen(node)) {\n return false;\n }\n return is_in_text_block_default(node);\n }\n var link_in_text_block_matches_default = linkInTextBlockMatches;\n function dataTableMatches(node) {\n return !is_data_table_default(node) && !_isFocusable(node);\n }\n var layout_table_matches_default = dataTableMatches;\n function landmarkUniqueMatches(node, virtualNode) {\n return isLandmarkVirtual(virtualNode) && _isVisibleToScreenReaders(virtualNode);\n }\n function isLandmarkVirtual(vNode) {\n var landmarkRoles2 = get_aria_roles_by_type_default('landmark');\n var role = get_role_default(vNode);\n if (!role) {\n return false;\n }\n var nodeName2 = vNode.props.nodeName;\n if (nodeName2 === 'section' || nodeName2 === 'form') {\n var accessibleText2 = _accessibleTextVirtual(vNode);\n return !!accessibleText2;\n }\n return landmarkRoles2.indexOf(role) >= 0 || role === 'region';\n }\n function landmarkHasBodyContextMatches(node, virtualNode) {\n var nativeScopeFilter = 'article, aside, main, nav, section';\n return node.hasAttribute('role') || !find_up_virtual_default(virtualNode, nativeScopeFilter);\n }\n var landmark_has_body_context_matches_default = landmarkHasBodyContextMatches;\n function labelMatches(node, virtualNode) {\n if (virtualNode.props.nodeName !== 'input' || virtualNode.hasAttr('type') === false) {\n return true;\n }\n var type2 = virtualNode.attr('type').toLowerCase();\n return [ 'hidden', 'image', 'button', 'submit', 'reset' ].includes(type2) === false;\n }\n var label_matches_default = labelMatches;\n function labelContentNameMismatchMatches(node, virtualNode) {\n var role = get_role_default(node);\n if (!role) {\n return false;\n }\n var widgetRoles = get_aria_roles_by_type_default('widget');\n var isWidgetType2 = widgetRoles.includes(role);\n if (!isWidgetType2) {\n return false;\n }\n var rolesWithNameFromContents = get_aria_roles_supporting_name_from_content_default();\n if (!rolesWithNameFromContents.includes(role)) {\n return false;\n }\n if (!sanitize_default(_arialabelText(virtualNode)) && !sanitize_default(arialabelledby_text_default(node))) {\n return false;\n }\n if (!sanitize_default(visible_virtual_default(virtualNode))) {\n return false;\n }\n return true;\n }\n var label_content_name_mismatch_matches_default = labelContentNameMismatchMatches;\n function isVisibleOnScreenMatches(node, virtualNode) {\n return _isVisibleOnScreen(virtualNode);\n }\n function hasVisibleTextMatches(node) {\n return _isVisibleOnScreen(node);\n }\n function isInitiatorMatches(node, virtualNode, context) {\n return context.initiator;\n }\n var is_initiator_matches_default = isInitiatorMatches;\n function insertedIntoFocusOrderMatches(node) {\n return inserted_into_focus_order_default(node);\n }\n var inserted_into_focus_order_matches_default = insertedIntoFocusOrderMatches;\n function identicalLinksSamePurposeMatches(node, virtualNode) {\n var hasAccName = !!_accessibleTextVirtual(virtualNode);\n if (!hasAccName) {\n return false;\n }\n var role = get_role_default(node);\n if (role && role !== 'link') {\n return false;\n }\n return true;\n }\n var identical_links_same_purpose_matches_default = identicalLinksSamePurposeMatches;\n function htmlNamespaceMatches(node, virtualNode) {\n return !svg_namespace_matches_default(node, virtualNode);\n }\n var html_namespace_matches_default = htmlNamespaceMatches;\n function headingMatches(node, virtualNode) {\n return get_role_default(virtualNode) === 'heading';\n }\n function hasImplicitChromiumRoleMatches(node, virtualNode) {\n return implicit_role_default(virtualNode, {\n chromium: true\n }) !== null;\n }\n var has_implicit_chromium_role_matches_default = hasImplicitChromiumRoleMatches;\n function frameTitleHasTextMatches(node) {\n var title = node.getAttribute('title');\n return !!sanitize_default(title);\n }\n var frame_title_has_text_matches_default = frameTitleHasTextMatches;\n function frameFocusableContentMatches(node, virtualNode, context) {\n var _context$size, _context$size2;\n return !context.initiator && !context.focusable && ((_context$size = context.size) === null || _context$size === void 0 ? void 0 : _context$size.width) * ((_context$size2 = context.size) === null || _context$size2 === void 0 ? void 0 : _context$size2.height) > 1;\n }\n var frame_focusable_content_matches_default = frameFocusableContentMatches;\n function duplicateIdMiscMatches(node) {\n var id = node.getAttribute('id').trim();\n var idSelector = '*[id=\"'.concat(escape_selector_default(id), '\"]');\n var idMatchingElms = Array.from(get_root_node_default2(node).querySelectorAll(idSelector));\n return !is_accessible_ref_default(node) && idMatchingElms.every(function(elm) {\n return !_isFocusable(elm);\n });\n }\n var duplicate_id_misc_matches_default = duplicateIdMiscMatches;\n function duplicateIdAriaMatches(node) {\n return is_accessible_ref_default(node);\n }\n var duplicate_id_aria_matches_default = duplicateIdAriaMatches;\n function duplicateIdActiveMatches(node) {\n var id = node.getAttribute('id').trim();\n var idSelector = '*[id=\"'.concat(escape_selector_default(id), '\"]');\n var idMatchingElms = Array.from(get_root_node_default2(node).querySelectorAll(idSelector));\n return !is_accessible_ref_default(node) && idMatchingElms.some(_isFocusable);\n }\n var duplicate_id_active_matches_default = duplicateIdActiveMatches;\n function dataTableMatches2(node) {\n return is_data_table_default(node);\n }\n var data_table_matches_default = dataTableMatches2;\n function dataTableLargeMatches(node) {\n if (is_data_table_default(node)) {\n var tableArray = to_grid_default(node);\n return tableArray.length >= 3 && tableArray[0].length >= 3 && tableArray[1].length >= 3 && tableArray[2].length >= 3;\n }\n return false;\n }\n var data_table_large_matches_default = dataTableLargeMatches;\n function colorContrastMatches(node, virtualNode) {\n var _virtualNode$props2 = virtualNode.props, nodeName2 = _virtualNode$props2.nodeName, inputType = _virtualNode$props2.type;\n if (nodeName2 === 'option') {\n return false;\n }\n if (nodeName2 === 'select' && !node.options.length) {\n return false;\n }\n var nonTextInput = [ 'hidden', 'range', 'color', 'checkbox', 'radio', 'image' ];\n if (nodeName2 === 'input' && nonTextInput.includes(inputType)) {\n return false;\n }\n if (is_disabled_default(virtualNode) || _isInert(virtualNode)) {\n return false;\n }\n var formElements = [ 'input', 'select', 'textarea' ];\n if (formElements.includes(nodeName2)) {\n var style = window.getComputedStyle(node);\n var textIndent = parseInt(style.getPropertyValue('text-indent'), 10);\n if (textIndent) {\n var rect = node.getBoundingClientRect();\n rect = {\n top: rect.top,\n bottom: rect.bottom,\n left: rect.left + textIndent,\n right: rect.right + textIndent\n };\n if (!visually_overlaps_default(rect, node)) {\n return false;\n }\n }\n return true;\n }\n var nodeParentLabel = find_up_virtual_default(virtualNode, 'label');\n if (nodeName2 === 'label' || nodeParentLabel) {\n var labelNode = nodeParentLabel || node;\n var labelVirtual3 = nodeParentLabel ? get_node_from_tree_default(nodeParentLabel) : virtualNode;\n if (labelNode.htmlFor) {\n var doc = get_root_node_default2(labelNode);\n var explicitControl = doc.getElementById(labelNode.htmlFor);\n var explicitControlVirtual = explicitControl && get_node_from_tree_default(explicitControl);\n if (explicitControlVirtual && is_disabled_default(explicitControlVirtual)) {\n return false;\n }\n }\n var query = 'input:not([type=\"hidden\"],[type=\"image\"],[type=\"button\"],[type=\"submit\"],[type=\"reset\"]), select, textarea';\n var implicitControl = query_selector_all_default(labelVirtual3, query)[0];\n if (implicitControl && is_disabled_default(implicitControl)) {\n return false;\n }\n }\n var ariaLabelledbyControls = [];\n var ancestorNode = virtualNode;\n while (ancestorNode) {\n if (ancestorNode.props.id) {\n var virtualControls = get_accessible_refs_default(ancestorNode).filter(function(control) {\n return token_list_default(control.getAttribute('aria-labelledby') || '').includes(ancestorNode.props.id);\n }).map(function(control) {\n return get_node_from_tree_default(control);\n });\n ariaLabelledbyControls.push.apply(ariaLabelledbyControls, _toConsumableArray(virtualControls));\n }\n ancestorNode = ancestorNode.parent;\n }\n if (ariaLabelledbyControls.length > 0 && ariaLabelledbyControls.every(is_disabled_default)) {\n return false;\n }\n if (!hasRealTextChildren(virtualNode)) {\n return false;\n }\n if (!parseFloat(virtualNode.getComputedStylePropertyValue('font-size'))) {\n return false;\n }\n var range2 = document.createRange();\n var childNodes = virtualNode.children;\n for (var index = 0; index < childNodes.length; index++) {\n var child = childNodes[index];\n if (child.actualNode.nodeType === 3 && sanitize_default(child.actualNode.nodeValue) !== '') {\n range2.selectNodeContents(child.actualNode);\n }\n }\n var rects = Array.from(range2.getClientRects());\n var clippingAncestors = get_overflow_hidden_ancestors_default(virtualNode);\n return rects.some(function(rect) {\n var overlaps = visually_overlaps_default(rect, node);\n if (!clippingAncestors.length) {\n return overlaps;\n }\n var withinOverflow = clippingAncestors.some(function(overflowNode) {\n return _rectsOverlap(rect, overflowNode.boundingClientRect);\n });\n return overlaps && withinOverflow;\n });\n }\n var color_contrast_matches_default = colorContrastMatches;\n var removeUnicodeOptions = {\n emoji: true,\n nonBmp: false,\n punctuations: true\n };\n function hasRealTextChildren(virtualNode) {\n var visibleText = visible_virtual_default(virtualNode, false, true);\n if (visibleText === '' || remove_unicode_default(visibleText, removeUnicodeOptions) === '') {\n return false;\n }\n return virtualNode.children.some(function(vChild) {\n return vChild.props.nodeName === '#text' && !_isIconLigature(vChild);\n });\n }\n function bypassMatches(node, virtualNode, context) {\n if (is_initiator_matches_default(node, virtualNode, context)) {\n return !!node.querySelector('a[href]');\n }\n return true;\n }\n var bypass_matches_default = bypassMatches;\n function autocompleteMatches(node, virtualNode) {\n var autocomplete2 = virtualNode.attr('autocomplete');\n if (!autocomplete2 || sanitize_default(autocomplete2) === '') {\n return false;\n }\n var nodeName2 = virtualNode.props.nodeName;\n if ([ 'textarea', 'input', 'select' ].includes(nodeName2) === false) {\n return false;\n }\n var ariaReadonly = virtualNode.attr('aria-readonly') || 'false';\n if (virtualNode.hasAttr('readonly') || ariaReadonly.toLowerCase() === 'true') {\n return false;\n }\n var excludedInputTypes = [ 'submit', 'reset', 'button', 'hidden' ];\n if (nodeName2 === 'input' && excludedInputTypes.includes(virtualNode.props.type)) {\n return false;\n }\n var ariaDisabled = virtualNode.attr('aria-disabled') || 'false';\n if (virtualNode.hasAttr('disabled') || ariaDisabled.toLowerCase() === 'true') {\n return false;\n }\n var role = get_explicit_role_default(virtualNode);\n var tabIndex = parse_tabindex_default(virtualNode.attr('tabindex'));\n if (tabIndex < 0 && virtualNode.hasAttr('role')) {\n var roleDef = standards_default.ariaRoles[role];\n if (roleDef === void 0 || roleDef.type !== 'widget') {\n return false;\n }\n }\n if (tabIndex < 0 && virtualNode.actualNode && !_isVisibleOnScreen(virtualNode) && !_isVisibleToScreenReaders(virtualNode)) {\n return false;\n }\n return true;\n }\n var autocomplete_matches_default = autocompleteMatches;\n function ariaRequiredParentMatches(node, virtualNode) {\n var role = get_explicit_role_default(virtualNode);\n return !!required_context_default(role);\n }\n var aria_required_parent_matches_default = ariaRequiredParentMatches;\n function ariaRequiredChildrenMatches(node, virtualNode) {\n var role = get_explicit_role_default(virtualNode, {\n dpub: true\n });\n return !!required_owned_default(role);\n }\n var aria_required_children_matches_default = ariaRequiredChildrenMatches;\n function shouldMatchElement(el) {\n if (!el) {\n return true;\n }\n if (el.getAttribute('aria-hidden') === 'true') {\n return false;\n }\n return shouldMatchElement(get_composed_parent_default(el));\n }\n function ariaHiddenFocusMatches(node) {\n return shouldMatchElement(get_composed_parent_default(node));\n }\n var aria_hidden_focus_matches_default = ariaHiddenFocusMatches;\n function ariaHasAttrMatches(node, virtualNode) {\n var aria = /^aria-/;\n return virtualNode.attrNames.some(function(attr) {\n return aria.test(attr);\n });\n }\n var aria_has_attr_matches_default = ariaHasAttrMatches;\n function ariaAllowedRoleMatches(node, virtualNode) {\n return get_explicit_role_default(virtualNode, {\n dpub: true,\n fallback: true\n }) !== null;\n }\n var aria_allowed_role_matches_default = ariaAllowedRoleMatches;\n function ariaAllowedAttrMatches(node, virtualNode) {\n var aria = /^aria-/;\n var attrs = virtualNode.attrNames;\n if (attrs.length) {\n for (var _i29 = 0, l = attrs.length; _i29 < l; _i29++) {\n if (aria.test(attrs[_i29])) {\n return true;\n }\n }\n }\n return false;\n }\n var aria_allowed_attr_matches_default = ariaAllowedAttrMatches;\n var metadataFunctionMap = {\n 'abstractrole-evaluate': abstractrole_evaluate_default,\n 'accesskeys-after': accesskeys_after_default,\n 'accesskeys-evaluate': accesskeys_evaluate_default,\n 'alt-space-value-evaluate': alt_space_value_evaluate_default,\n 'aria-allowed-attr-evaluate': ariaAllowedAttrEvaluate,\n 'aria-allowed-attr-matches': aria_allowed_attr_matches_default,\n 'aria-allowed-role-evaluate': aria_allowed_role_evaluate_default,\n 'aria-allowed-role-matches': aria_allowed_role_matches_default,\n 'aria-busy-evaluate': ariaBusyEvaluate,\n 'aria-conditional-attr-evaluate': ariaConditionalAttrEvaluate,\n 'aria-conditional-checkbox-attr-evaluate': ariaConditionalCheckboxAttr,\n 'aria-conditional-row-attr-evaluate': ariaConditionalRowAttr,\n 'aria-errormessage-evaluate': ariaErrormessageEvaluate,\n 'aria-has-attr-matches': aria_has_attr_matches_default,\n 'aria-hidden-body-evaluate': aria_hidden_body_evaluate_default,\n 'aria-hidden-focus-matches': aria_hidden_focus_matches_default,\n 'aria-label-evaluate': aria_label_evaluate_default,\n 'aria-labelledby-evaluate': aria_labelledby_evaluate_default,\n 'aria-level-evaluate': aria_level_evaluate_default,\n 'aria-prohibited-attr-evaluate': ariaProhibitedAttrEvaluate,\n 'aria-required-attr-evaluate': ariaRequiredAttrEvaluate,\n 'aria-required-children-evaluate': ariaRequiredChildrenEvaluate,\n 'aria-required-children-matches': aria_required_children_matches_default,\n 'aria-required-parent-evaluate': aria_required_parent_evaluate_default,\n 'aria-required-parent-matches': aria_required_parent_matches_default,\n 'aria-roledescription-evaluate': aria_roledescription_evaluate_default,\n 'aria-unsupported-attr-evaluate': aria_unsupported_attr_evaluate_default,\n 'aria-valid-attr-evaluate': aria_valid_attr_evaluate_default,\n 'aria-valid-attr-value-evaluate': ariaValidAttrValueEvaluate,\n 'attr-non-space-content-evaluate': attr_non_space_content_evaluate_default,\n 'autocomplete-appropriate-evaluate': autocomplete_appropriate_evaluate_default,\n 'autocomplete-matches': autocomplete_matches_default,\n 'autocomplete-valid-evaluate': autocomplete_valid_evaluate_default,\n 'avoid-inline-spacing-evaluate': avoid_inline_spacing_evaluate_default,\n 'braille-label-equivalent-evaluate': brailleLabelEquivalentEvaluate,\n 'braille-roledescription-equivalent-evaluate': brailleRoleDescriptionEquivalentEvaluate,\n 'bypass-matches': bypass_matches_default,\n 'caption-evaluate': caption_evaluate_default,\n 'caption-faked-evaluate': caption_faked_evaluate_default,\n 'color-contrast-evaluate': colorContrastEvaluate,\n 'color-contrast-matches': color_contrast_matches_default,\n 'css-orientation-lock-evaluate': css_orientation_lock_evaluate_default,\n 'data-table-large-matches': data_table_large_matches_default,\n 'data-table-matches': data_table_matches_default,\n 'deprecatedrole-evaluate': deprecatedroleEvaluate,\n 'dlitem-evaluate': dlitem_evaluate_default,\n 'doc-has-title-evaluate': doc_has_title_evaluate_default,\n 'duplicate-id-active-matches': duplicate_id_active_matches_default,\n 'duplicate-id-after': duplicate_id_after_default,\n 'duplicate-id-aria-matches': duplicate_id_aria_matches_default,\n 'duplicate-id-evaluate': duplicate_id_evaluate_default,\n 'duplicate-id-misc-matches': duplicate_id_misc_matches_default,\n 'duplicate-img-label-evaluate': duplicate_img_label_evaluate_default,\n 'exists-evaluate': exists_evaluate_default,\n 'explicit-evaluate': explicit_evaluate_default,\n 'fallbackrole-evaluate': fallbackrole_evaluate_default,\n 'focusable-content-evaluate': focusable_content_evaluate_default,\n 'focusable-disabled-evaluate': focusable_disabled_evaluate_default,\n 'focusable-element-evaluate': focusable_element_evaluate_default,\n 'focusable-modal-open-evaluate': focusable_modal_open_evaluate_default,\n 'focusable-no-name-evaluate': focusable_no_name_evaluate_default,\n 'focusable-not-tabbable-evaluate': focusable_not_tabbable_evaluate_default,\n 'frame-focusable-content-evaluate': frameFocusableContentEvaluate,\n 'frame-focusable-content-matches': frame_focusable_content_matches_default,\n 'frame-tested-after': frame_tested_after_default,\n 'frame-tested-evaluate': frame_tested_evaluate_default,\n 'frame-title-has-text-matches': frame_title_has_text_matches_default,\n 'has-alt-evaluate': has_alt_evaluate_default,\n 'has-descendant-after': has_descendant_after_default,\n 'has-descendant-evaluate': has_descendant_evaluate_default,\n 'has-global-aria-attribute-evaluate': has_global_aria_attribute_evaluate_default,\n 'has-implicit-chromium-role-matches': has_implicit_chromium_role_matches_default,\n 'has-lang-evaluate': has_lang_evaluate_default,\n 'has-text-content-evaluate': hasTextContentEvaluate,\n 'has-widget-role-evaluate': has_widget_role_evaluate_default,\n 'heading-matches': headingMatches,\n 'heading-order-after': headingOrderAfter,\n 'heading-order-evaluate': heading_order_evaluate_default,\n 'help-same-as-label-evaluate': help_same_as_label_evaluate_default,\n 'hidden-content-evaluate': hidden_content_evaluate_default,\n 'hidden-explicit-label-evaluate': hidden_explicit_label_evaluate_default,\n 'html-namespace-matches': html_namespace_matches_default,\n 'html5-scope-evaluate': html5_scope_evaluate_default,\n 'identical-links-same-purpose-after': identical_links_same_purpose_after_default,\n 'identical-links-same-purpose-evaluate': identical_links_same_purpose_evaluate_default,\n 'identical-links-same-purpose-matches': identical_links_same_purpose_matches_default,\n 'implicit-evaluate': implicit_evaluate_default,\n 'inline-style-property-evaluate': inlineStyleProperty,\n 'inserted-into-focus-order-matches': inserted_into_focus_order_matches_default,\n 'internal-link-present-evaluate': internal_link_present_evaluate_default,\n 'invalid-children-evaluate': invalidChildrenEvaluate,\n 'invalidrole-evaluate': invalidrole_evaluate_default,\n 'is-element-focusable-evaluate': is_element_focusable_evaluate_default,\n 'is-initiator-matches': is_initiator_matches_default,\n 'is-on-screen-evaluate': is_on_screen_evaluate_default,\n 'is-visible-matches': hasVisibleTextMatches,\n 'is-visible-on-screen-matches': isVisibleOnScreenMatches,\n 'label-content-name-mismatch-evaluate': label_content_name_mismatch_evaluate_default,\n 'label-content-name-mismatch-matches': label_content_name_mismatch_matches_default,\n 'label-matches': label_matches_default,\n 'landmark-has-body-context-matches': landmark_has_body_context_matches_default,\n 'landmark-is-top-level-evaluate': landmark_is_top_level_evaluate_default,\n 'landmark-is-unique-after': landmark_is_unique_after_default,\n 'landmark-is-unique-evaluate': landmark_is_unique_evaluate_default,\n 'landmark-unique-matches': landmarkUniqueMatches,\n 'layout-table-matches': layout_table_matches_default,\n 'link-in-text-block-evaluate': link_in_text_block_evaluate_default,\n 'link-in-text-block-matches': link_in_text_block_matches_default,\n 'link-in-text-block-style-evaluate': linkInTextBlockStyleEvaluate,\n 'listitem-evaluate': listitemEvaluate,\n 'matches-definition-evaluate': matches_definition_evaluate_default,\n 'meta-refresh-evaluate': metaRefreshEvaluate,\n 'meta-viewport-scale-evaluate': meta_viewport_scale_evaluate_default,\n 'multiple-label-evaluate': multiple_label_evaluate_default,\n 'nested-interactive-matches': nested_interactive_matches_default,\n 'no-autoplay-audio-evaluate': no_autoplay_audio_evaluate_default,\n 'no-autoplay-audio-matches': no_autoplay_audio_matches_default,\n 'no-empty-role-matches': no_empty_role_matches_default,\n 'no-explicit-name-required-matches': no_explicit_name_required_matches_default,\n 'no-focusable-content-evaluate': noFocusableContentEvaluate,\n 'no-implicit-explicit-label-evaluate': no_implicit_explicit_label_evaluate_default,\n 'no-naming-method-matches': no_naming_method_matches_default,\n 'no-negative-tabindex-matches': no_negative_tabindex_matches_default,\n 'no-role-matches': no_role_matches_default,\n 'non-empty-if-present-evaluate': non_empty_if_present_evaluate_default,\n 'not-html-matches': not_html_matches_default,\n 'object-is-loaded-matches': object_is_loaded_matches_default,\n 'only-dlitems-evaluate': onlyDlitemsEvaluate,\n 'only-listitems-evaluate': only_listitems_evaluate_default,\n 'p-as-heading-evaluate': p_as_heading_evaluate_default,\n 'p-as-heading-matches': p_as_heading_matches_default,\n 'page-no-duplicate-after': page_no_duplicate_after_default,\n 'page-no-duplicate-evaluate': page_no_duplicate_evaluate_default,\n 'presentation-role-conflict-matches': presentation_role_conflict_matches_default,\n 'presentational-role-evaluate': presentationalRoleEvaluate,\n 'region-after': region_after_default,\n 'region-evaluate': regionEvaluate,\n 'same-caption-summary-evaluate': same_caption_summary_evaluate_default,\n 'scope-value-evaluate': scope_value_evaluate_default,\n 'scrollable-region-focusable-matches': scrollableRegionFocusableMatches,\n 'skip-link-evaluate': skip_link_evaluate_default,\n 'skip-link-matches': skip_link_matches_default,\n 'structured-dlitems-evaluate': structured_dlitems_evaluate_default,\n 'summary-interactive-matches': summaryIsInteractiveMatches,\n 'svg-namespace-matches': svg_namespace_matches_default,\n 'svg-non-empty-title-evaluate': svg_non_empty_title_evaluate_default,\n 'tabindex-evaluate': tabindex_evaluate_default,\n 'table-or-grid-role-matches': tableOrGridRoleMatches,\n 'target-offset-evaluate': targetOffsetEvaluate,\n 'target-size-evaluate': targetSizeEvaluate,\n 'td-has-header-evaluate': td_has_header_evaluate_default,\n 'td-headers-attr-evaluate': tdHeadersAttrEvaluate,\n 'th-has-data-cells-evaluate': th_has_data_cells_evaluate_default,\n 'title-only-evaluate': title_only_evaluate_default,\n 'unique-frame-title-after': unique_frame_title_after_default,\n 'unique-frame-title-evaluate': unique_frame_title_evaluate_default,\n 'unsupportedrole-evaluate': unsupportedrole_evaluate_default,\n 'valid-lang-evaluate': valid_lang_evaluate_default,\n 'valid-scrollable-semantics-evaluate': valid_scrollable_semantics_evaluate_default,\n 'widget-not-inline-matches': widgetNotInline,\n 'window-is-top-matches': window_is_top_matches_default,\n 'xml-lang-mismatch-evaluate': xml_lang_mismatch_evaluate_default,\n 'xml-lang-mismatch-matches': xml_lang_mismatch_matches_default\n };\n var metadata_function_map_default = metadataFunctionMap;\n function CheckResult(check) {\n this.id = check.id;\n this.data = null;\n this.relatedNodes = [];\n this.result = null;\n }\n var check_result_default = CheckResult;\n function createExecutionContext(spec) {\n if (typeof spec === 'string') {\n if (metadata_function_map_default[spec]) {\n return metadata_function_map_default[spec];\n }\n if (/^\\s*function[\\s\\w]*\\(/.test(spec)) {\n return new Function('return ' + spec + ';')();\n }\n throw new ReferenceError('Function ID does not exist in the metadata-function-map: '.concat(spec));\n }\n return spec;\n }\n function normalizeOptions() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (Array.isArray(options) || _typeof(options) !== 'object') {\n options = {\n value: options\n };\n }\n return options;\n }\n function Check(spec) {\n if (spec) {\n this.id = spec.id;\n this.configure(spec);\n }\n }\n Check.prototype.enabled = true;\n Check.prototype.run = function run(node, options, context, resolve, reject) {\n options = options || {};\n var enabled = options.hasOwnProperty('enabled') ? options.enabled : this.enabled;\n var checkOptions = this.getOptions(options.options);\n if (enabled) {\n var checkResult = new check_result_default(this);\n var helper = check_helper_default(checkResult, options, resolve, reject);\n var result;\n try {\n result = this.evaluate.call(helper, node.actualNode, checkOptions, node, context);\n } catch (e) {\n if (node && node.actualNode) {\n e.errorNode = node_serializer_default.toSpec(node);\n }\n reject(e);\n return;\n }\n if (!helper.isAsync) {\n checkResult.result = result;\n resolve(checkResult);\n }\n } else {\n resolve(null);\n }\n };\n Check.prototype.runSync = function runSync(node, options, context) {\n options = options || {};\n var _options2 = options, _options2$enabled = _options2.enabled, enabled = _options2$enabled === void 0 ? this.enabled : _options2$enabled;\n if (!enabled) {\n return null;\n }\n var checkOptions = this.getOptions(options.options);\n var checkResult = new check_result_default(this);\n var helper = check_helper_default(checkResult, options);\n helper.async = function async() {\n throw new Error('Cannot run async check while in a synchronous run');\n };\n var result;\n try {\n result = this.evaluate.call(helper, node.actualNode, checkOptions, node, context);\n } catch (e) {\n if (node && node.actualNode) {\n e.errorNode = node_serializer_default.toSpec(node);\n }\n throw e;\n }\n checkResult.result = result;\n return checkResult;\n };\n Check.prototype.configure = function configure2(spec) {\n var _this0 = this;\n if (!spec.evaluate || metadata_function_map_default[spec.evaluate]) {\n this._internalCheck = true;\n }\n if (spec.hasOwnProperty('enabled')) {\n this.enabled = spec.enabled;\n }\n if (spec.hasOwnProperty('options')) {\n if (this._internalCheck) {\n this.options = normalizeOptions(spec.options);\n } else {\n this.options = spec.options;\n }\n }\n [ 'evaluate', 'after' ].filter(function(prop) {\n return spec.hasOwnProperty(prop);\n }).forEach(function(prop) {\n return _this0[prop] = createExecutionContext(spec[prop]);\n });\n };\n Check.prototype.getOptions = function getOptions(options) {\n if (this._internalCheck) {\n return deep_merge_default(this.options, normalizeOptions(options || {}));\n } else {\n return options || this.options;\n }\n };\n var check_default = Check;\n function RuleResult(rule) {\n this.id = rule.id;\n this.result = constants_default.NA;\n this.pageLevel = rule.pageLevel;\n this.impact = null;\n this.nodes = [];\n }\n var rule_result_default = RuleResult;\n function Rule(spec, parentAudit) {\n this._audit = parentAudit;\n this.id = spec.id;\n this.selector = spec.selector || '*';\n if (spec.impact) {\n assert_default(constants_default.impact.includes(spec.impact), 'Impact '.concat(spec.impact, ' is not a valid impact'));\n this.impact = spec.impact;\n }\n this.excludeHidden = typeof spec.excludeHidden === 'boolean' ? spec.excludeHidden : true;\n this.enabled = typeof spec.enabled === 'boolean' ? spec.enabled : true;\n this.pageLevel = typeof spec.pageLevel === 'boolean' ? spec.pageLevel : false;\n this.reviewOnFail = typeof spec.reviewOnFail === 'boolean' ? spec.reviewOnFail : false;\n this.any = spec.any || [];\n this.all = spec.all || [];\n this.none = spec.none || [];\n this.tags = spec.tags || [];\n this.preload = spec.preload ? true : false;\n this.actIds = spec.actIds;\n if (spec.matches) {\n this.matches = createExecutionContext(spec.matches);\n }\n }\n Rule.prototype.matches = function matches3() {\n return true;\n };\n Rule.prototype.gather = function gather(context) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var markStart = 'mark_gather_start_' + this.id;\n var markEnd = 'mark_gather_end_' + this.id;\n var markHiddenStart = 'mark_isVisibleToScreenReaders_start_' + this.id;\n var markHiddenEnd = 'mark_isVisibleToScreenReaders_end_' + this.id;\n if (options.performanceTimer) {\n performance_timer_default.mark(markStart);\n }\n var elements = _select(this.selector, context);\n if (this.excludeHidden) {\n if (options.performanceTimer) {\n performance_timer_default.mark(markHiddenStart);\n }\n elements = elements.filter(function(element) {\n return _isVisibleToScreenReaders(element);\n });\n if (options.performanceTimer) {\n performance_timer_default.mark(markHiddenEnd);\n performance_timer_default.measure('rule_' + this.id + '#gather_axe.utils.isVisibleToScreenReaders', markHiddenStart, markHiddenEnd);\n }\n }\n if (options.performanceTimer) {\n performance_timer_default.mark(markEnd);\n performance_timer_default.measure('rule_' + this.id + '#gather', markStart, markEnd);\n }\n return elements;\n };\n Rule.prototype.runChecks = function runChecks(type2, node, options, context, resolve, reject) {\n var self2 = this;\n var checkQueue = queue_default();\n this[type2].forEach(function(c4) {\n var check = self2._audit.checks[c4.id || c4];\n var option = get_check_option_default(check, self2.id, options);\n checkQueue.defer(function(res, rej) {\n check.run(node, option, context, res, function(error) {\n rej(new rule_error_default({\n ruleId: self2.id,\n method: ''.concat(check.id, '#evaluate'),\n errorNode: new dq_element_default(node),\n error: error\n }));\n });\n });\n });\n checkQueue.then(function(results) {\n results = results.filter(function(check) {\n return check;\n });\n resolve({\n type: type2,\n results: results\n });\n })['catch'](reject);\n };\n Rule.prototype.runChecksSync = function runChecksSync(type2, node, options, context) {\n var self2 = this;\n var results = [];\n this[type2].forEach(function(c4) {\n var check = self2._audit.checks[c4.id || c4];\n var option = get_check_option_default(check, self2.id, options);\n results.push(check.runSync(node, option, context));\n });\n results = results.filter(function(check) {\n return check;\n });\n return {\n type: type2,\n results: results\n };\n };\n Rule.prototype.run = function run2(context) {\n var _this1 = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var resolve = arguments.length > 2 ? arguments[2] : undefined;\n var reject = arguments.length > 3 ? arguments[3] : undefined;\n if (options.performanceTimer) {\n this._trackPerformance();\n }\n var q = queue_default();\n var ruleResult = new rule_result_default(this);\n var nodes;\n try {\n nodes = this.gatherAndMatchNodes(context, options);\n } catch (error) {\n reject(error);\n return;\n }\n if (options.performanceTimer) {\n this._logGatherPerformance(nodes);\n }\n nodes.forEach(function(node) {\n q.defer(function(resolveNode, rejectNode) {\n var checkQueue = queue_default();\n [ 'any', 'all', 'none' ].forEach(function(type2) {\n checkQueue.defer(function(res, rej) {\n _this1.runChecks(type2, node, options, context, res, rej);\n });\n });\n checkQueue.then(function(results) {\n var result = getResult(results);\n if (result) {\n result.node = new dq_element_default(node);\n ruleResult.nodes.push(result);\n if (_this1.reviewOnFail) {\n [ 'any', 'all' ].forEach(function(type2) {\n result[type2].forEach(function(checkResult) {\n if (checkResult.result === false) {\n checkResult.result = void 0;\n }\n });\n });\n result.none.forEach(function(checkResult) {\n if (checkResult.result === true) {\n checkResult.result = void 0;\n }\n });\n }\n }\n resolveNode();\n })['catch'](function(err2) {\n return rejectNode(err2);\n });\n });\n });\n q.then(function() {\n if (options.performanceTimer) {\n _this1._logRulePerformance();\n }\n setTimeout(function() {\n resolve(ruleResult);\n }, 0);\n })['catch'](function(error) {\n if (options.performanceTimer) {\n _this1._logRulePerformance();\n }\n reject(error);\n });\n };\n Rule.prototype.runSync = function runSync2(context) {\n var _this10 = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (options.performanceTimer) {\n this._trackPerformance();\n }\n var ruleResult = new rule_result_default(this);\n var nodes = this.gatherAndMatchNodes(context, options);\n if (options.performanceTimer) {\n this._logGatherPerformance(nodes);\n }\n nodes.forEach(function(node) {\n var results = [];\n [ 'any', 'all', 'none' ].forEach(function(type2) {\n results.push(_this10.runChecksSync(type2, node, options, context));\n });\n var result = getResult(results);\n if (result) {\n result.node = node.actualNode ? new dq_element_default(node) : null;\n ruleResult.nodes.push(result);\n if (_this10.reviewOnFail) {\n [ 'any', 'all' ].forEach(function(type2) {\n result[type2].forEach(function(checkResult) {\n if (checkResult.result === false) {\n checkResult.result = void 0;\n }\n });\n });\n result.none.forEach(function(checkResult) {\n if (checkResult.result === true) {\n checkResult.result = void 0;\n }\n });\n }\n }\n });\n if (options.performanceTimer) {\n this._logRulePerformance();\n }\n return ruleResult;\n };\n Rule.prototype._trackPerformance = function _trackPerformance() {\n this._markStart = 'mark_rule_start_' + this.id;\n this._markEnd = 'mark_rule_end_' + this.id;\n this._markChecksStart = 'mark_runchecks_start_' + this.id;\n this._markChecksEnd = 'mark_runchecks_end_' + this.id;\n };\n Rule.prototype._logGatherPerformance = function _logGatherPerformance(nodes) {\n log_default('gather for '.concat(this.id, ' (').concat(nodes.length, ' nodes): ').concat(performance_timer_default.timeElapsed(), 'ms'));\n performance_timer_default.mark(this._markChecksStart);\n };\n Rule.prototype._logRulePerformance = function _logRulePerformance() {\n performance_timer_default.mark(this._markChecksEnd);\n performance_timer_default.mark(this._markEnd);\n performance_timer_default.measure('runchecks_' + this.id, this._markChecksStart, this._markChecksEnd);\n performance_timer_default.measure('rule_' + this.id, this._markStart, this._markEnd);\n };\n function getResult(results) {\n if (results.length) {\n var hasResults = false;\n var result = {};\n results.forEach(function(r) {\n var res = r.results.filter(function(_result) {\n return _result;\n });\n result[r.type] = res;\n if (res.length) {\n hasResults = true;\n }\n });\n if (hasResults) {\n return result;\n }\n return null;\n }\n }\n Rule.prototype.gatherAndMatchNodes = function gatherAndMatchNodes(context, options) {\n var _this11 = this;\n var markMatchesStart = 'mark_matches_start_' + this.id;\n var markMatchesEnd = 'mark_matches_end_' + this.id;\n var nodes = this.gather(context, options);\n if (options.performanceTimer) {\n performance_timer_default.mark(markMatchesStart);\n }\n nodes = nodes.filter(function(node) {\n try {\n return _this11.matches(node.actualNode, node, context);\n } catch (error) {\n throw new rule_error_default({\n ruleId: _this11.id,\n method: '#matches',\n errorNode: new dq_element_default(node),\n error: error\n });\n }\n });\n if (options.performanceTimer) {\n performance_timer_default.mark(markMatchesEnd);\n performance_timer_default.measure('rule_' + this.id + '#matches', markMatchesStart, markMatchesEnd);\n }\n return nodes;\n };\n function findAfterChecks(rule) {\n return get_all_checks_default(rule).map(function(c4) {\n var check = rule._audit.checks[c4.id || c4];\n return check && typeof check.after === 'function' ? check : null;\n }).filter(Boolean);\n }\n function findCheckResults(nodes, checkID) {\n var checkResults = [];\n nodes.forEach(function(nodeResult) {\n var checks = get_all_checks_default(nodeResult);\n checks.forEach(function(checkResult) {\n if (checkResult.id === checkID) {\n checkResult.node = nodeResult.node;\n checkResults.push(checkResult);\n }\n });\n });\n return checkResults;\n }\n function filterChecks(checks) {\n return checks.filter(function(check) {\n return check.filtered !== true;\n });\n }\n function sanitizeNodes(result) {\n var checkTypes2 = [ 'any', 'all', 'none' ];\n var nodes = result.nodes.filter(function(detail) {\n var length = 0;\n checkTypes2.forEach(function(type2) {\n detail[type2] = filterChecks(detail[type2]);\n length += detail[type2].length;\n });\n return length > 0;\n });\n if (result.pageLevel && nodes.length) {\n nodes = [ nodes.reduce(function(a2, b2) {\n if (a2) {\n checkTypes2.forEach(function(type2) {\n a2[type2].push.apply(a2[type2], b2[type2]);\n });\n return a2;\n }\n }) ];\n }\n return nodes;\n }\n Rule.prototype.after = function after(result, options) {\n var _this12 = this;\n var afterChecks = findAfterChecks(this);\n afterChecks.forEach(function(check) {\n var beforeResults = findCheckResults(result.nodes, check.id);\n var checkOption = get_check_option_default(check, _this12.id, options);\n var afterResults;\n try {\n afterResults = check.after(beforeResults, checkOption.options);\n } catch (error) {\n var _result$nodes;\n throw new rule_error_default({\n ruleId: _this12.id,\n method: ''.concat(check.id, '#after'),\n errorNode: (_result$nodes = result.nodes) === null || _result$nodes === void 0 || (_result$nodes = _result$nodes[0]) === null || _result$nodes === void 0 ? void 0 : _result$nodes.node,\n error: error\n });\n }\n if (_this12.reviewOnFail) {\n afterResults.forEach(function(checkResult) {\n var changeAnyAllResults = (_this12.any.includes(checkResult.id) || _this12.all.includes(checkResult.id)) && checkResult.result === false;\n var changeNoneResult = _this12.none.includes(checkResult.id) && checkResult.result === true;\n if (changeAnyAllResults || changeNoneResult) {\n checkResult.result = void 0;\n }\n });\n }\n beforeResults.forEach(function(item) {\n delete item.node;\n if (afterResults.indexOf(item) === -1) {\n item.filtered = true;\n }\n });\n });\n result.nodes = sanitizeNodes(result);\n return result;\n };\n Rule.prototype.configure = function configure3(spec) {\n if (spec.hasOwnProperty('selector')) {\n this.selector = spec.selector;\n }\n if (spec.hasOwnProperty('excludeHidden')) {\n this.excludeHidden = typeof spec.excludeHidden === 'boolean' ? spec.excludeHidden : true;\n }\n if (spec.hasOwnProperty('enabled')) {\n this.enabled = typeof spec.enabled === 'boolean' ? spec.enabled : true;\n }\n if (spec.hasOwnProperty('pageLevel')) {\n this.pageLevel = typeof spec.pageLevel === 'boolean' ? spec.pageLevel : false;\n }\n if (spec.hasOwnProperty('reviewOnFail')) {\n this.reviewOnFail = typeof spec.reviewOnFail === 'boolean' ? spec.reviewOnFail : false;\n }\n if (spec.hasOwnProperty('any')) {\n this.any = spec.any;\n }\n if (spec.hasOwnProperty('all')) {\n this.all = spec.all;\n }\n if (spec.hasOwnProperty('none')) {\n this.none = spec.none;\n }\n if (spec.hasOwnProperty('tags')) {\n this.tags = spec.tags;\n }\n if (spec.hasOwnProperty('actIds')) {\n this.actIds = spec.actIds;\n }\n if (spec.hasOwnProperty('matches')) {\n this.matches = createExecutionContext(spec.matches);\n }\n if (spec.impact) {\n assert_default(constants_default.impact.includes(spec.impact), 'Impact '.concat(spec.impact, ' is not a valid impact'));\n this.impact = spec.impact;\n }\n };\n var dotRegex = /\\{\\{.+?\\}\\}/g;\n var Audit = function() {\n function Audit(audit) {\n _classCallCheck(this, Audit);\n this.lang = 'en';\n this.defaultConfig = audit;\n this.standards = standards_default;\n this._init();\n this._defaultLocale = null;\n }\n return _createClass(Audit, [ {\n key: '_setDefaultLocale',\n value: function _setDefaultLocale() {\n if (this._defaultLocale) {\n return;\n }\n var locale = {\n checks: {},\n rules: {},\n failureSummaries: {},\n incompleteFallbackMessage: '',\n lang: this.lang\n };\n var checkIDs = Object.keys(this.data.checks);\n for (var _i30 = 0; _i30 < checkIDs.length; _i30++) {\n var _id8 = checkIDs[_i30];\n var check = this.data.checks[_id8];\n var _check$messages = check.messages, pass = _check$messages.pass, fail = _check$messages.fail, incomplete = _check$messages.incomplete;\n locale.checks[_id8] = {\n pass: pass,\n fail: fail,\n incomplete: incomplete\n };\n }\n var ruleIDs = Object.keys(this.data.rules);\n for (var _i31 = 0; _i31 < ruleIDs.length; _i31++) {\n var _id9 = ruleIDs[_i31];\n var rule = this.data.rules[_id9];\n var description = rule.description, help = rule.help;\n locale.rules[_id9] = {\n description: description,\n help: help\n };\n }\n var failureSummaries = Object.keys(this.data.failureSummaries);\n for (var _i32 = 0; _i32 < failureSummaries.length; _i32++) {\n var type2 = failureSummaries[_i32];\n var failureSummary2 = this.data.failureSummaries[type2];\n var failureMessage = failureSummary2.failureMessage;\n locale.failureSummaries[type2] = {\n failureMessage: failureMessage\n };\n }\n locale.incompleteFallbackMessage = this.data.incompleteFallbackMessage;\n this._defaultLocale = locale;\n }\n }, {\n key: '_resetLocale',\n value: function _resetLocale() {\n var defaultLocale = this._defaultLocale;\n if (!defaultLocale) {\n return;\n }\n this.applyLocale(defaultLocale);\n }\n }, {\n key: '_applyCheckLocale',\n value: function _applyCheckLocale(checks) {\n var keys = Object.keys(checks);\n for (var _i33 = 0; _i33 < keys.length; _i33++) {\n var _id0 = keys[_i33];\n if (!this.data.checks[_id0]) {\n throw new Error('Locale provided for unknown check: \"'.concat(_id0, '\"'));\n }\n this.data.checks[_id0] = mergeCheckLocale(this.data.checks[_id0], checks[_id0]);\n }\n }\n }, {\n key: '_applyRuleLocale',\n value: function _applyRuleLocale(rules) {\n var keys = Object.keys(rules);\n for (var _i34 = 0; _i34 < keys.length; _i34++) {\n var _id1 = keys[_i34];\n if (!this.data.rules[_id1]) {\n throw new Error('Locale provided for unknown rule: \"'.concat(_id1, '\"'));\n }\n this.data.rules[_id1] = mergeRuleLocale(this.data.rules[_id1], rules[_id1]);\n }\n }\n }, {\n key: '_applyFailureSummaries',\n value: function _applyFailureSummaries(messages) {\n var keys = Object.keys(messages);\n for (var _i35 = 0; _i35 < keys.length; _i35++) {\n var _key1 = keys[_i35];\n if (!this.data.failureSummaries[_key1]) {\n throw new Error('Locale provided for unknown failureMessage: \"'.concat(_key1, '\"'));\n }\n this.data.failureSummaries[_key1] = mergeFailureMessage(this.data.failureSummaries[_key1], messages[_key1]);\n }\n }\n }, {\n key: 'applyLocale',\n value: function applyLocale(locale) {\n this._setDefaultLocale();\n if (locale.checks) {\n this._applyCheckLocale(locale.checks);\n }\n if (locale.rules) {\n this._applyRuleLocale(locale.rules);\n }\n if (locale.failureSummaries) {\n this._applyFailureSummaries(locale.failureSummaries, 'failureSummaries');\n }\n if (locale.incompleteFallbackMessage) {\n this.data.incompleteFallbackMessage = mergeFallbackMessage(this.data.incompleteFallbackMessage, locale.incompleteFallbackMessage);\n }\n if (locale.lang) {\n this.lang = locale.lang;\n }\n }\n }, {\n key: 'setAllowedOrigins',\n value: function setAllowedOrigins(allowedOrigins) {\n var defaultOrigin = getDefaultOrigin();\n this.allowedOrigins = [];\n var _iterator24 = _createForOfIteratorHelper(allowedOrigins), _step24;\n try {\n for (_iterator24.s(); !(_step24 = _iterator24.n()).done; ) {\n var origin = _step24.value;\n if (origin === constants_default.allOrigins) {\n this.allowedOrigins = [ '*' ];\n return;\n } else if (origin !== constants_default.sameOrigin) {\n this.allowedOrigins.push(origin);\n } else if (defaultOrigin) {\n this.allowedOrigins.push(defaultOrigin);\n }\n }\n } catch (err) {\n _iterator24.e(err);\n } finally {\n _iterator24.f();\n }\n }\n }, {\n key: '_init',\n value: function _init() {\n var audit = getDefaultConfiguration(this.defaultConfig);\n this.lang = audit.lang || 'en';\n this.reporter = audit.reporter;\n this.commands = {};\n this.rules = [];\n this.checks = {};\n this.brand = 'axe';\n this.application = 'axeAPI';\n this.tagExclude = [ 'experimental', 'deprecated' ];\n this.noHtml = audit.noHtml;\n this.allowedOrigins = audit.allowedOrigins;\n unpackToObject(audit.rules, this, 'addRule');\n unpackToObject(audit.checks, this, 'addCheck');\n this.data = {};\n this.data.checks = audit.data && audit.data.checks || {};\n this.data.rules = audit.data && audit.data.rules || {};\n this.data.failureSummaries = audit.data && audit.data.failureSummaries || {};\n this.data.incompleteFallbackMessage = audit.data && audit.data.incompleteFallbackMessage || '';\n this._constructHelpUrls();\n }\n }, {\n key: 'registerCommand',\n value: function registerCommand(command) {\n this.commands[command.id] = command.callback;\n }\n }, {\n key: 'addRule',\n value: function addRule(spec) {\n if (spec.metadata) {\n this.data.rules[spec.id] = spec.metadata;\n }\n var rule = this.getRule(spec.id);\n if (rule) {\n rule.configure(spec);\n } else {\n this.rules.push(new Rule(spec, this));\n }\n }\n }, {\n key: 'addCheck',\n value: function addCheck(spec) {\n var metadata = spec.metadata;\n if (_typeof(metadata) === 'object') {\n this.data.checks[spec.id] = metadata;\n if (_typeof(metadata.messages) === 'object') {\n Object.keys(metadata.messages).filter(function(prop) {\n return metadata.messages.hasOwnProperty(prop) && typeof metadata.messages[prop] === 'string';\n }).forEach(function(prop) {\n if (metadata.messages[prop].indexOf('function') === 0) {\n metadata.messages[prop] = new Function('return ' + metadata.messages[prop] + ';')();\n }\n });\n }\n }\n if (this.checks[spec.id]) {\n this.checks[spec.id].configure(spec);\n } else {\n this.checks[spec.id] = new check_default(spec);\n }\n }\n }, {\n key: 'run',\n value: function run(context, options, resolve, reject) {\n this.normalizeOptions(options);\n dq_element_default.setRunOptions(options);\n axe._selectCache = [];\n var allRulesToRun = getRulesToRun(this.rules, context, options);\n var runNowRules = allRulesToRun.now;\n var runLaterRules = allRulesToRun.later;\n var nowRulesQueue = queue_default();\n runNowRules.forEach(function(rule) {\n nowRulesQueue.defer(getDefferedRule(rule, context, options));\n });\n var preloaderQueue = queue_default();\n if (runLaterRules.length) {\n preloaderQueue.defer(function(res) {\n _preload(options).then(function(assets) {\n return res(assets);\n })['catch'](function(err2) {\n console.warn('Couldn\\'t load preload assets: ', err2);\n res(void 0);\n });\n });\n }\n var queueForNowRulesAndPreloader = queue_default();\n queueForNowRulesAndPreloader.defer(nowRulesQueue);\n queueForNowRulesAndPreloader.defer(preloaderQueue);\n queueForNowRulesAndPreloader.then(function(nowRulesAndPreloaderResults) {\n var assetsFromQueue = nowRulesAndPreloaderResults.pop();\n if (assetsFromQueue && assetsFromQueue.length) {\n var assets = assetsFromQueue[0];\n if (assets) {\n context = _extends({}, context, assets);\n }\n }\n var nowRulesResults = nowRulesAndPreloaderResults[0];\n if (!runLaterRules.length) {\n axe._selectCache = void 0;\n resolve(nowRulesResults.filter(function(result) {\n return !!result;\n }));\n return;\n }\n var laterRulesQueue = queue_default();\n runLaterRules.forEach(function(rule) {\n var deferredRule = getDefferedRule(rule, context, options);\n laterRulesQueue.defer(deferredRule);\n });\n laterRulesQueue.then(function(laterRuleResults) {\n axe._selectCache = void 0;\n resolve(nowRulesResults.concat(laterRuleResults).filter(function(result) {\n return !!result;\n }));\n })['catch'](reject);\n })['catch'](reject);\n }\n }, {\n key: 'after',\n value: function after(results, options) {\n var rules = this.rules;\n return results.map(function(ruleResult) {\n if (ruleResult.error) {\n return ruleResult;\n }\n var rule = find_by_default(rules, 'id', ruleResult.id);\n if (!rule) {\n throw new Error('Result for unknown rule. You may be running mismatch axe-core versions');\n }\n try {\n return rule.after(ruleResult, options);\n } catch (err2) {\n if (options.debug) {\n throw err2;\n }\n return createIncompleteErrorResult(rule, err2);\n }\n });\n }\n }, {\n key: 'getRule',\n value: function getRule(ruleId) {\n return this.rules.find(function(rule) {\n return rule.id === ruleId;\n });\n }\n }, {\n key: 'normalizeOptions',\n value: function normalizeOptions(options) {\n var audit = this;\n var tags = [];\n var ruleIds = [];\n audit.rules.forEach(function(rule) {\n ruleIds.push(rule.id);\n rule.tags.forEach(function(tag) {\n if (!tags.includes(tag)) {\n tags.push(tag);\n }\n });\n });\n if ([ 'object', 'string' ].includes(_typeof(options.runOnly))) {\n if (typeof options.runOnly === 'string') {\n options.runOnly = [ options.runOnly ];\n }\n if (Array.isArray(options.runOnly)) {\n var hasTag = options.runOnly.find(function(value) {\n return tags.includes(value);\n });\n var hasRule = options.runOnly.find(function(value) {\n return ruleIds.includes(value);\n });\n if (hasTag && hasRule) {\n throw new Error('runOnly cannot be both rules and tags');\n }\n if (hasRule) {\n options.runOnly = {\n type: 'rule',\n values: options.runOnly\n };\n } else {\n options.runOnly = {\n type: 'tag',\n values: options.runOnly\n };\n }\n }\n var only = options.runOnly;\n if (only.value && !only.values) {\n only.values = only.value;\n delete only.value;\n }\n if (!Array.isArray(only.values) || only.values.length === 0) {\n throw new Error('runOnly.values must be a non-empty array');\n }\n if ([ 'rule', 'rules' ].includes(only.type)) {\n only.type = 'rule';\n only.values.forEach(function(ruleId) {\n if (!ruleIds.includes(ruleId)) {\n throw new Error('unknown rule `' + ruleId + '` in options.runOnly');\n }\n });\n } else if ([ 'tag', 'tags', void 0 ].includes(only.type)) {\n only.type = 'tag';\n var unmatchedTags = only.values.filter(function(tag) {\n return !tags.includes(tag) && !/wcag2[1-3]a{1,3}/.test(tag);\n });\n if (unmatchedTags.length !== 0) {\n axe.log('Could not find tags `' + unmatchedTags.join('`, `') + '`');\n }\n } else {\n throw new Error('Unknown runOnly type \\''.concat(only.type, '\\''));\n }\n }\n if (_typeof(options.rules) === 'object') {\n Object.keys(options.rules).forEach(function(ruleId) {\n if (!ruleIds.includes(ruleId)) {\n throw new Error('unknown rule `' + ruleId + '` in options.rules');\n }\n });\n }\n return options;\n }\n }, {\n key: 'setBranding',\n value: function setBranding(branding) {\n var previous = {\n brand: this.brand,\n application: this.application\n };\n if (typeof branding === 'string') {\n this.application = branding;\n }\n if (branding && branding.hasOwnProperty('brand') && branding.brand && typeof branding.brand === 'string') {\n this.brand = branding.brand;\n }\n if (branding && branding.hasOwnProperty('application') && branding.application && typeof branding.application === 'string') {\n this.application = branding.application;\n }\n this._constructHelpUrls(previous);\n }\n }, {\n key: '_constructHelpUrls',\n value: function _constructHelpUrls() {\n var _this13 = this;\n var previous = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var version = (axe.version.match(/^[1-9][0-9]*\\.[0-9]+/) || [ 'x.y' ])[0];\n this.rules.forEach(function(rule) {\n if (!_this13.data.rules[rule.id]) {\n _this13.data.rules[rule.id] = {};\n }\n var metaData = _this13.data.rules[rule.id];\n if (typeof metaData.helpUrl !== 'string' || previous && metaData.helpUrl === getHelpUrl(previous, rule.id, version)) {\n metaData.helpUrl = getHelpUrl(_this13, rule.id, version);\n }\n });\n }\n }, {\n key: 'resetRulesAndChecks',\n value: function resetRulesAndChecks() {\n this._init();\n this._resetLocale();\n }\n } ]);\n }();\n var audit_default = Audit;\n function getDefaultOrigin() {\n if (window.origin && window.origin !== 'null') {\n return window.origin;\n }\n if (window.location && window.location.origin && window.location.origin !== 'null') {\n return window.location.origin;\n }\n }\n function getDefaultConfiguration(audit) {\n var config;\n if (audit) {\n config = clone2(audit);\n config.commons = audit.commons;\n } else {\n config = {};\n }\n config.reporter = config.reporter || null;\n config.noHtml = config.noHtml || false;\n if (!config.allowedOrigins) {\n var defaultOrigin = getDefaultOrigin();\n config.allowedOrigins = defaultOrigin ? [ defaultOrigin ] : [];\n }\n config.rules = config.rules || [];\n config.checks = config.checks || [];\n config.data = _extends({\n checks: {},\n rules: {}\n }, config.data);\n return config;\n }\n function unpackToObject(collection, audit, method) {\n var i, l;\n for (i = 0, l = collection.length; i < l; i++) {\n audit[method](collection[i]);\n }\n }\n var mergeCheckLocale = function mergeCheckLocale(a2, b2) {\n var pass = b2.pass, fail = b2.fail;\n if (typeof pass === 'string' && dotRegex.test(pass)) {\n pass = import_dot['default'].compile(pass);\n }\n if (typeof fail === 'string' && dotRegex.test(fail)) {\n fail = import_dot['default'].compile(fail);\n }\n return _extends({}, a2, {\n messages: {\n pass: pass || a2.messages.pass,\n fail: fail || a2.messages.fail,\n incomplete: _typeof(a2.messages.incomplete) === 'object' ? _extends({}, a2.messages.incomplete, b2.incomplete) : b2.incomplete\n }\n });\n };\n var mergeRuleLocale = function mergeRuleLocale(a2, b2) {\n var help = b2.help, description = b2.description;\n if (typeof help === 'string' && dotRegex.test(help)) {\n help = import_dot['default'].compile(help);\n }\n if (typeof description === 'string' && dotRegex.test(description)) {\n description = import_dot['default'].compile(description);\n }\n return _extends({}, a2, {\n help: help || a2.help,\n description: description || a2.description\n });\n };\n var mergeFailureMessage = function mergeFailureMessage(a2, b2) {\n var failureMessage = b2.failureMessage;\n if (typeof failureMessage === 'string' && dotRegex.test(failureMessage)) {\n failureMessage = import_dot['default'].compile(failureMessage);\n }\n return _extends({}, a2, {\n failureMessage: failureMessage || a2.failureMessage\n });\n };\n var mergeFallbackMessage = function mergeFallbackMessage(a2, b2) {\n if (typeof b2 === 'string' && dotRegex.test(b2)) {\n b2 = import_dot['default'].compile(b2);\n }\n return b2 || a2;\n };\n function getRulesToRun(rules, context, options) {\n var base = {\n now: [],\n later: []\n };\n var splitRules = rules.reduce(function(out, rule) {\n if (!rule_should_run_default(rule, context, options)) {\n return out;\n }\n if (rule.preload) {\n out.later.push(rule);\n return out;\n }\n out.now.push(rule);\n return out;\n }, base);\n return splitRules;\n }\n function getDefferedRule(rule, context, options) {\n if (options.performanceTimer) {\n performance_timer_default.mark('mark_rule_start_' + rule.id);\n }\n return function(resolve, reject) {\n rule.run(context, options, function(ruleResult) {\n return resolve(ruleResult);\n }, function(err2) {\n if (options.debug) {\n reject(err2);\n } else {\n resolve(createIncompleteErrorResult(rule, err2));\n }\n });\n };\n }\n function createIncompleteErrorResult(rule, error) {\n var errorNode = error.errorNode;\n var serialError = _serializeError(error);\n var none = [ {\n id: 'error-occurred',\n result: void 0,\n data: serialError,\n relatedNodes: []\n } ];\n var node = errorNode || new dq_element_default(document.documentElement);\n return Object.assign(new rule_result_default(rule), {\n error: serialError,\n result: constants_default.CANTTELL,\n nodes: [ {\n any: [],\n all: [],\n none: none,\n node: node\n } ]\n });\n }\n function getHelpUrl(_ref141, ruleId, version) {\n var brand = _ref141.brand, application = _ref141.application, lang = _ref141.lang;\n return constants_default.helpUrlBase + brand + '/' + (version || axe.version.substring(0, axe.version.lastIndexOf('.'))) + '/' + ruleId + '?application=' + encodeURIComponent(application) + (lang && lang !== 'en' ? '&lang=' + encodeURIComponent(lang) : '');\n }\n function setupGlobals(context) {\n var hasWindow = window && 'Node' in window && 'NodeList' in window;\n var hasDoc = !!document;\n if (hasWindow && hasDoc) {\n return;\n }\n if (!context || !context.ownerDocument) {\n throw new Error('Required \"window\" or \"document\" globals not defined and cannot be deduced from the context. Either set the globals before running or pass in a valid Element.');\n }\n if (!hasDoc) {\n cache_default.set('globalDocumentSet', true);\n document = context.ownerDocument;\n }\n if (!hasWindow) {\n cache_default.set('globalWindowSet', true);\n window = document.defaultView;\n }\n }\n function resetGlobals() {\n if (cache_default.get('globalDocumentSet')) {\n cache_default.set('globalDocumentSet', false);\n document = null;\n }\n if (cache_default.get('globalWindowSet')) {\n cache_default.set('globalWindowSet', false);\n window = null;\n }\n }\n function teardown() {\n resetGlobals();\n axe._memoizedFns.forEach(function(fn) {\n return fn.clear();\n });\n cache_default.clear();\n axe._tree = void 0;\n axe._selectorData = void 0;\n axe._selectCache = void 0;\n }\n var teardown_default = teardown;\n function runRules(context, options, resolve, reject) {\n try {\n context = new Context(context);\n axe._tree = context.flatTree;\n axe._selectorData = _getSelectorData(context.flatTree);\n } catch (e) {\n teardown_default();\n return reject(e);\n }\n var q = queue_default();\n var audit = axe._audit;\n if (options.performanceTimer) {\n performance_timer_default.auditStart();\n }\n if (context.frames.length && options.iframes !== false) {\n q.defer(function(res, rej) {\n _collectResultsFromFrames(context, options, 'rules', null, res, rej);\n });\n }\n q.defer(function(res, rej) {\n audit.run(context, options, res, rej);\n });\n q.then(function(data) {\n try {\n if (options.performanceTimer) {\n performance_timer_default.auditEnd();\n }\n var results = merge_results_default(data.map(function(res) {\n return {\n results: res\n };\n }));\n if (context.initiator) {\n if (options.performanceTimer) {\n performance_timer_default.mark('auditAfterStart');\n }\n results = audit.after(results, options);\n if (options.performanceTimer) {\n performance_timer_default.mark('auditAfterEnd');\n performance_timer_default.measure('audit.after', 'auditAfterStart', 'auditAfterEnd');\n performance_timer_default.logMeasures('audit.after');\n }\n results.forEach(_publishMetaData);\n results = results.map(_finalizeRuleResult);\n }\n try {\n resolve(results, teardown_default);\n } catch (e) {\n teardown_default();\n log_default(e);\n }\n } catch (e) {\n teardown_default();\n reject(e);\n }\n })['catch'](function(e) {\n teardown_default();\n reject(e);\n });\n }\n function load(audit) {\n axe._audit = new audit_default(audit);\n }\n function runCommand(data, keepalive, callback) {\n var resolve = callback;\n var reject = function reject2(err2) {\n if (err2 instanceof Error === false) {\n err2 = new Error(err2);\n }\n callback(err2);\n };\n var context = data && data.context || {};\n if (context.hasOwnProperty('include') && !context.include.length) {\n context.include = [ document ];\n }\n var options = data && data.options || {};\n switch (data.command) {\n case 'rules':\n return runRules(context, options, function(results, cleanupFn) {\n results = node_serializer_default.mapRawResults(results);\n resolve(results);\n cleanupFn();\n }, reject);\n\n case 'cleanup-plugin':\n return cleanup_default(resolve, reject);\n\n default:\n if (axe._audit && axe._audit.commands && axe._audit.commands[data.command]) {\n return axe._audit.commands[data.command](data, callback);\n }\n }\n }\n if (window.top !== window) {\n _respondable.subscribe('axe.start', runCommand);\n _respondable.subscribe('axe.ping', function(data, keepalive, respond) {\n respond({\n axe: true\n });\n });\n }\n function Plugin(spec) {\n this._run = spec.run;\n this._collect = spec.collect;\n this._registry = {};\n spec.commands.forEach(function(command) {\n axe._audit.registerCommand(command);\n });\n }\n Plugin.prototype.run = function run3() {\n return this._run.apply(this, arguments);\n };\n Plugin.prototype.collect = function collect() {\n return this._collect.apply(this, arguments);\n };\n Plugin.prototype.cleanup = function cleanup2(done) {\n var q = axe.utils.queue();\n var that = this;\n Object.keys(this._registry).forEach(function(key) {\n q.defer(function(_done) {\n that._registry[key].cleanup(_done);\n });\n });\n q.then(done);\n };\n Plugin.prototype.add = function add(impl) {\n this._registry[impl.id] = impl;\n };\n function registerPlugin(plugin) {\n axe.plugins[plugin.id] = new Plugin(plugin);\n }\n var plugins_default = registerPlugin;\n function reset() {\n var audit = axe._audit;\n if (!audit) {\n throw new Error('No audit configured');\n }\n audit.resetRulesAndChecks();\n resetStandards();\n }\n var reset_default = reset;\n function runVirtualRule(ruleId, vNode) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n options.reporter = options.reporter || axe._audit.reporter || 'v1';\n axe._selectorData = {};\n if (!(vNode instanceof abstract_virtual_node_default)) {\n vNode = new serial_virtual_node_default(vNode);\n }\n var rule = _getRule(ruleId);\n if (!rule) {\n throw new Error('unknown rule `' + ruleId + '`');\n }\n rule = Object.create(rule, {\n excludeHidden: {\n value: false\n }\n });\n var context = {\n initiator: true,\n include: [ vNode ],\n exclude: [],\n frames: [],\n page: false,\n focusable: true,\n size: {},\n flatTree: []\n };\n var rawResults = rule.runSync(context, options);\n _publishMetaData(rawResults);\n _finalizeRuleResult(rawResults);\n var results = aggregate_result_default([ rawResults ]);\n results.violations.forEach(function(result) {\n return result.nodes.forEach(function(nodeResult) {\n nodeResult.failureSummary = failure_summary_default(nodeResult);\n });\n });\n return _extends({}, _getEnvironmentData(), results, {\n toolOptions: options\n });\n }\n function normalizeRunParams(_ref142) {\n var _ref144, _options$reporter, _axe$_audit;\n var _ref143 = _slicedToArray(_ref142, 3), context = _ref143[0], options = _ref143[1], callback = _ref143[2];\n var typeErr = new TypeError('axe.run arguments are invalid');\n if (!_isContextSpec(context)) {\n if (callback !== void 0) {\n throw typeErr;\n }\n callback = options;\n options = context;\n context = document;\n }\n if (_typeof(options) !== 'object') {\n if (callback !== void 0) {\n throw typeErr;\n }\n callback = options;\n options = {};\n }\n if (typeof callback !== 'function' && callback !== void 0) {\n throw typeErr;\n }\n options = clone2(options);\n options.reporter = (_ref144 = (_options$reporter = options.reporter) !== null && _options$reporter !== void 0 ? _options$reporter : (_axe$_audit = axe._audit) === null || _axe$_audit === void 0 ? void 0 : _axe$_audit.reporter) !== null && _ref144 !== void 0 ? _ref144 : 'v1';\n return {\n context: context,\n options: options,\n callback: callback\n };\n }\n var noop2 = function noop2() {};\n function run4() {\n for (var _len8 = arguments.length, args = new Array(_len8), _key10 = 0; _key10 < _len8; _key10++) {\n args[_key10] = arguments[_key10];\n }\n setupGlobals(args[0]);\n var _normalizeRunParams = normalizeRunParams(args), context = _normalizeRunParams.context, options = _normalizeRunParams.options, _normalizeRunParams$c = _normalizeRunParams.callback, callback = _normalizeRunParams$c === void 0 ? noop2 : _normalizeRunParams$c;\n var _getPromiseHandlers = getPromiseHandlers(callback), thenable = _getPromiseHandlers.thenable, resolve = _getPromiseHandlers.resolve, reject = _getPromiseHandlers.reject;\n try {\n assert_default(axe._audit, 'No audit configured');\n assert_default(!axe._running, 'Axe is already running. Use `await axe.run()` to wait for the previous run to finish before starting a new run.');\n } catch (e) {\n return handleError(e, callback);\n }\n axe._running = true;\n if (options.performanceTimer) {\n performance_timer_default.start();\n }\n function handleRunRules(rawResults, teardown2) {\n var respond = function respond(results) {\n if (options.performanceTimer) {\n performance_timer_default.mark('reporterEnd');\n performance_timer_default.measure('reporter', 'reporterStart', 'reporterEnd');\n performance_timer_default.logMeasures('reporter');\n performance_timer_default.end();\n }\n axe._running = false;\n teardown2();\n try {\n resolve(results);\n } catch (e) {\n axe.log(e);\n }\n };\n var wrappedReject = function wrappedReject(err2) {\n axe._running = false;\n teardown2();\n try {\n reject(err2);\n } catch (e) {\n axe.log(e);\n }\n };\n try {\n if (options.performanceTimer) {\n performance_timer_default.mark('reporterStart');\n }\n createReport(rawResults, options, respond, wrappedReject);\n } catch (err2) {\n wrappedReject(err2);\n }\n }\n function errorRunRules(err2) {\n if (options.performanceTimer) {\n performance_timer_default.end();\n }\n axe._running = false;\n callback(err2);\n reject(err2);\n }\n axe._runRules(context, options, handleRunRules, errorRunRules);\n return thenable;\n }\n function getPromiseHandlers(callback) {\n var thenable, reject, resolve;\n if (typeof Promise === 'function' && callback === noop2) {\n thenable = new Promise(function(_resolve, _reject) {\n reject = _reject;\n resolve = _resolve;\n });\n } else {\n resolve = function resolve(result) {\n return callback(null, result);\n };\n reject = function reject(err2) {\n return callback(err2);\n };\n }\n return {\n thenable: thenable,\n reject: reject,\n resolve: resolve\n };\n }\n function createReport(rawResults, options, respond, reject) {\n var reporter = getReporter(options.reporter);\n var results = reporter(rawResults, options, respond, reject);\n if (results !== void 0) {\n respond(results);\n }\n }\n function handleError(err2, callback) {\n if (typeof callback === 'function' && callback !== noop2) {\n callback(err2.message);\n return;\n }\n throw err2;\n }\n function runPartial() {\n for (var _len9 = arguments.length, args = new Array(_len9), _key11 = 0; _key11 < _len9; _key11++) {\n args[_key11] = arguments[_key11];\n }\n var _normalizeRunParams2 = normalizeRunParams(args), options = _normalizeRunParams2.options, context = _normalizeRunParams2.context;\n assert_default(axe._audit, 'Axe is not configured. Audit is missing.');\n assert_default(!axe._running, 'Axe is already running. Use `await axe.run()` to wait for the previous run to finish before starting a new run.');\n var contextObj = new Context(context, axe._tree);\n axe._tree = contextObj.flatTree;\n axe._selectorData = _getSelectorData(contextObj.flatTree);\n axe._running = true;\n options.elementRef = false;\n return new Promise(function(res, rej) {\n axe._audit.run(contextObj, options, res, rej);\n }).then(function(results) {\n results = node_serializer_default.mapRawResults(results);\n var frames = contextObj.frames.map(function(_ref145) {\n var node = _ref145.node;\n return node_serializer_default.toSpec(node);\n });\n var environmentData;\n if (contextObj.initiator) {\n environmentData = _getEnvironmentData();\n }\n axe._running = false;\n teardown_default();\n return {\n results: results,\n frames: frames,\n environmentData: environmentData\n };\n })['catch'](function(err2) {\n axe._running = false;\n teardown_default();\n return Promise.reject(err2);\n });\n }\n function finishRun(partialResults) {\n var _ref147, _options$reporter2, _axe$_audit2;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n options = clone2(options);\n var _ref146 = partialResults.find(function(r) {\n return r.environmentData;\n }) || {}, environmentData = _ref146.environmentData;\n axe._audit.normalizeOptions(options);\n options.reporter = (_ref147 = (_options$reporter2 = options.reporter) !== null && _options$reporter2 !== void 0 ? _options$reporter2 : (_axe$_audit2 = axe._audit) === null || _axe$_audit2 === void 0 ? void 0 : _axe$_audit2.reporter) !== null && _ref147 !== void 0 ? _ref147 : 'v1';\n setFrameSpec(partialResults);\n var results = merge_results_default(partialResults);\n results = axe._audit.after(results, options);\n results.forEach(_publishMetaData);\n results = results.map(_finalizeRuleResult);\n return createReport2(results, _extends({\n environmentData: environmentData\n }, options));\n }\n function setFrameSpec(partialResults) {\n var frameStack = [];\n var _iterator25 = _createForOfIteratorHelper(partialResults), _step25;\n try {\n for (_iterator25.s(); !(_step25 = _iterator25.n()).done; ) {\n var partialResult = _step25.value;\n var frameSpec = frameStack.shift();\n if (!partialResult) {\n continue;\n }\n partialResult.frameSpec = frameSpec !== null && frameSpec !== void 0 ? frameSpec : null;\n var frameSpecs = getMergedFrameSpecs(partialResult);\n frameStack.unshift.apply(frameStack, _toConsumableArray(frameSpecs));\n }\n } catch (err) {\n _iterator25.e(err);\n } finally {\n _iterator25.f();\n }\n }\n function getMergedFrameSpecs(_ref148) {\n var childFrameSpecs = _ref148.frames, parentFrameSpec = _ref148.frameSpec;\n if (!parentFrameSpec) {\n return childFrameSpecs;\n }\n return childFrameSpecs.map(function(childFrameSpec) {\n return node_serializer_default.mergeSpecs(childFrameSpec, parentFrameSpec);\n });\n }\n function createReport2(results, options) {\n return new Promise(function(resolve, reject) {\n var reporter = getReporter(options.reporter);\n reporter(results, options, resolve, reject);\n });\n }\n function setup(node) {\n if (axe._tree) {\n throw new Error('Axe is already setup. Call `axe.teardown()` before calling `axe.setup` again.');\n }\n if (node && _typeof(node.documentElement) === 'object' && _typeof(node.defaultView) === 'object') {\n node = node.documentElement;\n }\n setupGlobals(node);\n axe._tree = _getFlattenedTree(node);\n axe._selectorData = _getSelectorData(axe._tree);\n return axe._tree[0];\n }\n var setup_default = setup;\n var naReporter = function naReporter(results, options, callback) {\n console.warn('\"na\" reporter will be deprecated in axe v4.0. Use the \"v2\" reporter instead.');\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n var _options3 = options, environmentData = _options3.environmentData, toolOptions = _objectWithoutProperties(_options3, _excluded13);\n callback(_extends({}, _getEnvironmentData(environmentData), {\n toolOptions: toolOptions\n }, processAggregate(results, options)));\n };\n var na_default = naReporter;\n var noPassesReporter = function noPassesReporter(results, options, callback) {\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n var _options4 = options, environmentData = _options4.environmentData, toolOptions = _objectWithoutProperties(_options4, _excluded14);\n options.resultTypes = [ 'violations' ];\n var _processAggregate = processAggregate(results, options), violations = _processAggregate.violations;\n callback(_extends({}, _getEnvironmentData(environmentData), {\n toolOptions: toolOptions,\n violations: violations\n }));\n };\n var no_passes_default = noPassesReporter;\n var rawReporter = function rawReporter(results, options, callback) {\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n if (!results || !Array.isArray(results)) {\n return callback(results);\n }\n var transformedResults = results.map(function(result) {\n var transformedResult = _extends({}, result);\n var types = [ 'passes', 'violations', 'incomplete', 'inapplicable' ];\n for (var _i36 = 0, _types = types; _i36 < _types.length; _i36++) {\n var type2 = _types[_i36];\n transformedResult[type2] = node_serializer_default.mapRawNodeResults(transformedResult[type2]);\n }\n return transformedResult;\n });\n callback(transformedResults);\n };\n var raw_default = rawReporter;\n var rawEnvReporter = function rawEnvReporter(results, options, callback) {\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n var _options5 = options, environmentData = _options5.environmentData, toolOptions = _objectWithoutProperties(_options5, _excluded15);\n raw_default(results, toolOptions, function(raw) {\n var env = _getEnvironmentData(environmentData);\n callback({\n raw: raw,\n env: env\n });\n });\n };\n var raw_env_default = rawEnvReporter;\n var v1Reporter = function v1Reporter(results, options, callback) {\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n var _options6 = options, environmentData = _options6.environmentData, toolOptions = _objectWithoutProperties(_options6, _excluded16);\n var out = processAggregate(results, options);\n var addFailureSummaries = function addFailureSummaries(result) {\n result.nodes.forEach(function(nodeResult) {\n nodeResult.failureSummary = failure_summary_default(nodeResult);\n });\n };\n out.incomplete.forEach(addFailureSummaries);\n out.violations.forEach(addFailureSummaries);\n callback(_extends({}, _getEnvironmentData(environmentData), {\n toolOptions: toolOptions\n }, out));\n };\n var v1_default = v1Reporter;\n var v2Reporter = function v2Reporter(results, options, callback) {\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n var _options7 = options, environmentData = _options7.environmentData, toolOptions = _objectWithoutProperties(_options7, _excluded17);\n var out = processAggregate(results, options);\n callback(_extends({}, _getEnvironmentData(environmentData), {\n toolOptions: toolOptions\n }, out));\n };\n var v2_default = v2Reporter;\n var _thisWillBeDeletedDoNotUse = {\n base: {\n Audit: audit_default,\n CheckResult: check_result_default,\n Check: check_default,\n Context: Context,\n RuleResult: rule_result_default,\n Rule: Rule,\n metadataFunctionMap: metadata_function_map_default\n },\n public: {\n reporters: reporters\n },\n helpers: {\n failureSummary: failure_summary_default,\n incompleteFallbackMessage: incompleteFallbackMessage,\n processAggregate: processAggregate\n },\n utils: {\n setDefaultFrameMessenger: setDefaultFrameMessenger,\n cacheNodeSelectors: cacheNodeSelectors,\n getNodesMatchingExpression: getNodesMatchingExpression,\n convertSelector: _convertSelector\n },\n commons: {\n dom: {\n nativelyHidden: nativelyHidden,\n displayHidden: displayHidden,\n visibilityHidden: visibilityHidden,\n contentVisibiltyHidden: contentVisibiltyHidden,\n ariaHidden: ariaHidden,\n opacityHidden: opacityHidden,\n scrollHidden: scrollHidden,\n overflowHidden: overflowHidden,\n clipHidden: clipHidden,\n areaHidden: areaHidden,\n detailsHidden: detailsHidden\n }\n }\n };\n var exposed_for_testing_default = _thisWillBeDeletedDoNotUse;\n axe._thisWillBeDeletedDoNotUse = exposed_for_testing_default;\n axe.constants = constants_default;\n axe.log = log_default;\n axe.AbstractVirtualNode = abstract_virtual_node_default;\n axe.SerialVirtualNode = serial_virtual_node_default;\n axe.VirtualNode = virtual_node_default;\n axe._cache = cache_default;\n axe.imports = imports_exports;\n axe.cleanup = cleanup_default;\n axe.configure = configure_default;\n axe.frameMessenger = frameMessenger2;\n axe.getRules = get_rules_default;\n axe._load = load;\n axe.plugins = {};\n axe.registerPlugin = plugins_default;\n axe.hasReporter = hasReporter;\n axe.getReporter = getReporter;\n axe.addReporter = addReporter;\n axe.reset = reset_default;\n axe._runRules = runRules;\n axe.runVirtualRule = runVirtualRule;\n axe.run = run4;\n axe.setup = setup_default;\n axe.teardown = teardown_default;\n axe.runPartial = runPartial;\n axe.finishRun = finishRun;\n axe.commons = commons_exports;\n axe.utils = utils_exports;\n axe.addReporter('na', na_default);\n axe.addReporter('no-passes', no_passes_default);\n axe.addReporter('rawEnv', raw_env_default);\n axe.addReporter('raw', raw_default);\n axe.addReporter('v1', v1_default);\n axe.addReporter('v2', v2_default, true);\n })();\n 'use strict';\n axe._load({\n lang: 'en',\n data: {\n rules: {\n accesskeys: {\n description: 'Ensure every accesskey attribute value is unique',\n help: 'accesskey attribute value should be unique'\n },\n 'area-alt': {\n description: 'Ensure <area> elements of image maps have alternative text',\n help: 'Active <area> elements must have alternative text'\n },\n 'aria-allowed-attr': {\n description: 'Ensure an element\\'s role supports its ARIA attributes',\n help: 'Elements must only use supported ARIA attributes'\n },\n 'aria-allowed-role': {\n description: 'Ensure role attribute has an appropriate value for the element',\n help: 'ARIA role should be appropriate for the element'\n },\n 'aria-braille-equivalent': {\n description: 'Ensure aria-braillelabel and aria-brailleroledescription have a non-braille equivalent',\n help: 'aria-braille attributes must have a non-braille equivalent'\n },\n 'aria-command-name': {\n description: 'Ensure every ARIA button, link and menuitem has an accessible name',\n help: 'ARIA commands must have an accessible name'\n },\n 'aria-conditional-attr': {\n description: 'Ensure ARIA attributes are used as described in the specification of the element\\'s role',\n help: 'ARIA attributes must be used as specified for the element\\'s role'\n },\n 'aria-deprecated-role': {\n description: 'Ensure elements do not use deprecated roles',\n help: 'Deprecated ARIA roles must not be used'\n },\n 'aria-dialog-name': {\n description: 'Ensure every ARIA dialog and alertdialog node has an accessible name',\n help: 'ARIA dialog and alertdialog nodes should have an accessible name'\n },\n 'aria-hidden-body': {\n description: 'Ensure aria-hidden=\"true\" is not present on the document body.',\n help: 'aria-hidden=\"true\" must not be present on the document body'\n },\n 'aria-hidden-focus': {\n description: 'Ensure aria-hidden elements are not focusable nor contain focusable elements',\n help: 'ARIA hidden element must not be focusable or contain focusable elements'\n },\n 'aria-input-field-name': {\n description: 'Ensure every ARIA input field has an accessible name',\n help: 'ARIA input fields must have an accessible name'\n },\n 'aria-meter-name': {\n description: 'Ensure every ARIA meter node has an accessible name',\n help: 'ARIA meter nodes must have an accessible name'\n },\n 'aria-progressbar-name': {\n description: 'Ensure every ARIA progressbar node has an accessible name',\n help: 'ARIA progressbar nodes must have an accessible name'\n },\n 'aria-prohibited-attr': {\n description: 'Ensure ARIA attributes are not prohibited for an element\\'s role',\n help: 'Elements must only use permitted ARIA attributes'\n },\n 'aria-required-attr': {\n description: 'Ensure elements with ARIA roles have all required ARIA attributes',\n help: 'Required ARIA attributes must be provided'\n },\n 'aria-required-children': {\n description: 'Ensure elements with an ARIA role that require child roles contain them',\n help: 'Certain ARIA roles must contain particular children'\n },\n 'aria-required-parent': {\n description: 'Ensure elements with an ARIA role that require parent roles are contained by them',\n help: 'Certain ARIA roles must be contained by particular parents'\n },\n 'aria-roledescription': {\n description: 'Ensure aria-roledescription is only used on elements with an implicit or explicit role',\n help: 'aria-roledescription must be on elements with a semantic role'\n },\n 'aria-roles': {\n description: 'Ensure all elements with a role attribute use a valid value',\n help: 'ARIA roles used must conform to valid values'\n },\n 'aria-text': {\n description: 'Ensure role=\"text\" is used on elements with no focusable descendants',\n help: '\"role=text\" should have no focusable descendants'\n },\n 'aria-toggle-field-name': {\n description: 'Ensure every ARIA toggle field has an accessible name',\n help: 'ARIA toggle fields must have an accessible name'\n },\n 'aria-tooltip-name': {\n description: 'Ensure every ARIA tooltip node has an accessible name',\n help: 'ARIA tooltip nodes must have an accessible name'\n },\n 'aria-treeitem-name': {\n description: 'Ensure every ARIA treeitem node has an accessible name',\n help: 'ARIA treeitem nodes should have an accessible name'\n },\n 'aria-valid-attr-value': {\n description: 'Ensure all ARIA attributes have valid values',\n help: 'ARIA attributes must conform to valid values'\n },\n 'aria-valid-attr': {\n description: 'Ensure attributes that begin with aria- are valid ARIA attributes',\n help: 'ARIA attributes must conform to valid names'\n },\n 'audio-caption': {\n description: 'Ensure <audio> elements have captions',\n help: '<audio> elements must have a captions track'\n },\n 'autocomplete-valid': {\n description: 'Ensure the autocomplete attribute is correct and suitable for the form field',\n help: 'autocomplete attribute must be used correctly'\n },\n 'avoid-inline-spacing': {\n description: 'Ensure that text spacing set through style attributes can be adjusted with custom stylesheets',\n help: 'Inline text spacing must be adjustable with custom stylesheets'\n },\n blink: {\n description: 'Ensure <blink> elements are not used',\n help: '<blink> elements are deprecated and must not be used'\n },\n 'button-name': {\n description: 'Ensure buttons have discernible text',\n help: 'Buttons must have discernible text'\n },\n bypass: {\n description: 'Ensure each page has at least one mechanism for a user to bypass navigation and jump straight to the content',\n help: 'Page must have means to bypass repeated blocks'\n },\n 'color-contrast-enhanced': {\n description: 'Ensure the contrast between foreground and background colors meets WCAG 2 AAA enhanced contrast ratio thresholds',\n help: 'Elements must meet enhanced color contrast ratio thresholds'\n },\n 'color-contrast': {\n description: 'Ensure the contrast between foreground and background colors meets WCAG 2 AA minimum contrast ratio thresholds',\n help: 'Elements must meet minimum color contrast ratio thresholds'\n },\n 'css-orientation-lock': {\n description: 'Ensure content is not locked to any specific display orientation, and the content is operable in all display orientations',\n help: 'CSS Media queries must not lock display orientation'\n },\n 'definition-list': {\n description: 'Ensure <dl> elements are structured correctly',\n help: '<dl> elements must only directly contain properly-ordered <dt> and <dd> groups, <script>, <template> or <div> elements'\n },\n dlitem: {\n description: 'Ensure <dt> and <dd> elements are contained by a <dl>',\n help: '<dt> and <dd> elements must be contained by a <dl>'\n },\n 'document-title': {\n description: 'Ensure each HTML document contains a non-empty <title> element',\n help: 'Documents must have <title> element to aid in navigation'\n },\n 'duplicate-id-active': {\n description: 'Ensure every id attribute value of active elements is unique',\n help: 'IDs of active elements must be unique'\n },\n 'duplicate-id-aria': {\n description: 'Ensure every id attribute value used in ARIA and in labels is unique',\n help: 'IDs used in ARIA and labels must be unique'\n },\n 'duplicate-id': {\n description: 'Ensure every id attribute value is unique',\n help: 'id attribute value must be unique'\n },\n 'empty-heading': {\n description: 'Ensure headings have discernible text',\n help: 'Headings should not be empty'\n },\n 'empty-table-header': {\n description: 'Ensure table headers have discernible text',\n help: 'Table header text should not be empty'\n },\n 'focus-order-semantics': {\n description: 'Ensure elements in the focus order have a role appropriate for interactive content',\n help: 'Elements in the focus order should have an appropriate role'\n },\n 'form-field-multiple-labels': {\n description: 'Ensure form field does not have multiple label elements',\n help: 'Form field must not have multiple label elements'\n },\n 'frame-focusable-content': {\n description: 'Ensure <frame> and <iframe> elements with focusable content do not have tabindex=-1',\n help: 'Frames with focusable content must not have tabindex=-1'\n },\n 'frame-tested': {\n description: 'Ensure <iframe> and <frame> elements contain the axe-core script',\n help: 'Frames should be tested with axe-core'\n },\n 'frame-title-unique': {\n description: 'Ensure <iframe> and <frame> elements contain a unique title attribute',\n help: 'Frames must have a unique title attribute'\n },\n 'frame-title': {\n description: 'Ensure <iframe> and <frame> elements have an accessible name',\n help: 'Frames must have an accessible name'\n },\n 'heading-order': {\n description: 'Ensure the order of headings is semantically correct',\n help: 'Heading levels should only increase by one'\n },\n 'hidden-content': {\n description: 'Inform users about hidden content.',\n help: 'Hidden content on the page should be analyzed'\n },\n 'html-has-lang': {\n description: 'Ensure every HTML document has a lang attribute',\n help: '<html> element must have a lang attribute'\n },\n 'html-lang-valid': {\n description: 'Ensure the lang attribute of the <html> element has a valid value',\n help: '<html> element must have a valid value for the lang attribute'\n },\n 'html-xml-lang-mismatch': {\n description: 'Ensure that HTML elements with both valid lang and xml:lang attributes agree on the base language of the page',\n help: 'HTML elements with lang and xml:lang must have the same base language'\n },\n 'identical-links-same-purpose': {\n description: 'Ensure that links with the same accessible name serve a similar purpose',\n help: 'Links with the same name must have a similar purpose'\n },\n 'image-alt': {\n description: 'Ensure <img> elements have alternative text or a role of none or presentation',\n help: 'Images must have alternative text'\n },\n 'image-redundant-alt': {\n description: 'Ensure image alternative is not repeated as text',\n help: 'Alternative text of images should not be repeated as text'\n },\n 'input-button-name': {\n description: 'Ensure input buttons have discernible text',\n help: 'Input buttons must have discernible text'\n },\n 'input-image-alt': {\n description: 'Ensure <input type=\"image\"> elements have alternative text',\n help: 'Image buttons must have alternative text'\n },\n 'label-content-name-mismatch': {\n description: 'Ensure that elements labelled through their content must have their visible text as part of their accessible name',\n help: 'Elements must have their visible text as part of their accessible name'\n },\n 'label-title-only': {\n description: 'Ensure that every form element has a visible label and is not solely labeled using hidden labels, or the title or aria-describedby attributes',\n help: 'Form elements should have a visible label'\n },\n label: {\n description: 'Ensure every form element has a label',\n help: 'Form elements must have labels'\n },\n 'landmark-banner-is-top-level': {\n description: 'Ensure the banner landmark is at top level',\n help: 'Banner landmark should not be contained in another landmark'\n },\n 'landmark-complementary-is-top-level': {\n description: 'Ensure the complementary landmark or aside is at top level',\n help: 'Aside should not be contained in another landmark'\n },\n 'landmark-contentinfo-is-top-level': {\n description: 'Ensure the contentinfo landmark is at top level',\n help: 'Contentinfo landmark should not be contained in another landmark'\n },\n 'landmark-main-is-top-level': {\n description: 'Ensure the main landmark is at top level',\n help: 'Main landmark should not be contained in another landmark'\n },\n 'landmark-no-duplicate-banner': {\n description: 'Ensure the document has at most one banner landmark',\n help: 'Document should not have more than one banner landmark'\n },\n 'landmark-no-duplicate-contentinfo': {\n description: 'Ensure the document has at most one contentinfo landmark',\n help: 'Document should not have more than one contentinfo landmark'\n },\n 'landmark-no-duplicate-main': {\n description: 'Ensure the document has at most one main landmark',\n help: 'Document should not have more than one main landmark'\n },\n 'landmark-one-main': {\n description: 'Ensure the document has a main landmark',\n help: 'Document should have one main landmark'\n },\n 'landmark-unique': {\n description: 'Ensure landmarks are unique',\n help: 'Landmarks should have a unique role or role/label/title (i.e. accessible name) combination'\n },\n 'link-in-text-block': {\n description: 'Ensure links are distinguished from surrounding text in a way that does not rely on color',\n help: 'Links must be distinguishable without relying on color'\n },\n 'link-name': {\n description: 'Ensure links have discernible text',\n help: 'Links must have discernible text'\n },\n list: {\n description: 'Ensure that lists are structured correctly',\n help: '<ul> and <ol> must only directly contain <li>, <script> or <template> elements'\n },\n listitem: {\n description: 'Ensure <li> elements are used semantically',\n help: '<li> elements must be contained in a <ul> or <ol>'\n },\n marquee: {\n description: 'Ensure <marquee> elements are not used',\n help: '<marquee> elements are deprecated and must not be used'\n },\n 'meta-refresh-no-exceptions': {\n description: 'Ensure <meta http-equiv=\"refresh\"> is not used for delayed refresh',\n help: 'Delayed refresh must not be used'\n },\n 'meta-refresh': {\n description: 'Ensure <meta http-equiv=\"refresh\"> is not used for delayed refresh',\n help: 'Delayed refresh under 20 hours must not be used'\n },\n 'meta-viewport-large': {\n description: 'Ensure <meta name=\"viewport\"> can scale a significant amount',\n help: 'Users should be able to zoom and scale the text up to 500%'\n },\n 'meta-viewport': {\n description: 'Ensure <meta name=\"viewport\"> does not disable text scaling and zooming',\n help: 'Zooming and scaling must not be disabled'\n },\n 'nested-interactive': {\n description: 'Ensure interactive controls are not nested as they are not always announced by screen readers or can cause focus problems for assistive technologies',\n help: 'Interactive controls must not be nested'\n },\n 'no-autoplay-audio': {\n description: 'Ensure <video> or <audio> elements do not autoplay audio for more than 3 seconds without a control mechanism to stop or mute the audio',\n help: '<video> or <audio> elements must not play automatically'\n },\n 'object-alt': {\n description: 'Ensure <object> elements have alternative text',\n help: '<object> elements must have alternative text'\n },\n 'p-as-heading': {\n description: 'Ensure bold, italic text and font-size is not used to style <p> elements as a heading',\n help: 'Styled <p> elements must not be used as headings'\n },\n 'page-has-heading-one': {\n description: 'Ensure that the page, or at least one of its frames contains a level-one heading',\n help: 'Page should contain a level-one heading'\n },\n 'presentation-role-conflict': {\n description: 'Ensure elements marked as presentational do not have global ARIA or tabindex so that all screen readers ignore them',\n help: 'Elements marked as presentational should be consistently ignored'\n },\n region: {\n description: 'Ensure all page content is contained by landmarks',\n help: 'All page content should be contained by landmarks'\n },\n 'role-img-alt': {\n description: 'Ensure [role=\"img\"] elements have alternative text',\n help: '[role=\"img\"] elements must have alternative text'\n },\n 'scope-attr-valid': {\n description: 'Ensure the scope attribute is used correctly on tables',\n help: 'scope attribute should be used correctly'\n },\n 'scrollable-region-focusable': {\n description: 'Ensure elements that have scrollable content are accessible by keyboard',\n help: 'Scrollable region must have keyboard access'\n },\n 'select-name': {\n description: 'Ensure select element has an accessible name',\n help: 'Select element must have an accessible name'\n },\n 'server-side-image-map': {\n description: 'Ensure that server-side image maps are not used',\n help: 'Server-side image maps must not be used'\n },\n 'skip-link': {\n description: 'Ensure all skip links have a focusable target',\n help: 'The skip-link target should exist and be focusable'\n },\n 'summary-name': {\n description: 'Ensure summary elements have discernible text',\n help: 'Summary elements must have discernible text'\n },\n 'svg-img-alt': {\n description: 'Ensure <svg> elements with an img, graphics-document or graphics-symbol role have accessible text',\n help: '<svg> elements with an img role must have alternative text'\n },\n tabindex: {\n description: 'Ensure tabindex attribute values are not greater than 0',\n help: 'Elements should not have tabindex greater than zero'\n },\n 'table-duplicate-name': {\n description: 'Ensure the <caption> element does not contain the same text as the summary attribute',\n help: 'Tables should not have the same summary and caption'\n },\n 'table-fake-caption': {\n description: 'Ensure that tables with a caption use the <caption> element.',\n help: 'Data or header cells must not be used to give caption to a data table.'\n },\n 'target-size': {\n description: 'Ensure touch targets have sufficient size and space',\n help: 'All touch targets must be 24px large, or leave sufficient space'\n },\n 'td-has-header': {\n description: 'Ensure that each non-empty data cell in a <table> larger than 3 by 3 has one or more table headers',\n help: 'Non-empty <td> elements in larger <table> must have an associated table header'\n },\n 'td-headers-attr': {\n description: 'Ensure that each cell in a table that uses the headers attribute refers only to other <th> elements in that table',\n help: 'Table cell headers attributes must refer to other <th> elements in the same table'\n },\n 'th-has-data-cells': {\n description: 'Ensure that <th> elements and elements with role=columnheader/rowheader have data cells they describe',\n help: 'Table headers in a data table must refer to data cells'\n },\n 'valid-lang': {\n description: 'Ensure lang attributes have valid values',\n help: 'lang attribute must have a valid value'\n },\n 'video-caption': {\n description: 'Ensure <video> elements have captions',\n help: '<video> elements must have captions'\n }\n },\n checks: {\n abstractrole: {\n impact: 'serious',\n messages: {\n pass: 'Abstract roles are not used',\n fail: {\n singular: 'Abstract role cannot be directly used: ${data.values}',\n plural: 'Abstract roles cannot be directly used: ${data.values}'\n }\n }\n },\n 'aria-allowed-attr': {\n impact: 'critical',\n messages: {\n pass: 'ARIA attributes are used correctly for the defined role',\n fail: {\n singular: 'ARIA attribute is not allowed: ${data.values}',\n plural: 'ARIA attributes are not allowed: ${data.values}'\n },\n incomplete: 'Check that there is no problem if the ARIA attribute is ignored on this element: ${data.values}'\n }\n },\n 'aria-allowed-role': {\n impact: 'minor',\n messages: {\n pass: 'ARIA role is allowed for given element',\n fail: {\n singular: 'ARIA role ${data.values} is not allowed for given element',\n plural: 'ARIA roles ${data.values} are not allowed for given element'\n },\n incomplete: {\n singular: 'ARIA role ${data.values} must be removed when the element is made visible, as it is not allowed for the element',\n plural: 'ARIA roles ${data.values} must be removed when the element is made visible, as they are not allowed for the element'\n }\n }\n },\n 'aria-busy': {\n impact: 'serious',\n messages: {\n pass: 'Element has an aria-busy attribute',\n fail: 'Element uses aria-busy=\"true\" while showing a loader'\n }\n },\n 'aria-conditional-attr': {\n impact: 'serious',\n messages: {\n pass: 'ARIA attribute is allowed',\n fail: {\n checkbox: 'Remove aria-checked, or set it to \"${data.checkState}\" to match the real checkbox state',\n rowSingular: 'This attribute is supported with treegrid rows, but not ${data.ownerRole}: ${data.invalidAttrs}',\n rowPlural: 'These attributes are supported with treegrid rows, but not ${data.ownerRole}: ${data.invalidAttrs}'\n }\n }\n },\n 'aria-errormessage': {\n impact: 'critical',\n messages: {\n pass: 'aria-errormessage exists and references elements visible to screen readers that use a supported aria-errormessage technique',\n fail: {\n singular: 'aria-errormessage value `${data.values}` must use a technique to announce the message (e.g., aria-live, aria-describedby, role=alert, etc.)',\n plural: 'aria-errormessage values `${data.values}` must use a technique to announce the message (e.g., aria-live, aria-describedby, role=alert, etc.)',\n hidden: 'aria-errormessage value `${data.values}` cannot reference a hidden element'\n },\n incomplete: {\n singular: 'Ensure aria-errormessage value `${data.values}` references an existing element',\n plural: 'Ensure aria-errormessage values `${data.values}` reference existing elements',\n idrefs: 'Unable to determine if aria-errormessage element exists on the page: ${data.values}'\n }\n }\n },\n 'aria-hidden-body': {\n impact: 'critical',\n messages: {\n pass: 'No aria-hidden attribute is present on document body',\n fail: 'aria-hidden=true should not be present on the document body'\n }\n },\n 'aria-level': {\n impact: 'serious',\n messages: {\n pass: 'aria-level values are valid',\n incomplete: 'aria-level values greater than 6 are not supported in all screenreader and browser combinations'\n }\n },\n 'aria-prohibited-attr': {\n impact: 'serious',\n messages: {\n pass: 'ARIA attribute is allowed',\n fail: {\n hasRolePlural: '${data.prohibited} attributes cannot be used with role \"${data.role}\".',\n hasRoleSingular: '${data.prohibited} attribute cannot be used with role \"${data.role}\".',\n noRolePlural: '${data.prohibited} attributes cannot be used on a ${data.nodeName} with no valid role attribute.',\n noRoleSingular: '${data.prohibited} attribute cannot be used on a ${data.nodeName} with no valid role attribute.'\n },\n incomplete: {\n hasRoleSingular: '${data.prohibited} attribute is not well supported with role \"${data.role}\".',\n hasRolePlural: '${data.prohibited} attributes are not well supported with role \"${data.role}\".',\n noRoleSingular: '${data.prohibited} attribute is not well supported on a ${data.nodeName} with no valid role attribute.',\n noRolePlural: '${data.prohibited} attributes are not well supported on a ${data.nodeName} with no valid role attribute.'\n }\n }\n },\n 'aria-required-attr': {\n impact: 'critical',\n messages: {\n pass: 'All required ARIA attributes are present',\n fail: {\n singular: 'Required ARIA attribute not present: ${data.values}',\n plural: 'Required ARIA attributes not present: ${data.values}'\n }\n }\n },\n 'aria-required-children': {\n impact: 'critical',\n messages: {\n pass: {\n default: 'Required ARIA children are present',\n 'aria-busy': 'Element has an aria-busy attribute, so it is allowed to omit required children'\n },\n fail: {\n singular: 'Required ARIA child role not present: ${data.values}',\n plural: 'Required ARIA children role not present: ${data.values}',\n unallowed: 'Element has children which are not allowed: ${data.values}'\n },\n incomplete: {\n singular: 'Expecting ARIA child role to be added: ${data.values}',\n plural: 'Expecting ARIA children role to be added: ${data.values}'\n }\n }\n },\n 'aria-required-parent': {\n impact: 'critical',\n messages: {\n pass: 'Required ARIA parent role present',\n fail: {\n singular: 'Required ARIA parent role not present: ${data.values}',\n plural: 'Required ARIA parents role not present: ${data.values}'\n }\n }\n },\n 'aria-roledescription': {\n impact: 'serious',\n messages: {\n pass: 'aria-roledescription used on a supported semantic role',\n incomplete: 'Check that the aria-roledescription is announced by supported screen readers',\n fail: 'Give the element a role that supports aria-roledescription'\n }\n },\n 'aria-unsupported-attr': {\n impact: 'critical',\n messages: {\n pass: 'ARIA attribute is supported',\n fail: 'ARIA attribute is not widely supported in screen readers and assistive technologies: ${data.values}'\n }\n },\n 'aria-valid-attr-value': {\n impact: 'critical',\n messages: {\n pass: 'ARIA attribute values are valid',\n fail: {\n singular: 'Invalid ARIA attribute value: ${data.values}',\n plural: 'Invalid ARIA attribute values: ${data.values}'\n },\n incomplete: {\n noId: 'ARIA attribute element ID does not exist on the page: ${data.needsReview}',\n noIdShadow: 'ARIA attribute element ID does not exist on the page or is a descendant of a different shadow DOM tree: ${data.needsReview}',\n ariaCurrent: 'ARIA attribute value is invalid and will be treated as \"aria-current=true\": ${data.needsReview}',\n idrefs: 'Unable to determine if ARIA attribute element ID exists on the page: ${data.needsReview}',\n empty: 'ARIA attribute value is ignored while empty: ${data.needsReview}',\n controlsWithinPopup: 'Unable to determine if aria-controls referenced ID exists on the page while using aria-haspopup: ${data.needsReview}'\n }\n }\n },\n 'aria-valid-attr': {\n impact: 'critical',\n messages: {\n pass: 'ARIA attribute name is valid',\n fail: {\n singular: 'Invalid ARIA attribute name: ${data.values}',\n plural: 'Invalid ARIA attribute names: ${data.values}'\n }\n }\n },\n 'braille-label-equivalent': {\n impact: 'serious',\n messages: {\n pass: 'aria-braillelabel is used on an element with accessible text',\n fail: 'aria-braillelabel is used on an element with no accessible text',\n incomplete: 'Unable to compute accessible text'\n }\n },\n 'braille-roledescription-equivalent': {\n impact: 'serious',\n messages: {\n pass: 'aria-brailleroledescription is used on an element with aria-roledescription',\n fail: {\n noRoleDescription: 'aria-brailleroledescription is used on an element with no aria-roledescription',\n emptyRoleDescription: 'aria-brailleroledescription is used on an element with an empty aria-roledescription'\n }\n }\n },\n deprecatedrole: {\n impact: 'minor',\n messages: {\n pass: 'ARIA role is not deprecated',\n fail: 'The role used is deprecated: ${data}'\n }\n },\n fallbackrole: {\n impact: 'serious',\n messages: {\n pass: 'Only one role value used',\n fail: 'Use only one role value, since fallback roles are not supported in older browsers',\n incomplete: 'Use only role \\'presentation\\' or \\'none\\' since they are synonymous.'\n }\n },\n 'has-global-aria-attribute': {\n impact: 'minor',\n messages: {\n pass: {\n singular: 'Element has global ARIA attribute: ${data.values}',\n plural: 'Element has global ARIA attributes: ${data.values}'\n },\n fail: 'Element does not have global ARIA attribute'\n }\n },\n 'has-widget-role': {\n impact: 'minor',\n messages: {\n pass: 'Element has a widget role.',\n fail: 'Element does not have a widget role.'\n }\n },\n invalidrole: {\n impact: 'critical',\n messages: {\n pass: 'ARIA role is valid',\n fail: {\n singular: 'Role must be one of the valid ARIA roles: ${data.values}',\n plural: 'Roles must be one of the valid ARIA roles: ${data.values}'\n }\n }\n },\n 'is-element-focusable': {\n impact: 'minor',\n messages: {\n pass: 'Element is focusable.',\n fail: 'Element is not focusable.'\n }\n },\n 'no-implicit-explicit-label': {\n impact: 'serious',\n messages: {\n pass: 'There is no mismatch between a <label> and accessible name',\n incomplete: 'Check that the <label> does not need be part of the ARIA ${data} field\\'s name'\n }\n },\n unsupportedrole: {\n impact: 'critical',\n messages: {\n pass: 'ARIA role is supported',\n fail: 'The role used is not widely supported in screen readers and assistive technologies: ${data}'\n }\n },\n 'valid-scrollable-semantics': {\n impact: 'minor',\n messages: {\n pass: 'Element has valid semantics for an element in the focus order.',\n fail: 'Element has invalid semantics for an element in the focus order.'\n }\n },\n 'color-contrast-enhanced': {\n impact: 'serious',\n messages: {\n pass: 'Element has sufficient color contrast of ${data.contrastRatio}',\n fail: {\n default: 'Element has insufficient color contrast of ${data.contrastRatio} (foreground color: ${data.fgColor}, background color: ${data.bgColor}, font size: ${data.fontSize}, font weight: ${data.fontWeight}). Expected contrast ratio of ${data.expectedContrastRatio}',\n fgOnShadowColor: 'Element has insufficient color contrast of ${data.contrastRatio} between the foreground and shadow color (foreground color: ${data.fgColor}, text-shadow color: ${data.shadowColor}, font size: ${data.fontSize}, font weight: ${data.fontWeight}). Expected contrast ratio of ${data.expectedContrastRatio}',\n shadowOnBgColor: 'Element has insufficient color contrast of ${data.contrastRatio} between the shadow color and background color (text-shadow color: ${data.shadowColor}, background color: ${data.bgColor}, font size: ${data.fontSize}, font weight: ${data.fontWeight}). Expected contrast ratio of ${data.expectedContrastRatio}'\n },\n incomplete: {\n default: 'Unable to determine contrast ratio',\n bgImage: 'Element\\'s background color could not be determined due to a background image',\n bgGradient: 'Element\\'s background color could not be determined due to a background gradient',\n imgNode: 'Element\\'s background color could not be determined because element contains an image node',\n bgOverlap: 'Element\\'s background color could not be determined because it is overlapped by another element',\n fgAlpha: 'Element\\'s foreground color could not be determined because of alpha transparency',\n elmPartiallyObscured: 'Element\\'s background color could not be determined because it\\'s partially obscured by another element',\n elmPartiallyObscuring: 'Element\\'s background color could not be determined because it partially overlaps other elements',\n outsideViewport: 'Element\\'s background color could not be determined because it\\'s outside the viewport',\n equalRatio: 'Element has a 1:1 contrast ratio with the background',\n shortTextContent: 'Element content is too short to determine if it is actual text content',\n nonBmp: 'Element content contains only non-text characters',\n pseudoContent: 'Element\\'s background color could not be determined due to a pseudo element'\n }\n }\n },\n 'color-contrast': {\n impact: 'serious',\n messages: {\n pass: {\n default: 'Element has sufficient color contrast of ${data.contrastRatio}',\n hidden: 'Element is hidden'\n },\n fail: {\n default: 'Element has insufficient color contrast of ${data.contrastRatio} (foreground color: ${data.fgColor}, background color: ${data.bgColor}, font size: ${data.fontSize}, font weight: ${data.fontWeight}). Expected contrast ratio of ${data.expectedContrastRatio}',\n fgOnShadowColor: 'Element has insufficient color contrast of ${data.contrastRatio} between the foreground and shadow color (foreground color: ${data.fgColor}, text-shadow color: ${data.shadowColor}, font size: ${data.fontSize}, font weight: ${data.fontWeight}). Expected contrast ratio of ${data.expectedContrastRatio}',\n shadowOnBgColor: 'Element has insufficient color contrast of ${data.contrastRatio} between the shadow color and background color (text-shadow color: ${data.shadowColor}, background color: ${data.bgColor}, font size: ${data.fontSize}, font weight: ${data.fontWeight}). Expected contrast ratio of ${data.expectedContrastRatio}'\n },\n incomplete: {\n default: 'Unable to determine contrast ratio',\n bgImage: 'Element\\'s background color could not be determined due to a background image',\n bgGradient: 'Element\\'s background color could not be determined due to a background gradient',\n imgNode: 'Element\\'s background color could not be determined because element contains an image node',\n bgOverlap: 'Element\\'s background color could not be determined because it is overlapped by another element',\n complexTextShadows: 'Element\\'s contrast could not be determined because it uses complex text shadows',\n fgAlpha: 'Element\\'s foreground color could not be determined because of alpha transparency',\n elmPartiallyObscured: 'Element\\'s background color could not be determined because it\\'s partially obscured by another element',\n elmPartiallyObscuring: 'Element\\'s background color could not be determined because it partially overlaps other elements',\n outsideViewport: 'Element\\'s background color could not be determined because it\\'s outside the viewport',\n equalRatio: 'Element has a 1:1 contrast ratio with the background',\n shortTextContent: 'Element content is too short to determine if it is actual text content',\n nonBmp: 'Element content contains only non-text characters',\n pseudoContent: 'Element\\'s background color could not be determined due to a pseudo element'\n }\n }\n },\n 'link-in-text-block-style': {\n impact: 'serious',\n messages: {\n pass: 'Links can be distinguished from surrounding text by visual styling',\n incomplete: {\n default: 'Check if the link needs styling to distinguish it from nearby text',\n pseudoContent: 'Check if the link\\'s pseudo style is sufficient to distinguish it from the surrounding text'\n },\n fail: 'The link has no styling (such as underline) to distinguish it from the surrounding text'\n }\n },\n 'link-in-text-block': {\n impact: 'serious',\n messages: {\n pass: 'Links can be distinguished from surrounding text in some way other than by color',\n fail: {\n fgContrast: 'The link has insufficient color contrast of ${data.contrastRatio}:1 with the surrounding text. (Minimum contrast is ${data.requiredContrastRatio}:1, link text: ${data.nodeColor}, surrounding text: ${data.parentColor})',\n bgContrast: 'The link background has insufficient color contrast of ${data.contrastRatio} (Minimum contrast is ${data.requiredContrastRatio}:1, link background color: ${data.nodeBackgroundColor}, surrounding background color: ${data.parentBackgroundColor})'\n },\n incomplete: {\n default: 'Element\\'s foreground contrast ratio could not be determined',\n bgContrast: 'Element\\'s background contrast ratio could not be determined',\n bgImage: 'Element\\'s contrast ratio could not be determined due to a background image',\n bgGradient: 'Element\\'s contrast ratio could not be determined due to a background gradient',\n imgNode: 'Element\\'s contrast ratio could not be determined because element contains an image node',\n bgOverlap: 'Element\\'s contrast ratio could not be determined because of element overlap'\n }\n }\n },\n 'autocomplete-appropriate': {\n impact: 'serious',\n messages: {\n pass: 'The autocomplete value is on an appropriate element',\n fail: 'The autocomplete value is inappropriate for this type of input'\n }\n },\n 'autocomplete-valid': {\n impact: 'serious',\n messages: {\n pass: 'the autocomplete attribute is correctly formatted',\n fail: 'the autocomplete attribute is incorrectly formatted',\n incomplete: 'the autocomplete attribute has a non-standard value. Check whether any standard value could be used instead.'\n }\n },\n accesskeys: {\n impact: 'serious',\n messages: {\n pass: 'Accesskey attribute value is unique',\n fail: 'Document has multiple elements with the same accesskey'\n }\n },\n 'focusable-content': {\n impact: 'serious',\n messages: {\n pass: 'Element contains focusable elements',\n fail: 'Element should have focusable content'\n }\n },\n 'focusable-disabled': {\n impact: 'serious',\n messages: {\n pass: 'No focusable elements contained within element',\n incomplete: 'Check if the focusable elements immediately move the focus indicator',\n fail: 'Focusable content should be disabled or be removed from the DOM'\n }\n },\n 'focusable-element': {\n impact: 'serious',\n messages: {\n pass: 'Element is focusable',\n fail: 'Element should be focusable'\n }\n },\n 'focusable-modal-open': {\n impact: 'serious',\n messages: {\n pass: 'No focusable elements while a modal is open',\n incomplete: 'Check that focusable elements are not tabbable in the current state'\n }\n },\n 'focusable-no-name': {\n impact: 'serious',\n messages: {\n pass: 'Element is not in tab order or has accessible text',\n fail: 'Element is in tab order and does not have accessible text',\n incomplete: 'Unable to determine if element has an accessible name'\n }\n },\n 'focusable-not-tabbable': {\n impact: 'serious',\n messages: {\n pass: 'No focusable elements contained within element',\n incomplete: 'Check if the focusable elements immediately move the focus indicator',\n fail: 'Focusable content should have tabindex=\"-1\" or be removed from the DOM'\n }\n },\n 'frame-focusable-content': {\n impact: 'serious',\n messages: {\n pass: 'Element does not have focusable descendants',\n fail: 'Element has focusable descendants',\n incomplete: 'Could not determine if element has descendants'\n }\n },\n 'landmark-is-top-level': {\n impact: 'moderate',\n messages: {\n pass: 'The ${data.role} landmark is at the top level.',\n fail: 'The ${data.role} landmark is contained in another landmark.'\n }\n },\n 'no-focusable-content': {\n impact: 'serious',\n messages: {\n pass: 'Element does not have focusable descendants',\n fail: {\n default: 'Element has focusable descendants',\n notHidden: 'Using a negative tabindex on an element inside an interactive control does not prevent assistive technologies from focusing the element (even with aria-hidden=\"true\")'\n },\n incomplete: 'Could not determine if element has descendants'\n }\n },\n 'page-has-heading-one': {\n impact: 'moderate',\n messages: {\n pass: 'Page has at least one level-one heading',\n fail: 'Page must have a level-one heading'\n }\n },\n 'page-has-main': {\n impact: 'moderate',\n messages: {\n pass: 'Document has at least one main landmark',\n fail: 'Document does not have a main landmark'\n }\n },\n 'page-no-duplicate-banner': {\n impact: 'moderate',\n messages: {\n pass: 'Document does not have more than one banner landmark',\n fail: 'Document has more than one banner landmark'\n }\n },\n 'page-no-duplicate-contentinfo': {\n impact: 'moderate',\n messages: {\n pass: 'Document does not have more than one contentinfo landmark',\n fail: 'Document has more than one contentinfo landmark'\n }\n },\n 'page-no-duplicate-main': {\n impact: 'moderate',\n messages: {\n pass: 'Document does not have more than one main landmark',\n fail: 'Document has more than one main landmark'\n }\n },\n tabindex: {\n impact: 'serious',\n messages: {\n pass: 'Element does not have a tabindex greater than 0',\n fail: 'Element has a tabindex greater than 0'\n }\n },\n 'alt-space-value': {\n impact: 'critical',\n messages: {\n pass: 'Element has a valid alt attribute value',\n fail: 'Element has an alt attribute containing only a space character, which is not ignored by all screen readers'\n }\n },\n 'duplicate-img-label': {\n impact: 'minor',\n messages: {\n pass: 'Element does not duplicate existing text in <img> alt text',\n fail: 'Element contains <img> element with alt text that duplicates existing text'\n }\n },\n 'explicit-label': {\n impact: 'critical',\n messages: {\n pass: 'Element has an explicit <label>',\n fail: 'Element does not have an explicit <label>',\n incomplete: 'Unable to determine if form element has an explicit <label>'\n }\n },\n 'help-same-as-label': {\n impact: 'minor',\n messages: {\n pass: 'Help text (title or aria-describedby) does not duplicate label text',\n fail: 'Help text (title or aria-describedby) text is the same as the label text'\n }\n },\n 'hidden-explicit-label': {\n impact: 'critical',\n messages: {\n pass: 'Form element has a visible explicit <label>',\n fail: 'Form element has explicit <label> that is hidden',\n incomplete: 'Unable to determine if form element has explicit <label> that is hidden'\n }\n },\n 'implicit-label': {\n impact: 'critical',\n messages: {\n pass: 'Element has an implicit (wrapped) <label>',\n fail: 'Element does not have an implicit (wrapped) <label>',\n incomplete: 'Unable to determine if form element has an implicit (wrapped) <label>'\n }\n },\n 'label-content-name-mismatch': {\n impact: 'serious',\n messages: {\n pass: 'Element contains visible text as part of it\\'s accessible name',\n fail: 'Text inside the element is not included in the accessible name'\n }\n },\n 'multiple-label': {\n impact: 'moderate',\n messages: {\n pass: 'Form field does not have multiple label elements',\n incomplete: 'Multiple label elements is not widely supported in assistive technologies. Ensure the first label contains all necessary information.'\n }\n },\n 'title-only': {\n impact: 'serious',\n messages: {\n pass: 'Form element does not solely use title attribute for its label',\n fail: 'Only title used to generate label for form element'\n }\n },\n 'landmark-is-unique': {\n impact: 'moderate',\n messages: {\n pass: 'Landmarks must have a unique role or role/label/title (i.e. accessible name) combination',\n fail: 'The landmark must have a unique aria-label, aria-labelledby, or title to make landmarks distinguishable'\n }\n },\n 'has-lang': {\n impact: 'serious',\n messages: {\n pass: 'The <html> element has a lang attribute',\n fail: {\n noXHTML: 'The xml:lang attribute is not valid on HTML pages, use the lang attribute.',\n noLang: 'The <html> element does not have a lang attribute'\n }\n }\n },\n 'valid-lang': {\n impact: 'serious',\n messages: {\n pass: 'Value of lang attribute is included in the list of valid languages',\n fail: 'Value of lang attribute not included in the list of valid languages'\n }\n },\n 'xml-lang-mismatch': {\n impact: 'moderate',\n messages: {\n pass: 'Lang and xml:lang attributes have the same base language',\n fail: 'Lang and xml:lang attributes do not have the same base language'\n }\n },\n dlitem: {\n impact: 'serious',\n messages: {\n pass: 'Description list item has a <dl> parent element',\n fail: 'Description list item does not have a <dl> parent element'\n }\n },\n listitem: {\n impact: 'serious',\n messages: {\n pass: 'List item has a <ul>, <ol> or role=\"list\" parent element',\n fail: {\n default: 'List item does not have a <ul>, <ol> parent element',\n roleNotValid: 'List item parent element has a role that is not role=\"list\"'\n }\n }\n },\n 'only-dlitems': {\n impact: 'serious',\n messages: {\n pass: 'dl element only has direct children that are allowed inside; <dt>, <dd>, or <div> elements',\n fail: 'dl element has direct children that are not allowed: ${data.values}'\n }\n },\n 'only-listitems': {\n impact: 'serious',\n messages: {\n pass: 'List element only has direct children that are allowed inside <li> elements',\n fail: 'List element has direct children that are not allowed: ${data.values}'\n }\n },\n 'structured-dlitems': {\n impact: 'serious',\n messages: {\n pass: 'When not empty, element has both <dt> and <dd> elements',\n fail: 'When not empty, element does not have at least one <dt> element followed by at least one <dd> element'\n }\n },\n caption: {\n impact: 'critical',\n messages: {\n pass: 'The multimedia element has a captions track',\n incomplete: 'Check that captions are available for the element'\n }\n },\n 'frame-tested': {\n impact: 'critical',\n messages: {\n pass: 'The iframe was tested with axe-core',\n fail: 'The iframe could not be tested with axe-core',\n incomplete: 'The iframe still has to be tested with axe-core'\n }\n },\n 'no-autoplay-audio': {\n impact: 'moderate',\n messages: {\n pass: '<video> or <audio> does not output audio for more than allowed duration or has controls mechanism',\n fail: '<video> or <audio> outputs audio for more than allowed duration and does not have a controls mechanism',\n incomplete: 'Check that the <video> or <audio> does not output audio for more than allowed duration or provides a controls mechanism'\n }\n },\n 'css-orientation-lock': {\n impact: 'serious',\n messages: {\n pass: 'Display is operable, and orientation lock does not exist',\n fail: 'CSS Orientation lock is applied, and makes display inoperable',\n incomplete: 'CSS Orientation lock cannot be determined'\n }\n },\n 'meta-viewport-large': {\n impact: 'minor',\n messages: {\n pass: '<meta> tag does not prevent significant zooming on mobile devices',\n fail: '<meta> tag limits zooming on mobile devices'\n }\n },\n 'meta-viewport': {\n impact: 'critical',\n messages: {\n pass: '<meta> tag does not disable zooming on mobile devices',\n fail: '${data} on <meta> tag disables zooming on mobile devices'\n }\n },\n 'target-offset': {\n impact: 'serious',\n messages: {\n pass: {\n default: 'Target has sufficient space from its closest neighbors. Safe clickable space has a diameter of ${data.closestOffset}px which is at least ${data.minOffset}px.',\n large: 'Target far exceeds the minimum size of ${data.minOffset}px.'\n },\n fail: 'Target has insufficient space to its closest neighbors. Safe clickable space has a diameter of ${data.closestOffset}px instead of at least ${data.minOffset}px.',\n incomplete: {\n default: 'Element with negative tabindex has insufficient space to its closest neighbors. Safe clickable space has a diameter of ${data.closestOffset}px instead of at least ${data.minOffset}px. Is this a target?',\n nonTabbableNeighbor: 'Target has insufficient space to its closest neighbors. Safe clickable space has a diameter of ${data.closestOffset}px instead of at least ${data.minOffset}px. Is the neighbor a target?',\n tooManyRects: 'Could not get the target size because there are too many overlapping elements'\n }\n }\n },\n 'target-size': {\n impact: 'serious',\n messages: {\n pass: {\n default: 'Control has sufficient size (${data.width}px by ${data.height}px, should be at least ${data.minSize}px by ${data.minSize}px)',\n obscured: 'Control is ignored because it is fully obscured and thus not clickable',\n large: 'Target far exceeds the minimum size of ${data.minSize}px.'\n },\n fail: {\n default: 'Target has insufficient size (${data.width}px by ${data.height}px, should be at least ${data.minSize}px by ${data.minSize}px)',\n partiallyObscured: 'Target has insufficient size because it is partially obscured (smallest space is ${data.width}px by ${data.height}px, should be at least ${data.minSize}px by ${data.minSize}px)'\n },\n incomplete: {\n default: 'Element with negative tabindex has insufficient size (${data.width}px by ${data.height}px, should be at least ${data.minSize}px by ${data.minSize}px). Is this a target?',\n contentOverflow: 'Element size could not be accurately determined due to overflow content',\n partiallyObscured: 'Element with negative tabindex has insufficient size because it is partially obscured (smallest space is ${data.width}px by ${data.height}px, should be at least ${data.minSize}px by ${data.minSize}px). Is this a target?',\n partiallyObscuredNonTabbable: 'Target has insufficient size because it is partially obscured by a neighbor with negative tabindex (smallest space is ${data.width}px by ${data.height}px, should be at least ${data.minSize}px by ${data.minSize}px). Is the neighbor a target?',\n tooManyRects: 'Could not get the target size because there are too many overlapping elements'\n }\n }\n },\n 'header-present': {\n impact: 'serious',\n messages: {\n pass: 'Page has a heading',\n fail: 'Page does not have a heading'\n }\n },\n 'heading-order': {\n impact: 'moderate',\n messages: {\n pass: 'Heading order valid',\n fail: 'Heading order invalid',\n incomplete: 'Unable to determine previous heading'\n }\n },\n 'identical-links-same-purpose': {\n impact: 'minor',\n messages: {\n pass: 'There are no other links with the same name, that go to a different URL',\n incomplete: 'Check that links have the same purpose, or are intentionally ambiguous.'\n }\n },\n 'internal-link-present': {\n impact: 'serious',\n messages: {\n pass: 'Valid skip link found',\n fail: 'No valid skip link found'\n }\n },\n landmark: {\n impact: 'serious',\n messages: {\n pass: 'Page has a landmark region',\n fail: 'Page does not have a landmark region'\n }\n },\n 'meta-refresh-no-exceptions': {\n impact: 'minor',\n messages: {\n pass: '<meta> tag does not immediately refresh the page',\n fail: '<meta> tag forces timed refresh of page'\n }\n },\n 'meta-refresh': {\n impact: 'critical',\n messages: {\n pass: '<meta> tag does not immediately refresh the page',\n fail: '<meta> tag forces timed refresh of page (less than 20 hours)'\n }\n },\n 'p-as-heading': {\n impact: 'serious',\n messages: {\n pass: '<p> elements are not styled as headings',\n fail: 'Heading elements should be used instead of styled <p> elements',\n incomplete: 'Unable to determine if <p> elements are styled as headings'\n }\n },\n region: {\n impact: 'moderate',\n messages: {\n pass: 'All page content is contained by landmarks',\n fail: 'Some page content is not contained by landmarks'\n }\n },\n 'skip-link': {\n impact: 'moderate',\n messages: {\n pass: 'Skip link target exists',\n incomplete: 'Skip link target should become visible on activation',\n fail: 'No skip link target'\n }\n },\n 'unique-frame-title': {\n impact: 'serious',\n messages: {\n pass: 'Element\\'s title attribute is unique',\n fail: 'Element\\'s title attribute is not unique'\n }\n },\n 'duplicate-id-active': {\n impact: 'serious',\n messages: {\n pass: 'Document has no active elements that share the same id attribute',\n fail: 'Document has active elements with the same id attribute: ${data}'\n }\n },\n 'duplicate-id-aria': {\n impact: 'critical',\n messages: {\n pass: 'Document has no elements referenced with ARIA or labels that share the same id attribute',\n fail: 'Document has multiple elements referenced with ARIA with the same id attribute: ${data}'\n }\n },\n 'duplicate-id': {\n impact: 'minor',\n messages: {\n pass: 'Document has no static elements that share the same id attribute',\n fail: 'Document has multiple static elements with the same id attribute: ${data}'\n }\n },\n 'aria-label': {\n impact: 'serious',\n messages: {\n pass: 'aria-label attribute exists and is not empty',\n fail: 'aria-label attribute does not exist or is empty'\n }\n },\n 'aria-labelledby': {\n impact: 'serious',\n messages: {\n pass: 'aria-labelledby attribute exists and references elements that are visible to screen readers',\n fail: 'aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty',\n incomplete: 'Ensure aria-labelledby references an existing element'\n }\n },\n 'avoid-inline-spacing': {\n impact: 'serious',\n messages: {\n pass: 'No inline styles with \\'!important\\' that affect text spacing has been specified',\n fail: {\n singular: 'Remove \\'!important\\' from inline style ${data.values}, as overriding this is not supported by most browsers',\n plural: 'Remove \\'!important\\' from inline styles ${data.values}, as overriding this is not supported by most browsers'\n }\n }\n },\n 'button-has-visible-text': {\n impact: 'critical',\n messages: {\n pass: 'Element has inner text that is visible to screen readers',\n fail: 'Element does not have inner text that is visible to screen readers',\n incomplete: 'Unable to determine if element has children'\n }\n },\n 'doc-has-title': {\n impact: 'serious',\n messages: {\n pass: 'Document has a non-empty <title> element',\n fail: 'Document does not have a non-empty <title> element'\n }\n },\n 'error-occurred': {\n messages: {\n pass: '',\n incomplete: 'Axe encountered an error; test the page for this type of problem manually'\n }\n },\n exists: {\n impact: 'minor',\n messages: {\n pass: 'Element does not exist',\n incomplete: 'Element exists'\n }\n },\n 'has-alt': {\n impact: 'critical',\n messages: {\n pass: 'Element has an alt attribute',\n fail: 'Element does not have an alt attribute'\n }\n },\n 'has-visible-text': {\n impact: 'minor',\n messages: {\n pass: 'Element has text that is visible to screen readers',\n fail: 'Element does not have text that is visible to screen readers',\n incomplete: 'Unable to determine if element has children'\n }\n },\n 'important-letter-spacing': {\n impact: 'serious',\n messages: {\n pass: 'Letter-spacing in the style attribute is not set to !important, or meets the minimum',\n fail: 'letter-spacing in the style attribute must not use !important, or be at ${data.minValue}em (current ${data.value}em)'\n }\n },\n 'important-line-height': {\n impact: 'serious',\n messages: {\n pass: 'line-height in the style attribute is not set to !important, or meets the minimum',\n fail: 'line-height in the style attribute must not use !important, or be at ${data.minValue}em (current ${data.value}em)'\n }\n },\n 'important-word-spacing': {\n impact: 'serious',\n messages: {\n pass: 'word-spacing in the style attribute is not set to !important, or meets the minimum',\n fail: 'word-spacing in the style attribute must not use !important, or be at ${data.minValue}em (current ${data.value}em)'\n }\n },\n 'is-on-screen': {\n impact: 'serious',\n messages: {\n pass: 'Element is not visible',\n fail: 'Element is visible'\n }\n },\n 'non-empty-alt': {\n impact: 'critical',\n messages: {\n pass: 'Element has a non-empty alt attribute',\n fail: {\n noAttr: 'Element has no alt attribute',\n emptyAttr: 'Element has an empty alt attribute'\n }\n }\n },\n 'non-empty-if-present': {\n impact: 'critical',\n messages: {\n pass: {\n default: 'Element does not have a value attribute',\n 'has-label': 'Element has a non-empty value attribute'\n },\n fail: 'Element has a value attribute and the value attribute is empty'\n }\n },\n 'non-empty-placeholder': {\n impact: 'serious',\n messages: {\n pass: 'Element has a placeholder attribute',\n fail: {\n noAttr: 'Element has no placeholder attribute',\n emptyAttr: 'Element has an empty placeholder attribute'\n }\n }\n },\n 'non-empty-title': {\n impact: 'serious',\n messages: {\n pass: 'Element has a title attribute',\n fail: {\n noAttr: 'Element has no title attribute',\n emptyAttr: 'Element has an empty title attribute'\n }\n }\n },\n 'non-empty-value': {\n impact: 'critical',\n messages: {\n pass: 'Element has a non-empty value attribute',\n fail: {\n noAttr: 'Element has no value attribute',\n emptyAttr: 'Element has an empty value attribute'\n }\n }\n },\n 'presentational-role': {\n impact: 'minor',\n messages: {\n pass: 'Element\\'s default semantics were overridden with role=\"${data.role}\"',\n fail: {\n default: 'Element\\'s default semantics were not overridden with role=\"none\" or role=\"presentation\"',\n globalAria: 'Element\\'s role is not presentational because it has a global ARIA attribute',\n focusable: 'Element\\'s role is not presentational because it is focusable',\n both: 'Element\\'s role is not presentational because it has a global ARIA attribute and is focusable',\n iframe: 'Using the \"title\" attribute on an ${data.nodeName} element with a presentational role behaves inconsistently between screen readers'\n }\n }\n },\n 'role-none': {\n impact: 'minor',\n messages: {\n pass: 'Element\\'s default semantics were overridden with role=\"none\"',\n fail: 'Element\\'s default semantics were not overridden with role=\"none\"'\n }\n },\n 'role-presentation': {\n impact: 'minor',\n messages: {\n pass: 'Element\\'s default semantics were overridden with role=\"presentation\"',\n fail: 'Element\\'s default semantics were not overridden with role=\"presentation\"'\n }\n },\n 'svg-non-empty-title': {\n impact: 'serious',\n messages: {\n pass: 'Element has a child that is a title',\n fail: {\n noTitle: 'Element has no child that is a title',\n emptyTitle: 'Element child title is empty'\n },\n incomplete: 'Unable to determine element has a child that is a title'\n }\n },\n 'caption-faked': {\n impact: 'serious',\n messages: {\n pass: 'The first row of a table is not used as a caption',\n fail: 'The first child of the table should be a caption instead of a table cell'\n }\n },\n 'html5-scope': {\n impact: 'moderate',\n messages: {\n pass: 'Scope attribute is only used on table header elements (<th>)',\n fail: 'In HTML 5, scope attributes may only be used on table header elements (<th>)'\n }\n },\n 'same-caption-summary': {\n impact: 'minor',\n messages: {\n pass: 'Content of summary attribute and <caption> are not duplicated',\n fail: 'Content of summary attribute and <caption> element are identical',\n incomplete: 'Unable to determine if <table> element has a caption'\n }\n },\n 'scope-value': {\n impact: 'critical',\n messages: {\n pass: 'Scope attribute is used correctly',\n fail: 'The value of the scope attribute may only be \\'row\\' or \\'col\\''\n }\n },\n 'td-has-header': {\n impact: 'critical',\n messages: {\n pass: 'All non-empty data cells have table headers',\n fail: 'Some non-empty data cells do not have table headers'\n }\n },\n 'td-headers-attr': {\n impact: 'serious',\n messages: {\n pass: 'The headers attribute is exclusively used to refer to other header cells in the table',\n incomplete: 'The headers attribute is empty',\n fail: {\n 'cell-header-not-in-table': 'The headers attribute is not exclusively used to refer to other header cells in the table',\n 'cell-header-not-th': 'The headers attribute must refer to header cells, not data cells',\n 'header-refs-self': 'The element with headers attribute refers to itself'\n }\n }\n },\n 'th-has-data-cells': {\n impact: 'serious',\n messages: {\n pass: 'All table header cells refer to data cells',\n fail: 'Not all table header cells refer to data cells',\n incomplete: 'Table data cells are missing or empty'\n }\n },\n 'hidden-content': {\n impact: 'minor',\n messages: {\n pass: 'All content on the page has been analyzed.',\n fail: 'There were problems analyzing the content on this page.',\n incomplete: 'There is hidden content on the page that was not analyzed. You will need to trigger the display of this content in order to analyze it.'\n }\n }\n },\n failureSummaries: {\n any: {\n failureMessage: function anonymous(it) {\n var out = 'Fix any of the following:';\n var arr1 = it;\n if (arr1) {\n var value, i1 = -1, l1 = arr1.length - 1;\n while (i1 < l1) {\n value = arr1[i1 += 1];\n out += '\\n ' + value.split('\\n').join('\\n ');\n }\n }\n return out;\n }\n },\n none: {\n failureMessage: function anonymous(it) {\n var out = 'Fix all of the following:';\n var arr1 = it;\n if (arr1) {\n var value, i1 = -1, l1 = arr1.length - 1;\n while (i1 < l1) {\n value = arr1[i1 += 1];\n out += '\\n ' + value.split('\\n').join('\\n ');\n }\n }\n return out;\n }\n }\n },\n incompleteFallbackMessage: 'axe couldn\\'t tell the reason. Time to break out the element inspector!'\n },\n rules: [ {\n id: 'accesskeys',\n impact: 'serious',\n selector: '[accesskey]',\n excludeHidden: false,\n tags: [ 'cat.keyboard', 'best-practice' ],\n all: [],\n any: [],\n none: [ 'accesskeys' ]\n }, {\n id: 'area-alt',\n impact: 'critical',\n selector: 'map area[href]',\n excludeHidden: false,\n tags: [ 'cat.text-alternatives', 'wcag2a', 'wcag244', 'wcag412', 'section508', 'section508.22.a', 'TTv5', 'TT6.a', 'EN-301-549', 'EN-9.2.4.4', 'EN-9.4.1.2', 'ACT', 'RGAAv4', 'RGAA-1.1.2' ],\n actIds: [ 'c487ae' ],\n all: [],\n any: [ {\n options: {\n attribute: 'alt'\n },\n id: 'non-empty-alt'\n }, 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n } ],\n none: []\n }, {\n id: 'aria-allowed-attr',\n impact: 'critical',\n matches: 'aria-allowed-attr-matches',\n tags: [ 'cat.aria', 'wcag2a', 'wcag412', 'EN-301-549', 'EN-9.4.1.2', 'RGAAv4', 'RGAA-7.1.1' ],\n actIds: [ '5c01ea' ],\n all: [ {\n options: {\n validTreeRowAttrs: [ 'aria-posinset', 'aria-setsize', 'aria-expanded', 'aria-level' ]\n },\n id: 'aria-allowed-attr'\n } ],\n any: [],\n none: [ 'aria-unsupported-attr' ]\n }, {\n id: 'aria-allowed-role',\n impact: 'minor',\n excludeHidden: false,\n selector: '[role]',\n matches: 'aria-allowed-role-matches',\n tags: [ 'cat.aria', 'best-practice' ],\n all: [],\n any: [ {\n options: {\n allowImplicit: true,\n ignoredTags: []\n },\n id: 'aria-allowed-role'\n } ],\n none: []\n }, {\n id: 'aria-braille-equivalent',\n reviewOnFail: true,\n impact: 'serious',\n selector: '[aria-brailleroledescription], [aria-braillelabel]',\n tags: [ 'cat.aria', 'wcag2a', 'wcag412', 'EN-301-549', 'EN-9.4.1.2' ],\n all: [ 'braille-roledescription-equivalent', 'braille-label-equivalent' ],\n any: [],\n none: []\n }, {\n id: 'aria-command-name',\n impact: 'serious',\n selector: '[role=\"link\"], [role=\"button\"], [role=\"menuitem\"]',\n matches: 'no-naming-method-matches',\n tags: [ 'cat.aria', 'wcag2a', 'wcag412', 'TTv5', 'TT6.a', 'EN-301-549', 'EN-9.4.1.2', 'ACT', 'RGAAv4', 'RGAA-11.9.1' ],\n actIds: [ '97a4e1' ],\n all: [],\n any: [ 'has-visible-text', 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n } ],\n none: []\n }, {\n id: 'aria-conditional-attr',\n impact: 'serious',\n matches: 'aria-allowed-attr-matches',\n tags: [ 'cat.aria', 'wcag2a', 'wcag412', 'EN-301-549', 'EN-9.4.1.2', 'RGAAv4', 'RGAA-7.1.1' ],\n actIds: [ '5c01ea' ],\n all: [ {\n options: {\n invalidTableRowAttrs: [ 'aria-posinset', 'aria-setsize', 'aria-expanded', 'aria-level' ]\n },\n id: 'aria-conditional-attr'\n } ],\n any: [],\n none: []\n }, {\n id: 'aria-deprecated-role',\n impact: 'minor',\n selector: '[role]',\n matches: 'no-empty-role-matches',\n tags: [ 'cat.aria', 'wcag2a', 'wcag412', 'EN-301-549', 'EN-9.4.1.2', 'RGAAv4', 'RGAA-7.1.1' ],\n actIds: [ '674b10' ],\n all: [],\n any: [],\n none: [ 'deprecatedrole' ]\n }, {\n id: 'aria-dialog-name',\n impact: 'serious',\n selector: '[role=\"dialog\"], [role=\"alertdialog\"]',\n matches: 'no-naming-method-matches',\n tags: [ 'cat.aria', 'best-practice' ],\n all: [],\n any: [ 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n } ],\n none: []\n }, {\n id: 'aria-hidden-body',\n impact: 'critical',\n selector: 'body',\n excludeHidden: false,\n matches: 'is-initiator-matches',\n tags: [ 'cat.aria', 'wcag2a', 'wcag131', 'wcag412', 'EN-301-549', 'EN-9.1.3.1', 'EN-9.4.1.2', 'RGAAv4', 'RGAA-7.1.1' ],\n all: [],\n any: [ 'aria-hidden-body' ],\n none: []\n }, {\n id: 'aria-hidden-focus',\n impact: 'serious',\n selector: '[aria-hidden=\"true\"]',\n matches: 'aria-hidden-focus-matches',\n excludeHidden: false,\n tags: [ 'cat.name-role-value', 'wcag2a', 'wcag412', 'TTv5', 'TT6.a', 'EN-301-549', 'EN-9.4.1.2', 'RGAAv4', 'RGAA-7.1.1' ],\n actIds: [ '6cfa84' ],\n all: [ 'focusable-modal-open', 'focusable-disabled', 'focusable-not-tabbable' ],\n any: [],\n none: []\n }, {\n id: 'aria-input-field-name',\n impact: 'serious',\n selector: '[role=\"combobox\"], [role=\"listbox\"], [role=\"searchbox\"], [role=\"slider\"], [role=\"spinbutton\"], [role=\"textbox\"]',\n matches: 'no-naming-method-matches',\n tags: [ 'cat.aria', 'wcag2a', 'wcag412', 'TTv5', 'TT5.c', 'EN-301-549', 'EN-9.4.1.2', 'ACT', 'RGAAv4', 'RGAA-11.1.1' ],\n actIds: [ 'e086e5' ],\n all: [],\n any: [ 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n } ],\n none: [ 'no-implicit-explicit-label' ]\n }, {\n id: 'aria-meter-name',\n impact: 'serious',\n selector: '[role=\"meter\"]',\n matches: 'no-naming-method-matches',\n tags: [ 'cat.aria', 'wcag2a', 'wcag111', 'EN-301-549', 'EN-9.1.1.1', 'RGAAv4', 'RGAA-11.1.1' ],\n all: [],\n any: [ 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n } ],\n none: []\n }, {\n id: 'aria-progressbar-name',\n impact: 'serious',\n selector: '[role=\"progressbar\"]',\n matches: 'no-naming-method-matches',\n tags: [ 'cat.aria', 'wcag2a', 'wcag111', 'EN-301-549', 'EN-9.1.1.1', 'RGAAv4', 'RGAA-11.1.1' ],\n all: [],\n any: [ 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n } ],\n none: []\n }, {\n id: 'aria-prohibited-attr',\n impact: 'serious',\n matches: 'aria-allowed-attr-matches',\n tags: [ 'cat.aria', 'wcag2a', 'wcag412', 'EN-301-549', 'EN-9.4.1.2', 'RGAAv4', 'RGAA-7.1.1' ],\n actIds: [ '5c01ea' ],\n all: [],\n any: [],\n none: [ {\n options: {\n elementsAllowedAriaLabel: [ 'applet', 'input' ]\n },\n id: 'aria-prohibited-attr'\n } ]\n }, {\n id: 'aria-required-attr',\n impact: 'critical',\n selector: '[role]',\n tags: [ 'cat.aria', 'wcag2a', 'wcag412', 'EN-301-549', 'EN-9.4.1.2', 'RGAAv4', 'RGAA-7.1.1' ],\n actIds: [ '4e8ab6' ],\n all: [],\n any: [ 'aria-required-attr' ],\n none: []\n }, {\n id: 'aria-required-children',\n impact: 'critical',\n selector: '[role]',\n matches: 'aria-required-children-matches',\n tags: [ 'cat.aria', 'wcag2a', 'wcag131', 'EN-301-549', 'EN-9.1.3.1', 'RGAAv4', 'RGAA-9.3.1' ],\n actIds: [ 'bc4a75', 'ff89c9' ],\n all: [],\n any: [ {\n options: {\n reviewEmpty: [ 'doc-bibliography', 'doc-endnotes', 'grid', 'list', 'listbox', 'menu', 'menubar', 'table', 'tablist', 'tree', 'treegrid', 'rowgroup' ]\n },\n id: 'aria-required-children'\n } ],\n none: []\n }, {\n id: 'aria-required-parent',\n impact: 'critical',\n selector: '[role]',\n matches: 'aria-required-parent-matches',\n tags: [ 'cat.aria', 'wcag2a', 'wcag131', 'EN-301-549', 'EN-9.1.3.1', 'RGAAv4', 'RGAA-9.3.1' ],\n actIds: [ 'ff89c9' ],\n all: [],\n any: [ {\n options: {\n ownGroupRoles: [ 'listitem', 'treeitem' ]\n },\n id: 'aria-required-parent'\n } ],\n none: []\n }, {\n id: 'aria-roledescription',\n impact: 'serious',\n selector: '[aria-roledescription]',\n tags: [ 'cat.aria', 'wcag2a', 'wcag412', 'EN-301-549', 'EN-9.4.1.2', 'deprecated' ],\n enabled: false,\n all: [],\n any: [ {\n options: {\n supportedRoles: [ 'button', 'img', 'checkbox', 'radio', 'combobox', 'menuitemcheckbox', 'menuitemradio' ]\n },\n id: 'aria-roledescription'\n } ],\n none: []\n }, {\n id: 'aria-roles',\n impact: 'critical',\n selector: '[role]',\n matches: 'no-empty-role-matches',\n tags: [ 'cat.aria', 'wcag2a', 'wcag412', 'EN-301-549', 'EN-9.4.1.2', 'RGAAv4', 'RGAA-7.1.1' ],\n actIds: [ '674b10' ],\n all: [],\n any: [],\n none: [ 'invalidrole', 'abstractrole', 'unsupportedrole' ]\n }, {\n id: 'aria-text',\n impact: 'serious',\n selector: '[role=text]',\n tags: [ 'cat.aria', 'best-practice' ],\n all: [],\n any: [ 'no-focusable-content' ],\n none: []\n }, {\n id: 'aria-toggle-field-name',\n impact: 'serious',\n selector: '[role=\"checkbox\"], [role=\"menuitemcheckbox\"], [role=\"menuitemradio\"], [role=\"radio\"], [role=\"switch\"], [role=\"option\"]',\n matches: 'no-naming-method-matches',\n tags: [ 'cat.aria', 'wcag2a', 'wcag412', 'TTv5', 'TT5.c', 'EN-301-549', 'EN-9.4.1.2', 'ACT', 'RGAAv4', 'RGAA-7.1.1' ],\n actIds: [ 'e086e5' ],\n all: [],\n any: [ 'has-visible-text', 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n } ],\n none: [ 'no-implicit-explicit-label' ]\n }, {\n id: 'aria-tooltip-name',\n impact: 'serious',\n selector: '[role=\"tooltip\"]',\n matches: 'no-naming-method-matches',\n tags: [ 'cat.aria', 'wcag2a', 'wcag412', 'EN-301-549', 'EN-9.4.1.2' ],\n all: [],\n any: [ 'has-visible-text', 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n } ],\n none: []\n }, {\n id: 'aria-treeitem-name',\n impact: 'serious',\n selector: '[role=\"treeitem\"]',\n matches: 'no-naming-method-matches',\n tags: [ 'cat.aria', 'best-practice' ],\n all: [],\n any: [ 'has-visible-text', 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n } ],\n none: []\n }, {\n id: 'aria-valid-attr-value',\n impact: 'critical',\n matches: 'aria-has-attr-matches',\n tags: [ 'cat.aria', 'wcag2a', 'wcag412', 'EN-301-549', 'EN-9.4.1.2', 'RGAAv4', 'RGAA-7.1.1' ],\n actIds: [ '6a7281' ],\n all: [ {\n options: [],\n id: 'aria-valid-attr-value'\n }, 'aria-errormessage', 'aria-level' ],\n any: [],\n none: []\n }, {\n id: 'aria-valid-attr',\n impact: 'critical',\n matches: 'aria-has-attr-matches',\n tags: [ 'cat.aria', 'wcag2a', 'wcag412', 'EN-301-549', 'EN-9.4.1.2', 'RGAAv4', 'RGAA-7.1.1' ],\n actIds: [ '5f99a7' ],\n all: [],\n any: [ {\n options: [],\n id: 'aria-valid-attr'\n } ],\n none: []\n }, {\n id: 'audio-caption',\n impact: 'critical',\n selector: 'audio',\n enabled: false,\n excludeHidden: false,\n tags: [ 'cat.time-and-media', 'wcag2a', 'wcag121', 'EN-301-549', 'EN-9.1.2.1', 'section508', 'section508.22.a', 'deprecated' ],\n actIds: [ '2eb176', 'afb423' ],\n all: [],\n any: [],\n none: [ 'caption' ]\n }, {\n id: 'autocomplete-valid',\n impact: 'serious',\n matches: 'autocomplete-matches',\n tags: [ 'cat.forms', 'wcag21aa', 'wcag135', 'EN-301-549', 'EN-9.1.3.5', 'ACT', 'RGAAv4', 'RGAA-11.13.1' ],\n actIds: [ '73f2c2' ],\n all: [ {\n options: {\n stateTerms: [ 'none', 'false', 'true', 'disabled', 'enabled', 'undefined', 'null', 'xoff', 'xon' ],\n ignoredValues: [ 'text', 'pronouns', 'gender', 'message', 'content' ]\n },\n id: 'autocomplete-valid'\n } ],\n any: [],\n none: []\n }, {\n id: 'avoid-inline-spacing',\n impact: 'serious',\n selector: '[style]',\n matches: 'is-visible-on-screen-matches',\n tags: [ 'cat.structure', 'wcag21aa', 'wcag1412', 'EN-301-549', 'EN-9.1.4.12', 'ACT' ],\n actIds: [ '24afc2', '9e45ec', '78fd32' ],\n all: [ {\n options: {\n cssProperty: 'letter-spacing',\n minValue: .12\n },\n id: 'important-letter-spacing'\n }, {\n options: {\n cssProperty: 'word-spacing',\n minValue: .16\n },\n id: 'important-word-spacing'\n }, {\n options: {\n multiLineOnly: true,\n cssProperty: 'line-height',\n minValue: 1.5,\n normalValue: 1\n },\n id: 'important-line-height'\n } ],\n any: [],\n none: []\n }, {\n id: 'blink',\n impact: 'serious',\n selector: 'blink',\n excludeHidden: false,\n tags: [ 'cat.time-and-media', 'wcag2a', 'wcag222', 'section508', 'section508.22.j', 'TTv5', 'TT2.b', 'EN-301-549', 'EN-9.2.2.2', 'RGAAv4', 'RGAA-13.8.1' ],\n all: [],\n any: [],\n none: [ 'is-on-screen' ]\n }, {\n id: 'button-name',\n impact: 'critical',\n selector: 'button',\n matches: 'no-explicit-name-required-matches',\n tags: [ 'cat.name-role-value', 'wcag2a', 'wcag412', 'section508', 'section508.22.a', 'TTv5', 'TT6.a', 'EN-301-549', 'EN-9.4.1.2', 'ACT', 'RGAAv4', 'RGAA-11.9.1' ],\n actIds: [ '97a4e1', 'm6b1q3' ],\n all: [],\n any: [ 'button-has-visible-text', 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n }, 'implicit-label', 'explicit-label', 'presentational-role' ],\n none: []\n }, {\n id: 'bypass',\n impact: 'serious',\n selector: 'html',\n pageLevel: true,\n matches: 'bypass-matches',\n reviewOnFail: true,\n tags: [ 'cat.keyboard', 'wcag2a', 'wcag241', 'section508', 'section508.22.o', 'TTv5', 'TT9.a', 'EN-301-549', 'EN-9.2.4.1', 'RGAAv4', 'RGAA-12.7.1' ],\n actIds: [ 'cf77f2', '047fe0', 'b40fd1', '3e12e1', 'ye5d6e' ],\n all: [],\n any: [ 'internal-link-present', {\n options: {\n selector: ':is(h1, h2, h3, h4, h5, h6):not([role]), [role=heading]'\n },\n id: 'header-present'\n }, {\n options: {\n selector: 'main, [role=main]'\n },\n id: 'landmark'\n } ],\n none: []\n }, {\n id: 'color-contrast-enhanced',\n impact: 'serious',\n matches: 'color-contrast-matches',\n excludeHidden: false,\n enabled: false,\n tags: [ 'cat.color', 'wcag2aaa', 'wcag146', 'ACT' ],\n actIds: [ '09o5cg' ],\n all: [],\n any: [ {\n options: {\n ignoreUnicode: true,\n ignoreLength: false,\n ignorePseudo: false,\n boldValue: 700,\n boldTextPt: 14,\n largeTextPt: 18,\n contrastRatio: {\n normal: {\n expected: 7,\n minThreshold: 4.5\n },\n large: {\n expected: 4.5,\n minThreshold: 3\n }\n },\n pseudoSizeThreshold: .25,\n shadowOutlineEmMax: .1,\n textStrokeEmMin: .03\n },\n id: 'color-contrast-enhanced'\n } ],\n none: []\n }, {\n id: 'color-contrast',\n impact: 'serious',\n matches: 'color-contrast-matches',\n excludeHidden: false,\n tags: [ 'cat.color', 'wcag2aa', 'wcag143', 'TTv5', 'TT13.c', 'EN-301-549', 'EN-9.1.4.3', 'ACT', 'RGAAv4', 'RGAA-3.2.1' ],\n actIds: [ 'afw4f7', '09o5cg' ],\n all: [],\n any: [ {\n options: {\n ignoreUnicode: true,\n ignoreLength: false,\n ignorePseudo: false,\n boldValue: 700,\n boldTextPt: 14,\n largeTextPt: 18,\n contrastRatio: {\n normal: {\n expected: 4.5\n },\n large: {\n expected: 3\n }\n },\n pseudoSizeThreshold: .25,\n shadowOutlineEmMax: .2,\n textStrokeEmMin: .03\n },\n id: 'color-contrast'\n } ],\n none: []\n }, {\n id: 'css-orientation-lock',\n impact: 'serious',\n selector: 'html',\n tags: [ 'cat.structure', 'wcag134', 'wcag21aa', 'EN-301-549', 'EN-9.1.3.4', 'RGAAv4', 'RGAA-13.9.1', 'experimental' ],\n actIds: [ 'b33eff' ],\n all: [ {\n options: {\n degreeThreshold: 2\n },\n id: 'css-orientation-lock'\n } ],\n any: [],\n none: [],\n preload: true\n }, {\n id: 'definition-list',\n impact: 'serious',\n selector: 'dl',\n matches: 'no-role-matches',\n tags: [ 'cat.structure', 'wcag2a', 'wcag131', 'EN-301-549', 'EN-9.1.3.1', 'RGAAv4', 'RGAA-9.3.3' ],\n all: [],\n any: [],\n none: [ 'structured-dlitems', {\n options: {\n validRoles: [ 'definition', 'term', 'listitem' ],\n validNodeNames: [ 'dt', 'dd' ],\n divGroups: true\n },\n id: 'only-dlitems'\n } ]\n }, {\n id: 'dlitem',\n impact: 'serious',\n selector: 'dd, dt',\n matches: 'no-role-matches',\n tags: [ 'cat.structure', 'wcag2a', 'wcag131', 'EN-301-549', 'EN-9.1.3.1', 'RGAAv4', 'RGAA-9.3.3' ],\n all: [],\n any: [ 'dlitem' ],\n none: []\n }, {\n id: 'document-title',\n impact: 'serious',\n selector: 'html',\n matches: 'is-initiator-matches',\n tags: [ 'cat.text-alternatives', 'wcag2a', 'wcag242', 'TTv5', 'TT12.a', 'EN-301-549', 'EN-9.2.4.2', 'ACT', 'RGAAv4', 'RGAA-8.5.1' ],\n actIds: [ '2779a5' ],\n all: [],\n any: [ 'doc-has-title' ],\n none: []\n }, {\n id: 'duplicate-id-active',\n impact: 'serious',\n selector: '[id]',\n matches: 'duplicate-id-active-matches',\n excludeHidden: false,\n tags: [ 'cat.parsing', 'wcag2a-obsolete', 'wcag411', 'deprecated' ],\n enabled: false,\n actIds: [ '3ea0c8' ],\n all: [],\n any: [ 'duplicate-id-active' ],\n none: []\n }, {\n id: 'duplicate-id-aria',\n impact: 'critical',\n selector: '[id]',\n matches: 'duplicate-id-aria-matches',\n excludeHidden: false,\n tags: [ 'cat.parsing', 'wcag2a', 'wcag412', 'EN-301-549', 'EN-9.4.1.2', 'RGAAv4', 'RGAA-8.2.1' ],\n reviewOnFail: true,\n actIds: [ '3ea0c8' ],\n all: [],\n any: [ 'duplicate-id-aria' ],\n none: []\n }, {\n id: 'duplicate-id',\n impact: 'minor',\n selector: '[id]',\n matches: 'duplicate-id-misc-matches',\n excludeHidden: false,\n tags: [ 'cat.parsing', 'wcag2a-obsolete', 'wcag411', 'deprecated' ],\n enabled: false,\n actIds: [ '3ea0c8' ],\n all: [],\n any: [ 'duplicate-id' ],\n none: []\n }, {\n id: 'empty-heading',\n impact: 'minor',\n selector: 'h1, h2, h3, h4, h5, h6, [role=\"heading\"]',\n matches: 'heading-matches',\n tags: [ 'cat.name-role-value', 'best-practice' ],\n actIds: [ 'ffd0e9' ],\n all: [],\n any: [ 'has-visible-text', 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n } ],\n none: []\n }, {\n id: 'empty-table-header',\n impact: 'minor',\n selector: 'th:not([role]), [role=\"rowheader\"], [role=\"columnheader\"]',\n tags: [ 'cat.name-role-value', 'best-practice' ],\n all: [],\n any: [ 'has-visible-text' ],\n none: []\n }, {\n id: 'focus-order-semantics',\n impact: 'minor',\n selector: 'div, h1, h2, h3, h4, h5, h6, [role=heading], p, span',\n matches: 'inserted-into-focus-order-matches',\n tags: [ 'cat.keyboard', 'best-practice', 'RGAAv4', 'RGAA-12.8.1', 'experimental' ],\n all: [],\n any: [ {\n options: [],\n id: 'has-widget-role'\n }, {\n options: {\n roles: [ 'tooltip' ]\n },\n id: 'valid-scrollable-semantics'\n } ],\n none: []\n }, {\n id: 'form-field-multiple-labels',\n impact: 'moderate',\n selector: 'input, select, textarea',\n matches: 'label-matches',\n tags: [ 'cat.forms', 'wcag2a', 'wcag332', 'TTv5', 'TT5.c', 'EN-301-549', 'EN-9.3.3.2', 'RGAAv4', 'RGAA-11.2.1' ],\n all: [],\n any: [],\n none: [ 'multiple-label' ]\n }, {\n id: 'frame-focusable-content',\n impact: 'serious',\n selector: 'html',\n matches: 'frame-focusable-content-matches',\n tags: [ 'cat.keyboard', 'wcag2a', 'wcag211', 'TTv5', 'TT4.a', 'EN-301-549', 'EN-9.2.1.1', 'RGAAv4', 'RGAA-7.3.2' ],\n actIds: [ 'akn7bn' ],\n all: [],\n any: [ 'frame-focusable-content' ],\n none: []\n }, {\n id: 'frame-tested',\n impact: 'critical',\n selector: 'html, frame, iframe',\n tags: [ 'cat.structure', 'best-practice', 'review-item' ],\n all: [ {\n options: {\n isViolation: false\n },\n id: 'frame-tested'\n } ],\n any: [],\n none: []\n }, {\n id: 'frame-title-unique',\n impact: 'serious',\n selector: 'frame[title], iframe[title]',\n matches: 'frame-title-has-text-matches',\n tags: [ 'cat.text-alternatives', 'wcag2a', 'wcag412', 'TTv5', 'TT12.d', 'EN-301-549', 'EN-9.4.1.2', 'RGAAv4', 'RGAA-2.2.1' ],\n actIds: [ '4b1c6c' ],\n all: [],\n any: [],\n none: [ 'unique-frame-title' ],\n reviewOnFail: true\n }, {\n id: 'frame-title',\n impact: 'serious',\n selector: 'frame, iframe',\n matches: 'no-negative-tabindex-matches',\n tags: [ 'cat.text-alternatives', 'wcag2a', 'wcag412', 'section508', 'section508.22.i', 'TTv5', 'TT12.d', 'EN-301-549', 'EN-9.4.1.2', 'RGAAv4', 'RGAA-2.1.1' ],\n actIds: [ 'cae760' ],\n all: [],\n any: [ {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n }, 'aria-label', 'aria-labelledby', 'presentational-role' ],\n none: []\n }, {\n id: 'heading-order',\n impact: 'moderate',\n selector: 'h1, h2, h3, h4, h5, h6, [role=heading]',\n matches: 'heading-matches',\n tags: [ 'cat.semantics', 'best-practice' ],\n all: [],\n any: [ 'heading-order' ],\n none: []\n }, {\n id: 'hidden-content',\n impact: 'minor',\n selector: '*',\n excludeHidden: false,\n tags: [ 'cat.structure', 'best-practice', 'experimental', 'review-item' ],\n all: [],\n any: [ 'hidden-content' ],\n none: []\n }, {\n id: 'html-has-lang',\n impact: 'serious',\n selector: 'html',\n matches: 'is-initiator-matches',\n tags: [ 'cat.language', 'wcag2a', 'wcag311', 'TTv5', 'TT11.a', 'EN-301-549', 'EN-9.3.1.1', 'ACT', 'RGAAv4', 'RGAA-8.3.1' ],\n actIds: [ 'b5c3f8' ],\n all: [],\n any: [ {\n options: {\n attributes: [ 'lang', 'xml:lang' ]\n },\n id: 'has-lang'\n } ],\n none: []\n }, {\n id: 'html-lang-valid',\n impact: 'serious',\n selector: 'html[lang]:not([lang=\"\"]), html[xml\\\\:lang]:not([xml\\\\:lang=\"\"])',\n tags: [ 'cat.language', 'wcag2a', 'wcag311', 'TTv5', 'TT11.a', 'EN-301-549', 'EN-9.3.1.1', 'ACT', 'RGAAv4', 'RGAA-8.4.1' ],\n actIds: [ 'bf051a' ],\n all: [],\n any: [],\n none: [ {\n options: {\n attributes: [ 'lang', 'xml:lang' ]\n },\n id: 'valid-lang'\n } ]\n }, {\n id: 'html-xml-lang-mismatch',\n impact: 'moderate',\n selector: 'html[lang][xml\\\\:lang]',\n matches: 'xml-lang-mismatch-matches',\n tags: [ 'cat.language', 'wcag2a', 'wcag311', 'EN-301-549', 'EN-9.3.1.1', 'ACT', 'RGAAv4', 'RGAA-8.3.1' ],\n actIds: [ '5b7ae0' ],\n all: [ 'xml-lang-mismatch' ],\n any: [],\n none: []\n }, {\n id: 'identical-links-same-purpose',\n impact: 'minor',\n selector: 'a[href], area[href], [role=\"link\"]',\n excludeHidden: false,\n enabled: false,\n matches: 'identical-links-same-purpose-matches',\n tags: [ 'cat.semantics', 'wcag2aaa', 'wcag249' ],\n actIds: [ 'b20e66' ],\n all: [ 'identical-links-same-purpose' ],\n any: [],\n none: []\n }, {\n id: 'image-alt',\n impact: 'critical',\n selector: 'img',\n matches: 'no-explicit-name-required-matches',\n tags: [ 'cat.text-alternatives', 'wcag2a', 'wcag111', 'section508', 'section508.22.a', 'TTv5', 'TT7.a', 'TT7.b', 'EN-301-549', 'EN-9.1.1.1', 'ACT', 'RGAAv4', 'RGAA-1.1.1' ],\n actIds: [ '23a2a8' ],\n all: [],\n any: [ 'has-alt', 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n }, 'presentational-role' ],\n none: [ 'alt-space-value' ]\n }, {\n id: 'image-redundant-alt',\n impact: 'minor',\n selector: 'img',\n tags: [ 'cat.text-alternatives', 'best-practice' ],\n all: [],\n any: [],\n none: [ {\n options: {\n parentSelector: 'button, [role=button], a[href], p, li, td, th'\n },\n id: 'duplicate-img-label'\n } ]\n }, {\n id: 'input-button-name',\n impact: 'critical',\n selector: 'input[type=\"button\"], input[type=\"submit\"], input[type=\"reset\"]',\n matches: 'no-explicit-name-required-matches',\n tags: [ 'cat.name-role-value', 'wcag2a', 'wcag412', 'section508', 'section508.22.a', 'TTv5', 'TT5.c', 'EN-301-549', 'EN-9.4.1.2', 'ACT', 'RGAAv4', 'RGAA-11.9.1' ],\n actIds: [ '97a4e1' ],\n all: [],\n any: [ 'non-empty-if-present', {\n options: {\n attribute: 'value'\n },\n id: 'non-empty-value'\n }, 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n }, 'implicit-label', 'explicit-label', 'presentational-role' ],\n none: []\n }, {\n id: 'input-image-alt',\n impact: 'critical',\n selector: 'input[type=\"image\"]',\n matches: 'no-explicit-name-required-matches',\n tags: [ 'cat.text-alternatives', 'wcag2a', 'wcag111', 'wcag412', 'section508', 'section508.22.a', 'TTv5', 'TT7.a', 'EN-301-549', 'EN-9.1.1.1', 'EN-9.4.1.2', 'ACT', 'RGAAv4', 'RGAA-1.1.3' ],\n actIds: [ '59796f' ],\n all: [],\n any: [ {\n options: {\n attribute: 'alt'\n },\n id: 'non-empty-alt'\n }, 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n }, 'implicit-label', 'explicit-label' ],\n none: []\n }, {\n id: 'label-content-name-mismatch',\n impact: 'serious',\n matches: 'label-content-name-mismatch-matches',\n tags: [ 'cat.semantics', 'wcag21a', 'wcag253', 'EN-301-549', 'EN-9.2.5.3', 'RGAAv4', 'RGAA-6.1.5', 'experimental' ],\n actIds: [ '2ee8b8' ],\n all: [],\n any: [ {\n options: {\n pixelThreshold: .1,\n occurrenceThreshold: 3\n },\n id: 'label-content-name-mismatch'\n } ],\n none: []\n }, {\n id: 'label-title-only',\n impact: 'serious',\n selector: 'input, select, textarea',\n matches: 'label-matches',\n tags: [ 'cat.forms', 'best-practice' ],\n all: [],\n any: [],\n none: [ 'title-only' ]\n }, {\n id: 'label',\n impact: 'critical',\n selector: 'input, textarea',\n matches: 'label-matches',\n tags: [ 'cat.forms', 'wcag2a', 'wcag412', 'section508', 'section508.22.n', 'TTv5', 'TT5.c', 'EN-301-549', 'EN-9.4.1.2', 'ACT', 'RGAAv4', 'RGAA-11.1.1' ],\n actIds: [ 'e086e5' ],\n all: [],\n any: [ 'implicit-label', 'explicit-label', 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n }, {\n options: {\n attribute: 'placeholder'\n },\n id: 'non-empty-placeholder'\n }, 'presentational-role' ],\n none: [ 'hidden-explicit-label' ]\n }, {\n id: 'landmark-banner-is-top-level',\n impact: 'moderate',\n selector: 'header:not([role]), [role=banner]',\n matches: 'landmark-has-body-context-matches',\n tags: [ 'cat.semantics', 'best-practice' ],\n all: [],\n any: [ 'landmark-is-top-level' ],\n none: []\n }, {\n id: 'landmark-complementary-is-top-level',\n impact: 'moderate',\n selector: 'aside:not([role]), [role=complementary]',\n tags: [ 'cat.semantics', 'best-practice' ],\n all: [],\n any: [ 'landmark-is-top-level' ],\n none: []\n }, {\n id: 'landmark-contentinfo-is-top-level',\n impact: 'moderate',\n selector: 'footer:not([role]), [role=contentinfo]',\n matches: 'landmark-has-body-context-matches',\n tags: [ 'cat.semantics', 'best-practice' ],\n all: [],\n any: [ 'landmark-is-top-level' ],\n none: []\n }, {\n id: 'landmark-main-is-top-level',\n impact: 'moderate',\n selector: 'main:not([role]), [role=main]',\n tags: [ 'cat.semantics', 'best-practice' ],\n all: [],\n any: [ 'landmark-is-top-level' ],\n none: []\n }, {\n id: 'landmark-no-duplicate-banner',\n impact: 'moderate',\n selector: 'header:not([role]), [role=banner]',\n tags: [ 'cat.semantics', 'best-practice' ],\n all: [],\n any: [ {\n options: {\n selector: 'header:not([role]), [role=banner]',\n role: 'banner'\n },\n id: 'page-no-duplicate-banner'\n } ],\n none: []\n }, {\n id: 'landmark-no-duplicate-contentinfo',\n impact: 'moderate',\n selector: 'footer:not([role]), [role=contentinfo]',\n tags: [ 'cat.semantics', 'best-practice' ],\n all: [],\n any: [ {\n options: {\n selector: 'footer:not([role]), [role=contentinfo]',\n role: 'contentinfo'\n },\n id: 'page-no-duplicate-contentinfo'\n } ],\n none: []\n }, {\n id: 'landmark-no-duplicate-main',\n impact: 'moderate',\n selector: 'main:not([role]), [role=main]',\n tags: [ 'cat.semantics', 'best-practice' ],\n all: [],\n any: [ {\n options: {\n selector: 'main:not([role]), [role=\\'main\\']'\n },\n id: 'page-no-duplicate-main'\n } ],\n none: []\n }, {\n id: 'landmark-one-main',\n impact: 'moderate',\n selector: 'html',\n tags: [ 'cat.semantics', 'best-practice' ],\n all: [ {\n options: {\n selector: 'main:not([role]), [role=\\'main\\']',\n passForModal: true\n },\n id: 'page-has-main'\n } ],\n any: [],\n none: []\n }, {\n id: 'landmark-unique',\n impact: 'moderate',\n selector: '[role=banner], [role=complementary], [role=contentinfo], [role=main], [role=navigation], [role=region], [role=search], [role=form], form, footer, header, aside, main, nav, section',\n tags: [ 'cat.semantics', 'best-practice' ],\n matches: 'landmark-unique-matches',\n all: [],\n any: [ 'landmark-is-unique' ],\n none: []\n }, {\n id: 'link-in-text-block',\n impact: 'serious',\n selector: 'a[href], [role=link]',\n matches: 'link-in-text-block-matches',\n excludeHidden: false,\n tags: [ 'cat.color', 'wcag2a', 'wcag141', 'TTv5', 'TT13.a', 'EN-301-549', 'EN-9.1.4.1', 'RGAAv4', 'RGAA-10.6.1' ],\n all: [],\n any: [ {\n options: {\n requiredContrastRatio: 3,\n allowSameColor: true\n },\n id: 'link-in-text-block'\n }, 'link-in-text-block-style' ],\n none: []\n }, {\n id: 'link-name',\n impact: 'serious',\n selector: 'a[href]',\n tags: [ 'cat.name-role-value', 'wcag2a', 'wcag244', 'wcag412', 'section508', 'section508.22.a', 'TTv5', 'TT6.a', 'EN-301-549', 'EN-9.2.4.4', 'EN-9.4.1.2', 'ACT', 'RGAAv4', 'RGAA-6.2.1' ],\n actIds: [ 'c487ae' ],\n all: [],\n any: [ 'has-visible-text', 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n } ],\n none: [ 'focusable-no-name' ]\n }, {\n id: 'list',\n impact: 'serious',\n selector: 'ul, ol',\n matches: 'no-role-matches',\n tags: [ 'cat.structure', 'wcag2a', 'wcag131', 'EN-301-549', 'EN-9.1.3.1', 'RGAAv4', 'RGAA-9.3.1' ],\n all: [],\n any: [],\n none: [ {\n options: {\n validRoles: [ 'listitem' ],\n validNodeNames: [ 'li' ]\n },\n id: 'only-listitems'\n } ]\n }, {\n id: 'listitem',\n impact: 'serious',\n selector: 'li',\n matches: 'no-role-matches',\n tags: [ 'cat.structure', 'wcag2a', 'wcag131', 'EN-301-549', 'EN-9.1.3.1', 'RGAAv4', 'RGAA-9.3.1' ],\n all: [],\n any: [ 'listitem' ],\n none: []\n }, {\n id: 'marquee',\n impact: 'serious',\n selector: 'marquee',\n excludeHidden: false,\n tags: [ 'cat.parsing', 'wcag2a', 'wcag222', 'TTv5', 'TT2.b', 'EN-301-549', 'EN-9.2.2.2', 'RGAAv4', 'RGAA-13.8.1' ],\n all: [],\n any: [],\n none: [ 'is-on-screen' ]\n }, {\n id: 'meta-refresh-no-exceptions',\n impact: 'minor',\n selector: 'meta[http-equiv=\"refresh\"][content]',\n excludeHidden: false,\n enabled: false,\n tags: [ 'cat.time-and-media', 'wcag2aaa', 'wcag224', 'wcag325' ],\n actIds: [ 'bisz58' ],\n all: [],\n any: [ {\n options: {\n minDelay: 72e3,\n maxDelay: false\n },\n id: 'meta-refresh-no-exceptions'\n } ],\n none: []\n }, {\n id: 'meta-refresh',\n impact: 'critical',\n selector: 'meta[http-equiv=\"refresh\"][content]',\n excludeHidden: false,\n tags: [ 'cat.time-and-media', 'wcag2a', 'wcag221', 'TTv5', 'TT8.a', 'EN-301-549', 'EN-9.2.2.1', 'RGAAv4', 'RGAA-13.1.2' ],\n actIds: [ 'bc659a', 'bisz58' ],\n all: [],\n any: [ {\n options: {\n minDelay: 0,\n maxDelay: 72e3\n },\n id: 'meta-refresh'\n } ],\n none: []\n }, {\n id: 'meta-viewport-large',\n impact: 'minor',\n selector: 'meta[name=\"viewport\"]',\n matches: 'is-initiator-matches',\n excludeHidden: false,\n tags: [ 'cat.sensory-and-visual-cues', 'best-practice' ],\n all: [],\n any: [ {\n options: {\n scaleMinimum: 5,\n lowerBound: 2\n },\n id: 'meta-viewport-large'\n } ],\n none: []\n }, {\n id: 'meta-viewport',\n impact: 'moderate',\n selector: 'meta[name=\"viewport\"]',\n matches: 'is-initiator-matches',\n excludeHidden: false,\n tags: [ 'cat.sensory-and-visual-cues', 'wcag2aa', 'wcag144', 'EN-301-549', 'EN-9.1.4.4', 'ACT', 'RGAAv4', 'RGAA-10.4.2' ],\n actIds: [ 'b4f0c3' ],\n all: [],\n any: [ {\n options: {\n scaleMinimum: 2\n },\n id: 'meta-viewport'\n } ],\n none: []\n }, {\n id: 'nested-interactive',\n impact: 'serious',\n matches: 'nested-interactive-matches',\n tags: [ 'cat.keyboard', 'wcag2a', 'wcag412', 'TTv5', 'TT6.a', 'EN-301-549', 'EN-9.4.1.2', 'RGAAv4', 'RGAA-7.1.1' ],\n actIds: [ '307n5z' ],\n all: [],\n any: [ 'no-focusable-content' ],\n none: []\n }, {\n id: 'no-autoplay-audio',\n impact: 'moderate',\n excludeHidden: false,\n selector: 'audio[autoplay], video[autoplay]',\n matches: 'no-autoplay-audio-matches',\n reviewOnFail: true,\n tags: [ 'cat.time-and-media', 'wcag2a', 'wcag142', 'TTv5', 'TT2.a', 'EN-301-549', 'EN-9.1.4.2', 'ACT', 'RGAAv4', 'RGAA-4.10.1' ],\n actIds: [ '80f0bf' ],\n preload: true,\n all: [ {\n options: {\n allowedDuration: 3\n },\n id: 'no-autoplay-audio'\n } ],\n any: [],\n none: []\n }, {\n id: 'object-alt',\n impact: 'serious',\n selector: 'object[data]',\n matches: 'object-is-loaded-matches',\n tags: [ 'cat.text-alternatives', 'wcag2a', 'wcag111', 'section508', 'section508.22.a', 'EN-301-549', 'EN-9.1.1.1', 'RGAAv4', 'RGAA-1.1.6' ],\n actIds: [ '8fc3b6' ],\n all: [],\n any: [ 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n }, 'presentational-role' ],\n none: []\n }, {\n id: 'p-as-heading',\n impact: 'serious',\n selector: 'p',\n matches: 'p-as-heading-matches',\n tags: [ 'cat.semantics', 'wcag2a', 'wcag131', 'EN-301-549', 'EN-9.1.3.1', 'RGAAv4', 'RGAA-9.1.3', 'experimental' ],\n all: [ {\n options: {\n margins: [ {\n weight: 150,\n italic: true\n }, {\n weight: 150,\n size: 1.15\n }, {\n italic: true,\n size: 1.15\n }, {\n size: 1.4\n } ],\n passLength: 1,\n failLength: .5\n },\n id: 'p-as-heading'\n } ],\n any: [],\n none: []\n }, {\n id: 'page-has-heading-one',\n impact: 'moderate',\n selector: 'html',\n tags: [ 'cat.semantics', 'best-practice' ],\n all: [ {\n options: {\n selector: 'h1:not([role], [aria-level]), :is(h1, h2, h3, h4, h5, h6):not([role])[aria-level=1], [role=heading][aria-level=1]',\n passForModal: true\n },\n id: 'page-has-heading-one'\n } ],\n any: [],\n none: []\n }, {\n id: 'presentation-role-conflict',\n impact: 'minor',\n selector: 'img[alt=\\'\\'], [role=\"none\"], [role=\"presentation\"]',\n matches: 'has-implicit-chromium-role-matches',\n tags: [ 'cat.aria', 'best-practice', 'ACT' ],\n actIds: [ '46ca7f' ],\n all: [],\n any: [],\n none: [ 'is-element-focusable', 'has-global-aria-attribute' ]\n }, {\n id: 'region',\n impact: 'moderate',\n selector: 'body *',\n tags: [ 'cat.keyboard', 'best-practice', 'RGAAv4', 'RGAA-9.2.1' ],\n all: [],\n any: [ {\n options: {\n regionMatcher: 'dialog, [role=dialog], [role=alertdialog], svg'\n },\n id: 'region'\n } ],\n none: []\n }, {\n id: 'role-img-alt',\n impact: 'serious',\n selector: '[role=\\'img\\']:not(img, area, input, object)',\n matches: 'html-namespace-matches',\n tags: [ 'cat.text-alternatives', 'wcag2a', 'wcag111', 'section508', 'section508.22.a', 'TTv5', 'TT7.a', 'EN-301-549', 'EN-9.1.1.1', 'ACT', 'RGAAv4', 'RGAA-1.1.1' ],\n actIds: [ '23a2a8' ],\n all: [],\n any: [ 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n } ],\n none: []\n }, {\n id: 'scope-attr-valid',\n impact: 'moderate',\n selector: 'td[scope], th[scope]',\n tags: [ 'cat.tables', 'best-practice' ],\n all: [ 'html5-scope', {\n options: {\n values: [ 'row', 'col', 'rowgroup', 'colgroup' ]\n },\n id: 'scope-value'\n } ],\n any: [],\n none: []\n }, {\n id: 'scrollable-region-focusable',\n impact: 'serious',\n selector: '*:not(select,textarea)',\n matches: 'scrollable-region-focusable-matches',\n tags: [ 'cat.keyboard', 'wcag2a', 'wcag211', 'wcag213', 'TTv5', 'TT4.a', 'EN-301-549', 'EN-9.2.1.1', 'EN-9.2.1.3', 'RGAAv4', 'RGAA-7.3.2' ],\n actIds: [ '0ssw9k' ],\n all: [],\n any: [ 'focusable-content', 'focusable-element' ],\n none: []\n }, {\n id: 'select-name',\n impact: 'critical',\n selector: 'select',\n tags: [ 'cat.forms', 'wcag2a', 'wcag412', 'section508', 'section508.22.n', 'TTv5', 'TT5.c', 'EN-301-549', 'EN-9.4.1.2', 'ACT', 'RGAAv4', 'RGAA-11.1.1' ],\n actIds: [ 'e086e5' ],\n all: [],\n any: [ 'implicit-label', 'explicit-label', 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n }, 'presentational-role' ],\n none: [ 'hidden-explicit-label' ]\n }, {\n id: 'server-side-image-map',\n impact: 'minor',\n selector: 'img[ismap]',\n tags: [ 'cat.text-alternatives', 'wcag2a', 'wcag211', 'section508', 'section508.22.f', 'TTv5', 'TT4.a', 'EN-301-549', 'EN-9.2.1.1', 'RGAAv4', 'RGAA-1.1.4' ],\n all: [],\n any: [],\n none: [ 'exists' ]\n }, {\n id: 'skip-link',\n impact: 'moderate',\n selector: 'a[href^=\"#\"], a[href^=\"/#\"]',\n matches: 'skip-link-matches',\n tags: [ 'cat.keyboard', 'best-practice', 'RGAAv4', 'RGAA-12.7.1' ],\n all: [],\n any: [ 'skip-link' ],\n none: []\n }, {\n id: 'summary-name',\n impact: 'serious',\n selector: 'summary',\n matches: 'summary-interactive-matches',\n tags: [ 'cat.name-role-value', 'wcag2a', 'wcag412', 'section508', 'section508.22.a', 'TTv5', 'TT6.a', 'EN-301-549', 'EN-9.4.1.2' ],\n all: [],\n any: [ 'has-visible-text', 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n } ],\n none: []\n }, {\n id: 'svg-img-alt',\n impact: 'serious',\n selector: '[role=\"img\"], [role=\"graphics-symbol\"], svg[role=\"graphics-document\"]',\n matches: 'svg-namespace-matches',\n tags: [ 'cat.text-alternatives', 'wcag2a', 'wcag111', 'section508', 'section508.22.a', 'TTv5', 'TT7.a', 'EN-301-549', 'EN-9.1.1.1', 'ACT', 'RGAAv4', 'RGAA-1.1.5' ],\n actIds: [ '7d6734' ],\n all: [],\n any: [ 'svg-non-empty-title', 'aria-label', 'aria-labelledby', {\n options: {\n attribute: 'title'\n },\n id: 'non-empty-title'\n } ],\n none: []\n }, {\n id: 'tabindex',\n impact: 'serious',\n selector: '[tabindex]',\n tags: [ 'cat.keyboard', 'best-practice' ],\n all: [],\n any: [ 'tabindex' ],\n none: []\n }, {\n id: 'table-duplicate-name',\n impact: 'minor',\n selector: 'table',\n tags: [ 'cat.tables', 'best-practice', 'RGAAv4', 'RGAA-5.2.1' ],\n all: [],\n any: [],\n none: [ 'same-caption-summary' ]\n }, {\n id: 'table-fake-caption',\n impact: 'serious',\n selector: 'table',\n matches: 'data-table-matches',\n tags: [ 'cat.tables', 'experimental', 'wcag2a', 'wcag131', 'section508', 'section508.22.g', 'EN-301-549', 'EN-9.1.3.1', 'RGAAv4', 'RGAA-5.4.1' ],\n all: [ 'caption-faked' ],\n any: [],\n none: []\n }, {\n id: 'target-size',\n impact: 'serious',\n selector: '*',\n enabled: false,\n matches: 'widget-not-inline-matches',\n tags: [ 'cat.sensory-and-visual-cues', 'wcag22aa', 'wcag258' ],\n all: [],\n any: [ {\n options: {\n minSize: 24\n },\n id: 'target-size'\n }, {\n options: {\n minOffset: 24\n },\n id: 'target-offset'\n } ],\n none: []\n }, {\n id: 'td-has-header',\n impact: 'critical',\n selector: 'table',\n matches: 'data-table-large-matches',\n tags: [ 'cat.tables', 'experimental', 'wcag2a', 'wcag131', 'section508', 'section508.22.g', 'TTv5', 'TT14.b', 'EN-301-549', 'EN-9.1.3.1', 'RGAAv4', 'RGAA-5.7.4' ],\n all: [ 'td-has-header' ],\n any: [],\n none: []\n }, {\n id: 'td-headers-attr',\n impact: 'serious',\n selector: 'table',\n matches: 'table-or-grid-role-matches',\n tags: [ 'cat.tables', 'wcag2a', 'wcag131', 'section508', 'section508.22.g', 'TTv5', 'TT14.b', 'EN-301-549', 'EN-9.1.3.1', 'RGAAv4', 'RGAA-5.7.4' ],\n actIds: [ 'a25f45' ],\n all: [ 'td-headers-attr' ],\n any: [],\n none: []\n }, {\n id: 'th-has-data-cells',\n impact: 'serious',\n selector: 'table',\n matches: 'data-table-matches',\n tags: [ 'cat.tables', 'wcag2a', 'wcag131', 'section508', 'section508.22.g', 'TTv5', 'TT14.b', 'EN-301-549', 'EN-9.1.3.1', 'RGAAv4', 'RGAA-5.7.1' ],\n actIds: [ 'd0f69e' ],\n all: [ 'th-has-data-cells' ],\n any: [],\n none: []\n }, {\n id: 'valid-lang',\n impact: 'serious',\n selector: '[lang]:not(html), [xml\\\\:lang]:not(html)',\n tags: [ 'cat.language', 'wcag2aa', 'wcag312', 'TTv5', 'TT11.b', 'EN-301-549', 'EN-9.3.1.2', 'ACT', 'RGAAv4', 'RGAA-8.7.1' ],\n actIds: [ 'de46e4' ],\n all: [],\n any: [],\n none: [ {\n options: {\n attributes: [ 'lang', 'xml:lang' ]\n },\n id: 'valid-lang'\n } ]\n }, {\n id: 'video-caption',\n impact: 'critical',\n selector: 'video',\n tags: [ 'cat.text-alternatives', 'wcag2a', 'wcag122', 'section508', 'section508.22.a', 'TTv5', 'TT17.a', 'EN-301-549', 'EN-9.1.2.2', 'RGAAv4', 'RGAA-4.3.1' ],\n actIds: [ 'eac66b' ],\n all: [],\n any: [],\n none: [ 'caption' ]\n } ],\n checks: [ {\n id: 'abstractrole',\n evaluate: 'abstractrole-evaluate'\n }, {\n id: 'aria-allowed-attr',\n evaluate: 'aria-allowed-attr-evaluate',\n options: {\n validTreeRowAttrs: [ 'aria-posinset', 'aria-setsize', 'aria-expanded', 'aria-level' ]\n }\n }, {\n id: 'aria-allowed-role',\n evaluate: 'aria-allowed-role-evaluate',\n options: {\n allowImplicit: true,\n ignoredTags: []\n }\n }, {\n id: 'aria-busy',\n evaluate: 'aria-busy-evaluate',\n deprecated: true\n }, {\n id: 'aria-conditional-attr',\n evaluate: 'aria-conditional-attr-evaluate',\n options: {\n invalidTableRowAttrs: [ 'aria-posinset', 'aria-setsize', 'aria-expanded', 'aria-level' ]\n }\n }, {\n id: 'aria-errormessage',\n evaluate: 'aria-errormessage-evaluate'\n }, {\n id: 'aria-hidden-body',\n evaluate: 'aria-hidden-body-evaluate'\n }, {\n id: 'aria-level',\n evaluate: 'aria-level-evaluate'\n }, {\n id: 'aria-prohibited-attr',\n evaluate: 'aria-prohibited-attr-evaluate',\n options: {\n elementsAllowedAriaLabel: [ 'applet', 'input' ]\n }\n }, {\n id: 'aria-required-attr',\n evaluate: 'aria-required-attr-evaluate'\n }, {\n id: 'aria-required-children',\n evaluate: 'aria-required-children-evaluate',\n options: {\n reviewEmpty: [ 'doc-bibliography', 'doc-endnotes', 'grid', 'list', 'listbox', 'menu', 'menubar', 'table', 'tablist', 'tree', 'treegrid', 'rowgroup' ]\n }\n }, {\n id: 'aria-required-parent',\n evaluate: 'aria-required-parent-evaluate',\n options: {\n ownGroupRoles: [ 'listitem', 'treeitem' ]\n }\n }, {\n id: 'aria-roledescription',\n evaluate: 'aria-roledescription-evaluate',\n options: {\n supportedRoles: [ 'button', 'img', 'checkbox', 'radio', 'combobox', 'menuitemcheckbox', 'menuitemradio' ]\n }\n }, {\n id: 'aria-unsupported-attr',\n evaluate: 'aria-unsupported-attr-evaluate'\n }, {\n id: 'aria-valid-attr-value',\n evaluate: 'aria-valid-attr-value-evaluate',\n options: []\n }, {\n id: 'aria-valid-attr',\n evaluate: 'aria-valid-attr-evaluate',\n options: []\n }, {\n id: 'braille-label-equivalent',\n evaluate: 'braille-label-equivalent-evaluate'\n }, {\n id: 'braille-roledescription-equivalent',\n evaluate: 'braille-roledescription-equivalent-evaluate'\n }, {\n id: 'deprecatedrole',\n evaluate: 'deprecatedrole-evaluate'\n }, {\n id: 'fallbackrole',\n evaluate: 'fallbackrole-evaluate'\n }, {\n id: 'has-global-aria-attribute',\n evaluate: 'has-global-aria-attribute-evaluate'\n }, {\n id: 'has-widget-role',\n evaluate: 'has-widget-role-evaluate',\n options: []\n }, {\n id: 'invalidrole',\n evaluate: 'invalidrole-evaluate'\n }, {\n id: 'is-element-focusable',\n evaluate: 'is-element-focusable-evaluate'\n }, {\n id: 'no-implicit-explicit-label',\n evaluate: 'no-implicit-explicit-label-evaluate'\n }, {\n id: 'unsupportedrole',\n evaluate: 'unsupportedrole-evaluate'\n }, {\n id: 'valid-scrollable-semantics',\n evaluate: 'valid-scrollable-semantics-evaluate',\n options: {\n roles: [ 'tooltip' ]\n }\n }, {\n id: 'color-contrast-enhanced',\n evaluate: 'color-contrast-evaluate',\n options: {\n ignoreUnicode: true,\n ignoreLength: false,\n ignorePseudo: false,\n boldValue: 700,\n boldTextPt: 14,\n largeTextPt: 18,\n contrastRatio: {\n normal: {\n expected: 7,\n minThreshold: 4.5\n },\n large: {\n expected: 4.5,\n minThreshold: 3\n }\n },\n pseudoSizeThreshold: .25,\n shadowOutlineEmMax: .1,\n textStrokeEmMin: .03\n }\n }, {\n id: 'color-contrast',\n evaluate: 'color-contrast-evaluate',\n options: {\n ignoreUnicode: true,\n ignoreLength: false,\n ignorePseudo: false,\n boldValue: 700,\n boldTextPt: 14,\n largeTextPt: 18,\n contrastRatio: {\n normal: {\n expected: 4.5\n },\n large: {\n expected: 3\n }\n },\n pseudoSizeThreshold: .25,\n shadowOutlineEmMax: .2,\n textStrokeEmMin: .03\n }\n }, {\n id: 'link-in-text-block-style',\n evaluate: 'link-in-text-block-style-evaluate'\n }, {\n id: 'link-in-text-block',\n evaluate: 'link-in-text-block-evaluate',\n options: {\n requiredContrastRatio: 3,\n allowSameColor: true\n }\n }, {\n id: 'autocomplete-appropriate',\n evaluate: 'autocomplete-appropriate-evaluate',\n deprecated: true\n }, {\n id: 'autocomplete-valid',\n evaluate: 'autocomplete-valid-evaluate',\n options: {\n stateTerms: [ 'none', 'false', 'true', 'disabled', 'enabled', 'undefined', 'null', 'xoff', 'xon' ],\n ignoredValues: [ 'text', 'pronouns', 'gender', 'message', 'content' ]\n }\n }, {\n id: 'accesskeys',\n evaluate: 'accesskeys-evaluate',\n after: 'accesskeys-after'\n }, {\n id: 'focusable-content',\n evaluate: 'focusable-content-evaluate'\n }, {\n id: 'focusable-disabled',\n evaluate: 'focusable-disabled-evaluate'\n }, {\n id: 'focusable-element',\n evaluate: 'focusable-element-evaluate'\n }, {\n id: 'focusable-modal-open',\n evaluate: 'focusable-modal-open-evaluate'\n }, {\n id: 'focusable-no-name',\n evaluate: 'focusable-no-name-evaluate'\n }, {\n id: 'focusable-not-tabbable',\n evaluate: 'focusable-not-tabbable-evaluate'\n }, {\n id: 'frame-focusable-content',\n evaluate: 'frame-focusable-content-evaluate'\n }, {\n id: 'landmark-is-top-level',\n evaluate: 'landmark-is-top-level-evaluate'\n }, {\n id: 'no-focusable-content',\n evaluate: 'no-focusable-content-evaluate'\n }, {\n id: 'page-has-heading-one',\n evaluate: 'has-descendant-evaluate',\n after: 'has-descendant-after',\n options: {\n selector: 'h1:not([role], [aria-level]), :is(h1, h2, h3, h4, h5, h6):not([role])[aria-level=1], [role=heading][aria-level=1]',\n passForModal: true\n }\n }, {\n id: 'page-has-main',\n evaluate: 'has-descendant-evaluate',\n after: 'has-descendant-after',\n options: {\n selector: 'main:not([role]), [role=\\'main\\']',\n passForModal: true\n }\n }, {\n id: 'page-no-duplicate-banner',\n evaluate: 'page-no-duplicate-evaluate',\n after: 'page-no-duplicate-after',\n options: {\n selector: 'header:not([role]), [role=banner]',\n role: 'banner'\n }\n }, {\n id: 'page-no-duplicate-contentinfo',\n evaluate: 'page-no-duplicate-evaluate',\n after: 'page-no-duplicate-after',\n options: {\n selector: 'footer:not([role]), [role=contentinfo]',\n role: 'contentinfo'\n }\n }, {\n id: 'page-no-duplicate-main',\n evaluate: 'page-no-duplicate-evaluate',\n after: 'page-no-duplicate-after',\n options: {\n selector: 'main:not([role]), [role=\\'main\\']'\n }\n }, {\n id: 'tabindex',\n evaluate: 'tabindex-evaluate'\n }, {\n id: 'alt-space-value',\n evaluate: 'alt-space-value-evaluate'\n }, {\n id: 'duplicate-img-label',\n evaluate: 'duplicate-img-label-evaluate',\n options: {\n parentSelector: 'button, [role=button], a[href], p, li, td, th'\n }\n }, {\n id: 'explicit-label',\n evaluate: 'explicit-evaluate'\n }, {\n id: 'help-same-as-label',\n evaluate: 'help-same-as-label-evaluate'\n }, {\n id: 'hidden-explicit-label',\n evaluate: 'hidden-explicit-label-evaluate'\n }, {\n id: 'implicit-label',\n evaluate: 'implicit-evaluate'\n }, {\n id: 'label-content-name-mismatch',\n evaluate: 'label-content-name-mismatch-evaluate',\n options: {\n pixelThreshold: .1,\n occurrenceThreshold: 3\n }\n }, {\n id: 'multiple-label',\n evaluate: 'multiple-label-evaluate'\n }, {\n id: 'title-only',\n evaluate: 'title-only-evaluate'\n }, {\n id: 'landmark-is-unique',\n evaluate: 'landmark-is-unique-evaluate',\n after: 'landmark-is-unique-after'\n }, {\n id: 'has-lang',\n evaluate: 'has-lang-evaluate',\n options: {\n attributes: [ 'lang', 'xml:lang' ]\n }\n }, {\n id: 'valid-lang',\n evaluate: 'valid-lang-evaluate',\n options: {\n attributes: [ 'lang', 'xml:lang' ]\n }\n }, {\n id: 'xml-lang-mismatch',\n evaluate: 'xml-lang-mismatch-evaluate'\n }, {\n id: 'dlitem',\n evaluate: 'dlitem-evaluate'\n }, {\n id: 'listitem',\n evaluate: 'listitem-evaluate'\n }, {\n id: 'only-dlitems',\n evaluate: 'invalid-children-evaluate',\n options: {\n validRoles: [ 'definition', 'term', 'listitem' ],\n validNodeNames: [ 'dt', 'dd' ],\n divGroups: true\n }\n }, {\n id: 'only-listitems',\n evaluate: 'invalid-children-evaluate',\n options: {\n validRoles: [ 'listitem' ],\n validNodeNames: [ 'li' ]\n }\n }, {\n id: 'structured-dlitems',\n evaluate: 'structured-dlitems-evaluate'\n }, {\n id: 'caption',\n evaluate: 'caption-evaluate'\n }, {\n id: 'frame-tested',\n evaluate: 'frame-tested-evaluate',\n after: 'frame-tested-after',\n options: {\n isViolation: false\n }\n }, {\n id: 'no-autoplay-audio',\n evaluate: 'no-autoplay-audio-evaluate',\n options: {\n allowedDuration: 3\n }\n }, {\n id: 'css-orientation-lock',\n evaluate: 'css-orientation-lock-evaluate',\n options: {\n degreeThreshold: 2\n }\n }, {\n id: 'meta-viewport-large',\n evaluate: 'meta-viewport-scale-evaluate',\n options: {\n scaleMinimum: 5,\n lowerBound: 2\n }\n }, {\n id: 'meta-viewport',\n evaluate: 'meta-viewport-scale-evaluate',\n options: {\n scaleMinimum: 2\n }\n }, {\n id: 'target-offset',\n evaluate: 'target-offset-evaluate',\n options: {\n minOffset: 24\n }\n }, {\n id: 'target-size',\n evaluate: 'target-size-evaluate',\n options: {\n minSize: 24\n }\n }, {\n id: 'header-present',\n evaluate: 'has-descendant-evaluate',\n after: 'has-descendant-after',\n options: {\n selector: ':is(h1, h2, h3, h4, h5, h6):not([role]), [role=heading]'\n }\n }, {\n id: 'heading-order',\n evaluate: 'heading-order-evaluate',\n after: 'heading-order-after'\n }, {\n id: 'identical-links-same-purpose',\n evaluate: 'identical-links-same-purpose-evaluate',\n after: 'identical-links-same-purpose-after'\n }, {\n id: 'internal-link-present',\n evaluate: 'internal-link-present-evaluate'\n }, {\n id: 'landmark',\n evaluate: 'has-descendant-evaluate',\n options: {\n selector: 'main, [role=main]'\n }\n }, {\n id: 'meta-refresh-no-exceptions',\n evaluate: 'meta-refresh-evaluate',\n options: {\n minDelay: 72e3,\n maxDelay: false\n }\n }, {\n id: 'meta-refresh',\n evaluate: 'meta-refresh-evaluate',\n options: {\n minDelay: 0,\n maxDelay: 72e3\n }\n }, {\n id: 'p-as-heading',\n evaluate: 'p-as-heading-evaluate',\n options: {\n margins: [ {\n weight: 150,\n italic: true\n }, {\n weight: 150,\n size: 1.15\n }, {\n italic: true,\n size: 1.15\n }, {\n size: 1.4\n } ],\n passLength: 1,\n failLength: .5\n }\n }, {\n id: 'region',\n evaluate: 'region-evaluate',\n after: 'region-after',\n options: {\n regionMatcher: 'dialog, [role=dialog], [role=alertdialog], svg'\n }\n }, {\n id: 'skip-link',\n evaluate: 'skip-link-evaluate'\n }, {\n id: 'unique-frame-title',\n evaluate: 'unique-frame-title-evaluate',\n after: 'unique-frame-title-after'\n }, {\n id: 'duplicate-id-active',\n evaluate: 'duplicate-id-evaluate',\n after: 'duplicate-id-after'\n }, {\n id: 'duplicate-id-aria',\n evaluate: 'duplicate-id-evaluate',\n after: 'duplicate-id-after'\n }, {\n id: 'duplicate-id',\n evaluate: 'duplicate-id-evaluate',\n after: 'duplicate-id-after'\n }, {\n id: 'aria-label',\n evaluate: 'aria-label-evaluate'\n }, {\n id: 'aria-labelledby',\n evaluate: 'aria-labelledby-evaluate'\n }, {\n id: 'avoid-inline-spacing',\n evaluate: 'avoid-inline-spacing-evaluate',\n options: {\n cssProperties: [ 'line-height', 'letter-spacing', 'word-spacing' ]\n }\n }, {\n id: 'button-has-visible-text',\n evaluate: 'has-text-content-evaluate'\n }, {\n id: 'doc-has-title',\n evaluate: 'doc-has-title-evaluate'\n }, {\n id: 'error-occurred',\n evaluate: 'exists-evaluate'\n }, {\n id: 'exists',\n evaluate: 'exists-evaluate'\n }, {\n id: 'has-alt',\n evaluate: 'has-alt-evaluate'\n }, {\n id: 'has-visible-text',\n evaluate: 'has-text-content-evaluate'\n }, {\n id: 'important-letter-spacing',\n evaluate: 'inline-style-property-evaluate',\n options: {\n cssProperty: 'letter-spacing',\n minValue: .12\n }\n }, {\n id: 'important-line-height',\n evaluate: 'inline-style-property-evaluate',\n options: {\n multiLineOnly: true,\n cssProperty: 'line-height',\n minValue: 1.5,\n normalValue: 1\n }\n }, {\n id: 'important-word-spacing',\n evaluate: 'inline-style-property-evaluate',\n options: {\n cssProperty: 'word-spacing',\n minValue: .16\n }\n }, {\n id: 'is-on-screen',\n evaluate: 'is-on-screen-evaluate'\n }, {\n id: 'non-empty-alt',\n evaluate: 'attr-non-space-content-evaluate',\n options: {\n attribute: 'alt'\n }\n }, {\n id: 'non-empty-if-present',\n evaluate: 'non-empty-if-present-evaluate'\n }, {\n id: 'non-empty-placeholder',\n evaluate: 'attr-non-space-content-evaluate',\n options: {\n attribute: 'placeholder'\n }\n }, {\n id: 'non-empty-title',\n evaluate: 'attr-non-space-content-evaluate',\n options: {\n attribute: 'title'\n }\n }, {\n id: 'non-empty-value',\n evaluate: 'attr-non-space-content-evaluate',\n options: {\n attribute: 'value'\n }\n }, {\n id: 'presentational-role',\n evaluate: 'presentational-role-evaluate'\n }, {\n id: 'role-none',\n evaluate: 'matches-definition-evaluate',\n deprecated: true,\n options: {\n matcher: {\n attributes: {\n role: 'none'\n }\n }\n }\n }, {\n id: 'role-presentation',\n evaluate: 'matches-definition-evaluate',\n deprecated: true,\n options: {\n matcher: {\n attributes: {\n role: 'presentation'\n }\n }\n }\n }, {\n id: 'svg-non-empty-title',\n evaluate: 'svg-non-empty-title-evaluate'\n }, {\n id: 'caption-faked',\n evaluate: 'caption-faked-evaluate'\n }, {\n id: 'html5-scope',\n evaluate: 'html5-scope-evaluate'\n }, {\n id: 'same-caption-summary',\n evaluate: 'same-caption-summary-evaluate'\n }, {\n id: 'scope-value',\n evaluate: 'scope-value-evaluate',\n options: {\n values: [ 'row', 'col', 'rowgroup', 'colgroup' ]\n }\n }, {\n id: 'td-has-header',\n evaluate: 'td-has-header-evaluate'\n }, {\n id: 'td-headers-attr',\n evaluate: 'td-headers-attr-evaluate'\n }, {\n id: 'th-has-data-cells',\n evaluate: 'th-has-data-cells-evaluate'\n }, {\n id: 'hidden-content',\n evaluate: 'hidden-content-evaluate'\n } ]\n });\n})(typeof window === 'object' ? window : this);"],"names":["axeFunction","window","global","document","axe","_typeof","module","_excluded","_excluded2","_excluded3","_excluded4","_excluded5","_excluded6","_excluded7","_excluded8","_excluded9","_excluded0","_excluded1","_excluded10","_excluded11","_excluded12","_excluded13","_excluded14","_excluded15","_excluded16","_excluded17","_toArray","r","_arrayWithHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableRest","_wrapNativeSuper","t","_isNativeFunction","Wrapper","_construct","_getPrototypeOf","_setPrototypeOf","_defineProperty","e","_toPropertyKey","_isNativeReflectConstruct","o","p","_objectWithoutProperties","i","_objectWithoutPropertiesLoose","n","_callSuper","_possibleConstructorReturn","_assertThisInitialized","_inherits","_extends","_toConsumableArray","_arrayWithoutHoles","_nonIterableSpread","_arrayLikeToArray","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateMethodInitSpec","_classPrivateFieldGet","s","_assertClassBrand","_classPrivateFieldSet","_slicedToArray","_iterableToArrayLimit","l","u","f","_classCallCheck","_defineProperties","_createClass","_toPrimitive","_createForOfIteratorHelper","_n","F","_Class_brand","_path","_CSS","_space","_r","_g","_b","_red","_green","_blue","_Class3_brand","__create","__defProp","__getProtoOf","__hasOwnProp","__getOwnPropNames","__getOwnPropDesc","__defNormalProp","obj","key","value","__markAsModule","target","__commonJS","cb","mod","__export","all","name","__exportStar","desc","_iterator","_step","_loop","err","__toModule","__publicField","require_es6_promise","exports","global2","factory","objectOrFunction","x","type2","isFunction","_isArray","isArray","len","vertxNext","customSchedulerFn","asap","callback","arg","queue2","flush","scheduleFlush","setScheduler","scheduleFn","setAsap","asapFn","browserWindow","browserGlobal","BrowserMutationObserver","isNode2","isWorker","useNextTick","useVertxTimer","useSetTimeout","useMutationObserver","iterations","observer","node","useMessageChannel","channel","globalSetTimeout","attemptVertx","vertx","then","onFulfillment","onRejection","parent","child","noop3","PROMISE_ID","makePromise","_state","invokeCallback","subscribe2","resolve$1","object","Constructor","promise","resolve","PENDING","FULFILLED","REJECTED","selfFulfillment","cannotReturnOwn","tryThen","then$$1","fulfillmentHandler","rejectionHandler","handleForeignThenable","thenable","promise2","sealed","error","fulfill","reason","reject","handleOwnThenable","handleMaybeThenable","maybeThenable","publishRejection","publish","_subscribers","length","subscribers","settled","detail","hasCallback","succeeded","initializePromise","resolver","id","nextId","validationError","Enumerator","Enumerator2","input","entry","c4","resolve$$1","_then","didError","Promise$1","resolve$$12","state","enumerator","entries","race","resolve2","reject2","_","reject$1","needsResolver","needsNew","Promise2","constructor","polyfill","local","promiseToString","require_typedarray","MAX_ARRAY_LENGTH","ECMAScript","opts","ophop","v","p2","LN2","abs","floor","log2","min","pow","round","clamp3","minimum","max2","getOwnPropNames","props","defineProp","configureProperties","makeArrayAccessors","makeArrayAccessor","index","as_signed","bits","as_unsigned","packI8","n2","unpackI8","bytes","packU8","unpackU8","packU8Clamped","packI16","unpackI16","packU16","unpackU16","packI32","unpackI32","packU32","unpackU32","packIEEE754","ebits","fbits","bias","str","roundToEven","w","fl","unpackIEEE754","j","b2","unpackF64","packF64","unpackF32","packF32","ArrayBuffer","ArrayBufferView","makeConstructor","bytesPerElement","pack","unpack","_ctor","buffer","byteOffset","array","sequence","offset","d2","byteLength","tmp","start","end","Int8Array","Uint8Array2","Uint8ClampedArray2","Int16Array","Uint16Array","Int32Array","Uint32Array3","Float32Array","Float64Array","IS_BIG_ENDIAN","u16array","u8array","DataView","makeGetter","arrayType","littleEndian","uint8Array","makeSetter","typeArray","byteArray","byteView","require_weakmap_polyfill","self2","hasOwnProperty2","hasDefine","defineProperty","WeakMap2","genId","checkInstance","isObject","methodName","prefix","rand","require_global_this","check","it","require_fails","exec","require_function_bind_native","fails","test","require_function_apply","NATIVE_BIND","FunctionPrototype","apply","call","require_function_uncurry_this","uncurryThisWithBind","fn","require_classof_raw","uncurryThis","toString","stringSlice","require_function_uncurry_this_clause","classofRaw","require_is_callable","documentAll","argument","require_descriptors","require_function_call","require_object_property_is_enumerable","$propertyIsEnumerable","getOwnPropertyDescriptor","NASHORN_BUG","V","descriptor","require_create_property_descriptor","bitmap","require_indexed_object","classof","$Object","split","require_is_null_or_undefined","require_require_object_coercible","isNullOrUndefined","$TypeError","require_to_indexed_object","IndexedObject","requireObjectCoercible","require_is_object","isCallable","require_path","require_get_built_in","path","globalThis2","aFunction","variable","namespace","method","require_object_is_prototype_of","require_environment_user_agent","navigator","userAgent","require_environment_v8_version","process2","Deno","versions","v8","match","version","require_symbol_constructor_detection","V8_VERSION","$String","symbol","require_use_symbol_as_uid","NATIVE_SYMBOL","require_is_symbol","getBuiltIn","isPrototypeOf","USE_SYMBOL_AS_UID","$Symbol","require_try_to_string","require_a_callable","tryToString","require_get_method","aCallable","P","func","require_ordinary_to_primitive","pref","val","require_is_pure","require_define_global_property","require_shared_store","IS_PURE","defineGlobalProperty","SHARED","store","require_shared","require_to_object","require_has_own_property","toObject","require_uid","postfix","require_well_known_symbol","shared","hasOwn2","uid","Symbol2","WellKnownSymbolsStore","createWellKnownSymbol","require_to_primitive","isSymbol","getMethod","ordinaryToPrimitive","wellKnownSymbol","TO_PRIMITIVE","exoticToPrim","result","require_to_property_key","toPrimitive","require_document_create_element","document2","EXISTS","require_ie8_dom_define","DESCRIPTORS","createElement","require_object_get_own_property_descriptor","propertyIsEnumerableModule","createPropertyDescriptor","toIndexedObject","toPropertyKey","IE8_DOM_DEFINE","$getOwnPropertyDescriptor","O","require_is_forced","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","require_function_bind_context","bind","that","require_v8_prototype_define_bug","require_an_object","require_object_define_property","V8_PROTOTYPE_DEFINE_BUG","anObject","$defineProperty","ENUMERABLE","CONFIGURABLE","WRITABLE","Attributes","current","require_create_non_enumerable_property","definePropertyModule","require_export","createNonEnumerableProperty","wrapConstructor","NativeConstructor","_Wrapper","a2","options","source","TARGET","GLOBAL","STATIC","PROTO","nativeSource","targetPrototype","FORCED","USE_NATIVE","VIRTUAL_PROTOTYPE","sourceProperty","targetProperty","nativeProperty","resultProperty","require_es_object_has_own","$","require_has_own","require_has_own2","require_has_own3","require_shared_key","keys","require_correct_prototype_getter","require_object_get_prototype_of","sharedKey","CORRECT_PROTOTYPE_GETTER","IE_PROTO","ObjectPrototype","require_math_trunc","ceil","require_to_integer_or_infinity","trunc","number","require_to_absolute_index","toIntegerOrInfinity","integer","require_to_length","require_length_of_array_like","toLength","require_array_includes","toAbsoluteIndex","lengthOfArrayLike","createMethod","IS_INCLUDES","$this","el","fromIndex","require_hidden_keys","require_object_keys_internal","indexOf","hiddenKeys","push","names","require_enum_bug_keys","require_object_keys","internalObjectKeys","enumBugKeys","require_object_to_array","objectGetPrototypeOf","objectKeys","propertyIsEnumerable","IE_BUG","TO_ENTRIES","IE_WORKAROUND","require_es_object_values","$values","require_values","require_values2","require_values3","require_to_string_tag_support","TO_STRING_TAG","require_classof","TO_STRING_TAG_SUPPORT","CORRECT_ARGUMENTS","tryGet","tag","require_to_string","require_string_multibyte","charAt","charCodeAt","CONVERT_TO_STRING","pos","S","position","size","first","second","require_weak_map_basic_detection","require_internal_state","NATIVE_WEAK_MAP","OBJECT_ALREADY_INITIALIZED","TypeError2","set2","get2","has","enforce","getterFor","TYPE","metadata","STATE","require_function_name","getDescriptor","PROPER","require_object_define_properties","Properties","require_html","require_object_create","definePropertiesModule","html","documentCreateElement","GT","LT","PROTOTYPE","SCRIPT","EmptyConstructor","scriptTag","content","NullProtoObjectViaActiveX","activeXDocument2","temp","NullProtoObjectViaIFrame","iframe","JS","iframeDocument","activeXDocument","_NullProtoObject","require_define_built_in","require_iterators_core","create","getPrototypeOf","defineBuiltIn","ITERATOR","BUGGY_SAFARI_ITERATORS","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","NEW_ITERATOR_PROTOTYPE","require_object_to_string","require_set_to_string_tag","TAG","SET_METHOD","require_iterators","require_iterator_create_constructor","setToStringTag","Iterators","returnThis","IteratorConstructor","NAME","next","ENUMERABLE_NEXT","require_function_uncurry_this_accessor","require_is_possible_prototype","require_a_possible_prototype","isPossiblePrototype","require_object_set_prototype_of","uncurryThisAccessor","aPossiblePrototype","CORRECT_SETTER","setter","proto","require_iterator_define","FunctionName","createIteratorConstructor","setPrototypeOf","IteratorsCore","PROPER_FUNCTION_NAME","CONFIGURABLE_FUNCTION_NAME","KEYS","VALUES","ENTRIES","Iterable","DEFAULT","IS_SET","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","CurrentIteratorPrototype","methods","KEY","require_create_iter_result_object","done","require_es_string_iterator","InternalStateModule","defineIterator","createIterResultObject","STRING_ITERATOR","setInternalState","getInternalState","iterated","point","require_iterator_close","iterator","kind","innerResult","innerError","require_call_with_safe_iteration_closing","iteratorClose","require_is_array_iterator_method","ArrayPrototype","require_inspect_source","functionToString","require_is_constructor","inspectSource","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","called","require_create_property","require_get_iterator_method","require_get_iterator","getIteratorMethod","usingIterator","iteratorMethod","require_array_from","callWithSafeIterationClosing","isArrayIteratorMethod","isConstructor","createProperty","getIterator","$Array","arrayLike","IS_CONSTRUCTOR","argumentsLength","mapfn","mapping","step","require_check_correctness_of_iteration","SAFE_CLOSING","iteratorWithReturn","SKIP_CLOSING","ITERATION_SUPPORT","require_es_array_from","from","checkCorrectnessOfIteration","INCORRECT_ITERATION","iterable","require_from","require_from2","require_from3","require_utils","isIdentStart","isIdent","isHex","escapeIdentifier","chr","charCode","extraCharCode","escapeStr","require_parser_context","utils_1","parseCssSelector","pseudos","attrEqualityMods","ruleNestingOperators","substitutesEnabled","getStr","quote","escapeTable","esc","hex","getIdent","skipWhitespace","parse3","res","parseSelector","selector","parseSingleSelector","rule","parseRule","currentRule","op","attr","operator","attrValue","pseudoName","pseudo","require_render","renderEntity","entity","currentEntity","parts","cn","require_lib","parser_context_1","render_1","CssSelectorParser2","CssSelectorParser3","_i","_a","pseudos_1","pseudos_2","pseudos_3","pseudos_4","operators","operators_1","operators_2","mods","mods_1","mods_2","require_doT","doT2","doNotSkipEncoded","encodeHTMLRules","matchHTML","code","m3","startend","skip","resolveDefs","block","def","assign","m4","param","rw","unescape","tmpl","cse","needhtmlencode","sid","indv","elsecase","iterate","vname","iname","require_noop","require_is_value","_undefined","require_normalize_options","isValue","forEach","src","opts1","require_is_implemented","sign","require_shim","require_sign","require_to_integer","require_to_pos_integer","toInteger","require_resolve_length","toPosInt","optsLength","fnLength","isAsync","require_valid_callable","require_valid_value","require_iterate","callable","objPropertyIsEnumerable","defVal","list","thisArg","compareFn","require_for_each","require_registered_extensions","require_is_implemented2","require_is_implemented3","require_shim2","require_keys","require_shim3","dest","require_assign","require_is_object2","map","require_custom","captureStackTrace","message","err2","ext","require_mixin","getOwnPropertyNames","getOwnPropertySymbols","sourceObject","require_define_length","arg1","arg2","generate","mixin","cache2","args","require_is","require_is2","possibleTypes","require_is3","require_is4","isPrototype","require_is5","classRe","require_is_implemented4","require_shim4","searchString","require_contains","require_d","isPlainFunction","normalizeOpts","contains3","dscr","require_event_emitter","defineProperties","on","once","off","emit","descriptors","base","listener","_once","listeners","candidate","require_is_implemented5","arr","require_is_implemented6","require_implementation","naiveFallback","require_global_this2","require_is_implemented7","validTypes","require_is_symbol2","require_validate_symbol","require_generate_name","objPrototype","created","ie11BugWorkaround","require_standard_symbols","NativeSymbol","SymbolPolyfill","require_symbol_registry","validateSymbol","registry","require_polyfill","generateName","setupStandardSymbols","setupSymbolRegistry","HiddenSymbol","isNativeSafe","description","require_es6_symbol","require_is_arguments","objToString","require_is_function","isFunctionStringTag","require_is_string","require_shim5","iteratorSymbol","isArguments","validValue","isString2","mapFn","Context2","require_from4","require_to_array","require_resolve_resolve","toArray2","slice","resolveArgs","resolvers","require_resolve_normalize","userNormalizer","normalizer","require_configure_map","customError","defineLength","ee","resolveResolve","resolveNormalize","_on","original","conf","memLength","del","_clear","extDel","extGet","extHas","getListeners","setListeners","deleteListeners","memoized","oldCache","require_plain","extensions","configure4","resolveLength","extFn","require_primitive","require_get_primitive_fixed","currentLength","require_is_implemented8","numberIsNaN","require_shim6","require_is_nan","require_e_index_of","objHasOwnProperty","searchElement","require_get","lastId","require_get_1","argsMap","require_get_fixed","require_map","targetObj","require_next_tick","ensureCallable","byObserver","Observer","currentQueue","require_async","aFrom","objectMap","nextTick","tbi","waiting","currentCallback","currentContext","currentArgs","last2","context","origCb","cb2","args2","cb3","require_primitive_set","require_is_callable2","require_validate_stringifiable","stringifiable","require_validate_stringifiable_value","ensureValue","require_safe_to_string","require_to_short_string_representation","safeToString","reNewLine","_char","require_is_promise","isPromise","require_promise","primitiveSet","ensureString","toShortString","supportedModes","mode","promises","ignore","isFailed","onSuccess","count","onFailure","resolvedMode","nextTickFailure","require_dispose","dispose","resultArray","require_max_timeout","require_valid_timeout","maxTimeout","require_max_age","timeout","maxAge","timeouts","preFetchAge","preFetchTimeouts","require_lru_queue","limit","oldIndex","nuIndex","require_max","toPosInteger","lruQueue","hit","require_ref_counter","require_memoizee","plain","definitions","constants","definition","priority","group","constants_default","log","log_default","whitespaceRegex","AbstractVirtualNode","className","classAttr","abstract_virtual_node_default","utils_exports","dq_element_default","rule_error_default","aggregate_default","aggregate_checks_default","aggregate_node_results_default","aggregate_result_default","are_styles_set_default","assert_default","check_helper_default","clone2","closest_default","_collectResultsFromFrames","_contains","_convertSelector","css_parser_default","deep_merge_default","escape_selector_default","extend_meta_data_default","_filterHtmlAttrs","_finalizeRuleResult","find_by_default","get_all_checks_default","_getAncestry","get_base_lang_default","get_check_message_default","get_check_option_default","_getEnvironmentData","_getFlattenedTree","_getFrameContexts","get_friendly_uri_end_default","get_node_attributes_default","get_node_from_tree_default","_getPreloadConfig","get_root_node_default","_getRule","get_scroll_default","get_scroll_state_default","get_selector_default","_getSelectorData","_getShadowSelector","_getStandards","get_stylesheet_factory_default","get_xpath_default","inject_style_default","_isArrayLike","_isContextObject","_isContextProp","_isContextSpec","is_hidden_default","is_html_element_default","_isLabelledFramesSelector","_isLabelledShadowDomSelector","_isNodeInContext","is_shadow_root_default","valid_langs_default","is_xhtml_default","_matchAncestry","_matches","_matchesExpression","element_matches_default","memoize_default","merge_results_default","_nodeLookup","node_serializer_default","node_sorter_default","_objectHasOwn","parse_crossorigin_stylesheet_default","parse_sameorigin_stylesheet_default","parse_stylesheet_default","parse_tabindex_default","performance_timer_default","_pollyfillElementsFromPoint","_preload","preload_cssom_default","preload_media_default","process_message_default","_publishMetaData","query_selector_all_default","query_selector_all_filter_default","queue_default","_respondable","rule_should_run_default","_select","_sendCommandToFrame","_serializeError","set_scroll_state_default","_shadowSelect","_shadowSelectAll","_shouldPreload","to_array_default","token_list_default","unique_array_default","uuid_default","valid_input_type_default","_validLangs","aggregate","values2","initial","sorting","CANTTELL_PRIO","FAIL_PRIO","checkMap","checkTypes","anyAllNone","functor","out","aggregateChecks","nodeResOriginal","nodeResult","priorities","impacts","ruleResult","_ref","checkType","checkResult","aggregateNodeResults","nodeResults","resultList","groupName","impactGroup","impactList","failure","copyToGroup","resultObject","subResult","resultCopy","resultGroup","aggregateResult","results","areStylesSet","styles","stopAt","styl","att","assert","bool","toArray","thing","escapeSelector","codeUnit","firstCodeUnit","isMostlyNumbers","splitString","splitIndex","trimRight","uriParser","url","protocol","domain","port","query","hash","_splitString","_splitString2","_splitString3","_splitString4","_url$split","_url$split2","_splitString5","_splitString6","_splitString7","_splitString8","_splitString9","_splitString0","getFriendlyUriEnd","uri","currentDomain","_options$maxLength","maxLength","_uriParser","pathEnd","lastDotIndex","getNodeAttributes","matchesSelector","candidates","imports_exports","import_from2","_Color","import_css_selector_parser","import_dot","emoji_regex_default","import_memoizee","import_es6_promise","import_typedarray","import_has_own","import_values","import_from","output","nextKey","predicate","k","currentElement","fun","search","flat","depth","acc","cur","multiplyMatrices","A","B","B_cols","product","row","col","ret","_iterator2","_step2","isString","type","toPrecision","precision","integerLength","p10","parseFunction","isFunctionRegex","isNumberRegex","$0","last","interpolate","interpolateInv","mapRange","to2","parseCoordGrammar","coordGrammars","coordGrammar2","range2","util","Hooks","name2","env","hooks","defaults","WHITES","getWhite","adapt$1","W1","W2","XYZ","ε$4","_ColorSpace2","_ColorSpace","_options$coords","_ref2","_options$white","_options$formats","_this$formats$functio","_this$formats","_this$formats2","_coords","white2","format","_getPath","coords","_ref3","_ref3$epsilon","epsilon","coordMeta","meta","_meta$range","_this$formats$functio2","_processFormat","space","_ref4","myPath","otherPath","connectionSpace","connectionSpaceIndex","_i2","_i3","_ref5","_range2$min","_iterator3","_step3","alias","argType","_len","alternatives","_key","ref","workingSpace","coordType","coord","_ref$split","_ref$split2","_ref6","normalizedCoord","_meta$name","_meta","coordFormats","_ref149","_ref150","outputType","fromRange","toRange","suffix","_coordFormats$i","_space2","ColorSpace","XYZ_D65","RGBColorSpace","_ColorSpace3","_options$referred","_this","_options$toBase","_options$fromBase","rgb","xyz","parse","_String","alpha","_iterator4","_step4","_loop2","colorSpec","_colorSpec$ids","argCount","_ret","didYouMean","_ColorSpace$registry$","cssId","_iterator5","_step5","_loop3","_alpha","_ref7","_coords$i","_ref8","providedType","coordName","_ret2","_iterator6","_step6","formatId","color","_color$alpha","getColor","getAll","get","prop","_ColorSpace$resolveCo","setAll","set","_ColorSpace$resolveCo2","XYZ_D50","ε$3","ε3$1","κ$1","white$1","lab","Lab","constrain","angle","adjust","arc","angles","_angles$map","_angles$map2","a1","angleDiff","lch","_Lab","L","hue","ε2","LCH","_LCH","Lightness","Chroma","Hue","Gfactor","π$1","r2d","d2r$1","deltaE2000","sample","_ref9","_ref9$kL","kL","_ref9$kC","kC","_ref9$kH","kH","_lab$from","_lab$from2","L1","b1","C1","_lab$from3","_lab$from4","L2","C2","Cbar","C7","G","adash1","adash2","Cdash1","Cdash2","h1","h2","ΔL","ΔC","hdiff","hsum","habs","Δh","ΔH","Ldash","Cdash","Cdash7","hdash","lsq","SL","SC","T","SH","Δθ","RC","RT","dE","ε$2","inGamut","_ref0","_ref0$epsilon","clone","toGamut","_ref1","_ref1$method","_ref1$space","spaceColor","to","clipped","mapSpace","coordId","mappedColor","bounds","low","high","clipped2","deltaE2","_bounds","_bounds$i","_ref10","inGamut2","serialize","_ref12","_color$space$getForma","_ref11","_ref11$precision","_ref11$format","_ref11$inGamut","inGamut$1","customOptions","_format$ids","strAlpha","toXYZ_M$5","fromXYZ_M$5","REC2020Linear","α","β","REC2020","RGB","toXYZ_M$4","fromXYZ_M$4","P3Linear","toXYZ_M$3","fromXYZ_M$3","sRGBLinear","KEYWORDS","coordGrammar","coordGrammarNumber","sRGB","rgba","component","_ref13","_ref13$collapse","collapse","collapsible","P3","_i4","_arr","_display","_CSS2","_ref14","_ref14$space","fallbackColor","distance","color1","color2","coords1","coords2","c12","c22","equals","getLuminance","setLuminance","register$2","Color3","luminance","contrastWCAG21","Y1","Y2","_ref15","normBG","normTXT","revTXT","revBG","blkThrs","blkClmp","loClip","deltaYmin","scaleBoW","loBoWoffset","scaleWoB","fclamp","Y","linearize","contrastAPCA","background","foreground","C","Sapc","R","_foreground$coords","lumTxt","_background$coords","lumBg","Ytxt","Ybg","BoW","contrastMichelson","_ref16","denom","max","contrastWeber","_ref17","contrastLstar","ε$1","ε3","κ","white","lab_d65","phi","contrastDeltaPhi","Lstr1","Lstr2","deltaPhiStar","contrast2","contrastMethods","contrast","_o","algorithm","rest","algorithms","uv","_getAll","_getAll2","X","Z","xy","_getAll3","_getAll4","sum","register$1","chromaticity","deltaE76","π","d2r","deltaECMC","_ref18","_ref18$l","_ref18$c","_lab$from5","_lab$from6","_lch$from","_lch$from2","H1","_lab$from7","_lab$from8","Δa","Δb","H2","C4","Yw$1","XYZ_Abs_D65","AbsXYZ","b$1","g","n$1","ninv$1","c1$2","c2$2","c3$2","pinv","d","d0","XYZtoCone_M","ConetoXYZ_M","ConetoIab_M","IabtoCone_M","Jzazbz","_XYZ","Xa","Ya","Za","Xm","Ym","LMS","PQLMS","num","_multiplyMatrices","_multiplyMatrices2","Iz","az","bz","Jz","Jzazbz2","_Jzazbz","_multiplyMatrices3","_multiplyMatrices4","jzczhz","jzazbz","_jzazbz","jzczhz2","deltaEJz","_jzczhz$from","_jzczhz$from2","Jz1","Cz1","Hz1","_jzczhz$from3","_jzczhz$from4","Jz2","Cz2","Hz2","ΔJ","c1$1","c2$1","c3$1","m1","m2","im1","im2","XYZtoLMS_M$1","LMStoIPT_M","IPTtoLMS_M","LMStoXYZ_M$1","ictcp","LMStoICtCp","ICtCp","ICtCptoLMS","deltaEITP","_ictcp$from","_ictcp$from2","I1","T1","P1","_ictcp$from3","_ictcp$from4","I2","T2","P2","XYZtoLMS_M","LMStoXYZ_M","LMStoLab_M","LabtoLMS_M","OKLab","LMSg","OKLab2","deltaEOK","_OKLab$from","_OKLab$from2","_OKLab$from3","_OKLab$from4","deltaEMethods","deltaE","_o2","_o2$method","lighten","amount","lightness","darken","variations","mix","_ref19","_ref20","_o3","outputSpace","premultiplied","range","steps","colorRange","isRange","_colorRange$rangeArgs","_options","maxDeltaE","deltaEMethod","_options$steps","steps2","_options$maxSteps","maxSteps","rangeOptions","_ref21","totalDelta","actualSteps","maxDelta","ΔΕ","prev","_color","options2","progression","rangeArgs","_ref22","θ1","θ2","_adjust","_adjust2","register","interpolation","HSL","_rgb","g2","h","hsl","_hsl","HSV","_hsl2","hsv","_hsv","hwb","_hsv2","hwb2","_hwb","gray","toXYZ_M$2","fromXYZ_M$2","A98Linear","a98rgb","toXYZ_M$1","fromXYZ_M$1","ProPhotoLinear","Et","Et2","prophoto","oklch","oklab","_oklab","oklch2","_oklch","Yw","ninv","m","minv","c1","c2","c3","rec2100Pq","b","c","scale","rec2100Hlg","CATs","adapt","defineCAT","_ref23","_multiplyMatrices5","_multiplyMatrices6","ρs","γs","βs","_multiplyMatrices7","_multiplyMatrices8","ρd","γd","βd","scale2","scaled_cone_M","adapt_M","toXYZ_M","fromXYZ_M","ACEScg","ε","ACES_min_nonzero","ACES_cc_max","acescc","spaces","Color","_this2","_len2","_key2","_loop4","_len3","_key3","_len4","_key4","_o$instance","instance","returns","ret2","_len5","_key5","_i5","_Object$keys","addSpaceAccessors","_space$aliases","propId","_this3","property","receiver","_ColorSpace$resolveCo3","_ColorSpace$resolveCo4","memoizeImplementation","isXHTML","doc","generateSelector2","elm","stack","item","ignoredAttributes","MAXATTRIBUTELENGTH","attrCharsRegex","newlineChars","escapeAttribute","getAttributeNameValue","at","atnv","friendly","countSort","filterAttributes","domTree","currentLevel","_loop5","cl","ind","uncommonClasses","selectorData","retVal","classData","tagData","getNthChildString","siblings","hasMatchingSiblings","sibling","nthChild","getElmId","getBaseSelector","xhtml","uncommonAttributes","attData","getThreeLeastCommonFeatures","features","clss","atts","feat","generateSelector","_options$toRoot","toRoot","similar","findSimilar","getSelector","generateAncestry","nodeName2","parentElement","parentNode","getXPathArray","element","_id","xpathToString","xpathArray","getXpath","_cache","cache","validateKey","creator","validateCreator","cache_default","getNodeFromTree","vNode","dom_exports","_createGrid","find_elms_in_context_default","_findNearbyElms","find_up_default","find_up_virtual_default","focus_disabled_default","get_composed_parent_default","get_element_by_reference_default","get_element_coordinates_default","get_element_stack_default","get_modal_dialog_default","_getNodeGrid","get_overflow_hidden_ancestors_default","get_root_node_default2","get_scroll_offset_default","get_tabbable_elements_default","get_target_rects_default","get_target_size_default","get_text_element_stack_default","get_viewport_size_default","get_visible_child_text_rects_default","has_content_default","has_content_virtual_default","_hasLangText","idrefs_default","inserted_into_focus_order_default","_isCurrentPageLink","_isFocusable","is_html5_default","_isHiddenForEveryone","is_hidden_with_css_default","_isInTabOrder","is_in_text_block_default","_isInert","is_modal_open_default","_isMultiline","is_natively_focusable_default","is_node_default","is_offscreen_default","is_opaque_default","_isSkipLink","is_visible_default","_isVisibleOnScreen","_isVisibleToScreenReaders","is_visual_content_default","reduce_to_elements_below_floating_default","shadow_elements_from_point_default","url_props_from_attribute_default","_visuallyContains","visually_overlaps_default","_visuallySort","getRootNode","findElmsInContext","_ref24","_ref24$elm","root","escapedValue","findUpVirtual","findUp","_rectsOverlap","rect1","rect2","getOverflowHiddenAncestors","ancestors","overflow","clipRegex","clipPathRegex","nativelyHidden","displayHidden","visibilityHidden","_ref25","isAncestor","contentVisibiltyHidden","_ref26","ariaHidden","opacityHidden","scrollHidden","scroll","elHeight","elWidth","overflowHidden","_ref27","nodes","rect","hasPositionedAncestorBetween","nodeRect","clipHidden","matchesClip","matchesClipPath","areaHidden","visibleFunction","mapEl","mapElName","mapElRootNode","refs","detailsHidden","_vNode$parent","firstSummary","ancestor","hiddenMethods","_ref28","skipAncestors","_ref28$isAncestor","isHiddenSelf","isHiddenAncestors","getComposedParent","getScrollOffset","docElement","body","getElementCoordinates","scrollOffset","xOffset","yOffset","getViewportSize","win","noParentScrolled","isOffscreen","_ref29","_nodeLookup2","domNode","leftBoundary","dir","hiddenMethods2","isVisibleOnScreenVirtual","_getBoundingRect","rectA","rectB","top","right","bottom","left","_isPointInRect","_ref30","_ref31","y","math_exports","_getIntersectionRect","_getOffset","_getRectCenter","_hasVisualOverlap","_rectHasMinimumSize","_splitRects","leftX","rightX","topY","bottomY","_ref32","width","height","roundingMargin","minSize","_ref33","vTarget","vNeighbor","minRadiusNeighbour","targetRects","neighborRects","targetBoundingBox","targetCenter","minDistance","_iterator7","_step7","closestPoint","getClosestPoint","distance2","pointDistance","neighborTargetSize","neighborBoundingBox","neighborCenter","centerDistance","pointA","pointB","vNodeA","vNodeB","outerRect","overlapRects","uniqueRects","_iterator8","_step8","_loop6","overlapRect","rects","inputRect","splitRect","clipRect","yAligned","xAligned","between","isEnclosedRect","computeRect","baseRect","ROOT_LEVEL","DEFAULT_LEVEL","FLOAT_LEVEL","POSITION_LEVEL","nodeIndex","rootGrid","parentVNode","virtual_node_default","createStackingContext","Grid","addNodeToGrid","subGrid","treeWalker","_vNode","createStackingOrder","scrollRegionParent","findScrollRegionParent","grid","_subGrid","isStackingContext","zIndex","transform","mixBlendMode","filter","perspective","clipPath","mask","maskImage","maskBorder","willChange","contain","isFlexOrGridContainer","display2","treeOrder","stackingOrder","_ref34","stackLevel2","stackLevel","getStackLevel","getRealZIndex","checkedNodes","virtualNode","overflowHiddenNodes","clientRect","_vNode$_grid","visibleRect","overflowNode","gridRect","gridCell","container","_ref35","_this$cells","_row","rowIndex","colIndex","gridPosition","_gridPosition","loopNegativeIndexMatrix","gridRow","_ref36","margin","matrix","_matrix$_negativeInde","startOffset","endOffset","_index","_matrix$_index","_nodeLookup3","_grid$cells","selfIsFixed","hasFixedPosition","neighbors","vNeighbors","_iterator9","_step9","getModalDialog","_dialogs$find","dialogs","modalDialog","dialog","_getNodeFromGrid","_ref37","getNodeFromGrid","viewRect","cols","cells","intersection","_ref38","isInertSelf","isInertAncestors","allowedDisabledNodeNames","isDisabledAttrAllowed","focusDisabled","_nodeLookup4","fieldsetDisabled","angularSkipLinkRegex","angularRouterLinkRegex","anchor","_window$location","href","hostname","pathname","currentPageUrl","getElementByReference","fragment","aNode","bNode","boundaries","boundary","_window$Node","DOCUMENT_POSITION_FOLLOWING","DOCUMENT_POSITION_CONTAINS","DOCUMENT_POSITION_CONTAINED_BY","docPosition","DOMOrder","isDescendant","aPosition","getPositionOrder","bPosition","isFloated","floatStyle","floated","getRectStack","recursed","center","floorX","floorY","gridCellNode","rectX","rectY","gridContainer","getElementStack","getTabbableElements","nodeAndDescendents","tabbableElements","isFocusable2","tabIndex","isNativelyFocusable","_nodeLookup5","_nodeLookup6","tabindex","_nodeLookup7","getTargetRects","overlappingVNodes","isDescendantNotInTabOrder","obscuringRects","_ref39","vAncestor","getTargetSize","getLargestRect","rectAisMinimum","rectBisMinimum","areaA","areaB","text_exports","accessible_text_default","_accessibleTextVirtual","_autocomplete","form_control_value_default","_formControlValueMethods","has_unicode_default","is_human_interpretable_default","_isIconLigature","is_valid_autocomplete_default","label_default","label_text_default","label_virtual_default2","native_element_type_default","_nativeTextAlternative","native_text_methods_default","remove_unicode_default","sanitize_default","subtree_text_default","title_text_default","unsupported_default","visible_default","visible_text_nodes_default","visible_virtual_default","idrefs","accessibleText","arialabelledbyText","_nodeLookup8","accessibleName","accessibleNameAdd","arialabelledby_text_default","_arialabelText","_nodeLookup9","ariaAttrs","aria_attrs_default","ariaRoles","aria_roles_default","dpubRoles","dpub_roles_default","graphicsRoles","graphics_roles_default","htmlElms","html_elms_default","cssColors","css_colors_default","originals","standards","configureStandards","config","propName","resetStandards","standards_default","isUnsupportedRole","role","roleDefinition","is_unsupported_role_default","isValidRole","_ref40","allowAbstract","_ref40$flagUnsupporte","flagUnsupported","isRoleUnsupported","is_valid_role_default","getExplicitRole","_ref41","fallback","abstracts","dpub","roleAttr","roleList","firstValidRole","get_explicit_role_default","getElementsByContentType","get_elements_by_content_type_default","getGlobalAriaAttrs","attrName","get_global_aria_attrs_default","toGrid","table","rows","rowLength","columnIndex","cellLength","colSpan","rowspanAttr","rowspanValue","rowSpan","to_grid_default","getCellPosition","cell","tableGrid","get_cell_position_default","_getScope","_nodeLookup0","scope","headerRow","headerCol","isColumnHeader","is_column_header_default","isRowHeader","is_row_header_default","sanitize","getSectioningContentSelector","getSectioningContentPlusMainSelector","hasAccessibleName","_ref42","_ref42$checkTitle","checkTitle","implicitHtmlRoles","sectioningElement","emptyAlt","hasGlobalAria","suggestionsSourceElement","listElement","implicit_html_roles_default","fromPrimative","someString","matcher","matcherType","pattern","from_primative_default","hasAccessibleName2","has_accessible_name_default","fromFunction","getValue","from_function_default","attributes","attributes_default","condition","explicitRole","explicit_role_default","implicitRole","implicit_role_default","implicit_role_default2","nodeName","node_name_default","properties","properties_default","semanticRole","get_role_default","semantic_role_default","matchers","fromDefinition","definitionItem","matcherName","matchMethod","from_definition_default","matches2","matches_default","matches_default2","getElementSpec","_ref43","_ref43$noMatchAccessi","noMatchAccessibleName","standard","variant","spec","variantName","_variant$variantName","matches4","matchProperties","_propName","get_element_spec_default","implicitRole2","_ref44","chromium","_get_element_spec_def","chromiumRole","inheritsPresentationChain","getInheritedRole","explicitRoleOptions","parentNodeNames","parentRole","hasConflictResolution","resolveImplicitRole","_ref45","implicitRole3","presentationalRole","resolveRole","_ref46","noImplicit","roleOptions","_nodeLookup1","explicitRole2","getRole","_ref47","noPresentational","alwaysTitleElements","titleText","_nodeLookup10","namedFromContents","_ref48","strict","roleDef","named_from_contents_default","getOwnedVirtual","actualNode","children","owns","get_owned_virtual_default","isVisibleToScreenReadersVirtual","visibleVirtual","screenReader","noRecursing","_nodeLookup11","visibleMethod","visible2","_child$props","nodeType","nodeValue","nonTextInputTypes","isNativeTextbox","is_native_textbox_default","isNativeSelect","is_native_select_default","isAriaTextbox","is_aria_textbox_default","isAriaListbox","is_aria_listbox_default","isAriaCombobox","is_aria_combobox_default","rangeRoles","isAriaRange","is_aria_range_default","controlValueRoles","nativeTextboxValue","nativeSelectValue","ariaTextboxValue","ariaListboxValue","ariaComboboxValue","ariaRangeValue","formControlValue","unsupportedRoles","valueMethods","valueString","accName","_nodeLookup12","_nodeLookup13","selectedOptions","option","_nodeLookup14","_nodeLookup15","selected","owned","_nodeLookup16","listbox","_nodeLookup17","valueNow","subtreeText","alreadyProcessed2","_context","inControlContext","inLabelledByContext","_get_element_spec_def2","contentTypes","subtreeDescendant","contentText","appendAccessibleText","phrasingElements","contentTextAdd","labelText","labelContext","explicitLabels","getExplicitLabels","implicitLabel","labels","label3","text","defaultButtonValues","nativeTextMethods","descendantText","attrText","_ref49","nodeNames2","textMethods","findTextMethods","elmSpec","getUnicodeNonBmpRegExp","getPunctuationRegExp","getSupplementaryPrivateUseRegExp","getCategoryFormatRegExp","hasUnicode","emoji","nonBmp","punctuations","textVNode","differenceThreshold","occurrenceThreshold","canvasContext","canvas","fonts","style","fontFamily","font","fontSize","fontStyle","firstChar","diff","compareData","pixel","compareWith","differences","expectedWidth","totalWidth","_char2","actualWidth","pixelDifference","sizeDifference","prepareContext","shouldIgnoreHidden","shouldIgnoreIconLigature","computationSteps","textNodeValue","_context$occurrenceTh","ignoreIconLigature","pixelThreshold","virtualnode","removeUnicode","isHumanInterpretable","isEmpty","isNonDigitCharacter","isSymbolicText","isUnicodeOrPunctuation","symbolicText","noUnicodeStr","isValidAutocomplete","autocompleteValue","_ref50","_ref50$looseTyped","looseTyped","_ref50$stateTerms","stateTerms","_ref50$locations","locations","_ref50$qualifiers","qualifiers","_ref50$standaloneTerm","standaloneTerms","_ref50$qualifiedTerms","qualifiedTerms","_ref50$ignoredValues","ignoredValues","autocompleteTerms","purposeTerm","labelVirtual","label_virtual_default","visible","labelVirtual2","_id2","label","nativeElementType","visibleTextNodes","parentVisible","getVisibleChildTextRects","clientRects","textNode","contentRects","getContentRects","isOutsideNodeBounds","filterHiddenRects","centerPoint","visibleRects","contentRect","getTextElementStack","visualRoles","isVisualContent","_nodeLookup18","hiddenTextElms","hasChildTextNodes","_ref51","hasContentVirtual","noRecursion","ignoreAria","hasContent","insertedIntoFocusOrder","isHiddenWithCSS","descendentVisibilityValue","_nodeLookup19","_isHiddenWithCSS","displayValue","HIDDEN_VISIBILITY_VALUES","visibilityValue","isHTML5","getRoleType","_window","get_role_type_default","walkDomNode","blockLike","isBlock","getBlockParent","parentBlock","isInTextBlock","virtualParent","parentText","widgetText","inBrBlock","currNode","isModalOpen","modalPercent","definiteModals","viewport","percentWidth","percentHeight","points","stacks","_loop7","modalElement","_ret3","lastLineEnd","lineCount","_iterator0","_step0","isNode","cacheKey","incompleteData","incomplete_data_default","elementHasImage","graphicNodes","bgImageStyle","hasBgImage","hasGradient","element_has_image_default","hexRegex","hslRegex","_Color2","Color2","red","green","blue","clamp","redString","greenString","blueString","colorString","unit","radToDeg","turnToDeg","prototypeArrayFrom","_color2","rSRGB","gSRGB","bSRGB","_add","colorEntires","_colorEntires$sort","_colorEntires$sort2","Cmin","Cmid","Cmax","color_default","rad","turn","getOwnBackgroundColor","elmStyle","bgColor","opacity","get_own_background_color_default","isOpaque","firstPageLink","generateFirstPageLink","link","clipRegex2","clipPathRegex2","isClipped","isAreaVisible","_ref52","isVisible","_window$Node2","cacheName","_ref53","DOCUMENT_NODE","DOCUMENT_FRAGMENT_NODE","ariaHiddenValue","parent2","visible3","scrollableWithZeroHeight","scrollableWithZeroWidth","posAbsoluteOverflowHiddenAndSmall","reduceToElementsBelowFloating","elements","targetNode","floatingPositions","finalElements","targetFound","currentNode","parentScrollAncestor","getScrollAncestor","nextScrollAncestor","contains2","boundingRect","shadowElementsFromPoint","nodeX","nodeY","shadowStack","urlPropsFromAttribute","attribute","parser2","parserPathname","_getPathnameOrFilenam","getPathnameOrFilename","filename","getPort","getSearchPairs","getHashRoute","excludePorts","searchStr","pairs","pair","_pair$split","_pair$split2","_key6","_pair$split2$","hashRegex","hasMatch","_hasMatch","matchedStr","visuallyOverlaps","parentRect","parentTop","parentLeft","parentScrollArea","nodeIndex2","VirtualNode","_abstract_virtual_nod","shadowId","_this4","_this$actualNode","_id3","attrs","CACHE_KEY","getOuterHtml","truncateElement","maxLen","maxAttrNameOrValueLen","deepStr","attributeStrList","shallowNode","elementNodeMap","attrString","_iterator1","_step1","_step1$value","strLen","_iterator10","_step10","_step10$value","_name","_value","_attr","strAttr","getSource","DqElement","_this$spec$selector","_this$_virtualNode","_cache_default$get","_this$spec$source","frame","parentFrame","_ref54","elementRef","absolutePaths","checkHelper","_data","dqElm","cloneRecused","seen","_window2","_window3","out2","_key7","parser","expressions","expression","matchesTag","exp","matchesClasses","matchesAttributes","nodeAtt","matchesId","matchesPseudos","matchExpression","escapeRegExp","reUnescape","convertAttributes","attributeKey","attributeValue","regexp","convertClasses","classes","convertPseudos","convertExpressions","newExp","optimizedMatchesExpression","matchAnyParent","machedExpression","closest","noop","funcGuard","queue","tasks","started","remaining","completeQueue","complete","defaultFail","failed","createResolve","abort","msg","pop","task","q","defer","uuid","_rng","_crypto","_rnds8","_rnds","BufferClass","_byteToHex","_hexToByte","parse2","buf","ii","oct","unparse","bth","_seedBytes","_nodeId","_clockseq","_lastMSecs","_lastNSecs","v1","clockseq","msecs","nsecs","dt","tl","tmh","v4","rnds","errorTypes","stringifyMessage","_ref55","topic","channelId","messageId","keepalive","getSource2","parseMessage","dataString","isRespondableMessage","_data2","buildErrorObject","postedMessage","errorName","ErrConstructor","application","assertIsParentWindow","assetNotGlobalWindow","assertIsFrameWindow","channels","storeReplyHandler","replyHandler","sendToParent","getReplyHandler","deleteReplyHandler","messageIds","createMessageId","uuid2","isNewMessage","postMessage","allowedOrigins","origin","processError","createResponder","originIsAllowed","messageHandler","_ref56","topicHandler","responder","callReplyHandler","_ref57","frameMessenger","handler","messageEvent","setDefaultFrameMessenger","respondable2","closeHandler","postMessage2","topicHandlers","messageListener","_ref58","open","post","close","parameters","_parameters$options$p","_parameters$options","pingWaitTime","callAxeStart","_parameters$options$f","_parameters$options2","frameWaitTime","customSerializer","nodeSerializer","serializer","runOptions","_customSerializer","cloneLimitedDqElement","nodeSpec","parentFrameSpec","_customSerializer2","rawResults","rawResult","_ref59","_i6","_arr2","_ref60","relatedNodes","fromFrame2","hasAncestry","hasXpath","hasSelectors","getAllChecks","findBy","pushFrame","resultSet","frameSpec","checks","spliceNodes","firstFromFrame","_i7","resultSort","nodeIndexSort","normalizeResult","mergeResults","frameResults","mergedResult","frameResult","getFrameSpec","_res$error","nodeA","nodeB","nodeIndexesA","nodeIndexesB","_i8","indexA","indexB","parentContent","command","parameter","frames","_ref61","frameElement","rej","params","otherVNode","deepMerge","_len6","sources","_key8","_i9","_Object$keys2","_key9","extendMetaData","possibleShadowRoots","isShadowRoot","tokenList","idsKey","getNodesMatchingExpression","selectorMap","_i0","isGlobalSelector","nodeSet","_matchingNodes$nodes","matchingNodes","findMatchingNodes","matchedNodes","isComplexSelector","_selectorMap$idsKey$e","_selectorMap$exp$tag","cachedNodes","getSharedValues","_selectorMap$Class","_cachedNodes","_i1","_selectorMap","_cachedNodes2","cacheSelector","cacheNodeSelectors","hasShadowRoot","tree","flattenTree","getSlotChildren","childNodes","createNode","createChildren","childNode","getBaseLang","lang","failureSummary","nodeData","failingChecks","failure_summary_default","incompleteFallbackMessage","resultKeys","processAggregate","serialElm","trimElementSpec","normalizeRelatedNodes","resultKey","checkRes","relatedNode","_elmSpec$source","_elmSpec$element","_elmSpec$selector","_elmSpec$ancestry","_elmSpec$xpath","dataRegex","substitute","regex","replace","processMessage","str2","_str","getCheckMessage","checkId","getCheckOption","ruleID","ruleCheckOption","checkOption","enabled","_win$location","getTestEnvironment","innerHeight","innerWidth","_ref62","getOrientation","_ref63","screen","createFrameContext","_ref64","focusable","page","frameFocusable","getBoundingSize","normalizeContext","contextSpec","assert2","include","normalizeContextList","exclude","selectorList","normalizedList","_i10","normalizedSelector","normalizeContextSelector","assertLabelledFrameSelector","normalizeFrameSelectors","frameSelectors","normalizedSelectors","_iterator11","_step11","assertLabelledShadowDomSelector","isShadowSelector","fromFrameSelector","fromShadowDomSelector","parseSelectorArray","_i11","pushUniqueFrameSelector","nodeList","selectorArray","frameSelector","frameContext","Context","flatTree","_spec","_spec2","_spec3","_spec4","_this5","getRootNode2","pushUniqueFrame","isPageContext","validateContext","_ref65","_ref66","selectors","_i12","_Context","_ref67","ruleId","_ref68","getScroll","overflowX","overflowY","scrollableX","isScrollable","scrollableY","overflowProp","getElmScrollRecursive","scrolls","getScrollState","windowScroll","getStyleSheetFactory","dynamicDoc","_options$isCrossOrigi","isCrossOrigin","_options$isLink","isLink","styleSheet","injectStyle","head","contextList","isHidden","hidden","isHtmlElement","_node$props$nodeName","_node$props","_ref69","_ref69$include","_ref69$exclude","filterInclude","filterExcluded","deepestInclude","getDeepest","deepestExclude","collection","deepest","_iterator12","_step12","ancestryA","ancestryB","selectorA","ancestorIndex","selectorB","selectorIndex","nodeSorter","parseSameOriginStylesheet","sheet","importedUrls","rules","cssImportRules","cssImportUrlsNotAlreadyImported","importUrl","cssRuleIndex","newPriority","isCrossOriginRequest","nonImportCSSRules","parseStylesheet","isSameOrigin","isSameOriginStylesheet","parseCrossOriginStylesheet","request","event","parseTabindex","performanceTimer","now","axeStartTime","axeStarted","markName","_window$performance","measureName","startMark","endMark","_window$performance2","keepMarks","_this6","_window$performance3","_window$performance4","logMeasure","req","axeStart","measures","measure","_i13","currentTime","_window$performance5","_len7","markNames","_key0","_i14","_markNames","usePointer","cssProp","cssDisableVal","previousPointerEvents","uniqueArray","arr1","arr2","elem","createLocalVariables","vNodes","anyLevel","thisLevel","parentShadowId","recycledLocalVariable","matchExpressions","recycledLocalVariables","_currentLevel$anyLeve","_currentLevel$thisLev","childOnly","childAny","combinedLength","added","_i15","_currentLevel$anyLeve2","_currentLevel$anyLeve3","_currentLevel$anyLeve4","querySelectorAllFilter","preloadCssom","_ref70","_ref70$treeRoot","treeRoot","rootNodes","getAllRootNodesInTree","convertDataToStylesheet","getCssomForAllRootNodes","assets","flattenAssets","ids","_ref71","rootNode","sheets","getStylesheetsOfRootNode","rootIndex","parseOptions","sheetIndex","getStylesheetsFromDocumentFragment","getStylesheetsFromDocument","filterStylesheetsWithSameHref","filerStyleAndLinkAttributesInDocumentFragment","stylesheet","filterMediaIsPrint","linkHref","linkRel","isStyle","media","hrefs","preloadMedia","_ref72","_ref72$treeRoot","mediaVirtualNodes","_ref73","sourceWithSrc","_ref74","isMediaElementReady","onMediaReady","preloadFunctionsMap","_getPreloadConfig2","preloadTimeout","asset","preloadAssets","isValidPreloadObject","preloadObj","_constants_default$pr","areRequestedAssetsValid","checksData","rulesData","shouldBeTrue","extender","shouldBeFalse","getIncompleteReason","checkData","messages","getDefaultMsg","sourceData","querySelectorAll","matchTags","runOnly","defaultExclude","matching","ruleShouldRun","ruleOptions","filterAttrs","attributes2","outerHTML","setNodeAttributes","attributeMatches","outerIncludes","getOuterIncludes","isInContext","getContextFilter","_i16","mergeArrayUniques","includes","_i17","iteration","serial","_iterator13","_step13","RuleError","_Error","_ref76","_error$name","_this7","errorNode","setScroll","setScrollState","scrollState","_ref77","selectorArr","selectRecursive","selectorStr","selectAllRecursive","_ref78","_ref79","restSelector","elms","_iterator14","_step14","validInputTypes","langs","isValidLang","_i18","langArray","codes","_char3","newLang","SerialVirtualNode","_abstract_virtual_nod2","serialNode","_this8","normaliseProps","normaliseAttrs","_this$_attrs$attrName","nodeNamesToTypes","nodeTypeToName","nodeNames","_serialNode$nodeName","_ref80","_serialNode$nodeType","_ref81","_ref81$attributes","attrMap","mappedName","serial_virtual_node_default","cleanup","cleanupErrors","flattenedTree","cleanup_default","reporters","defaultReporter","hasReporter","reporterName","getReporter","reporter","addReporter","isDefault","configure","audit","specVersion","_specVersion$split","_specVersion$split2","canary","_version$split$map","_version$split$map2","major","minor","patch","_axe$version$split","_axe$version$split2","axeVersion","axeCanary","_axeVersion$split$map","_axeVersion$split$map2","axeMajor","axeMinor","axePatch","modifiedRules","configure_default","frameMessenger2","frameHandler","getRules","tags","matchingRules","ruleData","matchingRule","rd","get_rules_default","hiddenContentEvaluate","allowlist","parentStyle","hidden_content_evaluate_default","table_exports","get_all_cells_default","get_headers_default","is_data_cell_default","is_data_table_default","is_header_default","traverse_default","getAllCells","tableElm","cellIndex","traverseForHeaders","headerType","startCell","colspan","rowspan","rowStart","colStart","rowEnd","colEnd","headers","tableCell","getHeaders","header","rowHeaders","colHeaders","isDataCell","isDataTable","childIndex","childLength","hasBorder","sampleRow","bgImage","_rowIndex","isHeader","_id4","traverseTable","traverse","startPos","aria_exports","allowed_attr_default","get_accessible_refs_default","get_element_unallowed_roles_default","get_roles_by_type_default","get_roles_with_name_from_contents_default","implicit_nodes_default","is_accessible_ref_default","is_aria_role_allowed_on_element_default","_isComboboxPopup","label_default2","lookup_table_default","required_attr_default","required_context_default","required_owned_default","validate_attr_default","validate_attr_value_default","allowedAttr","idRefsRegex","cacheIdRefs","idRefs","refAttrs","_id5","_i19","_iterator15","_step15","token","_i20","getAccessibleRefs","_idRefs$get","idRefsByRoot","isAriaRoleAllowedOnElement","dpubRoles2","landmarkRoles","getRoleSegments","roles","nodeRoles","getElementUnallowedRoles","allowImplicit","_nodeLookup20","roleSegments","roleIsAllowed","getAriaRolesByType","roleName","get_aria_roles_by_type_default","getRolesByType","roleType","getAriaRolesSupportingNameFromContent","get_aria_roles_supporting_name_from_content_default","getRolesWithNameFromContents","isNull","isNotNull","lookupTable","_ref82","_ref83","_ref84","_ref85","_ref86","_ref87","hasImplicitListitemRole","_ref88","_ref89","withinOptionList","_ref90","_ref91","implicitNodes","implicit","isAccessibleRef","_ref92","popupRoles","vParent","nearestParentWithRole","isCombobox","ownedCombobox","label2","requiredAttr","requiredContext","requiredOwned","validateAttrValue","attrInfo","minValue","validateAttr","attrDefinition","thHasDataCellsEvaluate","reffedHeaders","headers2","ariaLabel","hasCell","th_has_data_cells_evaluate_default","messageKeys","notInTable","notTh","selfRef","emptyHdrs","tdHeadersAttrEvaluate","cellRoleById","cellId","badCells","headersAttr","headerId","_iterator16","_step16","messageKey","tdHasHeaderEvaluate","hasHeaders","td_has_header_evaluate_default","scopeValueEvaluate","scope_value_evaluate_default","same_caption_summary_evaluate_default","sameCaptionSummaryEvaluate","summary","captionNode","isCaptionNode","caption","html5ScopeEvaluate","html5_scope_evaluate_default","captionFakedEvaluate","firstRow","curr","caption_faked_evaluate_default","svgNonEmptyTitleEvaluate","titleNode","_ref93","titleText2","svg_non_empty_title_evaluate_default","standards_exports","presentationalRoleEvaluate","nonEmptyIfPresentEvaluate","non_empty_if_present_evaluate_default","isOnScreenEvaluate","is_on_screen_evaluate_default","inlineStyleProperty","cssProperty","absoluteValues","maxValue","_options$normalValue","normalValue","noImportant","multiLineOnly","declaredPropValue","getNumberValue","_ref94","computedStyle","cssPropValue","parsedValue","hasAltEvaluate","has_alt_evaluate_default","existsEvaluate","exists_evaluate_default","docHasTitleEvaluate","title","doc_has_title_evaluate_default","avoidInlineSpacingEvaluate","overriddenProperties","avoid_inline_spacing_evaluate_default","ariaLabelledbyEvaluate","aria_labelledby_evaluate_default","ariaLabelEvaluate","aria_label_evaluate_default","duplicateIdEvaluate","foundNode","duplicate_id_evaluate_default","duplicateIdAfter","uniqueIds","duplicate_id_after_default","uniqueFrameTitleEvaluate","unique_frame_title_evaluate_default","uniqueFrameTitleAfter","titles","unique_frame_title_after_default","skipLinkEvaluate","skip_link_evaluate_default","implicitAriaLiveRoles","regionEvaluate","regionlessNodes","getRegionlessNodes","findRegionlessElms","isRegion","isShallowlyHidden","_ref95","ariaLive","landmarkRoles2","regionAfter","iframeResults","frameAncestry","_iterator17","_step17","iframeResult","region_after_default","normalizeFontWeight","weight","getTextContainer","nextNode","outerText","innerText","_i21","getStyleValues","isHeaderStyle","styleA","styleB","margins","pAsHeadingEvaluate","currentIndex","nextSibling","prevSibling","currStyle","nextStyle","prevStyle","optionsPassLength","optionsFailLength","headingLength","paragraphLength","blockquote","p_as_heading_evaluate_default","separatorRegex","validRedirectNumRegex","metaRefreshEvaluate","_ref96","minDelay","maxDelay","_content$split","_content$split2","redirectStr","redirectDelay","internalLinkPresentEvaluate","links","vLink","internal_link_present_evaluate_default","commons_exports","color_exports","forms_exports","center_point_of_rect_default","element_is_distinct_default","filtered_rect_stack_default","_flattenColors","_flattenShadowColors","_getBackgroundColor2","_getBackgroundStack","get_contrast_default","_getForegroundColor","get_rect_stack_default","_getStackingContext","_getStrokeColorsFromShadows","_getTextShadowColors","has_valid_contrast_ratio_default","_parseTextShadows","_stackingContextToColor","centerPointOfRect","_getFonts","elementIsDistinct","ancestorNode","nodeStyle","edge","borderClr","hasStyle","tDec","getRectStack2","boundingStack","filteredArr","filteredRectStack","rectStack","isSame","rectList","elementIndex","nonSeparableBlendModes","blendFunctions","Cb","Cs","D","sourceColor","backdrop","blendMode","blendingResult","blend","simpleAlphaCompositing","αo","clamp2","Cr","Cg","αs","αb","fgColor","sortPageBackground","shallowArraysEqual","elmStack","bodyIndex","bgNodes","htmlBgColor","htmlIndex","_i22","SHADOW_STROKE_ALPHA","VISIBLE_SHADOW_MIN_PX","OPAQUE_STROKE_OFFSET_MIN_PX","edges","parsedShadows","_ref97","_ref97$ignoreEdgeCoun","ignoreEdgeCount","shadowMap","getShadowColorsMap","shadowsByColor","_ref98","_ref99","colorStr","sides","edgeCount","side","_ref100","shadowGroupToColor","shadow","colorMap","_iterator18","_step18","_colorMap$colorStr","_step18$value","pixels","borders","_pixels","offsetX","offsetY","_ref101","strokeColor","density","isSolid","textShadow","shadows","colorMatch","pixelMatch","pixelUnit","_ref102","_ref103","minRatio","maxRatio","shadowColors","fontSizeStr","thinShadows","_iterator19","_step19","_shadow$pixels","_shadow$pixels$","blurRadius","_strokeColors","_color3","textShadowColor","strokeColors","_ref104","shadowColor","blurRadiusToAlpha","relativeBlur","stackingContext","contextMap","bgElm","_stackingOrder2","bgVNode","getOwnBackgroundColor2","_ref105","_ref106","_stackingOrder","ancestorVNode2","context2","addToStackingContext","ancestorVNode","_context$descendants","reduceToColor","createStackingContext2","backdropContext","sourceContext","ancestorContext","_vNode$getComputedSty","normalizeBlendMode","blendmode","_contextMap$get","bgElms","shadowOutlineEmMax","bgColorCache","_getBackgroundColor","_getTextShadowColors2","_bgColors","textRects","bgColors","_i23","bgElmStyle","fullyEncompasses","pageBgs","getPageBackgroundColors","blendedColor","normalizeBlendMode2","stackContainsBody","pageColors","htmlStyle","bodyStyle","bodyBgColor","bodyBgColorApplies","getContrast","bL","fL","colorStack","getStrokeColor","getTextColor","fgColors","_i24","_colorStack","colorFn","_color4","stackingContexts","findNodeInContexts","calculateBlendedForegroundColor","_ref107","_ref107$textStrokeEmM","textStrokeEmMin","strokeWidth","relativeStrokeWidth","_context$ancestor","contexts","_iterator20","_step20","_context$vNode","found","hasValidContrastRatio","bg","fg","isBold","isSmallFont","expectedContrastRatio","is_disabled_default","disabledNodeNames","isDisabled","disabledState","ariaDisabled","identicalLinksSamePurposeEvaluate","accText","afterData","identical_links_same_purpose_evaluate_default","isIdenticalObject","aProps","bProps","aValue","bValue","identicalLinksSamePurposeAfter","incompleteResults","_ref108","uniqueResults","nameMap","_loop8","_currentResult$relate","currentResult","_currentResult$data","urlProps","sameNameResults","_ref109","resultNum","isSameUrl","_ref110","identical_links_same_purpose_after_default","getLevel","headingRole","ariaHeadingLevel","ariaLevel","_ref111","_ref112","headingLevel","headingOrderEvaluate","headingOrder","heading_order_evaluate_default","headingOrderAfter","getHeadingOrder","getHeadingOrderOutcome","_headingOrder$index$l","_headingOrder$index","_headingOrder$level","_headingOrder","findHeadingOrderIndex","currLevel","prevLevel","_ref113","_ref114","mergeHeadingOrder","_ref115","level","mergedHeadingOrder","_result$data","frameHeadingOrder","shortenArray","normalizedHeadingOrder","heading","addFrameToHeadingAncestry","getFrameIndex","ancestry","spliceLength","targetSizeEvaluate","hasMinimumSize","nearbyElms","overflowingContent","filterOverflowingContent","_filterByElmsOverlap","filterByElmsOverlap","fullyObscuringElms","partialObscuringElms","mapActualNodes","negativeOutcome","toDecimalSize","obscuredWidgets","filterFocusableWidgets","largestInnerRect","getLargestUnobscuredArea","allTabbable","nearbyElm","isEnclosedRect2","isDescendantNotInTabOrder2","_iterator21","_step21","getCssPointerEvents","obscuredNodes","_ref116","unobscuredRects","getLargestRect2","_ref117","roundingMargin2","targetOffsetEvaluate","minOffset","closeNeighbors","closestOffset","_iterator22","_step22","roundToSingleDecimal","_ref118","metaViewportScaleEvaluate","_ref119","_ref119$scaleMinimum","scaleMinimum","_ref119$lowerBound","lowerBound","contentValue","_contentValue$split","_contentValue$split2","curatedKey","curatedValue","userScalableAsFloat","meta_viewport_scale_evaluate_default","cssOrientationLockEvaluate","_ref120","_ref120$cssom","cssom","_ref121","_ref121$degreeThresho","degreeThreshold","isLocked","relatedElements","rulesGroupByDocumentFragment","groupCssomByDocument","_loop9","_Object$keys3","_i25","_rulesGroupByDocument","orientationRules","isMediaRuleWithOrientation","_ref122","cssRules","cssRule","locked","getIsOrientationLocked","cssObjectModel","_ref123","_ref124","cssText","_ref125","selectorText","transformStyle","transformDegrees","getTransformDegrees","rotateDegrees","getRotationInDegrees","degrees","_matches2","transformFn","transformFnValue","transformFunction","getAngleInDegrees","_transformFnValue$spl","_transformFnValue$spl2","z","angleWithUnit","getAngleInDegreesFromMatrixTransform","_ref126","_ref127","convertRadToDeg","convertGradToDeg","convertTurnToDeg","_values","b3","radians","sinB","cosB","rotateZRadians","grad","css_orientation_lock_evaluate_default","noAutoplayAudioEvaluate","hasControls","_options$allowedDurat","allowedDuration","playableDuration","getPlayableDuration","playbackRange","getPlaybackRange","_match","ranges","convertHourMinSecToSeconds","hhMmSs","secs","mins","no_autoplay_audio_evaluate_default","frameTestedEvaluate","frame_tested_evaluate_default","joinStr","frameTestedAfter","iframes","ancestry2","frame_tested_after_default","captionEvaluate","tracks","hasCaptions","caption_evaluate_default","structuredDlitemsEvaluate","hasDt","hasDd","_i26","structured_dlitems_evaluate_default","onlyListitemsEvaluate","hasNonEmptyTextNode","atLeastOneListitem","isEmpty2","badNodes","badRoleNodes","badRoles","isLi","isListItemRole","only_listitems_evaluate_default","onlyDlitemsEvaluate","ALLOWED_ROLES","tagName","listitemEvaluate","parentNodeName","invalidChildrenEvaluate","issues","vChildren","mapWithNested","_vChild$actualNode","_vChildren$shift","vChild","nested","isDivGroup","vGrandChildren","issue","getInvalidSelector","_ref128","_ref128$validRoles","validRoles","_ref128$validNodeName","validNodeNames","_vChild$props","dlitemEvaluate","parentTagName","dlitem_evaluate_default","xmlLangMismatchEvaluate","primaryLangValue","primaryXmlLangValue","xml_lang_mismatch_evaluate_default","validLangEvaluate","invalid","langAttr","langVal","baselangVal","invalidLang","valid_lang_evaluate_default","hasValue","hasLangEvaluate","hasLang","has_lang_evaluate_default","landmarkIsUniqueEvaluate","accessibleText2","landmark_is_unique_evaluate_default","landmarkIsUniqueAfter","uniqueLandmarks","findMatch","someResult","matchedResult","landmark_is_unique_after_default","titleOnlyEvaluate","labelText2","ariaDescribedBy","title_only_evaluate_default","multipleLabelEvaluate","ATVisibleLabels","labelledby","multiple_label_evaluate_default","isStringContained","compare","curatedCompareWith","curateString","curatedCompare","labelContentNameMismatchEvaluate","_options$occurrenceTh","visibleText","label_content_name_mismatch_evaluate_default","implicitEvaluate","implicit_evaluate_default","hiddenExplicitLabelEvaluate","_id6","isNameEmpty","hidden_explicit_label_evaluate_default","helpSameAsLabelEvaluate","help_same_as_label_evaluate_default","explicitEvaluate","_this9","explicitLabel","explicit_evaluate_default","duplicateImgLabelEvaluate","duplicate_img_label_evaluate_default","altSpaceValueEvaluate","alt","isOnlySpace","alt_space_value_evaluate_default","tabindexEvaluate","tabindex_evaluate_default","noFocusableContentEvaluate","focusableDescendants2","getFocusableDescendants","notHiddenElements","usesUnreliableHidingStrategy","landmarkIsTopLevelEvaluate","landmarks","nodeRole","landmark_is_top_level_evaluate_default","frameFocusableContentEvaluate","focusableDescendants","focusableNotTabbableEvaluate","elementsThatCanBeDisabled","pointerEvents","focusable_not_tabbable_evaluate_default","focusableNoNameEvaluate","focusable_no_name_evaluate_default","focusableModalOpenEvaluate","_ref129","focusable_modal_open_evaluate_default","focusableElementEvaluate","isContenteditable","contenteditable","focusable_element_evaluate_default","focusableDisabledEvaluate","focusable_disabled_evaluate_default","focusableContentEvaluate","tabbableContentElements","focusable_content_evaluate_default","accesskeysEvaluate","accesskeys_evaluate_default","accesskeysAfter","accesskeys_after_default","pageNoDuplicateEvaluate","page_no_duplicate_evaluate_default","pageNoDuplicateAfter","page_no_duplicate_after_default","matchesDefinitionEvaluate","matches_definition_evaluate_default","hasTextContentEvaluate","hasDescendant","matchingElms","has_descendant_evaluate_default","pageHasElmAfter","elmUsedAnywhere","has_descendant_after_default","attrNonSpaceContentEvaluate","attributeIsEmpty","attr_non_space_content_evaluate_default","autocompleteValidEvaluate","_node","autocomplete2","autocomplete_valid_evaluate_default","autocompleteAppropriateEvaluate","allowedTypesMap","autocompleteAttr","term","allowedTypes","autocomplete_appropriate_evaluate_default","blockLike2","linkInTextBlockStyleEvaluate","isBlock2","hasPseudoContent","_i27","_arr3","getContrast2","c1lum","c2lum","blockLike3","isBlock3","linkInTextBlockEvaluate","requiredContrastRatio","allowSameColor","nodeColor","parentColor","nodeBackgroundColor","parentBackgroundColor","textContrast","backgroundContrast","_incomplete_data_defa","link_in_text_block_evaluate_default","colorContrastEvaluate","ignoreUnicode","ignoreLength","ignorePseudo","boldValue","boldTextPt","largeTextPt","contrastRatio","pseudoSizeThreshold","textIsEmojis","fontWeight","bold","ptSize","_ref130","expected","minThreshold","maxThreshold","pseudoElm","findPseudoElement","contrastContributor","fgBgContrast","bgShContrast","fgShContrast","isValid","truncatedResult","missing","equalRatio","shortTextContent","_ref131","_ref131$pseudoSizeThr","_ref131$ignorePseudo","minimumSize","beforeSize","getPseudoElementArea","afterSize","matchPseudoStyle","pseudoWidth","parseUnit","pseudoHeight","hasUnicodeChars","hasNonUnicodeChars","unitRegex","_ref132","_ref133","_ref133$","_ref133$2","VALID_TAG_NAMES_FOR_SCROLLABLE_REGIONS","VALID_ROLES_FOR_SCROLLABLE_REGIONS","validScrollableTagName","validScrollableRole","validScrollableSemanticsEvaluate","valid_scrollable_semantics_evaluate_default","unsupportedroleEvaluate","isUnsupported","unsupportedrole_evaluate_default","noImplicitExplicitLabelEvaluate","no_implicit_explicit_label_evaluate_default","isElementFocusableEvaluate","is_element_focusable_evaluate_default","invalidroleEvaluate","allRoles","allInvalid","invalidrole_evaluate_default","hasWidgetRoleEvaluate","has_widget_role_evaluate_default","hasGlobalAriaAttributeEvaluate","globalAttrs","has_global_aria_attribute_evaluate_default","nonePresentationOnElementWithNoImplicitRole","explicitRoles","hasImplicitRole","fallbackroleEvaluate","fallbackrole_evaluate_default","deprecatedroleEvaluate","brailleRoleDescriptionEquivalentEvaluate","_virtualNode$attr","brailleRoleDesc","roleDesc","brailleLabelEquivalentEvaluate","_virtualNode$attr2","brailleLabel","ariaValidAttrValueEvaluate","needsReview","aria","skipAttrs","preChecks","hasPopup","isStringType","_standards_default$ar","ariaValidAttrEvaluate","aria_valid_attr_evaluate_default","ariaUnsupportedAttrEvaluate","unsupportedAttrs","unsupported","aria_unsupported_attr_evaluate_default","ariaRoledescriptionEvaluate","supportedRoles","aria_roledescription_evaluate_default","getMissingContext","ownGroupRoles","reqContext","includeElement","allowsGroup","getAriaOwners","owners","_id7","ariaRequiredParentEvaluate","missingParents","_i28","aria_required_parent_evaluate_default","ariaRequiredChildrenEvaluate","reviewEmpty","required","ownedRoles","getOwnedRoles","unallowed","_ref134","_ref135","_ref136","getUnallowedSelector","hasRequiredChildren","isContent","ownedVirtual","_loop0","globalAriaAttr","getGlobalAriaAttr","hasGlobalAriaOrFocusable","requiredRole","_ref137","_vNode$props","_ref138","ariaRequiredAttrEvaluate","_virtualNode$attr3","requiredAttrs","isStaticSeparator","isClosedCombobox","missingAttrs","requiredAttr2","hasImplicitAttr","_elmSpec$implicitAttr","ariaProhibitedAttrEvaluate","elementsAllowedAriaLabel","prohibitedList","listProhibitedAttrs","prohibited","textContent","roleSpec","getClosestAncestorRoleType","ariaLevelEvaluate","aria_level_evaluate_default","ariaHiddenBodyEvaluate","aria_hidden_body_evaluate_default","ariaErrormessageEvaluate","errorMessageAttr","hasAttr","invaid","hasInvallid","validateAttrValue2","idref","ariaConditionalRowAttr","_invalidTableRowAttrs","_invalidTableRowAttrs2","_ref139","invalidTableRowAttrs","invalidAttrs","invalidAttr","owner","getRowOwner","ownerRole","rowOwnerQuery","ariaConditionalCheckboxAttr","_virtualNode$props","ariaChecked","normalizeAriaChecked","checkState","getCheckState","ariaCheckedVal","conditionalRoleMap","ariaConditionalAttrEvaluate","ariaBusyEvaluate","ariaAllowedRoleEvaluate","_options$allowImplici","_options$ignoredTags","ignoredTags","unallowedRoles","aria_allowed_role_evaluate_default","ariaAllowedAttrEvaluate","allowed","_iterator23","_step23","ignoredAttrs","abstractroleEvaluate","abstractRoles","abstractrole_evaluate_default","xmlLangMismatchMatches","xml_lang_mismatch_matches_default","windowIsTopMatches","window_is_top_matches_default","svgNamespaceMatches","svg_namespace_matches_default","widgetNotInline","matchesFns","isWidgetType","isNotAreaElement","hasWidgetAncestorInTabOrder","hasWidgetAncestorInTabOrderMemoized","tableOrGridRoleMatches","summaryIsInteractiveMatches","isSlottedElm","_vNode$actualNode","domParent","skipLinkMatches","skip_link_matches_default","scrollableRegionFocusableMatches","isNoneEmptyElement","presentationRoleConflictMatches","presentation_role_conflict_matches_default","pAsHeadingMatches","nodeText","isSentence","siblingsAfter","p_as_heading_matches_default","noExplicitNameRequired","_ref140","accessibleNameRequired","no_explicit_name_required_matches_default","object_is_loaded_matches_default","objectHasLoaded","_node$ownerDocument","notHtmlMatches","not_html_matches_default","noRoleMatches","no_role_matches_default","noNegativeTabindexMatches","no_negative_tabindex_matches_default","noNamingMethodMatches","_get_element_spec_def3","namingMethods","no_naming_method_matches_default","noEmptyRoleMatches","no_empty_role_matches_default","noAutoplayAudioMatches","no_autoplay_audio_matches_default","nestedInteractiveMatches","nested_interactive_matches_default","linkInTextBlockMatches","link_in_text_block_matches_default","dataTableMatches","layout_table_matches_default","landmarkUniqueMatches","isLandmarkVirtual","landmarkHasBodyContextMatches","nativeScopeFilter","landmark_has_body_context_matches_default","labelMatches","label_matches_default","labelContentNameMismatchMatches","widgetRoles","isWidgetType2","rolesWithNameFromContents","label_content_name_mismatch_matches_default","isVisibleOnScreenMatches","hasVisibleTextMatches","isInitiatorMatches","is_initiator_matches_default","insertedIntoFocusOrderMatches","inserted_into_focus_order_matches_default","identicalLinksSamePurposeMatches","hasAccName","identical_links_same_purpose_matches_default","htmlNamespaceMatches","html_namespace_matches_default","headingMatches","hasImplicitChromiumRoleMatches","has_implicit_chromium_role_matches_default","frameTitleHasTextMatches","frame_title_has_text_matches_default","frameFocusableContentMatches","_context$size","_context$size2","frame_focusable_content_matches_default","duplicateIdMiscMatches","idSelector","idMatchingElms","duplicate_id_misc_matches_default","duplicateIdAriaMatches","duplicate_id_aria_matches_default","duplicateIdActiveMatches","duplicate_id_active_matches_default","dataTableMatches2","data_table_matches_default","dataTableLargeMatches","tableArray","data_table_large_matches_default","colorContrastMatches","_virtualNode$props2","inputType","nonTextInput","formElements","textIndent","nodeParentLabel","labelNode","labelVirtual3","explicitControl","explicitControlVirtual","implicitControl","ariaLabelledbyControls","virtualControls","control","hasRealTextChildren","clippingAncestors","overlaps","withinOverflow","color_contrast_matches_default","removeUnicodeOptions","bypassMatches","bypass_matches_default","autocompleteMatches","ariaReadonly","excludedInputTypes","autocomplete_matches_default","ariaRequiredParentMatches","aria_required_parent_matches_default","ariaRequiredChildrenMatches","aria_required_children_matches_default","shouldMatchElement","ariaHiddenFocusMatches","aria_hidden_focus_matches_default","ariaHasAttrMatches","aria_has_attr_matches_default","ariaAllowedRoleMatches","aria_allowed_role_matches_default","ariaAllowedAttrMatches","_i29","aria_allowed_attr_matches_default","metadataFunctionMap","metadata_function_map_default","CheckResult","check_result_default","createExecutionContext","normalizeOptions","Check","checkOptions","helper","_options2","_options2$enabled","_this0","check_default","RuleResult","rule_result_default","Rule","parentAudit","markStart","markEnd","markHiddenStart","markHiddenEnd","checkQueue","_this1","resolveNode","rejectNode","getResult","_this10","hasResults","_result","_this11","markMatchesStart","markMatchesEnd","findAfterChecks","findCheckResults","checkID","checkResults","filterChecks","sanitizeNodes","checkTypes2","_this12","afterChecks","beforeResults","afterResults","_result$nodes","changeAnyAllResults","changeNoneResult","dotRegex","Audit","locale","checkIDs","_i30","_id8","_check$messages","pass","fail","incomplete","ruleIDs","_i31","_id9","help","failureSummaries","_i32","failureSummary2","failureMessage","defaultLocale","_i33","_id0","mergeCheckLocale","_i34","_id1","mergeRuleLocale","_i35","_key1","mergeFailureMessage","mergeFallbackMessage","defaultOrigin","getDefaultOrigin","_iterator24","_step24","getDefaultConfiguration","unpackToObject","allRulesToRun","getRulesToRun","runNowRules","runLaterRules","nowRulesQueue","getDefferedRule","preloaderQueue","queueForNowRulesAndPreloader","nowRulesAndPreloaderResults","assetsFromQueue","nowRulesResults","laterRulesQueue","deferredRule","laterRuleResults","createIncompleteErrorResult","ruleIds","hasTag","hasRule","only","unmatchedTags","branding","previous","_this13","metaData","getHelpUrl","audit_default","splitRules","serialError","none","_ref141","brand","setupGlobals","hasWindow","hasDoc","resetGlobals","teardown","teardown_default","runRules","load","runCommand","cleanupFn","respond","Plugin","_done","impl","registerPlugin","plugin","plugins_default","reset","reset_default","runVirtualRule","normalizeRunParams","_ref142","_ref144","_options$reporter","_axe$_audit","_ref143","typeErr","noop2","run4","_len8","_key10","_normalizeRunParams","_normalizeRunParams$c","_getPromiseHandlers","getPromiseHandlers","handleError","handleRunRules","teardown2","wrappedReject","createReport","errorRunRules","_resolve","_reject","runPartial","_len9","_key11","_normalizeRunParams2","contextObj","_ref145","environmentData","finishRun","partialResults","_ref147","_options$reporter2","_axe$_audit2","_ref146","setFrameSpec","createReport2","frameStack","_iterator25","_step25","partialResult","frameSpecs","getMergedFrameSpecs","_ref148","childFrameSpecs","childFrameSpec","setup","setup_default","naReporter","_options3","toolOptions","na_default","noPassesReporter","_options4","_processAggregate","violations","no_passes_default","rawReporter","transformedResults","transformedResult","types","_i36","_types","raw_default","rawEnvReporter","_options5","raw","raw_env_default","v1Reporter","_options6","addFailureSummaries","v1_default","v2Reporter","_options7","v2_default","_thisWillBeDeletedDoNotUse","exposed_for_testing_default","i1","l1","this"],"mappings":"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AG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAK,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAA,CAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAK,CAAA,CAAI,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAC,CAAA,CAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,EAAI,EAAG,EAAC,CAAI,EAAC,CAAA,CAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAK,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAC,CAAI,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EA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CAAC,CAAE,EAAI,CAAA,CAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAC,CAAI,EAAG,EAAG,EAAG,KAAS,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAC,CAAI,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAK,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAA,CAAM,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAK,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,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G,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAK,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAC,CAAI,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAK,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,CAAE,EAAI,CAAA,CAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAA,CAAM,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAA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AAgB,EAAC,CAAA,CAAA,CAAA,CAAA,CAAY,EAAC,CAAA,CAAA,CAAQ,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAA,CAAI,EAAG,EAAC,CAAI,EAAG,EAAC,CAAI,EAAC,CAAA,CAAA,CAAQ,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAC,CAAI,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,EAAI,CAAE,EAAC,CAAI,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAC,CAAI,EAAG,EAAG,EAAG,EAAG,EAAG,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","x_google_ignoreList":[0]}