{"version":3,"file":"esg.patenergy.com.min.js","sources":["../node_modules/cash-dom/dist/cash.esm.js","../modules/esg.patenergy.com/collections/accordion/variants/default/index.js","../node_modules/details-element-polyfill/dist/details-element-polyfill.js","../node_modules/a11y-slider/dist/a11y-slider.esm.js","../modules/esg.patenergy.com/collections/tabs/variants/default/index.js","../modules/esg.patenergy.com/collections/carousel/variants/default/index.js","../modules/esg.patenergy.com/components/esg-anchor-nav/variants/default/index.js","../modules/esg.patenergy.com/components/esg-header/variants/default/index.js","../node_modules/highcharts/highcharts.src.js","../node_modules/highcharts/modules/data.src.js","../node_modules/highcharts/modules/exporting.src.js","../node_modules/highcharts/modules/export-data.src.js","../node_modules/highcharts/modules/accessibility.src.js","../modules/esg.patenergy.com/entities/Chart/index.js","../modules/esg.patenergy.com/entities/Form/variants/default/index.js","../node_modules/dialog-polyfill/dist/dialog-polyfill.esm.js","esg.patenergy.com/components/search.js","esg.patenergy.com/components/modals.js","esg.patenergy.com/index.js"],"sourcesContent":["/* MIT https://github.com/fabiospampinato/cash */\nconst propMap = {\n /* GENERAL */\n class: 'className',\n contenteditable: 'contentEditable',\n /* LABEL */\n for: 'htmlFor',\n /* INPUT */\n readonly: 'readOnly',\n maxlength: 'maxLength',\n tabindex: 'tabIndex',\n /* TABLE */\n colspan: 'colSpan',\n rowspan: 'rowSpan',\n /* IMAGE */\n usemap: 'useMap'\n};\nfunction attempt(fn, arg) {\n try {\n return fn(arg);\n }\n catch (_a) {\n return arg;\n }\n}\nconst doc = document, win = window, docEle = doc.documentElement, createElement = doc.createElement.bind(doc), div = createElement('div'), table = createElement('table'), tbody = createElement('tbody'), tr = createElement('tr'), { isArray, prototype: ArrayPrototype } = Array, { concat, filter, indexOf, map, push, slice, some, splice } = ArrayPrototype;\nconst idRe = /^#(?:[\\w-]|\\\\.|[^\\x00-\\xa0])*$/, classRe = /^\\.(?:[\\w-]|\\\\.|[^\\x00-\\xa0])*$/, htmlRe = /<.+>/, tagRe = /^\\w+$/;\n// @require ./variables.ts\nfunction find(selector, context) {\n return !selector || (!isDocument(context) && !isElement(context))\n ? []\n : classRe.test(selector)\n ? context.getElementsByClassName(selector.slice(1))\n : tagRe.test(selector)\n ? context.getElementsByTagName(selector)\n : context.querySelectorAll(selector);\n}\n// @require ./find.ts\n// @require ./variables.ts\nclass Cash {\n constructor(selector, context) {\n if (!selector)\n return;\n if (isCash(selector))\n return selector;\n let eles = selector;\n if (isString(selector)) {\n const ctx = (isCash(context) ? context[0] : context) || doc;\n eles = idRe.test(selector)\n ? ctx.getElementById(selector.slice(1))\n : htmlRe.test(selector)\n ? parseHTML(selector)\n : find(selector, ctx);\n if (!eles)\n return;\n }\n else if (isFunction(selector)) {\n return this.ready(selector); //FIXME: `fn.ready` is not included in `core`, but it's actually a core functionality\n }\n if (eles.nodeType || eles === win)\n eles = [eles];\n this.length = eles.length;\n for (let i = 0, l = this.length; i < l; i++) {\n this[i] = eles[i];\n }\n }\n init(selector, context) {\n return new Cash(selector, context);\n }\n}\nconst fn = Cash.prototype, cash = fn.init;\ncash.fn = cash.prototype = fn; // Ensuring that `cash () instanceof cash`\nfn.length = 0;\nfn.splice = splice; // Ensuring a cash collection gets printed as array-like in Chrome's devtools\nif (typeof Symbol === 'function') { // Ensuring a cash collection is iterable\n fn[Symbol['iterator']] = ArrayPrototype[Symbol['iterator']];\n}\nfn.map = function (callback) {\n return cash(concat.apply([], map.call(this, (ele, i) => callback.call(ele, i, ele))));\n};\nfn.slice = function (start, end) {\n return cash(slice.call(this, start, end));\n};\n// @require ./cash.ts\nconst dashAlphaRe = /-([a-z])/g;\nfunction camelCase(str) {\n return str.replace(dashAlphaRe, (match, letter) => letter.toUpperCase());\n}\nfunction each(arr, callback, _reverse) {\n if (_reverse) {\n let i = arr.length;\n while (i--) {\n if (callback.call(arr[i], i, arr[i]) === false)\n return arr;\n }\n }\n else {\n for (let i = 0, l = arr.length; i < l; i++) {\n if (callback.call(arr[i], i, arr[i]) === false)\n return arr;\n }\n }\n return arr;\n}\ncash.each = each;\nfn.each = function (callback) {\n return each(this, callback);\n};\nfn.removeProp = function (prop) {\n return this.each((i, ele) => { delete ele[propMap[prop] || prop]; });\n};\nfunction extend(target, ...objs) {\n const length = arguments.length;\n if (!length)\n return {};\n if (length === 1)\n return extend(cash, target);\n for (let i = 1; i < length; i++) {\n for (const key in arguments[i]) {\n target[key] = arguments[i][key];\n }\n }\n return target;\n}\ncash.extend = extend;\nfn.extend = function (plugins) {\n return extend(fn, plugins);\n};\ncash.guid = 1;\n// @require ./cash.ts\nfunction matches(ele, selector) {\n const matches = ele && (ele['matches'] || ele['webkitMatchesSelector'] || ele['msMatchesSelector']);\n return !!matches && !!selector && matches.call(ele, selector);\n}\nfunction isCash(x) {\n return x instanceof Cash;\n}\nfunction isWindow(x) {\n return !!x && x === x.window;\n}\nfunction isDocument(x) {\n return !!x && x.nodeType === 9;\n}\nfunction isElement(x) {\n return !!x && x.nodeType === 1;\n}\nfunction isFunction(x) {\n return typeof x === 'function';\n}\nfunction isString(x) {\n return typeof x === 'string';\n}\nfunction isUndefined(x) {\n return x === undefined;\n}\nfunction isNull(x) {\n return x === null;\n}\nfunction isNumeric(x) {\n return !isNaN(parseFloat(x)) && isFinite(x);\n}\ncash.isWindow = isWindow;\ncash.isFunction = isFunction;\ncash.isNumeric = isNumeric;\ncash.isArray = isArray;\nfn.prop = function (prop, value) {\n if (!prop)\n return;\n if (isString(prop)) {\n prop = propMap[prop] || prop;\n if (arguments.length < 2)\n return this[0] && this[0][prop];\n return this.each((i, ele) => { ele[prop] = value; });\n }\n for (const key in prop) {\n this.prop(key, prop[key]);\n }\n return this;\n};\nfn.get = function (index) {\n if (isUndefined(index))\n return slice.call(this);\n index = Number(index);\n return this[index < 0 ? index + this.length : index];\n};\nfn.eq = function (index) {\n return cash(this.get(index));\n};\nfn.first = function () {\n return this.eq(0);\n};\nfn.last = function () {\n return this.eq(-1);\n};\n// @require ./matches.ts\n// @require ./type_checking.ts\nfunction getCompareFunction(comparator) {\n return isString(comparator)\n ? (i, ele) => matches(ele, comparator)\n : isFunction(comparator)\n ? comparator\n : isCash(comparator)\n ? (i, ele) => comparator.is(ele)\n : !comparator\n ? () => false\n : (i, ele) => ele === comparator;\n}\nfn.filter = function (comparator) {\n const compare = getCompareFunction(comparator);\n return cash(filter.call(this, (ele, i) => compare.call(ele, i, ele)));\n};\n// @require collection/filter.ts\nfunction filtered(collection, comparator) {\n return !comparator ? collection : collection.filter(comparator);\n}\n// @require ./type_checking.ts\nconst splitValuesRe = /\\S+/g;\nfunction getSplitValues(str) {\n return isString(str) ? str.match(splitValuesRe) || [] : [];\n}\nfn.hasClass = function (cls) {\n return !!cls && some.call(this, (ele) => isElement(ele) && ele.classList.contains(cls));\n};\nfn.removeAttr = function (attr) {\n const attrs = getSplitValues(attr);\n return this.each((i, ele) => {\n if (!isElement(ele))\n return;\n each(attrs, (i, a) => {\n ele.removeAttribute(a);\n });\n });\n};\nfunction attr(attr, value) {\n if (!attr)\n return;\n if (isString(attr)) {\n if (arguments.length < 2) {\n if (!this[0] || !isElement(this[0]))\n return;\n const value = this[0].getAttribute(attr);\n return isNull(value) ? undefined : value;\n }\n if (isUndefined(value))\n return this;\n if (isNull(value))\n return this.removeAttr(attr);\n return this.each((i, ele) => {\n if (!isElement(ele))\n return;\n ele.setAttribute(attr, value);\n });\n }\n for (const key in attr) {\n this.attr(key, attr[key]);\n }\n return this;\n}\nfn.attr = attr;\nfn.toggleClass = function (cls, force) {\n const classes = getSplitValues(cls), isForce = !isUndefined(force);\n return this.each((i, ele) => {\n if (!isElement(ele))\n return;\n each(classes, (i, c) => {\n if (isForce) {\n force ? ele.classList.add(c) : ele.classList.remove(c);\n }\n else {\n ele.classList.toggle(c);\n }\n });\n });\n};\nfn.addClass = function (cls) {\n return this.toggleClass(cls, true);\n};\nfn.removeClass = function (cls) {\n if (arguments.length)\n return this.toggleClass(cls, false);\n return this.attr('class', '');\n};\nfunction pluck(arr, prop, deep, until) {\n const plucked = [], isCallback = isFunction(prop), compare = until && getCompareFunction(until);\n for (let i = 0, l = arr.length; i < l; i++) {\n if (isCallback) {\n const val = prop(arr[i]);\n if (val.length)\n push.apply(plucked, val);\n }\n else {\n let val = arr[i][prop];\n while (val != null) {\n if (until && compare(-1, val))\n break;\n plucked.push(val);\n val = deep ? val[prop] : null;\n }\n }\n }\n return plucked;\n}\nfunction unique(arr) {\n return arr.length > 1 ? filter.call(arr, (item, index, self) => indexOf.call(self, item) === index) : arr;\n}\ncash.unique = unique;\nfn.add = function (selector, context) {\n return cash(unique(this.get().concat(cash(selector, context).get())));\n};\n// @require core/type_checking.ts\n// @require core/variables.ts\nfunction computeStyle(ele, prop, isVariable) {\n if (!isElement(ele))\n return;\n const style = win.getComputedStyle(ele, null);\n return isVariable ? style.getPropertyValue(prop) || undefined : style[prop] || ele.style[prop];\n}\n// @require ./compute_style.ts\nfunction computeStyleInt(ele, prop) {\n return parseInt(computeStyle(ele, prop), 10) || 0;\n}\nconst cssVariableRe = /^--/;\n// @require ./variables.ts\nfunction isCSSVariable(prop) {\n return cssVariableRe.test(prop);\n}\n// @require core/camel_case.ts\n// @require core/cash.ts\n// @require core/each.ts\n// @require core/variables.ts\n// @require ./is_css_variable.ts\nconst prefixedProps = {}, { style } = div, vendorsPrefixes = ['webkit', 'moz', 'ms'];\nfunction getPrefixedProp(prop, isVariable = isCSSVariable(prop)) {\n if (isVariable)\n return prop;\n if (!prefixedProps[prop]) {\n const propCC = camelCase(prop), propUC = `${propCC[0].toUpperCase()}${propCC.slice(1)}`, props = (`${propCC} ${vendorsPrefixes.join(`${propUC} `)}${propUC}`).split(' ');\n each(props, (i, p) => {\n if (p in style) {\n prefixedProps[prop] = p;\n return false;\n }\n });\n }\n return prefixedProps[prop];\n}\n;\n// @require core/type_checking.ts\n// @require ./is_css_variable.ts\nconst numericProps = {\n animationIterationCount: true,\n columnCount: true,\n flexGrow: true,\n flexShrink: true,\n fontWeight: true,\n gridArea: true,\n gridColumn: true,\n gridColumnEnd: true,\n gridColumnStart: true,\n gridRow: true,\n gridRowEnd: true,\n gridRowStart: true,\n lineHeight: true,\n opacity: true,\n order: true,\n orphans: true,\n widows: true,\n zIndex: true\n};\nfunction getSuffixedValue(prop, value, isVariable = isCSSVariable(prop)) {\n return !isVariable && !numericProps[prop] && isNumeric(value) ? `${value}px` : value;\n}\nfunction css(prop, value) {\n if (isString(prop)) {\n const isVariable = isCSSVariable(prop);\n prop = getPrefixedProp(prop, isVariable);\n if (arguments.length < 2)\n return this[0] && computeStyle(this[0], prop, isVariable);\n if (!prop)\n return this;\n value = getSuffixedValue(prop, value, isVariable);\n return this.each((i, ele) => {\n if (!isElement(ele))\n return;\n if (isVariable) {\n ele.style.setProperty(prop, value);\n }\n else {\n ele.style[prop] = value;\n }\n });\n }\n for (const key in prop) {\n this.css(key, prop[key]);\n }\n return this;\n}\n;\nfn.css = css;\n// @optional ./css.ts\n// @require core/attempt.ts\n// @require core/camel_case.ts\nconst JSONStringRe = /^\\s+|\\s+$/;\nfunction getData(ele, key) {\n const value = ele.dataset[key] || ele.dataset[camelCase(key)];\n if (JSONStringRe.test(value))\n return value;\n return attempt(JSON.parse, value);\n}\n// @require core/attempt.ts\n// @require core/camel_case.ts\nfunction setData(ele, key, value) {\n value = attempt(JSON.stringify, value);\n ele.dataset[camelCase(key)] = value;\n}\nfunction data(name, value) {\n if (!name) {\n if (!this[0])\n return;\n const datas = {};\n for (const key in this[0].dataset) {\n datas[key] = getData(this[0], key);\n }\n return datas;\n }\n if (isString(name)) {\n if (arguments.length < 2)\n return this[0] && getData(this[0], name);\n if (isUndefined(value))\n return this;\n return this.each((i, ele) => { setData(ele, name, value); });\n }\n for (const key in name) {\n this.data(key, name[key]);\n }\n return this;\n}\nfn.data = data;\n// @optional ./data.ts\nfunction getDocumentDimension(doc, dimension) {\n const docEle = doc.documentElement;\n return Math.max(doc.body[`scroll${dimension}`], docEle[`scroll${dimension}`], doc.body[`offset${dimension}`], docEle[`offset${dimension}`], docEle[`client${dimension}`]);\n}\n// @require css/helpers/compute_style_int.ts\nfunction getExtraSpace(ele, xAxis) {\n return computeStyleInt(ele, `border${xAxis ? 'Left' : 'Top'}Width`) + computeStyleInt(ele, `padding${xAxis ? 'Left' : 'Top'}`) + computeStyleInt(ele, `padding${xAxis ? 'Right' : 'Bottom'}`) + computeStyleInt(ele, `border${xAxis ? 'Right' : 'Bottom'}Width`);\n}\neach([true, false], (i, outer) => {\n each(['Width', 'Height'], (i, prop) => {\n const name = `${outer ? 'outer' : 'inner'}${prop}`;\n fn[name] = function (includeMargins) {\n if (!this[0])\n return;\n if (isWindow(this[0]))\n return outer ? this[0][`inner${prop}`] : this[0].document.documentElement[`client${prop}`];\n if (isDocument(this[0]))\n return getDocumentDimension(this[0], prop);\n return this[0][`${outer ? 'offset' : 'client'}${prop}`] + (includeMargins && outer ? computeStyleInt(this[0], `margin${i ? 'Top' : 'Left'}`) + computeStyleInt(this[0], `margin${i ? 'Bottom' : 'Right'}`) : 0);\n };\n });\n});\neach(['Width', 'Height'], (index, prop) => {\n const propLC = prop.toLowerCase();\n fn[propLC] = function (value) {\n if (!this[0])\n return isUndefined(value) ? undefined : this;\n if (!arguments.length) {\n if (isWindow(this[0]))\n return this[0].document.documentElement[`client${prop}`];\n if (isDocument(this[0]))\n return getDocumentDimension(this[0], prop);\n return this[0].getBoundingClientRect()[propLC] - getExtraSpace(this[0], !index);\n }\n const valueNumber = parseInt(value, 10);\n return this.each((i, ele) => {\n if (!isElement(ele))\n return;\n const boxSizing = computeStyle(ele, 'boxSizing');\n ele.style[propLC] = getSuffixedValue(propLC, valueNumber + (boxSizing === 'border-box' ? getExtraSpace(ele, !index) : 0));\n });\n };\n});\n// @optional ./inner_outer.ts\n// @optional ./normal.ts\n// @require css/helpers/compute_style.ts\nconst defaultDisplay = {};\nfunction getDefaultDisplay(tagName) {\n if (defaultDisplay[tagName])\n return defaultDisplay[tagName];\n const ele = createElement(tagName);\n doc.body.insertBefore(ele, null);\n const display = computeStyle(ele, 'display');\n doc.body.removeChild(ele);\n return defaultDisplay[tagName] = display !== 'none' ? display : 'block';\n}\n// @require css/helpers/compute_style.ts\nfunction isHidden(ele) {\n return computeStyle(ele, 'display') === 'none';\n}\nconst displayProperty = '___cd';\nfn.toggle = function (force) {\n return this.each((i, ele) => {\n if (!isElement(ele))\n return;\n const show = isUndefined(force) ? isHidden(ele) : force;\n if (show) {\n ele.style.display = ele[displayProperty] || '';\n if (isHidden(ele)) {\n ele.style.display = getDefaultDisplay(ele.tagName);\n }\n }\n else {\n ele[displayProperty] = computeStyle(ele, 'display');\n ele.style.display = 'none';\n }\n });\n};\nfn.hide = function () {\n return this.toggle(false);\n};\nfn.show = function () {\n return this.toggle(true);\n};\n// @optional ./hide.ts\n// @optional ./show.ts\n// @optional ./toggle.ts\nfunction hasNamespaces(ns1, ns2) {\n return !ns2 || !some.call(ns2, (ns) => ns1.indexOf(ns) < 0);\n}\nconst eventsNamespace = '___ce', eventsNamespacesSeparator = '.', eventsFocus = { focus: 'focusin', blur: 'focusout' }, eventsHover = { mouseenter: 'mouseover', mouseleave: 'mouseout' }, eventsMouseRe = /^(mouse|pointer|contextmenu|drag|drop|click|dblclick)/i;\n// @require ./variables.ts\nfunction getEventNameBubbling(name) {\n return eventsHover[name] || eventsFocus[name] || name;\n}\n// @require ./variables.ts\nfunction getEventsCache(ele) {\n return ele[eventsNamespace] = (ele[eventsNamespace] || {});\n}\n// @require core/guid.ts\n// @require events/helpers/get_events_cache.ts\nfunction addEvent(ele, name, namespaces, selector, callback) {\n const eventCache = getEventsCache(ele);\n eventCache[name] = (eventCache[name] || []);\n eventCache[name].push([namespaces, selector, callback]);\n ele.addEventListener(name, callback);\n}\n// @require ./variables.ts\nfunction parseEventName(eventName) {\n const parts = eventName.split(eventsNamespacesSeparator);\n return [parts[0], parts.slice(1).sort()]; // [name, namespace[]]\n}\n// @require ./get_events_cache.ts\n// @require ./has_namespaces.ts\n// @require ./parse_event_name.ts\nfunction removeEvent(ele, name, namespaces, selector, callback) {\n const cache = getEventsCache(ele);\n if (!name) {\n for (name in cache) {\n removeEvent(ele, name, namespaces, selector, callback);\n }\n }\n else if (cache[name]) {\n cache[name] = cache[name].filter(([ns, sel, cb]) => {\n if ((callback && cb.guid !== callback.guid) || !hasNamespaces(ns, namespaces) || (selector && selector !== sel))\n return true;\n ele.removeEventListener(name, cb);\n });\n }\n}\nfn.off = function (eventFullName, selector, callback) {\n if (isUndefined(eventFullName)) {\n this.each((i, ele) => {\n if (!isElement(ele) && !isDocument(ele) && !isWindow(ele))\n return;\n removeEvent(ele);\n });\n }\n else if (!isString(eventFullName)) {\n for (const key in eventFullName) {\n this.off(key, eventFullName[key]);\n }\n }\n else {\n if (isFunction(selector)) {\n callback = selector;\n selector = '';\n }\n each(getSplitValues(eventFullName), (i, eventFullName) => {\n const [nameOriginal, namespaces] = parseEventName(eventFullName), name = getEventNameBubbling(nameOriginal), isEventBubblingProxy = (nameOriginal !== name);\n this.each((i, ele) => {\n if (!isElement(ele) && !isDocument(ele) && !isWindow(ele))\n return;\n removeEvent(ele, name, namespaces, selector, callback);\n if (isEventBubblingProxy)\n removeEvent(ele, nameOriginal, namespaces, selector, callback);\n });\n });\n }\n return this;\n};\nfunction on(eventFullName, selector, data, callback, _one) {\n if (!isString(eventFullName)) {\n for (const key in eventFullName) {\n this.on(key, selector, data, eventFullName[key], _one);\n }\n return this;\n }\n if (!isString(selector)) {\n if (isUndefined(selector) || isNull(selector)) {\n selector = '';\n }\n else if (isUndefined(data)) {\n data = selector;\n selector = '';\n }\n else {\n callback = data;\n data = selector;\n selector = '';\n }\n }\n if (!isFunction(callback)) {\n callback = data;\n data = undefined;\n }\n if (!callback)\n return this;\n each(getSplitValues(eventFullName), (i, eventFullName) => {\n const [nameOriginal, namespaces] = parseEventName(eventFullName), name = getEventNameBubbling(nameOriginal), isEventBubblingProxy = (nameOriginal !== name), isEventFocus = (nameOriginal in eventsFocus);\n if (!name)\n return;\n this.each((i, ele) => {\n if (!isElement(ele) && !isDocument(ele) && !isWindow(ele))\n return;\n const finalCallback = function (event) {\n if (isEventBubblingProxy && (event.___ot ? event.___ot !== nameOriginal : event.type !== nameOriginal || (event.target[`___i${nameOriginal}`] && (delete event.target[`___i${nameOriginal}`], event.stopImmediatePropagation(), true))))\n return;\n if (event.namespace && !hasNamespaces(namespaces, event.namespace.split(eventsNamespacesSeparator)))\n return;\n let thisArg = ele;\n if (selector) {\n let target = event.target;\n while (!matches(target, selector)) {\n if (target === ele)\n return;\n target = target.parentNode;\n if (!target)\n return;\n }\n thisArg = target;\n event.___cd = true; // Delegate\n }\n else if (isEventFocus && event.___ot === nameOriginal && ele !== event.target && ele.contains(event.target)) {\n return;\n }\n if (event.___cd) {\n Object.defineProperty(event, 'currentTarget', {\n configurable: true,\n get() {\n return thisArg;\n }\n });\n }\n Object.defineProperty(event, 'data', {\n configurable: true,\n get() {\n return data;\n }\n });\n const returnValue = callback.call(thisArg, event, event.___td);\n if (_one) {\n removeEvent(ele, name, namespaces, selector, finalCallback);\n }\n if (returnValue === false) {\n event.preventDefault();\n event.stopPropagation();\n }\n };\n finalCallback.guid = callback.guid = (callback.guid || cash.guid++);\n addEvent(ele, name, namespaces, selector, finalCallback);\n if (isEventBubblingProxy)\n addEvent(ele, nameOriginal, namespaces, selector, finalCallback);\n });\n });\n return this;\n}\nfn.on = on;\nfunction one(eventFullName, selector, data, callback) {\n return this.on(eventFullName, selector, data, callback, true);\n}\n;\nfn.one = one;\nfn.ready = function (callback) {\n const cb = () => setTimeout(callback, 0, cash);\n if (doc.readyState !== 'loading') {\n cb();\n }\n else {\n doc.addEventListener('DOMContentLoaded', cb);\n }\n return this;\n};\nfn.trigger = function (event, data) {\n if (isString(event)) {\n const [nameOriginal, namespaces] = parseEventName(event), name = getEventNameBubbling(nameOriginal);\n if (!name)\n return this;\n const type = eventsMouseRe.test(name) ? 'MouseEvents' : 'HTMLEvents';\n event = doc.createEvent(type);\n event.initEvent(name, true, true);\n event.namespace = namespaces.join(eventsNamespacesSeparator);\n event.___ot = nameOriginal;\n }\n event.___td = data;\n const isEventFocus = (event.___ot in eventsFocus);\n return this.each((i, ele) => {\n if (isEventFocus && isFunction(ele[event.___ot])) {\n ele[`___i${event.___ot}`] = true; // Ensuring this event gets ignored\n ele[event.___ot]();\n }\n ele.dispatchEvent(event);\n });\n};\n// @optional ./off.ts\n// @optional ./on.ts\n// @optional ./one.ts\n// @optional ./ready.ts\n// @optional ./trigger.ts\n// @require core/pluck.ts\n// @require core/variables.ts\nfunction getValue(ele) {\n if (ele.multiple && ele.options)\n return pluck(filter.call(ele.options, option => option.selected && !option.disabled && !option.parentNode.disabled), 'value');\n return ele.value || '';\n}\nconst queryEncodeSpaceRe = /%20/g, queryEncodeCRLFRe = /\\r?\\n/g;\nfunction queryEncode(prop, value) {\n return `&${encodeURIComponent(prop)}=${encodeURIComponent(value.replace(queryEncodeCRLFRe, '\\r\\n')).replace(queryEncodeSpaceRe, '+')}`;\n}\nconst skippableRe = /file|reset|submit|button|image/i, checkableRe = /radio|checkbox/i;\nfn.serialize = function () {\n let query = '';\n this.each((i, ele) => {\n each(ele.elements || [ele], (i, ele) => {\n if (ele.disabled || !ele.name || ele.tagName === 'FIELDSET' || skippableRe.test(ele.type) || (checkableRe.test(ele.type) && !ele.checked))\n return;\n const value = getValue(ele);\n if (!isUndefined(value)) {\n const values = isArray(value) ? value : [value];\n each(values, (i, value) => {\n query += queryEncode(ele.name, value);\n });\n }\n });\n });\n return query.slice(1);\n};\nfunction val(value) {\n if (!arguments.length)\n return this[0] && getValue(this[0]);\n return this.each((i, ele) => {\n const isSelect = ele.multiple && ele.options;\n if (isSelect || checkableRe.test(ele.type)) {\n const eleValue = isArray(value) ? map.call(value, String) : (isNull(value) ? [] : [String(value)]);\n if (isSelect) {\n each(ele.options, (i, option) => {\n option.selected = eleValue.indexOf(option.value) >= 0;\n }, true);\n }\n else {\n ele.checked = eleValue.indexOf(ele.value) >= 0;\n }\n }\n else {\n ele.value = isUndefined(value) || isNull(value) ? '' : value;\n }\n });\n}\nfn.val = val;\nfn.clone = function () {\n return this.map((i, ele) => ele.cloneNode(true));\n};\nfn.detach = function (comparator) {\n filtered(this, comparator).each((i, ele) => {\n if (ele.parentNode) {\n ele.parentNode.removeChild(ele);\n }\n });\n return this;\n};\nconst fragmentRe = /^\\s*<(\\w+)[^>]*>/, singleTagRe = /^<(\\w+)\\s*\\/?>(?:<\\/\\1>)?$/;\nconst containers = {\n '*': div,\n tr: tbody,\n td: tr,\n th: tr,\n thead: table,\n tbody: table,\n tfoot: table\n};\n//TODO: Create elements inside a document fragment, in order to prevent inline event handlers from firing\n//TODO: Ensure the created elements have the fragment as their parent instead of null, this also ensures we can deal with detatched nodes more reliably\nfunction parseHTML(html) {\n if (!isString(html))\n return [];\n if (singleTagRe.test(html))\n return [createElement(RegExp.$1)];\n const fragment = fragmentRe.test(html) && RegExp.$1, container = containers[fragment] || containers['*'];\n container.innerHTML = html;\n return cash(container.childNodes).detach().get();\n}\ncash.parseHTML = parseHTML;\nfn.empty = function () {\n return this.each((i, ele) => {\n while (ele.firstChild) {\n ele.removeChild(ele.firstChild);\n }\n });\n};\nfunction html(html) {\n if (!arguments.length)\n return this[0] && this[0].innerHTML;\n if (isUndefined(html))\n return this;\n return this.each((i, ele) => {\n if (!isElement(ele))\n return;\n ele.innerHTML = html;\n });\n}\nfn.html = html;\nfn.remove = function (comparator) {\n filtered(this, comparator).detach().off();\n return this;\n};\nfunction text(text) {\n if (isUndefined(text))\n return this[0] ? this[0].textContent : '';\n return this.each((i, ele) => {\n if (!isElement(ele))\n return;\n ele.textContent = text;\n });\n}\n;\nfn.text = text;\nfn.unwrap = function () {\n this.parent().each((i, ele) => {\n if (ele.tagName === 'BODY')\n return;\n const $ele = cash(ele);\n $ele.replaceWith($ele.children());\n });\n return this;\n};\nfn.offset = function () {\n const ele = this[0];\n if (!ele)\n return;\n const rect = ele.getBoundingClientRect();\n return {\n top: rect.top + win.pageYOffset,\n left: rect.left + win.pageXOffset\n };\n};\nfn.offsetParent = function () {\n return this.map((i, ele) => {\n let offsetParent = ele.offsetParent;\n while (offsetParent && computeStyle(offsetParent, 'position') === 'static') {\n offsetParent = offsetParent.offsetParent;\n }\n return offsetParent || docEle;\n });\n};\nfn.position = function () {\n const ele = this[0];\n if (!ele)\n return;\n const isFixed = (computeStyle(ele, 'position') === 'fixed'), offset = isFixed ? ele.getBoundingClientRect() : this.offset();\n if (!isFixed) {\n const doc = ele.ownerDocument;\n let offsetParent = ele.offsetParent || doc.documentElement;\n while ((offsetParent === doc.body || offsetParent === doc.documentElement) && computeStyle(offsetParent, 'position') === 'static') {\n offsetParent = offsetParent.parentNode;\n }\n if (offsetParent !== ele && isElement(offsetParent)) {\n const parentOffset = cash(offsetParent).offset();\n offset.top -= parentOffset.top + computeStyleInt(offsetParent, 'borderTopWidth');\n offset.left -= parentOffset.left + computeStyleInt(offsetParent, 'borderLeftWidth');\n }\n }\n return {\n top: offset.top - computeStyleInt(ele, 'marginTop'),\n left: offset.left - computeStyleInt(ele, 'marginLeft')\n };\n};\nfn.children = function (comparator) {\n return filtered(cash(unique(pluck(this, ele => ele.children))), comparator);\n};\nfn.contents = function () {\n return cash(unique(pluck(this, ele => ele.tagName === 'IFRAME' ? [ele.contentDocument] : (ele.tagName === 'TEMPLATE' ? ele.content.childNodes : ele.childNodes))));\n};\nfn.find = function (selector) {\n return cash(unique(pluck(this, ele => find(selector, ele))));\n};\n// @require core/variables.ts\n// @require collection/filter.ts\n// @require traversal/find.ts\nconst HTMLCDATARe = /^\\s*\\s*$/g, scriptTypeRe = /^$|^module$|\\/(java|ecma)script/i, scriptAttributes = ['type', 'src', 'nonce', 'noModule'];\nfunction evalScripts(node, doc) {\n const collection = cash(node);\n collection.filter('script').add(collection.find('script')).each((i, ele) => {\n if (scriptTypeRe.test(ele.type) && docEle.contains(ele)) { // The script type is supported // The element is attached to the DOM // Using `documentElement` for broader browser support\n const script = createElement('script');\n script.text = ele.textContent.replace(HTMLCDATARe, '');\n each(scriptAttributes, (i, attr) => {\n if (ele[attr])\n script[attr] = ele[attr];\n });\n doc.head.insertBefore(script, null);\n doc.head.removeChild(script);\n }\n });\n}\n// @require ./eval_scripts.ts\nfunction insertElement(anchor, target, left, inside, evaluate) {\n if (inside) { // prepend/append\n anchor.insertBefore(target, left ? anchor.firstChild : null);\n }\n else { // before/after\n anchor.parentNode.insertBefore(target, left ? anchor : anchor.nextSibling);\n }\n if (evaluate) {\n evalScripts(target, anchor.ownerDocument);\n }\n}\n// @require ./insert_element.ts\nfunction insertSelectors(selectors, anchors, inverse, left, inside, reverseLoop1, reverseLoop2, reverseLoop3) {\n each(selectors, (si, selector) => {\n each(cash(selector), (ti, target) => {\n each(cash(anchors), (ai, anchor) => {\n const anchorFinal = inverse ? target : anchor, targetFinal = inverse ? anchor : target, indexFinal = inverse ? ti : ai;\n insertElement(anchorFinal, !indexFinal ? targetFinal : targetFinal.cloneNode(true), left, inside, !indexFinal);\n }, reverseLoop3);\n }, reverseLoop2);\n }, reverseLoop1);\n return anchors;\n}\nfn.after = function () {\n return insertSelectors(arguments, this, false, false, false, true, true);\n};\nfn.append = function () {\n return insertSelectors(arguments, this, false, false, true);\n};\nfn.appendTo = function (selector) {\n return insertSelectors(arguments, this, true, false, true);\n};\nfn.before = function () {\n return insertSelectors(arguments, this, false, true);\n};\nfn.insertAfter = function (selector) {\n return insertSelectors(arguments, this, true, false, false, false, false, true);\n};\nfn.insertBefore = function (selector) {\n return insertSelectors(arguments, this, true, true);\n};\nfn.prepend = function () {\n return insertSelectors(arguments, this, false, true, true, true, true);\n};\nfn.prependTo = function (selector) {\n return insertSelectors(arguments, this, true, true, true, false, false, true);\n};\nfn.replaceWith = function (selector) {\n return this.before(selector).remove();\n};\nfn.replaceAll = function (selector) {\n cash(selector).replaceWith(this);\n return this;\n};\nfn.wrapAll = function (selector) {\n let structure = cash(selector), wrapper = structure[0];\n while (wrapper.children.length)\n wrapper = wrapper.firstElementChild;\n this.first().before(structure);\n return this.appendTo(wrapper);\n};\nfn.wrap = function (selector) {\n return this.each((i, ele) => {\n const wrapper = cash(selector)[0];\n cash(ele).wrapAll(!i ? wrapper : wrapper.cloneNode(true));\n });\n};\nfn.wrapInner = function (selector) {\n return this.each((i, ele) => {\n const $ele = cash(ele), contents = $ele.contents();\n contents.length ? contents.wrapAll(selector) : $ele.append(selector);\n });\n};\nfn.has = function (selector) {\n const comparator = isString(selector)\n ? (i, ele) => find(selector, ele).length\n : (i, ele) => ele.contains(selector);\n return this.filter(comparator);\n};\nfn.is = function (comparator) {\n const compare = getCompareFunction(comparator);\n return some.call(this, (ele, i) => compare.call(ele, i, ele));\n};\nfn.next = function (comparator, _all, _until) {\n return filtered(cash(unique(pluck(this, 'nextElementSibling', _all, _until))), comparator);\n};\nfn.nextAll = function (comparator) {\n return this.next(comparator, true);\n};\nfn.nextUntil = function (until, comparator) {\n return this.next(comparator, true, until);\n};\nfn.not = function (comparator) {\n const compare = getCompareFunction(comparator);\n return this.filter((i, ele) => (!isString(comparator) || isElement(ele)) && !compare.call(ele, i, ele));\n};\nfn.parent = function (comparator) {\n return filtered(cash(unique(pluck(this, 'parentNode'))), comparator);\n};\nfn.index = function (selector) {\n const child = selector ? cash(selector)[0] : this[0], collection = selector ? this : cash(child).parent().children();\n return indexOf.call(collection, child);\n};\nfn.closest = function (comparator) {\n const filtered = this.filter(comparator);\n if (filtered.length)\n return filtered;\n const $parent = this.parent();\n if (!$parent.length)\n return filtered;\n return $parent.closest(comparator);\n};\nfn.parents = function (comparator, _until) {\n return filtered(cash(unique(pluck(this, 'parentElement', true, _until))), comparator);\n};\nfn.parentsUntil = function (until, comparator) {\n return this.parents(comparator, until);\n};\nfn.prev = function (comparator, _all, _until) {\n return filtered(cash(unique(pluck(this, 'previousElementSibling', _all, _until))), comparator);\n};\nfn.prevAll = function (comparator) {\n return this.prev(comparator, true);\n};\nfn.prevUntil = function (until, comparator) {\n return this.prev(comparator, true, until);\n};\nfn.siblings = function (comparator) {\n return filtered(cash(unique(pluck(this, ele => cash(ele).parent().children().not(ele)))), comparator);\n};\n// @optional ./children.ts\n// @optional ./closest.ts\n// @optional ./contents.ts\n// @optional ./find.ts\n// @optional ./has.ts\n// @optional ./is.ts\n// @optional ./next.ts\n// @optional ./next_all.ts\n// @optional ./next_until.ts\n// @optional ./not.ts\n// @optional ./parent.ts\n// @optional ./parents.ts\n// @optional ./parents_until.ts\n// @optional ./prev.ts\n// @optional ./prev_all.ts\n// @optional ./prev_until.ts\n// @optional ./siblings.ts\n// @optional attributes/index.ts\n// @optional collection/index.ts\n// @optional css/index.ts\n// @optional data/index.ts\n// @optional dimensions/index.ts\n// @optional effects/index.ts\n// @optional events/index.ts\n// @optional forms/index.ts\n// @optional manipulation/index.ts\n// @optional offset/index.ts\n// @optional traversal/index.ts\n// @require core/index.ts\n// @priority -100\n// @require ./cash.ts\nexport default cash;\nexport { Cash };\n\n","// The imports will be hosted to the root \"node_modules\",\n// and this package is under \"@collections/accordion\".\nimport \"../../../../../../node_modules/details-element-polyfill/dist/details-element-polyfill.js\";\n\n/**\n * Handles keyboard navigations on the \n *\n * * Down Arrow: moves focus to next `` in the accordion,\n * or the first ``.\n * * Up Arrow: moves focus to previous `` in the accordion,\n * or the last ``.\n * * Home : moves focus to the first accordion header.\n * * End : moves focus to the last accordion header.\n * @param {KeyboardEvent} event\n */\nfunction onKeyDownOnAccordion(event) {\n const target = /** @type {HTMLElement} */(event.target);\n const key = event.key;\n\n // Ignores if event is not coming from an accordion header.\n if (target.tagName !== \"SUMMARY\") {\n return;\n }\n\n // Ignore other keys\n if ([\"Down\", \"ArrowDown\", \"Up\", \"ArrowUp\", \"Home\", \"End\"].indexOf(key) === -1) {\n return;\n }\n\n const accordion = target.closest(\".accordion\");\n const triggers = Array.from(accordion.querySelectorAll(\"summary\"));\n const length = triggers.length;\n const index = triggers.indexOf(target);\n let newIndex;\n\n switch (key) {\n case \"Down\": // IE/Edge specific value\n case \"ArrowDown\":\n newIndex = (index + length + 1) % length;\n break;\n case \"Up\": // IE/Edge specific value\n case \"ArrowUp\":\n newIndex = (index + length -1) % length;\n break;\n case \"Home\":\n // Go to first accordion\n newIndex = 0;\n break;\n case \"End\":\n // Go to last accordion\n newIndex = length - 1;\n break;\n }\n\n triggers[newIndex].focus();\n event.preventDefault();\n}\n\ndocument.querySelectorAll(\".accordion\").forEach((accordion) => {\n accordion.addEventListener(\"keydown\", onKeyDownOnAccordion);\n});\n","/*\nDetails Element Polyfill 2.4.0\nCopyright © 2019 Javan Makhmali\n */\n(function() {\n \"use strict\";\n var element = document.createElement(\"details\");\n var elementIsNative = typeof HTMLDetailsElement != \"undefined\" && element instanceof HTMLDetailsElement;\n var support = {\n open: \"open\" in element || elementIsNative,\n toggle: \"ontoggle\" in element\n };\n var styles = '\\ndetails, summary {\\n display: block;\\n}\\ndetails:not([open]) > *:not(summary) {\\n display: none;\\n}\\nsummary::before {\\n content: \"►\";\\n padding-right: 0.3rem;\\n font-size: 0.6rem;\\n cursor: default;\\n}\\n[open] > summary::before {\\n content: \"▼\";\\n}\\n';\n var _ref = [], forEach = _ref.forEach, slice = _ref.slice;\n if (!support.open) {\n polyfillStyles();\n polyfillProperties();\n polyfillToggle();\n polyfillAccessibility();\n }\n if (support.open && !support.toggle) {\n polyfillToggleEvent();\n }\n function polyfillStyles() {\n document.head.insertAdjacentHTML(\"afterbegin\", \"\");\n }\n function polyfillProperties() {\n var prototype = document.createElement(\"details\").constructor.prototype;\n var setAttribute = prototype.setAttribute, removeAttribute = prototype.removeAttribute;\n var open = Object.getOwnPropertyDescriptor(prototype, \"open\");\n Object.defineProperties(prototype, {\n open: {\n get: function get() {\n if (this.tagName == \"DETAILS\") {\n return this.hasAttribute(\"open\");\n } else {\n if (open && open.get) {\n return open.get.call(this);\n }\n }\n },\n set: function set(value) {\n if (this.tagName == \"DETAILS\") {\n return value ? this.setAttribute(\"open\", \"\") : this.removeAttribute(\"open\");\n } else {\n if (open && open.set) {\n return open.set.call(this, value);\n }\n }\n }\n },\n setAttribute: {\n value: function value(name, _value) {\n var _this = this;\n var call = function call() {\n return setAttribute.call(_this, name, _value);\n };\n if (name == \"open\" && this.tagName == \"DETAILS\") {\n var wasOpen = this.hasAttribute(\"open\");\n var result = call();\n if (!wasOpen) {\n var summary = this.querySelector(\"summary\");\n if (summary) summary.setAttribute(\"aria-expanded\", true);\n triggerToggle(this);\n }\n return result;\n }\n return call();\n }\n },\n removeAttribute: {\n value: function value(name) {\n var _this2 = this;\n var call = function call() {\n return removeAttribute.call(_this2, name);\n };\n if (name == \"open\" && this.tagName == \"DETAILS\") {\n var wasOpen = this.hasAttribute(\"open\");\n var result = call();\n if (wasOpen) {\n var summary = this.querySelector(\"summary\");\n if (summary) summary.setAttribute(\"aria-expanded\", false);\n triggerToggle(this);\n }\n return result;\n }\n return call();\n }\n }\n });\n }\n function polyfillToggle() {\n onTogglingTrigger(function(element) {\n element.hasAttribute(\"open\") ? element.removeAttribute(\"open\") : element.setAttribute(\"open\", \"\");\n });\n }\n function polyfillToggleEvent() {\n if (window.MutationObserver) {\n new MutationObserver(function(mutations) {\n forEach.call(mutations, function(mutation) {\n var target = mutation.target, attributeName = mutation.attributeName;\n if (target.tagName == \"DETAILS\" && attributeName == \"open\") {\n triggerToggle(target);\n }\n });\n }).observe(document.documentElement, {\n attributes: true,\n subtree: true\n });\n } else {\n onTogglingTrigger(function(element) {\n var wasOpen = element.getAttribute(\"open\");\n setTimeout(function() {\n var isOpen = element.getAttribute(\"open\");\n if (wasOpen != isOpen) {\n triggerToggle(element);\n }\n }, 1);\n });\n }\n }\n function polyfillAccessibility() {\n setAccessibilityAttributes(document);\n if (window.MutationObserver) {\n new MutationObserver(function(mutations) {\n forEach.call(mutations, function(mutation) {\n forEach.call(mutation.addedNodes, setAccessibilityAttributes);\n });\n }).observe(document.documentElement, {\n subtree: true,\n childList: true\n });\n } else {\n document.addEventListener(\"DOMNodeInserted\", function(event) {\n setAccessibilityAttributes(event.target);\n });\n }\n }\n function setAccessibilityAttributes(root) {\n findElementsWithTagName(root, \"SUMMARY\").forEach(function(summary) {\n var details = findClosestElementWithTagName(summary, \"DETAILS\");\n summary.setAttribute(\"aria-expanded\", details.hasAttribute(\"open\"));\n if (!summary.hasAttribute(\"tabindex\")) summary.setAttribute(\"tabindex\", \"0\");\n if (!summary.hasAttribute(\"role\")) summary.setAttribute(\"role\", \"button\");\n });\n }\n function eventIsSignificant(event) {\n return !(event.defaultPrevented || event.ctrlKey || event.metaKey || event.shiftKey || event.target.isContentEditable);\n }\n function onTogglingTrigger(callback) {\n addEventListener(\"click\", function(event) {\n if (eventIsSignificant(event)) {\n if (event.which <= 1) {\n var element = findClosestElementWithTagName(event.target, \"SUMMARY\");\n if (element && element.parentNode && element.parentNode.tagName == \"DETAILS\") {\n callback(element.parentNode);\n }\n }\n }\n }, false);\n addEventListener(\"keydown\", function(event) {\n if (eventIsSignificant(event)) {\n if (event.keyCode == 13 || event.keyCode == 32) {\n var element = findClosestElementWithTagName(event.target, \"SUMMARY\");\n if (element && element.parentNode && element.parentNode.tagName == \"DETAILS\") {\n callback(element.parentNode);\n event.preventDefault();\n }\n }\n }\n }, false);\n }\n function triggerToggle(element) {\n var event = document.createEvent(\"Event\");\n event.initEvent(\"toggle\", false, false);\n element.dispatchEvent(event);\n }\n function findElementsWithTagName(root, tagName) {\n return (root.tagName == tagName ? [ root ] : []).concat(typeof root.getElementsByTagName == \"function\" ? slice.call(root.getElementsByTagName(tagName)) : []);\n }\n function findClosestElementWithTagName(element, tagName) {\n if (typeof element.closest == \"function\") {\n return element.closest(tagName);\n } else {\n while (element) {\n if (element.tagName == tagName) {\n return element;\n } else {\n element = element.parentNode;\n }\n }\n }\n }\n})();\n","/* a11y-slider - v0.4.5\n* https://github.com/mmahandev/a11y-slider\n* Copyright (c) 2020 mmahandev. Licensed MIT */\nvar e=\"undefined\"!=typeof globalThis?globalThis:\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:{};function t(e,t){return e(t={exports:{}},t.exports),t.exports}var i=function(e){return e&&e.Math==Math&&e},n=i(\"object\"==typeof globalThis&&globalThis)||i(\"object\"==typeof window&&window)||i(\"object\"==typeof self&&self)||i(\"object\"==typeof e&&e)||Function(\"return this\")(),r=function(e){try{return!!e()}catch(e){return!0}},s=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),o={}.propertyIsEnumerable,a=Object.getOwnPropertyDescriptor,l={f:a&&!o.call({1:2},1)?function(e){var t=a(this,e);return!!t&&t.enumerable}:o},u=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}},c={}.toString,d=function(e){return c.call(e).slice(8,-1)},h=\"\".split,f=r((function(){return!Object(\"z\").propertyIsEnumerable(0)}))?function(e){return\"String\"==d(e)?h.call(e,\"\"):Object(e)}:Object,p=function(e){if(null==e)throw TypeError(\"Can't call method on \"+e);return e},v=function(e){return f(p(e))},y=function(e){return\"object\"==typeof e?null!==e:\"function\"==typeof e},b=function(e,t){if(!y(e))return e;var i,n;if(t&&\"function\"==typeof(i=e.toString)&&!y(n=i.call(e)))return n;if(\"function\"==typeof(i=e.valueOf)&&!y(n=i.call(e)))return n;if(!t&&\"function\"==typeof(i=e.toString)&&!y(n=i.call(e)))return n;throw TypeError(\"Can't convert object to primitive value\")},m={}.hasOwnProperty,g=function(e,t){return m.call(e,t)},_=n.document,S=y(_)&&y(_.createElement),w=function(e){return S?_.createElement(e):{}},E=!s&&!r((function(){return 7!=Object.defineProperty(w(\"div\"),\"a\",{get:function(){return 7}}).a})),A=Object.getOwnPropertyDescriptor,L={f:s?A:function(e,t){if(e=v(e),t=b(t,!0),E)try{return A(e,t)}catch(e){}if(g(e,t))return u(!l.f.call(e,t),e[t])}},O=function(e){if(!y(e))throw TypeError(String(e)+\" is not an object\");return e},k=Object.defineProperty,x={f:s?k:function(e,t,i){if(O(e),t=b(t,!0),O(i),E)try{return k(e,t,i)}catch(e){}if(\"get\"in i||\"set\"in i)throw TypeError(\"Accessors not supported\");return\"value\"in i&&(e[t]=i.value),e}},C=s?function(e,t,i){return x.f(e,t,u(1,i))}:function(e,t,i){return e[t]=i,e},j=function(e,t){try{C(n,e,t)}catch(i){n[e]=t}return t},T=n[\"__core-js_shared__\"]||j(\"__core-js_shared__\",{}),N=Function.toString;\"function\"!=typeof T.inspectSource&&(T.inspectSource=function(e){return N.call(e)});var M,P,D,I=T.inspectSource,H=n.WeakMap,B=\"function\"==typeof H&&/native code/.test(I(H)),F=t((function(e){(e.exports=function(e,t){return T[e]||(T[e]=void 0!==t?t:{})})(\"versions\",[]).push({version:\"3.6.4\",mode:\"global\",copyright:\"© 2020 Denis Pushkarev (zloirock.ru)\"})})),R=0,V=Math.random(),W=function(e){return\"Symbol(\"+String(void 0===e?\"\":e)+\")_\"+(++R+V).toString(36)},z=F(\"keys\"),q=function(e){return z[e]||(z[e]=W(e))},X={},G=n.WeakMap;if(B){var U=new G,Y=U.get,$=U.has,K=U.set;M=function(e,t){return K.call(U,e,t),t},P=function(e){return Y.call(U,e)||{}},D=function(e){return $.call(U,e)}}else{var J=q(\"state\");X[J]=!0,M=function(e,t){return C(e,J,t),t},P=function(e){return g(e,J)?e[J]:{}},D=function(e){return g(e,J)}}var Q,Z,ee={set:M,get:P,has:D,enforce:function(e){return D(e)?P(e):M(e,{})},getterFor:function(e){return function(t){var i;if(!y(t)||(i=P(t)).type!==e)throw TypeError(\"Incompatible receiver, \"+e+\" required\");return i}}},te=t((function(e){var t=ee.get,i=ee.enforce,r=String(String).split(\"String\");(e.exports=function(e,t,s,o){var a=!!o&&!!o.unsafe,l=!!o&&!!o.enumerable,u=!!o&&!!o.noTargetGet;\"function\"==typeof s&&(\"string\"!=typeof t||g(s,\"name\")||C(s,\"name\",t),i(s).source=r.join(\"string\"==typeof t?t:\"\")),e!==n?(a?!u&&e[t]&&(l=!0):delete e[t],l?e[t]=s:C(e,t,s)):l?e[t]=s:j(t,s)})(Function.prototype,\"toString\",(function(){return\"function\"==typeof this&&t(this).source||I(this)}))})),ie=n,ne=function(e){return\"function\"==typeof e?e:void 0},re=function(e,t){return arguments.length<2?ne(ie[e])||ne(n[e]):ie[e]&&ie[e][t]||n[e]&&n[e][t]},se=Math.ceil,oe=Math.floor,ae=function(e){return isNaN(e=+e)?0:(e>0?oe:se)(e)},le=Math.min,ue=function(e){return e>0?le(ae(e),9007199254740991):0},ce=Math.max,de=Math.min,he=function(e,t){var i=ae(e);return i<0?ce(i+t,0):de(i,t)},fe=function(e){return function(t,i,n){var r,s=v(t),o=ue(s.length),a=he(n,o);if(e&&i!=i){for(;o>a;)if((r=s[a++])!=r)return!0}else for(;o>a;a++)if((e||a in s)&&s[a]===i)return e||a||0;return!e&&-1}},pe={includes:fe(!0),indexOf:fe(!1)},ve=pe.indexOf,ye=function(e,t){var i,n=v(e),r=0,s=[];for(i in n)!g(X,i)&&g(n,i)&&s.push(i);for(;t.length>r;)g(n,i=t[r++])&&(~ve(s,i)||s.push(i));return s},be=[\"constructor\",\"hasOwnProperty\",\"isPrototypeOf\",\"propertyIsEnumerable\",\"toLocaleString\",\"toString\",\"valueOf\"],me=be.concat(\"length\",\"prototype\"),ge={f:Object.getOwnPropertyNames||function(e){return ye(e,me)}},_e={f:Object.getOwnPropertySymbols},Se=re(\"Reflect\",\"ownKeys\")||function(e){var t=ge.f(O(e)),i=_e.f;return i?t.concat(i(e)):t},we=function(e,t){for(var i=Se(t),n=x.f,r=L.f,s=0;s=74)&&(Q=ze.match(/Chrome\\/(\\d+)/))&&(Z=Q[1]);var Ue=Z&&+Z,Ye=Re(\"species\"),$e=function(e){return Ue>=51||!r((function(){var t=[];return(t.constructor={})[Ye]=function(){return{foo:1}},1!==t[e](Boolean).foo}))},Ke=Re(\"isConcatSpreadable\"),Je=Ue>=51||!r((function(){var e=[];return e[Ke]=!1,e.concat()[0]!==e})),Qe=$e(\"concat\"),Ze=function(e){if(!y(e))return!1;var t=e[Ke];return void 0!==t?!!t:Ne(e)};Te({target:\"Array\",proto:!0,forced:!Je||!Qe},{concat:function(e){var t,i,n,r,s,o=Me(this),a=We(o,0),l=0;for(t=-1,n=arguments.length;t9007199254740991)throw TypeError(\"Maximum allowed index exceeded\");for(i=0;i=9007199254740991)throw TypeError(\"Maximum allowed index exceeded\");Pe(a,l++,s)}return a.length=l,a}});var et=function(e,t,i){if(function(e){if(\"function\"!=typeof e)throw TypeError(String(e)+\" is not a function\")}(e),void 0===t)return e;switch(i){case 0:return function(){return e.call(t)};case 1:return function(i){return e.call(t,i)};case 2:return function(i,n){return e.call(t,i,n)};case 3:return function(i,n,r){return e.call(t,i,n,r)}}return function(){return e.apply(t,arguments)}},tt=[].push,it=function(e){var t=1==e,i=2==e,n=3==e,r=4==e,s=6==e,o=5==e||s;return function(a,l,u,c){for(var d,h,p=Me(a),v=f(p),y=et(l,u,3),b=ue(v.length),m=0,g=c||We,_=t?g(a,b):i?g(a,0):void 0;b>m;m++)if((o||m in v)&&(h=y(d=v[m],m,p),e))if(t)_[m]=h;else if(h)switch(e){case 3:return!0;case 5:return d;case 6:return m;case 2:tt.call(_,d)}else if(r)return!1;return s?-1:n||r?r:_}},nt={forEach:it(0),map:it(1),filter:it(2),some:it(3),every:it(4),find:it(5),findIndex:it(6)},rt=function(e,t){var i=[][e];return!!i&&r((function(){i.call(null,t||function(){throw 1},1)}))},st=Object.defineProperty,ot={},at=function(e){throw e},lt=function(e,t){if(g(ot,e))return ot[e];t||(t={});var i=[][e],n=!!g(t,\"ACCESSORS\")&&t.ACCESSORS,o=g(t,0)?t[0]:at,a=g(t,1)?t[1]:void 0;return ot[e]=!!i&&!r((function(){if(n&&!s)return!0;var e={length:-1};n?st(e,1,{enumerable:!0,get:at}):e[1]=1,i.call(e,o,a)}))},ut=nt.forEach,ct=rt(\"forEach\"),dt=lt(\"forEach\"),ht=ct&&dt?[].forEach:function(e){return ut(this,e,arguments.length>1?arguments[1]:void 0)};Te({target:\"Array\",proto:!0,forced:[].forEach!=ht},{forEach:ht});var ft=pe.indexOf,pt=[].indexOf,vt=!!pt&&1/[1].indexOf(1,-0)<0,yt=rt(\"indexOf\"),bt=lt(\"indexOf\",{ACCESSORS:!0,1:0});Te({target:\"Array\",proto:!0,forced:vt||!yt||!bt},{indexOf:function(e){return vt?pt.apply(this,arguments)||0:ft(this,e,arguments.length>1?arguments[1]:void 0)}});var mt=nt.map,gt=$e(\"map\"),_t=lt(\"map\");Te({target:\"Array\",proto:!0,forced:!gt||!_t},{map:function(e){return mt(this,e,arguments.length>1?arguments[1]:void 0)}});var St,wt=Object.setPrototypeOf||(\"__proto__\"in{}?function(){var e,t=!1,i={};try{(e=Object.getOwnPropertyDescriptor(Object.prototype,\"__proto__\").set).call(i,[]),t=i instanceof Array}catch(e){}return function(i,n){return O(i),function(e){if(!y(e)&&null!==e)throw TypeError(\"Can't set \"+String(e)+\" as a prototype\")}(n),t?e.call(i,n):i.__proto__=n,i}}():void 0),Et=function(e,t,i){var n,r;return wt&&\"function\"==typeof(n=t.constructor)&&n!==i&&y(r=n.prototype)&&r!==i.prototype&&wt(e,r),e},At=Object.keys||function(e){return ye(e,be)},Lt=s?Object.defineProperties:function(e,t){O(e);for(var i,n=At(t),r=n.length,s=0;r>s;)x.f(e,i=n[s++],t[i]);return e},Ot=re(\"document\",\"documentElement\"),kt=q(\"IE_PROTO\"),xt=function(){},Ct=function(e){return\"