.', el.rawAttrsMap['style']);\n }\n }\n el.staticStyle = JSON.stringify(parseStyleText(staticStyle));\n }\n\n var styleBinding = getBindingAttr(el, 'style', false /* getStatic */);\n if (styleBinding) {\n el.styleBinding = styleBinding;\n }\n}\n\nfunction genData$1(el) {\n var data = '';\n if (el.staticStyle) {\n data += \"staticStyle:\" + el.staticStyle + \",\";\n }\n if (el.styleBinding) {\n data += \"style:(\" + el.styleBinding + \"),\";\n }\n return data;\n}\n\nvar style$1 = {\n staticKeys: ['staticStyle'],\n transformNode: transformNode$1,\n genData: genData$1\n};\n\n/* */\n\nvar decoder;\n\nvar he = {\n decode: function decode(html) {\n decoder = decoder || document.createElement('div');\n decoder.innerHTML = html;\n return decoder.textContent;\n }\n};\n\n/* */\n\nvar isUnaryTag = makeMap('area,base,br,col,embed,frame,hr,img,input,isindex,keygen,' + 'link,meta,param,source,track,wbr');\n\n// Elements that you can, intentionally, leave open\n// (and which close themselves)\nvar canBeLeftOpenTag = makeMap('colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source');\n\n// HTML5 tags https://html.spec.whatwg.org/multipage/indices.html#elements-3\n// Phrasing Content https://html.spec.whatwg.org/multipage/dom.html#phrasing-content\nvar isNonPhrasingTag = makeMap('address,article,aside,base,blockquote,body,caption,col,colgroup,dd,' + 'details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,' + 'h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,' + 'optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,' + 'title,tr,track');\n\n/**\n * Not type-checking this file because it's mostly vendor code.\n */\n\n// Regular Expressions for parsing tags and attributes\nvar attribute = /^\\s*([^\\s\"'<>\\/=]+)(?:\\s*(=)\\s*(?:\"([^\"]*)\"+|'([^']*)'+|([^\\s\"'=<>`]+)))?/;\nvar dynamicArgAttribute = /^\\s*((?:v-[\\w-]+:|@|:|#)\\[[^=]+?\\][^\\s\"'<>\\/=]*)(?:\\s*(=)\\s*(?:\"([^\"]*)\"+|'([^']*)'+|([^\\s\"'=<>`]+)))?/;\nvar ncname = \"[a-zA-Z_][\\\\-\\\\.0-9_a-zA-Z\" + unicodeRegExp.source + \"]*\";\nvar qnameCapture = \"((?:\" + ncname + \"\\\\:)?\" + ncname + \")\";\nvar startTagOpen = new RegExp(\"^<\" + qnameCapture);\nvar startTagClose = /^\\s*(\\/?)>/;\nvar endTag = new RegExp(\"^<\\\\/\" + qnameCapture + \"[^>]*>\");\nvar doctype = /^]+>/i;\n// #7298: escape - to avoid being passed as HTML comment when inlined in page\nvar comment = /^',\n '"': '\"',\n '&': '&',\n '
': '\\n',\n ' ': '\\t',\n ''': \"'\"\n};\nvar encodedAttr = /&(?:lt|gt|quot|amp|#39);/g;\nvar encodedAttrWithNewLines = /&(?:lt|gt|quot|amp|#39|#10|#9);/g;\n\n// #5992\nvar isIgnoreNewlineTag = makeMap('pre,textarea', true);\nvar shouldIgnoreFirstNewline = function shouldIgnoreFirstNewline(tag, html) {\n return tag && isIgnoreNewlineTag(tag) && html[0] === '\\n';\n};\n\nfunction decodeAttr(value, shouldDecodeNewlines) {\n var re = shouldDecodeNewlines ? encodedAttrWithNewLines : encodedAttr;\n return value.replace(re, function (match) {\n return decodingMap[match];\n });\n}\n\nfunction parseHTML(html, options) {\n var stack = [];\n var expectHTML = options.expectHTML;\n var isUnaryTag$$1 = options.isUnaryTag || no;\n var canBeLeftOpenTag$$1 = options.canBeLeftOpenTag || no;\n var index = 0;\n var last, lastTag;\n while (html) {\n last = html;\n // Make sure we're not in a plaintext content element like script/style\n if (!lastTag || !isPlainTextElement(lastTag)) {\n var textEnd = html.indexOf('<');\n if (textEnd === 0) {\n // Comment:\n if (comment.test(html)) {\n var commentEnd = html.indexOf('-->');\n\n if (commentEnd >= 0) {\n if (options.shouldKeepComment) {\n options.comment(html.substring(4, commentEnd), index, index + commentEnd + 3);\n }\n advance(commentEnd + 3);\n continue;\n }\n }\n\n // http://en.wikipedia.org/wiki/Conditional_comment#Downlevel-revealed_conditional_comment\n if (conditionalComment.test(html)) {\n var conditionalEnd = html.indexOf(']>');\n\n if (conditionalEnd >= 0) {\n advance(conditionalEnd + 2);\n continue;\n }\n }\n\n // Doctype:\n var doctypeMatch = html.match(doctype);\n if (doctypeMatch) {\n advance(doctypeMatch[0].length);\n continue;\n }\n\n // End tag:\n var endTagMatch = html.match(endTag);\n if (endTagMatch) {\n var curIndex = index;\n advance(endTagMatch[0].length);\n parseEndTag(endTagMatch[1], curIndex, index);\n continue;\n }\n\n // Start tag:\n var startTagMatch = parseStartTag();\n if (startTagMatch) {\n handleStartTag(startTagMatch);\n if (shouldIgnoreFirstNewline(startTagMatch.tagName, html)) {\n advance(1);\n }\n continue;\n }\n }\n\n var text = void 0,\n rest = void 0,\n next = void 0;\n if (textEnd >= 0) {\n rest = html.slice(textEnd);\n while (!endTag.test(rest) && !startTagOpen.test(rest) && !comment.test(rest) && !conditionalComment.test(rest)) {\n // < in plain text, be forgiving and treat it as text\n next = rest.indexOf('<', 1);\n if (next < 0) {\n break;\n }\n textEnd += next;\n rest = html.slice(textEnd);\n }\n text = html.substring(0, textEnd);\n }\n\n if (textEnd < 0) {\n text = html;\n }\n\n if (text) {\n advance(text.length);\n }\n\n if (options.chars && text) {\n options.chars(text, index - text.length, index);\n }\n } else {\n var endTagLength = 0;\n var stackedTag = lastTag.toLowerCase();\n var reStackedTag = reCache[stackedTag] || (reCache[stackedTag] = new RegExp('([\\\\s\\\\S]*?)(' + stackedTag + '[^>]*>)', 'i'));\n var rest$1 = html.replace(reStackedTag, function (all, text, endTag) {\n endTagLength = endTag.length;\n if (!isPlainTextElement(stackedTag) && stackedTag !== 'noscript') {\n text = text.replace(//g, '$1') // #7298\n .replace(//g, '$1');\n }\n if (shouldIgnoreFirstNewline(stackedTag, text)) {\n text = text.slice(1);\n }\n if (options.chars) {\n options.chars(text);\n }\n return '';\n });\n index += html.length - rest$1.length;\n html = rest$1;\n parseEndTag(stackedTag, index - endTagLength, index);\n }\n\n if (html === last) {\n options.chars && options.chars(html);\n if (false) {\n options.warn(\"Mal-formatted tag at end of template: \\\"\" + html + \"\\\"\", { start: index + html.length });\n }\n break;\n }\n }\n\n // Clean up any remaining tags\n parseEndTag();\n\n function advance(n) {\n index += n;\n html = html.substring(n);\n }\n\n function parseStartTag() {\n var start = html.match(startTagOpen);\n if (start) {\n var match = {\n tagName: start[1],\n attrs: [],\n start: index\n };\n advance(start[0].length);\n var end, attr;\n while (!(end = html.match(startTagClose)) && (attr = html.match(dynamicArgAttribute) || html.match(attribute))) {\n attr.start = index;\n advance(attr[0].length);\n attr.end = index;\n match.attrs.push(attr);\n }\n if (end) {\n match.unarySlash = end[1];\n advance(end[0].length);\n match.end = index;\n return match;\n }\n }\n }\n\n function handleStartTag(match) {\n var tagName = match.tagName;\n var unarySlash = match.unarySlash;\n\n if (expectHTML) {\n if (lastTag === 'p' && isNonPhrasingTag(tagName)) {\n parseEndTag(lastTag);\n }\n if (canBeLeftOpenTag$$1(tagName) && lastTag === tagName) {\n parseEndTag(tagName);\n }\n }\n\n var unary = isUnaryTag$$1(tagName) || !!unarySlash;\n\n var l = match.attrs.length;\n var attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n var args = match.attrs[i];\n var value = args[3] || args[4] || args[5] || '';\n var shouldDecodeNewlines = tagName === 'a' && args[1] === 'href' ? options.shouldDecodeNewlinesForHref : options.shouldDecodeNewlines;\n attrs[i] = {\n name: args[1],\n value: decodeAttr(value, shouldDecodeNewlines)\n };\n if (false) {\n attrs[i].start = args.start + args[0].match(/^\\s*/).length;\n attrs[i].end = args.end;\n }\n }\n\n if (!unary) {\n stack.push({ tag: tagName, lowerCasedTag: tagName.toLowerCase(), attrs: attrs, start: match.start, end: match.end });\n lastTag = tagName;\n }\n\n if (options.start) {\n options.start(tagName, attrs, unary, match.start, match.end);\n }\n }\n\n function parseEndTag(tagName, start, end) {\n var pos, lowerCasedTagName;\n if (start == null) {\n start = index;\n }\n if (end == null) {\n end = index;\n }\n\n // Find the closest opened tag of the same type\n if (tagName) {\n lowerCasedTagName = tagName.toLowerCase();\n for (pos = stack.length - 1; pos >= 0; pos--) {\n if (stack[pos].lowerCasedTag === lowerCasedTagName) {\n break;\n }\n }\n } else {\n // If no tag name is provided, clean shop\n pos = 0;\n }\n\n if (pos >= 0) {\n // Close all the open elements, up the stack\n for (var i = stack.length - 1; i >= pos; i--) {\n if (false) {\n options.warn(\"tag <\" + stack[i].tag + \"> has no matching end tag.\", { start: stack[i].start, end: stack[i].end });\n }\n if (options.end) {\n options.end(stack[i].tag, start, end);\n }\n }\n\n // Remove the open elements from the stack\n stack.length = pos;\n lastTag = pos && stack[pos - 1].tag;\n } else if (lowerCasedTagName === 'br') {\n if (options.start) {\n options.start(tagName, [], true, start, end);\n }\n } else if (lowerCasedTagName === 'p') {\n if (options.start) {\n options.start(tagName, [], false, start, end);\n }\n if (options.end) {\n options.end(tagName, start, end);\n }\n }\n }\n}\n\n/* */\n\nvar onRE = /^@|^v-on:/;\nvar dirRE = /^v-|^@|^:|^#/;\nvar forAliasRE = /([\\s\\S]*?)\\s+(?:in|of)\\s+([\\s\\S]*)/;\nvar forIteratorRE = /,([^,\\}\\]]*)(?:,([^,\\}\\]]*))?$/;\nvar stripParensRE = /^\\(|\\)$/g;\nvar dynamicArgRE = /^\\[.*\\]$/;\n\nvar argRE = /:(.*)$/;\nvar bindRE = /^:|^\\.|^v-bind:/;\nvar modifierRE = /\\.[^.\\]]+(?=[^\\]]*$)/g;\n\nvar slotRE = /^v-slot(:|$)|^#/;\n\nvar lineBreakRE = /[\\r\\n]/;\nvar whitespaceRE$1 = /[ \\f\\t\\r\\n]+/g;\n\nvar invalidAttributeRE = /[\\s\"'<>\\/=]/;\n\nvar decodeHTMLCached = cached(he.decode);\n\nvar emptySlotScopeToken = \"_empty_\";\n\n// configurable state\nvar warn$2;\nvar delimiters;\nvar transforms;\nvar preTransforms;\nvar postTransforms;\nvar platformIsPreTag;\nvar platformMustUseProp;\nvar platformGetTagNamespace;\nvar maybeComponent;\n\nfunction createASTElement(tag, attrs, parent) {\n return {\n type: 1,\n tag: tag,\n attrsList: attrs,\n attrsMap: makeAttrsMap(attrs),\n rawAttrsMap: {},\n parent: parent,\n children: []\n };\n}\n\n/**\n * Convert HTML string to AST.\n */\nfunction parse(template, options) {\n warn$2 = options.warn || baseWarn;\n\n platformIsPreTag = options.isPreTag || no;\n platformMustUseProp = options.mustUseProp || no;\n platformGetTagNamespace = options.getTagNamespace || no;\n var isReservedTag = options.isReservedTag || no;\n maybeComponent = function maybeComponent(el) {\n return !!(el.component || el.attrsMap[':is'] || el.attrsMap['v-bind:is'] || !(el.attrsMap.is ? isReservedTag(el.attrsMap.is) : isReservedTag(el.tag)));\n };\n transforms = pluckModuleFunction(options.modules, 'transformNode');\n preTransforms = pluckModuleFunction(options.modules, 'preTransformNode');\n postTransforms = pluckModuleFunction(options.modules, 'postTransformNode');\n\n delimiters = options.delimiters;\n\n var stack = [];\n var preserveWhitespace = options.preserveWhitespace !== false;\n var whitespaceOption = options.whitespace;\n var root;\n var currentParent;\n var inVPre = false;\n var inPre = false;\n var warned = false;\n\n function warnOnce(msg, range) {\n if (!warned) {\n warned = true;\n warn$2(msg, range);\n }\n }\n\n function closeElement(element) {\n trimEndingWhitespace(element);\n if (!inVPre && !element.processed) {\n element = processElement(element, options);\n }\n // tree management\n if (!stack.length && element !== root) {\n // allow root elements with v-if, v-else-if and v-else\n if (root.if && (element.elseif || element.else)) {\n if (false) {\n checkRootConstraints(element);\n }\n addIfCondition(root, {\n exp: element.elseif,\n block: element\n });\n } else if (false) {\n warnOnce(\"Component template should contain exactly one root element. \" + \"If you are using v-if on multiple elements, \" + \"use v-else-if to chain them instead.\", { start: element.start });\n }\n }\n if (currentParent && !element.forbidden) {\n if (element.elseif || element.else) {\n processIfConditions(element, currentParent);\n } else {\n if (element.slotScope) {\n // scoped slot\n // keep it in the children list so that v-else(-if) conditions can\n // find it as the prev node.\n var name = element.slotTarget || '\"default\"';(currentParent.scopedSlots || (currentParent.scopedSlots = {}))[name] = element;\n }\n currentParent.children.push(element);\n element.parent = currentParent;\n }\n }\n\n // final children cleanup\n // filter out scoped slots\n element.children = element.children.filter(function (c) {\n return !c.slotScope;\n });\n // remove trailing whitespace node again\n trimEndingWhitespace(element);\n\n // check pre state\n if (element.pre) {\n inVPre = false;\n }\n if (platformIsPreTag(element.tag)) {\n inPre = false;\n }\n // apply post-transforms\n for (var i = 0; i < postTransforms.length; i++) {\n postTransforms[i](element, options);\n }\n }\n\n function trimEndingWhitespace(el) {\n // remove trailing whitespace node\n if (!inPre) {\n var lastNode;\n while ((lastNode = el.children[el.children.length - 1]) && lastNode.type === 3 && lastNode.text === ' ') {\n el.children.pop();\n }\n }\n }\n\n function checkRootConstraints(el) {\n if (el.tag === 'slot' || el.tag === 'template') {\n warnOnce(\"Cannot use <\" + el.tag + \"> as component root element because it may \" + 'contain multiple nodes.', { start: el.start });\n }\n if (el.attrsMap.hasOwnProperty('v-for')) {\n warnOnce('Cannot use v-for on stateful component root element because ' + 'it renders multiple elements.', el.rawAttrsMap['v-for']);\n }\n }\n\n parseHTML(template, {\n warn: warn$2,\n expectHTML: options.expectHTML,\n isUnaryTag: options.isUnaryTag,\n canBeLeftOpenTag: options.canBeLeftOpenTag,\n shouldDecodeNewlines: options.shouldDecodeNewlines,\n shouldDecodeNewlinesForHref: options.shouldDecodeNewlinesForHref,\n shouldKeepComment: options.comments,\n outputSourceRange: options.outputSourceRange,\n start: function start(tag, attrs, unary, start$1, end) {\n // check namespace.\n // inherit parent ns if there is one\n var ns = currentParent && currentParent.ns || platformGetTagNamespace(tag);\n\n // handle IE svg bug\n /* istanbul ignore if */\n if (isIE && ns === 'svg') {\n attrs = guardIESVGBug(attrs);\n }\n\n var element = createASTElement(tag, attrs, currentParent);\n if (ns) {\n element.ns = ns;\n }\n\n if (false) {\n if (options.outputSourceRange) {\n element.start = start$1;\n element.end = end;\n element.rawAttrsMap = element.attrsList.reduce(function (cumulated, attr) {\n cumulated[attr.name] = attr;\n return cumulated;\n }, {});\n }\n attrs.forEach(function (attr) {\n if (invalidAttributeRE.test(attr.name)) {\n warn$2(\"Invalid dynamic argument expression: attribute names cannot contain \" + \"spaces, quotes, <, >, / or =.\", {\n start: attr.start + attr.name.indexOf(\"[\"),\n end: attr.start + attr.name.length\n });\n }\n });\n }\n\n if (isForbiddenTag(element) && !isServerRendering()) {\n element.forbidden = true;\n \"production\" !== 'production' && warn$2('Templates should only be responsible for mapping the state to the ' + 'UI. Avoid placing tags with side-effects in your templates, such as ' + \"<\" + tag + \">\" + ', as they will not be parsed.', { start: element.start });\n }\n\n // apply pre-transforms\n for (var i = 0; i < preTransforms.length; i++) {\n element = preTransforms[i](element, options) || element;\n }\n\n if (!inVPre) {\n processPre(element);\n if (element.pre) {\n inVPre = true;\n }\n }\n if (platformIsPreTag(element.tag)) {\n inPre = true;\n }\n if (inVPre) {\n processRawAttrs(element);\n } else if (!element.processed) {\n // structural directives\n processFor(element);\n processIf(element);\n processOnce(element);\n }\n\n if (!root) {\n root = element;\n if (false) {\n checkRootConstraints(root);\n }\n }\n\n if (!unary) {\n currentParent = element;\n stack.push(element);\n } else {\n closeElement(element);\n }\n },\n\n end: function end(tag, start, end$1) {\n var element = stack[stack.length - 1];\n // pop stack\n stack.length -= 1;\n currentParent = stack[stack.length - 1];\n if (false) {\n element.end = end$1;\n }\n closeElement(element);\n },\n\n chars: function chars(text, start, end) {\n if (!currentParent) {\n if (false) {\n if (text === template) {\n warnOnce('Component template requires a root element, rather than just text.', { start: start });\n } else if (text = text.trim()) {\n warnOnce(\"text \\\"\" + text + \"\\\" outside root element will be ignored.\", { start: start });\n }\n }\n return;\n }\n // IE textarea placeholder bug\n /* istanbul ignore if */\n if (isIE && currentParent.tag === 'textarea' && currentParent.attrsMap.placeholder === text) {\n return;\n }\n var children = currentParent.children;\n if (inPre || text.trim()) {\n text = isTextTag(currentParent) ? text : decodeHTMLCached(text);\n } else if (!children.length) {\n // remove the whitespace-only node right after an opening tag\n text = '';\n } else if (whitespaceOption) {\n if (whitespaceOption === 'condense') {\n // in condense mode, remove the whitespace node if it contains\n // line break, otherwise condense to a single space\n text = lineBreakRE.test(text) ? '' : ' ';\n } else {\n text = ' ';\n }\n } else {\n text = preserveWhitespace ? ' ' : '';\n }\n if (text) {\n if (!inPre && whitespaceOption === 'condense') {\n // condense consecutive whitespaces into single space\n text = text.replace(whitespaceRE$1, ' ');\n }\n var res;\n var child;\n if (!inVPre && text !== ' ' && (res = parseText(text, delimiters))) {\n child = {\n type: 2,\n expression: res.expression,\n tokens: res.tokens,\n text: text\n };\n } else if (text !== ' ' || !children.length || children[children.length - 1].text !== ' ') {\n child = {\n type: 3,\n text: text\n };\n }\n if (child) {\n if (false) {\n child.start = start;\n child.end = end;\n }\n children.push(child);\n }\n }\n },\n comment: function comment(text, start, end) {\n // adding anything as a sibling to the root node is forbidden\n // comments should still be allowed, but ignored\n if (currentParent) {\n var child = {\n type: 3,\n text: text,\n isComment: true\n };\n if (false) {\n child.start = start;\n child.end = end;\n }\n currentParent.children.push(child);\n }\n }\n });\n return root;\n}\n\nfunction processPre(el) {\n if (getAndRemoveAttr(el, 'v-pre') != null) {\n el.pre = true;\n }\n}\n\nfunction processRawAttrs(el) {\n var list = el.attrsList;\n var len = list.length;\n if (len) {\n var attrs = el.attrs = new Array(len);\n for (var i = 0; i < len; i++) {\n attrs[i] = {\n name: list[i].name,\n value: JSON.stringify(list[i].value)\n };\n if (list[i].start != null) {\n attrs[i].start = list[i].start;\n attrs[i].end = list[i].end;\n }\n }\n } else if (!el.pre) {\n // non root node in pre blocks with no attributes\n el.plain = true;\n }\n}\n\nfunction processElement(element, options) {\n processKey(element);\n\n // determine whether this is a plain element after\n // removing structural attributes\n element.plain = !element.key && !element.scopedSlots && !element.attrsList.length;\n\n processRef(element);\n processSlotContent(element);\n processSlotOutlet(element);\n processComponent(element);\n for (var i = 0; i < transforms.length; i++) {\n element = transforms[i](element, options) || element;\n }\n processAttrs(element);\n return element;\n}\n\nfunction processKey(el) {\n var exp = getBindingAttr(el, 'key');\n if (exp) {\n if (false) {\n if (el.tag === 'template') {\n warn$2(\"
cannot be keyed. Place the key on real elements instead.\", getRawBindingAttr(el, 'key'));\n }\n if (el.for) {\n var iterator = el.iterator2 || el.iterator1;\n var parent = el.parent;\n if (iterator && iterator === exp && parent && parent.tag === 'transition-group') {\n warn$2(\"Do not use v-for index as key on children, \" + \"this is the same as not using keys.\", getRawBindingAttr(el, 'key'), true /* tip */\n );\n }\n }\n }\n el.key = exp;\n }\n}\n\nfunction processRef(el) {\n var ref = getBindingAttr(el, 'ref');\n if (ref) {\n el.ref = ref;\n el.refInFor = checkInFor(el);\n }\n}\n\nfunction processFor(el) {\n var exp;\n if (exp = getAndRemoveAttr(el, 'v-for')) {\n var res = parseFor(exp);\n if (res) {\n extend(el, res);\n } else if (false) {\n warn$2(\"Invalid v-for expression: \" + exp, el.rawAttrsMap['v-for']);\n }\n }\n}\n\nfunction parseFor(exp) {\n var inMatch = exp.match(forAliasRE);\n if (!inMatch) {\n return;\n }\n var res = {};\n res.for = inMatch[2].trim();\n var alias = inMatch[1].trim().replace(stripParensRE, '');\n var iteratorMatch = alias.match(forIteratorRE);\n if (iteratorMatch) {\n res.alias = alias.replace(forIteratorRE, '').trim();\n res.iterator1 = iteratorMatch[1].trim();\n if (iteratorMatch[2]) {\n res.iterator2 = iteratorMatch[2].trim();\n }\n } else {\n res.alias = alias;\n }\n return res;\n}\n\nfunction processIf(el) {\n var exp = getAndRemoveAttr(el, 'v-if');\n if (exp) {\n el.if = exp;\n addIfCondition(el, {\n exp: exp,\n block: el\n });\n } else {\n if (getAndRemoveAttr(el, 'v-else') != null) {\n el.else = true;\n }\n var elseif = getAndRemoveAttr(el, 'v-else-if');\n if (elseif) {\n el.elseif = elseif;\n }\n }\n}\n\nfunction processIfConditions(el, parent) {\n var prev = findPrevElement(parent.children);\n if (prev && prev.if) {\n addIfCondition(prev, {\n exp: el.elseif,\n block: el\n });\n } else if (false) {\n warn$2(\"v-\" + (el.elseif ? 'else-if=\"' + el.elseif + '\"' : 'else') + \" \" + \"used on element <\" + el.tag + \"> without corresponding v-if.\", el.rawAttrsMap[el.elseif ? 'v-else-if' : 'v-else']);\n }\n}\n\nfunction findPrevElement(children) {\n var i = children.length;\n while (i--) {\n if (children[i].type === 1) {\n return children[i];\n } else {\n if (false) {\n warn$2(\"text \\\"\" + children[i].text.trim() + \"\\\" between v-if and v-else(-if) \" + \"will be ignored.\", children[i]);\n }\n children.pop();\n }\n }\n}\n\nfunction addIfCondition(el, condition) {\n if (!el.ifConditions) {\n el.ifConditions = [];\n }\n el.ifConditions.push(condition);\n}\n\nfunction processOnce(el) {\n var once$$1 = getAndRemoveAttr(el, 'v-once');\n if (once$$1 != null) {\n el.once = true;\n }\n}\n\n// handle content being passed to a component as slot,\n// e.g. , \nfunction processSlotContent(el) {\n var slotScope;\n if (el.tag === 'template') {\n slotScope = getAndRemoveAttr(el, 'scope');\n /* istanbul ignore if */\n if (false) {\n warn$2(\"the \\\"scope\\\" attribute for scoped slots have been deprecated and \" + \"replaced by \\\"slot-scope\\\" since 2.5. The new \\\"slot-scope\\\" attribute \" + \"can also be used on plain elements in addition to
to \" + \"denote scoped slots.\", el.rawAttrsMap['scope'], true);\n }\n el.slotScope = slotScope || getAndRemoveAttr(el, 'slot-scope');\n } else if (slotScope = getAndRemoveAttr(el, 'slot-scope')) {\n /* istanbul ignore if */\n if (false) {\n warn$2(\"Ambiguous combined usage of slot-scope and v-for on <\" + el.tag + \"> \" + \"(v-for takes higher priority). Use a wrapper for the \" + \"scoped slot to make it clearer.\", el.rawAttrsMap['slot-scope'], true);\n }\n el.slotScope = slotScope;\n }\n\n // slot=\"xxx\"\n var slotTarget = getBindingAttr(el, 'slot');\n if (slotTarget) {\n el.slotTarget = slotTarget === '\"\"' ? '\"default\"' : slotTarget;\n el.slotTargetDynamic = !!(el.attrsMap[':slot'] || el.attrsMap['v-bind:slot']);\n // preserve slot as an attribute for native shadow DOM compat\n // only for non-scoped slots.\n if (el.tag !== 'template' && !el.slotScope) {\n addAttr(el, 'slot', slotTarget, getRawBindingAttr(el, 'slot'));\n }\n }\n\n // 2.6 v-slot syntax\n {\n if (el.tag === 'template') {\n // v-slot on \n var slotBinding = getAndRemoveAttrByRegex(el, slotRE);\n if (slotBinding) {\n if (false) {\n if (el.slotTarget || el.slotScope) {\n warn$2(\"Unexpected mixed usage of different slot syntaxes.\", el);\n }\n if (el.parent && !maybeComponent(el.parent)) {\n warn$2(\" can only appear at the root level inside \" + \"the receiving component\", el);\n }\n }\n var ref = getSlotName(slotBinding);\n var name = ref.name;\n var dynamic = ref.dynamic;\n el.slotTarget = name;\n el.slotTargetDynamic = dynamic;\n el.slotScope = slotBinding.value || emptySlotScopeToken; // force it into a scoped slot for perf\n }\n } else {\n // v-slot on component, denotes default slot\n var slotBinding$1 = getAndRemoveAttrByRegex(el, slotRE);\n if (slotBinding$1) {\n if (false) {\n if (!maybeComponent(el)) {\n warn$2(\"v-slot can only be used on components or .\", slotBinding$1);\n }\n if (el.slotScope || el.slotTarget) {\n warn$2(\"Unexpected mixed usage of different slot syntaxes.\", el);\n }\n if (el.scopedSlots) {\n warn$2(\"To avoid scope ambiguity, the default slot should also use \" + \" syntax when there are other named slots.\", slotBinding$1);\n }\n }\n // add the component's children to its default slot\n var slots = el.scopedSlots || (el.scopedSlots = {});\n var ref$1 = getSlotName(slotBinding$1);\n var name$1 = ref$1.name;\n var dynamic$1 = ref$1.dynamic;\n var slotContainer = slots[name$1] = createASTElement('template', [], el);\n slotContainer.slotTarget = name$1;\n slotContainer.slotTargetDynamic = dynamic$1;\n slotContainer.children = el.children.filter(function (c) {\n if (!c.slotScope) {\n c.parent = slotContainer;\n return true;\n }\n });\n slotContainer.slotScope = slotBinding$1.value || emptySlotScopeToken;\n // remove children as they are returned from scopedSlots now\n el.children = [];\n // mark el non-plain so data gets generated\n el.plain = false;\n }\n }\n }\n}\n\nfunction getSlotName(binding) {\n var name = binding.name.replace(slotRE, '');\n if (!name) {\n if (binding.name[0] !== '#') {\n name = 'default';\n } else if (false) {\n warn$2(\"v-slot shorthand syntax requires a slot name.\", binding);\n }\n }\n return dynamicArgRE.test(name)\n // dynamic [name]\n ? { name: name.slice(1, -1), dynamic: true\n // static name\n } : { name: \"\\\"\" + name + \"\\\"\", dynamic: false };\n}\n\n// handle outlets\nfunction processSlotOutlet(el) {\n if (el.tag === 'slot') {\n el.slotName = getBindingAttr(el, 'name');\n if (false) {\n warn$2(\"`key` does not work on because slots are abstract outlets \" + \"and can possibly expand into multiple elements. \" + \"Use the key on a wrapping element instead.\", getRawBindingAttr(el, 'key'));\n }\n }\n}\n\nfunction processComponent(el) {\n var binding;\n if (binding = getBindingAttr(el, 'is')) {\n el.component = binding;\n }\n if (getAndRemoveAttr(el, 'inline-template') != null) {\n el.inlineTemplate = true;\n }\n}\n\nfunction processAttrs(el) {\n var list = el.attrsList;\n var i, l, name, rawName, value, modifiers, syncGen, isDynamic;\n for (i = 0, l = list.length; i < l; i++) {\n name = rawName = list[i].name;\n value = list[i].value;\n if (dirRE.test(name)) {\n // mark element as dynamic\n el.hasBindings = true;\n // modifiers\n modifiers = parseModifiers(name.replace(dirRE, ''));\n // support .foo shorthand syntax for the .prop modifier\n if (modifiers) {\n name = name.replace(modifierRE, '');\n }\n if (bindRE.test(name)) {\n // v-bind\n name = name.replace(bindRE, '');\n value = parseFilters(value);\n isDynamic = dynamicArgRE.test(name);\n if (isDynamic) {\n name = name.slice(1, -1);\n }\n if (false) {\n warn$2(\"The value for a v-bind expression cannot be empty. Found in \\\"v-bind:\" + name + \"\\\"\");\n }\n if (modifiers) {\n if (modifiers.prop && !isDynamic) {\n name = camelize(name);\n if (name === 'innerHtml') {\n name = 'innerHTML';\n }\n }\n if (modifiers.camel && !isDynamic) {\n name = camelize(name);\n }\n if (modifiers.sync) {\n syncGen = genAssignmentCode(value, \"$event\");\n if (!isDynamic) {\n addHandler(el, \"update:\" + camelize(name), syncGen, null, false, warn$2, list[i]);\n if (hyphenate(name) !== camelize(name)) {\n addHandler(el, \"update:\" + hyphenate(name), syncGen, null, false, warn$2, list[i]);\n }\n } else {\n // handler w/ dynamic event name\n addHandler(el, \"\\\"update:\\\"+(\" + name + \")\", syncGen, null, false, warn$2, list[i], true // dynamic\n );\n }\n }\n }\n if (modifiers && modifiers.prop || !el.component && platformMustUseProp(el.tag, el.attrsMap.type, name)) {\n addProp(el, name, value, list[i], isDynamic);\n } else {\n addAttr(el, name, value, list[i], isDynamic);\n }\n } else if (onRE.test(name)) {\n // v-on\n name = name.replace(onRE, '');\n isDynamic = dynamicArgRE.test(name);\n if (isDynamic) {\n name = name.slice(1, -1);\n }\n addHandler(el, name, value, modifiers, false, warn$2, list[i], isDynamic);\n } else {\n // normal directives\n name = name.replace(dirRE, '');\n // parse arg\n var argMatch = name.match(argRE);\n var arg = argMatch && argMatch[1];\n isDynamic = false;\n if (arg) {\n name = name.slice(0, -(arg.length + 1));\n if (dynamicArgRE.test(arg)) {\n arg = arg.slice(1, -1);\n isDynamic = true;\n }\n }\n addDirective(el, name, rawName, value, arg, isDynamic, modifiers, list[i]);\n if (false) {\n checkForAliasModel(el, value);\n }\n }\n } else {\n // literal attribute\n if (false) {\n var res = parseText(value, delimiters);\n if (res) {\n warn$2(name + \"=\\\"\" + value + \"\\\": \" + 'Interpolation inside attributes has been removed. ' + 'Use v-bind or the colon shorthand instead. For example, ' + 'instead of , use
.', list[i]);\n }\n }\n addAttr(el, name, JSON.stringify(value), list[i]);\n // #6887 firefox doesn't update muted state if set via attribute\n // even immediately after element creation\n if (!el.component && name === 'muted' && platformMustUseProp(el.tag, el.attrsMap.type, name)) {\n addProp(el, name, 'true', list[i]);\n }\n }\n }\n}\n\nfunction checkInFor(el) {\n var parent = el;\n while (parent) {\n if (parent.for !== undefined) {\n return true;\n }\n parent = parent.parent;\n }\n return false;\n}\n\nfunction parseModifiers(name) {\n var match = name.match(modifierRE);\n if (match) {\n var ret = {};\n match.forEach(function (m) {\n ret[m.slice(1)] = true;\n });\n return ret;\n }\n}\n\nfunction makeAttrsMap(attrs) {\n var map = {};\n for (var i = 0, l = attrs.length; i < l; i++) {\n if (false) {\n warn$2('duplicate attribute: ' + attrs[i].name, attrs[i]);\n }\n map[attrs[i].name] = attrs[i].value;\n }\n return map;\n}\n\n// for script (e.g. type=\"x/template\") or style, do not decode content\nfunction isTextTag(el) {\n return el.tag === 'script' || el.tag === 'style';\n}\n\nfunction isForbiddenTag(el) {\n return el.tag === 'style' || el.tag === 'script' && (!el.attrsMap.type || el.attrsMap.type === 'text/javascript');\n}\n\nvar ieNSBug = /^xmlns:NS\\d+/;\nvar ieNSPrefix = /^NS\\d+:/;\n\n/* istanbul ignore next */\nfunction guardIESVGBug(attrs) {\n var res = [];\n for (var i = 0; i < attrs.length; i++) {\n var attr = attrs[i];\n if (!ieNSBug.test(attr.name)) {\n attr.name = attr.name.replace(ieNSPrefix, '');\n res.push(attr);\n }\n }\n return res;\n}\n\nfunction checkForAliasModel(el, value) {\n var _el = el;\n while (_el) {\n if (_el.for && _el.alias === value) {\n warn$2(\"<\" + el.tag + \" v-model=\\\"\" + value + \"\\\">: \" + \"You are binding v-model directly to a v-for iteration alias. \" + \"This will not be able to modify the v-for source array because \" + \"writing to the alias is like modifying a function local variable. \" + \"Consider using an array of objects and use v-model on an object property instead.\", el.rawAttrsMap['v-model']);\n }\n _el = _el.parent;\n }\n}\n\n/* */\n\nfunction preTransformNode(el, options) {\n if (el.tag === 'input') {\n var map = el.attrsMap;\n if (!map['v-model']) {\n return;\n }\n\n var typeBinding;\n if (map[':type'] || map['v-bind:type']) {\n typeBinding = getBindingAttr(el, 'type');\n }\n if (!map.type && !typeBinding && map['v-bind']) {\n typeBinding = \"(\" + map['v-bind'] + \").type\";\n }\n\n if (typeBinding) {\n var ifCondition = getAndRemoveAttr(el, 'v-if', true);\n var ifConditionExtra = ifCondition ? \"&&(\" + ifCondition + \")\" : \"\";\n var hasElse = getAndRemoveAttr(el, 'v-else', true) != null;\n var elseIfCondition = getAndRemoveAttr(el, 'v-else-if', true);\n // 1. checkbox\n var branch0 = cloneASTElement(el);\n // process for on the main node\n processFor(branch0);\n addRawAttr(branch0, 'type', 'checkbox');\n processElement(branch0, options);\n branch0.processed = true; // prevent it from double-processed\n branch0.if = \"(\" + typeBinding + \")==='checkbox'\" + ifConditionExtra;\n addIfCondition(branch0, {\n exp: branch0.if,\n block: branch0\n });\n // 2. add radio else-if condition\n var branch1 = cloneASTElement(el);\n getAndRemoveAttr(branch1, 'v-for', true);\n addRawAttr(branch1, 'type', 'radio');\n processElement(branch1, options);\n addIfCondition(branch0, {\n exp: \"(\" + typeBinding + \")==='radio'\" + ifConditionExtra,\n block: branch1\n });\n // 3. other\n var branch2 = cloneASTElement(el);\n getAndRemoveAttr(branch2, 'v-for', true);\n addRawAttr(branch2, ':type', typeBinding);\n processElement(branch2, options);\n addIfCondition(branch0, {\n exp: ifCondition,\n block: branch2\n });\n\n if (hasElse) {\n branch0.else = true;\n } else if (elseIfCondition) {\n branch0.elseif = elseIfCondition;\n }\n\n return branch0;\n }\n }\n}\n\nfunction cloneASTElement(el) {\n return createASTElement(el.tag, el.attrsList.slice(), el.parent);\n}\n\nvar model$1 = {\n preTransformNode: preTransformNode\n};\n\nvar modules$1 = [klass$1, style$1, model$1];\n\n/* */\n\nfunction text(el, dir) {\n if (dir.value) {\n addProp(el, 'textContent', \"_s(\" + dir.value + \")\", dir);\n }\n}\n\n/* */\n\nfunction html(el, dir) {\n if (dir.value) {\n addProp(el, 'innerHTML', \"_s(\" + dir.value + \")\", dir);\n }\n}\n\nvar directives$1 = {\n model: model,\n text: text,\n html: html\n};\n\n/* */\n\nvar baseOptions = {\n expectHTML: true,\n modules: modules$1,\n directives: directives$1,\n isPreTag: isPreTag,\n isUnaryTag: isUnaryTag,\n mustUseProp: mustUseProp,\n canBeLeftOpenTag: canBeLeftOpenTag,\n isReservedTag: isReservedTag,\n getTagNamespace: getTagNamespace,\n staticKeys: genStaticKeys(modules$1)\n};\n\n/* */\n\nvar isStaticKey;\nvar isPlatformReservedTag;\n\nvar genStaticKeysCached = cached(genStaticKeys$1);\n\n/**\n * Goal of the optimizer: walk the generated template AST tree\n * and detect sub-trees that are purely static, i.e. parts of\n * the DOM that never needs to change.\n *\n * Once we detect these sub-trees, we can:\n *\n * 1. Hoist them into constants, so that we no longer need to\n * create fresh nodes for them on each re-render;\n * 2. Completely skip them in the patching process.\n */\nfunction optimize(root, options) {\n if (!root) {\n return;\n }\n isStaticKey = genStaticKeysCached(options.staticKeys || '');\n isPlatformReservedTag = options.isReservedTag || no;\n // first pass: mark all non-static nodes.\n markStatic$1(root);\n // second pass: mark static roots.\n markStaticRoots(root, false);\n}\n\nfunction genStaticKeys$1(keys) {\n return makeMap('type,tag,attrsList,attrsMap,plain,parent,children,attrs,start,end,rawAttrsMap' + (keys ? ',' + keys : ''));\n}\n\nfunction markStatic$1(node) {\n node.static = isStatic(node);\n if (node.type === 1) {\n // do not make component slot content static. this avoids\n // 1. components not able to mutate slot nodes\n // 2. static slot content fails for hot-reloading\n if (!isPlatformReservedTag(node.tag) && node.tag !== 'slot' && node.attrsMap['inline-template'] == null) {\n return;\n }\n for (var i = 0, l = node.children.length; i < l; i++) {\n var child = node.children[i];\n markStatic$1(child);\n if (!child.static) {\n node.static = false;\n }\n }\n if (node.ifConditions) {\n for (var i$1 = 1, l$1 = node.ifConditions.length; i$1 < l$1; i$1++) {\n var block = node.ifConditions[i$1].block;\n markStatic$1(block);\n if (!block.static) {\n node.static = false;\n }\n }\n }\n }\n}\n\nfunction markStaticRoots(node, isInFor) {\n if (node.type === 1) {\n if (node.static || node.once) {\n node.staticInFor = isInFor;\n }\n // For a node to qualify as a static root, it should have children that\n // are not just static text. Otherwise the cost of hoisting out will\n // outweigh the benefits and it's better off to just always render it fresh.\n if (node.static && node.children.length && !(node.children.length === 1 && node.children[0].type === 3)) {\n node.staticRoot = true;\n return;\n } else {\n node.staticRoot = false;\n }\n if (node.children) {\n for (var i = 0, l = node.children.length; i < l; i++) {\n markStaticRoots(node.children[i], isInFor || !!node.for);\n }\n }\n if (node.ifConditions) {\n for (var i$1 = 1, l$1 = node.ifConditions.length; i$1 < l$1; i$1++) {\n markStaticRoots(node.ifConditions[i$1].block, isInFor);\n }\n }\n }\n}\n\nfunction isStatic(node) {\n if (node.type === 2) {\n // expression\n return false;\n }\n if (node.type === 3) {\n // text\n return true;\n }\n return !!(node.pre || !node.hasBindings && // no dynamic bindings\n !node.if && !node.for && // not v-if or v-for or v-else\n !isBuiltInTag(node.tag) && // not a built-in\n isPlatformReservedTag(node.tag) && // not a component\n !isDirectChildOfTemplateFor(node) && Object.keys(node).every(isStaticKey));\n}\n\nfunction isDirectChildOfTemplateFor(node) {\n while (node.parent) {\n node = node.parent;\n if (node.tag !== 'template') {\n return false;\n }\n if (node.for) {\n return true;\n }\n }\n return false;\n}\n\n/* */\n\nvar fnExpRE = /^([\\w$_]+|\\([^)]*?\\))\\s*=>|^function(?:\\s+[\\w$]+)?\\s*\\(/;\nvar fnInvokeRE = /\\([^)]*?\\);*$/;\nvar simplePathRE = /^[A-Za-z_$][\\w$]*(?:\\.[A-Za-z_$][\\w$]*|\\['[^']*?']|\\[\"[^\"]*?\"]|\\[\\d+]|\\[[A-Za-z_$][\\w$]*])*$/;\n\n// KeyboardEvent.keyCode aliases\nvar keyCodes = {\n esc: 27,\n tab: 9,\n enter: 13,\n space: 32,\n up: 38,\n left: 37,\n right: 39,\n down: 40,\n 'delete': [8, 46]\n};\n\n// KeyboardEvent.key aliases\nvar keyNames = {\n // #7880: IE11 and Edge use `Esc` for Escape key name.\n esc: ['Esc', 'Escape'],\n tab: 'Tab',\n enter: 'Enter',\n // #9112: IE11 uses `Spacebar` for Space key name.\n space: [' ', 'Spacebar'],\n // #7806: IE11 uses key names without `Arrow` prefix for arrow keys.\n up: ['Up', 'ArrowUp'],\n left: ['Left', 'ArrowLeft'],\n right: ['Right', 'ArrowRight'],\n down: ['Down', 'ArrowDown'],\n // #9112: IE11 uses `Del` for Delete key name.\n 'delete': ['Backspace', 'Delete', 'Del']\n};\n\n// #4868: modifiers that prevent the execution of the listener\n// need to explicitly return null so that we can determine whether to remove\n// the listener for .once\nvar genGuard = function genGuard(condition) {\n return \"if(\" + condition + \")return null;\";\n};\n\nvar modifierCode = {\n stop: '$event.stopPropagation();',\n prevent: '$event.preventDefault();',\n self: genGuard(\"$event.target !== $event.currentTarget\"),\n ctrl: genGuard(\"!$event.ctrlKey\"),\n shift: genGuard(\"!$event.shiftKey\"),\n alt: genGuard(\"!$event.altKey\"),\n meta: genGuard(\"!$event.metaKey\"),\n left: genGuard(\"'button' in $event && $event.button !== 0\"),\n middle: genGuard(\"'button' in $event && $event.button !== 1\"),\n right: genGuard(\"'button' in $event && $event.button !== 2\")\n};\n\nfunction genHandlers(events, isNative) {\n var prefix = isNative ? 'nativeOn:' : 'on:';\n var staticHandlers = \"\";\n var dynamicHandlers = \"\";\n for (var name in events) {\n var handlerCode = genHandler(events[name]);\n if (events[name] && events[name].dynamic) {\n dynamicHandlers += name + \",\" + handlerCode + \",\";\n } else {\n staticHandlers += \"\\\"\" + name + \"\\\":\" + handlerCode + \",\";\n }\n }\n staticHandlers = \"{\" + staticHandlers.slice(0, -1) + \"}\";\n if (dynamicHandlers) {\n return prefix + \"_d(\" + staticHandlers + \",[\" + dynamicHandlers.slice(0, -1) + \"])\";\n } else {\n return prefix + staticHandlers;\n }\n}\n\nfunction genHandler(handler) {\n if (!handler) {\n return 'function(){}';\n }\n\n if (Array.isArray(handler)) {\n return \"[\" + handler.map(function (handler) {\n return genHandler(handler);\n }).join(',') + \"]\";\n }\n\n var isMethodPath = simplePathRE.test(handler.value);\n var isFunctionExpression = fnExpRE.test(handler.value);\n var isFunctionInvocation = simplePathRE.test(handler.value.replace(fnInvokeRE, ''));\n\n if (!handler.modifiers) {\n if (isMethodPath || isFunctionExpression) {\n return handler.value;\n }\n return \"function($event){\" + (isFunctionInvocation ? \"return \" + handler.value : handler.value) + \"}\"; // inline statement\n } else {\n var code = '';\n var genModifierCode = '';\n var keys = [];\n for (var key in handler.modifiers) {\n if (modifierCode[key]) {\n genModifierCode += modifierCode[key];\n // left/right\n if (keyCodes[key]) {\n keys.push(key);\n }\n } else if (key === 'exact') {\n var modifiers = handler.modifiers;\n genModifierCode += genGuard(['ctrl', 'shift', 'alt', 'meta'].filter(function (keyModifier) {\n return !modifiers[keyModifier];\n }).map(function (keyModifier) {\n return \"$event.\" + keyModifier + \"Key\";\n }).join('||'));\n } else {\n keys.push(key);\n }\n }\n if (keys.length) {\n code += genKeyFilter(keys);\n }\n // Make sure modifiers like prevent and stop get executed after key filtering\n if (genModifierCode) {\n code += genModifierCode;\n }\n var handlerCode = isMethodPath ? \"return \" + handler.value + \".apply(null, arguments)\" : isFunctionExpression ? \"return (\" + handler.value + \").apply(null, arguments)\" : isFunctionInvocation ? \"return \" + handler.value : handler.value;\n return \"function($event){\" + code + handlerCode + \"}\";\n }\n}\n\nfunction genKeyFilter(keys) {\n return (\n // make sure the key filters only apply to KeyboardEvents\n // #9441: can't use 'keyCode' in $event because Chrome autofill fires fake\n // key events that do not have keyCode property...\n \"if(!$event.type.indexOf('key')&&\" + keys.map(genFilterCode).join('&&') + \")return null;\"\n );\n}\n\nfunction genFilterCode(key) {\n var keyVal = parseInt(key, 10);\n if (keyVal) {\n return \"$event.keyCode!==\" + keyVal;\n }\n var keyCode = keyCodes[key];\n var keyName = keyNames[key];\n return \"_k($event.keyCode,\" + JSON.stringify(key) + \",\" + JSON.stringify(keyCode) + \",\" + \"$event.key,\" + \"\" + JSON.stringify(keyName) + \")\";\n}\n\n/* */\n\nfunction on(el, dir) {\n if (false) {\n warn(\"v-on without argument does not support modifiers.\");\n }\n el.wrapListeners = function (code) {\n return \"_g(\" + code + \",\" + dir.value + \")\";\n };\n}\n\n/* */\n\nfunction bind$1(el, dir) {\n el.wrapData = function (code) {\n return \"_b(\" + code + \",'\" + el.tag + \"',\" + dir.value + \",\" + (dir.modifiers && dir.modifiers.prop ? 'true' : 'false') + (dir.modifiers && dir.modifiers.sync ? ',true' : '') + \")\";\n };\n}\n\n/* */\n\nvar baseDirectives = {\n on: on,\n bind: bind$1,\n cloak: noop\n};\n\n/* */\n\nvar CodegenState = function CodegenState(options) {\n this.options = options;\n this.warn = options.warn || baseWarn;\n this.transforms = pluckModuleFunction(options.modules, 'transformCode');\n this.dataGenFns = pluckModuleFunction(options.modules, 'genData');\n this.directives = extend(extend({}, baseDirectives), options.directives);\n var isReservedTag = options.isReservedTag || no;\n this.maybeComponent = function (el) {\n return !!el.component || !isReservedTag(el.tag);\n };\n this.onceId = 0;\n this.staticRenderFns = [];\n this.pre = false;\n};\n\nfunction generate(ast, options) {\n var state = new CodegenState(options);\n // fix #11483, Root level \nif(val==='')return true;if(val==='false')return false;if(val==='true')return true;return val;}if(DOCUMENT&&typeof DOCUMENT.querySelector==='function'){var attrs=[['data-family-prefix','familyPrefix'],['data-replacement-class','replacementClass'],['data-auto-replace-svg','autoReplaceSvg'],['data-auto-add-css','autoAddCss'],['data-auto-a11y','autoA11y'],['data-search-pseudo-elements','searchPseudoElements'],['data-observe-mutations','observeMutations'],['data-mutate-approach','mutateApproach'],['data-keep-original-source','keepOriginalSource'],['data-measure-performance','measurePerformance'],['data-show-missing-icons','showMissingIcons']];attrs.forEach(function(_ref){var _ref2=_slicedToArray(_ref,2),attr=_ref2[0],key=_ref2[1];var val=coerce(getAttrConfig(attr));if(val!==undefined&&val!==null){initial[key]=val;}});}var _default={familyPrefix:DEFAULT_FAMILY_PREFIX,replacementClass:DEFAULT_REPLACEMENT_CLASS,autoReplaceSvg:true,autoAddCss:true,autoA11y:true,searchPseudoElements:false,observeMutations:true,mutateApproach:'async',keepOriginalSource:true,measurePerformance:false,showMissingIcons:true};var _config=_objectSpread({},_default,initial);if(!_config.autoReplaceSvg)_config.observeMutations=false;var config=_objectSpread({},_config);WINDOW.FontAwesomeConfig=config;var w=WINDOW||{};if(!w[NAMESPACE_IDENTIFIER])w[NAMESPACE_IDENTIFIER]={};if(!w[NAMESPACE_IDENTIFIER].styles)w[NAMESPACE_IDENTIFIER].styles={};if(!w[NAMESPACE_IDENTIFIER].hooks)w[NAMESPACE_IDENTIFIER].hooks={};if(!w[NAMESPACE_IDENTIFIER].shims)w[NAMESPACE_IDENTIFIER].shims=[];var namespace=w[NAMESPACE_IDENTIFIER];var functions=[];var listener=function listener(){DOCUMENT.removeEventListener('DOMContentLoaded',listener);loaded=1;functions.map(function(fn){return fn();});};var loaded=false;if(IS_DOM){loaded=(DOCUMENT.documentElement.doScroll?/^loaded|^c/:/^loaded|^i|^c/).test(DOCUMENT.readyState);if(!loaded)DOCUMENT.addEventListener('DOMContentLoaded',listener);}function domready(fn){if(!IS_DOM)return;loaded?setTimeout(fn,0):functions.push(fn);}var PENDING='pending';var SETTLED='settled';var FULFILLED='fulfilled';var REJECTED='rejected';var NOOP=function NOOP(){};var isNode=typeof global!=='undefined'&&typeof global.process!=='undefined'&&typeof global.process.emit==='function';var asyncSetTimer=typeof setImmediate==='undefined'?setTimeout:setImmediate;var asyncQueue=[];var asyncTimer;function asyncFlush(){// run promise callbacks\nfor(var i=0;i
-1;i--){var child=headChildren[i];var tagName=(child.tagName||'').toUpperCase();if(['STYLE','LINK'].indexOf(tagName)>-1){beforeChild=child;}}DOCUMENT.head.insertBefore(style,beforeChild);return css;}var idPool='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';function nextUniqueId(){var size=12;var id='';while(size-->0){id+=idPool[Math.random()*62|0];}return id;}function toArray(obj){var array=[];for(var i=(obj||[]).length>>>0;i--;){array[i]=obj[i];}return array;}function classArray(node){if(node.classList){return toArray(node.classList);}else{return(node.getAttribute('class')||'').split(' ').filter(function(i){return i;});}}function getIconName(familyPrefix,cls){var parts=cls.split('-');var prefix=parts[0];var iconName=parts.slice(1).join('-');if(prefix===familyPrefix&&iconName!==''&&!isReserved(iconName)){return iconName;}else{return null;}}function htmlEscape(str){return\"\".concat(str).replace(/&/g,'&').replace(/\"/g,'"').replace(/'/g,''').replace(//g,'>');}function joinAttributes(attributes){return Object.keys(attributes||{}).reduce(function(acc,attributeName){return acc+\"\".concat(attributeName,\"=\\\"\").concat(htmlEscape(attributes[attributeName]),\"\\\" \");},'').trim();}function joinStyles(styles){return Object.keys(styles||{}).reduce(function(acc,styleName){return acc+\"\".concat(styleName,\": \").concat(styles[styleName],\";\");},'');}function transformIsMeaningful(transform){return transform.size!==meaninglessTransform.size||transform.x!==meaninglessTransform.x||transform.y!==meaninglessTransform.y||transform.rotate!==meaninglessTransform.rotate||transform.flipX||transform.flipY;}function transformForSvg(_ref){var transform=_ref.transform,containerWidth=_ref.containerWidth,iconWidth=_ref.iconWidth;var outer={transform:\"translate(\".concat(containerWidth/2,\" 256)\")};var innerTranslate=\"translate(\".concat(transform.x*32,\", \").concat(transform.y*32,\") \");var innerScale=\"scale(\".concat(transform.size/16*(transform.flipX?-1:1),\", \").concat(transform.size/16*(transform.flipY?-1:1),\") \");var innerRotate=\"rotate(\".concat(transform.rotate,\" 0 0)\");var inner={transform:\"\".concat(innerTranslate,\" \").concat(innerScale,\" \").concat(innerRotate)};var path={transform:\"translate(\".concat(iconWidth/2*-1,\" -256)\")};return{outer:outer,inner:inner,path:path};}function transformForCss(_ref2){var transform=_ref2.transform,_ref2$width=_ref2.width,width=_ref2$width===void 0?UNITS_IN_GRID:_ref2$width,_ref2$height=_ref2.height,height=_ref2$height===void 0?UNITS_IN_GRID:_ref2$height,_ref2$startCentered=_ref2.startCentered,startCentered=_ref2$startCentered===void 0?false:_ref2$startCentered;var val='';if(startCentered&&IS_IE){val+=\"translate(\".concat(transform.x/d-width/2,\"em, \").concat(transform.y/d-height/2,\"em) \");}else if(startCentered){val+=\"translate(calc(-50% + \".concat(transform.x/d,\"em), calc(-50% + \").concat(transform.y/d,\"em)) \");}else{val+=\"translate(\".concat(transform.x/d,\"em, \").concat(transform.y/d,\"em) \");}val+=\"scale(\".concat(transform.size/d*(transform.flipX?-1:1),\", \").concat(transform.size/d*(transform.flipY?-1:1),\") \");val+=\"rotate(\".concat(transform.rotate,\"deg) \");return val;}var ALL_SPACE={x:0,y:0,width:'100%',height:'100%'};function fillBlack(abstract){var force=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(abstract.attributes&&(abstract.attributes.fill||force)){abstract.attributes.fill='black';}return abstract;}function deGroup(abstract){if(abstract.tag==='g'){return abstract.children;}else{return[abstract];}}function makeIconMasking(_ref){var children=_ref.children,attributes=_ref.attributes,main=_ref.main,mask=_ref.mask,explicitMaskId=_ref.maskId,transform=_ref.transform;var mainWidth=main.width,mainPath=main.icon;var maskWidth=mask.width,maskPath=mask.icon;var trans=transformForSvg({transform:transform,containerWidth:maskWidth,iconWidth:mainWidth});var maskRect={tag:'rect',attributes:_objectSpread({},ALL_SPACE,{fill:'white'})};var maskInnerGroupChildrenMixin=mainPath.children?{children:mainPath.children.map(fillBlack)}:{};var maskInnerGroup={tag:'g',attributes:_objectSpread({},trans.inner),children:[fillBlack(_objectSpread({tag:mainPath.tag,attributes:_objectSpread({},mainPath.attributes,trans.path)},maskInnerGroupChildrenMixin))]};var maskOuterGroup={tag:'g',attributes:_objectSpread({},trans.outer),children:[maskInnerGroup]};var maskId=\"mask-\".concat(explicitMaskId||nextUniqueId());var clipId=\"clip-\".concat(explicitMaskId||nextUniqueId());var maskTag={tag:'mask',attributes:_objectSpread({},ALL_SPACE,{id:maskId,maskUnits:'userSpaceOnUse',maskContentUnits:'userSpaceOnUse'}),children:[maskRect,maskOuterGroup]};var defs={tag:'defs',children:[{tag:'clipPath',attributes:{id:clipId},children:deGroup(maskPath)},maskTag]};children.push(defs,{tag:'rect',attributes:_objectSpread({fill:'currentColor','clip-path':\"url(#\".concat(clipId,\")\"),mask:\"url(#\".concat(maskId,\")\")},ALL_SPACE)});return{children:children,attributes:attributes};}function makeIconStandard(_ref){var children=_ref.children,attributes=_ref.attributes,main=_ref.main,transform=_ref.transform,styles=_ref.styles;var styleString=joinStyles(styles);if(styleString.length>0){attributes['style']=styleString;}if(transformIsMeaningful(transform)){var trans=transformForSvg({transform:transform,containerWidth:main.width,iconWidth:main.width});children.push({tag:'g',attributes:_objectSpread({},trans.outer),children:[{tag:'g',attributes:_objectSpread({},trans.inner),children:[{tag:main.icon.tag,children:main.icon.children,attributes:_objectSpread({},main.icon.attributes,trans.path)}]}]});}else{children.push(main.icon);}return{children:children,attributes:attributes};}function asIcon(_ref){var children=_ref.children,main=_ref.main,mask=_ref.mask,attributes=_ref.attributes,styles=_ref.styles,transform=_ref.transform;if(transformIsMeaningful(transform)&&main.found&&!mask.found){var width=main.width,height=main.height;var offset={x:width/height/2,y:0.5};attributes['style']=joinStyles(_objectSpread({},styles,{'transform-origin':\"\".concat(offset.x+transform.x/16,\"em \").concat(offset.y+transform.y/16,\"em\")}));}return[{tag:'svg',attributes:attributes,children:children}];}function asSymbol(_ref){var prefix=_ref.prefix,iconName=_ref.iconName,children=_ref.children,attributes=_ref.attributes,symbol=_ref.symbol;var id=symbol===true?\"\".concat(prefix,\"-\").concat(config.familyPrefix,\"-\").concat(iconName):symbol;return[{tag:'svg',attributes:{style:'display: none;'},children:[{tag:'symbol',attributes:_objectSpread({},attributes,{id:id}),children:children}]}];}function makeInlineSvgAbstract(params){var _params$icons=params.icons,main=_params$icons.main,mask=_params$icons.mask,prefix=params.prefix,iconName=params.iconName,transform=params.transform,symbol=params.symbol,title=params.title,maskId=params.maskId,titleId=params.titleId,extra=params.extra,_params$watchable=params.watchable,watchable=_params$watchable===void 0?false:_params$watchable;var _ref=mask.found?mask:main,width=_ref.width,height=_ref.height;var widthClass=\"fa-w-\".concat(Math.ceil(width/height*16));var attrClass=[config.replacementClass,iconName?\"\".concat(config.familyPrefix,\"-\").concat(iconName):'',widthClass].filter(function(c){return extra.classes.indexOf(c)===-1;}).concat(extra.classes).join(' ');var content={children:[],attributes:_objectSpread({},extra.attributes,{'data-prefix':prefix,'data-icon':iconName,'class':attrClass,'role':extra.attributes.role||'img','xmlns':'http://www.w3.org/2000/svg','viewBox':\"0 0 \".concat(width,\" \").concat(height)})};if(watchable){content.attributes[DATA_FA_I2SVG]='';}if(title)content.children.push({tag:'title',attributes:{id:content.attributes['aria-labelledby']||\"title-\".concat(titleId||nextUniqueId())},children:[title]});var args=_objectSpread({},content,{prefix:prefix,iconName:iconName,main:main,mask:mask,maskId:maskId,transform:transform,symbol:symbol,styles:extra.styles});var _ref2=mask.found&&main.found?makeIconMasking(args):makeIconStandard(args),children=_ref2.children,attributes=_ref2.attributes;args.children=children;args.attributes=attributes;if(symbol){return asSymbol(args);}else{return asIcon(args);}}function makeLayersTextAbstract(params){var content=params.content,width=params.width,height=params.height,transform=params.transform,title=params.title,extra=params.extra,_params$watchable2=params.watchable,watchable=_params$watchable2===void 0?false:_params$watchable2;var attributes=_objectSpread({},extra.attributes,title?{'title':title}:{},{'class':extra.classes.join(' ')});if(watchable){attributes[DATA_FA_I2SVG]='';}var styles=_objectSpread({},extra.styles);if(transformIsMeaningful(transform)){styles['transform']=transformForCss({transform:transform,startCentered:true,width:width,height:height});styles['-webkit-transform']=styles['transform'];}var styleString=joinStyles(styles);if(styleString.length>0){attributes['style']=styleString;}var val=[];val.push({tag:'span',attributes:attributes,children:[content]});if(title){val.push({tag:'span',attributes:{class:'sr-only'},children:[title]});}return val;}function makeLayersCounterAbstract(params){var content=params.content,title=params.title,extra=params.extra;var attributes=_objectSpread({},extra.attributes,title?{'title':title}:{},{'class':extra.classes.join(' ')});var styleString=joinStyles(extra.styles);if(styleString.length>0){attributes['style']=styleString;}var val=[];val.push({tag:'span',attributes:attributes,children:[content]});if(title){val.push({tag:'span',attributes:{class:'sr-only'},children:[title]});}return val;}var noop$1=function noop(){};var p=config.measurePerformance&&PERFORMANCE&&PERFORMANCE.mark&&PERFORMANCE.measure?PERFORMANCE:{mark:noop$1,measure:noop$1};var preamble=\"FA \\\"5.13.0\\\"\";var begin=function begin(name){p.mark(\"\".concat(preamble,\" \").concat(name,\" begins\"));return function(){return end(name);};};var end=function end(name){p.mark(\"\".concat(preamble,\" \").concat(name,\" ends\"));p.measure(\"\".concat(preamble,\" \").concat(name),\"\".concat(preamble,\" \").concat(name,\" begins\"),\"\".concat(preamble,\" \").concat(name,\" ends\"));};var perf={begin:begin,end:end};/**\n * Internal helper to bind a function known to have 4 arguments\n * to a given context.\n */var bindInternal4=function bindInternal4(func,thisContext){return function(a,b,c,d){return func.call(thisContext,a,b,c,d);};};/**\n * # Reduce\n *\n * A fast object `.reduce()` implementation.\n *\n * @param {Object} subject The object to reduce over.\n * @param {Function} fn The reducer function.\n * @param {mixed} initialValue The initial value for the reducer, defaults to subject[0].\n * @param {Object} thisContext The context for the reducer.\n * @return {mixed} The final result.\n */var reduce=function fastReduceObject(subject,fn,initialValue,thisContext){var keys=Object.keys(subject),length=keys.length,iterator=thisContext!==undefined?bindInternal4(fn,thisContext):fn,i,key,result;if(initialValue===undefined){i=1;result=subject[keys[0]];}else{i=0;result=initialValue;}for(;i2&&arguments[2]!==undefined?arguments[2]:{};var _params$skipHooks=params.skipHooks,skipHooks=_params$skipHooks===void 0?false:_params$skipHooks;var normalized=Object.keys(icons).reduce(function(acc,iconName){var icon=icons[iconName];var expanded=!!icon.icon;if(expanded){acc[icon.iconName]=icon.icon;}else{acc[iconName]=icon;}return acc;},{});if(typeof namespace.hooks.addPack==='function'&&!skipHooks){namespace.hooks.addPack(prefix,normalized);}else{namespace.styles[prefix]=_objectSpread({},namespace.styles[prefix]||{},normalized);}/**\n * Font Awesome 4 used the prefix of `fa` for all icons. With the introduction\n * of new styles we needed to differentiate between them. Prefix `fa` is now an alias\n * for `fas` so we'll easy the upgrade process for our users by automatically defining\n * this as well.\n */if(prefix==='fas'){defineIcons('fa',icons);}}var styles=namespace.styles,shims=namespace.shims;var _byUnicode={};var _byLigature={};var _byOldName={};var build=function build(){var lookup=function lookup(reducer){return reduce(styles,function(o,style,prefix){o[prefix]=reduce(style,reducer,{});return o;},{});};_byUnicode=lookup(function(acc,icon,iconName){if(icon[3]){acc[icon[3]]=iconName;}return acc;});_byLigature=lookup(function(acc,icon,iconName){var ligatures=icon[2];acc[iconName]=iconName;ligatures.forEach(function(ligature){acc[ligature]=iconName;});return acc;});var hasRegular='far'in styles;_byOldName=reduce(shims,function(acc,shim){var oldName=shim[0];var prefix=shim[1];var iconName=shim[2];if(prefix==='far'&&!hasRegular){prefix='fas';}acc[oldName]={prefix:prefix,iconName:iconName};return acc;},{});};build();function byUnicode(prefix,unicode){return(_byUnicode[prefix]||{})[unicode];}function byLigature(prefix,ligature){return(_byLigature[prefix]||{})[ligature];}function byOldName(name){return _byOldName[name]||{prefix:null,iconName:null};}var styles$1=namespace.styles;var emptyCanonicalIcon=function emptyCanonicalIcon(){return{prefix:null,iconName:null,rest:[]};};function getCanonicalIcon(values){return values.reduce(function(acc,cls){var iconName=getIconName(config.familyPrefix,cls);if(styles$1[cls]){acc.prefix=cls;}else if(config.autoFetchSvg&&['fas','far','fal','fad','fab','fa'].indexOf(cls)>-1){acc.prefix=cls;}else if(iconName){var shim=acc.prefix==='fa'?byOldName(iconName):{};acc.iconName=shim.iconName||iconName;acc.prefix=shim.prefix||acc.prefix;}else if(cls!==config.replacementClass&&cls.indexOf('fa-w-')!==0){acc.rest.push(cls);}return acc;},emptyCanonicalIcon());}function iconFromMapping(mapping,prefix,iconName){if(mapping&&mapping[prefix]&&mapping[prefix][iconName]){return{prefix:prefix,iconName:iconName,icon:mapping[prefix][iconName]};}}function toHtml(abstractNodes){var tag=abstractNodes.tag,_abstractNodes$attrib=abstractNodes.attributes,attributes=_abstractNodes$attrib===void 0?{}:_abstractNodes$attrib,_abstractNodes$childr=abstractNodes.children,children=_abstractNodes$childr===void 0?[]:_abstractNodes$childr;if(typeof abstractNodes==='string'){return htmlEscape(abstractNodes);}else{return\"<\".concat(tag,\" \").concat(joinAttributes(attributes),\">\").concat(children.map(toHtml).join(''),\"\").concat(tag,\">\");}}var noop$2=function noop(){};function isWatched(node){var i2svg=node.getAttribute?node.getAttribute(DATA_FA_I2SVG):null;return typeof i2svg==='string';}function getMutator(){if(config.autoReplaceSvg===true){return mutators.replace;}var mutator=mutators[config.autoReplaceSvg];return mutator||mutators.replace;}var mutators={replace:function replace(mutation){var node=mutation[0];var abstract=mutation[1];var newOuterHTML=abstract.map(function(a){return toHtml(a);}).join('\\n');if(node.parentNode&&node.outerHTML){node.outerHTML=newOuterHTML+(config.keepOriginalSource&&node.tagName.toLowerCase()!=='svg'?\"\"):'');}else if(node.parentNode){var newNode=document.createElement('span');node.parentNode.replaceChild(newNode,node);newNode.outerHTML=newOuterHTML;}},nest:function nest(mutation){var node=mutation[0];var abstract=mutation[1];// If we already have a replaced node we do not want to continue nesting within it.\n// Short-circuit to the standard replacement\nif(~classArray(node).indexOf(config.replacementClass)){return mutators.replace(mutation);}var forSvg=new RegExp(\"\".concat(config.familyPrefix,\"-.*\"));delete abstract[0].attributes.style;delete abstract[0].attributes.id;var splitClasses=abstract[0].attributes.class.split(' ').reduce(function(acc,cls){if(cls===config.replacementClass||cls.match(forSvg)){acc.toSvg.push(cls);}else{acc.toNode.push(cls);}return acc;},{toNode:[],toSvg:[]});abstract[0].attributes.class=splitClasses.toSvg.join(' ');var newInnerHTML=abstract.map(function(a){return toHtml(a);}).join('\\n');node.setAttribute('class',splitClasses.toNode.join(' '));node.setAttribute(DATA_FA_I2SVG,'');node.innerHTML=newInnerHTML;}};function performOperationSync(op){op();}function perform(mutations,callback){var callbackFunction=typeof callback==='function'?callback:noop$2;if(mutations.length===0){callbackFunction();}else{var frame=performOperationSync;if(config.mutateApproach===MUTATION_APPROACH_ASYNC){frame=WINDOW.requestAnimationFrame||performOperationSync;}frame(function(){var mutator=getMutator();var mark=perf.begin('mutate');mutations.map(mutator);mark();callbackFunction();});}}var disabled=false;function disableObservation(){disabled=true;}function enableObservation(){disabled=false;}var mo=null;function observe(options){if(!MUTATION_OBSERVER){return;}if(!config.observeMutations){return;}var treeCallback=options.treeCallback,nodeCallback=options.nodeCallback,pseudoElementsCallback=options.pseudoElementsCallback,_options$observeMutat=options.observeMutationsRoot,observeMutationsRoot=_options$observeMutat===void 0?DOCUMENT:_options$observeMutat;mo=new MUTATION_OBSERVER(function(objects){if(disabled)return;toArray(objects).forEach(function(mutationRecord){if(mutationRecord.type==='childList'&&mutationRecord.addedNodes.length>0&&!isWatched(mutationRecord.addedNodes[0])){if(config.searchPseudoElements){pseudoElementsCallback(mutationRecord.target);}treeCallback(mutationRecord.target);}if(mutationRecord.type==='attributes'&&mutationRecord.target.parentNode&&config.searchPseudoElements){pseudoElementsCallback(mutationRecord.target.parentNode);}if(mutationRecord.type==='attributes'&&isWatched(mutationRecord.target)&&~ATTRIBUTES_WATCHED_FOR_MUTATION.indexOf(mutationRecord.attributeName)){if(mutationRecord.attributeName==='class'){var _getCanonicalIcon=getCanonicalIcon(classArray(mutationRecord.target)),prefix=_getCanonicalIcon.prefix,iconName=_getCanonicalIcon.iconName;if(prefix)mutationRecord.target.setAttribute('data-prefix',prefix);if(iconName)mutationRecord.target.setAttribute('data-icon',iconName);}else{nodeCallback(mutationRecord.target);}}});});if(!IS_DOM)return;mo.observe(observeMutationsRoot,{childList:true,attributes:true,characterData:true,subtree:true});}function disconnect(){if(!mo)return;mo.disconnect();}function styleParser(node){var style=node.getAttribute('style');var val=[];if(style){val=style.split(';').reduce(function(acc,style){var styles=style.split(':');var prop=styles[0];var value=styles.slice(1);if(prop&&value.length>0){acc[prop]=value.join(':').trim();}return acc;},{});}return val;}function classParser(node){var existingPrefix=node.getAttribute('data-prefix');var existingIconName=node.getAttribute('data-icon');var innerText=node.innerText!==undefined?node.innerText.trim():'';var val=getCanonicalIcon(classArray(node));if(existingPrefix&&existingIconName){val.prefix=existingPrefix;val.iconName=existingIconName;}if(val.prefix&&innerText.length>1){val.iconName=byLigature(val.prefix,node.innerText);}else if(val.prefix&&innerText.length===1){val.iconName=byUnicode(val.prefix,toHex(node.innerText));}return val;}var parseTransformString=function parseTransformString(transformString){var transform={size:16,x:0,y:0,flipX:false,flipY:false,rotate:0};if(!transformString){return transform;}else{return transformString.toLowerCase().split(' ').reduce(function(acc,n){var parts=n.toLowerCase().split('-');var first=parts[0];var rest=parts.slice(1).join('-');if(first&&rest==='h'){acc.flipX=true;return acc;}if(first&&rest==='v'){acc.flipY=true;return acc;}rest=parseFloat(rest);if(isNaN(rest)){return acc;}switch(first){case'grow':acc.size=acc.size+rest;break;case'shrink':acc.size=acc.size-rest;break;case'left':acc.x=acc.x-rest;break;case'right':acc.x=acc.x+rest;break;case'up':acc.y=acc.y-rest;break;case'down':acc.y=acc.y+rest;break;case'rotate':acc.rotate=acc.rotate+rest;break;}return acc;},transform);}};function transformParser(node){return parseTransformString(node.getAttribute('data-fa-transform'));}function symbolParser(node){var symbol=node.getAttribute('data-fa-symbol');return symbol===null?false:symbol===''?true:symbol;}function attributesParser(node){var extraAttributes=toArray(node.attributes).reduce(function(acc,attr){if(acc.name!=='class'&&acc.name!=='style'){acc[attr.name]=attr.value;}return acc;},{});var title=node.getAttribute('title');var titleId=node.getAttribute('data-fa-title-id');if(config.autoA11y){if(title){extraAttributes['aria-labelledby']=\"\".concat(config.replacementClass,\"-title-\").concat(titleId||nextUniqueId());}else{extraAttributes['aria-hidden']='true';extraAttributes['focusable']='false';}}return extraAttributes;}function maskParser(node){var mask=node.getAttribute('data-fa-mask');if(!mask){return emptyCanonicalIcon();}else{return getCanonicalIcon(mask.split(' ').map(function(i){return i.trim();}));}}function blankMeta(){return{iconName:null,title:null,titleId:null,prefix:null,transform:meaninglessTransform,symbol:false,mask:null,maskId:null,extra:{classes:[],styles:{},attributes:{}}};}function parseMeta(node){var _classParser=classParser(node),iconName=_classParser.iconName,prefix=_classParser.prefix,extraClasses=_classParser.rest;var extraStyles=styleParser(node);var transform=transformParser(node);var symbol=symbolParser(node);var extraAttributes=attributesParser(node);var mask=maskParser(node);return{iconName:iconName,title:node.getAttribute('title'),titleId:node.getAttribute('data-fa-title-id'),prefix:prefix,transform:transform,symbol:symbol,mask:mask,maskId:node.getAttribute('data-fa-mask-id'),extra:{classes:extraClasses,styles:extraStyles,attributes:extraAttributes}};}function MissingIcon(error){this.name='MissingIcon';this.message=error||'Icon unavailable';this.stack=new Error().stack;}MissingIcon.prototype=Object.create(Error.prototype);MissingIcon.prototype.constructor=MissingIcon;var FILL={fill:'currentColor'};var ANIMATION_BASE={attributeType:'XML',repeatCount:'indefinite',dur:'2s'};var RING={tag:'path',attributes:_objectSpread({},FILL,{d:'M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z'})};var OPACITY_ANIMATE=_objectSpread({},ANIMATION_BASE,{attributeName:'opacity'});var DOT={tag:'circle',attributes:_objectSpread({},FILL,{cx:'256',cy:'364',r:'28'}),children:[{tag:'animate',attributes:_objectSpread({},ANIMATION_BASE,{attributeName:'r',values:'28;14;28;28;14;28;'})},{tag:'animate',attributes:_objectSpread({},OPACITY_ANIMATE,{values:'1;0;1;1;0;1;'})}]};var QUESTION={tag:'path',attributes:_objectSpread({},FILL,{opacity:'1',d:'M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z'}),children:[{tag:'animate',attributes:_objectSpread({},OPACITY_ANIMATE,{values:'1;0;0;0;0;1;'})}]};var EXCLAMATION={tag:'path',attributes:_objectSpread({},FILL,{opacity:'0',d:'M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z'}),children:[{tag:'animate',attributes:_objectSpread({},OPACITY_ANIMATE,{values:'0;0;1;1;0;0;'})}]};var missing={tag:'g',children:[RING,DOT,QUESTION,EXCLAMATION]};var styles$2=namespace.styles;function asFoundIcon(icon){var width=icon[0];var height=icon[1];var _icon$slice=icon.slice(4),_icon$slice2=_slicedToArray(_icon$slice,1),vectorData=_icon$slice2[0];var element=null;if(Array.isArray(vectorData)){element={tag:'g',attributes:{class:\"\".concat(config.familyPrefix,\"-\").concat(DUOTONE_CLASSES.GROUP)},children:[{tag:'path',attributes:{class:\"\".concat(config.familyPrefix,\"-\").concat(DUOTONE_CLASSES.SECONDARY),fill:'currentColor',d:vectorData[0]}},{tag:'path',attributes:{class:\"\".concat(config.familyPrefix,\"-\").concat(DUOTONE_CLASSES.PRIMARY),fill:'currentColor',d:vectorData[1]}}]};}else{element={tag:'path',attributes:{fill:'currentColor',d:vectorData}};}return{found:true,width:width,height:height,icon:element};}function findIcon(iconName,prefix){return new picked(function(resolve,reject){var val={found:false,width:512,height:512,icon:missing};if(iconName&&prefix&&styles$2[prefix]&&styles$2[prefix][iconName]){var icon=styles$2[prefix][iconName];return resolve(asFoundIcon(icon));}var headers={};if(_typeof(WINDOW.FontAwesomeKitConfig)==='object'&&typeof window.FontAwesomeKitConfig.token==='string'){headers['fa-kit-token']=WINDOW.FontAwesomeKitConfig.token;}if(iconName&&prefix&&!config.showMissingIcons){reject(new MissingIcon(\"Icon is missing for prefix \".concat(prefix,\" with icon name \").concat(iconName)));}else{resolve(val);}});}var styles$3=namespace.styles;function generateSvgReplacementMutation(node,nodeMeta){var iconName=nodeMeta.iconName,title=nodeMeta.title,titleId=nodeMeta.titleId,prefix=nodeMeta.prefix,transform=nodeMeta.transform,symbol=nodeMeta.symbol,mask=nodeMeta.mask,maskId=nodeMeta.maskId,extra=nodeMeta.extra;return new picked(function(resolve,reject){picked.all([findIcon(iconName,prefix),findIcon(mask.iconName,mask.prefix)]).then(function(_ref){var _ref2=_slicedToArray(_ref,2),main=_ref2[0],mask=_ref2[1];resolve([node,makeInlineSvgAbstract({icons:{main:main,mask:mask},prefix:prefix,iconName:iconName,transform:transform,symbol:symbol,mask:mask,maskId:maskId,title:title,titleId:titleId,extra:extra,watchable:true})]);});});}function generateLayersText(node,nodeMeta){var title=nodeMeta.title,transform=nodeMeta.transform,extra=nodeMeta.extra;var width=null;var height=null;if(IS_IE){var computedFontSize=parseInt(getComputedStyle(node).fontSize,10);var boundingClientRect=node.getBoundingClientRect();width=boundingClientRect.width/computedFontSize;height=boundingClientRect.height/computedFontSize;}if(config.autoA11y&&!title){extra.attributes['aria-hidden']='true';}return picked.resolve([node,makeLayersTextAbstract({content:node.innerHTML,width:width,height:height,transform:transform,title:title,extra:extra,watchable:true})]);}function generateMutation(node){var nodeMeta=parseMeta(node);if(~nodeMeta.extra.classes.indexOf(LAYERS_TEXT_CLASSNAME)){return generateLayersText(node,nodeMeta);}else{return generateSvgReplacementMutation(node,nodeMeta);}}function onTree(root){var callback=arguments.length>1&&arguments[1]!==undefined?arguments[1]:null;if(!IS_DOM)return;var htmlClassList=DOCUMENT.documentElement.classList;var hclAdd=function hclAdd(suffix){return htmlClassList.add(\"\".concat(HTML_CLASS_I2SVG_BASE_CLASS,\"-\").concat(suffix));};var hclRemove=function hclRemove(suffix){return htmlClassList.remove(\"\".concat(HTML_CLASS_I2SVG_BASE_CLASS,\"-\").concat(suffix));};var prefixes=config.autoFetchSvg?Object.keys(PREFIX_TO_STYLE):Object.keys(styles$3);var prefixesDomQuery=[\".\".concat(LAYERS_TEXT_CLASSNAME,\":not([\").concat(DATA_FA_I2SVG,\"])\")].concat(prefixes.map(function(p){return\".\".concat(p,\":not([\").concat(DATA_FA_I2SVG,\"])\");})).join(', ');if(prefixesDomQuery.length===0){return;}var candidates=[];try{candidates=toArray(root.querySelectorAll(prefixesDomQuery));}catch(e){// noop\n}if(candidates.length>0){hclAdd('pending');hclRemove('complete');}else{return;}var mark=perf.begin('onTree');var mutations=candidates.reduce(function(acc,node){try{var mutation=generateMutation(node);if(mutation){acc.push(mutation);}}catch(e){if(!PRODUCTION){if(e instanceof MissingIcon){console.error(e);}}}return acc;},[]);return new picked(function(resolve,reject){picked.all(mutations).then(function(resolvedMutations){perform(resolvedMutations,function(){hclAdd('active');hclAdd('complete');hclRemove('pending');if(typeof callback==='function')callback();mark();resolve();});}).catch(function(){mark();reject();});});}function onNode(node){var callback=arguments.length>1&&arguments[1]!==undefined?arguments[1]:null;generateMutation(node).then(function(mutation){if(mutation){perform([mutation],callback);}});}function replaceForPosition(node,position){var pendingAttribute=\"\".concat(DATA_FA_PSEUDO_ELEMENT_PENDING).concat(position.replace(':','-'));return new picked(function(resolve,reject){if(node.getAttribute(pendingAttribute)!==null){// This node is already being processed\nreturn resolve();}var children=toArray(node.children);var alreadyProcessedPseudoElement=children.filter(function(c){return c.getAttribute(DATA_FA_PSEUDO_ELEMENT)===position;})[0];var styles=WINDOW.getComputedStyle(node,position);var fontFamily=styles.getPropertyValue('font-family').match(FONT_FAMILY_PATTERN);var fontWeight=styles.getPropertyValue('font-weight');var content=styles.getPropertyValue('content');if(alreadyProcessedPseudoElement&&!fontFamily){// If we've already processed it but the current computed style does not result in a font-family,\n// that probably means that a class name that was previously present to make the icon has been\n// removed. So we now should delete the icon.\nnode.removeChild(alreadyProcessedPseudoElement);return resolve();}else if(fontFamily&&content!=='none'&&content!==''){var prefix=~['Solid','Regular','Light','Duotone','Brands'].indexOf(fontFamily[1])?STYLE_TO_PREFIX[fontFamily[1].toLowerCase()]:FONT_WEIGHT_TO_PREFIX[fontWeight];var hexValue=toHex(content.length===3?content.substr(1,1):content);var iconName=byUnicode(prefix,hexValue);var iconIdentifier=iconName;// Only convert the pseudo element in this :before/:after position into an icon if we haven't\n// already done so with the same prefix and iconName\nif(iconName&&(!alreadyProcessedPseudoElement||alreadyProcessedPseudoElement.getAttribute(DATA_PREFIX)!==prefix||alreadyProcessedPseudoElement.getAttribute(DATA_ICON)!==iconIdentifier)){node.setAttribute(pendingAttribute,iconIdentifier);if(alreadyProcessedPseudoElement){// Delete the old one, since we're replacing it with a new one\nnode.removeChild(alreadyProcessedPseudoElement);}var meta=blankMeta();var extra=meta.extra;extra.attributes[DATA_FA_PSEUDO_ELEMENT]=position;findIcon(iconName,prefix).then(function(main){var abstract=makeInlineSvgAbstract(_objectSpread({},meta,{icons:{main:main,mask:emptyCanonicalIcon()},prefix:prefix,iconName:iconIdentifier,extra:extra,watchable:true}));var element=DOCUMENT.createElement('svg');if(position===':before'){node.insertBefore(element,node.firstChild);}else{node.appendChild(element);}element.outerHTML=abstract.map(function(a){return toHtml(a);}).join('\\n');node.removeAttribute(pendingAttribute);resolve();}).catch(reject);}else{resolve();}}else{resolve();}});}function replace(node){return picked.all([replaceForPosition(node,':before'),replaceForPosition(node,':after')]);}function processable(node){return node.parentNode!==document.head&&!~TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS.indexOf(node.tagName.toUpperCase())&&!node.getAttribute(DATA_FA_PSEUDO_ELEMENT)&&(!node.parentNode||node.parentNode.tagName!=='svg');}function searchPseudoElements(root){if(!IS_DOM)return;return new picked(function(resolve,reject){var operations=toArray(root.querySelectorAll('*')).filter(processable).map(replace);var end=perf.begin('searchPseudoElements');disableObservation();picked.all(operations).then(function(){end();enableObservation();resolve();}).catch(function(){end();enableObservation();reject();});});}var baseStyles=\"svg:not(:root).svg-inline--fa{overflow:visible}.svg-inline--fa{display:inline-block;font-size:inherit;height:1em;overflow:visible;vertical-align:-.125em}.svg-inline--fa.fa-lg{vertical-align:-.225em}.svg-inline--fa.fa-w-1{width:.0625em}.svg-inline--fa.fa-w-2{width:.125em}.svg-inline--fa.fa-w-3{width:.1875em}.svg-inline--fa.fa-w-4{width:.25em}.svg-inline--fa.fa-w-5{width:.3125em}.svg-inline--fa.fa-w-6{width:.375em}.svg-inline--fa.fa-w-7{width:.4375em}.svg-inline--fa.fa-w-8{width:.5em}.svg-inline--fa.fa-w-9{width:.5625em}.svg-inline--fa.fa-w-10{width:.625em}.svg-inline--fa.fa-w-11{width:.6875em}.svg-inline--fa.fa-w-12{width:.75em}.svg-inline--fa.fa-w-13{width:.8125em}.svg-inline--fa.fa-w-14{width:.875em}.svg-inline--fa.fa-w-15{width:.9375em}.svg-inline--fa.fa-w-16{width:1em}.svg-inline--fa.fa-w-17{width:1.0625em}.svg-inline--fa.fa-w-18{width:1.125em}.svg-inline--fa.fa-w-19{width:1.1875em}.svg-inline--fa.fa-w-20{width:1.25em}.svg-inline--fa.fa-pull-left{margin-right:.3em;width:auto}.svg-inline--fa.fa-pull-right{margin-left:.3em;width:auto}.svg-inline--fa.fa-border{height:1.5em}.svg-inline--fa.fa-li{width:2em}.svg-inline--fa.fa-fw{width:1.25em}.fa-layers svg.svg-inline--fa{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers-text{left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter{background-color:#ff253a;border-radius:1em;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;height:1.5em;line-height:1;max-width:5em;min-width:1.5em;overflow:hidden;padding:.25em;right:0;text-overflow:ellipsis;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-bottom-right{bottom:0;right:0;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom right;transform-origin:bottom right}.fa-layers-bottom-left{bottom:0;left:0;right:auto;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom left;transform-origin:bottom left}.fa-layers-top-right{right:0;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-top-left{left:0;right:auto;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top left;transform-origin:top left}.fa-lg{font-size:1.3333333333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:solid .08em #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.fa-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-webkit-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{-webkit-transform:scale(1,-1);transform:scale(1,-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1,-1);transform:scale(-1,-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-rotate-90{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;position:relative;width:2.5em}.fa-stack-1x,.fa-stack-2x{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.svg-inline--fa.fa-stack-1x{height:1em;width:1.25em}.svg-inline--fa.fa-stack-2x{height:2em;width:2.5em}.fa-inverse{color:#fff}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor);opacity:.4;opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:.4;opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.fad.fa-inverse{color:#fff}\";function css(){var dfp=DEFAULT_FAMILY_PREFIX;var drc=DEFAULT_REPLACEMENT_CLASS;var fp=config.familyPrefix;var rc=config.replacementClass;var s=baseStyles;if(fp!==dfp||rc!==drc){var dPatt=new RegExp(\"\\\\.\".concat(dfp,\"\\\\-\"),'g');var customPropPatt=new RegExp(\"\\\\--\".concat(dfp,\"\\\\-\"),'g');var rPatt=new RegExp(\"\\\\.\".concat(drc),'g');s=s.replace(dPatt,\".\".concat(fp,\"-\")).replace(customPropPatt,\"--\".concat(fp,\"-\")).replace(rPatt,\".\".concat(rc));}return s;}var Library=/*#__PURE__*/function(){function Library(){_classCallCheck(this,Library);this.definitions={};}_createClass(Library,[{key:\"add\",value:function add(){var _this=this;for(var _len=arguments.length,definitions=new Array(_len),_key=0;_key<_len;_key++){definitions[_key]=arguments[_key];}var additions=definitions.reduce(this._pullDefinitions,{});Object.keys(additions).forEach(function(key){_this.definitions[key]=_objectSpread({},_this.definitions[key]||{},additions[key]);defineIcons(key,additions[key]);build();});}},{key:\"reset\",value:function reset(){this.definitions={};}},{key:\"_pullDefinitions\",value:function _pullDefinitions(additions,definition){var normalized=definition.prefix&&definition.iconName&&definition.icon?{0:definition}:definition;Object.keys(normalized).map(function(key){var _normalized$key=normalized[key],prefix=_normalized$key.prefix,iconName=_normalized$key.iconName,icon=_normalized$key.icon;if(!additions[prefix])additions[prefix]={};additions[prefix][iconName]=icon;});return additions;}}]);return Library;}();function ensureCss(){if(config.autoAddCss&&!_cssInserted){insertCss(css());_cssInserted=true;}}function apiObject(val,abstractCreator){Object.defineProperty(val,'abstract',{get:abstractCreator});Object.defineProperty(val,'html',{get:function get(){return val.abstract.map(function(a){return toHtml(a);});}});Object.defineProperty(val,'node',{get:function get(){if(!IS_DOM)return;var container=DOCUMENT.createElement('div');container.innerHTML=val.html;return container.children;}});return val;}function findIconDefinition(iconLookup){var _iconLookup$prefix=iconLookup.prefix,prefix=_iconLookup$prefix===void 0?'fa':_iconLookup$prefix,iconName=iconLookup.iconName;if(!iconName)return;return iconFromMapping(library.definitions,prefix,iconName)||iconFromMapping(namespace.styles,prefix,iconName);}function resolveIcons(next){return function(maybeIconDefinition){var params=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var iconDefinition=(maybeIconDefinition||{}).icon?maybeIconDefinition:findIconDefinition(maybeIconDefinition||{});var mask=params.mask;if(mask){mask=(mask||{}).icon?mask:findIconDefinition(mask||{});}return next(iconDefinition,_objectSpread({},params,{mask:mask}));};}var library=new Library();var noAuto=function noAuto(){config.autoReplaceSvg=false;config.observeMutations=false;disconnect();};var _cssInserted=false;var dom={i2svg:function i2svg(){var params=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};if(IS_DOM){ensureCss();var _params$node=params.node,node=_params$node===void 0?DOCUMENT:_params$node,_params$callback=params.callback,callback=_params$callback===void 0?function(){}:_params$callback;if(config.searchPseudoElements){searchPseudoElements(node);}return onTree(node,callback);}else{return picked.reject('Operation requires a DOM of some kind.');}},css:css,insertCss:function insertCss$$1(){if(!_cssInserted){insertCss(css());_cssInserted=true;}},watch:function watch(){var params=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var autoReplaceSvgRoot=params.autoReplaceSvgRoot,observeMutationsRoot=params.observeMutationsRoot;if(config.autoReplaceSvg===false){config.autoReplaceSvg=true;}config.observeMutations=true;domready(function(){autoReplace({autoReplaceSvgRoot:autoReplaceSvgRoot});observe({treeCallback:onTree,nodeCallback:onNode,pseudoElementsCallback:searchPseudoElements,observeMutationsRoot:observeMutationsRoot});});}};var parse={transform:function transform(transformString){return parseTransformString(transformString);}};var icon=resolveIcons(function(iconDefinition){var params=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var _params$transform=params.transform,transform=_params$transform===void 0?meaninglessTransform:_params$transform,_params$symbol=params.symbol,symbol=_params$symbol===void 0?false:_params$symbol,_params$mask=params.mask,mask=_params$mask===void 0?null:_params$mask,_params$maskId=params.maskId,maskId=_params$maskId===void 0?null:_params$maskId,_params$title=params.title,title=_params$title===void 0?null:_params$title,_params$titleId=params.titleId,titleId=_params$titleId===void 0?null:_params$titleId,_params$classes=params.classes,classes=_params$classes===void 0?[]:_params$classes,_params$attributes=params.attributes,attributes=_params$attributes===void 0?{}:_params$attributes,_params$styles=params.styles,styles=_params$styles===void 0?{}:_params$styles;if(!iconDefinition)return;var prefix=iconDefinition.prefix,iconName=iconDefinition.iconName,icon=iconDefinition.icon;return apiObject(_objectSpread({type:'icon'},iconDefinition),function(){ensureCss();if(config.autoA11y){if(title){attributes['aria-labelledby']=\"\".concat(config.replacementClass,\"-title-\").concat(titleId||nextUniqueId());}else{attributes['aria-hidden']='true';attributes['focusable']='false';}}return makeInlineSvgAbstract({icons:{main:asFoundIcon(icon),mask:mask?asFoundIcon(mask.icon):{found:false,width:null,height:null,icon:{}}},prefix:prefix,iconName:iconName,transform:_objectSpread({},meaninglessTransform,transform),symbol:symbol,title:title,maskId:maskId,titleId:titleId,extra:{attributes:attributes,styles:styles,classes:classes}});});});var text=function text(content){var params=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var _params$transform2=params.transform,transform=_params$transform2===void 0?meaninglessTransform:_params$transform2,_params$title2=params.title,title=_params$title2===void 0?null:_params$title2,_params$classes2=params.classes,classes=_params$classes2===void 0?[]:_params$classes2,_params$attributes2=params.attributes,attributes=_params$attributes2===void 0?{}:_params$attributes2,_params$styles2=params.styles,styles=_params$styles2===void 0?{}:_params$styles2;return apiObject({type:'text',content:content},function(){ensureCss();return makeLayersTextAbstract({content:content,transform:_objectSpread({},meaninglessTransform,transform),title:title,extra:{attributes:attributes,styles:styles,classes:[\"\".concat(config.familyPrefix,\"-layers-text\")].concat(_toConsumableArray(classes))}});});};var counter=function counter(content){var params=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var _params$title3=params.title,title=_params$title3===void 0?null:_params$title3,_params$classes3=params.classes,classes=_params$classes3===void 0?[]:_params$classes3,_params$attributes3=params.attributes,attributes=_params$attributes3===void 0?{}:_params$attributes3,_params$styles3=params.styles,styles=_params$styles3===void 0?{}:_params$styles3;return apiObject({type:'counter',content:content},function(){ensureCss();return makeLayersCounterAbstract({content:content.toString(),title:title,extra:{attributes:attributes,styles:styles,classes:[\"\".concat(config.familyPrefix,\"-layers-counter\")].concat(_toConsumableArray(classes))}});});};var layer=function layer(assembler){var params=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var _params$classes4=params.classes,classes=_params$classes4===void 0?[]:_params$classes4;return apiObject({type:'layer'},function(){ensureCss();var children=[];assembler(function(args){Array.isArray(args)?args.map(function(a){children=children.concat(a.abstract);}):children=children.concat(args.abstract);});return[{tag:'span',attributes:{class:[\"\".concat(config.familyPrefix,\"-layers\")].concat(_toConsumableArray(classes)).join(' ')},children:children}];});};var api={noAuto:noAuto,config:config,dom:dom,library:library,parse:parse,findIconDefinition:findIconDefinition,icon:icon,text:text,counter:counter,layer:layer,toHtml:toHtml};var autoReplace=function autoReplace(){var params=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var _params$autoReplaceSv=params.autoReplaceSvgRoot,autoReplaceSvgRoot=_params$autoReplaceSv===void 0?DOCUMENT:_params$autoReplaceSv;if((Object.keys(namespace.styles).length>0||config.autoFetchSvg)&&IS_DOM&&config.autoReplaceSvg)api.dom.i2svg({node:autoReplaceSvgRoot});};function bootstrap(){if(IS_BROWSER){if(!WINDOW.FontAwesome){WINDOW.FontAwesome=api;}domready(function(){autoReplace();observe({treeCallback:onTree,nodeCallback:onNode,pseudoElementsCallback:searchPseudoElements});});}namespace.hooks=_objectSpread({},namespace.hooks,{addPack:function addPack(prefix,icons){namespace.styles[prefix]=_objectSpread({},namespace.styles[prefix]||{},icons);build();autoReplace();},addShims:function addShims(shims){var _namespace$shims;(_namespace$shims=namespace.shims).push.apply(_namespace$shims,_toConsumableArray(shims));build();autoReplace();}});}bunker(bootstrap);})();\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(45), __webpack_require__(134).setImmediate))\n\n/***/ }),\n/* 507 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// style-loader: Adds some css to the DOM by adding a