>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker,\n exact: createStrictShapeTypeChecker,\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message) {\n this.message = message;\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (process.env.NODE_ENV !== 'production') {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n invariant(\n false,\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n warning(\n false,\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `%s` prop on `%s`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.',\n propFullName,\n componentName\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunction.thatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOf, expected an instance of array.') : void 0;\n return emptyFunction.thatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (propValue.hasOwnProperty(key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n return emptyFunction.thatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n warning(\n false,\n 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n 'received %s at index %s.',\n getPostfixForTypeWarning(checker),\n i\n );\n return emptyFunction.thatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {\n return null;\n }\n }\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (!checker) {\n continue;\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createStrictShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n // We need to check all keys in case some are required but missing from\n // props.\n var allKeys = assign({}, props[propName], shapeTypes);\n for (var key in allKeys) {\n var checker = shapeTypes[key];\n if (!checker) {\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n );\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(/*! ./../process/browser.js */ 0)))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMzIuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcHJvcC10eXBlcy9mYWN0b3J5V2l0aFR5cGVDaGVja2Vycy5qcz8yNmQ5Il0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDEzLXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4gKi9cblxuJ3VzZSBzdHJpY3QnO1xuXG52YXIgZW1wdHlGdW5jdGlvbiA9IHJlcXVpcmUoJ2ZianMvbGliL2VtcHR5RnVuY3Rpb24nKTtcbnZhciBpbnZhcmlhbnQgPSByZXF1aXJlKCdmYmpzL2xpYi9pbnZhcmlhbnQnKTtcbnZhciB3YXJuaW5nID0gcmVxdWlyZSgnZmJqcy9saWIvd2FybmluZycpO1xudmFyIGFzc2lnbiA9IHJlcXVpcmUoJ29iamVjdC1hc3NpZ24nKTtcblxudmFyIFJlYWN0UHJvcFR5cGVzU2VjcmV0ID0gcmVxdWlyZSgnLi9saWIvUmVhY3RQcm9wVHlwZXNTZWNyZXQnKTtcbnZhciBjaGVja1Byb3BUeXBlcyA9IHJlcXVpcmUoJy4vY2hlY2tQcm9wVHlwZXMnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbihpc1ZhbGlkRWxlbWVudCwgdGhyb3dPbkRpcmVjdEFjY2Vzcykge1xuICAvKiBnbG9iYWwgU3ltYm9sICovXG4gIHZhciBJVEVSQVRPUl9TWU1CT0wgPSB0eXBlb2YgU3ltYm9sID09PSAnZnVuY3Rpb24nICYmIFN5bWJvbC5pdGVyYXRvcjtcbiAgdmFyIEZBVVhfSVRFUkFUT1JfU1lNQk9MID0gJ0BAaXRlcmF0b3InOyAvLyBCZWZvcmUgU3ltYm9sIHNwZWMuXG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGl0ZXJhdG9yIG1ldGhvZCBmdW5jdGlvbiBjb250YWluZWQgb24gdGhlIGl0ZXJhYmxlIG9iamVjdC5cbiAgICpcbiAgICogQmUgc3VyZSB0byBpbnZva2UgdGhlIGZ1bmN0aW9uIHdpdGggdGhlIGl0ZXJhYmxlIGFzIGNvbnRleHQ6XG4gICAqXG4gICAqICAgICB2YXIgaXRlcmF0b3JGbiA9IGdldEl0ZXJhdG9yRm4obXlJdGVyYWJsZSk7XG4gICAqICAgICBpZiAoaXRlcmF0b3JGbikge1xuICAgKiAgICAgICB2YXIgaXRlcmF0b3IgPSBpdGVyYXRvckZuLmNhbGwobXlJdGVyYWJsZSk7XG4gICAqICAgICAgIC4uLlxuICAgKiAgICAgfVxuICAgKlxuICAgKiBAcGFyYW0gez9vYmplY3R9IG1heWJlSXRlcmFibGVcbiAgICogQHJldHVybiB7P2Z1bmN0aW9ufVxuICAgKi9cbiAgZnVuY3Rpb24gZ2V0SXRlcmF0b3JGbihtYXliZUl0ZXJhYmxlKSB7XG4gICAgdmFyIGl0ZXJhdG9yRm4gPSBtYXliZUl0ZXJhYmxlICYmIChJVEVSQVRPUl9TWU1CT0wgJiYgbWF5YmVJdGVyYWJsZVtJVEVSQVRPUl9TWU1CT0xdIHx8IG1heWJlSXRlcmFibGVbRkFVWF9JVEVSQVRPUl9TWU1CT0xdKTtcbiAgICBpZiAodHlwZW9mIGl0ZXJhdG9yRm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHJldHVybiBpdGVyYXRvckZuO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDb2xsZWN0aW9uIG9mIG1ldGhvZHMgdGhhdCBhbGxvdyBkZWNsYXJhdGlvbiBhbmQgdmFsaWRhdGlvbiBvZiBwcm9wcyB0aGF0IGFyZVxuICAgKiBzdXBwbGllZCB0byBSZWFjdCBjb21wb25lbnRzLiBFeGFtcGxlIHVzYWdlOlxuICAgKlxuICAgKiAgIHZhciBQcm9wcyA9IHJlcXVpcmUoJ1JlYWN0UHJvcFR5cGVzJyk7XG4gICAqICAgdmFyIE15QXJ0aWNsZSA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtcbiAgICogICAgIHByb3BUeXBlczoge1xuICAgKiAgICAgICAvLyBBbiBvcHRpb25hbCBzdHJpbmcgcHJvcCBuYW1lZCBcImRlc2NyaXB0aW9uXCIuXG4gICAqICAgICAgIGRlc2NyaXB0aW9uOiBQcm9wcy5zdHJpbmcsXG4gICAqXG4gICAqICAgICAgIC8vIEEgcmVxdWlyZWQgZW51bSBwcm9wIG5hbWVkIFwiY2F0ZWdvcnlcIi5cbiAgICogICAgICAgY2F0ZWdvcnk6IFByb3BzLm9uZU9mKFsnTmV3cycsJ1Bob3RvcyddKS5pc1JlcXVpcmVkLFxuICAgKlxuICAgKiAgICAgICAvLyBBIHByb3AgbmFtZWQgXCJkaWFsb2dcIiB0aGF0IHJlcXVpcmVzIGFuIGluc3RhbmNlIG9mIERpYWxvZy5cbiAgICogICAgICAgZGlhbG9nOiBQcm9wcy5pbnN0YW5jZU9mKERpYWxvZykuaXNSZXF1aXJlZFxuICAgKiAgICAgfSxcbiAgICogICAgIHJlbmRlcjogZnVuY3Rpb24oKSB7IC4uLiB9XG4gICAqICAgfSk7XG4gICAqXG4gICAqIEEgbW9yZSBmb3JtYWwgc3BlY2lmaWNhdGlvbiBvZiBob3cgdGhlc2UgbWV0aG9kcyBhcmUgdXNlZDpcbiAgICpcbiAgICogICB0eXBlIDo9IGFycmF5fGJvb2x8ZnVuY3xvYmplY3R8bnVtYmVyfHN0cmluZ3xvbmVPZihbLi4uXSl8aW5zdGFuY2VPZiguLi4pXG4gICAqICAgZGVjbCA6PSBSZWFjdFByb3BUeXBlcy57dHlwZX0oLmlzUmVxdWlyZWQpP1xuICAgKlxuICAgKiBFYWNoIGFuZCBldmVyeSBkZWNsYXJhdGlvbiBwcm9kdWNlcyBhIGZ1bmN0aW9uIHdpdGggdGhlIHNhbWUgc2lnbmF0dXJlLiBUaGlzXG4gICAqIGFsbG93cyB0aGUgY3JlYXRpb24gb2YgY3VzdG9tIHZhbGlkYXRpb24gZnVuY3Rpb25zLiBGb3IgZXhhbXBsZTpcbiAgICpcbiAgICogIHZhciBNeUxpbmsgPSBSZWFjdC5jcmVhdGVDbGFzcyh7XG4gICAqICAgIHByb3BUeXBlczoge1xuICAgKiAgICAgIC8vIEFuIG9wdGlvbmFsIHN0cmluZyBvciBVUkkgcHJvcCBuYW1lZCBcImhyZWZcIi5cbiAgICogICAgICBocmVmOiBmdW5jdGlvbihwcm9wcywgcHJvcE5hbWUsIGNvbXBvbmVudE5hbWUpIHtcbiAgICogICAgICAgIHZhciBwcm9wVmFsdWUgPSBwcm9wc1twcm9wTmFtZV07XG4gICAqICAgICAgICBpZiAocHJvcFZhbHVlICE9IG51bGwgJiYgdHlwZW9mIHByb3BWYWx1ZSAhPT0gJ3N0cmluZycgJiZcbiAgICogICAgICAgICAgICAhKHByb3BWYWx1ZSBpbnN0YW5jZW9mIFVSSSkpIHtcbiAgICogICAgICAgICAgcmV0dXJuIG5ldyBFcnJvcihcbiAgICogICAgICAgICAgICAnRXhwZWN0ZWQgYSBzdHJpbmcgb3IgYW4gVVJJIGZvciAnICsgcHJvcE5hbWUgKyAnIGluICcgK1xuICAgKiAgICAgICAgICAgIGNvbXBvbmVudE5hbWVcbiAgICogICAgICAgICAgKTtcbiAgICogICAgICAgIH1cbiAgICogICAgICB9XG4gICAqICAgIH0sXG4gICAqICAgIHJlbmRlcjogZnVuY3Rpb24oKSB7Li4ufVxuICAgKiAgfSk7XG4gICAqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cblxuICB2YXIgQU5PTllNT1VTID0gJzw8YW5vbnltb3VzPj4nO1xuXG4gIC8vIEltcG9ydGFudCFcbiAgLy8gS2VlcCB0aGlzIGxpc3QgaW4gc3luYyB3aXRoIHByb2R1Y3Rpb24gdmVyc2lvbiBpbiBgLi9mYWN0b3J5V2l0aFRocm93aW5nU2hpbXMuanNgLlxuICB2YXIgUmVhY3RQcm9wVHlwZXMgPSB7XG4gICAgYXJyYXk6IGNyZWF0ZVByaW1pdGl2ZVR5cGVDaGVja2VyKCdhcnJheScpLFxuICAgIGJvb2w6IGNyZWF0ZVByaW1pdGl2ZVR5cGVDaGVja2VyKCdib29sZWFuJyksXG4gICAgZnVuYzogY3JlYXRlUHJpbWl0aXZlVHlwZUNoZWNrZXIoJ2Z1bmN0aW9uJyksXG4gICAgbnVtYmVyOiBjcmVhdGVQcmltaXRpdmVUeXBlQ2hlY2tlcignbnVtYmVyJyksXG4gICAgb2JqZWN0OiBjcmVhdGVQcmltaXRpdmVUeXBlQ2hlY2tlcignb2JqZWN0JyksXG4gICAgc3RyaW5nOiBjcmVhdGVQcmltaXRpdmVUeXBlQ2hlY2tlcignc3RyaW5nJyksXG4gICAgc3ltYm9sOiBjcmVhdGVQcmltaXRpdmVUeXBlQ2hlY2tlcignc3ltYm9sJyksXG5cbiAgICBhbnk6IGNyZWF0ZUFueVR5cGVDaGVja2VyKCksXG4gICAgYXJyYXlPZjogY3JlYXRlQXJyYXlPZlR5cGVDaGVja2VyLFxuICAgIGVsZW1lbnQ6IGNyZWF0ZUVsZW1lbnRUeXBlQ2hlY2tlcigpLFxuICAgIGluc3RhbmNlT2Y6IGNyZWF0ZUluc3RhbmNlVHlwZUNoZWNrZXIsXG4gICAgbm9kZTogY3JlYXRlTm9kZUNoZWNrZXIoKSxcbiAgICBvYmplY3RPZjogY3JlYXRlT2JqZWN0T2ZUeXBlQ2hlY2tlcixcbiAgICBvbmVPZjogY3JlYXRlRW51bVR5cGVDaGVja2VyLFxuICAgIG9uZU9mVHlwZTogY3JlYXRlVW5pb25UeXBlQ2hlY2tlcixcbiAgICBzaGFwZTogY3JlYXRlU2hhcGVUeXBlQ2hlY2tlcixcbiAgICBleGFjdDogY3JlYXRlU3RyaWN0U2hhcGVUeXBlQ2hlY2tlcixcbiAgfTtcblxuICAvKipcbiAgICogaW5saW5lZCBPYmplY3QuaXMgcG9seWZpbGwgdG8gYXZvaWQgcmVxdWlyaW5nIGNvbnN1bWVycyBzaGlwIHRoZWlyIG93blxuICAgKiBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9PYmplY3QvaXNcbiAgICovXG4gIC8qZXNsaW50LWRpc2FibGUgbm8tc2VsZi1jb21wYXJlKi9cbiAgZnVuY3Rpb24gaXMoeCwgeSkge1xuICAgIC8vIFNhbWVWYWx1ZSBhbGdvcml0aG1cbiAgICBpZiAoeCA9PT0geSkge1xuICAgICAgLy8gU3RlcHMgMS01LCA3LTEwXG4gICAgICAvLyBTdGVwcyA2LmItNi5lOiArMCAhPSAtMFxuICAgICAgcmV0dXJuIHggIT09IDAgfHwgMSAvIHggPT09IDEgLyB5O1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBTdGVwIDYuYTogTmFOID09IE5hTlxuICAgICAgcmV0dXJuIHggIT09IHggJiYgeSAhPT0geTtcbiAgICB9XG4gIH1cbiAgLyplc2xpbnQtZW5hYmxlIG5vLXNlbGYtY29tcGFyZSovXG5cbiAgLyoqXG4gICAqIFdlIHVzZSBhbiBFcnJvci1saWtlIG9iamVjdCBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSBhcyBwZW9wbGUgbWF5IGNhbGxcbiAgICogUHJvcFR5cGVzIGRpcmVjdGx5IGFuZCBpbnNwZWN0IHRoZWlyIG91dHB1dC4gSG93ZXZlciwgd2UgZG9uJ3QgdXNlIHJlYWxcbiAgICogRXJyb3JzIGFueW1vcmUuIFdlIGRvbid0IGluc3BlY3QgdGhlaXIgc3RhY2sgYW55d2F5LCBhbmQgY3JlYXRpbmcgdGhlbVxuICAgKiBpcyBwcm9oaWJpdGl2ZWx5IGV4cGVuc2l2ZSBpZiB0aGV5IGFyZSBjcmVhdGVkIHRvbyBvZnRlbiwgc3VjaCBhcyB3aGF0XG4gICAqIGhhcHBlbnMgaW4gb25lT2ZUeXBlKCkgZm9yIGFueSB0eXBlIGJlZm9yZSB0aGUgb25lIHRoYXQgbWF0Y2hlZC5cbiAgICovXG4gIGZ1bmN0aW9uIFByb3BUeXBlRXJyb3IobWVzc2FnZSkge1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2U7XG4gICAgdGhpcy5zdGFjayA9ICcnO1xuICB9XG4gIC8vIE1ha2UgYGluc3RhbmNlb2YgRXJyb3JgIHN0aWxsIHdvcmsgZm9yIHJldHVybmVkIGVycm9ycy5cbiAgUHJvcFR5cGVFcnJvci5wcm90b3R5cGUgPSBFcnJvci5wcm90b3R5cGU7XG5cbiAgZnVuY3Rpb24gY3JlYXRlQ2hhaW5hYmxlVHlwZUNoZWNrZXIodmFsaWRhdGUpIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgdmFyIG1hbnVhbFByb3BUeXBlQ2FsbENhY2hlID0ge307XG4gICAgICB2YXIgbWFudWFsUHJvcFR5cGVXYXJuaW5nQ291bnQgPSAwO1xuICAgIH1cbiAgICBmdW5jdGlvbiBjaGVja1R5cGUoaXNSZXF1aXJlZCwgcHJvcHMsIHByb3BOYW1lLCBjb21wb25lbnROYW1lLCBsb2NhdGlvbiwgcHJvcEZ1bGxOYW1lLCBzZWNyZXQpIHtcbiAgICAgIGNvbXBvbmVudE5hbWUgPSBjb21wb25lbnROYW1lIHx8IEFOT05ZTU9VUztcbiAgICAgIHByb3BGdWxsTmFtZSA9IHByb3BGdWxsTmFtZSB8fCBwcm9wTmFtZTtcblxuICAgICAgaWYgKHNlY3JldCAhPT0gUmVhY3RQcm9wVHlwZXNTZWNyZXQpIHtcbiAgICAgICAgaWYgKHRocm93T25EaXJlY3RBY2Nlc3MpIHtcbiAgICAgICAgICAvLyBOZXcgYmVoYXZpb3Igb25seSBmb3IgdXNlcnMgb2YgYHByb3AtdHlwZXNgIHBhY2thZ2VcbiAgICAgICAgICBpbnZhcmlhbnQoXG4gICAgICAgICAgICBmYWxzZSxcbiAgICAgICAgICAgICdDYWxsaW5nIFByb3BUeXBlcyB2YWxpZGF0b3JzIGRpcmVjdGx5IGlzIG5vdCBzdXBwb3J0ZWQgYnkgdGhlIGBwcm9wLXR5cGVzYCBwYWNrYWdlLiAnICtcbiAgICAgICAgICAgICdVc2UgYFByb3BUeXBlcy5jaGVja1Byb3BUeXBlcygpYCB0byBjYWxsIHRoZW0uICcgK1xuICAgICAgICAgICAgJ1JlYWQgbW9yZSBhdCBodHRwOi8vZmIubWUvdXNlLWNoZWNrLXByb3AtdHlwZXMnXG4gICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIHR5cGVvZiBjb25zb2xlICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgIC8vIE9sZCBiZWhhdmlvciBmb3IgcGVvcGxlIHVzaW5nIFJlYWN0LlByb3BUeXBlc1xuICAgICAgICAgIHZhciBjYWNoZUtleSA9IGNvbXBvbmVudE5hbWUgKyAnOicgKyBwcm9wTmFtZTtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAhbWFudWFsUHJvcFR5cGVDYWxsQ2FjaGVbY2FjaGVLZXldICYmXG4gICAgICAgICAgICAvLyBBdm9pZCBzcGFtbWluZyB0aGUgY29uc29sZSBiZWNhdXNlIHRoZXkgYXJlIG9mdGVuIG5vdCBhY3Rpb25hYmxlIGV4Y2VwdCBmb3IgbGliIGF1dGhvcnNcbiAgICAgICAgICAgIG1hbnVhbFByb3BUeXBlV2FybmluZ0NvdW50IDwgM1xuICAgICAgICAgICkge1xuICAgICAgICAgICAgd2FybmluZyhcbiAgICAgICAgICAgICAgZmFsc2UsXG4gICAgICAgICAgICAgICdZb3UgYXJlIG1hbnVhbGx5IGNhbGxpbmcgYSBSZWFjdC5Qcm9wVHlwZXMgdmFsaWRhdGlvbiAnICtcbiAgICAgICAgICAgICAgJ2Z1bmN0aW9uIGZvciB0aGUgYCVzYCBwcm9wIG9uIGAlc2AuIFRoaXMgaXMgZGVwcmVjYXRlZCAnICtcbiAgICAgICAgICAgICAgJ2FuZCB3aWxsIHRocm93IGluIHRoZSBzdGFuZGFsb25lIGBwcm9wLXR5cGVzYCBwYWNrYWdlLiAnICtcbiAgICAgICAgICAgICAgJ1lvdSBtYXkgYmUgc2VlaW5nIHRoaXMgd2FybmluZyBkdWUgdG8gYSB0aGlyZC1wYXJ0eSBQcm9wVHlwZXMgJyArXG4gICAgICAgICAgICAgICdsaWJyYXJ5LiBTZWUgaHR0cHM6Ly9mYi5tZS9yZWFjdC13YXJuaW5nLWRvbnQtY2FsbC1wcm9wdHlwZXMgJyArICdmb3IgZGV0YWlscy4nLFxuICAgICAgICAgICAgICBwcm9wRnVsbE5hbWUsXG4gICAgICAgICAgICAgIGNvbXBvbmVudE5hbWVcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBtYW51YWxQcm9wVHlwZUNhbGxDYWNoZVtjYWNoZUtleV0gPSB0cnVlO1xuICAgICAgICAgICAgbWFudWFsUHJvcFR5cGVXYXJuaW5nQ291bnQrKztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmIChwcm9wc1twcm9wTmFtZV0gPT0gbnVsbCkge1xuICAgICAgICBpZiAoaXNSZXF1aXJlZCkge1xuICAgICAgICAgIGlmIChwcm9wc1twcm9wTmFtZV0gPT09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgUHJvcFR5cGVFcnJvcignVGhlICcgKyBsb2NhdGlvbiArICcgYCcgKyBwcm9wRnVsbE5hbWUgKyAnYCBpcyBtYXJrZWQgYXMgcmVxdWlyZWQgJyArICgnaW4gYCcgKyBjb21wb25lbnROYW1lICsgJ2AsIGJ1dCBpdHMgdmFsdWUgaXMgYG51bGxgLicpKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIG5ldyBQcm9wVHlwZUVycm9yKCdUaGUgJyArIGxvY2F0aW9uICsgJyBgJyArIHByb3BGdWxsTmFtZSArICdgIGlzIG1hcmtlZCBhcyByZXF1aXJlZCBpbiAnICsgKCdgJyArIGNvbXBvbmVudE5hbWUgKyAnYCwgYnV0IGl0cyB2YWx1ZSBpcyBgdW5kZWZpbmVkYC4nKSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdmFsaWRhdGUocHJvcHMsIHByb3BOYW1lLCBjb21wb25lbnROYW1lLCBsb2NhdGlvbiwgcHJvcEZ1bGxOYW1lKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB2YXIgY2hhaW5lZENoZWNrVHlwZSA9IGNoZWNrVHlwZS5iaW5kKG51bGwsIGZhbHNlKTtcbiAgICBjaGFpbmVkQ2hlY2tUeXBlLmlzUmVxdWlyZWQgPSBjaGVja1R5cGUuYmluZChudWxsLCB0cnVlKTtcblxuICAgIHJldHVybiBjaGFpbmVkQ2hlY2tUeXBlO1xuICB9XG5cbiAgZnVuY3Rpb24gY3JlYXRlUHJpbWl0aXZlVHlwZUNoZWNrZXIoZXhwZWN0ZWRUeXBlKSB7XG4gICAgZnVuY3Rpb24gdmFsaWRhdGUocHJvcHMsIHByb3BOYW1lLCBjb21wb25lbnROYW1lLCBsb2NhdGlvbiwgcHJvcEZ1bGxOYW1lLCBzZWNyZXQpIHtcbiAgICAgIHZhciBwcm9wVmFsdWUgPSBwcm9wc1twcm9wTmFtZV07XG4gICAgICB2YXIgcHJvcFR5cGUgPSBnZXRQcm9wVHlwZShwcm9wVmFsdWUpO1xuICAgICAgaWYgKHByb3BUeXBlICE9PSBleHBlY3RlZFR5cGUpIHtcbiAgICAgICAgLy8gYHByb3BWYWx1ZWAgYmVpbmcgaW5zdGFuY2Ugb2YsIHNheSwgZGF0ZS9yZWdleHAsIHBhc3MgdGhlICdvYmplY3QnXG4gICAgICAgIC8vIGNoZWNrLCBidXQgd2UgY2FuIG9mZmVyIGEgbW9yZSBwcmVjaXNlIGVycm9yIG1lc3NhZ2UgaGVyZSByYXRoZXIgdGhhblxuICAgICAgICAvLyAnb2YgdHlwZSBgb2JqZWN0YCcuXG4gICAgICAgIHZhciBwcmVjaXNlVHlwZSA9IGdldFByZWNpc2VUeXBlKHByb3BWYWx1ZSk7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBQcm9wVHlwZUVycm9yKCdJbnZhbGlkICcgKyBsb2NhdGlvbiArICcgYCcgKyBwcm9wRnVsbE5hbWUgKyAnYCBvZiB0eXBlICcgKyAoJ2AnICsgcHJlY2lzZVR5cGUgKyAnYCBzdXBwbGllZCB0byBgJyArIGNvbXBvbmVudE5hbWUgKyAnYCwgZXhwZWN0ZWQgJykgKyAoJ2AnICsgZXhwZWN0ZWRUeXBlICsgJ2AuJykpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHJldHVybiBjcmVhdGVDaGFpbmFibGVUeXBlQ2hlY2tlcih2YWxpZGF0ZSk7XG4gIH1cblxuICBmdW5jdGlvbiBjcmVhdGVBbnlUeXBlQ2hlY2tlcigpIHtcbiAgICByZXR1cm4gY3JlYXRlQ2hhaW5hYmxlVHlwZUNoZWNrZXIoZW1wdHlGdW5jdGlvbi50aGF0UmV0dXJuc051bGwpO1xuICB9XG5cbiAgZnVuY3Rpb24gY3JlYXRlQXJyYXlPZlR5cGVDaGVja2VyKHR5cGVDaGVja2VyKSB7XG4gICAgZnVuY3Rpb24gdmFsaWRhdGUocHJvcHMsIHByb3BOYW1lLCBjb21wb25lbnROYW1lLCBsb2NhdGlvbiwgcHJvcEZ1bGxOYW1lKSB7XG4gICAgICBpZiAodHlwZW9mIHR5cGVDaGVja2VyICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvcFR5cGVFcnJvcignUHJvcGVydHkgYCcgKyBwcm9wRnVsbE5hbWUgKyAnYCBvZiBjb21wb25lbnQgYCcgKyBjb21wb25lbnROYW1lICsgJ2AgaGFzIGludmFsaWQgUHJvcFR5cGUgbm90YXRpb24gaW5zaWRlIGFycmF5T2YuJyk7XG4gICAgICB9XG4gICAgICB2YXIgcHJvcFZhbHVlID0gcHJvcHNbcHJvcE5hbWVdO1xuICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHByb3BWYWx1ZSkpIHtcbiAgICAgICAgdmFyIHByb3BUeXBlID0gZ2V0UHJvcFR5cGUocHJvcFZhbHVlKTtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9wVHlwZUVycm9yKCdJbnZhbGlkICcgKyBsb2NhdGlvbiArICcgYCcgKyBwcm9wRnVsbE5hbWUgKyAnYCBvZiB0eXBlICcgKyAoJ2AnICsgcHJvcFR5cGUgKyAnYCBzdXBwbGllZCB0byBgJyArIGNvbXBvbmVudE5hbWUgKyAnYCwgZXhwZWN0ZWQgYW4gYXJyYXkuJykpO1xuICAgICAgfVxuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9wVmFsdWUubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgdmFyIGVycm9yID0gdHlwZUNoZWNrZXIocHJvcFZhbHVlLCBpLCBjb21wb25lbnROYW1lLCBsb2NhdGlvbiwgcHJvcEZ1bGxOYW1lICsgJ1snICsgaSArICddJywgUmVhY3RQcm9wVHlwZXNTZWNyZXQpO1xuICAgICAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgIHJldHVybiBlcnJvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHJldHVybiBjcmVhdGVDaGFpbmFibGVUeXBlQ2hlY2tlcih2YWxpZGF0ZSk7XG4gIH1cblxuICBmdW5jdGlvbiBjcmVhdGVFbGVtZW50VHlwZUNoZWNrZXIoKSB7XG4gICAgZnVuY3Rpb24gdmFsaWRhdGUocHJvcHMsIHByb3BOYW1lLCBjb21wb25lbnROYW1lLCBsb2NhdGlvbiwgcHJvcEZ1bGxOYW1lKSB7XG4gICAgICB2YXIgcHJvcFZhbHVlID0gcHJvcHNbcHJvcE5hbWVdO1xuICAgICAgaWYgKCFpc1ZhbGlkRWxlbWVudChwcm9wVmFsdWUpKSB7XG4gICAgICAgIHZhciBwcm9wVHlwZSA9IGdldFByb3BUeXBlKHByb3BWYWx1ZSk7XG4gICAgICAgIHJldHVybiBuZXcgUHJvcFR5cGVFcnJvcignSW52YWxpZCAnICsgbG9jYXRpb24gKyAnIGAnICsgcHJvcEZ1bGxOYW1lICsgJ2Agb2YgdHlwZSAnICsgKCdgJyArIHByb3BUeXBlICsgJ2Agc3VwcGxpZWQgdG8gYCcgKyBjb21wb25lbnROYW1lICsgJ2AsIGV4cGVjdGVkIGEgc2luZ2xlIFJlYWN0RWxlbWVudC4nKSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIGNyZWF0ZUNoYWluYWJsZVR5cGVDaGVja2VyKHZhbGlkYXRlKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGNyZWF0ZUluc3RhbmNlVHlwZUNoZWNrZXIoZXhwZWN0ZWRDbGFzcykge1xuICAgIGZ1bmN0aW9uIHZhbGlkYXRlKHByb3BzLCBwcm9wTmFtZSwgY29tcG9uZW50TmFtZSwgbG9jYXRpb24sIHByb3BGdWxsTmFtZSkge1xuICAgICAgaWYgKCEocHJvcHNbcHJvcE5hbWVdIGluc3RhbmNlb2YgZXhwZWN0ZWRDbGFzcykpIHtcbiAgICAgICAgdmFyIGV4cGVjdGVkQ2xhc3NOYW1lID0gZXhwZWN0ZWRDbGFzcy5uYW1lIHx8IEFOT05ZTU9VUztcbiAgICAgICAgdmFyIGFjdHVhbENsYXNzTmFtZSA9IGdldENsYXNzTmFtZShwcm9wc1twcm9wTmFtZV0pO1xuICAgICAgICByZXR1cm4gbmV3IFByb3BUeXBlRXJyb3IoJ0ludmFsaWQgJyArIGxvY2F0aW9uICsgJyBgJyArIHByb3BGdWxsTmFtZSArICdgIG9mIHR5cGUgJyArICgnYCcgKyBhY3R1YWxDbGFzc05hbWUgKyAnYCBzdXBwbGllZCB0byBgJyArIGNvbXBvbmVudE5hbWUgKyAnYCwgZXhwZWN0ZWQgJykgKyAoJ2luc3RhbmNlIG9mIGAnICsgZXhwZWN0ZWRDbGFzc05hbWUgKyAnYC4nKSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIGNyZWF0ZUNoYWluYWJsZVR5cGVDaGVja2VyKHZhbGlkYXRlKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGNyZWF0ZUVudW1UeXBlQ2hlY2tlcihleHBlY3RlZFZhbHVlcykge1xuICAgIGlmICghQXJyYXkuaXNBcnJheShleHBlY3RlZFZhbHVlcykpIHtcbiAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgPyB3YXJuaW5nKGZhbHNlLCAnSW52YWxpZCBhcmd1bWVudCBzdXBwbGllZCB0byBvbmVPZiwgZXhwZWN0ZWQgYW4gaW5zdGFuY2Ugb2YgYXJyYXkuJykgOiB2b2lkIDA7XG4gICAgICByZXR1cm4gZW1wdHlGdW5jdGlvbi50aGF0UmV0dXJuc051bGw7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gdmFsaWRhdGUocHJvcHMsIHByb3BOYW1lLCBjb21wb25lbnROYW1lLCBsb2NhdGlvbiwgcHJvcEZ1bGxOYW1lKSB7XG4gICAgICB2YXIgcHJvcFZhbHVlID0gcHJvcHNbcHJvcE5hbWVdO1xuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBleHBlY3RlZFZhbHVlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBpZiAoaXMocHJvcFZhbHVlLCBleHBlY3RlZFZhbHVlc1tpXSkpIHtcbiAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB2YXIgdmFsdWVzU3RyaW5nID0gSlNPTi5zdHJpbmdpZnkoZXhwZWN0ZWRWYWx1ZXMpO1xuICAgICAgcmV0dXJuIG5ldyBQcm9wVHlwZUVycm9yKCdJbnZhbGlkICcgKyBsb2NhdGlvbiArICcgYCcgKyBwcm9wRnVsbE5hbWUgKyAnYCBvZiB2YWx1ZSBgJyArIHByb3BWYWx1ZSArICdgICcgKyAoJ3N1cHBsaWVkIHRvIGAnICsgY29tcG9uZW50TmFtZSArICdgLCBleHBlY3RlZCBvbmUgb2YgJyArIHZhbHVlc1N0cmluZyArICcuJykpO1xuICAgIH1cbiAgICByZXR1cm4gY3JlYXRlQ2hhaW5hYmxlVHlwZUNoZWNrZXIodmFsaWRhdGUpO1xuICB9XG5cbiAgZnVuY3Rpb24gY3JlYXRlT2JqZWN0T2ZUeXBlQ2hlY2tlcih0eXBlQ2hlY2tlcikge1xuICAgIGZ1bmN0aW9uIHZhbGlkYXRlKHByb3BzLCBwcm9wTmFtZSwgY29tcG9uZW50TmFtZSwgbG9jYXRpb24sIHByb3BGdWxsTmFtZSkge1xuICAgICAgaWYgKHR5cGVvZiB0eXBlQ2hlY2tlciAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICByZXR1cm4gbmV3IFByb3BUeXBlRXJyb3IoJ1Byb3BlcnR5IGAnICsgcHJvcEZ1bGxOYW1lICsgJ2Agb2YgY29tcG9uZW50IGAnICsgY29tcG9uZW50TmFtZSArICdgIGhhcyBpbnZhbGlkIFByb3BUeXBlIG5vdGF0aW9uIGluc2lkZSBvYmplY3RPZi4nKTtcbiAgICAgIH1cbiAgICAgIHZhciBwcm9wVmFsdWUgPSBwcm9wc1twcm9wTmFtZV07XG4gICAgICB2YXIgcHJvcFR5cGUgPSBnZXRQcm9wVHlwZShwcm9wVmFsdWUpO1xuICAgICAgaWYgKHByb3BUeXBlICE9PSAnb2JqZWN0Jykge1xuICAgICAgICByZXR1cm4gbmV3IFByb3BUeXBlRXJyb3IoJ0ludmFsaWQgJyArIGxvY2F0aW9uICsgJyBgJyArIHByb3BGdWxsTmFtZSArICdgIG9mIHR5cGUgJyArICgnYCcgKyBwcm9wVHlwZSArICdgIHN1cHBsaWVkIHRvIGAnICsgY29tcG9uZW50TmFtZSArICdgLCBleHBlY3RlZCBhbiBvYmplY3QuJykpO1xuICAgICAgfVxuICAgICAgZm9yICh2YXIga2V5IGluIHByb3BWYWx1ZSkge1xuICAgICAgICBpZiAocHJvcFZhbHVlLmhhc093blByb3BlcnR5KGtleSkpIHtcbiAgICAgICAgICB2YXIgZXJyb3IgPSB0eXBlQ2hlY2tlcihwcm9wVmFsdWUsIGtleSwgY29tcG9uZW50TmFtZSwgbG9jYXRpb24sIHByb3BGdWxsTmFtZSArICcuJyArIGtleSwgUmVhY3RQcm9wVHlwZXNTZWNyZXQpO1xuICAgICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgICAgICByZXR1cm4gZXJyb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIGNyZWF0ZUNoYWluYWJsZVR5cGVDaGVja2VyKHZhbGlkYXRlKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGNyZWF0ZVVuaW9uVHlwZUNoZWNrZXIoYXJyYXlPZlR5cGVDaGVja2Vycykge1xuICAgIGlmICghQXJyYXkuaXNBcnJheShhcnJheU9mVHlwZUNoZWNrZXJzKSkge1xuICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyA/IHdhcm5pbmcoZmFsc2UsICdJbnZhbGlkIGFyZ3VtZW50IHN1cHBsaWVkIHRvIG9uZU9mVHlwZSwgZXhwZWN0ZWQgYW4gaW5zdGFuY2Ugb2YgYXJyYXkuJykgOiB2b2lkIDA7XG4gICAgICByZXR1cm4gZW1wdHlGdW5jdGlvbi50aGF0UmV0dXJuc051bGw7XG4gICAgfVxuXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhcnJheU9mVHlwZUNoZWNrZXJzLmxlbmd0aDsgaSsrKSB7XG4gICAgICB2YXIgY2hlY2tlciA9IGFycmF5T2ZUeXBlQ2hlY2tlcnNbaV07XG4gICAgICBpZiAodHlwZW9mIGNoZWNrZXIgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgd2FybmluZyhcbiAgICAgICAgICBmYWxzZSxcbiAgICAgICAgICAnSW52YWxpZCBhcmd1bWVudCBzdXBwbGllZCB0byBvbmVPZlR5cGUuIEV4cGVjdGVkIGFuIGFycmF5IG9mIGNoZWNrIGZ1bmN0aW9ucywgYnV0ICcgK1xuICAgICAgICAgICdyZWNlaXZlZCAlcyBhdCBpbmRleCAlcy4nLFxuICAgICAgICAgIGdldFBvc3RmaXhGb3JUeXBlV2FybmluZyhjaGVja2VyKSxcbiAgICAgICAgICBpXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiBlbXB0eUZ1bmN0aW9uLnRoYXRSZXR1cm5zTnVsbDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiB2YWxpZGF0ZShwcm9wcywgcHJvcE5hbWUsIGNvbXBvbmVudE5hbWUsIGxvY2F0aW9uLCBwcm9wRnVsbE5hbWUpIHtcbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYXJyYXlPZlR5cGVDaGVja2Vycy5sZW5ndGg7IGkrKykge1xuICAgICAgICB2YXIgY2hlY2tlciA9IGFycmF5T2ZUeXBlQ2hlY2tlcnNbaV07XG4gICAgICAgIGlmIChjaGVja2VyKHByb3BzLCBwcm9wTmFtZSwgY29tcG9uZW50TmFtZSwgbG9jYXRpb24sIHByb3BGdWxsTmFtZSwgUmVhY3RQcm9wVHlwZXNTZWNyZXQpID09IG51bGwpIHtcbiAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbmV3IFByb3BUeXBlRXJyb3IoJ0ludmFsaWQgJyArIGxvY2F0aW9uICsgJyBgJyArIHByb3BGdWxsTmFtZSArICdgIHN1cHBsaWVkIHRvICcgKyAoJ2AnICsgY29tcG9uZW50TmFtZSArICdgLicpKTtcbiAgICB9XG4gICAgcmV0dXJuIGNyZWF0ZUNoYWluYWJsZVR5cGVDaGVja2VyKHZhbGlkYXRlKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGNyZWF0ZU5vZGVDaGVja2VyKCkge1xuICAgIGZ1bmN0aW9uIHZhbGlkYXRlKHByb3BzLCBwcm9wTmFtZSwgY29tcG9uZW50TmFtZSwgbG9jYXRpb24sIHByb3BGdWxsTmFtZSkge1xuICAgICAgaWYgKCFpc05vZGUocHJvcHNbcHJvcE5hbWVdKSkge1xuICAgICAgICByZXR1cm4gbmV3IFByb3BUeXBlRXJyb3IoJ0ludmFsaWQgJyArIGxvY2F0aW9uICsgJyBgJyArIHByb3BGdWxsTmFtZSArICdgIHN1cHBsaWVkIHRvICcgKyAoJ2AnICsgY29tcG9uZW50TmFtZSArICdgLCBleHBlY3RlZCBhIFJlYWN0Tm9kZS4nKSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIGNyZWF0ZUNoYWluYWJsZVR5cGVDaGVja2VyKHZhbGlkYXRlKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGNyZWF0ZVNoYXBlVHlwZUNoZWNrZXIoc2hhcGVUeXBlcykge1xuICAgIGZ1bmN0aW9uIHZhbGlkYXRlKHByb3BzLCBwcm9wTmFtZSwgY29tcG9uZW50TmFtZSwgbG9jYXRpb24sIHByb3BGdWxsTmFtZSkge1xuICAgICAgdmFyIHByb3BWYWx1ZSA9IHByb3BzW3Byb3BOYW1lXTtcbiAgICAgIHZhciBwcm9wVHlwZSA9IGdldFByb3BUeXBlKHByb3BWYWx1ZSk7XG4gICAgICBpZiAocHJvcFR5cGUgIT09ICdvYmplY3QnKSB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvcFR5cGVFcnJvcignSW52YWxpZCAnICsgbG9jYXRpb24gKyAnIGAnICsgcHJvcEZ1bGxOYW1lICsgJ2Agb2YgdHlwZSBgJyArIHByb3BUeXBlICsgJ2AgJyArICgnc3VwcGxpZWQgdG8gYCcgKyBjb21wb25lbnROYW1lICsgJ2AsIGV4cGVjdGVkIGBvYmplY3RgLicpKTtcbiAgICAgIH1cbiAgICAgIGZvciAodmFyIGtleSBpbiBzaGFwZVR5cGVzKSB7XG4gICAgICAgIHZhciBjaGVja2VyID0gc2hhcGVUeXBlc1trZXldO1xuICAgICAgICBpZiAoIWNoZWNrZXIpIHtcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgICB2YXIgZXJyb3IgPSBjaGVja2VyKHByb3BWYWx1ZSwga2V5LCBjb21wb25lbnROYW1lLCBsb2NhdGlvbiwgcHJvcEZ1bGxOYW1lICsgJy4nICsga2V5LCBSZWFjdFByb3BUeXBlc1NlY3JldCk7XG4gICAgICAgIGlmIChlcnJvcikge1xuICAgICAgICAgIHJldHVybiBlcnJvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHJldHVybiBjcmVhdGVDaGFpbmFibGVUeXBlQ2hlY2tlcih2YWxpZGF0ZSk7XG4gIH1cblxuICBmdW5jdGlvbiBjcmVhdGVTdHJpY3RTaGFwZVR5cGVDaGVja2VyKHNoYXBlVHlwZXMpIHtcbiAgICBmdW5jdGlvbiB2YWxpZGF0ZShwcm9wcywgcHJvcE5hbWUsIGNvbXBvbmVudE5hbWUsIGxvY2F0aW9uLCBwcm9wRnVsbE5hbWUpIHtcbiAgICAgIHZhciBwcm9wVmFsdWUgPSBwcm9wc1twcm9wTmFtZV07XG4gICAgICB2YXIgcHJvcFR5cGUgPSBnZXRQcm9wVHlwZShwcm9wVmFsdWUpO1xuICAgICAgaWYgKHByb3BUeXBlICE9PSAnb2JqZWN0Jykge1xuICAgICAgICByZXR1cm4gbmV3IFByb3BUeXBlRXJyb3IoJ0ludmFsaWQgJyArIGxvY2F0aW9uICsgJyBgJyArIHByb3BGdWxsTmFtZSArICdgIG9mIHR5cGUgYCcgKyBwcm9wVHlwZSArICdgICcgKyAoJ3N1cHBsaWVkIHRvIGAnICsgY29tcG9uZW50TmFtZSArICdgLCBleHBlY3RlZCBgb2JqZWN0YC4nKSk7XG4gICAgICB9XG4gICAgICAvLyBXZSBuZWVkIHRvIGNoZWNrIGFsbCBrZXlzIGluIGNhc2Ugc29tZSBhcmUgcmVxdWlyZWQgYnV0IG1pc3NpbmcgZnJvbVxuICAgICAgLy8gcHJvcHMuXG4gICAgICB2YXIgYWxsS2V5cyA9IGFzc2lnbih7fSwgcHJvcHNbcHJvcE5hbWVdLCBzaGFwZVR5cGVzKTtcbiAgICAgIGZvciAodmFyIGtleSBpbiBhbGxLZXlzKSB7XG4gICAgICAgIHZhciBjaGVja2VyID0gc2hhcGVUeXBlc1trZXldO1xuICAgICAgICBpZiAoIWNoZWNrZXIpIHtcbiAgICAgICAgICByZXR1cm4gbmV3IFByb3BUeXBlRXJyb3IoXG4gICAgICAgICAgICAnSW52YWxpZCAnICsgbG9jYXRpb24gKyAnIGAnICsgcHJvcEZ1bGxOYW1lICsgJ2Aga2V5IGAnICsga2V5ICsgJ2Agc3VwcGxpZWQgdG8gYCcgKyBjb21wb25lbnROYW1lICsgJ2AuJyArXG4gICAgICAgICAgICAnXFxuQmFkIG9iamVjdDogJyArIEpTT04uc3RyaW5naWZ5KHByb3BzW3Byb3BOYW1lXSwgbnVsbCwgJyAgJykgK1xuICAgICAgICAgICAgJ1xcblZhbGlkIGtleXM6ICcgKyAgSlNPTi5zdHJpbmdpZnkoT2JqZWN0LmtleXMoc2hhcGVUeXBlcyksIG51bGwsICcgICcpXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICB2YXIgZXJyb3IgPSBjaGVja2VyKHByb3BWYWx1ZSwga2V5LCBjb21wb25lbnROYW1lLCBsb2NhdGlvbiwgcHJvcEZ1bGxOYW1lICsgJy4nICsga2V5LCBSZWFjdFByb3BUeXBlc1NlY3JldCk7XG4gICAgICAgIGlmIChlcnJvcikge1xuICAgICAgICAgIHJldHVybiBlcnJvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNyZWF0ZUNoYWluYWJsZVR5cGVDaGVja2VyKHZhbGlkYXRlKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGlzTm9kZShwcm9wVmFsdWUpIHtcbiAgICBzd2l0Y2ggKHR5cGVvZiBwcm9wVmFsdWUpIHtcbiAgICAgIGNhc2UgJ251bWJlcic6XG4gICAgICBjYXNlICdzdHJpbmcnOlxuICAgICAgY2FzZSAndW5kZWZpbmVkJzpcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICBjYXNlICdib29sZWFuJzpcbiAgICAgICAgcmV0dXJuICFwcm9wVmFsdWU7XG4gICAgICBjYXNlICdvYmplY3QnOlxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShwcm9wVmFsdWUpKSB7XG4gICAgICAgICAgcmV0dXJuIHByb3BWYWx1ZS5ldmVyeShpc05vZGUpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChwcm9wVmFsdWUgPT09IG51bGwgfHwgaXNWYWxpZEVsZW1lbnQocHJvcFZhbHVlKSkge1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgdmFyIGl0ZXJhdG9yRm4gPSBnZXRJdGVyYXRvckZuKHByb3BWYWx1ZSk7XG4gICAgICAgIGlmIChpdGVyYXRvckZuKSB7XG4gICAgICAgICAgdmFyIGl0ZXJhdG9yID0gaXRlcmF0b3JGbi5jYWxsKHByb3BWYWx1ZSk7XG4gICAgICAgICAgdmFyIHN0ZXA7XG4gICAgICAgICAgaWYgKGl0ZXJhdG9yRm4gIT09IHByb3BWYWx1ZS5lbnRyaWVzKSB7XG4gICAgICAgICAgICB3aGlsZSAoIShzdGVwID0gaXRlcmF0b3IubmV4dCgpKS5kb25lKSB7XG4gICAgICAgICAgICAgIGlmICghaXNOb2RlKHN0ZXAudmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIEl0ZXJhdG9yIHdpbGwgcHJvdmlkZSBlbnRyeSBbayx2XSB0dXBsZXMgcmF0aGVyIHRoYW4gdmFsdWVzLlxuICAgICAgICAgICAgd2hpbGUgKCEoc3RlcCA9IGl0ZXJhdG9yLm5leHQoKSkuZG9uZSkge1xuICAgICAgICAgICAgICB2YXIgZW50cnkgPSBzdGVwLnZhbHVlO1xuICAgICAgICAgICAgICBpZiAoZW50cnkpIHtcbiAgICAgICAgICAgICAgICBpZiAoIWlzTm9kZShlbnRyeVsxXSkpIHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgZnVuY3Rpb24gaXNTeW1ib2wocHJvcFR5cGUsIHByb3BWYWx1ZSkge1xuICAgIC8vIE5hdGl2ZSBTeW1ib2wuXG4gICAgaWYgKHByb3BUeXBlID09PSAnc3ltYm9sJykge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgLy8gMTkuNC4zLjUgU3ltYm9sLnByb3RvdHlwZVtAQHRvU3RyaW5nVGFnXSA9PT0gJ1N5bWJvbCdcbiAgICBpZiAocHJvcFZhbHVlWydAQHRvU3RyaW5nVGFnJ10gPT09ICdTeW1ib2wnKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyBGYWxsYmFjayBmb3Igbm9uLXNwZWMgY29tcGxpYW50IFN5bWJvbHMgd2hpY2ggYXJlIHBvbHlmaWxsZWQuXG4gICAgaWYgKHR5cGVvZiBTeW1ib2wgPT09ICdmdW5jdGlvbicgJiYgcHJvcFZhbHVlIGluc3RhbmNlb2YgU3ltYm9sKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICAvLyBFcXVpdmFsZW50IG9mIGB0eXBlb2ZgIGJ1dCB3aXRoIHNwZWNpYWwgaGFuZGxpbmcgZm9yIGFycmF5IGFuZCByZWdleHAuXG4gIGZ1bmN0aW9uIGdldFByb3BUeXBlKHByb3BWYWx1ZSkge1xuICAgIHZhciBwcm9wVHlwZSA9IHR5cGVvZiBwcm9wVmFsdWU7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkocHJvcFZhbHVlKSkge1xuICAgICAgcmV0dXJuICdhcnJheSc7XG4gICAgfVxuICAgIGlmIChwcm9wVmFsdWUgaW5zdGFuY2VvZiBSZWdFeHApIHtcbiAgICAgIC8vIE9sZCB3ZWJraXRzIChhdCBsZWFzdCB1bnRpbCBBbmRyb2lkIDQuMCkgcmV0dXJuICdmdW5jdGlvbicgcmF0aGVyIHRoYW5cbiAgICAgIC8vICdvYmplY3QnIGZvciB0eXBlb2YgYSBSZWdFeHAuIFdlJ2xsIG5vcm1hbGl6ZSB0aGlzIGhlcmUgc28gdGhhdCAvYmxhL1xuICAgICAgLy8gcGFzc2VzIFByb3BUeXBlcy5vYmplY3QuXG4gICAgICByZXR1cm4gJ29iamVjdCc7XG4gICAgfVxuICAgIGlmIChpc1N5bWJvbChwcm9wVHlwZSwgcHJvcFZhbHVlKSkge1xuICAgICAgcmV0dXJuICdzeW1ib2wnO1xuICAgIH1cbiAgICByZXR1cm4gcHJvcFR5cGU7XG4gIH1cblxuICAvLyBUaGlzIGhhbmRsZXMgbW9yZSB0eXBlcyB0aGFuIGBnZXRQcm9wVHlwZWAuIE9ubHkgdXNlZCBmb3IgZXJyb3IgbWVzc2FnZXMuXG4gIC8vIFNlZSBgY3JlYXRlUHJpbWl0aXZlVHlwZUNoZWNrZXJgLlxuICBmdW5jdGlvbiBnZXRQcmVjaXNlVHlwZShwcm9wVmFsdWUpIHtcbiAgICBpZiAodHlwZW9mIHByb3BWYWx1ZSA9PT0gJ3VuZGVmaW5lZCcgfHwgcHJvcFZhbHVlID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gJycgKyBwcm9wVmFsdWU7XG4gICAgfVxuICAgIHZhciBwcm9wVHlwZSA9IGdldFByb3BUeXBlKHByb3BWYWx1ZSk7XG4gICAgaWYgKHByb3BUeXBlID09PSAnb2JqZWN0Jykge1xuICAgICAgaWYgKHByb3BWYWx1ZSBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICAgICAgcmV0dXJuICdkYXRlJztcbiAgICAgIH0gZWxzZSBpZiAocHJvcFZhbHVlIGluc3RhbmNlb2YgUmVnRXhwKSB7XG4gICAgICAgIHJldHVybiAncmVnZXhwJztcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHByb3BUeXBlO1xuICB9XG5cbiAgLy8gUmV0dXJucyBhIHN0cmluZyB0aGF0IGlzIHBvc3RmaXhlZCB0byBhIHdhcm5pbmcgYWJvdXQgYW4gaW52YWxpZCB0eXBlLlxuICAvLyBGb3IgZXhhbXBsZSwgXCJ1bmRlZmluZWRcIiBvciBcIm9mIHR5cGUgYXJyYXlcIlxuICBmdW5jdGlvbiBnZXRQb3N0Zml4Rm9yVHlwZVdhcm5pbmcodmFsdWUpIHtcbiAgICB2YXIgdHlwZSA9IGdldFByZWNpc2VUeXBlKHZhbHVlKTtcbiAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgIGNhc2UgJ2FycmF5JzpcbiAgICAgIGNhc2UgJ29iamVjdCc6XG4gICAgICAgIHJldHVybiAnYW4gJyArIHR5cGU7XG4gICAgICBjYXNlICdib29sZWFuJzpcbiAgICAgIGNhc2UgJ2RhdGUnOlxuICAgICAgY2FzZSAncmVnZXhwJzpcbiAgICAgICAgcmV0dXJuICdhICcgKyB0eXBlO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIHR5cGU7XG4gICAgfVxuICB9XG5cbiAgLy8gUmV0dXJucyBjbGFzcyBuYW1lIG9mIHRoZSBvYmplY3QsIGlmIGFueS5cbiAgZnVuY3Rpb24gZ2V0Q2xhc3NOYW1lKHByb3BWYWx1ZSkge1xuICAgIGlmICghcHJvcFZhbHVlLmNvbnN0cnVjdG9yIHx8ICFwcm9wVmFsdWUuY29uc3RydWN0b3IubmFtZSkge1xuICAgICAgcmV0dXJuIEFOT05ZTU9VUztcbiAgICB9XG4gICAgcmV0dXJuIHByb3BWYWx1ZS5jb25zdHJ1Y3Rvci5uYW1lO1xuICB9XG5cbiAgUmVhY3RQcm9wVHlwZXMuY2hlY2tQcm9wVHlwZXMgPSBjaGVja1Byb3BUeXBlcztcbiAgUmVhY3RQcm9wVHlwZXMuUHJvcFR5cGVzID0gUmVhY3RQcm9wVHlwZXM7XG5cbiAgcmV0dXJuIFJlYWN0UHJvcFR5cGVzO1xufTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL3Byb3AtdHlwZXMvZmFjdG9yeVdpdGhUeXBlQ2hlY2tlcnMuanNcbi8vIG1vZHVsZSBpZCA9IDMyXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///32\n");
+
+/***/ }),
+/* 33 */
+/*!***************************************************!*\
+ !*** ./node_modules/prop-types/checkPropTypes.js ***!
+ \***************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+eval("/* WEBPACK VAR INJECTION */(function(process) {/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\n\nif (process.env.NODE_ENV !== 'production') {\n var invariant = __webpack_require__(/*! fbjs/lib/invariant */ 2);\n var warning = __webpack_require__(/*! fbjs/lib/warning */ 1);\n var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ 17);\n var loggedTypeFailures = {};\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n if (process.env.NODE_ENV !== 'production') {\n for (var typeSpecName in typeSpecs) {\n if (typeSpecs.hasOwnProperty(typeSpecName)) {\n var error;\n // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n invariant(typeof typeSpecs[typeSpecName] === 'function', '%s: %s type `%s` is invalid; it must be a function, usually from ' + 'the `prop-types` package, but received `%s`.', componentName || 'React class', location, typeSpecName, typeof typeSpecs[typeSpecName]);\n error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n } catch (ex) {\n error = ex;\n }\n warning(!error || error instanceof Error, '%s: type specification of %s `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error);\n if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error.message] = true;\n\n var stack = getStack ? getStack() : '';\n\n warning(false, 'Failed %s type: %s%s', location, error.message, stack != null ? stack : '');\n }\n }\n }\n }\n}\n\nmodule.exports = checkPropTypes;\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(/*! ./../process/browser.js */ 0)))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMzMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcHJvcC10eXBlcy9jaGVja1Byb3BUeXBlcy5qcz8yMWVlIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDEzLXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4gKi9cblxuJ3VzZSBzdHJpY3QnO1xuXG5pZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICB2YXIgaW52YXJpYW50ID0gcmVxdWlyZSgnZmJqcy9saWIvaW52YXJpYW50Jyk7XG4gIHZhciB3YXJuaW5nID0gcmVxdWlyZSgnZmJqcy9saWIvd2FybmluZycpO1xuICB2YXIgUmVhY3RQcm9wVHlwZXNTZWNyZXQgPSByZXF1aXJlKCcuL2xpYi9SZWFjdFByb3BUeXBlc1NlY3JldCcpO1xuICB2YXIgbG9nZ2VkVHlwZUZhaWx1cmVzID0ge307XG59XG5cbi8qKlxuICogQXNzZXJ0IHRoYXQgdGhlIHZhbHVlcyBtYXRjaCB3aXRoIHRoZSB0eXBlIHNwZWNzLlxuICogRXJyb3IgbWVzc2FnZXMgYXJlIG1lbW9yaXplZCBhbmQgd2lsbCBvbmx5IGJlIHNob3duIG9uY2UuXG4gKlxuICogQHBhcmFtIHtvYmplY3R9IHR5cGVTcGVjcyBNYXAgb2YgbmFtZSB0byBhIFJlYWN0UHJvcFR5cGVcbiAqIEBwYXJhbSB7b2JqZWN0fSB2YWx1ZXMgUnVudGltZSB2YWx1ZXMgdGhhdCBuZWVkIHRvIGJlIHR5cGUtY2hlY2tlZFxuICogQHBhcmFtIHtzdHJpbmd9IGxvY2F0aW9uIGUuZy4gXCJwcm9wXCIsIFwiY29udGV4dFwiLCBcImNoaWxkIGNvbnRleHRcIlxuICogQHBhcmFtIHtzdHJpbmd9IGNvbXBvbmVudE5hbWUgTmFtZSBvZiB0aGUgY29tcG9uZW50IGZvciBlcnJvciBtZXNzYWdlcy5cbiAqIEBwYXJhbSB7P0Z1bmN0aW9ufSBnZXRTdGFjayBSZXR1cm5zIHRoZSBjb21wb25lbnQgc3RhY2suXG4gKiBAcHJpdmF0ZVxuICovXG5mdW5jdGlvbiBjaGVja1Byb3BUeXBlcyh0eXBlU3BlY3MsIHZhbHVlcywgbG9jYXRpb24sIGNvbXBvbmVudE5hbWUsIGdldFN0YWNrKSB7XG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgZm9yICh2YXIgdHlwZVNwZWNOYW1lIGluIHR5cGVTcGVjcykge1xuICAgICAgaWYgKHR5cGVTcGVjcy5oYXNPd25Qcm9wZXJ0eSh0eXBlU3BlY05hbWUpKSB7XG4gICAgICAgIHZhciBlcnJvcjtcbiAgICAgICAgLy8gUHJvcCB0eXBlIHZhbGlkYXRpb24gbWF5IHRocm93LiBJbiBjYXNlIHRoZXkgZG8sIHdlIGRvbid0IHdhbnQgdG9cbiAgICAgICAgLy8gZmFpbCB0aGUgcmVuZGVyIHBoYXNlIHdoZXJlIGl0IGRpZG4ndCBmYWlsIGJlZm9yZS4gU28gd2UgbG9nIGl0LlxuICAgICAgICAvLyBBZnRlciB0aGVzZSBoYXZlIGJlZW4gY2xlYW5lZCB1cCwgd2UnbGwgbGV0IHRoZW0gdGhyb3cuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgLy8gVGhpcyBpcyBpbnRlbnRpb25hbGx5IGFuIGludmFyaWFudCB0aGF0IGdldHMgY2F1Z2h0LiBJdCdzIHRoZSBzYW1lXG4gICAgICAgICAgLy8gYmVoYXZpb3IgYXMgd2l0aG91dCB0aGlzIHN0YXRlbWVudCBleGNlcHQgd2l0aCBhIGJldHRlciBtZXNzYWdlLlxuICAgICAgICAgIGludmFyaWFudCh0eXBlb2YgdHlwZVNwZWNzW3R5cGVTcGVjTmFtZV0gPT09ICdmdW5jdGlvbicsICclczogJXMgdHlwZSBgJXNgIGlzIGludmFsaWQ7IGl0IG11c3QgYmUgYSBmdW5jdGlvbiwgdXN1YWxseSBmcm9tICcgKyAndGhlIGBwcm9wLXR5cGVzYCBwYWNrYWdlLCBidXQgcmVjZWl2ZWQgYCVzYC4nLCBjb21wb25lbnROYW1lIHx8ICdSZWFjdCBjbGFzcycsIGxvY2F0aW9uLCB0eXBlU3BlY05hbWUsIHR5cGVvZiB0eXBlU3BlY3NbdHlwZVNwZWNOYW1lXSk7XG4gICAgICAgICAgZXJyb3IgPSB0eXBlU3BlY3NbdHlwZVNwZWNOYW1lXSh2YWx1ZXMsIHR5cGVTcGVjTmFtZSwgY29tcG9uZW50TmFtZSwgbG9jYXRpb24sIG51bGwsIFJlYWN0UHJvcFR5cGVzU2VjcmV0KTtcbiAgICAgICAgfSBjYXRjaCAoZXgpIHtcbiAgICAgICAgICBlcnJvciA9IGV4O1xuICAgICAgICB9XG4gICAgICAgIHdhcm5pbmcoIWVycm9yIHx8IGVycm9yIGluc3RhbmNlb2YgRXJyb3IsICclczogdHlwZSBzcGVjaWZpY2F0aW9uIG9mICVzIGAlc2AgaXMgaW52YWxpZDsgdGhlIHR5cGUgY2hlY2tlciAnICsgJ2Z1bmN0aW9uIG11c3QgcmV0dXJuIGBudWxsYCBvciBhbiBgRXJyb3JgIGJ1dCByZXR1cm5lZCBhICVzLiAnICsgJ1lvdSBtYXkgaGF2ZSBmb3Jnb3R0ZW4gdG8gcGFzcyBhbiBhcmd1bWVudCB0byB0aGUgdHlwZSBjaGVja2VyICcgKyAnY3JlYXRvciAoYXJyYXlPZiwgaW5zdGFuY2VPZiwgb2JqZWN0T2YsIG9uZU9mLCBvbmVPZlR5cGUsIGFuZCAnICsgJ3NoYXBlIGFsbCByZXF1aXJlIGFuIGFyZ3VtZW50KS4nLCBjb21wb25lbnROYW1lIHx8ICdSZWFjdCBjbGFzcycsIGxvY2F0aW9uLCB0eXBlU3BlY05hbWUsIHR5cGVvZiBlcnJvcik7XG4gICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEVycm9yICYmICEoZXJyb3IubWVzc2FnZSBpbiBsb2dnZWRUeXBlRmFpbHVyZXMpKSB7XG4gICAgICAgICAgLy8gT25seSBtb25pdG9yIHRoaXMgZmFpbHVyZSBvbmNlIGJlY2F1c2UgdGhlcmUgdGVuZHMgdG8gYmUgYSBsb3Qgb2YgdGhlXG4gICAgICAgICAgLy8gc2FtZSBlcnJvci5cbiAgICAgICAgICBsb2dnZWRUeXBlRmFpbHVyZXNbZXJyb3IubWVzc2FnZV0gPSB0cnVlO1xuXG4gICAgICAgICAgdmFyIHN0YWNrID0gZ2V0U3RhY2sgPyBnZXRTdGFjaygpIDogJyc7XG5cbiAgICAgICAgICB3YXJuaW5nKGZhbHNlLCAnRmFpbGVkICVzIHR5cGU6ICVzJXMnLCBsb2NhdGlvbiwgZXJyb3IubWVzc2FnZSwgc3RhY2sgIT0gbnVsbCA/IHN0YWNrIDogJycpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0gY2hlY2tQcm9wVHlwZXM7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9wcm9wLXR5cGVzL2NoZWNrUHJvcFR5cGVzLmpzXG4vLyBtb2R1bGUgaWQgPSAzM1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///33\n");
+
+/***/ }),
+/* 34 */
+/*!************************************************!*\
+ !*** ./node_modules/react/lib/ReactVersion.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+eval("/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n\n\nmodule.exports = '15.6.2';//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMzQuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcmVhY3QvbGliL1JlYWN0VmVyc2lvbi5qcz8xYTMwIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDEzLXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4gKlxuICovXG5cbid1c2Ugc3RyaWN0JztcblxubW9kdWxlLmV4cG9ydHMgPSAnMTUuNi4yJztcblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9yZWFjdC9saWIvUmVhY3RWZXJzaW9uLmpzXG4vLyBtb2R1bGUgaWQgPSAzNFxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///34\n");
+
+/***/ }),
+/* 35 */
+/*!***********************************************!*\
+ !*** ./node_modules/react/lib/createClass.js ***!
+ \***********************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+eval("/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n\n\nvar _require = __webpack_require__(/*! ./ReactBaseClasses */ 11),\n Component = _require.Component;\n\nvar _require2 = __webpack_require__(/*! ./ReactElement */ 3),\n isValidElement = _require2.isValidElement;\n\nvar ReactNoopUpdateQueue = __webpack_require__(/*! ./ReactNoopUpdateQueue */ 12);\nvar factory = __webpack_require__(/*! create-react-class/factory */ 36);\n\nmodule.exports = factory(Component, isValidElement, ReactNoopUpdateQueue);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMzUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcmVhY3QvbGliL2NyZWF0ZUNsYXNzLmpzPzI1ODEiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTMtcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cbiAqXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZSBmb3VuZCBpbiB0aGVcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbiAqXG4gKi9cblxuJ3VzZSBzdHJpY3QnO1xuXG52YXIgX3JlcXVpcmUgPSByZXF1aXJlKCcuL1JlYWN0QmFzZUNsYXNzZXMnKSxcbiAgICBDb21wb25lbnQgPSBfcmVxdWlyZS5Db21wb25lbnQ7XG5cbnZhciBfcmVxdWlyZTIgPSByZXF1aXJlKCcuL1JlYWN0RWxlbWVudCcpLFxuICAgIGlzVmFsaWRFbGVtZW50ID0gX3JlcXVpcmUyLmlzVmFsaWRFbGVtZW50O1xuXG52YXIgUmVhY3ROb29wVXBkYXRlUXVldWUgPSByZXF1aXJlKCcuL1JlYWN0Tm9vcFVwZGF0ZVF1ZXVlJyk7XG52YXIgZmFjdG9yeSA9IHJlcXVpcmUoJ2NyZWF0ZS1yZWFjdC1jbGFzcy9mYWN0b3J5Jyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZmFjdG9yeShDb21wb25lbnQsIGlzVmFsaWRFbGVtZW50LCBSZWFjdE5vb3BVcGRhdGVRdWV1ZSk7XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvcmVhY3QvbGliL2NyZWF0ZUNsYXNzLmpzXG4vLyBtb2R1bGUgaWQgPSAzNVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///35\n");
+
+/***/ }),
+/* 36 */
+/*!****************************************************!*\
+ !*** ./node_modules/create-react-class/factory.js ***!
+ \****************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+eval("/* WEBPACK VAR INJECTION */(function(process) {/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n\n\nvar _assign = __webpack_require__(/*! object-assign */ 5);\n\nvar emptyObject = __webpack_require__(/*! fbjs/lib/emptyObject */ 13);\nvar _invariant = __webpack_require__(/*! fbjs/lib/invariant */ 2);\n\nif (process.env.NODE_ENV !== 'production') {\n var warning = __webpack_require__(/*! fbjs/lib/warning */ 1);\n}\n\nvar MIXINS_KEY = 'mixins';\n\n// Helper function to allow the creation of anonymous functions which do not\n// have .name set to the name of the variable being assigned to.\nfunction identity(fn) {\n return fn;\n}\n\nvar ReactPropTypeLocationNames;\nif (process.env.NODE_ENV !== 'production') {\n ReactPropTypeLocationNames = {\n prop: 'prop',\n context: 'context',\n childContext: 'child context'\n };\n} else {\n ReactPropTypeLocationNames = {};\n}\n\nfunction factory(ReactComponent, isValidElement, ReactNoopUpdateQueue) {\n /**\n * Policies that describe methods in `ReactClassInterface`.\n */\n\n var injectedMixins = [];\n\n /**\n * Composite components are higher-level components that compose other composite\n * or host components.\n *\n * To create a new type of `ReactClass`, pass a specification of\n * your new class to `React.createClass`. The only requirement of your class\n * specification is that you implement a `render` method.\n *\n * var MyComponent = React.createClass({\n * render: function() {\n * return Hello World
;\n * }\n * });\n *\n * The class specification supports a specific protocol of methods that have\n * special meaning (e.g. `render`). See `ReactClassInterface` for\n * more the comprehensive protocol. Any other properties and methods in the\n * class specification will be available on the prototype.\n *\n * @interface ReactClassInterface\n * @internal\n */\n var ReactClassInterface = {\n /**\n * An array of Mixin objects to include when defining your component.\n *\n * @type {array}\n * @optional\n */\n mixins: 'DEFINE_MANY',\n\n /**\n * An object containing properties and methods that should be defined on\n * the component's constructor instead of its prototype (static methods).\n *\n * @type {object}\n * @optional\n */\n statics: 'DEFINE_MANY',\n\n /**\n * Definition of prop types for this component.\n *\n * @type {object}\n * @optional\n */\n propTypes: 'DEFINE_MANY',\n\n /**\n * Definition of context types for this component.\n *\n * @type {object}\n * @optional\n */\n contextTypes: 'DEFINE_MANY',\n\n /**\n * Definition of context types this component sets for its children.\n *\n * @type {object}\n * @optional\n */\n childContextTypes: 'DEFINE_MANY',\n\n // ==== Definition methods ====\n\n /**\n * Invoked when the component is mounted. Values in the mapping will be set on\n * `this.props` if that prop is not specified (i.e. using an `in` check).\n *\n * This method is invoked before `getInitialState` and therefore cannot rely\n * on `this.state` or use `this.setState`.\n *\n * @return {object}\n * @optional\n */\n getDefaultProps: 'DEFINE_MANY_MERGED',\n\n /**\n * Invoked once before the component is mounted. The return value will be used\n * as the initial value of `this.state`.\n *\n * getInitialState: function() {\n * return {\n * isOn: false,\n * fooBaz: new BazFoo()\n * }\n * }\n *\n * @return {object}\n * @optional\n */\n getInitialState: 'DEFINE_MANY_MERGED',\n\n /**\n * @return {object}\n * @optional\n */\n getChildContext: 'DEFINE_MANY_MERGED',\n\n /**\n * Uses props from `this.props` and state from `this.state` to render the\n * structure of the component.\n *\n * No guarantees are made about when or how often this method is invoked, so\n * it must not have side effects.\n *\n * render: function() {\n * var name = this.props.name;\n * return Hello, {name}!
;\n * }\n *\n * @return {ReactComponent}\n * @required\n */\n render: 'DEFINE_ONCE',\n\n // ==== Delegate methods ====\n\n /**\n * Invoked when the component is initially created and about to be mounted.\n * This may have side effects, but any external subscriptions or data created\n * by this method must be cleaned up in `componentWillUnmount`.\n *\n * @optional\n */\n componentWillMount: 'DEFINE_MANY',\n\n /**\n * Invoked when the component has been mounted and has a DOM representation.\n * However, there is no guarantee that the DOM node is in the document.\n *\n * Use this as an opportunity to operate on the DOM when the component has\n * been mounted (initialized and rendered) for the first time.\n *\n * @param {DOMElement} rootNode DOM element representing the component.\n * @optional\n */\n componentDidMount: 'DEFINE_MANY',\n\n /**\n * Invoked before the component receives new props.\n *\n * Use this as an opportunity to react to a prop transition by updating the\n * state using `this.setState`. Current props are accessed via `this.props`.\n *\n * componentWillReceiveProps: function(nextProps, nextContext) {\n * this.setState({\n * likesIncreasing: nextProps.likeCount > this.props.likeCount\n * });\n * }\n *\n * NOTE: There is no equivalent `componentWillReceiveState`. An incoming prop\n * transition may cause a state change, but the opposite is not true. If you\n * need it, you are probably looking for `componentWillUpdate`.\n *\n * @param {object} nextProps\n * @optional\n */\n componentWillReceiveProps: 'DEFINE_MANY',\n\n /**\n * Invoked while deciding if the component should be updated as a result of\n * receiving new props, state and/or context.\n *\n * Use this as an opportunity to `return false` when you're certain that the\n * transition to the new props/state/context will not require a component\n * update.\n *\n * shouldComponentUpdate: function(nextProps, nextState, nextContext) {\n * return !equal(nextProps, this.props) ||\n * !equal(nextState, this.state) ||\n * !equal(nextContext, this.context);\n * }\n *\n * @param {object} nextProps\n * @param {?object} nextState\n * @param {?object} nextContext\n * @return {boolean} True if the component should update.\n * @optional\n */\n shouldComponentUpdate: 'DEFINE_ONCE',\n\n /**\n * Invoked when the component is about to update due to a transition from\n * `this.props`, `this.state` and `this.context` to `nextProps`, `nextState`\n * and `nextContext`.\n *\n * Use this as an opportunity to perform preparation before an update occurs.\n *\n * NOTE: You **cannot** use `this.setState()` in this method.\n *\n * @param {object} nextProps\n * @param {?object} nextState\n * @param {?object} nextContext\n * @param {ReactReconcileTransaction} transaction\n * @optional\n */\n componentWillUpdate: 'DEFINE_MANY',\n\n /**\n * Invoked when the component's DOM representation has been updated.\n *\n * Use this as an opportunity to operate on the DOM when the component has\n * been updated.\n *\n * @param {object} prevProps\n * @param {?object} prevState\n * @param {?object} prevContext\n * @param {DOMElement} rootNode DOM element representing the component.\n * @optional\n */\n componentDidUpdate: 'DEFINE_MANY',\n\n /**\n * Invoked when the component is about to be removed from its parent and have\n * its DOM representation destroyed.\n *\n * Use this as an opportunity to deallocate any external resources.\n *\n * NOTE: There is no `componentDidUnmount` since your component will have been\n * destroyed by that point.\n *\n * @optional\n */\n componentWillUnmount: 'DEFINE_MANY',\n\n // ==== Advanced methods ====\n\n /**\n * Updates the component's currently mounted DOM representation.\n *\n * By default, this implements React's rendering and reconciliation algorithm.\n * Sophisticated clients may wish to override this.\n *\n * @param {ReactReconcileTransaction} transaction\n * @internal\n * @overridable\n */\n updateComponent: 'OVERRIDE_BASE'\n };\n\n /**\n * Mapping from class specification keys to special processing functions.\n *\n * Although these are declared like instance properties in the specification\n * when defining classes using `React.createClass`, they are actually static\n * and are accessible on the constructor instead of the prototype. Despite\n * being static, they must be defined outside of the \"statics\" key under\n * which all other static methods are defined.\n */\n var RESERVED_SPEC_KEYS = {\n displayName: function(Constructor, displayName) {\n Constructor.displayName = displayName;\n },\n mixins: function(Constructor, mixins) {\n if (mixins) {\n for (var i = 0; i < mixins.length; i++) {\n mixSpecIntoComponent(Constructor, mixins[i]);\n }\n }\n },\n childContextTypes: function(Constructor, childContextTypes) {\n if (process.env.NODE_ENV !== 'production') {\n validateTypeDef(Constructor, childContextTypes, 'childContext');\n }\n Constructor.childContextTypes = _assign(\n {},\n Constructor.childContextTypes,\n childContextTypes\n );\n },\n contextTypes: function(Constructor, contextTypes) {\n if (process.env.NODE_ENV !== 'production') {\n validateTypeDef(Constructor, contextTypes, 'context');\n }\n Constructor.contextTypes = _assign(\n {},\n Constructor.contextTypes,\n contextTypes\n );\n },\n /**\n * Special case getDefaultProps which should move into statics but requires\n * automatic merging.\n */\n getDefaultProps: function(Constructor, getDefaultProps) {\n if (Constructor.getDefaultProps) {\n Constructor.getDefaultProps = createMergedResultFunction(\n Constructor.getDefaultProps,\n getDefaultProps\n );\n } else {\n Constructor.getDefaultProps = getDefaultProps;\n }\n },\n propTypes: function(Constructor, propTypes) {\n if (process.env.NODE_ENV !== 'production') {\n validateTypeDef(Constructor, propTypes, 'prop');\n }\n Constructor.propTypes = _assign({}, Constructor.propTypes, propTypes);\n },\n statics: function(Constructor, statics) {\n mixStaticSpecIntoComponent(Constructor, statics);\n },\n autobind: function() {}\n };\n\n function validateTypeDef(Constructor, typeDef, location) {\n for (var propName in typeDef) {\n if (typeDef.hasOwnProperty(propName)) {\n // use a warning instead of an _invariant so components\n // don't show up in prod but only in __DEV__\n if (process.env.NODE_ENV !== 'production') {\n warning(\n typeof typeDef[propName] === 'function',\n '%s: %s type `%s` is invalid; it must be a function, usually from ' +\n 'React.PropTypes.',\n Constructor.displayName || 'ReactClass',\n ReactPropTypeLocationNames[location],\n propName\n );\n }\n }\n }\n }\n\n function validateMethodOverride(isAlreadyDefined, name) {\n var specPolicy = ReactClassInterface.hasOwnProperty(name)\n ? ReactClassInterface[name]\n : null;\n\n // Disallow overriding of base class methods unless explicitly allowed.\n if (ReactClassMixin.hasOwnProperty(name)) {\n _invariant(\n specPolicy === 'OVERRIDE_BASE',\n 'ReactClassInterface: You are attempting to override ' +\n '`%s` from your class specification. Ensure that your method names ' +\n 'do not overlap with React methods.',\n name\n );\n }\n\n // Disallow defining methods more than once unless explicitly allowed.\n if (isAlreadyDefined) {\n _invariant(\n specPolicy === 'DEFINE_MANY' || specPolicy === 'DEFINE_MANY_MERGED',\n 'ReactClassInterface: You are attempting to define ' +\n '`%s` on your component more than once. This conflict may be due ' +\n 'to a mixin.',\n name\n );\n }\n }\n\n /**\n * Mixin helper which handles policy validation and reserved\n * specification keys when building React classes.\n */\n function mixSpecIntoComponent(Constructor, spec) {\n if (!spec) {\n if (process.env.NODE_ENV !== 'production') {\n var typeofSpec = typeof spec;\n var isMixinValid = typeofSpec === 'object' && spec !== null;\n\n if (process.env.NODE_ENV !== 'production') {\n warning(\n isMixinValid,\n \"%s: You're attempting to include a mixin that is either null \" +\n 'or not an object. Check the mixins included by the component, ' +\n 'as well as any mixins they include themselves. ' +\n 'Expected object but got %s.',\n Constructor.displayName || 'ReactClass',\n spec === null ? null : typeofSpec\n );\n }\n }\n\n return;\n }\n\n _invariant(\n typeof spec !== 'function',\n \"ReactClass: You're attempting to \" +\n 'use a component class or function as a mixin. Instead, just use a ' +\n 'regular object.'\n );\n _invariant(\n !isValidElement(spec),\n \"ReactClass: You're attempting to \" +\n 'use a component as a mixin. Instead, just use a regular object.'\n );\n\n var proto = Constructor.prototype;\n var autoBindPairs = proto.__reactAutoBindPairs;\n\n // By handling mixins before any other properties, we ensure the same\n // chaining order is applied to methods with DEFINE_MANY policy, whether\n // mixins are listed before or after these methods in the spec.\n if (spec.hasOwnProperty(MIXINS_KEY)) {\n RESERVED_SPEC_KEYS.mixins(Constructor, spec.mixins);\n }\n\n for (var name in spec) {\n if (!spec.hasOwnProperty(name)) {\n continue;\n }\n\n if (name === MIXINS_KEY) {\n // We have already handled mixins in a special case above.\n continue;\n }\n\n var property = spec[name];\n var isAlreadyDefined = proto.hasOwnProperty(name);\n validateMethodOverride(isAlreadyDefined, name);\n\n if (RESERVED_SPEC_KEYS.hasOwnProperty(name)) {\n RESERVED_SPEC_KEYS[name](Constructor, property);\n } else {\n // Setup methods on prototype:\n // The following member methods should not be automatically bound:\n // 1. Expected ReactClass methods (in the \"interface\").\n // 2. Overridden methods (that were mixed in).\n var isReactClassMethod = ReactClassInterface.hasOwnProperty(name);\n var isFunction = typeof property === 'function';\n var shouldAutoBind =\n isFunction &&\n !isReactClassMethod &&\n !isAlreadyDefined &&\n spec.autobind !== false;\n\n if (shouldAutoBind) {\n autoBindPairs.push(name, property);\n proto[name] = property;\n } else {\n if (isAlreadyDefined) {\n var specPolicy = ReactClassInterface[name];\n\n // These cases should already be caught by validateMethodOverride.\n _invariant(\n isReactClassMethod &&\n (specPolicy === 'DEFINE_MANY_MERGED' ||\n specPolicy === 'DEFINE_MANY'),\n 'ReactClass: Unexpected spec policy %s for key %s ' +\n 'when mixing in component specs.',\n specPolicy,\n name\n );\n\n // For methods which are defined more than once, call the existing\n // methods before calling the new property, merging if appropriate.\n if (specPolicy === 'DEFINE_MANY_MERGED') {\n proto[name] = createMergedResultFunction(proto[name], property);\n } else if (specPolicy === 'DEFINE_MANY') {\n proto[name] = createChainedFunction(proto[name], property);\n }\n } else {\n proto[name] = property;\n if (process.env.NODE_ENV !== 'production') {\n // Add verbose displayName to the function, which helps when looking\n // at profiling tools.\n if (typeof property === 'function' && spec.displayName) {\n proto[name].displayName = spec.displayName + '_' + name;\n }\n }\n }\n }\n }\n }\n }\n\n function mixStaticSpecIntoComponent(Constructor, statics) {\n if (!statics) {\n return;\n }\n for (var name in statics) {\n var property = statics[name];\n if (!statics.hasOwnProperty(name)) {\n continue;\n }\n\n var isReserved = name in RESERVED_SPEC_KEYS;\n _invariant(\n !isReserved,\n 'ReactClass: You are attempting to define a reserved ' +\n 'property, `%s`, that shouldn\\'t be on the \"statics\" key. Define it ' +\n 'as an instance property instead; it will still be accessible on the ' +\n 'constructor.',\n name\n );\n\n var isInherited = name in Constructor;\n _invariant(\n !isInherited,\n 'ReactClass: You are attempting to define ' +\n '`%s` on your component more than once. This conflict may be ' +\n 'due to a mixin.',\n name\n );\n Constructor[name] = property;\n }\n }\n\n /**\n * Merge two objects, but throw if both contain the same key.\n *\n * @param {object} one The first object, which is mutated.\n * @param {object} two The second object\n * @return {object} one after it has been mutated to contain everything in two.\n */\n function mergeIntoWithNoDuplicateKeys(one, two) {\n _invariant(\n one && two && typeof one === 'object' && typeof two === 'object',\n 'mergeIntoWithNoDuplicateKeys(): Cannot merge non-objects.'\n );\n\n for (var key in two) {\n if (two.hasOwnProperty(key)) {\n _invariant(\n one[key] === undefined,\n 'mergeIntoWithNoDuplicateKeys(): ' +\n 'Tried to merge two objects with the same key: `%s`. This conflict ' +\n 'may be due to a mixin; in particular, this may be caused by two ' +\n 'getInitialState() or getDefaultProps() methods returning objects ' +\n 'with clashing keys.',\n key\n );\n one[key] = two[key];\n }\n }\n return one;\n }\n\n /**\n * Creates a function that invokes two functions and merges their return values.\n *\n * @param {function} one Function to invoke first.\n * @param {function} two Function to invoke second.\n * @return {function} Function that invokes the two argument functions.\n * @private\n */\n function createMergedResultFunction(one, two) {\n return function mergedResult() {\n var a = one.apply(this, arguments);\n var b = two.apply(this, arguments);\n if (a == null) {\n return b;\n } else if (b == null) {\n return a;\n }\n var c = {};\n mergeIntoWithNoDuplicateKeys(c, a);\n mergeIntoWithNoDuplicateKeys(c, b);\n return c;\n };\n }\n\n /**\n * Creates a function that invokes two functions and ignores their return vales.\n *\n * @param {function} one Function to invoke first.\n * @param {function} two Function to invoke second.\n * @return {function} Function that invokes the two argument functions.\n * @private\n */\n function createChainedFunction(one, two) {\n return function chainedFunction() {\n one.apply(this, arguments);\n two.apply(this, arguments);\n };\n }\n\n /**\n * Binds a method to the component.\n *\n * @param {object} component Component whose method is going to be bound.\n * @param {function} method Method to be bound.\n * @return {function} The bound method.\n */\n function bindAutoBindMethod(component, method) {\n var boundMethod = method.bind(component);\n if (process.env.NODE_ENV !== 'production') {\n boundMethod.__reactBoundContext = component;\n boundMethod.__reactBoundMethod = method;\n boundMethod.__reactBoundArguments = null;\n var componentName = component.constructor.displayName;\n var _bind = boundMethod.bind;\n boundMethod.bind = function(newThis) {\n for (\n var _len = arguments.length,\n args = Array(_len > 1 ? _len - 1 : 0),\n _key = 1;\n _key < _len;\n _key++\n ) {\n args[_key - 1] = arguments[_key];\n }\n\n // User is trying to bind() an autobound method; we effectively will\n // ignore the value of \"this\" that the user is trying to use, so\n // let's warn.\n if (newThis !== component && newThis !== null) {\n if (process.env.NODE_ENV !== 'production') {\n warning(\n false,\n 'bind(): React component methods may only be bound to the ' +\n 'component instance. See %s',\n componentName\n );\n }\n } else if (!args.length) {\n if (process.env.NODE_ENV !== 'production') {\n warning(\n false,\n 'bind(): You are binding a component method to the component. ' +\n 'React does this for you automatically in a high-performance ' +\n 'way, so you can safely remove this call. See %s',\n componentName\n );\n }\n return boundMethod;\n }\n var reboundMethod = _bind.apply(boundMethod, arguments);\n reboundMethod.__reactBoundContext = component;\n reboundMethod.__reactBoundMethod = method;\n reboundMethod.__reactBoundArguments = args;\n return reboundMethod;\n };\n }\n return boundMethod;\n }\n\n /**\n * Binds all auto-bound methods in a component.\n *\n * @param {object} component Component whose method is going to be bound.\n */\n function bindAutoBindMethods(component) {\n var pairs = component.__reactAutoBindPairs;\n for (var i = 0; i < pairs.length; i += 2) {\n var autoBindKey = pairs[i];\n var method = pairs[i + 1];\n component[autoBindKey] = bindAutoBindMethod(component, method);\n }\n }\n\n var IsMountedPreMixin = {\n componentDidMount: function() {\n this.__isMounted = true;\n }\n };\n\n var IsMountedPostMixin = {\n componentWillUnmount: function() {\n this.__isMounted = false;\n }\n };\n\n /**\n * Add more to the ReactClass base class. These are all legacy features and\n * therefore not already part of the modern ReactComponent.\n */\n var ReactClassMixin = {\n /**\n * TODO: This will be deprecated because state should always keep a consistent\n * type signature and the only use case for this, is to avoid that.\n */\n replaceState: function(newState, callback) {\n this.updater.enqueueReplaceState(this, newState, callback);\n },\n\n /**\n * Checks whether or not this composite component is mounted.\n * @return {boolean} True if mounted, false otherwise.\n * @protected\n * @final\n */\n isMounted: function() {\n if (process.env.NODE_ENV !== 'production') {\n warning(\n this.__didWarnIsMounted,\n '%s: isMounted is deprecated. Instead, make sure to clean up ' +\n 'subscriptions and pending requests in componentWillUnmount to ' +\n 'prevent memory leaks.',\n (this.constructor && this.constructor.displayName) ||\n this.name ||\n 'Component'\n );\n this.__didWarnIsMounted = true;\n }\n return !!this.__isMounted;\n }\n };\n\n var ReactClassComponent = function() {};\n _assign(\n ReactClassComponent.prototype,\n ReactComponent.prototype,\n ReactClassMixin\n );\n\n /**\n * Creates a composite component class given a class specification.\n * See https://facebook.github.io/react/docs/top-level-api.html#react.createclass\n *\n * @param {object} spec Class specification (which must define `render`).\n * @return {function} Component constructor function.\n * @public\n */\n function createClass(spec) {\n // To keep our warnings more understandable, we'll use a little hack here to\n // ensure that Constructor.name !== 'Constructor'. This makes sure we don't\n // unnecessarily identify a class without displayName as 'Constructor'.\n var Constructor = identity(function(props, context, updater) {\n // This constructor gets overridden by mocks. The argument is used\n // by mocks to assert on what gets mounted.\n\n if (process.env.NODE_ENV !== 'production') {\n warning(\n this instanceof Constructor,\n 'Something is calling a React component directly. Use a factory or ' +\n 'JSX instead. See: https://fb.me/react-legacyfactory'\n );\n }\n\n // Wire up auto-binding\n if (this.__reactAutoBindPairs.length) {\n bindAutoBindMethods(this);\n }\n\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n\n this.state = null;\n\n // ReactClasses doesn't have constructors. Instead, they use the\n // getInitialState and componentWillMount methods for initialization.\n\n var initialState = this.getInitialState ? this.getInitialState() : null;\n if (process.env.NODE_ENV !== 'production') {\n // We allow auto-mocks to proceed as if they're returning null.\n if (\n initialState === undefined &&\n this.getInitialState._isMockFunction\n ) {\n // This is probably bad practice. Consider warning here and\n // deprecating this convenience.\n initialState = null;\n }\n }\n _invariant(\n typeof initialState === 'object' && !Array.isArray(initialState),\n '%s.getInitialState(): must return an object or null',\n Constructor.displayName || 'ReactCompositeComponent'\n );\n\n this.state = initialState;\n });\n Constructor.prototype = new ReactClassComponent();\n Constructor.prototype.constructor = Constructor;\n Constructor.prototype.__reactAutoBindPairs = [];\n\n injectedMixins.forEach(mixSpecIntoComponent.bind(null, Constructor));\n\n mixSpecIntoComponent(Constructor, IsMountedPreMixin);\n mixSpecIntoComponent(Constructor, spec);\n mixSpecIntoComponent(Constructor, IsMountedPostMixin);\n\n // Initialize the defaultProps property after all mixins have been merged.\n if (Constructor.getDefaultProps) {\n Constructor.defaultProps = Constructor.getDefaultProps();\n }\n\n if (process.env.NODE_ENV !== 'production') {\n // This is a tag to indicate that the use of these method names is ok,\n // since it's used with createClass. If it's not, then it's likely a\n // mistake so we'll warn you to use the static property, property\n // initializer or constructor respectively.\n if (Constructor.getDefaultProps) {\n Constructor.getDefaultProps.isReactClassApproved = {};\n }\n if (Constructor.prototype.getInitialState) {\n Constructor.prototype.getInitialState.isReactClassApproved = {};\n }\n }\n\n _invariant(\n Constructor.prototype.render,\n 'createClass(...): Class specification must implement a `render` method.'\n );\n\n if (process.env.NODE_ENV !== 'production') {\n warning(\n !Constructor.prototype.componentShouldUpdate,\n '%s has a method called ' +\n 'componentShouldUpdate(). Did you mean shouldComponentUpdate()? ' +\n 'The name is phrased as a question because the function is ' +\n 'expected to return a value.',\n spec.displayName || 'A component'\n );\n warning(\n !Constructor.prototype.componentWillRecieveProps,\n '%s has a method called ' +\n 'componentWillRecieveProps(). Did you mean componentWillReceiveProps()?',\n spec.displayName || 'A component'\n );\n }\n\n // Reduce time spent doing lookups by setting these on the prototype.\n for (var methodName in ReactClassInterface) {\n if (!Constructor.prototype[methodName]) {\n Constructor.prototype[methodName] = null;\n }\n }\n\n return Constructor;\n }\n\n return createClass;\n}\n\nmodule.exports = factory;\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(/*! ./../process/browser.js */ 0)))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMzYuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY3JlYXRlLXJlYWN0LWNsYXNzL2ZhY3RvcnkuanM/YzJhMyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxMy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxuICpcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuICpcbiAqL1xuXG4ndXNlIHN0cmljdCc7XG5cbnZhciBfYXNzaWduID0gcmVxdWlyZSgnb2JqZWN0LWFzc2lnbicpO1xuXG52YXIgZW1wdHlPYmplY3QgPSByZXF1aXJlKCdmYmpzL2xpYi9lbXB0eU9iamVjdCcpO1xudmFyIF9pbnZhcmlhbnQgPSByZXF1aXJlKCdmYmpzL2xpYi9pbnZhcmlhbnQnKTtcblxuaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgdmFyIHdhcm5pbmcgPSByZXF1aXJlKCdmYmpzL2xpYi93YXJuaW5nJyk7XG59XG5cbnZhciBNSVhJTlNfS0VZID0gJ21peGlucyc7XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBhbGxvdyB0aGUgY3JlYXRpb24gb2YgYW5vbnltb3VzIGZ1bmN0aW9ucyB3aGljaCBkbyBub3Rcbi8vIGhhdmUgLm5hbWUgc2V0IHRvIHRoZSBuYW1lIG9mIHRoZSB2YXJpYWJsZSBiZWluZyBhc3NpZ25lZCB0by5cbmZ1bmN0aW9uIGlkZW50aXR5KGZuKSB7XG4gIHJldHVybiBmbjtcbn1cblxudmFyIFJlYWN0UHJvcFR5cGVMb2NhdGlvbk5hbWVzO1xuaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgUmVhY3RQcm9wVHlwZUxvY2F0aW9uTmFtZXMgPSB7XG4gICAgcHJvcDogJ3Byb3AnLFxuICAgIGNvbnRleHQ6ICdjb250ZXh0JyxcbiAgICBjaGlsZENvbnRleHQ6ICdjaGlsZCBjb250ZXh0J1xuICB9O1xufSBlbHNlIHtcbiAgUmVhY3RQcm9wVHlwZUxvY2F0aW9uTmFtZXMgPSB7fTtcbn1cblxuZnVuY3Rpb24gZmFjdG9yeShSZWFjdENvbXBvbmVudCwgaXNWYWxpZEVsZW1lbnQsIFJlYWN0Tm9vcFVwZGF0ZVF1ZXVlKSB7XG4gIC8qKlxuICAgKiBQb2xpY2llcyB0aGF0IGRlc2NyaWJlIG1ldGhvZHMgaW4gYFJlYWN0Q2xhc3NJbnRlcmZhY2VgLlxuICAgKi9cblxuICB2YXIgaW5qZWN0ZWRNaXhpbnMgPSBbXTtcblxuICAvKipcbiAgICogQ29tcG9zaXRlIGNvbXBvbmVudHMgYXJlIGhpZ2hlci1sZXZlbCBjb21wb25lbnRzIHRoYXQgY29tcG9zZSBvdGhlciBjb21wb3NpdGVcbiAgICogb3IgaG9zdCBjb21wb25lbnRzLlxuICAgKlxuICAgKiBUbyBjcmVhdGUgYSBuZXcgdHlwZSBvZiBgUmVhY3RDbGFzc2AsIHBhc3MgYSBzcGVjaWZpY2F0aW9uIG9mXG4gICAqIHlvdXIgbmV3IGNsYXNzIHRvIGBSZWFjdC5jcmVhdGVDbGFzc2AuIFRoZSBvbmx5IHJlcXVpcmVtZW50IG9mIHlvdXIgY2xhc3NcbiAgICogc3BlY2lmaWNhdGlvbiBpcyB0aGF0IHlvdSBpbXBsZW1lbnQgYSBgcmVuZGVyYCBtZXRob2QuXG4gICAqXG4gICAqICAgdmFyIE15Q29tcG9uZW50ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe1xuICAgKiAgICAgcmVuZGVyOiBmdW5jdGlvbigpIHtcbiAgICogICAgICAgcmV0dXJuIDxkaXY+SGVsbG8gV29ybGQ8L2Rpdj47XG4gICAqICAgICB9XG4gICAqICAgfSk7XG4gICAqXG4gICAqIFRoZSBjbGFzcyBzcGVjaWZpY2F0aW9uIHN1cHBvcnRzIGEgc3BlY2lmaWMgcHJvdG9jb2wgb2YgbWV0aG9kcyB0aGF0IGhhdmVcbiAgICogc3BlY2lhbCBtZWFuaW5nIChlLmcuIGByZW5kZXJgKS4gU2VlIGBSZWFjdENsYXNzSW50ZXJmYWNlYCBmb3JcbiAgICogbW9yZSB0aGUgY29tcHJlaGVuc2l2ZSBwcm90b2NvbC4gQW55IG90aGVyIHByb3BlcnRpZXMgYW5kIG1ldGhvZHMgaW4gdGhlXG4gICAqIGNsYXNzIHNwZWNpZmljYXRpb24gd2lsbCBiZSBhdmFpbGFibGUgb24gdGhlIHByb3RvdHlwZS5cbiAgICpcbiAgICogQGludGVyZmFjZSBSZWFjdENsYXNzSW50ZXJmYWNlXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgdmFyIFJlYWN0Q2xhc3NJbnRlcmZhY2UgPSB7XG4gICAgLyoqXG4gICAgICogQW4gYXJyYXkgb2YgTWl4aW4gb2JqZWN0cyB0byBpbmNsdWRlIHdoZW4gZGVmaW5pbmcgeW91ciBjb21wb25lbnQuXG4gICAgICpcbiAgICAgKiBAdHlwZSB7YXJyYXl9XG4gICAgICogQG9wdGlvbmFsXG4gICAgICovXG4gICAgbWl4aW5zOiAnREVGSU5FX01BTlknLFxuXG4gICAgLyoqXG4gICAgICogQW4gb2JqZWN0IGNvbnRhaW5pbmcgcHJvcGVydGllcyBhbmQgbWV0aG9kcyB0aGF0IHNob3VsZCBiZSBkZWZpbmVkIG9uXG4gICAgICogdGhlIGNvbXBvbmVudCdzIGNvbnN0cnVjdG9yIGluc3RlYWQgb2YgaXRzIHByb3RvdHlwZSAoc3RhdGljIG1ldGhvZHMpLlxuICAgICAqXG4gICAgICogQHR5cGUge29iamVjdH1cbiAgICAgKiBAb3B0aW9uYWxcbiAgICAgKi9cbiAgICBzdGF0aWNzOiAnREVGSU5FX01BTlknLFxuXG4gICAgLyoqXG4gICAgICogRGVmaW5pdGlvbiBvZiBwcm9wIHR5cGVzIGZvciB0aGlzIGNvbXBvbmVudC5cbiAgICAgKlxuICAgICAqIEB0eXBlIHtvYmplY3R9XG4gICAgICogQG9wdGlvbmFsXG4gICAgICovXG4gICAgcHJvcFR5cGVzOiAnREVGSU5FX01BTlknLFxuXG4gICAgLyoqXG4gICAgICogRGVmaW5pdGlvbiBvZiBjb250ZXh0IHR5cGVzIGZvciB0aGlzIGNvbXBvbmVudC5cbiAgICAgKlxuICAgICAqIEB0eXBlIHtvYmplY3R9XG4gICAgICogQG9wdGlvbmFsXG4gICAgICovXG4gICAgY29udGV4dFR5cGVzOiAnREVGSU5FX01BTlknLFxuXG4gICAgLyoqXG4gICAgICogRGVmaW5pdGlvbiBvZiBjb250ZXh0IHR5cGVzIHRoaXMgY29tcG9uZW50IHNldHMgZm9yIGl0cyBjaGlsZHJlbi5cbiAgICAgKlxuICAgICAqIEB0eXBlIHtvYmplY3R9XG4gICAgICogQG9wdGlvbmFsXG4gICAgICovXG4gICAgY2hpbGRDb250ZXh0VHlwZXM6ICdERUZJTkVfTUFOWScsXG5cbiAgICAvLyA9PT09IERlZmluaXRpb24gbWV0aG9kcyA9PT09XG5cbiAgICAvKipcbiAgICAgKiBJbnZva2VkIHdoZW4gdGhlIGNvbXBvbmVudCBpcyBtb3VudGVkLiBWYWx1ZXMgaW4gdGhlIG1hcHBpbmcgd2lsbCBiZSBzZXQgb25cbiAgICAgKiBgdGhpcy5wcm9wc2AgaWYgdGhhdCBwcm9wIGlzIG5vdCBzcGVjaWZpZWQgKGkuZS4gdXNpbmcgYW4gYGluYCBjaGVjaykuXG4gICAgICpcbiAgICAgKiBUaGlzIG1ldGhvZCBpcyBpbnZva2VkIGJlZm9yZSBgZ2V0SW5pdGlhbFN0YXRlYCBhbmQgdGhlcmVmb3JlIGNhbm5vdCByZWx5XG4gICAgICogb24gYHRoaXMuc3RhdGVgIG9yIHVzZSBgdGhpcy5zZXRTdGF0ZWAuXG4gICAgICpcbiAgICAgKiBAcmV0dXJuIHtvYmplY3R9XG4gICAgICogQG9wdGlvbmFsXG4gICAgICovXG4gICAgZ2V0RGVmYXVsdFByb3BzOiAnREVGSU5FX01BTllfTUVSR0VEJyxcblxuICAgIC8qKlxuICAgICAqIEludm9rZWQgb25jZSBiZWZvcmUgdGhlIGNvbXBvbmVudCBpcyBtb3VudGVkLiBUaGUgcmV0dXJuIHZhbHVlIHdpbGwgYmUgdXNlZFxuICAgICAqIGFzIHRoZSBpbml0aWFsIHZhbHVlIG9mIGB0aGlzLnN0YXRlYC5cbiAgICAgKlxuICAgICAqICAgZ2V0SW5pdGlhbFN0YXRlOiBmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgcmV0dXJuIHtcbiAgICAgKiAgICAgICBpc09uOiBmYWxzZSxcbiAgICAgKiAgICAgICBmb29CYXo6IG5ldyBCYXpGb28oKVxuICAgICAqICAgICB9XG4gICAgICogICB9XG4gICAgICpcbiAgICAgKiBAcmV0dXJuIHtvYmplY3R9XG4gICAgICogQG9wdGlvbmFsXG4gICAgICovXG4gICAgZ2V0SW5pdGlhbFN0YXRlOiAnREVGSU5FX01BTllfTUVSR0VEJyxcblxuICAgIC8qKlxuICAgICAqIEByZXR1cm4ge29iamVjdH1cbiAgICAgKiBAb3B0aW9uYWxcbiAgICAgKi9cbiAgICBnZXRDaGlsZENvbnRleHQ6ICdERUZJTkVfTUFOWV9NRVJHRUQnLFxuXG4gICAgLyoqXG4gICAgICogVXNlcyBwcm9wcyBmcm9tIGB0aGlzLnByb3BzYCBhbmQgc3RhdGUgZnJvbSBgdGhpcy5zdGF0ZWAgdG8gcmVuZGVyIHRoZVxuICAgICAqIHN0cnVjdHVyZSBvZiB0aGUgY29tcG9uZW50LlxuICAgICAqXG4gICAgICogTm8gZ3VhcmFudGVlcyBhcmUgbWFkZSBhYm91dCB3aGVuIG9yIGhvdyBvZnRlbiB0aGlzIG1ldGhvZCBpcyBpbnZva2VkLCBzb1xuICAgICAqIGl0IG11c3Qgbm90IGhhdmUgc2lkZSBlZmZlY3RzLlxuICAgICAqXG4gICAgICogICByZW5kZXI6IGZ1bmN0aW9uKCkge1xuICAgICAqICAgICB2YXIgbmFtZSA9IHRoaXMucHJvcHMubmFtZTtcbiAgICAgKiAgICAgcmV0dXJuIDxkaXY+SGVsbG8sIHtuYW1lfSE8L2Rpdj47XG4gICAgICogICB9XG4gICAgICpcbiAgICAgKiBAcmV0dXJuIHtSZWFjdENvbXBvbmVudH1cbiAgICAgKiBAcmVxdWlyZWRcbiAgICAgKi9cbiAgICByZW5kZXI6ICdERUZJTkVfT05DRScsXG5cbiAgICAvLyA9PT09IERlbGVnYXRlIG1ldGhvZHMgPT09PVxuXG4gICAgLyoqXG4gICAgICogSW52b2tlZCB3aGVuIHRoZSBjb21wb25lbnQgaXMgaW5pdGlhbGx5IGNyZWF0ZWQgYW5kIGFib3V0IHRvIGJlIG1vdW50ZWQuXG4gICAgICogVGhpcyBtYXkgaGF2ZSBzaWRlIGVmZmVjdHMsIGJ1dCBhbnkgZXh0ZXJuYWwgc3Vic2NyaXB0aW9ucyBvciBkYXRhIGNyZWF0ZWRcbiAgICAgKiBieSB0aGlzIG1ldGhvZCBtdXN0IGJlIGNsZWFuZWQgdXAgaW4gYGNvbXBvbmVudFdpbGxVbm1vdW50YC5cbiAgICAgKlxuICAgICAqIEBvcHRpb25hbFxuICAgICAqL1xuICAgIGNvbXBvbmVudFdpbGxNb3VudDogJ0RFRklORV9NQU5ZJyxcblxuICAgIC8qKlxuICAgICAqIEludm9rZWQgd2hlbiB0aGUgY29tcG9uZW50IGhhcyBiZWVuIG1vdW50ZWQgYW5kIGhhcyBhIERPTSByZXByZXNlbnRhdGlvbi5cbiAgICAgKiBIb3dldmVyLCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCB0aGUgRE9NIG5vZGUgaXMgaW4gdGhlIGRvY3VtZW50LlxuICAgICAqXG4gICAgICogVXNlIHRoaXMgYXMgYW4gb3Bwb3J0dW5pdHkgdG8gb3BlcmF0ZSBvbiB0aGUgRE9NIHdoZW4gdGhlIGNvbXBvbmVudCBoYXNcbiAgICAgKiBiZWVuIG1vdW50ZWQgKGluaXRpYWxpemVkIGFuZCByZW5kZXJlZCkgZm9yIHRoZSBmaXJzdCB0aW1lLlxuICAgICAqXG4gICAgICogQHBhcmFtIHtET01FbGVtZW50fSByb290Tm9kZSBET00gZWxlbWVudCByZXByZXNlbnRpbmcgdGhlIGNvbXBvbmVudC5cbiAgICAgKiBAb3B0aW9uYWxcbiAgICAgKi9cbiAgICBjb21wb25lbnREaWRNb3VudDogJ0RFRklORV9NQU5ZJyxcblxuICAgIC8qKlxuICAgICAqIEludm9rZWQgYmVmb3JlIHRoZSBjb21wb25lbnQgcmVjZWl2ZXMgbmV3IHByb3BzLlxuICAgICAqXG4gICAgICogVXNlIHRoaXMgYXMgYW4gb3Bwb3J0dW5pdHkgdG8gcmVhY3QgdG8gYSBwcm9wIHRyYW5zaXRpb24gYnkgdXBkYXRpbmcgdGhlXG4gICAgICogc3RhdGUgdXNpbmcgYHRoaXMuc2V0U3RhdGVgLiBDdXJyZW50IHByb3BzIGFyZSBhY2Nlc3NlZCB2aWEgYHRoaXMucHJvcHNgLlxuICAgICAqXG4gICAgICogICBjb21wb25lbnRXaWxsUmVjZWl2ZVByb3BzOiBmdW5jdGlvbihuZXh0UHJvcHMsIG5leHRDb250ZXh0KSB7XG4gICAgICogICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAqICAgICAgIGxpa2VzSW5jcmVhc2luZzogbmV4dFByb3BzLmxpa2VDb3VudCA+IHRoaXMucHJvcHMubGlrZUNvdW50XG4gICAgICogICAgIH0pO1xuICAgICAqICAgfVxuICAgICAqXG4gICAgICogTk9URTogVGhlcmUgaXMgbm8gZXF1aXZhbGVudCBgY29tcG9uZW50V2lsbFJlY2VpdmVTdGF0ZWAuIEFuIGluY29taW5nIHByb3BcbiAgICAgKiB0cmFuc2l0aW9uIG1heSBjYXVzZSBhIHN0YXRlIGNoYW5nZSwgYnV0IHRoZSBvcHBvc2l0ZSBpcyBub3QgdHJ1ZS4gSWYgeW91XG4gICAgICogbmVlZCBpdCwgeW91IGFyZSBwcm9iYWJseSBsb29raW5nIGZvciBgY29tcG9uZW50V2lsbFVwZGF0ZWAuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge29iamVjdH0gbmV4dFByb3BzXG4gICAgICogQG9wdGlvbmFsXG4gICAgICovXG4gICAgY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wczogJ0RFRklORV9NQU5ZJyxcblxuICAgIC8qKlxuICAgICAqIEludm9rZWQgd2hpbGUgZGVjaWRpbmcgaWYgdGhlIGNvbXBvbmVudCBzaG91bGQgYmUgdXBkYXRlZCBhcyBhIHJlc3VsdCBvZlxuICAgICAqIHJlY2VpdmluZyBuZXcgcHJvcHMsIHN0YXRlIGFuZC9vciBjb250ZXh0LlxuICAgICAqXG4gICAgICogVXNlIHRoaXMgYXMgYW4gb3Bwb3J0dW5pdHkgdG8gYHJldHVybiBmYWxzZWAgd2hlbiB5b3UncmUgY2VydGFpbiB0aGF0IHRoZVxuICAgICAqIHRyYW5zaXRpb24gdG8gdGhlIG5ldyBwcm9wcy9zdGF0ZS9jb250ZXh0IHdpbGwgbm90IHJlcXVpcmUgYSBjb21wb25lbnRcbiAgICAgKiB1cGRhdGUuXG4gICAgICpcbiAgICAgKiAgIHNob3VsZENvbXBvbmVudFVwZGF0ZTogZnVuY3Rpb24obmV4dFByb3BzLCBuZXh0U3RhdGUsIG5leHRDb250ZXh0KSB7XG4gICAgICogICAgIHJldHVybiAhZXF1YWwobmV4dFByb3BzLCB0aGlzLnByb3BzKSB8fFxuICAgICAqICAgICAgICFlcXVhbChuZXh0U3RhdGUsIHRoaXMuc3RhdGUpIHx8XG4gICAgICogICAgICAgIWVxdWFsKG5leHRDb250ZXh0LCB0aGlzLmNvbnRleHQpO1xuICAgICAqICAgfVxuICAgICAqXG4gICAgICogQHBhcmFtIHtvYmplY3R9IG5leHRQcm9wc1xuICAgICAqIEBwYXJhbSB7P29iamVjdH0gbmV4dFN0YXRlXG4gICAgICogQHBhcmFtIHs/b2JqZWN0fSBuZXh0Q29udGV4dFxuICAgICAqIEByZXR1cm4ge2Jvb2xlYW59IFRydWUgaWYgdGhlIGNvbXBvbmVudCBzaG91bGQgdXBkYXRlLlxuICAgICAqIEBvcHRpb25hbFxuICAgICAqL1xuICAgIHNob3VsZENvbXBvbmVudFVwZGF0ZTogJ0RFRklORV9PTkNFJyxcblxuICAgIC8qKlxuICAgICAqIEludm9rZWQgd2hlbiB0aGUgY29tcG9uZW50IGlzIGFib3V0IHRvIHVwZGF0ZSBkdWUgdG8gYSB0cmFuc2l0aW9uIGZyb21cbiAgICAgKiBgdGhpcy5wcm9wc2AsIGB0aGlzLnN0YXRlYCBhbmQgYHRoaXMuY29udGV4dGAgdG8gYG5leHRQcm9wc2AsIGBuZXh0U3RhdGVgXG4gICAgICogYW5kIGBuZXh0Q29udGV4dGAuXG4gICAgICpcbiAgICAgKiBVc2UgdGhpcyBhcyBhbiBvcHBvcnR1bml0eSB0byBwZXJmb3JtIHByZXBhcmF0aW9uIGJlZm9yZSBhbiB1cGRhdGUgb2NjdXJzLlxuICAgICAqXG4gICAgICogTk9URTogWW91ICoqY2Fubm90KiogdXNlIGB0aGlzLnNldFN0YXRlKClgIGluIHRoaXMgbWV0aG9kLlxuICAgICAqXG4gICAgICogQHBhcmFtIHtvYmplY3R9IG5leHRQcm9wc1xuICAgICAqIEBwYXJhbSB7P29iamVjdH0gbmV4dFN0YXRlXG4gICAgICogQHBhcmFtIHs/b2JqZWN0fSBuZXh0Q29udGV4dFxuICAgICAqIEBwYXJhbSB7UmVhY3RSZWNvbmNpbGVUcmFuc2FjdGlvbn0gdHJhbnNhY3Rpb25cbiAgICAgKiBAb3B0aW9uYWxcbiAgICAgKi9cbiAgICBjb21wb25lbnRXaWxsVXBkYXRlOiAnREVGSU5FX01BTlknLFxuXG4gICAgLyoqXG4gICAgICogSW52b2tlZCB3aGVuIHRoZSBjb21wb25lbnQncyBET00gcmVwcmVzZW50YXRpb24gaGFzIGJlZW4gdXBkYXRlZC5cbiAgICAgKlxuICAgICAqIFVzZSB0aGlzIGFzIGFuIG9wcG9ydHVuaXR5IHRvIG9wZXJhdGUgb24gdGhlIERPTSB3aGVuIHRoZSBjb21wb25lbnQgaGFzXG4gICAgICogYmVlbiB1cGRhdGVkLlxuICAgICAqXG4gICAgICogQHBhcmFtIHtvYmplY3R9IHByZXZQcm9wc1xuICAgICAqIEBwYXJhbSB7P29iamVjdH0gcHJldlN0YXRlXG4gICAgICogQHBhcmFtIHs/b2JqZWN0fSBwcmV2Q29udGV4dFxuICAgICAqIEBwYXJhbSB7RE9NRWxlbWVudH0gcm9vdE5vZGUgRE9NIGVsZW1lbnQgcmVwcmVzZW50aW5nIHRoZSBjb21wb25lbnQuXG4gICAgICogQG9wdGlvbmFsXG4gICAgICovXG4gICAgY29tcG9uZW50RGlkVXBkYXRlOiAnREVGSU5FX01BTlknLFxuXG4gICAgLyoqXG4gICAgICogSW52b2tlZCB3aGVuIHRoZSBjb21wb25lbnQgaXMgYWJvdXQgdG8gYmUgcmVtb3ZlZCBmcm9tIGl0cyBwYXJlbnQgYW5kIGhhdmVcbiAgICAgKiBpdHMgRE9NIHJlcHJlc2VudGF0aW9uIGRlc3Ryb3llZC5cbiAgICAgKlxuICAgICAqIFVzZSB0aGlzIGFzIGFuIG9wcG9ydHVuaXR5IHRvIGRlYWxsb2NhdGUgYW55IGV4dGVybmFsIHJlc291cmNlcy5cbiAgICAgKlxuICAgICAqIE5PVEU6IFRoZXJlIGlzIG5vIGBjb21wb25lbnREaWRVbm1vdW50YCBzaW5jZSB5b3VyIGNvbXBvbmVudCB3aWxsIGhhdmUgYmVlblxuICAgICAqIGRlc3Ryb3llZCBieSB0aGF0IHBvaW50LlxuICAgICAqXG4gICAgICogQG9wdGlvbmFsXG4gICAgICovXG4gICAgY29tcG9uZW50V2lsbFVubW91bnQ6ICdERUZJTkVfTUFOWScsXG5cbiAgICAvLyA9PT09IEFkdmFuY2VkIG1ldGhvZHMgPT09PVxuXG4gICAgLyoqXG4gICAgICogVXBkYXRlcyB0aGUgY29tcG9uZW50J3MgY3VycmVudGx5IG1vdW50ZWQgRE9NIHJlcHJlc2VudGF0aW9uLlxuICAgICAqXG4gICAgICogQnkgZGVmYXVsdCwgdGhpcyBpbXBsZW1lbnRzIFJlYWN0J3MgcmVuZGVyaW5nIGFuZCByZWNvbmNpbGlhdGlvbiBhbGdvcml0aG0uXG4gICAgICogU29waGlzdGljYXRlZCBjbGllbnRzIG1heSB3aXNoIHRvIG92ZXJyaWRlIHRoaXMuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge1JlYWN0UmVjb25jaWxlVHJhbnNhY3Rpb259IHRyYW5zYWN0aW9uXG4gICAgICogQGludGVybmFsXG4gICAgICogQG92ZXJyaWRhYmxlXG4gICAgICovXG4gICAgdXBkYXRlQ29tcG9uZW50OiAnT1ZFUlJJREVfQkFTRSdcbiAgfTtcblxuICAvKipcbiAgICogTWFwcGluZyBmcm9tIGNsYXNzIHNwZWNpZmljYXRpb24ga2V5cyB0byBzcGVjaWFsIHByb2Nlc3NpbmcgZnVuY3Rpb25zLlxuICAgKlxuICAgKiBBbHRob3VnaCB0aGVzZSBhcmUgZGVjbGFyZWQgbGlrZSBpbnN0YW5jZSBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpY2F0aW9uXG4gICAqIHdoZW4gZGVmaW5pbmcgY2xhc3NlcyB1c2luZyBgUmVhY3QuY3JlYXRlQ2xhc3NgLCB0aGV5IGFyZSBhY3R1YWxseSBzdGF0aWNcbiAgICogYW5kIGFyZSBhY2Nlc3NpYmxlIG9uIHRoZSBjb25zdHJ1Y3RvciBpbnN0ZWFkIG9mIHRoZSBwcm90b3R5cGUuIERlc3BpdGVcbiAgICogYmVpbmcgc3RhdGljLCB0aGV5IG11c3QgYmUgZGVmaW5lZCBvdXRzaWRlIG9mIHRoZSBcInN0YXRpY3NcIiBrZXkgdW5kZXJcbiAgICogd2hpY2ggYWxsIG90aGVyIHN0YXRpYyBtZXRob2RzIGFyZSBkZWZpbmVkLlxuICAgKi9cbiAgdmFyIFJFU0VSVkVEX1NQRUNfS0VZUyA9IHtcbiAgICBkaXNwbGF5TmFtZTogZnVuY3Rpb24oQ29uc3RydWN0b3IsIGRpc3BsYXlOYW1lKSB7XG4gICAgICBDb25zdHJ1Y3Rvci5kaXNwbGF5TmFtZSA9IGRpc3BsYXlOYW1lO1xuICAgIH0sXG4gICAgbWl4aW5zOiBmdW5jdGlvbihDb25zdHJ1Y3RvciwgbWl4aW5zKSB7XG4gICAgICBpZiAobWl4aW5zKSB7XG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbWl4aW5zLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgbWl4U3BlY0ludG9Db21wb25lbnQoQ29uc3RydWN0b3IsIG1peGluc1tpXSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuICAgIGNoaWxkQ29udGV4dFR5cGVzOiBmdW5jdGlvbihDb25zdHJ1Y3RvciwgY2hpbGRDb250ZXh0VHlwZXMpIHtcbiAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHZhbGlkYXRlVHlwZURlZihDb25zdHJ1Y3RvciwgY2hpbGRDb250ZXh0VHlwZXMsICdjaGlsZENvbnRleHQnKTtcbiAgICAgIH1cbiAgICAgIENvbnN0cnVjdG9yLmNoaWxkQ29udGV4dFR5cGVzID0gX2Fzc2lnbihcbiAgICAgICAge30sXG4gICAgICAgIENvbnN0cnVjdG9yLmNoaWxkQ29udGV4dFR5cGVzLFxuICAgICAgICBjaGlsZENvbnRleHRUeXBlc1xuICAgICAgKTtcbiAgICB9LFxuICAgIGNvbnRleHRUeXBlczogZnVuY3Rpb24oQ29uc3RydWN0b3IsIGNvbnRleHRUeXBlcykge1xuICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgdmFsaWRhdGVUeXBlRGVmKENvbnN0cnVjdG9yLCBjb250ZXh0VHlwZXMsICdjb250ZXh0Jyk7XG4gICAgICB9XG4gICAgICBDb25zdHJ1Y3Rvci5jb250ZXh0VHlwZXMgPSBfYXNzaWduKFxuICAgICAgICB7fSxcbiAgICAgICAgQ29uc3RydWN0b3IuY29udGV4dFR5cGVzLFxuICAgICAgICBjb250ZXh0VHlwZXNcbiAgICAgICk7XG4gICAgfSxcbiAgICAvKipcbiAgICAgKiBTcGVjaWFsIGNhc2UgZ2V0RGVmYXVsdFByb3BzIHdoaWNoIHNob3VsZCBtb3ZlIGludG8gc3RhdGljcyBidXQgcmVxdWlyZXNcbiAgICAgKiBhdXRvbWF0aWMgbWVyZ2luZy5cbiAgICAgKi9cbiAgICBnZXREZWZhdWx0UHJvcHM6IGZ1bmN0aW9uKENvbnN0cnVjdG9yLCBnZXREZWZhdWx0UHJvcHMpIHtcbiAgICAgIGlmIChDb25zdHJ1Y3Rvci5nZXREZWZhdWx0UHJvcHMpIHtcbiAgICAgICAgQ29uc3RydWN0b3IuZ2V0RGVmYXVsdFByb3BzID0gY3JlYXRlTWVyZ2VkUmVzdWx0RnVuY3Rpb24oXG4gICAgICAgICAgQ29uc3RydWN0b3IuZ2V0RGVmYXVsdFByb3BzLFxuICAgICAgICAgIGdldERlZmF1bHRQcm9wc1xuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgQ29uc3RydWN0b3IuZ2V0RGVmYXVsdFByb3BzID0gZ2V0RGVmYXVsdFByb3BzO1xuICAgICAgfVxuICAgIH0sXG4gICAgcHJvcFR5cGVzOiBmdW5jdGlvbihDb25zdHJ1Y3RvciwgcHJvcFR5cGVzKSB7XG4gICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICB2YWxpZGF0ZVR5cGVEZWYoQ29uc3RydWN0b3IsIHByb3BUeXBlcywgJ3Byb3AnKTtcbiAgICAgIH1cbiAgICAgIENvbnN0cnVjdG9yLnByb3BUeXBlcyA9IF9hc3NpZ24oe30sIENvbnN0cnVjdG9yLnByb3BUeXBlcywgcHJvcFR5cGVzKTtcbiAgICB9LFxuICAgIHN0YXRpY3M6IGZ1bmN0aW9uKENvbnN0cnVjdG9yLCBzdGF0aWNzKSB7XG4gICAgICBtaXhTdGF0aWNTcGVjSW50b0NvbXBvbmVudChDb25zdHJ1Y3Rvciwgc3RhdGljcyk7XG4gICAgfSxcbiAgICBhdXRvYmluZDogZnVuY3Rpb24oKSB7fVxuICB9O1xuXG4gIGZ1bmN0aW9uIHZhbGlkYXRlVHlwZURlZihDb25zdHJ1Y3RvciwgdHlwZURlZiwgbG9jYXRpb24pIHtcbiAgICBmb3IgKHZhciBwcm9wTmFtZSBpbiB0eXBlRGVmKSB7XG4gICAgICBpZiAodHlwZURlZi5oYXNPd25Qcm9wZXJ0eShwcm9wTmFtZSkpIHtcbiAgICAgICAgLy8gdXNlIGEgd2FybmluZyBpbnN0ZWFkIG9mIGFuIF9pbnZhcmlhbnQgc28gY29tcG9uZW50c1xuICAgICAgICAvLyBkb24ndCBzaG93IHVwIGluIHByb2QgYnV0IG9ubHkgaW4gX19ERVZfX1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgIHdhcm5pbmcoXG4gICAgICAgICAgICB0eXBlb2YgdHlwZURlZltwcm9wTmFtZV0gPT09ICdmdW5jdGlvbicsXG4gICAgICAgICAgICAnJXM6ICVzIHR5cGUgYCVzYCBpcyBpbnZhbGlkOyBpdCBtdXN0IGJlIGEgZnVuY3Rpb24sIHVzdWFsbHkgZnJvbSAnICtcbiAgICAgICAgICAgICAgJ1JlYWN0LlByb3BUeXBlcy4nLFxuICAgICAgICAgICAgQ29uc3RydWN0b3IuZGlzcGxheU5hbWUgfHwgJ1JlYWN0Q2xhc3MnLFxuICAgICAgICAgICAgUmVhY3RQcm9wVHlwZUxvY2F0aW9uTmFtZXNbbG9jYXRpb25dLFxuICAgICAgICAgICAgcHJvcE5hbWVcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZnVuY3Rpb24gdmFsaWRhdGVNZXRob2RPdmVycmlkZShpc0FscmVhZHlEZWZpbmVkLCBuYW1lKSB7XG4gICAgdmFyIHNwZWNQb2xpY3kgPSBSZWFjdENsYXNzSW50ZXJmYWNlLmhhc093blByb3BlcnR5KG5hbWUpXG4gICAgICA/IFJlYWN0Q2xhc3NJbnRlcmZhY2VbbmFtZV1cbiAgICAgIDogbnVsbDtcblxuICAgIC8vIERpc2FsbG93IG92ZXJyaWRpbmcgb2YgYmFzZSBjbGFzcyBtZXRob2RzIHVubGVzcyBleHBsaWNpdGx5IGFsbG93ZWQuXG4gICAgaWYgKFJlYWN0Q2xhc3NNaXhpbi5oYXNPd25Qcm9wZXJ0eShuYW1lKSkge1xuICAgICAgX2ludmFyaWFudChcbiAgICAgICAgc3BlY1BvbGljeSA9PT0gJ09WRVJSSURFX0JBU0UnLFxuICAgICAgICAnUmVhY3RDbGFzc0ludGVyZmFjZTogWW91IGFyZSBhdHRlbXB0aW5nIHRvIG92ZXJyaWRlICcgK1xuICAgICAgICAgICdgJXNgIGZyb20geW91ciBjbGFzcyBzcGVjaWZpY2F0aW9uLiBFbnN1cmUgdGhhdCB5b3VyIG1ldGhvZCBuYW1lcyAnICtcbiAgICAgICAgICAnZG8gbm90IG92ZXJsYXAgd2l0aCBSZWFjdCBtZXRob2RzLicsXG4gICAgICAgIG5hbWVcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gRGlzYWxsb3cgZGVmaW5pbmcgbWV0aG9kcyBtb3JlIHRoYW4gb25jZSB1bmxlc3MgZXhwbGljaXRseSBhbGxvd2VkLlxuICAgIGlmIChpc0FscmVhZHlEZWZpbmVkKSB7XG4gICAgICBfaW52YXJpYW50KFxuICAgICAgICBzcGVjUG9saWN5ID09PSAnREVGSU5FX01BTlknIHx8IHNwZWNQb2xpY3kgPT09ICdERUZJTkVfTUFOWV9NRVJHRUQnLFxuICAgICAgICAnUmVhY3RDbGFzc0ludGVyZmFjZTogWW91IGFyZSBhdHRlbXB0aW5nIHRvIGRlZmluZSAnICtcbiAgICAgICAgICAnYCVzYCBvbiB5b3VyIGNvbXBvbmVudCBtb3JlIHRoYW4gb25jZS4gVGhpcyBjb25mbGljdCBtYXkgYmUgZHVlICcgK1xuICAgICAgICAgICd0byBhIG1peGluLicsXG4gICAgICAgIG5hbWVcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1peGluIGhlbHBlciB3aGljaCBoYW5kbGVzIHBvbGljeSB2YWxpZGF0aW9uIGFuZCByZXNlcnZlZFxuICAgKiBzcGVjaWZpY2F0aW9uIGtleXMgd2hlbiBidWlsZGluZyBSZWFjdCBjbGFzc2VzLlxuICAgKi9cbiAgZnVuY3Rpb24gbWl4U3BlY0ludG9Db21wb25lbnQoQ29uc3RydWN0b3IsIHNwZWMpIHtcbiAgICBpZiAoIXNwZWMpIHtcbiAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHZhciB0eXBlb2ZTcGVjID0gdHlwZW9mIHNwZWM7XG4gICAgICAgIHZhciBpc01peGluVmFsaWQgPSB0eXBlb2ZTcGVjID09PSAnb2JqZWN0JyAmJiBzcGVjICE9PSBudWxsO1xuXG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgd2FybmluZyhcbiAgICAgICAgICAgIGlzTWl4aW5WYWxpZCxcbiAgICAgICAgICAgIFwiJXM6IFlvdSdyZSBhdHRlbXB0aW5nIHRvIGluY2x1ZGUgYSBtaXhpbiB0aGF0IGlzIGVpdGhlciBudWxsIFwiICtcbiAgICAgICAgICAgICAgJ29yIG5vdCBhbiBvYmplY3QuIENoZWNrIHRoZSBtaXhpbnMgaW5jbHVkZWQgYnkgdGhlIGNvbXBvbmVudCwgJyArXG4gICAgICAgICAgICAgICdhcyB3ZWxsIGFzIGFueSBtaXhpbnMgdGhleSBpbmNsdWRlIHRoZW1zZWx2ZXMuICcgK1xuICAgICAgICAgICAgICAnRXhwZWN0ZWQgb2JqZWN0IGJ1dCBnb3QgJXMuJyxcbiAgICAgICAgICAgIENvbnN0cnVjdG9yLmRpc3BsYXlOYW1lIHx8ICdSZWFjdENsYXNzJyxcbiAgICAgICAgICAgIHNwZWMgPT09IG51bGwgPyBudWxsIDogdHlwZW9mU3BlY1xuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIF9pbnZhcmlhbnQoXG4gICAgICB0eXBlb2Ygc3BlYyAhPT0gJ2Z1bmN0aW9uJyxcbiAgICAgIFwiUmVhY3RDbGFzczogWW91J3JlIGF0dGVtcHRpbmcgdG8gXCIgK1xuICAgICAgICAndXNlIGEgY29tcG9uZW50IGNsYXNzIG9yIGZ1bmN0aW9uIGFzIGEgbWl4aW4uIEluc3RlYWQsIGp1c3QgdXNlIGEgJyArXG4gICAgICAgICdyZWd1bGFyIG9iamVjdC4nXG4gICAgKTtcbiAgICBfaW52YXJpYW50KFxuICAgICAgIWlzVmFsaWRFbGVtZW50KHNwZWMpLFxuICAgICAgXCJSZWFjdENsYXNzOiBZb3UncmUgYXR0ZW1wdGluZyB0byBcIiArXG4gICAgICAgICd1c2UgYSBjb21wb25lbnQgYXMgYSBtaXhpbi4gSW5zdGVhZCwganVzdCB1c2UgYSByZWd1bGFyIG9iamVjdC4nXG4gICAgKTtcblxuICAgIHZhciBwcm90byA9IENvbnN0cnVjdG9yLnByb3RvdHlwZTtcbiAgICB2YXIgYXV0b0JpbmRQYWlycyA9IHByb3RvLl9fcmVhY3RBdXRvQmluZFBhaXJzO1xuXG4gICAgLy8gQnkgaGFuZGxpbmcgbWl4aW5zIGJlZm9yZSBhbnkgb3RoZXIgcHJvcGVydGllcywgd2UgZW5zdXJlIHRoZSBzYW1lXG4gICAgLy8gY2hhaW5pbmcgb3JkZXIgaXMgYXBwbGllZCB0byBtZXRob2RzIHdpdGggREVGSU5FX01BTlkgcG9saWN5LCB3aGV0aGVyXG4gICAgLy8gbWl4aW5zIGFyZSBsaXN0ZWQgYmVmb3JlIG9yIGFmdGVyIHRoZXNlIG1ldGhvZHMgaW4gdGhlIHNwZWMuXG4gICAgaWYgKHNwZWMuaGFzT3duUHJvcGVydHkoTUlYSU5TX0tFWSkpIHtcbiAgICAgIFJFU0VSVkVEX1NQRUNfS0VZUy5taXhpbnMoQ29uc3RydWN0b3IsIHNwZWMubWl4aW5zKTtcbiAgICB9XG5cbiAgICBmb3IgKHZhciBuYW1lIGluIHNwZWMpIHtcbiAgICAgIGlmICghc3BlYy5oYXNPd25Qcm9wZXJ0eShuYW1lKSkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKG5hbWUgPT09IE1JWElOU19LRVkpIHtcbiAgICAgICAgLy8gV2UgaGF2ZSBhbHJlYWR5IGhhbmRsZWQgbWl4aW5zIGluIGEgc3BlY2lhbCBjYXNlIGFib3ZlLlxuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgdmFyIHByb3BlcnR5ID0gc3BlY1tuYW1lXTtcbiAgICAgIHZhciBpc0FscmVhZHlEZWZpbmVkID0gcHJvdG8uaGFzT3duUHJvcGVydHkobmFtZSk7XG4gICAgICB2YWxpZGF0ZU1ldGhvZE92ZXJyaWRlKGlzQWxyZWFkeURlZmluZWQsIG5hbWUpO1xuXG4gICAgICBpZiAoUkVTRVJWRURfU1BFQ19LRVlTLmhhc093blByb3BlcnR5KG5hbWUpKSB7XG4gICAgICAgIFJFU0VSVkVEX1NQRUNfS0VZU1tuYW1lXShDb25zdHJ1Y3RvciwgcHJvcGVydHkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gU2V0dXAgbWV0aG9kcyBvbiBwcm90b3R5cGU6XG4gICAgICAgIC8vIFRoZSBmb2xsb3dpbmcgbWVtYmVyIG1ldGhvZHMgc2hvdWxkIG5vdCBiZSBhdXRvbWF0aWNhbGx5IGJvdW5kOlxuICAgICAgICAvLyAxLiBFeHBlY3RlZCBSZWFjdENsYXNzIG1ldGhvZHMgKGluIHRoZSBcImludGVyZmFjZVwiKS5cbiAgICAgICAgLy8gMi4gT3ZlcnJpZGRlbiBtZXRob2RzICh0aGF0IHdlcmUgbWl4ZWQgaW4pLlxuICAgICAgICB2YXIgaXNSZWFjdENsYXNzTWV0aG9kID0gUmVhY3RDbGFzc0ludGVyZmFjZS5oYXNPd25Qcm9wZXJ0eShuYW1lKTtcbiAgICAgICAgdmFyIGlzRnVuY3Rpb24gPSB0eXBlb2YgcHJvcGVydHkgPT09ICdmdW5jdGlvbic7XG4gICAgICAgIHZhciBzaG91bGRBdXRvQmluZCA9XG4gICAgICAgICAgaXNGdW5jdGlvbiAmJlxuICAgICAgICAgICFpc1JlYWN0Q2xhc3NNZXRob2QgJiZcbiAgICAgICAgICAhaXNBbHJlYWR5RGVmaW5lZCAmJlxuICAgICAgICAgIHNwZWMuYXV0b2JpbmQgIT09IGZhbHNlO1xuXG4gICAgICAgIGlmIChzaG91bGRBdXRvQmluZCkge1xuICAgICAgICAgIGF1dG9CaW5kUGFpcnMucHVzaChuYW1lLCBwcm9wZXJ0eSk7XG4gICAgICAgICAgcHJvdG9bbmFtZV0gPSBwcm9wZXJ0eTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAoaXNBbHJlYWR5RGVmaW5lZCkge1xuICAgICAgICAgICAgdmFyIHNwZWNQb2xpY3kgPSBSZWFjdENsYXNzSW50ZXJmYWNlW25hbWVdO1xuXG4gICAgICAgICAgICAvLyBUaGVzZSBjYXNlcyBzaG91bGQgYWxyZWFkeSBiZSBjYXVnaHQgYnkgdmFsaWRhdGVNZXRob2RPdmVycmlkZS5cbiAgICAgICAgICAgIF9pbnZhcmlhbnQoXG4gICAgICAgICAgICAgIGlzUmVhY3RDbGFzc01ldGhvZCAmJlxuICAgICAgICAgICAgICAgIChzcGVjUG9saWN5ID09PSAnREVGSU5FX01BTllfTUVSR0VEJyB8fFxuICAgICAgICAgICAgICAgICAgc3BlY1BvbGljeSA9PT0gJ0RFRklORV9NQU5ZJyksXG4gICAgICAgICAgICAgICdSZWFjdENsYXNzOiBVbmV4cGVjdGVkIHNwZWMgcG9saWN5ICVzIGZvciBrZXkgJXMgJyArXG4gICAgICAgICAgICAgICAgJ3doZW4gbWl4aW5nIGluIGNvbXBvbmVudCBzcGVjcy4nLFxuICAgICAgICAgICAgICBzcGVjUG9saWN5LFxuICAgICAgICAgICAgICBuYW1lXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAvLyBGb3IgbWV0aG9kcyB3aGljaCBhcmUgZGVmaW5lZCBtb3JlIHRoYW4gb25jZSwgY2FsbCB0aGUgZXhpc3RpbmdcbiAgICAgICAgICAgIC8vIG1ldGhvZHMgYmVmb3JlIGNhbGxpbmcgdGhlIG5ldyBwcm9wZXJ0eSwgbWVyZ2luZyBpZiBhcHByb3ByaWF0ZS5cbiAgICAgICAgICAgIGlmIChzcGVjUG9saWN5ID09PSAnREVGSU5FX01BTllfTUVSR0VEJykge1xuICAgICAgICAgICAgICBwcm90b1tuYW1lXSA9IGNyZWF0ZU1lcmdlZFJlc3VsdEZ1bmN0aW9uKHByb3RvW25hbWVdLCBwcm9wZXJ0eSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHNwZWNQb2xpY3kgPT09ICdERUZJTkVfTUFOWScpIHtcbiAgICAgICAgICAgICAgcHJvdG9bbmFtZV0gPSBjcmVhdGVDaGFpbmVkRnVuY3Rpb24ocHJvdG9bbmFtZV0sIHByb3BlcnR5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcHJvdG9bbmFtZV0gPSBwcm9wZXJ0eTtcbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgIC8vIEFkZCB2ZXJib3NlIGRpc3BsYXlOYW1lIHRvIHRoZSBmdW5jdGlvbiwgd2hpY2ggaGVscHMgd2hlbiBsb29raW5nXG4gICAgICAgICAgICAgIC8vIGF0IHByb2ZpbGluZyB0b29scy5cbiAgICAgICAgICAgICAgaWYgKHR5cGVvZiBwcm9wZXJ0eSA9PT0gJ2Z1bmN0aW9uJyAmJiBzcGVjLmRpc3BsYXlOYW1lKSB7XG4gICAgICAgICAgICAgICAgcHJvdG9bbmFtZV0uZGlzcGxheU5hbWUgPSBzcGVjLmRpc3BsYXlOYW1lICsgJ18nICsgbmFtZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGZ1bmN0aW9uIG1peFN0YXRpY1NwZWNJbnRvQ29tcG9uZW50KENvbnN0cnVjdG9yLCBzdGF0aWNzKSB7XG4gICAgaWYgKCFzdGF0aWNzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGZvciAodmFyIG5hbWUgaW4gc3RhdGljcykge1xuICAgICAgdmFyIHByb3BlcnR5ID0gc3RhdGljc1tuYW1lXTtcbiAgICAgIGlmICghc3RhdGljcy5oYXNPd25Qcm9wZXJ0eShuYW1lKSkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgdmFyIGlzUmVzZXJ2ZWQgPSBuYW1lIGluIFJFU0VSVkVEX1NQRUNfS0VZUztcbiAgICAgIF9pbnZhcmlhbnQoXG4gICAgICAgICFpc1Jlc2VydmVkLFxuICAgICAgICAnUmVhY3RDbGFzczogWW91IGFyZSBhdHRlbXB0aW5nIHRvIGRlZmluZSBhIHJlc2VydmVkICcgK1xuICAgICAgICAgICdwcm9wZXJ0eSwgYCVzYCwgdGhhdCBzaG91bGRuXFwndCBiZSBvbiB0aGUgXCJzdGF0aWNzXCIga2V5LiBEZWZpbmUgaXQgJyArXG4gICAgICAgICAgJ2FzIGFuIGluc3RhbmNlIHByb3BlcnR5IGluc3RlYWQ7IGl0IHdpbGwgc3RpbGwgYmUgYWNjZXNzaWJsZSBvbiB0aGUgJyArXG4gICAgICAgICAgJ2NvbnN0cnVjdG9yLicsXG4gICAgICAgIG5hbWVcbiAgICAgICk7XG5cbiAgICAgIHZhciBpc0luaGVyaXRlZCA9IG5hbWUgaW4gQ29uc3RydWN0b3I7XG4gICAgICBfaW52YXJpYW50KFxuICAgICAgICAhaXNJbmhlcml0ZWQsXG4gICAgICAgICdSZWFjdENsYXNzOiBZb3UgYXJlIGF0dGVtcHRpbmcgdG8gZGVmaW5lICcgK1xuICAgICAgICAgICdgJXNgIG9uIHlvdXIgY29tcG9uZW50IG1vcmUgdGhhbiBvbmNlLiBUaGlzIGNvbmZsaWN0IG1heSBiZSAnICtcbiAgICAgICAgICAnZHVlIHRvIGEgbWl4aW4uJyxcbiAgICAgICAgbmFtZVxuICAgICAgKTtcbiAgICAgIENvbnN0cnVjdG9yW25hbWVdID0gcHJvcGVydHk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1lcmdlIHR3byBvYmplY3RzLCBidXQgdGhyb3cgaWYgYm90aCBjb250YWluIHRoZSBzYW1lIGtleS5cbiAgICpcbiAgICogQHBhcmFtIHtvYmplY3R9IG9uZSBUaGUgZmlyc3Qgb2JqZWN0LCB3aGljaCBpcyBtdXRhdGVkLlxuICAgKiBAcGFyYW0ge29iamVjdH0gdHdvIFRoZSBzZWNvbmQgb2JqZWN0XG4gICAqIEByZXR1cm4ge29iamVjdH0gb25lIGFmdGVyIGl0IGhhcyBiZWVuIG11dGF0ZWQgdG8gY29udGFpbiBldmVyeXRoaW5nIGluIHR3by5cbiAgICovXG4gIGZ1bmN0aW9uIG1lcmdlSW50b1dpdGhOb0R1cGxpY2F0ZUtleXMob25lLCB0d28pIHtcbiAgICBfaW52YXJpYW50KFxuICAgICAgb25lICYmIHR3byAmJiB0eXBlb2Ygb25lID09PSAnb2JqZWN0JyAmJiB0eXBlb2YgdHdvID09PSAnb2JqZWN0JyxcbiAgICAgICdtZXJnZUludG9XaXRoTm9EdXBsaWNhdGVLZXlzKCk6IENhbm5vdCBtZXJnZSBub24tb2JqZWN0cy4nXG4gICAgKTtcblxuICAgIGZvciAodmFyIGtleSBpbiB0d28pIHtcbiAgICAgIGlmICh0d28uaGFzT3duUHJvcGVydHkoa2V5KSkge1xuICAgICAgICBfaW52YXJpYW50KFxuICAgICAgICAgIG9uZVtrZXldID09PSB1bmRlZmluZWQsXG4gICAgICAgICAgJ21lcmdlSW50b1dpdGhOb0R1cGxpY2F0ZUtleXMoKTogJyArXG4gICAgICAgICAgICAnVHJpZWQgdG8gbWVyZ2UgdHdvIG9iamVjdHMgd2l0aCB0aGUgc2FtZSBrZXk6IGAlc2AuIFRoaXMgY29uZmxpY3QgJyArXG4gICAgICAgICAgICAnbWF5IGJlIGR1ZSB0byBhIG1peGluOyBpbiBwYXJ0aWN1bGFyLCB0aGlzIG1heSBiZSBjYXVzZWQgYnkgdHdvICcgK1xuICAgICAgICAgICAgJ2dldEluaXRpYWxTdGF0ZSgpIG9yIGdldERlZmF1bHRQcm9wcygpIG1ldGhvZHMgcmV0dXJuaW5nIG9iamVjdHMgJyArXG4gICAgICAgICAgICAnd2l0aCBjbGFzaGluZyBrZXlzLicsXG4gICAgICAgICAga2V5XG4gICAgICAgICk7XG4gICAgICAgIG9uZVtrZXldID0gdHdvW2tleV07XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBvbmU7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIGZ1bmN0aW9uIHRoYXQgaW52b2tlcyB0d28gZnVuY3Rpb25zIGFuZCBtZXJnZXMgdGhlaXIgcmV0dXJuIHZhbHVlcy5cbiAgICpcbiAgICogQHBhcmFtIHtmdW5jdGlvbn0gb25lIEZ1bmN0aW9uIHRvIGludm9rZSBmaXJzdC5cbiAgICogQHBhcmFtIHtmdW5jdGlvbn0gdHdvIEZ1bmN0aW9uIHRvIGludm9rZSBzZWNvbmQuXG4gICAqIEByZXR1cm4ge2Z1bmN0aW9ufSBGdW5jdGlvbiB0aGF0IGludm9rZXMgdGhlIHR3byBhcmd1bWVudCBmdW5jdGlvbnMuXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBmdW5jdGlvbiBjcmVhdGVNZXJnZWRSZXN1bHRGdW5jdGlvbihvbmUsIHR3bykge1xuICAgIHJldHVybiBmdW5jdGlvbiBtZXJnZWRSZXN1bHQoKSB7XG4gICAgICB2YXIgYSA9IG9uZS5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xuICAgICAgdmFyIGIgPSB0d28uYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbiAgICAgIGlmIChhID09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIGI7XG4gICAgICB9IGVsc2UgaWYgKGIgPT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gYTtcbiAgICAgIH1cbiAgICAgIHZhciBjID0ge307XG4gICAgICBtZXJnZUludG9XaXRoTm9EdXBsaWNhdGVLZXlzKGMsIGEpO1xuICAgICAgbWVyZ2VJbnRvV2l0aE5vRHVwbGljYXRlS2V5cyhjLCBiKTtcbiAgICAgIHJldHVybiBjO1xuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIGZ1bmN0aW9uIHRoYXQgaW52b2tlcyB0d28gZnVuY3Rpb25zIGFuZCBpZ25vcmVzIHRoZWlyIHJldHVybiB2YWxlcy5cbiAgICpcbiAgICogQHBhcmFtIHtmdW5jdGlvbn0gb25lIEZ1bmN0aW9uIHRvIGludm9rZSBmaXJzdC5cbiAgICogQHBhcmFtIHtmdW5jdGlvbn0gdHdvIEZ1bmN0aW9uIHRvIGludm9rZSBzZWNvbmQuXG4gICAqIEByZXR1cm4ge2Z1bmN0aW9ufSBGdW5jdGlvbiB0aGF0IGludm9rZXMgdGhlIHR3byBhcmd1bWVudCBmdW5jdGlvbnMuXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBmdW5jdGlvbiBjcmVhdGVDaGFpbmVkRnVuY3Rpb24ob25lLCB0d28pIHtcbiAgICByZXR1cm4gZnVuY3Rpb24gY2hhaW5lZEZ1bmN0aW9uKCkge1xuICAgICAgb25lLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XG4gICAgICB0d28uYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEJpbmRzIGEgbWV0aG9kIHRvIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBjb21wb25lbnQgQ29tcG9uZW50IHdob3NlIG1ldGhvZCBpcyBnb2luZyB0byBiZSBib3VuZC5cbiAgICogQHBhcmFtIHtmdW5jdGlvbn0gbWV0aG9kIE1ldGhvZCB0byBiZSBib3VuZC5cbiAgICogQHJldHVybiB7ZnVuY3Rpb259IFRoZSBib3VuZCBtZXRob2QuXG4gICAqL1xuICBmdW5jdGlvbiBiaW5kQXV0b0JpbmRNZXRob2QoY29tcG9uZW50LCBtZXRob2QpIHtcbiAgICB2YXIgYm91bmRNZXRob2QgPSBtZXRob2QuYmluZChjb21wb25lbnQpO1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICBib3VuZE1ldGhvZC5fX3JlYWN0Qm91bmRDb250ZXh0ID0gY29tcG9uZW50O1xuICAgICAgYm91bmRNZXRob2QuX19yZWFjdEJvdW5kTWV0aG9kID0gbWV0aG9kO1xuICAgICAgYm91bmRNZXRob2QuX19yZWFjdEJvdW5kQXJndW1lbnRzID0gbnVsbDtcbiAgICAgIHZhciBjb21wb25lbnROYW1lID0gY29tcG9uZW50LmNvbnN0cnVjdG9yLmRpc3BsYXlOYW1lO1xuICAgICAgdmFyIF9iaW5kID0gYm91bmRNZXRob2QuYmluZDtcbiAgICAgIGJvdW5kTWV0aG9kLmJpbmQgPSBmdW5jdGlvbihuZXdUaGlzKSB7XG4gICAgICAgIGZvciAoXG4gICAgICAgICAgdmFyIF9sZW4gPSBhcmd1bWVudHMubGVuZ3RoLFxuICAgICAgICAgICAgYXJncyA9IEFycmF5KF9sZW4gPiAxID8gX2xlbiAtIDEgOiAwKSxcbiAgICAgICAgICAgIF9rZXkgPSAxO1xuICAgICAgICAgIF9rZXkgPCBfbGVuO1xuICAgICAgICAgIF9rZXkrK1xuICAgICAgICApIHtcbiAgICAgICAgICBhcmdzW19rZXkgLSAxXSA9IGFyZ3VtZW50c1tfa2V5XTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFVzZXIgaXMgdHJ5aW5nIHRvIGJpbmQoKSBhbiBhdXRvYm91bmQgbWV0aG9kOyB3ZSBlZmZlY3RpdmVseSB3aWxsXG4gICAgICAgIC8vIGlnbm9yZSB0aGUgdmFsdWUgb2YgXCJ0aGlzXCIgdGhhdCB0aGUgdXNlciBpcyB0cnlpbmcgdG8gdXNlLCBzb1xuICAgICAgICAvLyBsZXQncyB3YXJuLlxuICAgICAgICBpZiAobmV3VGhpcyAhPT0gY29tcG9uZW50ICYmIG5ld1RoaXMgIT09IG51bGwpIHtcbiAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgd2FybmluZyhcbiAgICAgICAgICAgICAgZmFsc2UsXG4gICAgICAgICAgICAgICdiaW5kKCk6IFJlYWN0IGNvbXBvbmVudCBtZXRob2RzIG1heSBvbmx5IGJlIGJvdW5kIHRvIHRoZSAnICtcbiAgICAgICAgICAgICAgICAnY29tcG9uZW50IGluc3RhbmNlLiBTZWUgJXMnLFxuICAgICAgICAgICAgICBjb21wb25lbnROYW1lXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmICghYXJncy5sZW5ndGgpIHtcbiAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgd2FybmluZyhcbiAgICAgICAgICAgICAgZmFsc2UsXG4gICAgICAgICAgICAgICdiaW5kKCk6IFlvdSBhcmUgYmluZGluZyBhIGNvbXBvbmVudCBtZXRob2QgdG8gdGhlIGNvbXBvbmVudC4gJyArXG4gICAgICAgICAgICAgICAgJ1JlYWN0IGRvZXMgdGhpcyBmb3IgeW91IGF1dG9tYXRpY2FsbHkgaW4gYSBoaWdoLXBlcmZvcm1hbmNlICcgK1xuICAgICAgICAgICAgICAgICd3YXksIHNvIHlvdSBjYW4gc2FmZWx5IHJlbW92ZSB0aGlzIGNhbGwuIFNlZSAlcycsXG4gICAgICAgICAgICAgIGNvbXBvbmVudE5hbWVcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBib3VuZE1ldGhvZDtcbiAgICAgICAgfVxuICAgICAgICB2YXIgcmVib3VuZE1ldGhvZCA9IF9iaW5kLmFwcGx5KGJvdW5kTWV0aG9kLCBhcmd1bWVudHMpO1xuICAgICAgICByZWJvdW5kTWV0aG9kLl9fcmVhY3RCb3VuZENvbnRleHQgPSBjb21wb25lbnQ7XG4gICAgICAgIHJlYm91bmRNZXRob2QuX19yZWFjdEJvdW5kTWV0aG9kID0gbWV0aG9kO1xuICAgICAgICByZWJvdW5kTWV0aG9kLl9fcmVhY3RCb3VuZEFyZ3VtZW50cyA9IGFyZ3M7XG4gICAgICAgIHJldHVybiByZWJvdW5kTWV0aG9kO1xuICAgICAgfTtcbiAgICB9XG4gICAgcmV0dXJuIGJvdW5kTWV0aG9kO1xuICB9XG5cbiAgLyoqXG4gICAqIEJpbmRzIGFsbCBhdXRvLWJvdW5kIG1ldGhvZHMgaW4gYSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBjb21wb25lbnQgQ29tcG9uZW50IHdob3NlIG1ldGhvZCBpcyBnb2luZyB0byBiZSBib3VuZC5cbiAgICovXG4gIGZ1bmN0aW9uIGJpbmRBdXRvQmluZE1ldGhvZHMoY29tcG9uZW50KSB7XG4gICAgdmFyIHBhaXJzID0gY29tcG9uZW50Ll9fcmVhY3RBdXRvQmluZFBhaXJzO1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcGFpcnMubGVuZ3RoOyBpICs9IDIpIHtcbiAgICAgIHZhciBhdXRvQmluZEtleSA9IHBhaXJzW2ldO1xuICAgICAgdmFyIG1ldGhvZCA9IHBhaXJzW2kgKyAxXTtcbiAgICAgIGNvbXBvbmVudFthdXRvQmluZEtleV0gPSBiaW5kQXV0b0JpbmRNZXRob2QoY29tcG9uZW50LCBtZXRob2QpO1xuICAgIH1cbiAgfVxuXG4gIHZhciBJc01vdW50ZWRQcmVNaXhpbiA9IHtcbiAgICBjb21wb25lbnREaWRNb3VudDogZnVuY3Rpb24oKSB7XG4gICAgICB0aGlzLl9faXNNb3VudGVkID0gdHJ1ZTtcbiAgICB9XG4gIH07XG5cbiAgdmFyIElzTW91bnRlZFBvc3RNaXhpbiA9IHtcbiAgICBjb21wb25lbnRXaWxsVW5tb3VudDogZnVuY3Rpb24oKSB7XG4gICAgICB0aGlzLl9faXNNb3VudGVkID0gZmFsc2U7XG4gICAgfVxuICB9O1xuXG4gIC8qKlxuICAgKiBBZGQgbW9yZSB0byB0aGUgUmVhY3RDbGFzcyBiYXNlIGNsYXNzLiBUaGVzZSBhcmUgYWxsIGxlZ2FjeSBmZWF0dXJlcyBhbmRcbiAgICogdGhlcmVmb3JlIG5vdCBhbHJlYWR5IHBhcnQgb2YgdGhlIG1vZGVybiBSZWFjdENvbXBvbmVudC5cbiAgICovXG4gIHZhciBSZWFjdENsYXNzTWl4aW4gPSB7XG4gICAgLyoqXG4gICAgICogVE9ETzogVGhpcyB3aWxsIGJlIGRlcHJlY2F0ZWQgYmVjYXVzZSBzdGF0ZSBzaG91bGQgYWx3YXlzIGtlZXAgYSBjb25zaXN0ZW50XG4gICAgICogdHlwZSBzaWduYXR1cmUgYW5kIHRoZSBvbmx5IHVzZSBjYXNlIGZvciB0aGlzLCBpcyB0byBhdm9pZCB0aGF0LlxuICAgICAqL1xuICAgIHJlcGxhY2VTdGF0ZTogZnVuY3Rpb24obmV3U3RhdGUsIGNhbGxiYWNrKSB7XG4gICAgICB0aGlzLnVwZGF0ZXIuZW5xdWV1ZVJlcGxhY2VTdGF0ZSh0aGlzLCBuZXdTdGF0ZSwgY2FsbGJhY2spO1xuICAgIH0sXG5cbiAgICAvKipcbiAgICAgKiBDaGVja3Mgd2hldGhlciBvciBub3QgdGhpcyBjb21wb3NpdGUgY29tcG9uZW50IGlzIG1vdW50ZWQuXG4gICAgICogQHJldHVybiB7Ym9vbGVhbn0gVHJ1ZSBpZiBtb3VudGVkLCBmYWxzZSBvdGhlcndpc2UuXG4gICAgICogQHByb3RlY3RlZFxuICAgICAqIEBmaW5hbFxuICAgICAqL1xuICAgIGlzTW91bnRlZDogZnVuY3Rpb24oKSB7XG4gICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICB3YXJuaW5nKFxuICAgICAgICAgIHRoaXMuX19kaWRXYXJuSXNNb3VudGVkLFxuICAgICAgICAgICclczogaXNNb3VudGVkIGlzIGRlcHJlY2F0ZWQuIEluc3RlYWQsIG1ha2Ugc3VyZSB0byBjbGVhbiB1cCAnICtcbiAgICAgICAgICAgICdzdWJzY3JpcHRpb25zIGFuZCBwZW5kaW5nIHJlcXVlc3RzIGluIGNvbXBvbmVudFdpbGxVbm1vdW50IHRvICcgK1xuICAgICAgICAgICAgJ3ByZXZlbnQgbWVtb3J5IGxlYWtzLicsXG4gICAgICAgICAgKHRoaXMuY29uc3RydWN0b3IgJiYgdGhpcy5jb25zdHJ1Y3Rvci5kaXNwbGF5TmFtZSkgfHxcbiAgICAgICAgICAgIHRoaXMubmFtZSB8fFxuICAgICAgICAgICAgJ0NvbXBvbmVudCdcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5fX2RpZFdhcm5Jc01vdW50ZWQgPSB0cnVlO1xuICAgICAgfVxuICAgICAgcmV0dXJuICEhdGhpcy5fX2lzTW91bnRlZDtcbiAgICB9XG4gIH07XG5cbiAgdmFyIFJlYWN0Q2xhc3NDb21wb25lbnQgPSBmdW5jdGlvbigpIHt9O1xuICBfYXNzaWduKFxuICAgIFJlYWN0Q2xhc3NDb21wb25lbnQucHJvdG90eXBlLFxuICAgIFJlYWN0Q29tcG9uZW50LnByb3RvdHlwZSxcbiAgICBSZWFjdENsYXNzTWl4aW5cbiAgKTtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIGNvbXBvc2l0ZSBjb21wb25lbnQgY2xhc3MgZ2l2ZW4gYSBjbGFzcyBzcGVjaWZpY2F0aW9uLlxuICAgKiBTZWUgaHR0cHM6Ly9mYWNlYm9vay5naXRodWIuaW8vcmVhY3QvZG9jcy90b3AtbGV2ZWwtYXBpLmh0bWwjcmVhY3QuY3JlYXRlY2xhc3NcbiAgICpcbiAgICogQHBhcmFtIHtvYmplY3R9IHNwZWMgQ2xhc3Mgc3BlY2lmaWNhdGlvbiAod2hpY2ggbXVzdCBkZWZpbmUgYHJlbmRlcmApLlxuICAgKiBAcmV0dXJuIHtmdW5jdGlvbn0gQ29tcG9uZW50IGNvbnN0cnVjdG9yIGZ1bmN0aW9uLlxuICAgKiBAcHVibGljXG4gICAqL1xuICBmdW5jdGlvbiBjcmVhdGVDbGFzcyhzcGVjKSB7XG4gICAgLy8gVG8ga2VlcCBvdXIgd2FybmluZ3MgbW9yZSB1bmRlcnN0YW5kYWJsZSwgd2UnbGwgdXNlIGEgbGl0dGxlIGhhY2sgaGVyZSB0b1xuICAgIC8vIGVuc3VyZSB0aGF0IENvbnN0cnVjdG9yLm5hbWUgIT09ICdDb25zdHJ1Y3RvcicuIFRoaXMgbWFrZXMgc3VyZSB3ZSBkb24ndFxuICAgIC8vIHVubmVjZXNzYXJpbHkgaWRlbnRpZnkgYSBjbGFzcyB3aXRob3V0IGRpc3BsYXlOYW1lIGFzICdDb25zdHJ1Y3RvcicuXG4gICAgdmFyIENvbnN0cnVjdG9yID0gaWRlbnRpdHkoZnVuY3Rpb24ocHJvcHMsIGNvbnRleHQsIHVwZGF0ZXIpIHtcbiAgICAgIC8vIFRoaXMgY29uc3RydWN0b3IgZ2V0cyBvdmVycmlkZGVuIGJ5IG1vY2tzLiBUaGUgYXJndW1lbnQgaXMgdXNlZFxuICAgICAgLy8gYnkgbW9ja3MgdG8gYXNzZXJ0IG9uIHdoYXQgZ2V0cyBtb3VudGVkLlxuXG4gICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICB3YXJuaW5nKFxuICAgICAgICAgIHRoaXMgaW5zdGFuY2VvZiBDb25zdHJ1Y3RvcixcbiAgICAgICAgICAnU29tZXRoaW5nIGlzIGNhbGxpbmcgYSBSZWFjdCBjb21wb25lbnQgZGlyZWN0bHkuIFVzZSBhIGZhY3Rvcnkgb3IgJyArXG4gICAgICAgICAgICAnSlNYIGluc3RlYWQuIFNlZTogaHR0cHM6Ly9mYi5tZS9yZWFjdC1sZWdhY3lmYWN0b3J5J1xuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICAvLyBXaXJlIHVwIGF1dG8tYmluZGluZ1xuICAgICAgaWYgKHRoaXMuX19yZWFjdEF1dG9CaW5kUGFpcnMubGVuZ3RoKSB7XG4gICAgICAgIGJpbmRBdXRvQmluZE1ldGhvZHModGhpcyk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMucHJvcHMgPSBwcm9wcztcbiAgICAgIHRoaXMuY29udGV4dCA9IGNvbnRleHQ7XG4gICAgICB0aGlzLnJlZnMgPSBlbXB0eU9iamVjdDtcbiAgICAgIHRoaXMudXBkYXRlciA9IHVwZGF0ZXIgfHwgUmVhY3ROb29wVXBkYXRlUXVldWU7XG5cbiAgICAgIHRoaXMuc3RhdGUgPSBudWxsO1xuXG4gICAgICAvLyBSZWFjdENsYXNzZXMgZG9lc24ndCBoYXZlIGNvbnN0cnVjdG9ycy4gSW5zdGVhZCwgdGhleSB1c2UgdGhlXG4gICAgICAvLyBnZXRJbml0aWFsU3RhdGUgYW5kIGNvbXBvbmVudFdpbGxNb3VudCBtZXRob2RzIGZvciBpbml0aWFsaXphdGlvbi5cblxuICAgICAgdmFyIGluaXRpYWxTdGF0ZSA9IHRoaXMuZ2V0SW5pdGlhbFN0YXRlID8gdGhpcy5nZXRJbml0aWFsU3RhdGUoKSA6IG51bGw7XG4gICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAvLyBXZSBhbGxvdyBhdXRvLW1vY2tzIHRvIHByb2NlZWQgYXMgaWYgdGhleSdyZSByZXR1cm5pbmcgbnVsbC5cbiAgICAgICAgaWYgKFxuICAgICAgICAgIGluaXRpYWxTdGF0ZSA9PT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgdGhpcy5nZXRJbml0aWFsU3RhdGUuX2lzTW9ja0Z1bmN0aW9uXG4gICAgICAgICkge1xuICAgICAgICAgIC8vIFRoaXMgaXMgcHJvYmFibHkgYmFkIHByYWN0aWNlLiBDb25zaWRlciB3YXJuaW5nIGhlcmUgYW5kXG4gICAgICAgICAgLy8gZGVwcmVjYXRpbmcgdGhpcyBjb252ZW5pZW5jZS5cbiAgICAgICAgICBpbml0aWFsU3RhdGUgPSBudWxsO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBfaW52YXJpYW50KFxuICAgICAgICB0eXBlb2YgaW5pdGlhbFN0YXRlID09PSAnb2JqZWN0JyAmJiAhQXJyYXkuaXNBcnJheShpbml0aWFsU3RhdGUpLFxuICAgICAgICAnJXMuZ2V0SW5pdGlhbFN0YXRlKCk6IG11c3QgcmV0dXJuIGFuIG9iamVjdCBvciBudWxsJyxcbiAgICAgICAgQ29uc3RydWN0b3IuZGlzcGxheU5hbWUgfHwgJ1JlYWN0Q29tcG9zaXRlQ29tcG9uZW50J1xuICAgICAgKTtcblxuICAgICAgdGhpcy5zdGF0ZSA9IGluaXRpYWxTdGF0ZTtcbiAgICB9KTtcbiAgICBDb25zdHJ1Y3Rvci5wcm90b3R5cGUgPSBuZXcgUmVhY3RDbGFzc0NvbXBvbmVudCgpO1xuICAgIENvbnN0cnVjdG9yLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9IENvbnN0cnVjdG9yO1xuICAgIENvbnN0cnVjdG9yLnByb3RvdHlwZS5fX3JlYWN0QXV0b0JpbmRQYWlycyA9IFtdO1xuXG4gICAgaW5qZWN0ZWRNaXhpbnMuZm9yRWFjaChtaXhTcGVjSW50b0NvbXBvbmVudC5iaW5kKG51bGwsIENvbnN0cnVjdG9yKSk7XG5cbiAgICBtaXhTcGVjSW50b0NvbXBvbmVudChDb25zdHJ1Y3RvciwgSXNNb3VudGVkUHJlTWl4aW4pO1xuICAgIG1peFNwZWNJbnRvQ29tcG9uZW50KENvbnN0cnVjdG9yLCBzcGVjKTtcbiAgICBtaXhTcGVjSW50b0NvbXBvbmVudChDb25zdHJ1Y3RvciwgSXNNb3VudGVkUG9zdE1peGluKTtcblxuICAgIC8vIEluaXRpYWxpemUgdGhlIGRlZmF1bHRQcm9wcyBwcm9wZXJ0eSBhZnRlciBhbGwgbWl4aW5zIGhhdmUgYmVlbiBtZXJnZWQuXG4gICAgaWYgKENvbnN0cnVjdG9yLmdldERlZmF1bHRQcm9wcykge1xuICAgICAgQ29uc3RydWN0b3IuZGVmYXVsdFByb3BzID0gQ29uc3RydWN0b3IuZ2V0RGVmYXVsdFByb3BzKCk7XG4gICAgfVxuXG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgIC8vIFRoaXMgaXMgYSB0YWcgdG8gaW5kaWNhdGUgdGhhdCB0aGUgdXNlIG9mIHRoZXNlIG1ldGhvZCBuYW1lcyBpcyBvayxcbiAgICAgIC8vIHNpbmNlIGl0J3MgdXNlZCB3aXRoIGNyZWF0ZUNsYXNzLiBJZiBpdCdzIG5vdCwgdGhlbiBpdCdzIGxpa2VseSBhXG4gICAgICAvLyBtaXN0YWtlIHNvIHdlJ2xsIHdhcm4geW91IHRvIHVzZSB0aGUgc3RhdGljIHByb3BlcnR5LCBwcm9wZXJ0eVxuICAgICAgLy8gaW5pdGlhbGl6ZXIgb3IgY29uc3RydWN0b3IgcmVzcGVjdGl2ZWx5LlxuICAgICAgaWYgKENvbnN0cnVjdG9yLmdldERlZmF1bHRQcm9wcykge1xuICAgICAgICBDb25zdHJ1Y3Rvci5nZXREZWZhdWx0UHJvcHMuaXNSZWFjdENsYXNzQXBwcm92ZWQgPSB7fTtcbiAgICAgIH1cbiAgICAgIGlmIChDb25zdHJ1Y3Rvci5wcm90b3R5cGUuZ2V0SW5pdGlhbFN0YXRlKSB7XG4gICAgICAgIENvbnN0cnVjdG9yLnByb3RvdHlwZS5nZXRJbml0aWFsU3RhdGUuaXNSZWFjdENsYXNzQXBwcm92ZWQgPSB7fTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBfaW52YXJpYW50KFxuICAgICAgQ29uc3RydWN0b3IucHJvdG90eXBlLnJlbmRlcixcbiAgICAgICdjcmVhdGVDbGFzcyguLi4pOiBDbGFzcyBzcGVjaWZpY2F0aW9uIG11c3QgaW1wbGVtZW50IGEgYHJlbmRlcmAgbWV0aG9kLidcbiAgICApO1xuXG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgIHdhcm5pbmcoXG4gICAgICAgICFDb25zdHJ1Y3Rvci5wcm90b3R5cGUuY29tcG9uZW50U2hvdWxkVXBkYXRlLFxuICAgICAgICAnJXMgaGFzIGEgbWV0aG9kIGNhbGxlZCAnICtcbiAgICAgICAgICAnY29tcG9uZW50U2hvdWxkVXBkYXRlKCkuIERpZCB5b3UgbWVhbiBzaG91bGRDb21wb25lbnRVcGRhdGUoKT8gJyArXG4gICAgICAgICAgJ1RoZSBuYW1lIGlzIHBocmFzZWQgYXMgYSBxdWVzdGlvbiBiZWNhdXNlIHRoZSBmdW5jdGlvbiBpcyAnICtcbiAgICAgICAgICAnZXhwZWN0ZWQgdG8gcmV0dXJuIGEgdmFsdWUuJyxcbiAgICAgICAgc3BlYy5kaXNwbGF5TmFtZSB8fCAnQSBjb21wb25lbnQnXG4gICAgICApO1xuICAgICAgd2FybmluZyhcbiAgICAgICAgIUNvbnN0cnVjdG9yLnByb3RvdHlwZS5jb21wb25lbnRXaWxsUmVjaWV2ZVByb3BzLFxuICAgICAgICAnJXMgaGFzIGEgbWV0aG9kIGNhbGxlZCAnICtcbiAgICAgICAgICAnY29tcG9uZW50V2lsbFJlY2lldmVQcm9wcygpLiBEaWQgeW91IG1lYW4gY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcygpPycsXG4gICAgICAgIHNwZWMuZGlzcGxheU5hbWUgfHwgJ0EgY29tcG9uZW50J1xuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBSZWR1Y2UgdGltZSBzcGVudCBkb2luZyBsb29rdXBzIGJ5IHNldHRpbmcgdGhlc2Ugb24gdGhlIHByb3RvdHlwZS5cbiAgICBmb3IgKHZhciBtZXRob2ROYW1lIGluIFJlYWN0Q2xhc3NJbnRlcmZhY2UpIHtcbiAgICAgIGlmICghQ29uc3RydWN0b3IucHJvdG90eXBlW21ldGhvZE5hbWVdKSB7XG4gICAgICAgIENvbnN0cnVjdG9yLnByb3RvdHlwZVttZXRob2ROYW1lXSA9IG51bGw7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIENvbnN0cnVjdG9yO1xuICB9XG5cbiAgcmV0dXJuIGNyZWF0ZUNsYXNzO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGZhY3Rvcnk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9jcmVhdGUtcmVhY3QtY2xhc3MvZmFjdG9yeS5qc1xuLy8gbW9kdWxlIGlkID0gMzZcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///36\n");
+
+/***/ }),
+/* 37 */
+/*!*********************************************!*\
+ !*** ./node_modules/react/lib/onlyChild.js ***!
+ \*********************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+eval("/* WEBPACK VAR INJECTION */(function(process) {/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n\nvar _prodInvariant = __webpack_require__(/*! ./reactProdInvariant */ 4);\n\nvar ReactElement = __webpack_require__(/*! ./ReactElement */ 3);\n\nvar invariant = __webpack_require__(/*! fbjs/lib/invariant */ 2);\n\n/**\n * Returns the first child in a collection of children and verifies that there\n * is only one child in the collection.\n *\n * See https://facebook.github.io/react/docs/top-level-api.html#react.children.only\n *\n * The current implementation of this function assumes that a single child gets\n * passed without a wrapper, but the purpose of this helper function is to\n * abstract away the particular structure of children.\n *\n * @param {?object} children Child collection structure.\n * @return {ReactElement} The first and only `ReactElement` contained in the\n * structure.\n */\nfunction onlyChild(children) {\n !ReactElement.isValidElement(children) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'React.Children.only expected to receive a single React element child.') : _prodInvariant('143') : void 0;\n return children;\n}\n\nmodule.exports = onlyChild;\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(/*! ./../../process/browser.js */ 0)))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMzcuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcmVhY3QvbGliL29ubHlDaGlsZC5qcz9lNTYzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDEzLXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4gKlxuICovXG4ndXNlIHN0cmljdCc7XG5cbnZhciBfcHJvZEludmFyaWFudCA9IHJlcXVpcmUoJy4vcmVhY3RQcm9kSW52YXJpYW50Jyk7XG5cbnZhciBSZWFjdEVsZW1lbnQgPSByZXF1aXJlKCcuL1JlYWN0RWxlbWVudCcpO1xuXG52YXIgaW52YXJpYW50ID0gcmVxdWlyZSgnZmJqcy9saWIvaW52YXJpYW50Jyk7XG5cbi8qKlxuICogUmV0dXJucyB0aGUgZmlyc3QgY2hpbGQgaW4gYSBjb2xsZWN0aW9uIG9mIGNoaWxkcmVuIGFuZCB2ZXJpZmllcyB0aGF0IHRoZXJlXG4gKiBpcyBvbmx5IG9uZSBjaGlsZCBpbiB0aGUgY29sbGVjdGlvbi5cbiAqXG4gKiBTZWUgaHR0cHM6Ly9mYWNlYm9vay5naXRodWIuaW8vcmVhY3QvZG9jcy90b3AtbGV2ZWwtYXBpLmh0bWwjcmVhY3QuY2hpbGRyZW4ub25seVxuICpcbiAqIFRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uIG9mIHRoaXMgZnVuY3Rpb24gYXNzdW1lcyB0aGF0IGEgc2luZ2xlIGNoaWxkIGdldHNcbiAqIHBhc3NlZCB3aXRob3V0IGEgd3JhcHBlciwgYnV0IHRoZSBwdXJwb3NlIG9mIHRoaXMgaGVscGVyIGZ1bmN0aW9uIGlzIHRvXG4gKiBhYnN0cmFjdCBhd2F5IHRoZSBwYXJ0aWN1bGFyIHN0cnVjdHVyZSBvZiBjaGlsZHJlbi5cbiAqXG4gKiBAcGFyYW0gez9vYmplY3R9IGNoaWxkcmVuIENoaWxkIGNvbGxlY3Rpb24gc3RydWN0dXJlLlxuICogQHJldHVybiB7UmVhY3RFbGVtZW50fSBUaGUgZmlyc3QgYW5kIG9ubHkgYFJlYWN0RWxlbWVudGAgY29udGFpbmVkIGluIHRoZVxuICogc3RydWN0dXJlLlxuICovXG5mdW5jdGlvbiBvbmx5Q2hpbGQoY2hpbGRyZW4pIHtcbiAgIVJlYWN0RWxlbWVudC5pc1ZhbGlkRWxlbWVudChjaGlsZHJlbikgPyBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nID8gaW52YXJpYW50KGZhbHNlLCAnUmVhY3QuQ2hpbGRyZW4ub25seSBleHBlY3RlZCB0byByZWNlaXZlIGEgc2luZ2xlIFJlYWN0IGVsZW1lbnQgY2hpbGQuJykgOiBfcHJvZEludmFyaWFudCgnMTQzJykgOiB2b2lkIDA7XG4gIHJldHVybiBjaGlsZHJlbjtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBvbmx5Q2hpbGQ7XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvcmVhY3QvbGliL29ubHlDaGlsZC5qc1xuLy8gbW9kdWxlIGlkID0gMzdcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///37\n");
+
+/***/ }),
+/* 38 */
+/*!***************************************!*\
+ !*** ./node_modules/numbro/numbro.js ***!
+ \***************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports, __webpack_require__) {
+
+eval("/* WEBPACK VAR INJECTION */(function(process) {var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!\n * numbro.js\n * version : 1.11.1\n * author : Företagsplatsen AB\n * license : MIT\n * http://www.foretagsplatsen.se\n */\n\n(function () {\n 'use strict';\n\n /************************************\n Constants\n ************************************/\n\n var numbro,\n VERSION = '1.11.1',\n binarySuffixes = ['B', 'KiB', 'MiB', 'GiB', 'TiB', 'PiB', 'EiB', 'ZiB', 'YiB'],\n decimalSuffixes = ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'],\n bytes = {\n general: { scale: 1024, suffixes: decimalSuffixes, marker: 'bd' },\n binary: { scale: 1024, suffixes: binarySuffixes, marker: 'b' },\n decimal: { scale: 1000, suffixes: decimalSuffixes, marker: 'd' }\n },\n // general must be before the others because it reuses their characters!\n byteFormatOrder = [ bytes.general, bytes.binary, bytes.decimal ],\n // internal storage for culture config files\n cultures = {},\n // Todo: Remove in 2.0.0\n languages = cultures,\n currentCulture = 'en-US',\n zeroFormat = null,\n defaultFormat = '0,0',\n defaultCurrencyFormat = '0$',\n // check for nodeJS\n hasModule = (typeof module !== 'undefined' && module.exports),\n // default culture\n enUS = {\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'k',\n million: 'm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function(number) {\n var b = number % 10;\n return (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n },\n currency: {\n symbol: '$',\n position: 'prefix'\n },\n defaults: {\n currencyFormat: ',0000 a'\n },\n formats: {\n fourDigits: '0000 a',\n fullWithTwoDecimals: '$ ,0.00',\n fullWithTwoDecimalsNoCurrency: ',0.00'\n }\n };\n\n /************************************\n Constructors\n ************************************/\n\n\n // Numbro prototype object\n function Numbro(number) {\n this._value = number;\n }\n\n function numberLength(number) {\n if (number === 0) { return 1; }\n return Math.floor(Math.log(Math.abs(number)) / Math.LN10) + 1;\n }\n\n function zeroes(count) {\n var i, ret = '';\n\n for (i = 0; i < count; i++) {\n ret += '0';\n }\n\n return ret;\n }\n /**\n * Implementation of toFixed() for numbers with exponents\n * This function may return negative representations for zero values e.g. \"-0.0\"\n */\n function toFixedLargeSmall(value, precision) {\n var mantissa,\n beforeDec,\n afterDec,\n exponent,\n prefix,\n endStr,\n zerosStr,\n str;\n\n str = value.toString();\n\n mantissa = str.split('e')[0];\n exponent = str.split('e')[1];\n\n beforeDec = mantissa.split('.')[0];\n afterDec = mantissa.split('.')[1] || '';\n\n if (+exponent > 0) {\n // exponent is positive - add zeros after the numbers\n str = beforeDec + afterDec + zeroes(exponent - afterDec.length);\n } else {\n // exponent is negative\n\n if (+beforeDec < 0) {\n prefix = '-0';\n } else {\n prefix = '0';\n }\n\n // tack on the decimal point if needed\n if (precision > 0) {\n prefix += '.';\n }\n\n zerosStr = zeroes((-1 * exponent) - 1);\n // substring off the end to satisfy the precision\n endStr = (zerosStr + Math.abs(beforeDec) + afterDec).substr(0, precision);\n str = prefix + endStr;\n }\n\n // only add percision 0's if the exponent is positive\n if (+exponent > 0 && precision > 0) {\n str += '.' + zeroes(precision);\n }\n\n return str;\n }\n\n /**\n * Implementation of toFixed() that treats floats more like decimals\n *\n * Fixes binary rounding issues (eg. (0.615).toFixed(2) === '0.61') that present\n * problems for accounting- and finance-related software.\n *\n * Also removes negative signs for zero-formatted numbers. e.g. -0.01 w/ precision 1 -> 0.0\n */\n function toFixed(value, precision, roundingFunction, optionals) {\n var power = Math.pow(10, precision),\n optionalsRegExp,\n output;\n\n if (value.toString().indexOf('e') > -1) {\n // toFixed returns scientific notation for numbers above 1e21 and below 1e-7\n output = toFixedLargeSmall(value, precision);\n // remove the leading negative sign if it exists and should not be present (e.g. -0.00)\n if (output.charAt(0) === '-' && +output >= 0) {\n output = output.substr(1); // chop off the '-'\n }\n }\n else {\n // Multiply up by precision, round accurately, then divide and use native toFixed():\n output = (roundingFunction(value + 'e+' + precision) / power).toFixed(precision);\n }\n\n if (optionals) {\n optionalsRegExp = new RegExp('0{1,' + optionals + '}$');\n output = output.replace(optionalsRegExp, '');\n }\n\n return output;\n }\n\n /************************************\n Formatting\n ************************************/\n\n // determine what type of formatting we need to do\n function formatNumbro(n, format, roundingFunction) {\n var output,\n escapedFormat = format.replace(/\\{[^\\{\\}]*\\}/g, '');\n\n // figure out what kind of format we are dealing with\n if (escapedFormat.indexOf('$') > -1) { // currency!!!!!\n output = formatCurrency(n, cultures[currentCulture].currency.symbol, format, roundingFunction);\n } else if (escapedFormat.indexOf('%') > -1) { // percentage\n output = formatPercentage(n, format, roundingFunction);\n } else if (escapedFormat.indexOf(':') > -1) { // time\n output = formatTime(n, format);\n } else { // plain ol' numbers or bytes\n output = formatNumber(n._value, format, roundingFunction);\n }\n\n // return string\n return output;\n }\n\n // revert to number\n function unformatNumbro(n, string) {\n var stringOriginal = string,\n thousandRegExp,\n millionRegExp,\n billionRegExp,\n trillionRegExp,\n bytesMultiplier = false,\n power;\n\n if (string.indexOf(':') > -1) {\n n._value = unformatTime(string);\n } else {\n if (string === zeroFormat) {\n n._value = 0;\n } else {\n if (cultures[currentCulture].delimiters.decimal !== '.') {\n string = string.replace(/\\./g, '').replace(cultures[currentCulture].delimiters.decimal, '.');\n }\n\n // see if abbreviations are there so that we can multiply to the correct number\n thousandRegExp = new RegExp('[^a-zA-Z]' + cultures[currentCulture].abbreviations.thousand +\n '(?:\\\\)|(\\\\' + cultures[currentCulture].currency.symbol + ')?(?:\\\\))?)?$');\n millionRegExp = new RegExp('[^a-zA-Z]' + cultures[currentCulture].abbreviations.million +\n '(?:\\\\)|(\\\\' + cultures[currentCulture].currency.symbol + ')?(?:\\\\))?)?$');\n billionRegExp = new RegExp('[^a-zA-Z]' + cultures[currentCulture].abbreviations.billion +\n '(?:\\\\)|(\\\\' + cultures[currentCulture].currency.symbol + ')?(?:\\\\))?)?$');\n trillionRegExp = new RegExp('[^a-zA-Z]' + cultures[currentCulture].abbreviations.trillion +\n '(?:\\\\)|(\\\\' + cultures[currentCulture].currency.symbol + ')?(?:\\\\))?)?$');\n\n // see if bytes are there so that we can multiply to the correct number\n for (power = 1; power < binarySuffixes.length && !bytesMultiplier; ++power) {\n if (string.indexOf(binarySuffixes[power]) > -1) {\n bytesMultiplier = Math.pow(1024, power);\n } else if (string.indexOf(decimalSuffixes[power]) > -1) {\n bytesMultiplier = Math.pow(1000, power);\n }\n }\n\n var str = string.replace(/[^0-9\\.]+/g, '');\n if (str === '') {\n // An empty string is not a number.\n n._value = NaN;\n\n } else {\n // do some math to create our number\n n._value = ((bytesMultiplier) ? bytesMultiplier : 1) *\n ((stringOriginal.match(thousandRegExp)) ? Math.pow(10, 3) : 1) *\n ((stringOriginal.match(millionRegExp)) ? Math.pow(10, 6) : 1) *\n ((stringOriginal.match(billionRegExp)) ? Math.pow(10, 9) : 1) *\n ((stringOriginal.match(trillionRegExp)) ? Math.pow(10, 12) : 1) *\n ((string.indexOf('%') > -1) ? 0.01 : 1) *\n (((string.split('-').length +\n Math.min(string.split('(').length - 1, string.split(')').length - 1)) % 2) ? 1 : -1) *\n Number(str);\n\n // round if we are talking about bytes\n n._value = (bytesMultiplier) ? Math.ceil(n._value) : n._value;\n }\n }\n }\n return n._value;\n }\n\n function formatCurrency(n, currencySymbol, originalFormat, roundingFunction) {\n var format = originalFormat,\n symbolIndex = format.indexOf('$'),\n openParenIndex = format.indexOf('('),\n plusSignIndex = format.indexOf('+'),\n minusSignIndex = format.indexOf('-'),\n space = '',\n decimalSeparator = '',\n spliceIndex,\n output;\n\n if(format.indexOf('$') === -1){\n // Use defaults instead of the format provided\n if (cultures[currentCulture].currency.position === 'infix') {\n decimalSeparator = currencySymbol;\n if (cultures[currentCulture].currency.spaceSeparated) {\n decimalSeparator = ' ' + decimalSeparator + ' ';\n }\n } else if (cultures[currentCulture].currency.spaceSeparated) {\n space = ' ';\n }\n } else {\n // check for space before or after currency\n if (format.indexOf(' $') > -1) {\n space = ' ';\n format = format.replace(' $', '');\n } else if (format.indexOf('$ ') > -1) {\n space = ' ';\n format = format.replace('$ ', '');\n } else {\n format = format.replace('$', '');\n }\n }\n\n // Format The Number\n output = formatNumber(n._value, format, roundingFunction, decimalSeparator);\n\n if (originalFormat.indexOf('$') === -1) {\n // Use defaults instead of the format provided\n switch (cultures[currentCulture].currency.position) {\n case 'postfix':\n if (output.indexOf(')') > -1) {\n output = output.split('');\n output.splice(-1, 0, space + currencySymbol);\n output = output.join('');\n } else {\n output = output + space + currencySymbol;\n }\n break;\n case 'infix':\n break;\n case 'prefix':\n if (output.indexOf('(') > -1 || output.indexOf('-') > -1) {\n output = output.split('');\n spliceIndex = Math.max(openParenIndex, minusSignIndex) + 1;\n\n output.splice(spliceIndex, 0, currencySymbol + space);\n output = output.join('');\n } else {\n output = currencySymbol + space + output;\n }\n break;\n default:\n throw Error('Currency position should be among [\"prefix\", \"infix\", \"postfix\"]');\n }\n } else {\n // position the symbol\n if (symbolIndex <= 1) {\n if (output.indexOf('(') > -1 || output.indexOf('+') > -1 || output.indexOf('-') > -1) {\n output = output.split('');\n spliceIndex = 1;\n if (symbolIndex < openParenIndex || symbolIndex < plusSignIndex || symbolIndex < minusSignIndex) {\n // the symbol appears before the \"(\", \"+\" or \"-\"\n spliceIndex = 0;\n }\n output.splice(spliceIndex, 0, currencySymbol + space);\n output = output.join('');\n } else {\n output = currencySymbol + space + output;\n }\n } else {\n if (output.indexOf(')') > -1) {\n output = output.split('');\n output.splice(-1, 0, space + currencySymbol);\n output = output.join('');\n } else {\n output = output + space + currencySymbol;\n }\n }\n }\n\n return output;\n }\n\n function formatForeignCurrency(n, foreignCurrencySymbol, originalFormat, roundingFunction) {\n return formatCurrency(n, foreignCurrencySymbol, originalFormat, roundingFunction);\n }\n\n function formatPercentage(n, format, roundingFunction) {\n var space = '',\n output,\n value = n._value * 100;\n\n // check for space before %\n if (format.indexOf(' %') > -1) {\n space = ' ';\n format = format.replace(' %', '');\n } else {\n format = format.replace('%', '');\n }\n\n output = formatNumber(value, format, roundingFunction);\n\n if (output.indexOf(')') > -1) {\n output = output.split('');\n output.splice(-1, 0, space + '%');\n output = output.join('');\n } else {\n output = output + space + '%';\n }\n\n return output;\n }\n\n function formatTime(n) {\n var hours = Math.floor(n._value / 60 / 60),\n minutes = Math.floor((n._value - (hours * 60 * 60)) / 60),\n seconds = Math.round(n._value - (hours * 60 * 60) - (minutes * 60));\n return hours + ':' +\n ((minutes < 10) ? '0' + minutes : minutes) + ':' +\n ((seconds < 10) ? '0' + seconds : seconds);\n }\n\n function unformatTime(string) {\n var timeArray = string.split(':'),\n seconds = 0;\n // turn hours and minutes into seconds and add them all up\n if (timeArray.length === 3) {\n // hours\n seconds = seconds + (Number(timeArray[0]) * 60 * 60);\n // minutes\n seconds = seconds + (Number(timeArray[1]) * 60);\n // seconds\n seconds = seconds + Number(timeArray[2]);\n } else if (timeArray.length === 2) {\n // minutes\n seconds = seconds + (Number(timeArray[0]) * 60);\n // seconds\n seconds = seconds + Number(timeArray[1]);\n }\n return Number(seconds);\n }\n\n function formatByteUnits (value, suffixes, scale) {\n var suffix = suffixes[0],\n power,\n min,\n max,\n abs = Math.abs(value);\n\n if (abs >= scale) {\n for (power = 1; power < suffixes.length; ++power) {\n min = Math.pow(scale, power);\n max = Math.pow(scale, power + 1);\n\n if (abs >= min && abs < max) {\n suffix = suffixes[power];\n value = value / min;\n break;\n }\n }\n\n // values greater than or equal to [scale] YB never set the suffix\n if (suffix === suffixes[0]) {\n value = value / Math.pow(scale, suffixes.length - 1);\n suffix = suffixes[suffixes.length - 1];\n }\n }\n\n return { value: value, suffix: suffix };\n }\n\n function formatNumber (value, format, roundingFunction, sep) {\n var negP = false,\n signed = false,\n optDec = false,\n abbr = '',\n abbrK = false, // force abbreviation to thousands\n abbrM = false, // force abbreviation to millions\n abbrB = false, // force abbreviation to billions\n abbrT = false, // force abbreviation to trillions\n abbrForce = false, // force abbreviation\n bytes = '',\n byteFormat,\n units,\n ord = '',\n abs = Math.abs(value),\n totalLength,\n length,\n minimumPrecision,\n pow,\n w,\n intPrecision,\n precision,\n prefix,\n postfix,\n thousands,\n d = '',\n forcedNeg = false,\n neg = false,\n indexOpenP,\n indexMinus,\n paren = '',\n minlen,\n i;\n\n // check if number is zero and a custom zero format has been set\n if (value === 0 && zeroFormat !== null) {\n return zeroFormat;\n }\n\n if (!isFinite(value)) {\n return '' + value;\n }\n\n if (format.indexOf('{') === 0) {\n var end = format.indexOf('}');\n if (end === -1) {\n throw Error('Format should also contain a \"}\"');\n }\n prefix = format.slice(1, end);\n format = format.slice(end + 1);\n } else {\n prefix = '';\n }\n\n if (format.indexOf('}') === format.length - 1 && format.length) {\n var start = format.indexOf('{');\n if (start === -1) {\n throw Error('Format should also contain a \"{\"');\n }\n postfix = format.slice(start + 1, -1);\n format = format.slice(0, start + 1);\n } else {\n postfix = '';\n }\n\n // check for min length\n var info;\n if (format.indexOf('.') === -1) {\n info = format.match(/([0-9]+).*/);\n } else {\n info = format.match(/([0-9]+)\\..*/);\n }\n minlen = info === null ? -1 : info[1].length;\n\n // see if we should use parentheses for negative number or if we should prefix with a sign\n // if both are present we default to parentheses\n if (format.indexOf('-') !== -1) {\n forcedNeg = true;\n }\n if (format.indexOf('(') > -1) {\n negP = true;\n format = format.slice(1, -1);\n } else if (format.indexOf('+') > -1) {\n signed = true;\n format = format.replace(/\\+/g, '');\n }\n\n // see if abbreviation is wanted\n if (format.indexOf('a') > -1) {\n intPrecision = format.split('.')[0].match(/[0-9]+/g) || ['0'];\n intPrecision = parseInt(intPrecision[0], 10);\n\n // check if abbreviation is specified\n abbrK = format.indexOf('aK') >= 0;\n abbrM = format.indexOf('aM') >= 0;\n abbrB = format.indexOf('aB') >= 0;\n abbrT = format.indexOf('aT') >= 0;\n abbrForce = abbrK || abbrM || abbrB || abbrT;\n\n // check for space before abbreviation\n if (format.indexOf(' a') > -1) {\n abbr = ' ';\n format = format.replace(' a', '');\n } else {\n format = format.replace('a', '');\n }\n\n totalLength = numberLength(value);\n minimumPrecision = totalLength % 3;\n minimumPrecision = minimumPrecision === 0 ? 3 : minimumPrecision;\n\n if (intPrecision && abs !== 0) {\n pow = 3 * ~~((Math.min(intPrecision, totalLength) - minimumPrecision) / 3);\n abs = abs / Math.pow(10, pow);\n }\n\n if (totalLength !== intPrecision) {\n if (abs >= Math.pow(10, 12) && !abbrForce || abbrT) {\n // trillion\n abbr = abbr + cultures[currentCulture].abbreviations.trillion;\n value = value / Math.pow(10, 12);\n } else if (abs < Math.pow(10, 12) && abs >= Math.pow(10, 9) && !abbrForce || abbrB) {\n // billion\n abbr = abbr + cultures[currentCulture].abbreviations.billion;\n value = value / Math.pow(10, 9);\n } else if (abs < Math.pow(10, 9) && abs >= Math.pow(10, 6) && !abbrForce || abbrM) {\n // million\n abbr = abbr + cultures[currentCulture].abbreviations.million;\n value = value / Math.pow(10, 6);\n } else if (abs < Math.pow(10, 6) && abs >= Math.pow(10, 3) && !abbrForce || abbrK) {\n // thousand\n abbr = abbr + cultures[currentCulture].abbreviations.thousand;\n value = value / Math.pow(10, 3);\n }\n }\n\n length = numberLength(value);\n if (intPrecision && length < intPrecision && format.indexOf('.') === -1) {\n format += '[.]';\n format += zeroes(intPrecision - length);\n }\n }\n\n // see if we are formatting\n // binary-decimal bytes (1024 MB), binary bytes (1024 MiB), or decimal bytes (1000 MB)\n for (i = 0; i < byteFormatOrder.length; ++i) {\n byteFormat = byteFormatOrder[i];\n\n if (format.indexOf(byteFormat.marker) > -1) {\n // check for space before\n if (format.indexOf(' ' + byteFormat.marker) >-1) {\n bytes = ' ';\n }\n\n // remove the marker (with the space if it had one)\n format = format.replace(bytes + byteFormat.marker, '');\n\n units = formatByteUnits(value, byteFormat.suffixes, byteFormat.scale);\n\n value = units.value;\n bytes = bytes + units.suffix;\n\n break;\n }\n }\n\n // see if ordinal is wanted\n if (format.indexOf('o') > -1) {\n // check for space before\n if (format.indexOf(' o') > -1) {\n ord = ' ';\n format = format.replace(' o', '');\n } else {\n format = format.replace('o', '');\n }\n\n if (cultures[currentCulture].ordinal) {\n ord = ord + cultures[currentCulture].ordinal(value);\n }\n }\n\n if (format.indexOf('[.]') > -1) {\n optDec = true;\n format = format.replace('[.]', '.');\n }\n\n precision = format.split('.')[1];\n thousands = format.indexOf(',');\n\n if (precision) {\n var dSplit = [];\n\n if (precision.indexOf('*') !== -1) {\n d = value.toString();\n dSplit = d.split('.');\n if (dSplit.length > 1) {\n d = toFixed(value, dSplit[1].length, roundingFunction);\n }\n } else {\n if (precision.indexOf('[') > -1) {\n precision = precision.replace(']', '');\n precision = precision.split('[');\n d = toFixed(value, (precision[0].length + precision[1].length), roundingFunction,\n precision[1].length);\n } else {\n d = toFixed(value, precision.length, roundingFunction);\n }\n }\n\n dSplit = d.split('.');\n w = dSplit[0];\n\n if (dSplit.length > 1 && dSplit[1].length) {\n var p = sep ? abbr + sep : cultures[currentCulture].delimiters.decimal;\n d = p + dSplit[1];\n } else {\n d = '';\n }\n\n if (optDec && Number(d.slice(1)) === 0) {\n d = '';\n }\n } else {\n w = toFixed(value, 0, roundingFunction);\n }\n\n // format number\n if (w.indexOf('-') > -1) {\n w = w.slice(1);\n neg = true;\n }\n\n if (w.length < minlen) {\n w = zeroes(minlen - w.length) + w;\n }\n\n if (thousands > -1) {\n w = w.toString().replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1' +\n cultures[currentCulture].delimiters.thousands);\n }\n\n if (format.indexOf('.') === 0) {\n w = '';\n }\n\n indexOpenP = format.indexOf('(');\n indexMinus = format.indexOf('-');\n\n if (indexOpenP < indexMinus) {\n paren = ((negP && neg) ? '(' : '') + (((forcedNeg && neg) || (!negP && neg)) ? '-' : '');\n } else {\n paren = (((forcedNeg && neg) || (!negP && neg)) ? '-' : '') + ((negP && neg) ? '(' : '');\n }\n\n return prefix +\n paren + ((!neg && signed && value !== 0) ? '+' : '') +\n w + d +\n ((ord) ? ord : '') +\n ((abbr && !sep) ? abbr : '') +\n ((bytes) ? bytes : '') +\n ((negP && neg) ? ')' : '') +\n postfix;\n }\n\n /************************************\n Top Level Functions\n ************************************/\n\n numbro = function(input) {\n if (numbro.isNumbro(input)) {\n input = input.value();\n } else if (typeof input === 'string' || typeof input === 'number') {\n input = numbro.fn.unformat(input);\n } else {\n input = NaN;\n }\n\n return new Numbro(Number(input));\n };\n\n // version number\n numbro.version = VERSION;\n\n // compare numbro object\n numbro.isNumbro = function(obj) {\n return obj instanceof Numbro;\n };\n\n /**\n * This function allow the user to set a new language with a fallback if\n * the language does not exist. If no fallback language is provided,\n * it fallbacks to english.\n *\n * @deprecated Since in version 1.6.0. It will be deleted in version 2.0\n * `setCulture` should be used instead.\n */\n numbro.setLanguage = function(newLanguage, fallbackLanguage) {\n console.warn('`setLanguage` is deprecated since version 1.6.0. Use `setCulture` instead');\n var key = newLanguage,\n prefix = newLanguage.split('-')[0],\n matchingLanguage = null;\n if (!languages[key]) {\n Object.keys(languages).forEach(function(language) {\n if (!matchingLanguage && language.split('-')[0] === prefix) {\n matchingLanguage = language;\n }\n });\n key = matchingLanguage || fallbackLanguage || 'en-US';\n }\n chooseCulture(key);\n };\n\n /**\n * This function allow the user to set a new culture with a fallback if\n * the culture does not exist. If no fallback culture is provided,\n * it falls back to \"en-US\".\n */\n numbro.setCulture = function(newCulture, fallbackCulture) {\n var key = newCulture,\n suffix = newCulture.split('-')[1],\n matchingCulture = null;\n if (!cultures[key]) {\n if (suffix) {\n Object.keys(cultures).forEach(function(language) {\n if (!matchingCulture && language.split('-')[1] === suffix) {\n matchingCulture = language;\n }\n });\n }\n\n key = matchingCulture || fallbackCulture || 'en-US';\n }\n chooseCulture(key);\n };\n\n /**\n * This function will load languages and then set the global language. If\n * no arguments are passed in, it will simply return the current global\n * language key.\n *\n * @deprecated Since in version 1.6.0. It will be deleted in version 2.0\n * `culture` should be used instead.\n */\n numbro.language = function(key, values) {\n console.warn('`language` is deprecated since version 1.6.0. Use `culture` instead');\n\n if (!key) {\n return currentCulture;\n }\n\n if (key && !values) {\n if (!languages[key]) {\n throw new Error('Unknown language : ' + key);\n }\n chooseCulture(key);\n }\n\n if (values || !languages[key]) {\n setCulture(key, values);\n }\n\n return numbro;\n };\n\n /**\n * This function will load cultures and then set the global culture. If\n * no arguments are passed in, it will simply return the current global\n * culture code.\n */\n numbro.culture = function(code, values) {\n if (!code) {\n return currentCulture;\n }\n\n if (code && !values) {\n if (!cultures[code]) {\n throw new Error('Unknown culture : ' + code);\n }\n chooseCulture(code);\n }\n\n if (values || !cultures[code]) {\n setCulture(code, values);\n }\n\n return numbro;\n };\n\n /**\n * This function provides access to the loaded language data. If\n * no arguments are passed in, it will simply return the current\n * global language object.\n *\n * @deprecated Since in version 1.6.0. It will be deleted in version 2.0\n * `culture` should be used instead.\n */\n numbro.languageData = function(key) {\n console.warn('`languageData` is deprecated since version 1.6.0. Use `cultureData` instead');\n\n if (!key) {\n return languages[currentCulture];\n }\n\n if (!languages[key]) {\n throw new Error('Unknown language : ' + key);\n }\n\n return languages[key];\n };\n\n /**\n * This function provides access to the loaded culture data. If\n * no arguments are passed in, it will simply return the current\n * global culture object.\n */\n numbro.cultureData = function(code) {\n if (!code) {\n return cultures[currentCulture];\n }\n\n if (!cultures[code]) {\n throw new Error('Unknown culture : ' + code);\n }\n\n return cultures[code];\n };\n\n numbro.culture('en-US', enUS);\n\n /**\n * @deprecated Since in version 1.6.0. It will be deleted in version 2.0\n * `cultures` should be used instead.\n */\n numbro.languages = function() {\n console.warn('`languages` is deprecated since version 1.6.0. Use `cultures` instead');\n\n return languages;\n };\n\n numbro.cultures = function() {\n return cultures;\n };\n\n numbro.zeroFormat = function(format) {\n zeroFormat = typeof(format) === 'string' ? format : null;\n };\n\n numbro.defaultFormat = function(format) {\n defaultFormat = typeof(format) === 'string' ? format : '0.0';\n };\n\n numbro.defaultCurrencyFormat = function (format) {\n defaultCurrencyFormat = typeof(format) === 'string' ? format : '0$';\n };\n\n numbro.validate = function(val, culture) {\n\n var _decimalSep,\n _thousandSep,\n _currSymbol,\n _valArray,\n _abbrObj,\n _thousandRegEx,\n cultureData,\n temp;\n\n //coerce val to string\n if (typeof val !== 'string') {\n val += '';\n if (console.warn) {\n console.warn('Numbro.js: Value is not string. It has been co-erced to: ', val);\n }\n }\n\n //trim whitespaces from either sides\n val = val.trim();\n\n //replace the initial '+' or '-' sign if present\n val = val.replace(/^[+-]?/, '');\n\n //if val is just digits return true\n if ( !! val.match(/^\\d+$/)) {\n return true;\n }\n\n //if val is empty return false\n if (val === '') {\n return false;\n }\n\n //get the decimal and thousands separator from numbro.cultureData\n try {\n //check if the culture is understood by numbro. if not, default it to current culture\n cultureData = numbro.cultureData(culture);\n } catch (e) {\n cultureData = numbro.cultureData(numbro.culture());\n }\n\n //setup the delimiters and currency symbol based on culture\n _currSymbol = cultureData.currency.symbol;\n _abbrObj = cultureData.abbreviations;\n _decimalSep = cultureData.delimiters.decimal;\n if (cultureData.delimiters.thousands === '.') {\n _thousandSep = '\\\\.';\n } else {\n _thousandSep = cultureData.delimiters.thousands;\n }\n\n // validating currency symbol\n temp = val.match(/^[^\\d\\.\\,]+/);\n if (temp !== null) {\n val = val.substr(1);\n if (temp[0] !== _currSymbol) {\n return false;\n }\n }\n\n //validating abbreviation symbol\n temp = val.match(/[^\\d]+$/);\n if (temp !== null) {\n val = val.slice(0, -1);\n if (temp[0] !== _abbrObj.thousand && temp[0] !== _abbrObj.million &&\n temp[0] !== _abbrObj.billion && temp[0] !== _abbrObj.trillion) {\n return false;\n }\n }\n\n _thousandRegEx = new RegExp(_thousandSep + '{2}');\n\n if (!val.match(/[^\\d.,]/g)) {\n _valArray = val.split(_decimalSep);\n if (_valArray.length > 2) {\n return false;\n } else {\n if (_valArray.length < 2) {\n return ( !! _valArray[0].match(/^\\d+.*\\d$/) && !_valArray[0].match(_thousandRegEx));\n } else {\n if (_valArray[0] === '') {\n // for values without leading zero eg. .984\n return (!_valArray[0].match(_thousandRegEx) &&\n !!_valArray[1].match(/^\\d+$/));\n\n } else if (_valArray[0].length === 1) {\n return ( !! _valArray[0].match(/^\\d+$/) &&\n !_valArray[0].match(_thousandRegEx) &&\n !! _valArray[1].match(/^\\d+$/));\n } else {\n return ( !! _valArray[0].match(/^\\d+.*\\d$/) &&\n !_valArray[0].match(_thousandRegEx) &&\n !! _valArray[1].match(/^\\d+$/));\n }\n }\n }\n }\n\n return false;\n };\n\n /**\n * * @deprecated Since in version 1.6.0. It will be deleted in version 2.0\n * `loadCulturesInNode` should be used instead.\n */\n numbro.loadLanguagesInNode = function() {\n console.warn('`loadLanguagesInNode` is deprecated since version 1.6.0. Use `loadCulturesInNode` instead');\n\n numbro.loadCulturesInNode();\n };\n\n numbro.loadCulturesInNode = function() {\n // TODO: Rename the folder in 2.0.0\n var cultures = __webpack_require__(/*! ./languages */ 39);\n\n for(var langLocaleCode in cultures) {\n if(langLocaleCode) {\n numbro.culture(langLocaleCode, cultures[langLocaleCode]);\n }\n }\n };\n\n /************************************\n Helpers\n ************************************/\n\n function setCulture(code, values) {\n cultures[code] = values;\n }\n\n function chooseCulture(code) {\n currentCulture = code;\n var defaults = cultures[code].defaults;\n if (defaults && defaults.format) {\n numbro.defaultFormat(defaults.format);\n }\n if (defaults && defaults.currencyFormat) {\n numbro.defaultCurrencyFormat(defaults.currencyFormat);\n }\n }\n\n function inNodejsRuntime() {\n return (typeof process !== 'undefined') &&\n (process.browser === undefined) &&\n process.title &&\n (\n process.title.indexOf('node') !== -1 ||\n process.title.indexOf('meteor-tool') > 0 ||\n process.title === 'grunt' ||\n process.title === 'gulp'\n ) &&\n (\"function\" !== 'undefined');\n }\n\n /************************************\n Floating-point helpers\n ************************************/\n\n // The floating-point helper functions and implementation\n // borrows heavily from sinful.js: http://guipn.github.io/sinful.js/\n\n /**\n * Array.prototype.reduce for browsers that don't support it\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce#Compatibility\n */\n if ('function' !== typeof Array.prototype.reduce) {\n Array.prototype.reduce = function(callback, optInitialValue) {\n\n if (null === this || 'undefined' === typeof this) {\n // At the moment all modern browsers, that support strict mode, have\n // native implementation of Array.prototype.reduce. For instance, IE8\n // does not support strict mode, so this check is actually useless.\n throw new TypeError('Array.prototype.reduce called on null or undefined');\n }\n\n if ('function' !== typeof callback) {\n throw new TypeError(callback + ' is not a function');\n }\n\n var index,\n value,\n length = this.length >>> 0,\n isValueSet = false;\n\n if (1 < arguments.length) {\n value = optInitialValue;\n isValueSet = true;\n }\n\n for (index = 0; length > index; ++index) {\n if (this.hasOwnProperty(index)) {\n if (isValueSet) {\n value = callback(value, this[index], index, this);\n } else {\n value = this[index];\n isValueSet = true;\n }\n }\n }\n\n if (!isValueSet) {\n throw new TypeError('Reduce of empty array with no initial value');\n }\n\n return value;\n };\n }\n\n\n /**\n * Computes the multiplier necessary to make x >= 1,\n * effectively eliminating miscalculations caused by\n * finite precision.\n */\n function multiplier(x) {\n var parts = x.toString().split('.');\n if (parts.length < 2) {\n return 1;\n }\n return Math.pow(10, parts[1].length);\n }\n\n /**\n * Given a variable number of arguments, returns the maximum\n * multiplier that must be used to normalize an operation involving\n * all of them.\n */\n function correctionFactor() {\n var args = Array.prototype.slice.call(arguments);\n return args.reduce(function(prev, next) {\n var mp = multiplier(prev),\n mn = multiplier(next);\n return mp > mn ? mp : mn;\n }, -Infinity);\n }\n\n /************************************\n Numbro Prototype\n ************************************/\n\n\n numbro.fn = Numbro.prototype = {\n\n clone: function() {\n return numbro(this);\n },\n\n format: function(inputString, roundingFunction) {\n return formatNumbro(this,\n inputString ? inputString : defaultFormat,\n (roundingFunction !== undefined) ? roundingFunction : Math.round\n );\n },\n\n formatCurrency: function(inputString, roundingFunction) {\n return formatCurrency(this,\n cultures[currentCulture].currency.symbol,\n inputString ? inputString : defaultCurrencyFormat,\n (roundingFunction !== undefined) ? roundingFunction : Math.round\n );\n },\n\n formatForeignCurrency: function(currencySymbol, inputString, roundingFunction) {\n return formatForeignCurrency(this,\n currencySymbol,\n inputString ? inputString : defaultCurrencyFormat,\n (roundingFunction !== undefined) ? roundingFunction : Math.round\n );\n },\n\n unformat: function(inputString) {\n if (typeof inputString === 'number') {\n return inputString;\n } else if (typeof inputString === 'string') {\n var result = unformatNumbro(this, inputString);\n\n // Any unparseable string (represented as NaN in the result) is\n // converted into undefined.\n return isNaN(result) ? undefined : result;\n } else {\n return undefined;\n }\n },\n\n binaryByteUnits: function() {\n return formatByteUnits(this._value, bytes.binary.suffixes, bytes.binary.scale).suffix;\n },\n\n byteUnits: function() {\n return formatByteUnits(this._value, bytes.general.suffixes, bytes.general.scale).suffix;\n },\n\n decimalByteUnits: function() {\n return formatByteUnits(this._value, bytes.decimal.suffixes, bytes.decimal.scale).suffix;\n },\n\n value: function() {\n return this._value;\n },\n\n valueOf: function() {\n return this._value;\n },\n\n set: function(value) {\n this._value = Number(value);\n return this;\n },\n\n add: function(value) {\n var corrFactor = correctionFactor.call(null, this._value, value);\n\n function cback(accum, curr) {\n return accum + corrFactor * curr;\n }\n this._value = [this._value, value].reduce(cback, 0) / corrFactor;\n return this;\n },\n\n subtract: function(value) {\n var corrFactor = correctionFactor.call(null, this._value, value);\n\n function cback(accum, curr) {\n return accum - corrFactor * curr;\n }\n this._value = [value].reduce(cback, this._value * corrFactor) / corrFactor;\n return this;\n },\n\n multiply: function(value) {\n function cback(accum, curr) {\n var corrFactor = correctionFactor(accum, curr),\n result = accum * corrFactor;\n result *= curr * corrFactor;\n result /= corrFactor * corrFactor;\n return result;\n }\n this._value = [this._value, value].reduce(cback, 1);\n return this;\n },\n\n divide: function(value) {\n function cback(accum, curr) {\n var corrFactor = correctionFactor(accum, curr);\n return (accum * corrFactor) / (curr * corrFactor);\n }\n this._value = [this._value, value].reduce(cback);\n return this;\n },\n\n difference: function(value) {\n return Math.abs(numbro(this._value).subtract(value).value());\n }\n\n };\n\n /************************************\n Exposing Numbro\n ************************************/\n\n if (inNodejsRuntime()) {\n //Todo: Rename the folder in 2.0.0\n numbro.loadCulturesInNode();\n }\n\n // CommonJS module is defined\n if (hasModule) {\n module.exports = numbro;\n } else {\n /*global ender:false */\n if (typeof ender === 'undefined') {\n // here, `this` means `window` in the browser, or `global` on the server\n // add `numbro` as a global object via a string identifier,\n // for Closure Compiler 'advanced' mode\n this.numbro = numbro;\n }\n\n /*global define:false */\n if (true) {\n !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function() {\n return numbro;\n }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n }\n }\n\n}.call(typeof window === 'undefined' ? this : window));\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(/*! ./../process/browser.js */ 0)))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMzguanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL251bWJyby5qcz8yNTE1Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzXG4gKiB2ZXJzaW9uIDogMS4xMS4xXG4gKiBhdXRob3IgOiBGw7ZyZXRhZ3NwbGF0c2VuIEFCXG4gKiBsaWNlbnNlIDogTUlUXG4gKiBodHRwOi8vd3d3LmZvcmV0YWdzcGxhdHNlbi5zZVxuICovXG5cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBDb25zdGFudHNcbiAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICB2YXIgbnVtYnJvLFxuICAgICAgICBWRVJTSU9OID0gJzEuMTEuMScsXG4gICAgICAgIGJpbmFyeVN1ZmZpeGVzID0gWydCJywgJ0tpQicsICdNaUInLCAnR2lCJywgJ1RpQicsICdQaUInLCAnRWlCJywgJ1ppQicsICdZaUInXSxcbiAgICAgICAgZGVjaW1hbFN1ZmZpeGVzID0gWydCJywgJ0tCJywgJ01CJywgJ0dCJywgJ1RCJywgJ1BCJywgJ0VCJywgJ1pCJywgJ1lCJ10sXG4gICAgICAgIGJ5dGVzID0ge1xuICAgICAgICAgICAgZ2VuZXJhbDogeyBzY2FsZTogMTAyNCwgc3VmZml4ZXM6IGRlY2ltYWxTdWZmaXhlcywgbWFya2VyOiAnYmQnIH0sXG4gICAgICAgICAgICBiaW5hcnk6ICB7IHNjYWxlOiAxMDI0LCBzdWZmaXhlczogYmluYXJ5U3VmZml4ZXMsIG1hcmtlcjogJ2InIH0sXG4gICAgICAgICAgICBkZWNpbWFsOiB7IHNjYWxlOiAxMDAwLCBzdWZmaXhlczogZGVjaW1hbFN1ZmZpeGVzLCBtYXJrZXI6ICdkJyB9XG4gICAgICAgIH0sXG4gICAgICAgIC8vIGdlbmVyYWwgbXVzdCBiZSBiZWZvcmUgdGhlIG90aGVycyBiZWNhdXNlIGl0IHJldXNlcyB0aGVpciBjaGFyYWN0ZXJzIVxuICAgICAgICBieXRlRm9ybWF0T3JkZXIgPSBbIGJ5dGVzLmdlbmVyYWwsIGJ5dGVzLmJpbmFyeSwgYnl0ZXMuZGVjaW1hbCBdLFxuICAgIC8vIGludGVybmFsIHN0b3JhZ2UgZm9yIGN1bHR1cmUgY29uZmlnIGZpbGVzXG4gICAgICAgIGN1bHR1cmVzID0ge30sXG4gICAgLy8gVG9kbzogUmVtb3ZlIGluIDIuMC4wXG4gICAgICAgIGxhbmd1YWdlcyA9IGN1bHR1cmVzLFxuICAgICAgICBjdXJyZW50Q3VsdHVyZSA9ICdlbi1VUycsXG4gICAgICAgIHplcm9Gb3JtYXQgPSBudWxsLFxuICAgICAgICBkZWZhdWx0Rm9ybWF0ID0gJzAsMCcsXG4gICAgICAgIGRlZmF1bHRDdXJyZW5jeUZvcm1hdCA9ICcwJCcsXG4gICAgICAgIC8vIGNoZWNrIGZvciBub2RlSlNcbiAgICAgICAgaGFzTW9kdWxlID0gKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSxcbiAgICAvLyBkZWZhdWx0IGN1bHR1cmVcbiAgICAgICAgZW5VUyA9IHtcbiAgICAgICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgICAgICB0aG91c2FuZHM6ICcsJyxcbiAgICAgICAgICAgICAgICBkZWNpbWFsOiAnLidcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBhYmJyZXZpYXRpb25zOiB7XG4gICAgICAgICAgICAgICAgdGhvdXNhbmQ6ICdrJyxcbiAgICAgICAgICAgICAgICBtaWxsaW9uOiAnbScsXG4gICAgICAgICAgICAgICAgYmlsbGlvbjogJ2InLFxuICAgICAgICAgICAgICAgIHRyaWxsaW9uOiAndCdcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBvcmRpbmFsOiBmdW5jdGlvbihudW1iZXIpIHtcbiAgICAgICAgICAgICAgICB2YXIgYiA9IG51bWJlciAlIDEwO1xuICAgICAgICAgICAgICAgIHJldHVybiAofn4obnVtYmVyICUgMTAwIC8gMTApID09PSAxKSA/ICd0aCcgOlxuICAgICAgICAgICAgICAgICAgICAoYiA9PT0gMSkgPyAnc3QnIDpcbiAgICAgICAgICAgICAgICAgICAgICAgIChiID09PSAyKSA/ICduZCcgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChiID09PSAzKSA/ICdyZCcgOiAndGgnO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgICAgICAgc3ltYm9sOiAnJCcsXG4gICAgICAgICAgICAgICAgcG9zaXRpb246ICdwcmVmaXgnXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgICAgICBjdXJyZW5jeUZvcm1hdDogJywwMDAwIGEnXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZm9ybWF0czoge1xuICAgICAgICAgICAgICAgIGZvdXJEaWdpdHM6ICcwMDAwIGEnLFxuICAgICAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHM6ICckICwwLjAwJyxcbiAgICAgICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzTm9DdXJyZW5jeTogJywwLjAwJ1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBDb25zdHJ1Y3RvcnNcbiAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxuICAgIC8vIE51bWJybyBwcm90b3R5cGUgb2JqZWN0XG4gICAgZnVuY3Rpb24gTnVtYnJvKG51bWJlcikge1xuICAgICAgICB0aGlzLl92YWx1ZSA9IG51bWJlcjtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBudW1iZXJMZW5ndGgobnVtYmVyKSB7XG4gICAgICAgIGlmIChudW1iZXIgPT09IDApIHsgcmV0dXJuIDE7IH1cbiAgICAgICAgcmV0dXJuIE1hdGguZmxvb3IoTWF0aC5sb2coTWF0aC5hYnMobnVtYmVyKSkgLyBNYXRoLkxOMTApICsgMTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB6ZXJvZXMoY291bnQpIHtcbiAgICAgICAgdmFyIGksIHJldCA9ICcnO1xuXG4gICAgICAgIGZvciAoaSA9IDA7IGkgPCBjb3VudDsgaSsrKSB7XG4gICAgICAgICAgICByZXQgKz0gJzAnO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHJldDtcbiAgICB9XG4gICAgLyoqXG4gICAgICogSW1wbGVtZW50YXRpb24gb2YgdG9GaXhlZCgpIGZvciBudW1iZXJzIHdpdGggZXhwb25lbnRzXG4gICAgICogVGhpcyBmdW5jdGlvbiBtYXkgcmV0dXJuIG5lZ2F0aXZlIHJlcHJlc2VudGF0aW9ucyBmb3IgemVybyB2YWx1ZXMgZS5nLiBcIi0wLjBcIlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHRvRml4ZWRMYXJnZVNtYWxsKHZhbHVlLCBwcmVjaXNpb24pIHtcbiAgICAgICAgdmFyIG1hbnRpc3NhLFxuICAgICAgICAgICAgYmVmb3JlRGVjLFxuICAgICAgICAgICAgYWZ0ZXJEZWMsXG4gICAgICAgICAgICBleHBvbmVudCxcbiAgICAgICAgICAgIHByZWZpeCxcbiAgICAgICAgICAgIGVuZFN0cixcbiAgICAgICAgICAgIHplcm9zU3RyLFxuICAgICAgICAgICAgc3RyO1xuXG4gICAgICAgIHN0ciA9IHZhbHVlLnRvU3RyaW5nKCk7XG5cbiAgICAgICAgbWFudGlzc2EgPSBzdHIuc3BsaXQoJ2UnKVswXTtcbiAgICAgICAgZXhwb25lbnQgPSBzdHIuc3BsaXQoJ2UnKVsxXTtcblxuICAgICAgICBiZWZvcmVEZWMgPSBtYW50aXNzYS5zcGxpdCgnLicpWzBdO1xuICAgICAgICBhZnRlckRlYyA9IG1hbnRpc3NhLnNwbGl0KCcuJylbMV0gfHwgJyc7XG5cbiAgICAgICAgaWYgKCtleHBvbmVudCA+IDApIHtcbiAgICAgICAgICAgIC8vIGV4cG9uZW50IGlzIHBvc2l0aXZlIC0gYWRkIHplcm9zIGFmdGVyIHRoZSBudW1iZXJzXG4gICAgICAgICAgICBzdHIgPSBiZWZvcmVEZWMgKyBhZnRlckRlYyArIHplcm9lcyhleHBvbmVudCAtIGFmdGVyRGVjLmxlbmd0aCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBleHBvbmVudCBpcyBuZWdhdGl2ZVxuXG4gICAgICAgICAgICBpZiAoK2JlZm9yZURlYyA8IDApIHtcbiAgICAgICAgICAgICAgICBwcmVmaXggPSAnLTAnO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBwcmVmaXggPSAnMCc7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIHRhY2sgb24gdGhlIGRlY2ltYWwgcG9pbnQgaWYgbmVlZGVkXG4gICAgICAgICAgICBpZiAocHJlY2lzaW9uID4gMCkge1xuICAgICAgICAgICAgICAgIHByZWZpeCArPSAnLic7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHplcm9zU3RyID0gemVyb2VzKCgtMSAqIGV4cG9uZW50KSAtIDEpO1xuICAgICAgICAgICAgLy8gc3Vic3RyaW5nIG9mZiB0aGUgZW5kIHRvIHNhdGlzZnkgdGhlIHByZWNpc2lvblxuICAgICAgICAgICAgZW5kU3RyID0gKHplcm9zU3RyICsgTWF0aC5hYnMoYmVmb3JlRGVjKSArIGFmdGVyRGVjKS5zdWJzdHIoMCwgcHJlY2lzaW9uKTtcbiAgICAgICAgICAgIHN0ciA9IHByZWZpeCArIGVuZFN0cjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIG9ubHkgYWRkIHBlcmNpc2lvbiAwJ3MgaWYgdGhlIGV4cG9uZW50IGlzIHBvc2l0aXZlXG4gICAgICAgIGlmICgrZXhwb25lbnQgPiAwICYmIHByZWNpc2lvbiA+IDApIHtcbiAgICAgICAgICAgIHN0ciArPSAnLicgKyB6ZXJvZXMocHJlY2lzaW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBzdHI7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSW1wbGVtZW50YXRpb24gb2YgdG9GaXhlZCgpIHRoYXQgdHJlYXRzIGZsb2F0cyBtb3JlIGxpa2UgZGVjaW1hbHNcbiAgICAgKlxuICAgICAqIEZpeGVzIGJpbmFyeSByb3VuZGluZyBpc3N1ZXMgKGVnLiAoMC42MTUpLnRvRml4ZWQoMikgPT09ICcwLjYxJykgdGhhdCBwcmVzZW50XG4gICAgICogcHJvYmxlbXMgZm9yIGFjY291bnRpbmctIGFuZCBmaW5hbmNlLXJlbGF0ZWQgc29mdHdhcmUuXG4gICAgICpcbiAgICAgKiBBbHNvIHJlbW92ZXMgbmVnYXRpdmUgc2lnbnMgZm9yIHplcm8tZm9ybWF0dGVkIG51bWJlcnMuIGUuZy4gLTAuMDEgdy8gcHJlY2lzaW9uIDEgLT4gMC4wXG4gICAgICovXG4gICAgZnVuY3Rpb24gdG9GaXhlZCh2YWx1ZSwgcHJlY2lzaW9uLCByb3VuZGluZ0Z1bmN0aW9uLCBvcHRpb25hbHMpIHtcbiAgICAgICAgdmFyIHBvd2VyID0gTWF0aC5wb3coMTAsIHByZWNpc2lvbiksXG4gICAgICAgICAgICBvcHRpb25hbHNSZWdFeHAsXG4gICAgICAgICAgICBvdXRwdXQ7XG5cbiAgICAgICAgaWYgKHZhbHVlLnRvU3RyaW5nKCkuaW5kZXhPZignZScpID4gLTEpIHtcbiAgICAgICAgICAgIC8vIHRvRml4ZWQgcmV0dXJucyBzY2llbnRpZmljIG5vdGF0aW9uIGZvciBudW1iZXJzIGFib3ZlIDFlMjEgYW5kIGJlbG93IDFlLTdcbiAgICAgICAgICAgIG91dHB1dCA9IHRvRml4ZWRMYXJnZVNtYWxsKHZhbHVlLCBwcmVjaXNpb24pO1xuICAgICAgICAgICAgLy8gcmVtb3ZlIHRoZSBsZWFkaW5nIG5lZ2F0aXZlIHNpZ24gaWYgaXQgZXhpc3RzIGFuZCBzaG91bGQgbm90IGJlIHByZXNlbnQgKGUuZy4gLTAuMDApXG4gICAgICAgICAgICBpZiAob3V0cHV0LmNoYXJBdCgwKSA9PT0gJy0nICYmICtvdXRwdXQgPj0gMCkge1xuICAgICAgICAgICAgICAgIG91dHB1dCA9IG91dHB1dC5zdWJzdHIoMSk7IC8vIGNob3Agb2ZmIHRoZSAnLSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIC8vIE11bHRpcGx5IHVwIGJ5IHByZWNpc2lvbiwgcm91bmQgYWNjdXJhdGVseSwgdGhlbiBkaXZpZGUgYW5kIHVzZSBuYXRpdmUgdG9GaXhlZCgpOlxuICAgICAgICAgICAgb3V0cHV0ID0gKHJvdW5kaW5nRnVuY3Rpb24odmFsdWUgKyAnZSsnICsgcHJlY2lzaW9uKSAvIHBvd2VyKS50b0ZpeGVkKHByZWNpc2lvbik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9uYWxzKSB7XG4gICAgICAgICAgICBvcHRpb25hbHNSZWdFeHAgPSBuZXcgUmVnRXhwKCcwezEsJyArIG9wdGlvbmFscyArICd9JCcpO1xuICAgICAgICAgICAgb3V0cHV0ID0gb3V0cHV0LnJlcGxhY2Uob3B0aW9uYWxzUmVnRXhwLCAnJyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gb3V0cHV0O1xuICAgIH1cblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgRm9ybWF0dGluZ1xuICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIC8vIGRldGVybWluZSB3aGF0IHR5cGUgb2YgZm9ybWF0dGluZyB3ZSBuZWVkIHRvIGRvXG4gICAgZnVuY3Rpb24gZm9ybWF0TnVtYnJvKG4sIGZvcm1hdCwgcm91bmRpbmdGdW5jdGlvbikge1xuICAgICAgICB2YXIgb3V0cHV0LFxuICAgICAgICAgICAgZXNjYXBlZEZvcm1hdCA9IGZvcm1hdC5yZXBsYWNlKC9cXHtbXlxce1xcfV0qXFx9L2csICcnKTtcblxuICAgICAgICAvLyBmaWd1cmUgb3V0IHdoYXQga2luZCBvZiBmb3JtYXQgd2UgYXJlIGRlYWxpbmcgd2l0aFxuICAgICAgICBpZiAoZXNjYXBlZEZvcm1hdC5pbmRleE9mKCckJykgPiAtMSkgeyAvLyBjdXJyZW5jeSEhISEhXG4gICAgICAgICAgICBvdXRwdXQgPSBmb3JtYXRDdXJyZW5jeShuLCBjdWx0dXJlc1tjdXJyZW50Q3VsdHVyZV0uY3VycmVuY3kuc3ltYm9sLCBmb3JtYXQsIHJvdW5kaW5nRnVuY3Rpb24pO1xuICAgICAgICB9IGVsc2UgaWYgKGVzY2FwZWRGb3JtYXQuaW5kZXhPZignJScpID4gLTEpIHsgLy8gcGVyY2VudGFnZVxuICAgICAgICAgICAgb3V0cHV0ID0gZm9ybWF0UGVyY2VudGFnZShuLCBmb3JtYXQsIHJvdW5kaW5nRnVuY3Rpb24pO1xuICAgICAgICB9IGVsc2UgaWYgKGVzY2FwZWRGb3JtYXQuaW5kZXhPZignOicpID4gLTEpIHsgLy8gdGltZVxuICAgICAgICAgICAgb3V0cHV0ID0gZm9ybWF0VGltZShuLCBmb3JtYXQpO1xuICAgICAgICB9IGVsc2UgeyAvLyBwbGFpbiBvbCcgbnVtYmVycyBvciBieXRlc1xuICAgICAgICAgICAgb3V0cHV0ID0gZm9ybWF0TnVtYmVyKG4uX3ZhbHVlLCBmb3JtYXQsIHJvdW5kaW5nRnVuY3Rpb24pO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gcmV0dXJuIHN0cmluZ1xuICAgICAgICByZXR1cm4gb3V0cHV0O1xuICAgIH1cblxuICAgIC8vIHJldmVydCB0byBudW1iZXJcbiAgICBmdW5jdGlvbiB1bmZvcm1hdE51bWJybyhuLCBzdHJpbmcpIHtcbiAgICAgICAgdmFyIHN0cmluZ09yaWdpbmFsID0gc3RyaW5nLFxuICAgICAgICAgICAgdGhvdXNhbmRSZWdFeHAsXG4gICAgICAgICAgICBtaWxsaW9uUmVnRXhwLFxuICAgICAgICAgICAgYmlsbGlvblJlZ0V4cCxcbiAgICAgICAgICAgIHRyaWxsaW9uUmVnRXhwLFxuICAgICAgICAgICAgYnl0ZXNNdWx0aXBsaWVyID0gZmFsc2UsXG4gICAgICAgICAgICBwb3dlcjtcblxuICAgICAgICBpZiAoc3RyaW5nLmluZGV4T2YoJzonKSA+IC0xKSB7XG4gICAgICAgICAgICBuLl92YWx1ZSA9IHVuZm9ybWF0VGltZShzdHJpbmcpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKHN0cmluZyA9PT0gemVyb0Zvcm1hdCkge1xuICAgICAgICAgICAgICAgIG4uX3ZhbHVlID0gMDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKGN1bHR1cmVzW2N1cnJlbnRDdWx0dXJlXS5kZWxpbWl0ZXJzLmRlY2ltYWwgIT09ICcuJykge1xuICAgICAgICAgICAgICAgICAgICBzdHJpbmcgPSBzdHJpbmcucmVwbGFjZSgvXFwuL2csICcnKS5yZXBsYWNlKGN1bHR1cmVzW2N1cnJlbnRDdWx0dXJlXS5kZWxpbWl0ZXJzLmRlY2ltYWwsICcuJyk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gc2VlIGlmIGFiYnJldmlhdGlvbnMgYXJlIHRoZXJlIHNvIHRoYXQgd2UgY2FuIG11bHRpcGx5IHRvIHRoZSBjb3JyZWN0IG51bWJlclxuICAgICAgICAgICAgICAgIHRob3VzYW5kUmVnRXhwID0gbmV3IFJlZ0V4cCgnW15hLXpBLVpdJyArIGN1bHR1cmVzW2N1cnJlbnRDdWx0dXJlXS5hYmJyZXZpYXRpb25zLnRob3VzYW5kICtcbiAgICAgICAgICAgICAgICAgICAgJyg/OlxcXFwpfChcXFxcJyArIGN1bHR1cmVzW2N1cnJlbnRDdWx0dXJlXS5jdXJyZW5jeS5zeW1ib2wgKyAnKT8oPzpcXFxcKSk/KT8kJyk7XG4gICAgICAgICAgICAgICAgbWlsbGlvblJlZ0V4cCA9IG5ldyBSZWdFeHAoJ1teYS16QS1aXScgKyBjdWx0dXJlc1tjdXJyZW50Q3VsdHVyZV0uYWJicmV2aWF0aW9ucy5taWxsaW9uICtcbiAgICAgICAgICAgICAgICAgICAgJyg/OlxcXFwpfChcXFxcJyArIGN1bHR1cmVzW2N1cnJlbnRDdWx0dXJlXS5jdXJyZW5jeS5zeW1ib2wgKyAnKT8oPzpcXFxcKSk/KT8kJyk7XG4gICAgICAgICAgICAgICAgYmlsbGlvblJlZ0V4cCA9IG5ldyBSZWdFeHAoJ1teYS16QS1aXScgKyBjdWx0dXJlc1tjdXJyZW50Q3VsdHVyZV0uYWJicmV2aWF0aW9ucy5iaWxsaW9uICtcbiAgICAgICAgICAgICAgICAgICAgJyg/OlxcXFwpfChcXFxcJyArIGN1bHR1cmVzW2N1cnJlbnRDdWx0dXJlXS5jdXJyZW5jeS5zeW1ib2wgKyAnKT8oPzpcXFxcKSk/KT8kJyk7XG4gICAgICAgICAgICAgICAgdHJpbGxpb25SZWdFeHAgPSBuZXcgUmVnRXhwKCdbXmEtekEtWl0nICsgY3VsdHVyZXNbY3VycmVudEN1bHR1cmVdLmFiYnJldmlhdGlvbnMudHJpbGxpb24gK1xuICAgICAgICAgICAgICAgICAgICAnKD86XFxcXCl8KFxcXFwnICsgY3VsdHVyZXNbY3VycmVudEN1bHR1cmVdLmN1cnJlbmN5LnN5bWJvbCArICcpPyg/OlxcXFwpKT8pPyQnKTtcblxuICAgICAgICAgICAgICAgIC8vIHNlZSBpZiBieXRlcyBhcmUgdGhlcmUgc28gdGhhdCB3ZSBjYW4gbXVsdGlwbHkgdG8gdGhlIGNvcnJlY3QgbnVtYmVyXG4gICAgICAgICAgICAgICAgZm9yIChwb3dlciA9IDE7IHBvd2VyIDwgYmluYXJ5U3VmZml4ZXMubGVuZ3RoICYmICFieXRlc011bHRpcGxpZXI7ICsrcG93ZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHN0cmluZy5pbmRleE9mKGJpbmFyeVN1ZmZpeGVzW3Bvd2VyXSkgPiAtMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYnl0ZXNNdWx0aXBsaWVyID0gTWF0aC5wb3coMTAyNCwgcG93ZXIpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHN0cmluZy5pbmRleE9mKGRlY2ltYWxTdWZmaXhlc1twb3dlcl0pID4gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJ5dGVzTXVsdGlwbGllciA9IE1hdGgucG93KDEwMDAsIHBvd2VyKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHZhciBzdHIgPSBzdHJpbmcucmVwbGFjZSgvW14wLTlcXC5dKy9nLCAnJyk7XG4gICAgICAgICAgICAgICAgaWYgKHN0ciA9PT0gJycpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gQW4gZW1wdHkgc3RyaW5nIGlzIG5vdCBhIG51bWJlci5cbiAgICAgICAgICAgICAgICAgICAgbi5fdmFsdWUgPSBOYU47XG5cbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAvLyBkbyBzb21lIG1hdGggdG8gY3JlYXRlIG91ciBudW1iZXJcbiAgICAgICAgICAgICAgICAgICAgbi5fdmFsdWUgPSAoKGJ5dGVzTXVsdGlwbGllcikgPyBieXRlc011bHRpcGxpZXIgOiAxKSAqXG4gICAgICAgICAgICAgICAgICAgICAgICAoKHN0cmluZ09yaWdpbmFsLm1hdGNoKHRob3VzYW5kUmVnRXhwKSkgPyBNYXRoLnBvdygxMCwgMykgOiAxKSAqXG4gICAgICAgICAgICAgICAgICAgICAgICAoKHN0cmluZ09yaWdpbmFsLm1hdGNoKG1pbGxpb25SZWdFeHApKSA/IE1hdGgucG93KDEwLCA2KSA6IDEpICpcbiAgICAgICAgICAgICAgICAgICAgICAgICgoc3RyaW5nT3JpZ2luYWwubWF0Y2goYmlsbGlvblJlZ0V4cCkpID8gTWF0aC5wb3coMTAsIDkpIDogMSkgKlxuICAgICAgICAgICAgICAgICAgICAgICAgKChzdHJpbmdPcmlnaW5hbC5tYXRjaCh0cmlsbGlvblJlZ0V4cCkpID8gTWF0aC5wb3coMTAsIDEyKSA6IDEpICpcbiAgICAgICAgICAgICAgICAgICAgICAgICgoc3RyaW5nLmluZGV4T2YoJyUnKSA+IC0xKSA/IDAuMDEgOiAxKSAqXG4gICAgICAgICAgICAgICAgICAgICAgICAoKChzdHJpbmcuc3BsaXQoJy0nKS5sZW5ndGggK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1hdGgubWluKHN0cmluZy5zcGxpdCgnKCcpLmxlbmd0aCAtIDEsIHN0cmluZy5zcGxpdCgnKScpLmxlbmd0aCAtIDEpKSAlIDIpID8gMSA6IC0xKSAqXG4gICAgICAgICAgICAgICAgICAgICAgICBOdW1iZXIoc3RyKTtcblxuICAgICAgICAgICAgICAgICAgICAvLyByb3VuZCBpZiB3ZSBhcmUgdGFsa2luZyBhYm91dCBieXRlc1xuICAgICAgICAgICAgICAgICAgICBuLl92YWx1ZSA9IChieXRlc011bHRpcGxpZXIpID8gTWF0aC5jZWlsKG4uX3ZhbHVlKSA6IG4uX3ZhbHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbi5fdmFsdWU7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gZm9ybWF0Q3VycmVuY3kobiwgY3VycmVuY3lTeW1ib2wsIG9yaWdpbmFsRm9ybWF0LCByb3VuZGluZ0Z1bmN0aW9uKSB7XG4gICAgICAgIHZhciBmb3JtYXQgPSBvcmlnaW5hbEZvcm1hdCxcbiAgICAgICAgICAgIHN5bWJvbEluZGV4ID0gZm9ybWF0LmluZGV4T2YoJyQnKSxcbiAgICAgICAgICAgIG9wZW5QYXJlbkluZGV4ID0gZm9ybWF0LmluZGV4T2YoJygnKSxcbiAgICAgICAgICAgIHBsdXNTaWduSW5kZXggPSBmb3JtYXQuaW5kZXhPZignKycpLFxuICAgICAgICAgICAgbWludXNTaWduSW5kZXggPSBmb3JtYXQuaW5kZXhPZignLScpLFxuICAgICAgICAgICAgc3BhY2UgPSAnJyxcbiAgICAgICAgICAgIGRlY2ltYWxTZXBhcmF0b3IgPSAnJyxcbiAgICAgICAgICAgIHNwbGljZUluZGV4LFxuICAgICAgICAgICAgb3V0cHV0O1xuXG4gICAgICAgIGlmKGZvcm1hdC5pbmRleE9mKCckJykgPT09IC0xKXtcbiAgICAgICAgICAgIC8vIFVzZSBkZWZhdWx0cyBpbnN0ZWFkIG9mIHRoZSBmb3JtYXQgcHJvdmlkZWRcbiAgICAgICAgICAgIGlmIChjdWx0dXJlc1tjdXJyZW50Q3VsdHVyZV0uY3VycmVuY3kucG9zaXRpb24gPT09ICdpbmZpeCcpIHtcbiAgICAgICAgICAgICAgICBkZWNpbWFsU2VwYXJhdG9yID0gY3VycmVuY3lTeW1ib2w7XG4gICAgICAgICAgICAgICAgaWYgKGN1bHR1cmVzW2N1cnJlbnRDdWx0dXJlXS5jdXJyZW5jeS5zcGFjZVNlcGFyYXRlZCkge1xuICAgICAgICAgICAgICAgICAgICBkZWNpbWFsU2VwYXJhdG9yID0gJyAnICsgZGVjaW1hbFNlcGFyYXRvciArICcgJztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGN1bHR1cmVzW2N1cnJlbnRDdWx0dXJlXS5jdXJyZW5jeS5zcGFjZVNlcGFyYXRlZCkge1xuICAgICAgICAgICAgICAgIHNwYWNlID0gJyAnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gY2hlY2sgZm9yIHNwYWNlIGJlZm9yZSBvciBhZnRlciBjdXJyZW5jeVxuICAgICAgICAgICAgaWYgKGZvcm1hdC5pbmRleE9mKCcgJCcpID4gLTEpIHtcbiAgICAgICAgICAgICAgICBzcGFjZSA9ICcgJztcbiAgICAgICAgICAgICAgICBmb3JtYXQgPSBmb3JtYXQucmVwbGFjZSgnICQnLCAnJyk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGZvcm1hdC5pbmRleE9mKCckICcpID4gLTEpIHtcbiAgICAgICAgICAgICAgICBzcGFjZSA9ICcgJztcbiAgICAgICAgICAgICAgICBmb3JtYXQgPSBmb3JtYXQucmVwbGFjZSgnJCAnLCAnJyk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGZvcm1hdCA9IGZvcm1hdC5yZXBsYWNlKCckJywgJycpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRm9ybWF0IFRoZSBOdW1iZXJcbiAgICAgICAgb3V0cHV0ID0gZm9ybWF0TnVtYmVyKG4uX3ZhbHVlLCBmb3JtYXQsIHJvdW5kaW5nRnVuY3Rpb24sIGRlY2ltYWxTZXBhcmF0b3IpO1xuXG4gICAgICAgIGlmIChvcmlnaW5hbEZvcm1hdC5pbmRleE9mKCckJykgPT09IC0xKSB7XG4gICAgICAgICAgICAvLyBVc2UgZGVmYXVsdHMgaW5zdGVhZCBvZiB0aGUgZm9ybWF0IHByb3ZpZGVkXG4gICAgICAgICAgICBzd2l0Y2ggKGN1bHR1cmVzW2N1cnJlbnRDdWx0dXJlXS5jdXJyZW5jeS5wb3NpdGlvbikge1xuICAgICAgICAgICAgICAgIGNhc2UgJ3Bvc3RmaXgnOlxuICAgICAgICAgICAgICAgICAgICBpZiAob3V0cHV0LmluZGV4T2YoJyknKSA+IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXQgPSBvdXRwdXQuc3BsaXQoJycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0LnNwbGljZSgtMSwgMCwgc3BhY2UgKyBjdXJyZW5jeVN5bWJvbCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXQgPSBvdXRwdXQuam9pbignJyk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXQgPSBvdXRwdXQgKyBzcGFjZSArIGN1cnJlbmN5U3ltYm9sO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ2luZml4JzpcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAncHJlZml4JzpcbiAgICAgICAgICAgICAgICAgICAgaWYgKG91dHB1dC5pbmRleE9mKCcoJykgPiAtMSB8fCBvdXRwdXQuaW5kZXhPZignLScpID4gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dCA9IG91dHB1dC5zcGxpdCgnJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBzcGxpY2VJbmRleCA9IE1hdGgubWF4KG9wZW5QYXJlbkluZGV4LCBtaW51c1NpZ25JbmRleCkgKyAxO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXQuc3BsaWNlKHNwbGljZUluZGV4LCAwLCBjdXJyZW5jeVN5bWJvbCArIHNwYWNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dCA9IG91dHB1dC5qb2luKCcnKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dCA9IGN1cnJlbmN5U3ltYm9sICsgc3BhY2UgKyBvdXRwdXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgRXJyb3IoJ0N1cnJlbmN5IHBvc2l0aW9uIHNob3VsZCBiZSBhbW9uZyBbXCJwcmVmaXhcIiwgXCJpbmZpeFwiLCBcInBvc3RmaXhcIl0nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIHBvc2l0aW9uIHRoZSBzeW1ib2xcbiAgICAgICAgICAgIGlmIChzeW1ib2xJbmRleCA8PSAxKSB7XG4gICAgICAgICAgICAgICAgaWYgKG91dHB1dC5pbmRleE9mKCcoJykgPiAtMSB8fCBvdXRwdXQuaW5kZXhPZignKycpID4gLTEgfHwgb3V0cHV0LmluZGV4T2YoJy0nKSA+IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIG91dHB1dCA9IG91dHB1dC5zcGxpdCgnJyk7XG4gICAgICAgICAgICAgICAgICAgIHNwbGljZUluZGV4ID0gMTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHN5bWJvbEluZGV4IDwgb3BlblBhcmVuSW5kZXggfHwgc3ltYm9sSW5kZXggPCBwbHVzU2lnbkluZGV4IHx8IHN5bWJvbEluZGV4IDwgbWludXNTaWduSW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoZSBzeW1ib2wgYXBwZWFycyBiZWZvcmUgdGhlIFwiKFwiLCBcIitcIiBvciBcIi1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgc3BsaWNlSW5kZXggPSAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIG91dHB1dC5zcGxpY2Uoc3BsaWNlSW5kZXgsIDAsIGN1cnJlbmN5U3ltYm9sICsgc3BhY2UpO1xuICAgICAgICAgICAgICAgICAgICBvdXRwdXQgPSBvdXRwdXQuam9pbignJyk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgb3V0cHV0ID0gY3VycmVuY3lTeW1ib2wgKyBzcGFjZSArIG91dHB1dDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmIChvdXRwdXQuaW5kZXhPZignKScpID4gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgb3V0cHV0ID0gb3V0cHV0LnNwbGl0KCcnKTtcbiAgICAgICAgICAgICAgICAgICAgb3V0cHV0LnNwbGljZSgtMSwgMCwgc3BhY2UgKyBjdXJyZW5jeVN5bWJvbCk7XG4gICAgICAgICAgICAgICAgICAgIG91dHB1dCA9IG91dHB1dC5qb2luKCcnKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBvdXRwdXQgPSBvdXRwdXQgKyBzcGFjZSArIGN1cnJlbmN5U3ltYm9sO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBvdXRwdXQ7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gZm9ybWF0Rm9yZWlnbkN1cnJlbmN5KG4sIGZvcmVpZ25DdXJyZW5jeVN5bWJvbCwgb3JpZ2luYWxGb3JtYXQsIHJvdW5kaW5nRnVuY3Rpb24pIHtcbiAgICAgICAgcmV0dXJuIGZvcm1hdEN1cnJlbmN5KG4sIGZvcmVpZ25DdXJyZW5jeVN5bWJvbCwgb3JpZ2luYWxGb3JtYXQsIHJvdW5kaW5nRnVuY3Rpb24pO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGZvcm1hdFBlcmNlbnRhZ2UobiwgZm9ybWF0LCByb3VuZGluZ0Z1bmN0aW9uKSB7XG4gICAgICAgIHZhciBzcGFjZSA9ICcnLFxuICAgICAgICAgICAgb3V0cHV0LFxuICAgICAgICAgICAgdmFsdWUgPSBuLl92YWx1ZSAqIDEwMDtcblxuICAgICAgICAvLyBjaGVjayBmb3Igc3BhY2UgYmVmb3JlICVcbiAgICAgICAgaWYgKGZvcm1hdC5pbmRleE9mKCcgJScpID4gLTEpIHtcbiAgICAgICAgICAgIHNwYWNlID0gJyAnO1xuICAgICAgICAgICAgZm9ybWF0ID0gZm9ybWF0LnJlcGxhY2UoJyAlJywgJycpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZm9ybWF0ID0gZm9ybWF0LnJlcGxhY2UoJyUnLCAnJyk7XG4gICAgICAgIH1cblxuICAgICAgICBvdXRwdXQgPSBmb3JtYXROdW1iZXIodmFsdWUsIGZvcm1hdCwgcm91bmRpbmdGdW5jdGlvbik7XG5cbiAgICAgICAgaWYgKG91dHB1dC5pbmRleE9mKCcpJykgPiAtMSkge1xuICAgICAgICAgICAgb3V0cHV0ID0gb3V0cHV0LnNwbGl0KCcnKTtcbiAgICAgICAgICAgIG91dHB1dC5zcGxpY2UoLTEsIDAsIHNwYWNlICsgJyUnKTtcbiAgICAgICAgICAgIG91dHB1dCA9IG91dHB1dC5qb2luKCcnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG91dHB1dCA9IG91dHB1dCArIHNwYWNlICsgJyUnO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG91dHB1dDtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBmb3JtYXRUaW1lKG4pIHtcbiAgICAgICAgdmFyIGhvdXJzID0gTWF0aC5mbG9vcihuLl92YWx1ZSAvIDYwIC8gNjApLFxuICAgICAgICAgICAgbWludXRlcyA9IE1hdGguZmxvb3IoKG4uX3ZhbHVlIC0gKGhvdXJzICogNjAgKiA2MCkpIC8gNjApLFxuICAgICAgICAgICAgc2Vjb25kcyA9IE1hdGgucm91bmQobi5fdmFsdWUgLSAoaG91cnMgKiA2MCAqIDYwKSAtIChtaW51dGVzICogNjApKTtcbiAgICAgICAgcmV0dXJuIGhvdXJzICsgJzonICtcbiAgICAgICAgICAgICgobWludXRlcyA8IDEwKSA/ICcwJyArIG1pbnV0ZXMgOiBtaW51dGVzKSArICc6JyArXG4gICAgICAgICAgICAoKHNlY29uZHMgPCAxMCkgPyAnMCcgKyBzZWNvbmRzIDogc2Vjb25kcyk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gdW5mb3JtYXRUaW1lKHN0cmluZykge1xuICAgICAgICB2YXIgdGltZUFycmF5ID0gc3RyaW5nLnNwbGl0KCc6JyksXG4gICAgICAgICAgICBzZWNvbmRzID0gMDtcbiAgICAgICAgLy8gdHVybiBob3VycyBhbmQgbWludXRlcyBpbnRvIHNlY29uZHMgYW5kIGFkZCB0aGVtIGFsbCB1cFxuICAgICAgICBpZiAodGltZUFycmF5Lmxlbmd0aCA9PT0gMykge1xuICAgICAgICAgICAgLy8gaG91cnNcbiAgICAgICAgICAgIHNlY29uZHMgPSBzZWNvbmRzICsgKE51bWJlcih0aW1lQXJyYXlbMF0pICogNjAgKiA2MCk7XG4gICAgICAgICAgICAvLyBtaW51dGVzXG4gICAgICAgICAgICBzZWNvbmRzID0gc2Vjb25kcyArIChOdW1iZXIodGltZUFycmF5WzFdKSAqIDYwKTtcbiAgICAgICAgICAgIC8vIHNlY29uZHNcbiAgICAgICAgICAgIHNlY29uZHMgPSBzZWNvbmRzICsgTnVtYmVyKHRpbWVBcnJheVsyXSk7XG4gICAgICAgIH0gZWxzZSBpZiAodGltZUFycmF5Lmxlbmd0aCA9PT0gMikge1xuICAgICAgICAgICAgLy8gbWludXRlc1xuICAgICAgICAgICAgc2Vjb25kcyA9IHNlY29uZHMgKyAoTnVtYmVyKHRpbWVBcnJheVswXSkgKiA2MCk7XG4gICAgICAgICAgICAvLyBzZWNvbmRzXG4gICAgICAgICAgICBzZWNvbmRzID0gc2Vjb25kcyArIE51bWJlcih0aW1lQXJyYXlbMV0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBOdW1iZXIoc2Vjb25kcyk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gZm9ybWF0Qnl0ZVVuaXRzICh2YWx1ZSwgc3VmZml4ZXMsIHNjYWxlKSB7XG4gICAgICAgIHZhciBzdWZmaXggPSBzdWZmaXhlc1swXSxcbiAgICAgICAgICAgIHBvd2VyLFxuICAgICAgICAgICAgbWluLFxuICAgICAgICAgICAgbWF4LFxuICAgICAgICAgICAgYWJzID0gTWF0aC5hYnModmFsdWUpO1xuXG4gICAgICAgIGlmIChhYnMgPj0gc2NhbGUpIHtcbiAgICAgICAgICAgIGZvciAocG93ZXIgPSAxOyBwb3dlciA8IHN1ZmZpeGVzLmxlbmd0aDsgKytwb3dlcikge1xuICAgICAgICAgICAgICAgIG1pbiA9IE1hdGgucG93KHNjYWxlLCBwb3dlcik7XG4gICAgICAgICAgICAgICAgbWF4ID0gTWF0aC5wb3coc2NhbGUsIHBvd2VyICsgMSk7XG5cbiAgICAgICAgICAgICAgICBpZiAoYWJzID49IG1pbiAmJiBhYnMgPCBtYXgpIHtcbiAgICAgICAgICAgICAgICAgICAgc3VmZml4ID0gc3VmZml4ZXNbcG93ZXJdO1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IHZhbHVlIC8gbWluO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIHZhbHVlcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gW3NjYWxlXSBZQiBuZXZlciBzZXQgdGhlIHN1ZmZpeFxuICAgICAgICAgICAgaWYgKHN1ZmZpeCA9PT0gc3VmZml4ZXNbMF0pIHtcbiAgICAgICAgICAgICAgICB2YWx1ZSA9IHZhbHVlIC8gTWF0aC5wb3coc2NhbGUsIHN1ZmZpeGVzLmxlbmd0aCAtIDEpO1xuICAgICAgICAgICAgICAgIHN1ZmZpeCA9IHN1ZmZpeGVzW3N1ZmZpeGVzLmxlbmd0aCAtIDFdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHsgdmFsdWU6IHZhbHVlLCBzdWZmaXg6IHN1ZmZpeCB9O1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGZvcm1hdE51bWJlciAodmFsdWUsIGZvcm1hdCwgcm91bmRpbmdGdW5jdGlvbiwgc2VwKSB7XG4gICAgICAgIHZhciBuZWdQID0gZmFsc2UsXG4gICAgICAgICAgICBzaWduZWQgPSBmYWxzZSxcbiAgICAgICAgICAgIG9wdERlYyA9IGZhbHNlLFxuICAgICAgICAgICAgYWJiciA9ICcnLFxuICAgICAgICAgICAgYWJicksgPSBmYWxzZSwgLy8gZm9yY2UgYWJicmV2aWF0aW9uIHRvIHRob3VzYW5kc1xuICAgICAgICAgICAgYWJick0gPSBmYWxzZSwgLy8gZm9yY2UgYWJicmV2aWF0aW9uIHRvIG1pbGxpb25zXG4gICAgICAgICAgICBhYmJyQiA9IGZhbHNlLCAvLyBmb3JjZSBhYmJyZXZpYXRpb24gdG8gYmlsbGlvbnNcbiAgICAgICAgICAgIGFiYnJUID0gZmFsc2UsIC8vIGZvcmNlIGFiYnJldmlhdGlvbiB0byB0cmlsbGlvbnNcbiAgICAgICAgICAgIGFiYnJGb3JjZSA9IGZhbHNlLCAvLyBmb3JjZSBhYmJyZXZpYXRpb25cbiAgICAgICAgICAgIGJ5dGVzID0gJycsXG4gICAgICAgICAgICBieXRlRm9ybWF0LFxuICAgICAgICAgICAgdW5pdHMsXG4gICAgICAgICAgICBvcmQgPSAnJyxcbiAgICAgICAgICAgIGFicyA9IE1hdGguYWJzKHZhbHVlKSxcbiAgICAgICAgICAgIHRvdGFsTGVuZ3RoLFxuICAgICAgICAgICAgbGVuZ3RoLFxuICAgICAgICAgICAgbWluaW11bVByZWNpc2lvbixcbiAgICAgICAgICAgIHBvdyxcbiAgICAgICAgICAgIHcsXG4gICAgICAgICAgICBpbnRQcmVjaXNpb24sXG4gICAgICAgICAgICBwcmVjaXNpb24sXG4gICAgICAgICAgICBwcmVmaXgsXG4gICAgICAgICAgICBwb3N0Zml4LFxuICAgICAgICAgICAgdGhvdXNhbmRzLFxuICAgICAgICAgICAgZCA9ICcnLFxuICAgICAgICAgICAgZm9yY2VkTmVnID0gZmFsc2UsXG4gICAgICAgICAgICBuZWcgPSBmYWxzZSxcbiAgICAgICAgICAgIGluZGV4T3BlblAsXG4gICAgICAgICAgICBpbmRleE1pbnVzLFxuICAgICAgICAgICAgcGFyZW4gPSAnJyxcbiAgICAgICAgICAgIG1pbmxlbixcbiAgICAgICAgICAgIGk7XG5cbiAgICAgICAgLy8gY2hlY2sgaWYgbnVtYmVyIGlzIHplcm8gYW5kIGEgY3VzdG9tIHplcm8gZm9ybWF0IGhhcyBiZWVuIHNldFxuICAgICAgICBpZiAodmFsdWUgPT09IDAgJiYgemVyb0Zvcm1hdCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIHplcm9Gb3JtYXQ7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIWlzRmluaXRlKHZhbHVlKSkge1xuICAgICAgICAgICAgcmV0dXJuICcnICsgdmFsdWU7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZm9ybWF0LmluZGV4T2YoJ3snKSA9PT0gMCkge1xuICAgICAgICAgICAgdmFyIGVuZCA9IGZvcm1hdC5pbmRleE9mKCd9Jyk7XG4gICAgICAgICAgICBpZiAoZW5kID09PSAtMSkge1xuICAgICAgICAgICAgICAgIHRocm93IEVycm9yKCdGb3JtYXQgc2hvdWxkIGFsc28gY29udGFpbiBhIFwifVwiJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwcmVmaXggPSBmb3JtYXQuc2xpY2UoMSwgZW5kKTtcbiAgICAgICAgICAgIGZvcm1hdCA9IGZvcm1hdC5zbGljZShlbmQgKyAxKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHByZWZpeCA9ICcnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGZvcm1hdC5pbmRleE9mKCd9JykgPT09IGZvcm1hdC5sZW5ndGggLSAxICYmIGZvcm1hdC5sZW5ndGgpIHtcbiAgICAgICAgICAgIHZhciBzdGFydCA9IGZvcm1hdC5pbmRleE9mKCd7Jyk7XG4gICAgICAgICAgICBpZiAoc3RhcnQgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgRXJyb3IoJ0Zvcm1hdCBzaG91bGQgYWxzbyBjb250YWluIGEgXCJ7XCInKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHBvc3RmaXggPSBmb3JtYXQuc2xpY2Uoc3RhcnQgKyAxLCAtMSk7XG4gICAgICAgICAgICBmb3JtYXQgPSBmb3JtYXQuc2xpY2UoMCwgc3RhcnQgKyAxKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBvc3RmaXggPSAnJztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGNoZWNrIGZvciBtaW4gbGVuZ3RoXG4gICAgICAgIHZhciBpbmZvO1xuICAgICAgICBpZiAoZm9ybWF0LmluZGV4T2YoJy4nKSA9PT0gLTEpIHtcbiAgICAgICAgICAgIGluZm8gPSBmb3JtYXQubWF0Y2goLyhbMC05XSspLiovKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGluZm8gPSBmb3JtYXQubWF0Y2goLyhbMC05XSspXFwuLiovKTtcbiAgICAgICAgfVxuICAgICAgICBtaW5sZW4gPSBpbmZvID09PSBudWxsID8gLTEgOiBpbmZvWzFdLmxlbmd0aDtcblxuICAgICAgICAvLyBzZWUgaWYgd2Ugc2hvdWxkIHVzZSBwYXJlbnRoZXNlcyBmb3IgbmVnYXRpdmUgbnVtYmVyIG9yIGlmIHdlIHNob3VsZCBwcmVmaXggd2l0aCBhIHNpZ25cbiAgICAgICAgLy8gaWYgYm90aCBhcmUgcHJlc2VudCB3ZSBkZWZhdWx0IHRvIHBhcmVudGhlc2VzXG4gICAgICAgIGlmIChmb3JtYXQuaW5kZXhPZignLScpICE9PSAtMSkge1xuICAgICAgICAgICAgZm9yY2VkTmVnID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZm9ybWF0LmluZGV4T2YoJygnKSA+IC0xKSB7XG4gICAgICAgICAgICBuZWdQID0gdHJ1ZTtcbiAgICAgICAgICAgIGZvcm1hdCA9IGZvcm1hdC5zbGljZSgxLCAtMSk7XG4gICAgICAgIH0gZWxzZSBpZiAoZm9ybWF0LmluZGV4T2YoJysnKSA+IC0xKSB7XG4gICAgICAgICAgICBzaWduZWQgPSB0cnVlO1xuICAgICAgICAgICAgZm9ybWF0ID0gZm9ybWF0LnJlcGxhY2UoL1xcKy9nLCAnJyk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBzZWUgaWYgYWJicmV2aWF0aW9uIGlzIHdhbnRlZFxuICAgICAgICBpZiAoZm9ybWF0LmluZGV4T2YoJ2EnKSA+IC0xKSB7XG4gICAgICAgICAgICBpbnRQcmVjaXNpb24gPSBmb3JtYXQuc3BsaXQoJy4nKVswXS5tYXRjaCgvWzAtOV0rL2cpIHx8IFsnMCddO1xuICAgICAgICAgICAgaW50UHJlY2lzaW9uID0gcGFyc2VJbnQoaW50UHJlY2lzaW9uWzBdLCAxMCk7XG5cbiAgICAgICAgICAgIC8vIGNoZWNrIGlmIGFiYnJldmlhdGlvbiBpcyBzcGVjaWZpZWRcbiAgICAgICAgICAgIGFiYnJLID0gZm9ybWF0LmluZGV4T2YoJ2FLJykgPj0gMDtcbiAgICAgICAgICAgIGFiYnJNID0gZm9ybWF0LmluZGV4T2YoJ2FNJykgPj0gMDtcbiAgICAgICAgICAgIGFiYnJCID0gZm9ybWF0LmluZGV4T2YoJ2FCJykgPj0gMDtcbiAgICAgICAgICAgIGFiYnJUID0gZm9ybWF0LmluZGV4T2YoJ2FUJykgPj0gMDtcbiAgICAgICAgICAgIGFiYnJGb3JjZSA9IGFiYnJLIHx8IGFiYnJNIHx8IGFiYnJCIHx8IGFiYnJUO1xuXG4gICAgICAgICAgICAvLyBjaGVjayBmb3Igc3BhY2UgYmVmb3JlIGFiYnJldmlhdGlvblxuICAgICAgICAgICAgaWYgKGZvcm1hdC5pbmRleE9mKCcgYScpID4gLTEpIHtcbiAgICAgICAgICAgICAgICBhYmJyID0gJyAnO1xuICAgICAgICAgICAgICAgIGZvcm1hdCA9IGZvcm1hdC5yZXBsYWNlKCcgYScsICcnKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgZm9ybWF0ID0gZm9ybWF0LnJlcGxhY2UoJ2EnLCAnJyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRvdGFsTGVuZ3RoID0gbnVtYmVyTGVuZ3RoKHZhbHVlKTtcbiAgICAgICAgICAgIG1pbmltdW1QcmVjaXNpb24gPSB0b3RhbExlbmd0aCAlIDM7XG4gICAgICAgICAgICBtaW5pbXVtUHJlY2lzaW9uID0gbWluaW11bVByZWNpc2lvbiA9PT0gMCA/IDMgOiBtaW5pbXVtUHJlY2lzaW9uO1xuXG4gICAgICAgICAgICBpZiAoaW50UHJlY2lzaW9uICYmIGFicyAhPT0gMCkge1xuICAgICAgICAgICAgICAgIHBvdyA9IDMgKiB+figoTWF0aC5taW4oaW50UHJlY2lzaW9uLCB0b3RhbExlbmd0aCkgLSBtaW5pbXVtUHJlY2lzaW9uKSAvIDMpO1xuICAgICAgICAgICAgICAgIGFicyA9IGFicyAvIE1hdGgucG93KDEwLCBwb3cpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAodG90YWxMZW5ndGggIT09IGludFByZWNpc2lvbikge1xuICAgICAgICAgICAgICAgIGlmIChhYnMgPj0gTWF0aC5wb3coMTAsIDEyKSAmJiAhYWJickZvcmNlIHx8IGFiYnJUKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIHRyaWxsaW9uXG4gICAgICAgICAgICAgICAgICAgIGFiYnIgPSBhYmJyICsgY3VsdHVyZXNbY3VycmVudEN1bHR1cmVdLmFiYnJldmlhdGlvbnMudHJpbGxpb247XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlID0gdmFsdWUgLyBNYXRoLnBvdygxMCwgMTIpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoYWJzIDwgTWF0aC5wb3coMTAsIDEyKSAmJiBhYnMgPj0gTWF0aC5wb3coMTAsIDkpICYmICFhYmJyRm9yY2UgfHwgYWJickIpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gYmlsbGlvblxuICAgICAgICAgICAgICAgICAgICBhYmJyID0gYWJiciArIGN1bHR1cmVzW2N1cnJlbnRDdWx0dXJlXS5hYmJyZXZpYXRpb25zLmJpbGxpb247XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlID0gdmFsdWUgLyBNYXRoLnBvdygxMCwgOSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChhYnMgPCBNYXRoLnBvdygxMCwgOSkgJiYgYWJzID49IE1hdGgucG93KDEwLCA2KSAmJiAhYWJickZvcmNlIHx8IGFiYnJNKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIG1pbGxpb25cbiAgICAgICAgICAgICAgICAgICAgYWJiciA9IGFiYnIgKyBjdWx0dXJlc1tjdXJyZW50Q3VsdHVyZV0uYWJicmV2aWF0aW9ucy5taWxsaW9uO1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IHZhbHVlIC8gTWF0aC5wb3coMTAsIDYpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoYWJzIDwgTWF0aC5wb3coMTAsIDYpICYmIGFicyA+PSBNYXRoLnBvdygxMCwgMykgJiYgIWFiYnJGb3JjZSB8fCBhYmJySykge1xuICAgICAgICAgICAgICAgICAgICAvLyB0aG91c2FuZFxuICAgICAgICAgICAgICAgICAgICBhYmJyID0gYWJiciArIGN1bHR1cmVzW2N1cnJlbnRDdWx0dXJlXS5hYmJyZXZpYXRpb25zLnRob3VzYW5kO1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IHZhbHVlIC8gTWF0aC5wb3coMTAsIDMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGVuZ3RoID0gbnVtYmVyTGVuZ3RoKHZhbHVlKTtcbiAgICAgICAgICAgIGlmIChpbnRQcmVjaXNpb24gJiYgbGVuZ3RoIDwgaW50UHJlY2lzaW9uICYmIGZvcm1hdC5pbmRleE9mKCcuJykgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgZm9ybWF0ICs9ICdbLl0nO1xuICAgICAgICAgICAgICAgIGZvcm1hdCArPSB6ZXJvZXMoaW50UHJlY2lzaW9uIC0gbGVuZ3RoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHNlZSBpZiB3ZSBhcmUgZm9ybWF0dGluZ1xuICAgICAgICAvLyAgIGJpbmFyeS1kZWNpbWFsIGJ5dGVzICgxMDI0IE1CKSwgYmluYXJ5IGJ5dGVzICgxMDI0IE1pQiksIG9yIGRlY2ltYWwgYnl0ZXMgKDEwMDAgTUIpXG4gICAgICAgIGZvciAoaSA9IDA7IGkgPCBieXRlRm9ybWF0T3JkZXIubGVuZ3RoOyArK2kpIHtcbiAgICAgICAgICAgIGJ5dGVGb3JtYXQgPSBieXRlRm9ybWF0T3JkZXJbaV07XG5cbiAgICAgICAgICAgIGlmIChmb3JtYXQuaW5kZXhPZihieXRlRm9ybWF0Lm1hcmtlcikgPiAtMSkge1xuICAgICAgICAgICAgICAgIC8vIGNoZWNrIGZvciBzcGFjZSBiZWZvcmVcbiAgICAgICAgICAgICAgICBpZiAoZm9ybWF0LmluZGV4T2YoJyAnICsgYnl0ZUZvcm1hdC5tYXJrZXIpID4tMSkge1xuICAgICAgICAgICAgICAgICAgICBieXRlcyA9ICcgJztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyByZW1vdmUgdGhlIG1hcmtlciAod2l0aCB0aGUgc3BhY2UgaWYgaXQgaGFkIG9uZSlcbiAgICAgICAgICAgICAgICBmb3JtYXQgPSBmb3JtYXQucmVwbGFjZShieXRlcyArIGJ5dGVGb3JtYXQubWFya2VyLCAnJyk7XG5cbiAgICAgICAgICAgICAgICB1bml0cyA9IGZvcm1hdEJ5dGVVbml0cyh2YWx1ZSwgYnl0ZUZvcm1hdC5zdWZmaXhlcywgYnl0ZUZvcm1hdC5zY2FsZSk7XG5cbiAgICAgICAgICAgICAgICB2YWx1ZSA9IHVuaXRzLnZhbHVlO1xuICAgICAgICAgICAgICAgIGJ5dGVzID0gYnl0ZXMgKyB1bml0cy5zdWZmaXg7XG5cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHNlZSBpZiBvcmRpbmFsIGlzIHdhbnRlZFxuICAgICAgICBpZiAoZm9ybWF0LmluZGV4T2YoJ28nKSA+IC0xKSB7XG4gICAgICAgICAgICAvLyBjaGVjayBmb3Igc3BhY2UgYmVmb3JlXG4gICAgICAgICAgICBpZiAoZm9ybWF0LmluZGV4T2YoJyBvJykgPiAtMSkge1xuICAgICAgICAgICAgICAgIG9yZCA9ICcgJztcbiAgICAgICAgICAgICAgICBmb3JtYXQgPSBmb3JtYXQucmVwbGFjZSgnIG8nLCAnJyk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGZvcm1hdCA9IGZvcm1hdC5yZXBsYWNlKCdvJywgJycpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoY3VsdHVyZXNbY3VycmVudEN1bHR1cmVdLm9yZGluYWwpIHtcbiAgICAgICAgICAgICAgICBvcmQgPSBvcmQgKyBjdWx0dXJlc1tjdXJyZW50Q3VsdHVyZV0ub3JkaW5hbCh2YWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZm9ybWF0LmluZGV4T2YoJ1suXScpID4gLTEpIHtcbiAgICAgICAgICAgIG9wdERlYyA9IHRydWU7XG4gICAgICAgICAgICBmb3JtYXQgPSBmb3JtYXQucmVwbGFjZSgnWy5dJywgJy4nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHByZWNpc2lvbiA9IGZvcm1hdC5zcGxpdCgnLicpWzFdO1xuICAgICAgICB0aG91c2FuZHMgPSBmb3JtYXQuaW5kZXhPZignLCcpO1xuXG4gICAgICAgIGlmIChwcmVjaXNpb24pIHtcbiAgICAgICAgICAgIHZhciBkU3BsaXQgPSBbXTtcblxuICAgICAgICAgICAgaWYgKHByZWNpc2lvbi5pbmRleE9mKCcqJykgIT09IC0xKSB7XG4gICAgICAgICAgICAgICAgZCA9IHZhbHVlLnRvU3RyaW5nKCk7XG4gICAgICAgICAgICAgICAgZFNwbGl0ID0gZC5zcGxpdCgnLicpO1xuICAgICAgICAgICAgICAgIGlmIChkU3BsaXQubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgICAgICAgICBkID0gdG9GaXhlZCh2YWx1ZSwgZFNwbGl0WzFdLmxlbmd0aCwgcm91bmRpbmdGdW5jdGlvbik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAocHJlY2lzaW9uLmluZGV4T2YoJ1snKSA+IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIHByZWNpc2lvbiA9IHByZWNpc2lvbi5yZXBsYWNlKCddJywgJycpO1xuICAgICAgICAgICAgICAgICAgICBwcmVjaXNpb24gPSBwcmVjaXNpb24uc3BsaXQoJ1snKTtcbiAgICAgICAgICAgICAgICAgICAgZCA9IHRvRml4ZWQodmFsdWUsIChwcmVjaXNpb25bMF0ubGVuZ3RoICsgcHJlY2lzaW9uWzFdLmxlbmd0aCksIHJvdW5kaW5nRnVuY3Rpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICBwcmVjaXNpb25bMV0ubGVuZ3RoKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBkID0gdG9GaXhlZCh2YWx1ZSwgcHJlY2lzaW9uLmxlbmd0aCwgcm91bmRpbmdGdW5jdGlvbik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBkU3BsaXQgPSBkLnNwbGl0KCcuJyk7XG4gICAgICAgICAgICB3ID0gZFNwbGl0WzBdO1xuXG4gICAgICAgICAgICBpZiAoZFNwbGl0Lmxlbmd0aCA+IDEgJiYgZFNwbGl0WzFdLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHZhciBwID0gc2VwID8gYWJiciArIHNlcCA6IGN1bHR1cmVzW2N1cnJlbnRDdWx0dXJlXS5kZWxpbWl0ZXJzLmRlY2ltYWw7XG4gICAgICAgICAgICAgICAgZCA9IHAgKyBkU3BsaXRbMV07XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGQgPSAnJztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdERlYyAmJiBOdW1iZXIoZC5zbGljZSgxKSkgPT09IDApIHtcbiAgICAgICAgICAgICAgICBkID0gJyc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB3ID0gdG9GaXhlZCh2YWx1ZSwgMCwgcm91bmRpbmdGdW5jdGlvbik7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBmb3JtYXQgbnVtYmVyXG4gICAgICAgIGlmICh3LmluZGV4T2YoJy0nKSA+IC0xKSB7XG4gICAgICAgICAgICB3ID0gdy5zbGljZSgxKTtcbiAgICAgICAgICAgIG5lZyA9IHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAody5sZW5ndGggPCBtaW5sZW4pIHtcbiAgICAgICAgICAgIHcgPSB6ZXJvZXMobWlubGVuIC0gdy5sZW5ndGgpICsgdztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aG91c2FuZHMgPiAtMSkge1xuICAgICAgICAgICAgdyA9IHcudG9TdHJpbmcoKS5yZXBsYWNlKC8oXFxkKSg/PShcXGR7M30pKyg/IVxcZCkpL2csICckMScgK1xuICAgICAgICAgICAgICAgIGN1bHR1cmVzW2N1cnJlbnRDdWx0dXJlXS5kZWxpbWl0ZXJzLnRob3VzYW5kcyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZm9ybWF0LmluZGV4T2YoJy4nKSA9PT0gMCkge1xuICAgICAgICAgICAgdyA9ICcnO1xuICAgICAgICB9XG5cbiAgICAgICAgaW5kZXhPcGVuUCA9IGZvcm1hdC5pbmRleE9mKCcoJyk7XG4gICAgICAgIGluZGV4TWludXMgPSBmb3JtYXQuaW5kZXhPZignLScpO1xuXG4gICAgICAgIGlmIChpbmRleE9wZW5QIDwgaW5kZXhNaW51cykge1xuICAgICAgICAgICAgcGFyZW4gPSAoKG5lZ1AgJiYgbmVnKSA/ICcoJyA6ICcnKSArICgoKGZvcmNlZE5lZyAmJiBuZWcpIHx8ICghbmVnUCAmJiBuZWcpKSA/ICctJyA6ICcnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBhcmVuID0gKCgoZm9yY2VkTmVnICYmIG5lZykgfHwgKCFuZWdQICYmIG5lZykpID8gJy0nIDogJycpICsgKChuZWdQICYmIG5lZykgPyAnKCcgOiAnJyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcHJlZml4ICtcbiAgICAgICAgICAgIHBhcmVuICsgKCghbmVnICYmIHNpZ25lZCAmJiB2YWx1ZSAhPT0gMCkgPyAnKycgOiAnJykgK1xuICAgICAgICAgICAgdyArIGQgK1xuICAgICAgICAgICAgKChvcmQpID8gb3JkIDogJycpICtcbiAgICAgICAgICAgICgoYWJiciAmJiAhc2VwKSA/IGFiYnIgOiAnJykgK1xuICAgICAgICAgICAgKChieXRlcykgPyBieXRlcyA6ICcnKSArXG4gICAgICAgICAgICAoKG5lZ1AgJiYgbmVnKSA/ICcpJyA6ICcnKSArXG4gICAgICAgICAgICBwb3N0Zml4O1xuICAgIH1cblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVG9wIExldmVsIEZ1bmN0aW9uc1xuICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIG51bWJybyA9IGZ1bmN0aW9uKGlucHV0KSB7XG4gICAgICAgIGlmIChudW1icm8uaXNOdW1icm8oaW5wdXQpKSB7XG4gICAgICAgICAgICBpbnB1dCA9IGlucHV0LnZhbHVlKCk7XG4gICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGlucHV0ID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgaW5wdXQgPT09ICdudW1iZXInKSB7XG4gICAgICAgICAgICBpbnB1dCA9IG51bWJyby5mbi51bmZvcm1hdChpbnB1dCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpbnB1dCA9IE5hTjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBuZXcgTnVtYnJvKE51bWJlcihpbnB1dCkpO1xuICAgIH07XG5cbiAgICAvLyB2ZXJzaW9uIG51bWJlclxuICAgIG51bWJyby52ZXJzaW9uID0gVkVSU0lPTjtcblxuICAgIC8vIGNvbXBhcmUgbnVtYnJvIG9iamVjdFxuICAgIG51bWJyby5pc051bWJybyA9IGZ1bmN0aW9uKG9iaikge1xuICAgICAgICByZXR1cm4gb2JqIGluc3RhbmNlb2YgTnVtYnJvO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIGFsbG93IHRoZSB1c2VyIHRvIHNldCBhIG5ldyBsYW5ndWFnZSB3aXRoIGEgZmFsbGJhY2sgaWZcbiAgICAgKiB0aGUgbGFuZ3VhZ2UgZG9lcyBub3QgZXhpc3QuIElmIG5vIGZhbGxiYWNrIGxhbmd1YWdlIGlzIHByb3ZpZGVkLFxuICAgICAqIGl0IGZhbGxiYWNrcyB0byBlbmdsaXNoLlxuICAgICAqXG4gICAgICogQGRlcHJlY2F0ZWQgU2luY2UgaW4gdmVyc2lvbiAxLjYuMC4gSXQgd2lsbCBiZSBkZWxldGVkIGluIHZlcnNpb24gMi4wXG4gICAgICogYHNldEN1bHR1cmVgIHNob3VsZCBiZSB1c2VkIGluc3RlYWQuXG4gICAgICovXG4gICAgbnVtYnJvLnNldExhbmd1YWdlID0gZnVuY3Rpb24obmV3TGFuZ3VhZ2UsIGZhbGxiYWNrTGFuZ3VhZ2UpIHtcbiAgICAgICAgY29uc29sZS53YXJuKCdgc2V0TGFuZ3VhZ2VgIGlzIGRlcHJlY2F0ZWQgc2luY2UgdmVyc2lvbiAxLjYuMC4gVXNlIGBzZXRDdWx0dXJlYCBpbnN0ZWFkJyk7XG4gICAgICAgIHZhciBrZXkgPSBuZXdMYW5ndWFnZSxcbiAgICAgICAgICAgIHByZWZpeCA9IG5ld0xhbmd1YWdlLnNwbGl0KCctJylbMF0sXG4gICAgICAgICAgICBtYXRjaGluZ0xhbmd1YWdlID0gbnVsbDtcbiAgICAgICAgaWYgKCFsYW5ndWFnZXNba2V5XSkge1xuICAgICAgICAgICAgT2JqZWN0LmtleXMobGFuZ3VhZ2VzKS5mb3JFYWNoKGZ1bmN0aW9uKGxhbmd1YWdlKSB7XG4gICAgICAgICAgICAgICAgaWYgKCFtYXRjaGluZ0xhbmd1YWdlICYmIGxhbmd1YWdlLnNwbGl0KCctJylbMF0gPT09IHByZWZpeCkge1xuICAgICAgICAgICAgICAgICAgICBtYXRjaGluZ0xhbmd1YWdlID0gbGFuZ3VhZ2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBrZXkgPSBtYXRjaGluZ0xhbmd1YWdlIHx8IGZhbGxiYWNrTGFuZ3VhZ2UgfHwgJ2VuLVVTJztcbiAgICAgICAgfVxuICAgICAgICBjaG9vc2VDdWx0dXJlKGtleSk7XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIFRoaXMgZnVuY3Rpb24gYWxsb3cgdGhlIHVzZXIgdG8gc2V0IGEgbmV3IGN1bHR1cmUgd2l0aCBhIGZhbGxiYWNrIGlmXG4gICAgICogdGhlIGN1bHR1cmUgZG9lcyBub3QgZXhpc3QuIElmIG5vIGZhbGxiYWNrIGN1bHR1cmUgaXMgcHJvdmlkZWQsXG4gICAgICogaXQgZmFsbHMgYmFjayB0byBcImVuLVVTXCIuXG4gICAgICovXG4gICAgbnVtYnJvLnNldEN1bHR1cmUgPSBmdW5jdGlvbihuZXdDdWx0dXJlLCBmYWxsYmFja0N1bHR1cmUpIHtcbiAgICAgICAgdmFyIGtleSA9IG5ld0N1bHR1cmUsXG4gICAgICAgICAgICBzdWZmaXggPSBuZXdDdWx0dXJlLnNwbGl0KCctJylbMV0sXG4gICAgICAgICAgICBtYXRjaGluZ0N1bHR1cmUgPSBudWxsO1xuICAgICAgICBpZiAoIWN1bHR1cmVzW2tleV0pIHtcbiAgICAgICAgICAgIGlmIChzdWZmaXgpIHtcbiAgICAgICAgICAgICAgICBPYmplY3Qua2V5cyhjdWx0dXJlcykuZm9yRWFjaChmdW5jdGlvbihsYW5ndWFnZSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIW1hdGNoaW5nQ3VsdHVyZSAmJiBsYW5ndWFnZS5zcGxpdCgnLScpWzFdID09PSBzdWZmaXgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hdGNoaW5nQ3VsdHVyZSA9IGxhbmd1YWdlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGtleSA9IG1hdGNoaW5nQ3VsdHVyZSB8fCBmYWxsYmFja0N1bHR1cmUgfHwgJ2VuLVVTJztcbiAgICAgICAgfVxuICAgICAgICBjaG9vc2VDdWx0dXJlKGtleSk7XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIFRoaXMgZnVuY3Rpb24gd2lsbCBsb2FkIGxhbmd1YWdlcyBhbmQgdGhlbiBzZXQgdGhlIGdsb2JhbCBsYW5ndWFnZS4gIElmXG4gICAgICogbm8gYXJndW1lbnRzIGFyZSBwYXNzZWQgaW4sIGl0IHdpbGwgc2ltcGx5IHJldHVybiB0aGUgY3VycmVudCBnbG9iYWxcbiAgICAgKiBsYW5ndWFnZSBrZXkuXG4gICAgICpcbiAgICAgKiBAZGVwcmVjYXRlZCBTaW5jZSBpbiB2ZXJzaW9uIDEuNi4wLiBJdCB3aWxsIGJlIGRlbGV0ZWQgaW4gdmVyc2lvbiAyLjBcbiAgICAgKiBgY3VsdHVyZWAgc2hvdWxkIGJlIHVzZWQgaW5zdGVhZC5cbiAgICAgKi9cbiAgICBudW1icm8ubGFuZ3VhZ2UgPSBmdW5jdGlvbihrZXksIHZhbHVlcykge1xuICAgICAgICBjb25zb2xlLndhcm4oJ2BsYW5ndWFnZWAgaXMgZGVwcmVjYXRlZCBzaW5jZSB2ZXJzaW9uIDEuNi4wLiBVc2UgYGN1bHR1cmVgIGluc3RlYWQnKTtcblxuICAgICAgICBpZiAoIWtleSkge1xuICAgICAgICAgICAgcmV0dXJuIGN1cnJlbnRDdWx0dXJlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGtleSAmJiAhdmFsdWVzKSB7XG4gICAgICAgICAgICBpZiAoIWxhbmd1YWdlc1trZXldKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmtub3duIGxhbmd1YWdlIDogJyArIGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjaG9vc2VDdWx0dXJlKGtleSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodmFsdWVzIHx8ICFsYW5ndWFnZXNba2V5XSkge1xuICAgICAgICAgICAgc2V0Q3VsdHVyZShrZXksIHZhbHVlcyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbnVtYnJvO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIHdpbGwgbG9hZCBjdWx0dXJlcyBhbmQgdGhlbiBzZXQgdGhlIGdsb2JhbCBjdWx0dXJlLiAgSWZcbiAgICAgKiBubyBhcmd1bWVudHMgYXJlIHBhc3NlZCBpbiwgaXQgd2lsbCBzaW1wbHkgcmV0dXJuIHRoZSBjdXJyZW50IGdsb2JhbFxuICAgICAqIGN1bHR1cmUgY29kZS5cbiAgICAgKi9cbiAgICBudW1icm8uY3VsdHVyZSA9IGZ1bmN0aW9uKGNvZGUsIHZhbHVlcykge1xuICAgICAgICBpZiAoIWNvZGUpIHtcbiAgICAgICAgICAgIHJldHVybiBjdXJyZW50Q3VsdHVyZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjb2RlICYmICF2YWx1ZXMpIHtcbiAgICAgICAgICAgIGlmICghY3VsdHVyZXNbY29kZV0pIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Vua25vd24gY3VsdHVyZSA6ICcgKyBjb2RlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNob29zZUN1bHR1cmUoY29kZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodmFsdWVzIHx8ICFjdWx0dXJlc1tjb2RlXSkge1xuICAgICAgICAgICAgc2V0Q3VsdHVyZShjb2RlLCB2YWx1ZXMpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG51bWJybztcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogVGhpcyBmdW5jdGlvbiBwcm92aWRlcyBhY2Nlc3MgdG8gdGhlIGxvYWRlZCBsYW5ndWFnZSBkYXRhLiAgSWZcbiAgICAgKiBubyBhcmd1bWVudHMgYXJlIHBhc3NlZCBpbiwgaXQgd2lsbCBzaW1wbHkgcmV0dXJuIHRoZSBjdXJyZW50XG4gICAgICogZ2xvYmFsIGxhbmd1YWdlIG9iamVjdC5cbiAgICAgKlxuICAgICAqIEBkZXByZWNhdGVkIFNpbmNlIGluIHZlcnNpb24gMS42LjAuIEl0IHdpbGwgYmUgZGVsZXRlZCBpbiB2ZXJzaW9uIDIuMFxuICAgICAqIGBjdWx0dXJlYCBzaG91bGQgYmUgdXNlZCBpbnN0ZWFkLlxuICAgICAqL1xuICAgIG51bWJyby5sYW5ndWFnZURhdGEgPSBmdW5jdGlvbihrZXkpIHtcbiAgICAgICAgY29uc29sZS53YXJuKCdgbGFuZ3VhZ2VEYXRhYCBpcyBkZXByZWNhdGVkIHNpbmNlIHZlcnNpb24gMS42LjAuIFVzZSBgY3VsdHVyZURhdGFgIGluc3RlYWQnKTtcblxuICAgICAgICBpZiAoIWtleSkge1xuICAgICAgICAgICAgcmV0dXJuIGxhbmd1YWdlc1tjdXJyZW50Q3VsdHVyZV07XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIWxhbmd1YWdlc1trZXldKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Vua25vd24gbGFuZ3VhZ2UgOiAnICsga2V5KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBsYW5ndWFnZXNba2V5XTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogVGhpcyBmdW5jdGlvbiBwcm92aWRlcyBhY2Nlc3MgdG8gdGhlIGxvYWRlZCBjdWx0dXJlIGRhdGEuICBJZlxuICAgICAqIG5vIGFyZ3VtZW50cyBhcmUgcGFzc2VkIGluLCBpdCB3aWxsIHNpbXBseSByZXR1cm4gdGhlIGN1cnJlbnRcbiAgICAgKiBnbG9iYWwgY3VsdHVyZSBvYmplY3QuXG4gICAgICovXG4gICAgbnVtYnJvLmN1bHR1cmVEYXRhID0gZnVuY3Rpb24oY29kZSkge1xuICAgICAgICBpZiAoIWNvZGUpIHtcbiAgICAgICAgICAgIHJldHVybiBjdWx0dXJlc1tjdXJyZW50Q3VsdHVyZV07XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIWN1bHR1cmVzW2NvZGVdKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Vua25vd24gY3VsdHVyZSA6ICcgKyBjb2RlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjdWx0dXJlc1tjb2RlXTtcbiAgICB9O1xuXG4gICAgbnVtYnJvLmN1bHR1cmUoJ2VuLVVTJywgZW5VUyk7XG5cbiAgICAvKipcbiAgICAgKiBAZGVwcmVjYXRlZCBTaW5jZSBpbiB2ZXJzaW9uIDEuNi4wLiBJdCB3aWxsIGJlIGRlbGV0ZWQgaW4gdmVyc2lvbiAyLjBcbiAgICAgKiBgY3VsdHVyZXNgIHNob3VsZCBiZSB1c2VkIGluc3RlYWQuXG4gICAgICovXG4gICAgbnVtYnJvLmxhbmd1YWdlcyA9IGZ1bmN0aW9uKCkge1xuICAgICAgICBjb25zb2xlLndhcm4oJ2BsYW5ndWFnZXNgIGlzIGRlcHJlY2F0ZWQgc2luY2UgdmVyc2lvbiAxLjYuMC4gVXNlIGBjdWx0dXJlc2AgaW5zdGVhZCcpO1xuXG4gICAgICAgIHJldHVybiBsYW5ndWFnZXM7XG4gICAgfTtcblxuICAgIG51bWJyby5jdWx0dXJlcyA9IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gY3VsdHVyZXM7XG4gICAgfTtcblxuICAgIG51bWJyby56ZXJvRm9ybWF0ID0gZnVuY3Rpb24oZm9ybWF0KSB7XG4gICAgICAgIHplcm9Gb3JtYXQgPSB0eXBlb2YoZm9ybWF0KSA9PT0gJ3N0cmluZycgPyBmb3JtYXQgOiBudWxsO1xuICAgIH07XG5cbiAgICBudW1icm8uZGVmYXVsdEZvcm1hdCA9IGZ1bmN0aW9uKGZvcm1hdCkge1xuICAgICAgICBkZWZhdWx0Rm9ybWF0ID0gdHlwZW9mKGZvcm1hdCkgPT09ICdzdHJpbmcnID8gZm9ybWF0IDogJzAuMCc7XG4gICAgfTtcblxuICAgIG51bWJyby5kZWZhdWx0Q3VycmVuY3lGb3JtYXQgPSBmdW5jdGlvbiAoZm9ybWF0KSB7XG4gICAgICAgIGRlZmF1bHRDdXJyZW5jeUZvcm1hdCA9IHR5cGVvZihmb3JtYXQpID09PSAnc3RyaW5nJyA/IGZvcm1hdCA6ICcwJCc7XG4gICAgfTtcblxuICAgIG51bWJyby52YWxpZGF0ZSA9IGZ1bmN0aW9uKHZhbCwgY3VsdHVyZSkge1xuXG4gICAgICAgIHZhciBfZGVjaW1hbFNlcCxcbiAgICAgICAgICAgIF90aG91c2FuZFNlcCxcbiAgICAgICAgICAgIF9jdXJyU3ltYm9sLFxuICAgICAgICAgICAgX3ZhbEFycmF5LFxuICAgICAgICAgICAgX2FiYnJPYmosXG4gICAgICAgICAgICBfdGhvdXNhbmRSZWdFeCxcbiAgICAgICAgICAgIGN1bHR1cmVEYXRhLFxuICAgICAgICAgICAgdGVtcDtcblxuICAgICAgICAvL2NvZXJjZSB2YWwgdG8gc3RyaW5nXG4gICAgICAgIGlmICh0eXBlb2YgdmFsICE9PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgdmFsICs9ICcnO1xuICAgICAgICAgICAgaWYgKGNvbnNvbGUud2Fybikge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybignTnVtYnJvLmpzOiBWYWx1ZSBpcyBub3Qgc3RyaW5nLiBJdCBoYXMgYmVlbiBjby1lcmNlZCB0bzogJywgdmFsKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vdHJpbSB3aGl0ZXNwYWNlcyBmcm9tIGVpdGhlciBzaWRlc1xuICAgICAgICB2YWwgPSB2YWwudHJpbSgpO1xuXG4gICAgICAgIC8vcmVwbGFjZSB0aGUgaW5pdGlhbCAnKycgb3IgJy0nIHNpZ24gaWYgcHJlc2VudFxuICAgICAgICB2YWwgPSB2YWwucmVwbGFjZSgvXlsrLV0/LywgJycpO1xuXG4gICAgICAgIC8vaWYgdmFsIGlzIGp1c3QgZGlnaXRzIHJldHVybiB0cnVlXG4gICAgICAgIGlmICggISEgdmFsLm1hdGNoKC9eXFxkKyQvKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICAvL2lmIHZhbCBpcyBlbXB0eSByZXR1cm4gZmFsc2VcbiAgICAgICAgaWYgKHZhbCA9PT0gJycpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vZ2V0IHRoZSBkZWNpbWFsIGFuZCB0aG91c2FuZHMgc2VwYXJhdG9yIGZyb20gbnVtYnJvLmN1bHR1cmVEYXRhXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICAvL2NoZWNrIGlmIHRoZSBjdWx0dXJlIGlzIHVuZGVyc3Rvb2QgYnkgbnVtYnJvLiBpZiBub3QsIGRlZmF1bHQgaXQgdG8gY3VycmVudCBjdWx0dXJlXG4gICAgICAgICAgICBjdWx0dXJlRGF0YSA9IG51bWJyby5jdWx0dXJlRGF0YShjdWx0dXJlKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgY3VsdHVyZURhdGEgPSBudW1icm8uY3VsdHVyZURhdGEobnVtYnJvLmN1bHR1cmUoKSk7XG4gICAgICAgIH1cblxuICAgICAgICAvL3NldHVwIHRoZSBkZWxpbWl0ZXJzIGFuZCBjdXJyZW5jeSBzeW1ib2wgYmFzZWQgb24gY3VsdHVyZVxuICAgICAgICBfY3VyclN5bWJvbCA9IGN1bHR1cmVEYXRhLmN1cnJlbmN5LnN5bWJvbDtcbiAgICAgICAgX2FiYnJPYmogPSBjdWx0dXJlRGF0YS5hYmJyZXZpYXRpb25zO1xuICAgICAgICBfZGVjaW1hbFNlcCA9IGN1bHR1cmVEYXRhLmRlbGltaXRlcnMuZGVjaW1hbDtcbiAgICAgICAgaWYgKGN1bHR1cmVEYXRhLmRlbGltaXRlcnMudGhvdXNhbmRzID09PSAnLicpIHtcbiAgICAgICAgICAgIF90aG91c2FuZFNlcCA9ICdcXFxcLic7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBfdGhvdXNhbmRTZXAgPSBjdWx0dXJlRGF0YS5kZWxpbWl0ZXJzLnRob3VzYW5kcztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHZhbGlkYXRpbmcgY3VycmVuY3kgc3ltYm9sXG4gICAgICAgIHRlbXAgPSB2YWwubWF0Y2goL15bXlxcZFxcLlxcLF0rLyk7XG4gICAgICAgIGlmICh0ZW1wICE9PSBudWxsKSB7XG4gICAgICAgICAgICB2YWwgPSB2YWwuc3Vic3RyKDEpO1xuICAgICAgICAgICAgaWYgKHRlbXBbMF0gIT09IF9jdXJyU3ltYm9sKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy92YWxpZGF0aW5nIGFiYnJldmlhdGlvbiBzeW1ib2xcbiAgICAgICAgdGVtcCA9IHZhbC5tYXRjaCgvW15cXGRdKyQvKTtcbiAgICAgICAgaWYgKHRlbXAgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHZhbCA9IHZhbC5zbGljZSgwLCAtMSk7XG4gICAgICAgICAgICBpZiAodGVtcFswXSAhPT0gX2FiYnJPYmoudGhvdXNhbmQgJiYgdGVtcFswXSAhPT0gX2FiYnJPYmoubWlsbGlvbiAmJlxuICAgICAgICAgICAgICAgICAgICB0ZW1wWzBdICE9PSBfYWJick9iai5iaWxsaW9uICYmIHRlbXBbMF0gIT09IF9hYmJyT2JqLnRyaWxsaW9uKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgX3Rob3VzYW5kUmVnRXggPSBuZXcgUmVnRXhwKF90aG91c2FuZFNlcCArICd7Mn0nKTtcblxuICAgICAgICBpZiAoIXZhbC5tYXRjaCgvW15cXGQuLF0vZykpIHtcbiAgICAgICAgICAgIF92YWxBcnJheSA9IHZhbC5zcGxpdChfZGVjaW1hbFNlcCk7XG4gICAgICAgICAgICBpZiAoX3ZhbEFycmF5Lmxlbmd0aCA+IDIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmIChfdmFsQXJyYXkubGVuZ3RoIDwgMikge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKCAhISBfdmFsQXJyYXlbMF0ubWF0Y2goL15cXGQrLipcXGQkLykgJiYgIV92YWxBcnJheVswXS5tYXRjaChfdGhvdXNhbmRSZWdFeCkpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChfdmFsQXJyYXlbMF0gPT09ICcnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBmb3IgdmFsdWVzIHdpdGhvdXQgbGVhZGluZyB6ZXJvIGVnLiAuOTg0XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKCFfdmFsQXJyYXlbMF0ubWF0Y2goX3Rob3VzYW5kUmVnRXgpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgISFfdmFsQXJyYXlbMV0ubWF0Y2goL15cXGQrJC8pKTtcblxuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKF92YWxBcnJheVswXS5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoICEhIF92YWxBcnJheVswXS5tYXRjaCgvXlxcZCskLykgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhX3ZhbEFycmF5WzBdLm1hdGNoKF90aG91c2FuZFJlZ0V4KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICEhIF92YWxBcnJheVsxXS5tYXRjaCgvXlxcZCskLykpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICggISEgX3ZhbEFycmF5WzBdLm1hdGNoKC9eXFxkKy4qXFxkJC8pICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIV92YWxBcnJheVswXS5tYXRjaChfdGhvdXNhbmRSZWdFeCkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhISBfdmFsQXJyYXlbMV0ubWF0Y2goL15cXGQrJC8pKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogKiBAZGVwcmVjYXRlZCBTaW5jZSBpbiB2ZXJzaW9uIDEuNi4wLiBJdCB3aWxsIGJlIGRlbGV0ZWQgaW4gdmVyc2lvbiAyLjBcbiAgICAgKiBgbG9hZEN1bHR1cmVzSW5Ob2RlYCBzaG91bGQgYmUgdXNlZCBpbnN0ZWFkLlxuICAgICAqL1xuICAgIG51bWJyby5sb2FkTGFuZ3VhZ2VzSW5Ob2RlID0gZnVuY3Rpb24oKSB7XG4gICAgICAgIGNvbnNvbGUud2FybignYGxvYWRMYW5ndWFnZXNJbk5vZGVgIGlzIGRlcHJlY2F0ZWQgc2luY2UgdmVyc2lvbiAxLjYuMC4gVXNlIGBsb2FkQ3VsdHVyZXNJbk5vZGVgIGluc3RlYWQnKTtcblxuICAgICAgICBudW1icm8ubG9hZEN1bHR1cmVzSW5Ob2RlKCk7XG4gICAgfTtcblxuICAgIG51bWJyby5sb2FkQ3VsdHVyZXNJbk5vZGUgPSBmdW5jdGlvbigpIHtcbiAgICAgICAgLy8gVE9ETzogUmVuYW1lIHRoZSBmb2xkZXIgaW4gMi4wLjBcbiAgICAgICAgdmFyIGN1bHR1cmVzID0gcmVxdWlyZSgnLi9sYW5ndWFnZXMnKTtcblxuICAgICAgICBmb3IodmFyIGxhbmdMb2NhbGVDb2RlIGluIGN1bHR1cmVzKSB7XG4gICAgICAgICAgICBpZihsYW5nTG9jYWxlQ29kZSkge1xuICAgICAgICAgICAgICAgIG51bWJyby5jdWx0dXJlKGxhbmdMb2NhbGVDb2RlLCBjdWx0dXJlc1tsYW5nTG9jYWxlQ29kZV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgSGVscGVyc1xuICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIGZ1bmN0aW9uIHNldEN1bHR1cmUoY29kZSwgdmFsdWVzKSB7XG4gICAgICAgIGN1bHR1cmVzW2NvZGVdID0gdmFsdWVzO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGNob29zZUN1bHR1cmUoY29kZSkge1xuICAgICAgICBjdXJyZW50Q3VsdHVyZSA9IGNvZGU7XG4gICAgICAgIHZhciBkZWZhdWx0cyA9IGN1bHR1cmVzW2NvZGVdLmRlZmF1bHRzO1xuICAgICAgICBpZiAoZGVmYXVsdHMgJiYgZGVmYXVsdHMuZm9ybWF0KSB7XG4gICAgICAgICAgICBudW1icm8uZGVmYXVsdEZvcm1hdChkZWZhdWx0cy5mb3JtYXQpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChkZWZhdWx0cyAmJiBkZWZhdWx0cy5jdXJyZW5jeUZvcm1hdCkge1xuICAgICAgICAgICAgbnVtYnJvLmRlZmF1bHRDdXJyZW5jeUZvcm1hdChkZWZhdWx0cy5jdXJyZW5jeUZvcm1hdCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBpbk5vZGVqc1J1bnRpbWUoKSB7XG4gICAgICAgIHJldHVybiAodHlwZW9mIHByb2Nlc3MgIT09ICd1bmRlZmluZWQnKSAmJlxuICAgICAgICAgICAgKHByb2Nlc3MuYnJvd3NlciA9PT0gdW5kZWZpbmVkKSAmJlxuICAgICAgICAgICAgcHJvY2Vzcy50aXRsZSAmJlxuICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgIHByb2Nlc3MudGl0bGUuaW5kZXhPZignbm9kZScpICE9PSAtMSB8fFxuICAgICAgICAgICAgICAgIHByb2Nlc3MudGl0bGUuaW5kZXhPZignbWV0ZW9yLXRvb2wnKSA+IDAgfHxcbiAgICAgICAgICAgICAgICBwcm9jZXNzLnRpdGxlID09PSAnZ3J1bnQnIHx8XG4gICAgICAgICAgICAgICAgcHJvY2Vzcy50aXRsZSA9PT0gJ2d1bHAnXG4gICAgICAgICAgICApICYmXG4gICAgICAgICAgICAodHlwZW9mIHJlcXVpcmUgIT09ICd1bmRlZmluZWQnKTtcbiAgICB9XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEZsb2F0aW5nLXBvaW50IGhlbHBlcnNcbiAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICAvLyBUaGUgZmxvYXRpbmctcG9pbnQgaGVscGVyIGZ1bmN0aW9ucyBhbmQgaW1wbGVtZW50YXRpb25cbiAgICAvLyBib3Jyb3dzIGhlYXZpbHkgZnJvbSBzaW5mdWwuanM6IGh0dHA6Ly9ndWlwbi5naXRodWIuaW8vc2luZnVsLmpzL1xuXG4gICAgLyoqXG4gICAgICogQXJyYXkucHJvdG90eXBlLnJlZHVjZSBmb3IgYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IGl0XG4gICAgICogaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSmF2YVNjcmlwdC9SZWZlcmVuY2UvR2xvYmFsX09iamVjdHMvQXJyYXkvUmVkdWNlI0NvbXBhdGliaWxpdHlcbiAgICAgKi9cbiAgICBpZiAoJ2Z1bmN0aW9uJyAhPT0gdHlwZW9mIEFycmF5LnByb3RvdHlwZS5yZWR1Y2UpIHtcbiAgICAgICAgQXJyYXkucHJvdG90eXBlLnJlZHVjZSA9IGZ1bmN0aW9uKGNhbGxiYWNrLCBvcHRJbml0aWFsVmFsdWUpIHtcblxuICAgICAgICAgICAgaWYgKG51bGwgPT09IHRoaXMgfHwgJ3VuZGVmaW5lZCcgPT09IHR5cGVvZiB0aGlzKSB7XG4gICAgICAgICAgICAgICAgLy8gQXQgdGhlIG1vbWVudCBhbGwgbW9kZXJuIGJyb3dzZXJzLCB0aGF0IHN1cHBvcnQgc3RyaWN0IG1vZGUsIGhhdmVcbiAgICAgICAgICAgICAgICAvLyBuYXRpdmUgaW1wbGVtZW50YXRpb24gb2YgQXJyYXkucHJvdG90eXBlLnJlZHVjZS4gRm9yIGluc3RhbmNlLCBJRThcbiAgICAgICAgICAgICAgICAvLyBkb2VzIG5vdCBzdXBwb3J0IHN0cmljdCBtb2RlLCBzbyB0aGlzIGNoZWNrIGlzIGFjdHVhbGx5IHVzZWxlc3MuXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignQXJyYXkucHJvdG90eXBlLnJlZHVjZSBjYWxsZWQgb24gbnVsbCBvciB1bmRlZmluZWQnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCdmdW5jdGlvbicgIT09IHR5cGVvZiBjYWxsYmFjaykge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoY2FsbGJhY2sgKyAnIGlzIG5vdCBhIGZ1bmN0aW9uJyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHZhciBpbmRleCxcbiAgICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgICAgICBsZW5ndGggPSB0aGlzLmxlbmd0aCA+Pj4gMCxcbiAgICAgICAgICAgICAgICBpc1ZhbHVlU2V0ID0gZmFsc2U7XG5cbiAgICAgICAgICAgIGlmICgxIDwgYXJndW1lbnRzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHZhbHVlID0gb3B0SW5pdGlhbFZhbHVlO1xuICAgICAgICAgICAgICAgIGlzVmFsdWVTZXQgPSB0cnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBmb3IgKGluZGV4ID0gMDsgbGVuZ3RoID4gaW5kZXg7ICsraW5kZXgpIHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5oYXNPd25Qcm9wZXJ0eShpbmRleCkpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGlzVmFsdWVTZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlID0gY2FsbGJhY2sodmFsdWUsIHRoaXNbaW5kZXhdLCBpbmRleCwgdGhpcyk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IHRoaXNbaW5kZXhdO1xuICAgICAgICAgICAgICAgICAgICAgICAgaXNWYWx1ZVNldCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICghaXNWYWx1ZVNldCkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ1JlZHVjZSBvZiBlbXB0eSBhcnJheSB3aXRoIG5vIGluaXRpYWwgdmFsdWUnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgICB9O1xuICAgIH1cblxuXG4gICAgLyoqXG4gICAgICogQ29tcHV0ZXMgdGhlIG11bHRpcGxpZXIgbmVjZXNzYXJ5IHRvIG1ha2UgeCA+PSAxLFxuICAgICAqIGVmZmVjdGl2ZWx5IGVsaW1pbmF0aW5nIG1pc2NhbGN1bGF0aW9ucyBjYXVzZWQgYnlcbiAgICAgKiBmaW5pdGUgcHJlY2lzaW9uLlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIG11bHRpcGxpZXIoeCkge1xuICAgICAgICB2YXIgcGFydHMgPSB4LnRvU3RyaW5nKCkuc3BsaXQoJy4nKTtcbiAgICAgICAgaWYgKHBhcnRzLmxlbmd0aCA8IDIpIHtcbiAgICAgICAgICAgIHJldHVybiAxO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBNYXRoLnBvdygxMCwgcGFydHNbMV0ubGVuZ3RoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHaXZlbiBhIHZhcmlhYmxlIG51bWJlciBvZiBhcmd1bWVudHMsIHJldHVybnMgdGhlIG1heGltdW1cbiAgICAgKiBtdWx0aXBsaWVyIHRoYXQgbXVzdCBiZSB1c2VkIHRvIG5vcm1hbGl6ZSBhbiBvcGVyYXRpb24gaW52b2x2aW5nXG4gICAgICogYWxsIG9mIHRoZW0uXG4gICAgICovXG4gICAgZnVuY3Rpb24gY29ycmVjdGlvbkZhY3RvcigpIHtcbiAgICAgICAgdmFyIGFyZ3MgPSBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpO1xuICAgICAgICByZXR1cm4gYXJncy5yZWR1Y2UoZnVuY3Rpb24ocHJldiwgbmV4dCkge1xuICAgICAgICAgICAgdmFyIG1wID0gbXVsdGlwbGllcihwcmV2KSxcbiAgICAgICAgICAgICAgICBtbiA9IG11bHRpcGxpZXIobmV4dCk7XG4gICAgICAgICAgICByZXR1cm4gbXAgPiBtbiA/IG1wIDogbW47XG4gICAgICAgIH0sIC1JbmZpbml0eSk7XG4gICAgfVxuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBOdW1icm8gUHJvdG90eXBlXG4gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5cbiAgICBudW1icm8uZm4gPSBOdW1icm8ucHJvdG90eXBlID0ge1xuXG4gICAgICAgIGNsb25lOiBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIHJldHVybiBudW1icm8odGhpcyk7XG4gICAgICAgIH0sXG5cbiAgICAgICAgZm9ybWF0OiBmdW5jdGlvbihpbnB1dFN0cmluZywgcm91bmRpbmdGdW5jdGlvbikge1xuICAgICAgICAgICAgcmV0dXJuIGZvcm1hdE51bWJybyh0aGlzLFxuICAgICAgICAgICAgICAgIGlucHV0U3RyaW5nID8gaW5wdXRTdHJpbmcgOiBkZWZhdWx0Rm9ybWF0LFxuICAgICAgICAgICAgICAgIChyb3VuZGluZ0Z1bmN0aW9uICE9PSB1bmRlZmluZWQpID8gcm91bmRpbmdGdW5jdGlvbiA6IE1hdGgucm91bmRcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0sXG5cbiAgICAgICAgZm9ybWF0Q3VycmVuY3k6IGZ1bmN0aW9uKGlucHV0U3RyaW5nLCByb3VuZGluZ0Z1bmN0aW9uKSB7XG4gICAgICAgICAgICByZXR1cm4gZm9ybWF0Q3VycmVuY3kodGhpcyxcbiAgICAgICAgICAgICAgICBjdWx0dXJlc1tjdXJyZW50Q3VsdHVyZV0uY3VycmVuY3kuc3ltYm9sLFxuICAgICAgICAgICAgICAgIGlucHV0U3RyaW5nID8gaW5wdXRTdHJpbmcgOiBkZWZhdWx0Q3VycmVuY3lGb3JtYXQsXG4gICAgICAgICAgICAgICAgKHJvdW5kaW5nRnVuY3Rpb24gIT09IHVuZGVmaW5lZCkgPyByb3VuZGluZ0Z1bmN0aW9uIDogTWF0aC5yb3VuZFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSxcblxuICAgICAgICBmb3JtYXRGb3JlaWduQ3VycmVuY3k6IGZ1bmN0aW9uKGN1cnJlbmN5U3ltYm9sLCBpbnB1dFN0cmluZywgcm91bmRpbmdGdW5jdGlvbikge1xuICAgICAgICAgICAgcmV0dXJuIGZvcm1hdEZvcmVpZ25DdXJyZW5jeSh0aGlzLFxuICAgICAgICAgICAgICAgIGN1cnJlbmN5U3ltYm9sLFxuICAgICAgICAgICAgICAgIGlucHV0U3RyaW5nID8gaW5wdXRTdHJpbmcgOiBkZWZhdWx0Q3VycmVuY3lGb3JtYXQsXG4gICAgICAgICAgICAgICAgKHJvdW5kaW5nRnVuY3Rpb24gIT09IHVuZGVmaW5lZCkgPyByb3VuZGluZ0Z1bmN0aW9uIDogTWF0aC5yb3VuZFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSxcblxuICAgICAgICB1bmZvcm1hdDogZnVuY3Rpb24oaW5wdXRTdHJpbmcpIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgaW5wdXRTdHJpbmcgPT09ICdudW1iZXInKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGlucHV0U3RyaW5nO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgaW5wdXRTdHJpbmcgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICAgICAgdmFyIHJlc3VsdCA9IHVuZm9ybWF0TnVtYnJvKHRoaXMsIGlucHV0U3RyaW5nKTtcblxuICAgICAgICAgICAgICAgIC8vIEFueSB1bnBhcnNlYWJsZSBzdHJpbmcgKHJlcHJlc2VudGVkIGFzIE5hTiBpbiB0aGUgcmVzdWx0KSBpc1xuICAgICAgICAgICAgICAgIC8vIGNvbnZlcnRlZCBpbnRvIHVuZGVmaW5lZC5cbiAgICAgICAgICAgICAgICByZXR1cm4gaXNOYU4ocmVzdWx0KSA/IHVuZGVmaW5lZCA6IHJlc3VsdDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcblxuICAgICAgICBiaW5hcnlCeXRlVW5pdHM6IGZ1bmN0aW9uKCkge1xuICAgICAgICAgICAgcmV0dXJuIGZvcm1hdEJ5dGVVbml0cyh0aGlzLl92YWx1ZSwgYnl0ZXMuYmluYXJ5LnN1ZmZpeGVzLCBieXRlcy5iaW5hcnkuc2NhbGUpLnN1ZmZpeDtcbiAgICAgICAgfSxcblxuICAgICAgICBieXRlVW5pdHM6IGZ1bmN0aW9uKCkge1xuICAgICAgICAgICAgcmV0dXJuIGZvcm1hdEJ5dGVVbml0cyh0aGlzLl92YWx1ZSwgYnl0ZXMuZ2VuZXJhbC5zdWZmaXhlcywgYnl0ZXMuZ2VuZXJhbC5zY2FsZSkuc3VmZml4O1xuICAgICAgICB9LFxuXG4gICAgICAgIGRlY2ltYWxCeXRlVW5pdHM6IGZ1bmN0aW9uKCkge1xuICAgICAgICAgICAgcmV0dXJuIGZvcm1hdEJ5dGVVbml0cyh0aGlzLl92YWx1ZSwgYnl0ZXMuZGVjaW1hbC5zdWZmaXhlcywgYnl0ZXMuZGVjaW1hbC5zY2FsZSkuc3VmZml4O1xuICAgICAgICB9LFxuXG4gICAgICAgIHZhbHVlOiBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgICAgICAgfSxcblxuICAgICAgICB2YWx1ZU9mOiBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgICAgICAgfSxcblxuICAgICAgICBzZXQ6IGZ1bmN0aW9uKHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLl92YWx1ZSA9IE51bWJlcih2YWx1ZSk7XG4gICAgICAgICAgICByZXR1cm4gdGhpcztcbiAgICAgICAgfSxcblxuICAgICAgICBhZGQ6IGZ1bmN0aW9uKHZhbHVlKSB7XG4gICAgICAgICAgICB2YXIgY29yckZhY3RvciA9IGNvcnJlY3Rpb25GYWN0b3IuY2FsbChudWxsLCB0aGlzLl92YWx1ZSwgdmFsdWUpO1xuXG4gICAgICAgICAgICBmdW5jdGlvbiBjYmFjayhhY2N1bSwgY3Vycikge1xuICAgICAgICAgICAgICAgIHJldHVybiBhY2N1bSArIGNvcnJGYWN0b3IgKiBjdXJyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5fdmFsdWUgPSBbdGhpcy5fdmFsdWUsIHZhbHVlXS5yZWR1Y2UoY2JhY2ssIDApIC8gY29yckZhY3RvcjtcbiAgICAgICAgICAgIHJldHVybiB0aGlzO1xuICAgICAgICB9LFxuXG4gICAgICAgIHN1YnRyYWN0OiBmdW5jdGlvbih2YWx1ZSkge1xuICAgICAgICAgICAgdmFyIGNvcnJGYWN0b3IgPSBjb3JyZWN0aW9uRmFjdG9yLmNhbGwobnVsbCwgdGhpcy5fdmFsdWUsIHZhbHVlKTtcblxuICAgICAgICAgICAgZnVuY3Rpb24gY2JhY2soYWNjdW0sIGN1cnIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gYWNjdW0gLSBjb3JyRmFjdG9yICogY3VycjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuX3ZhbHVlID0gW3ZhbHVlXS5yZWR1Y2UoY2JhY2ssIHRoaXMuX3ZhbHVlICogY29yckZhY3RvcikgLyBjb3JyRmFjdG9yO1xuICAgICAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgICAgIH0sXG5cbiAgICAgICAgbXVsdGlwbHk6IGZ1bmN0aW9uKHZhbHVlKSB7XG4gICAgICAgICAgICBmdW5jdGlvbiBjYmFjayhhY2N1bSwgY3Vycikge1xuICAgICAgICAgICAgICAgIHZhciBjb3JyRmFjdG9yID0gY29ycmVjdGlvbkZhY3RvcihhY2N1bSwgY3VyciksXG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IGFjY3VtICogY29yckZhY3RvcjtcbiAgICAgICAgICAgICAgICByZXN1bHQgKj0gY3VyciAqIGNvcnJGYWN0b3I7XG4gICAgICAgICAgICAgICAgcmVzdWx0IC89IGNvcnJGYWN0b3IgKiBjb3JyRmFjdG9yO1xuICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLl92YWx1ZSA9IFt0aGlzLl92YWx1ZSwgdmFsdWVdLnJlZHVjZShjYmFjaywgMSk7XG4gICAgICAgICAgICByZXR1cm4gdGhpcztcbiAgICAgICAgfSxcblxuICAgICAgICBkaXZpZGU6IGZ1bmN0aW9uKHZhbHVlKSB7XG4gICAgICAgICAgICBmdW5jdGlvbiBjYmFjayhhY2N1bSwgY3Vycikge1xuICAgICAgICAgICAgICAgIHZhciBjb3JyRmFjdG9yID0gY29ycmVjdGlvbkZhY3RvcihhY2N1bSwgY3Vycik7XG4gICAgICAgICAgICAgICAgcmV0dXJuIChhY2N1bSAqIGNvcnJGYWN0b3IpIC8gKGN1cnIgKiBjb3JyRmFjdG9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuX3ZhbHVlID0gW3RoaXMuX3ZhbHVlLCB2YWx1ZV0ucmVkdWNlKGNiYWNrKTtcbiAgICAgICAgICAgIHJldHVybiB0aGlzO1xuICAgICAgICB9LFxuXG4gICAgICAgIGRpZmZlcmVuY2U6IGZ1bmN0aW9uKHZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4gTWF0aC5hYnMobnVtYnJvKHRoaXMuX3ZhbHVlKS5zdWJ0cmFjdCh2YWx1ZSkudmFsdWUoKSk7XG4gICAgICAgIH1cblxuICAgIH07XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEV4cG9zaW5nIE51bWJyb1xuICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIGlmIChpbk5vZGVqc1J1bnRpbWUoKSkge1xuICAgICAgICAvL1RvZG86IFJlbmFtZSB0aGUgZm9sZGVyIGluIDIuMC4wXG4gICAgICAgIG51bWJyby5sb2FkQ3VsdHVyZXNJbk5vZGUoKTtcbiAgICB9XG5cbiAgICAvLyBDb21tb25KUyBtb2R1bGUgaXMgZGVmaW5lZFxuICAgIGlmIChoYXNNb2R1bGUpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBudW1icm87XG4gICAgfSBlbHNlIHtcbiAgICAgICAgLypnbG9iYWwgZW5kZXI6ZmFsc2UgKi9cbiAgICAgICAgaWYgKHR5cGVvZiBlbmRlciA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIC8vIGhlcmUsIGB0aGlzYCBtZWFucyBgd2luZG93YCBpbiB0aGUgYnJvd3Nlciwgb3IgYGdsb2JhbGAgb24gdGhlIHNlcnZlclxuICAgICAgICAgICAgLy8gYWRkIGBudW1icm9gIGFzIGEgZ2xvYmFsIG9iamVjdCB2aWEgYSBzdHJpbmcgaWRlbnRpZmllcixcbiAgICAgICAgICAgIC8vIGZvciBDbG9zdXJlIENvbXBpbGVyICdhZHZhbmNlZCcgbW9kZVxuICAgICAgICAgICAgdGhpcy5udW1icm8gPSBudW1icm87XG4gICAgICAgIH1cblxuICAgICAgICAvKmdsb2JhbCBkZWZpbmU6ZmFsc2UgKi9cbiAgICAgICAgaWYgKHR5cGVvZiBkZWZpbmUgPT09ICdmdW5jdGlvbicgJiYgZGVmaW5lLmFtZCkge1xuICAgICAgICAgICAgZGVmaW5lKFtdLCBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbnVtYnJvO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbn0uY2FsbCh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJyA/IHRoaXMgOiB3aW5kb3cpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9udW1icm8uanNcbi8vIG1vZHVsZSBpZCA9IDM4XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///38\n");
+
+/***/ }),
+/* 39 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/index.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports, __webpack_require__) {
+
+eval("/* jshint sub: true */\nexports['bg'] = __webpack_require__(/*! ./bg.js */ 40);\nexports['cs-CZ'] = __webpack_require__(/*! ./cs-CZ.js */ 41);\nexports['da-DK'] = __webpack_require__(/*! ./da-DK.js */ 42);\nexports['de-AT'] = __webpack_require__(/*! ./de-AT.js */ 43);\nexports['de-CH'] = __webpack_require__(/*! ./de-CH.js */ 44);\nexports['de-DE'] = __webpack_require__(/*! ./de-DE.js */ 45);\nexports['de-LI'] = __webpack_require__(/*! ./de-LI.js */ 46);\nexports['el'] = __webpack_require__(/*! ./el.js */ 47);\nexports['en-AU'] = __webpack_require__(/*! ./en-AU.js */ 48);\nexports['en-GB'] = __webpack_require__(/*! ./en-GB.js */ 49);\nexports['en-IE'] = __webpack_require__(/*! ./en-IE.js */ 50);\nexports['en-NZ'] = __webpack_require__(/*! ./en-NZ.js */ 51);\nexports['en-ZA'] = __webpack_require__(/*! ./en-ZA.js */ 52);\nexports['es-AR'] = __webpack_require__(/*! ./es-AR.js */ 53);\nexports['es-CL'] = __webpack_require__(/*! ./es-CL.js */ 54);\nexports['es-CO'] = __webpack_require__(/*! ./es-CO.js */ 55);\nexports['es-CR'] = __webpack_require__(/*! ./es-CR.js */ 56);\nexports['es-ES'] = __webpack_require__(/*! ./es-ES.js */ 57);\nexports['es-MX'] = __webpack_require__(/*! ./es-MX.js */ 58);\nexports['es-NI'] = __webpack_require__(/*! ./es-NI.js */ 59);\nexports['es-PE'] = __webpack_require__(/*! ./es-PE.js */ 60);\nexports['es-PR'] = __webpack_require__(/*! ./es-PR.js */ 61);\nexports['es-SV'] = __webpack_require__(/*! ./es-SV.js */ 62);\nexports['et-EE'] = __webpack_require__(/*! ./et-EE.js */ 63);\nexports['fa-IR'] = __webpack_require__(/*! ./fa-IR.js */ 64);\nexports['fi-FI'] = __webpack_require__(/*! ./fi-FI.js */ 65);\nexports['fil-PH'] = __webpack_require__(/*! ./fil-PH.js */ 66);\nexports['fr-CA'] = __webpack_require__(/*! ./fr-CA.js */ 67);\nexports['fr-CH'] = __webpack_require__(/*! ./fr-CH.js */ 68);\nexports['fr-FR'] = __webpack_require__(/*! ./fr-FR.js */ 69);\nexports['he-IL'] = __webpack_require__(/*! ./he-IL.js */ 70);\nexports['hu-HU'] = __webpack_require__(/*! ./hu-HU.js */ 71);\nexports['id'] = __webpack_require__(/*! ./id.js */ 72);\nexports['it-CH'] = __webpack_require__(/*! ./it-CH.js */ 73);\nexports['it-IT'] = __webpack_require__(/*! ./it-IT.js */ 74);\nexports['ja-JP'] = __webpack_require__(/*! ./ja-JP.js */ 75);\nexports['ko-KR'] = __webpack_require__(/*! ./ko-KR.js */ 76);\nexports['lv-LV'] = __webpack_require__(/*! ./lv-LV.js */ 77);\nexports['nb-NO'] = __webpack_require__(/*! ./nb-NO.js */ 78);\nexports['nb'] = __webpack_require__(/*! ./nb.js */ 79);\nexports['nl-BE'] = __webpack_require__(/*! ./nl-BE.js */ 80);\nexports['nl-NL'] = __webpack_require__(/*! ./nl-NL.js */ 81);\nexports['nn'] = __webpack_require__(/*! ./nn.js */ 82);\nexports['pl-PL'] = __webpack_require__(/*! ./pl-PL.js */ 83);\nexports['pt-BR'] = __webpack_require__(/*! ./pt-BR.js */ 84);\nexports['pt-PT'] = __webpack_require__(/*! ./pt-PT.js */ 85);\nexports['ro-RO'] = __webpack_require__(/*! ./ro-RO.js */ 86);\nexports['ro'] = __webpack_require__(/*! ./ro.js */ 87);\nexports['ru-RU'] = __webpack_require__(/*! ./ru-RU.js */ 88);\nexports['ru-UA'] = __webpack_require__(/*! ./ru-UA.js */ 89);\nexports['sk-SK'] = __webpack_require__(/*! ./sk-SK.js */ 90);\nexports['sl'] = __webpack_require__(/*! ./sl.js */ 91);\nexports['sr-Cyrl-RS'] = __webpack_require__(/*! ./sr-Cyrl-RS.js */ 92);\nexports['sv-SE'] = __webpack_require__(/*! ./sv-SE.js */ 93);\nexports['th-TH'] = __webpack_require__(/*! ./th-TH.js */ 94);\nexports['tr-TR'] = __webpack_require__(/*! ./tr-TR.js */ 95);\nexports['uk-UA'] = __webpack_require__(/*! ./uk-UA.js */ 96);\nexports['zh-CN'] = __webpack_require__(/*! ./zh-CN.js */ 97);\nexports['zh-MO'] = __webpack_require__(/*! ./zh-MO.js */ 98);\nexports['zh-SG'] = __webpack_require__(/*! ./zh-SG.js */ 99);\nexports['zh-TW'] = __webpack_require__(/*! ./zh-TW.js */ 100);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMzkuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9pbmRleC5qcz8yZDhhIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGpzaGludCBzdWI6IHRydWUgKi9cbmV4cG9ydHNbJ2JnJ10gPSByZXF1aXJlKCcuL2JnLmpzJyk7XG5leHBvcnRzWydjcy1DWiddID0gcmVxdWlyZSgnLi9jcy1DWi5qcycpO1xuZXhwb3J0c1snZGEtREsnXSA9IHJlcXVpcmUoJy4vZGEtREsuanMnKTtcbmV4cG9ydHNbJ2RlLUFUJ10gPSByZXF1aXJlKCcuL2RlLUFULmpzJyk7XG5leHBvcnRzWydkZS1DSCddID0gcmVxdWlyZSgnLi9kZS1DSC5qcycpO1xuZXhwb3J0c1snZGUtREUnXSA9IHJlcXVpcmUoJy4vZGUtREUuanMnKTtcbmV4cG9ydHNbJ2RlLUxJJ10gPSByZXF1aXJlKCcuL2RlLUxJLmpzJyk7XG5leHBvcnRzWydlbCddID0gcmVxdWlyZSgnLi9lbC5qcycpO1xuZXhwb3J0c1snZW4tQVUnXSA9IHJlcXVpcmUoJy4vZW4tQVUuanMnKTtcbmV4cG9ydHNbJ2VuLUdCJ10gPSByZXF1aXJlKCcuL2VuLUdCLmpzJyk7XG5leHBvcnRzWydlbi1JRSddID0gcmVxdWlyZSgnLi9lbi1JRS5qcycpO1xuZXhwb3J0c1snZW4tTlonXSA9IHJlcXVpcmUoJy4vZW4tTlouanMnKTtcbmV4cG9ydHNbJ2VuLVpBJ10gPSByZXF1aXJlKCcuL2VuLVpBLmpzJyk7XG5leHBvcnRzWydlcy1BUiddID0gcmVxdWlyZSgnLi9lcy1BUi5qcycpO1xuZXhwb3J0c1snZXMtQ0wnXSA9IHJlcXVpcmUoJy4vZXMtQ0wuanMnKTtcbmV4cG9ydHNbJ2VzLUNPJ10gPSByZXF1aXJlKCcuL2VzLUNPLmpzJyk7XG5leHBvcnRzWydlcy1DUiddID0gcmVxdWlyZSgnLi9lcy1DUi5qcycpO1xuZXhwb3J0c1snZXMtRVMnXSA9IHJlcXVpcmUoJy4vZXMtRVMuanMnKTtcbmV4cG9ydHNbJ2VzLU1YJ10gPSByZXF1aXJlKCcuL2VzLU1YLmpzJyk7XG5leHBvcnRzWydlcy1OSSddID0gcmVxdWlyZSgnLi9lcy1OSS5qcycpO1xuZXhwb3J0c1snZXMtUEUnXSA9IHJlcXVpcmUoJy4vZXMtUEUuanMnKTtcbmV4cG9ydHNbJ2VzLVBSJ10gPSByZXF1aXJlKCcuL2VzLVBSLmpzJyk7XG5leHBvcnRzWydlcy1TViddID0gcmVxdWlyZSgnLi9lcy1TVi5qcycpO1xuZXhwb3J0c1snZXQtRUUnXSA9IHJlcXVpcmUoJy4vZXQtRUUuanMnKTtcbmV4cG9ydHNbJ2ZhLUlSJ10gPSByZXF1aXJlKCcuL2ZhLUlSLmpzJyk7XG5leHBvcnRzWydmaS1GSSddID0gcmVxdWlyZSgnLi9maS1GSS5qcycpO1xuZXhwb3J0c1snZmlsLVBIJ10gPSByZXF1aXJlKCcuL2ZpbC1QSC5qcycpO1xuZXhwb3J0c1snZnItQ0EnXSA9IHJlcXVpcmUoJy4vZnItQ0EuanMnKTtcbmV4cG9ydHNbJ2ZyLUNIJ10gPSByZXF1aXJlKCcuL2ZyLUNILmpzJyk7XG5leHBvcnRzWydmci1GUiddID0gcmVxdWlyZSgnLi9mci1GUi5qcycpO1xuZXhwb3J0c1snaGUtSUwnXSA9IHJlcXVpcmUoJy4vaGUtSUwuanMnKTtcbmV4cG9ydHNbJ2h1LUhVJ10gPSByZXF1aXJlKCcuL2h1LUhVLmpzJyk7XG5leHBvcnRzWydpZCddID0gcmVxdWlyZSgnLi9pZC5qcycpO1xuZXhwb3J0c1snaXQtQ0gnXSA9IHJlcXVpcmUoJy4vaXQtQ0guanMnKTtcbmV4cG9ydHNbJ2l0LUlUJ10gPSByZXF1aXJlKCcuL2l0LUlULmpzJyk7XG5leHBvcnRzWydqYS1KUCddID0gcmVxdWlyZSgnLi9qYS1KUC5qcycpO1xuZXhwb3J0c1sna28tS1InXSA9IHJlcXVpcmUoJy4va28tS1IuanMnKTtcbmV4cG9ydHNbJ2x2LUxWJ10gPSByZXF1aXJlKCcuL2x2LUxWLmpzJyk7XG5leHBvcnRzWyduYi1OTyddID0gcmVxdWlyZSgnLi9uYi1OTy5qcycpO1xuZXhwb3J0c1snbmInXSA9IHJlcXVpcmUoJy4vbmIuanMnKTtcbmV4cG9ydHNbJ25sLUJFJ10gPSByZXF1aXJlKCcuL25sLUJFLmpzJyk7XG5leHBvcnRzWydubC1OTCddID0gcmVxdWlyZSgnLi9ubC1OTC5qcycpO1xuZXhwb3J0c1snbm4nXSA9IHJlcXVpcmUoJy4vbm4uanMnKTtcbmV4cG9ydHNbJ3BsLVBMJ10gPSByZXF1aXJlKCcuL3BsLVBMLmpzJyk7XG5leHBvcnRzWydwdC1CUiddID0gcmVxdWlyZSgnLi9wdC1CUi5qcycpO1xuZXhwb3J0c1sncHQtUFQnXSA9IHJlcXVpcmUoJy4vcHQtUFQuanMnKTtcbmV4cG9ydHNbJ3JvLVJPJ10gPSByZXF1aXJlKCcuL3JvLVJPLmpzJyk7XG5leHBvcnRzWydybyddID0gcmVxdWlyZSgnLi9yby5qcycpO1xuZXhwb3J0c1sncnUtUlUnXSA9IHJlcXVpcmUoJy4vcnUtUlUuanMnKTtcbmV4cG9ydHNbJ3J1LVVBJ10gPSByZXF1aXJlKCcuL3J1LVVBLmpzJyk7XG5leHBvcnRzWydzay1TSyddID0gcmVxdWlyZSgnLi9zay1TSy5qcycpO1xuZXhwb3J0c1snc2wnXSA9IHJlcXVpcmUoJy4vc2wuanMnKTtcbmV4cG9ydHNbJ3NyLUN5cmwtUlMnXSA9IHJlcXVpcmUoJy4vc3ItQ3lybC1SUy5qcycpO1xuZXhwb3J0c1snc3YtU0UnXSA9IHJlcXVpcmUoJy4vc3YtU0UuanMnKTtcbmV4cG9ydHNbJ3RoLVRIJ10gPSByZXF1aXJlKCcuL3RoLVRILmpzJyk7XG5leHBvcnRzWyd0ci1UUiddID0gcmVxdWlyZSgnLi90ci1UUi5qcycpO1xuZXhwb3J0c1sndWstVUEnXSA9IHJlcXVpcmUoJy4vdWstVUEuanMnKTtcbmV4cG9ydHNbJ3poLUNOJ10gPSByZXF1aXJlKCcuL3poLUNOLmpzJyk7XG5leHBvcnRzWyd6aC1NTyddID0gcmVxdWlyZSgnLi96aC1NTy5qcycpO1xuZXhwb3J0c1snemgtU0cnXSA9IHJlcXVpcmUoJy4vemgtU0cuanMnKTtcbmV4cG9ydHNbJ3poLVRXJ10gPSByZXF1aXJlKCcuL3poLVRXLmpzJyk7XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9pbmRleC5qc1xuLy8gbW9kdWxlIGlkID0gMzlcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///39\n");
+
+/***/ }),
+/* 40 */
+/*!*********************************************!*\
+ !*** ./node_modules/numbro/languages/bg.js ***!
+ \*********************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Bulgarian\n * author : Tim McIntosh (StayinFront NZ)\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'bg',\n cultureCode: 'bg',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: 'И',\n million: 'А',\n billion: 'M',\n trillion: 'T'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: 'лв.',\n code: 'BGN'\n }\n };\n\n // Node\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n this.numbro.culture('bg', language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDAuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9iZy5qcz8yNDA2Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogQnVsZ2FyaWFuXG4gKiBhdXRob3IgOiBUaW0gTWNJbnRvc2ggKFN0YXlpbkZyb250IE5aKVxuICovXG4oZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciBsYW5ndWFnZSA9IHtcbiAgICAgICAgbGFuZ0xvY2FsZUNvZGU6ICdiZycsXG4gICAgICAgIGN1bHR1cmVDb2RlOiAnYmcnLFxuICAgICAgICBkZWxpbWl0ZXJzOiB7XG4gICAgICAgICAgICB0aG91c2FuZHM6ICcgJyxcbiAgICAgICAgICAgIGRlY2ltYWw6ICcsJ1xuICAgICAgICB9LFxuICAgICAgICBhYmJyZXZpYXRpb25zOiB7XG4gICAgICAgICAgICB0aG91c2FuZDogJ9CYJyxcbiAgICAgICAgICAgIG1pbGxpb246ICfQkCcsXG4gICAgICAgICAgICBiaWxsaW9uOiAnTScsXG4gICAgICAgICAgICB0cmlsbGlvbjogJ1QnXG4gICAgICAgIH0sXG4gICAgICAgIG9yZGluYWw6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiAnLic7XG4gICAgICAgIH0sXG4gICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgICBzeW1ib2w6ICfQu9CyLicsXG4gICAgICAgICAgICBjb2RlOiAnQkdOJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIE5vZGVcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB0aGlzLm51bWJyby5jdWx0dXJlKCdiZycsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL2JnLmpzXG4vLyBtb2R1bGUgaWQgPSA0MFxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///40\n");
+
+/***/ }),
+/* 41 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/cs-CZ.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Czech\n * locale: Czech Republic\n * author : Jan Pesa : https://github.com/smajl (based on work from Anatoli Papirovski : https://github.com/apapirovski)\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'cs-CZ',\n cultureCode: 'cs-CZ',\n delimiters: {\n thousands: '\\u00a0',\n decimal: ','\n },\n abbreviations: {\n thousand: 'tis.',\n million: 'mil.',\n billion: 'mld.',\n trillion: 'bil.'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: 'Kč',\n position: 'postfix',\n spaceSeparated: true,\n code: 'CZK'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDEuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9jcy1DWi5qcz84MTJhIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogQ3plY2hcbiAqIGxvY2FsZTogQ3plY2ggUmVwdWJsaWNcbiAqIGF1dGhvciA6IEphbiBQZXNhIDogaHR0cHM6Ly9naXRodWIuY29tL3NtYWpsIChiYXNlZCBvbiB3b3JrIGZyb20gQW5hdG9saSBQYXBpcm92c2tpIDogaHR0cHM6Ly9naXRodWIuY29tL2FwYXBpcm92c2tpKVxuICovXG4oZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciBsYW5ndWFnZSA9IHtcbiAgICAgICAgbGFuZ0xvY2FsZUNvZGU6ICdjcy1DWicsXG4gICAgICAgIGN1bHR1cmVDb2RlOiAnY3MtQ1onLFxuICAgICAgICBkZWxpbWl0ZXJzOiB7XG4gICAgICAgICAgICB0aG91c2FuZHM6ICdcXHUwMGEwJyxcbiAgICAgICAgICAgIGRlY2ltYWw6ICcsJ1xuICAgICAgICB9LFxuICAgICAgICBhYmJyZXZpYXRpb25zOiB7XG4gICAgICAgICAgICB0aG91c2FuZDogJ3Rpcy4nLFxuICAgICAgICAgICAgbWlsbGlvbjogJ21pbC4nLFxuICAgICAgICAgICAgYmlsbGlvbjogJ21sZC4nLFxuICAgICAgICAgICAgdHJpbGxpb246ICdiaWwuJ1xuICAgICAgICB9LFxuICAgICAgICBvcmRpbmFsOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gJy4nO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAnS8SNJyxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAncG9zdGZpeCcsXG4gICAgICAgICAgICBzcGFjZVNlcGFyYXRlZDogdHJ1ZSxcbiAgICAgICAgICAgIGNvZGU6ICdDWksnXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBjdXJyZW5jeUZvcm1hdDogJyw0IGEnXG4gICAgICAgIH0sXG4gICAgICAgIGZvcm1hdHM6IHtcbiAgICAgICAgICAgIGZvdXJEaWdpdHM6ICc0IGEnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsczogJywwLjAwICQnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsc05vQ3VycmVuY3k6ICcsMC4wMCcsXG4gICAgICAgICAgICBmdWxsV2l0aE5vRGVjaW1hbHM6ICcsMCAkJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9jcy1DWi5qc1xuLy8gbW9kdWxlIGlkID0gNDFcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///41\n");
+
+/***/ }),
+/* 42 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/da-DK.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Danish\n * locale: Denmark\n * author : Michael Storgaard : https://github.com/mstorgaard\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'da-DK',\n cultureCode: 'da-DK',\n delimiters: {\n thousands: '.',\n decimal: ','\n },\n abbreviations: {\n thousand: 'k',\n million: 'mio',\n billion: 'mia',\n trillion: 'b'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: 'kr',\n position: 'postfix',\n code: 'DKK'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDIuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9kYS1ESy5qcz84MmNmIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogRGFuaXNoXG4gKiBsb2NhbGU6IERlbm1hcmtcbiAqIGF1dGhvciA6IE1pY2hhZWwgU3RvcmdhYXJkIDogaHR0cHM6Ly9naXRodWIuY29tL21zdG9yZ2FhcmRcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnZGEtREsnLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ2RhLURLJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnLicsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLCdcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICdrJyxcbiAgICAgICAgICAgIG1pbGxpb246ICdtaW8nLFxuICAgICAgICAgICAgYmlsbGlvbjogJ21pYScsXG4gICAgICAgICAgICB0cmlsbGlvbjogJ2InXG4gICAgICAgIH0sXG4gICAgICAgIG9yZGluYWw6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiAnLic7XG4gICAgICAgIH0sXG4gICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgICBzeW1ib2w6ICdrcicsXG4gICAgICAgICAgICBwb3NpdGlvbjogJ3Bvc3RmaXgnLFxuICAgICAgICAgICAgY29kZTogJ0RLSydcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgIGN1cnJlbmN5Rm9ybWF0OiAnLDQgYSdcbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0czoge1xuICAgICAgICAgICAgZm91ckRpZ2l0czogJzQgYScsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzOiAnLDAuMDAgJCcsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzTm9DdXJyZW5jeTogJywwLjAwJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoTm9EZWNpbWFsczogJywwICQnXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gQ29tbW9uSlNcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUobGFuZ3VhZ2UuY3VsdHVyZUNvZGUsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL2RhLURLLmpzXG4vLyBtb2R1bGUgaWQgPSA0MlxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///42\n");
+
+/***/ }),
+/* 43 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/de-AT.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : German\n * locale: Austria\n * author : Tim McIntosh (StayinFront NZ)\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'de-AT',\n cultureCode: 'de-AT',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: 'k',\n million: 'm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: '€',\n code: 'EUR'\n }\n };\n\n // Node\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9kZS1BVC5qcz8yYzZlIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogR2VybWFuXG4gKiBsb2NhbGU6IEF1c3RyaWFcbiAqIGF1dGhvciA6IFRpbSBNY0ludG9zaCAoU3RheWluRnJvbnQgTlopXG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ2RlLUFUJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICdkZS1BVCcsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJyAnLFxuICAgICAgICAgICAgZGVjaW1hbDogJywnXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAnaycsXG4gICAgICAgICAgICBtaWxsaW9uOiAnbScsXG4gICAgICAgICAgICBiaWxsaW9uOiAnYicsXG4gICAgICAgICAgICB0cmlsbGlvbjogJ3QnXG4gICAgICAgIH0sXG4gICAgICAgIG9yZGluYWw6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiAnLic7XG4gICAgICAgIH0sXG4gICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgICBzeW1ib2w6ICfigqwnLFxuICAgICAgICAgICAgY29kZTogJ0VVUidcbiAgICAgICAgfVxuICAgIH07XG5cbiAgICAvLyBOb2RlXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9kZS1BVC5qc1xuLy8gbW9kdWxlIGlkID0gNDNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///43\n");
+
+/***/ }),
+/* 44 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/de-CH.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : German\n * locale: Switzerland\n * author : Michael Piefel : https://github.com/piefel (based on work from Marco Krage : https://github.com/sinky)\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'de-CH',\n cultureCode: 'de-CH',\n delimiters: {\n thousands: '\\'',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'k',\n million: 'm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: 'CHF',\n position: 'postfix',\n code: 'CHF'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDQuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9kZS1DSC5qcz83Y2QyIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogR2VybWFuXG4gKiBsb2NhbGU6IFN3aXR6ZXJsYW5kXG4gKiBhdXRob3IgOiBNaWNoYWVsIFBpZWZlbCA6IGh0dHBzOi8vZ2l0aHViLmNvbS9waWVmZWwgKGJhc2VkIG9uIHdvcmsgZnJvbSBNYXJjbyBLcmFnZSA6IGh0dHBzOi8vZ2l0aHViLmNvbS9zaW5reSlcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnZGUtQ0gnLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ2RlLUNIJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnXFwnJyxcbiAgICAgICAgICAgIGRlY2ltYWw6ICcuJ1xuICAgICAgICB9LFxuICAgICAgICBhYmJyZXZpYXRpb25zOiB7XG4gICAgICAgICAgICB0aG91c2FuZDogJ2snLFxuICAgICAgICAgICAgbWlsbGlvbjogJ20nLFxuICAgICAgICAgICAgYmlsbGlvbjogJ2InLFxuICAgICAgICAgICAgdHJpbGxpb246ICd0J1xuICAgICAgICB9LFxuICAgICAgICBvcmRpbmFsOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gJy4nO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAnQ0hGJyxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAncG9zdGZpeCcsXG4gICAgICAgICAgICBjb2RlOiAnQ0hGJ1xuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0czoge1xuICAgICAgICAgICAgY3VycmVuY3lGb3JtYXQ6ICcsNCBhJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtYXRzOiB7XG4gICAgICAgICAgICBmb3VyRGlnaXRzOiAnNCBhJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHM6ICcsMC4wMCAkJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHNOb0N1cnJlbmN5OiAnLDAuMDAnLFxuICAgICAgICAgICAgZnVsbFdpdGhOb0RlY2ltYWxzOiAnLDAgJCdcbiAgICAgICAgfVxuICAgIH07XG5cbiAgICAvLyBDb21tb25KU1xuICAgIGlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJyAmJiBtb2R1bGUuZXhwb3J0cykge1xuICAgICAgICBtb2R1bGUuZXhwb3J0cyA9IGxhbmd1YWdlO1xuICAgIH1cbiAgICAvLyBCcm93c2VyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5udW1icm8gJiYgd2luZG93Lm51bWJyby5jdWx0dXJlKSB7XG4gICAgICAgIHdpbmRvdy5udW1icm8uY3VsdHVyZShsYW5ndWFnZS5jdWx0dXJlQ29kZSwgbGFuZ3VhZ2UpO1xuICAgIH1cbn0uY2FsbCh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJyA/IHRoaXMgOiB3aW5kb3cpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMvZGUtQ0guanNcbi8vIG1vZHVsZSBpZCA9IDQ0XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///44\n");
+
+/***/ }),
+/* 45 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/de-DE.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : German\n * locale: Germany\n * author : Marco Krage : https://github.com/sinky\n *\n * Generally useful in Germany, Austria, Luxembourg, Belgium\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'de-DE',\n cultureCode: 'de-DE',\n delimiters: {\n thousands: '.',\n decimal: ','\n },\n abbreviations: {\n thousand: 'k',\n million: 'm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: '€',\n position: 'postfix',\n spaceSeparated: true,\n code: 'EUR'\n },\n defaults: {\n currencyFormat: ',4'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9kZS1ERS5qcz82OGViIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogR2VybWFuXG4gKiBsb2NhbGU6IEdlcm1hbnlcbiAqIGF1dGhvciA6IE1hcmNvIEtyYWdlIDogaHR0cHM6Ly9naXRodWIuY29tL3Npbmt5XG4gKlxuICogR2VuZXJhbGx5IHVzZWZ1bCBpbiBHZXJtYW55LCBBdXN0cmlhLCBMdXhlbWJvdXJnLCBCZWxnaXVtXG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ2RlLURFJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICdkZS1ERScsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJy4nLFxuICAgICAgICAgICAgZGVjaW1hbDogJywnXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAnaycsXG4gICAgICAgICAgICBtaWxsaW9uOiAnbScsXG4gICAgICAgICAgICBiaWxsaW9uOiAnYicsXG4gICAgICAgICAgICB0cmlsbGlvbjogJ3QnXG4gICAgICAgIH0sXG4gICAgICAgIG9yZGluYWw6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiAnLic7XG4gICAgICAgIH0sXG4gICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgICBzeW1ib2w6ICfigqwnLFxuICAgICAgICAgICAgcG9zaXRpb246ICdwb3N0Zml4JyxcbiAgICAgICAgICAgIHNwYWNlU2VwYXJhdGVkOiB0cnVlLFxuICAgICAgICAgICAgY29kZTogJ0VVUidcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgIGN1cnJlbmN5Rm9ybWF0OiAnLDQnXG4gICAgICAgIH0sXG4gICAgICAgIGZvcm1hdHM6IHtcbiAgICAgICAgICAgIGZvdXJEaWdpdHM6ICc0IGEnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsczogJywwLjAwICQnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsc05vQ3VycmVuY3k6ICcsMC4wMCcsXG4gICAgICAgICAgICBmdWxsV2l0aE5vRGVjaW1hbHM6ICcsMCAkJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9kZS1ERS5qc1xuLy8gbW9kdWxlIGlkID0gNDVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///45\n");
+
+/***/ }),
+/* 46 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/de-LI.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : German\n * locale: Liechtenstein\n * author : Michael Piefel : https://github.com/piefel (based on work from Marco Krage : https://github.com/sinky)\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'de-LI',\n cultureCode: 'de-LI',\n delimiters: {\n thousands: '\\'',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'k',\n million: 'm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: 'CHF',\n position: 'postfix',\n code: 'CHF'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDYuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9kZS1MSS5qcz9hOTcxIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogR2VybWFuXG4gKiBsb2NhbGU6IExpZWNodGVuc3RlaW5cbiAqIGF1dGhvciA6IE1pY2hhZWwgUGllZmVsIDogaHR0cHM6Ly9naXRodWIuY29tL3BpZWZlbCAoYmFzZWQgb24gd29yayBmcm9tIE1hcmNvIEtyYWdlIDogaHR0cHM6Ly9naXRodWIuY29tL3Npbmt5KVxuICovXG4oZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciBsYW5ndWFnZSA9IHtcbiAgICAgICAgbGFuZ0xvY2FsZUNvZGU6ICdkZS1MSScsXG4gICAgICAgIGN1bHR1cmVDb2RlOiAnZGUtTEknLFxuICAgICAgICBkZWxpbWl0ZXJzOiB7XG4gICAgICAgICAgICB0aG91c2FuZHM6ICdcXCcnLFxuICAgICAgICAgICAgZGVjaW1hbDogJy4nXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAnaycsXG4gICAgICAgICAgICBtaWxsaW9uOiAnbScsXG4gICAgICAgICAgICBiaWxsaW9uOiAnYicsXG4gICAgICAgICAgICB0cmlsbGlvbjogJ3QnXG4gICAgICAgIH0sXG4gICAgICAgIG9yZGluYWw6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiAnLic7XG4gICAgICAgIH0sXG4gICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgICBzeW1ib2w6ICdDSEYnLFxuICAgICAgICAgICAgcG9zaXRpb246ICdwb3N0Zml4JyxcbiAgICAgICAgICAgIGNvZGU6ICdDSEYnXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBjdXJyZW5jeUZvcm1hdDogJyw0IGEnXG4gICAgICAgIH0sXG4gICAgICAgIGZvcm1hdHM6IHtcbiAgICAgICAgICAgIGZvdXJEaWdpdHM6ICc0IGEnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsczogJywwLjAwICQnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsc05vQ3VycmVuY3k6ICcsMC4wMCcsXG4gICAgICAgICAgICBmdWxsV2l0aE5vRGVjaW1hbHM6ICcsMCAkJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9kZS1MSS5qc1xuLy8gbW9kdWxlIGlkID0gNDZcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///46\n");
+
+/***/ }),
+/* 47 */
+/*!*********************************************!*\
+ !*** ./node_modules/numbro/languages/el.js ***!
+ \*********************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Greek (el)\n * author : Tim McIntosh (StayinFront NZ)\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'el',\n cultureCode: 'el',\n delimiters: {\n thousands: '.',\n decimal: ','\n },\n abbreviations: {\n thousand: 'χ',\n million: 'ε',\n billion: 'δ',\n trillion: 'τ'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: '€',\n code: 'EUR'\n }\n };\n\n // Node\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture('el', language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDcuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lbC5qcz9hYWExIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogR3JlZWsgKGVsKVxuICogYXV0aG9yIDogVGltIE1jSW50b3NoIChTdGF5aW5Gcm9udCBOWilcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnZWwnLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ2VsJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnLicsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLCdcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICfPhycsXG4gICAgICAgICAgICBtaWxsaW9uOiAnzrUnLFxuICAgICAgICAgICAgYmlsbGlvbjogJ860JyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAnz4QnXG4gICAgICAgIH0sXG4gICAgICAgIG9yZGluYWw6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiAnLic7XG4gICAgICAgIH0sXG4gICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgICBzeW1ib2w6ICfigqwnLFxuICAgICAgICAgICAgY29kZTogJ0VVUidcbiAgICAgICAgfVxuICAgIH07XG5cbiAgICAvLyBOb2RlXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKCdlbCcsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL2VsLmpzXG4vLyBtb2R1bGUgaWQgPSA0N1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///47\n");
+
+/***/ }),
+/* 48 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/en-AU.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : English\n * locale: Australia\n * author : Benedikt Huss : https://github.com/ben305\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'en-AU',\n cultureCode: 'en-AU',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'k',\n million: 'm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function (number) {\n var b = number % 10;\n return (~~ (number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n },\n currency: {\n symbol: '$',\n position: 'prefix',\n code: 'AUD'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: '$ ,0.00',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: '$ ,0'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDguanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lbi1BVS5qcz9jOGI5Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogRW5nbGlzaFxuICogbG9jYWxlOiBBdXN0cmFsaWFcbiAqIGF1dGhvciA6IEJlbmVkaWt0IEh1c3MgOiBodHRwczovL2dpdGh1Yi5jb20vYmVuMzA1XG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ2VuLUFVJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICdlbi1BVScsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJywnLFxuICAgICAgICAgICAgZGVjaW1hbDogJy4nXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAnaycsXG4gICAgICAgICAgICBtaWxsaW9uOiAnbScsXG4gICAgICAgICAgICBiaWxsaW9uOiAnYicsXG4gICAgICAgICAgICB0cmlsbGlvbjogJ3QnXG4gICAgICAgIH0sXG4gICAgICAgIG9yZGluYWw6IGZ1bmN0aW9uIChudW1iZXIpIHtcbiAgICAgICAgICAgIHZhciBiID0gbnVtYmVyICUgMTA7XG4gICAgICAgICAgICByZXR1cm4gKH5+IChudW1iZXIgJSAxMDAgLyAxMCkgPT09IDEpID8gJ3RoJyA6XG4gICAgICAgICAgICAgICAgKGIgPT09IDEpID8gJ3N0JyA6XG4gICAgICAgICAgICAgICAgKGIgPT09IDIpID8gJ25kJyA6XG4gICAgICAgICAgICAgICAgKGIgPT09IDMpID8gJ3JkJyA6ICd0aCc7XG4gICAgICAgIH0sXG4gICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgICBzeW1ib2w6ICckJyxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAncHJlZml4JyxcbiAgICAgICAgICAgIGNvZGU6ICdBVUQnXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBjdXJyZW5jeUZvcm1hdDogJyw0IGEnXG4gICAgICAgIH0sXG4gICAgICAgIGZvcm1hdHM6IHtcbiAgICAgICAgICAgIGZvdXJEaWdpdHM6ICc0IGEnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsczogJyQgLDAuMDAnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsc05vQ3VycmVuY3k6ICcsMC4wMCcsXG4gICAgICAgICAgICBmdWxsV2l0aE5vRGVjaW1hbHM6ICckICwwJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lbi1BVS5qc1xuLy8gbW9kdWxlIGlkID0gNDhcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///48\n");
+
+/***/ }),
+/* 49 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/en-GB.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : English\n * locale: United Kingdom of Great Britain and Northern Ireland\n * author : Dan Ristic : https://github.com/dristic\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'en-GB',\n cultureCode: 'en-GB',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'k',\n million: 'm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function (number) {\n var b = number % 10;\n return (~~ (number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n },\n currency: {\n symbol: '£',\n position: 'prefix',\n code: 'GBP'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: '$ ,0.00',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: '$ ,0'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDkuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lbi1HQi5qcz80ZWFmIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogRW5nbGlzaFxuICogbG9jYWxlOiBVbml0ZWQgS2luZ2RvbSBvZiBHcmVhdCBCcml0YWluIGFuZCBOb3J0aGVybiBJcmVsYW5kXG4gKiBhdXRob3IgOiBEYW4gUmlzdGljIDogaHR0cHM6Ly9naXRodWIuY29tL2RyaXN0aWNcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnZW4tR0InLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ2VuLUdCJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnLCcsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLidcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICdrJyxcbiAgICAgICAgICAgIG1pbGxpb246ICdtJyxcbiAgICAgICAgICAgIGJpbGxpb246ICdiJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAndCdcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKG51bWJlcikge1xuICAgICAgICAgICAgdmFyIGIgPSBudW1iZXIgJSAxMDtcbiAgICAgICAgICAgIHJldHVybiAofn4gKG51bWJlciAlIDEwMCAvIDEwKSA9PT0gMSkgPyAndGgnIDpcbiAgICAgICAgICAgICAgICAoYiA9PT0gMSkgPyAnc3QnIDpcbiAgICAgICAgICAgICAgICAoYiA9PT0gMikgPyAnbmQnIDpcbiAgICAgICAgICAgICAgICAoYiA9PT0gMykgPyAncmQnIDogJ3RoJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJ8KjJyxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAncHJlZml4JyxcbiAgICAgICAgICAgIGNvZGU6ICdHQlAnXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBjdXJyZW5jeUZvcm1hdDogJyw0IGEnXG4gICAgICAgIH0sXG4gICAgICAgIGZvcm1hdHM6IHtcbiAgICAgICAgICAgIGZvdXJEaWdpdHM6ICc0IGEnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsczogJyQgLDAuMDAnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsc05vQ3VycmVuY3k6ICcsMC4wMCcsXG4gICAgICAgICAgICBmdWxsV2l0aE5vRGVjaW1hbHM6ICckICwwJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lbi1HQi5qc1xuLy8gbW9kdWxlIGlkID0gNDlcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///49\n");
+
+/***/ }),
+/* 50 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/en-IE.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n+ * numbro.js language configuration\n * language : English\n * locale: Ireland\n * author : Tim McIntosh (StayinFront NZ)\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'en-IE',\n cultureCode: 'en-IE',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'k',\n million: 'm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function (number) {\n var b = number % 10;\n return (~~(number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n },\n currency: {\n symbol: '€',\n code: 'EUR'\n }\n };\n\n // Node\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture('en-gb', language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNTAuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lbi1JRS5qcz9jN2M3Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuKyAqIG51bWJyby5qcyBsYW5ndWFnZSBjb25maWd1cmF0aW9uXG4gKiBsYW5ndWFnZSA6IEVuZ2xpc2hcbiAqIGxvY2FsZTogSXJlbGFuZFxuICogYXV0aG9yIDogVGltIE1jSW50b3NoIChTdGF5aW5Gcm9udCBOWilcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnZW4tSUUnLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ2VuLUlFJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnLCcsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLidcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICdrJyxcbiAgICAgICAgICAgIG1pbGxpb246ICdtJyxcbiAgICAgICAgICAgIGJpbGxpb246ICdiJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAndCdcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKG51bWJlcikge1xuICAgICAgICAgICAgdmFyIGIgPSBudW1iZXIgJSAxMDtcbiAgICAgICAgICAgIHJldHVybiAofn4obnVtYmVyICUgMTAwIC8gMTApID09PSAxKSA/ICd0aCcgOlxuICAgICAgICAgICAgICAgIChiID09PSAxKSA/ICdzdCcgOlxuICAgICAgICAgICAgICAgICAgICAoYiA9PT0gMikgPyAnbmQnIDpcbiAgICAgICAgICAgICAgICAgICAgICAgIChiID09PSAzKSA/ICdyZCcgOiAndGgnO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAn4oKsJyxcbiAgICAgICAgICAgIGNvZGU6ICdFVVInXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gTm9kZVxuICAgIGlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJyAmJiBtb2R1bGUuZXhwb3J0cykge1xuICAgICAgICBtb2R1bGUuZXhwb3J0cyA9IGxhbmd1YWdlO1xuICAgIH1cbiAgICAvLyBCcm93c2VyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5udW1icm8gJiYgd2luZG93Lm51bWJyby5jdWx0dXJlKSB7XG4gICAgICAgIHdpbmRvdy5udW1icm8uY3VsdHVyZSgnZW4tZ2InLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lbi1JRS5qc1xuLy8gbW9kdWxlIGlkID0gNTBcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///50\n");
+
+/***/ }),
+/* 51 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/en-NZ.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : English\n * locale: New Zealand\n * author : Benedikt Huss : https://github.com/ben305\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'en-NZ',\n cultureCode: 'en-NZ',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'k',\n million: 'm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function (number) {\n var b = number % 10;\n return (~~ (number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n },\n currency: {\n symbol: '$',\n position: 'prefix',\n code: 'NZD'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: '$ ,0.00',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: '$ ,0'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNTEuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lbi1OWi5qcz9iOWZlIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogRW5nbGlzaFxuICogbG9jYWxlOiBOZXcgWmVhbGFuZFxuICogYXV0aG9yIDogQmVuZWRpa3QgSHVzcyA6IGh0dHBzOi8vZ2l0aHViLmNvbS9iZW4zMDVcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnZW4tTlonLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ2VuLU5aJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnLCcsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLidcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICdrJyxcbiAgICAgICAgICAgIG1pbGxpb246ICdtJyxcbiAgICAgICAgICAgIGJpbGxpb246ICdiJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAndCdcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKG51bWJlcikge1xuICAgICAgICAgICAgdmFyIGIgPSBudW1iZXIgJSAxMDtcbiAgICAgICAgICAgIHJldHVybiAofn4gKG51bWJlciAlIDEwMCAvIDEwKSA9PT0gMSkgPyAndGgnIDpcbiAgICAgICAgICAgICAgICAoYiA9PT0gMSkgPyAnc3QnIDpcbiAgICAgICAgICAgICAgICAoYiA9PT0gMikgPyAnbmQnIDpcbiAgICAgICAgICAgICAgICAoYiA9PT0gMykgPyAncmQnIDogJ3RoJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJyQnLFxuICAgICAgICAgICAgcG9zaXRpb246ICdwcmVmaXgnLFxuICAgICAgICAgICAgY29kZTogJ05aRCdcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgIGN1cnJlbmN5Rm9ybWF0OiAnLDQgYSdcbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0czoge1xuICAgICAgICAgICAgZm91ckRpZ2l0czogJzQgYScsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzOiAnJCAsMC4wMCcsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzTm9DdXJyZW5jeTogJywwLjAwJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoTm9EZWNpbWFsczogJyQgLDAnXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gQ29tbW9uSlNcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUobGFuZ3VhZ2UuY3VsdHVyZUNvZGUsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL2VuLU5aLmpzXG4vLyBtb2R1bGUgaWQgPSA1MVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///51\n");
+
+/***/ }),
+/* 52 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/en-ZA.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : English\n * locale: South Africa\n * author : Stewart Scott https://github.com/stewart42\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'en-ZA',\n cultureCode: 'en-ZA',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: 'k',\n million: 'm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function (number) {\n var b = number % 10;\n return (~~ (number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n },\n currency: {\n symbol: 'R',\n position: 'prefix',\n code: 'ZAR'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: '$ ,0.00',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: '$ ,0'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNTIuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lbi1aQS5qcz84Zjg0Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogRW5nbGlzaFxuICogbG9jYWxlOiBTb3V0aCBBZnJpY2FcbiAqIGF1dGhvciA6IFN0ZXdhcnQgU2NvdHQgaHR0cHM6Ly9naXRodWIuY29tL3N0ZXdhcnQ0MlxuICovXG4oZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciBsYW5ndWFnZSA9IHtcbiAgICAgICAgbGFuZ0xvY2FsZUNvZGU6ICdlbi1aQScsXG4gICAgICAgIGN1bHR1cmVDb2RlOiAnZW4tWkEnLFxuICAgICAgICBkZWxpbWl0ZXJzOiB7XG4gICAgICAgICAgICB0aG91c2FuZHM6ICcgJyxcbiAgICAgICAgICAgIGRlY2ltYWw6ICcsJ1xuICAgICAgICB9LFxuICAgICAgICBhYmJyZXZpYXRpb25zOiB7XG4gICAgICAgICAgICB0aG91c2FuZDogJ2snLFxuICAgICAgICAgICAgbWlsbGlvbjogJ20nLFxuICAgICAgICAgICAgYmlsbGlvbjogJ2InLFxuICAgICAgICAgICAgdHJpbGxpb246ICd0J1xuICAgICAgICB9LFxuICAgICAgICBvcmRpbmFsOiBmdW5jdGlvbiAobnVtYmVyKSB7XG4gICAgICAgICAgICB2YXIgYiA9IG51bWJlciAlIDEwO1xuICAgICAgICAgICAgcmV0dXJuICh+fiAobnVtYmVyICUgMTAwIC8gMTApID09PSAxKSA/ICd0aCcgOlxuICAgICAgICAgICAgICAgIChiID09PSAxKSA/ICdzdCcgOlxuICAgICAgICAgICAgICAgIChiID09PSAyKSA/ICduZCcgOlxuICAgICAgICAgICAgICAgIChiID09PSAzKSA/ICdyZCcgOiAndGgnO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAnUicsXG4gICAgICAgICAgICBwb3NpdGlvbjogJ3ByZWZpeCcsXG4gICAgICAgICAgICBjb2RlOiAnWkFSJ1xuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0czoge1xuICAgICAgICAgICAgY3VycmVuY3lGb3JtYXQ6ICcsNCBhJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtYXRzOiB7XG4gICAgICAgICAgICBmb3VyRGlnaXRzOiAnNCBhJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHM6ICckICwwLjAwJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHNOb0N1cnJlbmN5OiAnLDAuMDAnLFxuICAgICAgICAgICAgZnVsbFdpdGhOb0RlY2ltYWxzOiAnJCAsMCdcbiAgICAgICAgfVxuICAgIH07XG5cbiAgICAvLyBDb21tb25KU1xuICAgIGlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJyAmJiBtb2R1bGUuZXhwb3J0cykge1xuICAgICAgICBtb2R1bGUuZXhwb3J0cyA9IGxhbmd1YWdlO1xuICAgIH1cbiAgICAvLyBCcm93c2VyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5udW1icm8gJiYgd2luZG93Lm51bWJyby5jdWx0dXJlKSB7XG4gICAgICAgIHdpbmRvdy5udW1icm8uY3VsdHVyZShsYW5ndWFnZS5jdWx0dXJlQ29kZSwgbGFuZ3VhZ2UpO1xuICAgIH1cbn0uY2FsbCh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJyA/IHRoaXMgOiB3aW5kb3cpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMvZW4tWkEuanNcbi8vIG1vZHVsZSBpZCA9IDUyXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///52\n");
+
+/***/ }),
+/* 53 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/es-AR.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Spanish\n * locale: Argentina\n * author : Hernan Garcia : https://github.com/hgarcia\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'es-AR',\n cultureCode: 'es-AR',\n delimiters: {\n thousands: '.',\n decimal: ','\n },\n abbreviations: {\n thousand: 'k',\n million: 'mm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function (number) {\n var b = number % 10;\n return (b === 1 || b === 3) ? 'er' :\n (b === 2) ? 'do' :\n (b === 7 || b === 0) ? 'mo' :\n (b === 8) ? 'vo' :\n (b === 9) ? 'no' : 'to';\n },\n currency: {\n symbol: '$',\n position: 'postfix',\n code: 'ARS'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNTMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lcy1BUi5qcz9jZjdlIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogU3BhbmlzaFxuICogbG9jYWxlOiBBcmdlbnRpbmFcbiAqIGF1dGhvciA6IEhlcm5hbiBHYXJjaWEgOiBodHRwczovL2dpdGh1Yi5jb20vaGdhcmNpYVxuICovXG4oZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciBsYW5ndWFnZSA9IHtcbiAgICAgICAgbGFuZ0xvY2FsZUNvZGU6ICdlcy1BUicsXG4gICAgICAgIGN1bHR1cmVDb2RlOiAnZXMtQVInLFxuICAgICAgICBkZWxpbWl0ZXJzOiB7XG4gICAgICAgICAgICB0aG91c2FuZHM6ICcuJyxcbiAgICAgICAgICAgIGRlY2ltYWw6ICcsJ1xuICAgICAgICB9LFxuICAgICAgICBhYmJyZXZpYXRpb25zOiB7XG4gICAgICAgICAgICB0aG91c2FuZDogJ2snLFxuICAgICAgICAgICAgbWlsbGlvbjogJ21tJyxcbiAgICAgICAgICAgIGJpbGxpb246ICdiJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAndCdcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKG51bWJlcikge1xuICAgICAgICAgICAgdmFyIGIgPSBudW1iZXIgJSAxMDtcbiAgICAgICAgICAgIHJldHVybiAoYiA9PT0gMSB8fCBiID09PSAzKSA/ICdlcicgOlxuICAgICAgICAgICAgICAgIChiID09PSAyKSA/ICdkbycgOlxuICAgICAgICAgICAgICAgIChiID09PSA3IHx8IGIgPT09IDApID8gJ21vJyA6XG4gICAgICAgIChiID09PSA4KSA/ICd2bycgOlxuICAgICAgICAoYiA9PT0gOSkgPyAnbm8nIDogJ3RvJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJyQnLFxuICAgICAgICAgICAgcG9zaXRpb246ICdwb3N0Zml4JyxcbiAgICAgICAgICAgIGNvZGU6ICdBUlMnXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBjdXJyZW5jeUZvcm1hdDogJyw0IGEnXG4gICAgICAgIH0sXG4gICAgICAgIGZvcm1hdHM6IHtcbiAgICAgICAgICAgIGZvdXJEaWdpdHM6ICc0IGEnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsczogJywwLjAwICQnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsc05vQ3VycmVuY3k6ICcsMC4wMCcsXG4gICAgICAgICAgICBmdWxsV2l0aE5vRGVjaW1hbHM6ICcsMCAkJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lcy1BUi5qc1xuLy8gbW9kdWxlIGlkID0gNTNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///53\n");
+
+/***/ }),
+/* 54 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/es-CL.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Spanish\n * locale: Chile\n * author : Gwyn Judd : https://github.com/gwynjudd\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'es-CL',\n cultureCode: 'es-CL',\n delimiters: {\n thousands: '.',\n decimal: ','\n },\n abbreviations: {\n thousand: 'k',\n million: 'mm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function (number) {\n var b = number % 10;\n return (b === 1 || b === 3) ? 'er' :\n (b === 2) ? 'do' :\n (b === 7 || b === 0) ? 'mo' :\n (b === 8) ? 'vo' :\n (b === 9) ? 'no' : 'to';\n },\n currency: {\n symbol: '$',\n position: 'prefix',\n code: 'CLP'\n },\n defaults: {\n currencyFormat: '$0,0'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNTQuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lcy1DTC5qcz81YTdlIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogU3BhbmlzaFxuICogbG9jYWxlOiBDaGlsZVxuICogYXV0aG9yIDogR3d5biBKdWRkIDogaHR0cHM6Ly9naXRodWIuY29tL2d3eW5qdWRkXG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ2VzLUNMJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICdlcy1DTCcsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJy4nLFxuICAgICAgICAgICAgZGVjaW1hbDogJywnXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAnaycsXG4gICAgICAgICAgICBtaWxsaW9uOiAnbW0nLFxuICAgICAgICAgICAgYmlsbGlvbjogJ2InLFxuICAgICAgICAgICAgdHJpbGxpb246ICd0J1xuICAgICAgICB9LFxuICAgICAgICBvcmRpbmFsOiBmdW5jdGlvbiAobnVtYmVyKSB7XG4gICAgICAgICAgICB2YXIgYiA9IG51bWJlciAlIDEwO1xuICAgICAgICAgICAgcmV0dXJuIChiID09PSAxIHx8IGIgPT09IDMpID8gJ2VyJyA6XG4gICAgICAgICAgICAgICAgKGIgPT09IDIpID8gJ2RvJyA6XG4gICAgICAgICAgICAgICAgICAgIChiID09PSA3IHx8IGIgPT09IDApID8gJ21vJyA6XG4gICAgICAgICAgICAgICAgICAgICAgICAoYiA9PT0gOCkgPyAndm8nIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYiA9PT0gOSkgPyAnbm8nIDogJ3RvJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJyQnLFxuICAgICAgICAgICAgcG9zaXRpb246ICdwcmVmaXgnLFxuICAgICAgICAgICAgY29kZTogJ0NMUCdcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgIGN1cnJlbmN5Rm9ybWF0OiAnJDAsMCdcbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0czoge1xuICAgICAgICAgICAgZm91ckRpZ2l0czogJzQgYScsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzOiAnLDAuMDAgJCcsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzTm9DdXJyZW5jeTogJywwLjAwJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoTm9EZWNpbWFsczogJywwICQnXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gQ29tbW9uSlNcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUobGFuZ3VhZ2UuY3VsdHVyZUNvZGUsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL2VzLUNMLmpzXG4vLyBtb2R1bGUgaWQgPSA1NFxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///54\n");
+
+/***/ }),
+/* 55 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/es-CO.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Spanish\n * locale: Colombia\n * author : Gwyn Judd : https://github.com/gwynjudd\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'es-CO',\n cultureCode: 'es-CO',\n delimiters: {\n thousands: '.',\n decimal: ','\n },\n abbreviations: {\n thousand: 'k',\n million: 'mm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function (number) {\n var b = number % 10;\n return (b === 1 || b === 3) ? 'er' :\n (b === 2) ? 'do' :\n (b === 7 || b === 0) ? 'mo' :\n (b === 8) ? 'vo' :\n (b === 9) ? 'no' : 'to';\n },\n currency: {\n symbol: '€',\n position: 'postfix',\n code: 'EUR'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNTUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lcy1DTy5qcz8zZjMzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogU3BhbmlzaFxuICogbG9jYWxlOiBDb2xvbWJpYVxuICogYXV0aG9yIDogR3d5biBKdWRkIDogaHR0cHM6Ly9naXRodWIuY29tL2d3eW5qdWRkXG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ2VzLUNPJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICdlcy1DTycsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJy4nLFxuICAgICAgICAgICAgZGVjaW1hbDogJywnXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAnaycsXG4gICAgICAgICAgICBtaWxsaW9uOiAnbW0nLFxuICAgICAgICAgICAgYmlsbGlvbjogJ2InLFxuICAgICAgICAgICAgdHJpbGxpb246ICd0J1xuICAgICAgICB9LFxuICAgICAgICBvcmRpbmFsOiBmdW5jdGlvbiAobnVtYmVyKSB7XG4gICAgICAgICAgICB2YXIgYiA9IG51bWJlciAlIDEwO1xuICAgICAgICAgICAgcmV0dXJuIChiID09PSAxIHx8IGIgPT09IDMpID8gJ2VyJyA6XG4gICAgICAgICAgICAgICAgKGIgPT09IDIpID8gJ2RvJyA6XG4gICAgICAgICAgICAgICAgICAgIChiID09PSA3IHx8IGIgPT09IDApID8gJ21vJyA6XG4gICAgICAgICAgICAgICAgICAgICAgICAoYiA9PT0gOCkgPyAndm8nIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYiA9PT0gOSkgPyAnbm8nIDogJ3RvJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJ+KCrCcsXG4gICAgICAgICAgICBwb3NpdGlvbjogJ3Bvc3RmaXgnLFxuICAgICAgICAgICAgY29kZTogJ0VVUidcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgIGN1cnJlbmN5Rm9ybWF0OiAnLDQgYSdcbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0czoge1xuICAgICAgICAgICAgZm91ckRpZ2l0czogJzQgYScsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzOiAnLDAuMDAgJCcsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzTm9DdXJyZW5jeTogJywwLjAwJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoTm9EZWNpbWFsczogJywwICQnXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gQ29tbW9uSlNcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUobGFuZ3VhZ2UuY3VsdHVyZUNvZGUsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL2VzLUNPLmpzXG4vLyBtb2R1bGUgaWQgPSA1NVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///55\n");
+
+/***/ }),
+/* 56 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/es-CR.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Spanish\n * locale: Costa Rica\n * author : Gwyn Judd : https://github.com/gwynjudd\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'es-CR',\n cultureCode: 'es-CR',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: 'k',\n million: 'mm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function (number) {\n var b = number % 10;\n return (b === 1 || b === 3) ? 'er' :\n (b === 2) ? 'do' :\n (b === 7 || b === 0) ? 'mo' :\n (b === 8) ? 'vo' :\n (b === 9) ? 'no' : 'to';\n },\n currency: {\n symbol: '₡',\n position: 'postfix',\n code: 'CRC'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNTYuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lcy1DUi5qcz8yZTkxIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogU3BhbmlzaFxuICogbG9jYWxlOiBDb3N0YSBSaWNhXG4gKiBhdXRob3IgOiBHd3luIEp1ZGQgOiBodHRwczovL2dpdGh1Yi5jb20vZ3d5bmp1ZGRcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnZXMtQ1InLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ2VzLUNSJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnICcsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLCdcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICdrJyxcbiAgICAgICAgICAgIG1pbGxpb246ICdtbScsXG4gICAgICAgICAgICBiaWxsaW9uOiAnYicsXG4gICAgICAgICAgICB0cmlsbGlvbjogJ3QnXG4gICAgICAgIH0sXG4gICAgICAgIG9yZGluYWw6IGZ1bmN0aW9uIChudW1iZXIpIHtcbiAgICAgICAgICAgIHZhciBiID0gbnVtYmVyICUgMTA7XG4gICAgICAgICAgICByZXR1cm4gKGIgPT09IDEgfHwgYiA9PT0gMykgPyAnZXInIDpcbiAgICAgICAgICAgICAgICAoYiA9PT0gMikgPyAnZG8nIDpcbiAgICAgICAgICAgICAgICAgICAgKGIgPT09IDcgfHwgYiA9PT0gMCkgPyAnbW8nIDpcbiAgICAgICAgICAgICAgICAgICAgICAgIChiID09PSA4KSA/ICd2bycgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChiID09PSA5KSA/ICdubycgOiAndG8nO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAn4oKhJyxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAncG9zdGZpeCcsXG4gICAgICAgICAgICBjb2RlOiAnQ1JDJ1xuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0czoge1xuICAgICAgICAgICAgY3VycmVuY3lGb3JtYXQ6ICcsNCBhJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtYXRzOiB7XG4gICAgICAgICAgICBmb3VyRGlnaXRzOiAnNCBhJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHM6ICcsMC4wMCAkJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHNOb0N1cnJlbmN5OiAnLDAuMDAnLFxuICAgICAgICAgICAgZnVsbFdpdGhOb0RlY2ltYWxzOiAnLDAgJCdcbiAgICAgICAgfVxuICAgIH07XG5cbiAgICAvLyBDb21tb25KU1xuICAgIGlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJyAmJiBtb2R1bGUuZXhwb3J0cykge1xuICAgICAgICBtb2R1bGUuZXhwb3J0cyA9IGxhbmd1YWdlO1xuICAgIH1cbiAgICAvLyBCcm93c2VyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5udW1icm8gJiYgd2luZG93Lm51bWJyby5jdWx0dXJlKSB7XG4gICAgICAgIHdpbmRvdy5udW1icm8uY3VsdHVyZShsYW5ndWFnZS5jdWx0dXJlQ29kZSwgbGFuZ3VhZ2UpO1xuICAgIH1cbn0uY2FsbCh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJyA/IHRoaXMgOiB3aW5kb3cpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMvZXMtQ1IuanNcbi8vIG1vZHVsZSBpZCA9IDU2XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///56\n");
+
+/***/ }),
+/* 57 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/es-ES.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Spanish\n * locale: Spain\n * author : Hernan Garcia : https://github.com/hgarcia\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'es-ES',\n cultureCode: 'es-ES',\n delimiters: {\n thousands: '.',\n decimal: ','\n },\n abbreviations: {\n thousand: 'k',\n million: 'mm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function (number) {\n var b = number % 10;\n return (b === 1 || b === 3) ? 'er' :\n (b === 2) ? 'do' :\n (b === 7 || b === 0) ? 'mo' :\n (b === 8) ? 'vo' :\n (b === 9) ? 'no' : 'to';\n },\n currency: {\n symbol: '€',\n position: 'postfix',\n code: 'EUR'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNTcuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lcy1FUy5qcz84ZWQxIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogU3BhbmlzaFxuICogbG9jYWxlOiBTcGFpblxuICogYXV0aG9yIDogSGVybmFuIEdhcmNpYSA6IGh0dHBzOi8vZ2l0aHViLmNvbS9oZ2FyY2lhXG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ2VzLUVTJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICdlcy1FUycsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJy4nLFxuICAgICAgICAgICAgZGVjaW1hbDogJywnXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAnaycsXG4gICAgICAgICAgICBtaWxsaW9uOiAnbW0nLFxuICAgICAgICAgICAgYmlsbGlvbjogJ2InLFxuICAgICAgICAgICAgdHJpbGxpb246ICd0J1xuICAgICAgICB9LFxuICAgICAgICBvcmRpbmFsOiBmdW5jdGlvbiAobnVtYmVyKSB7XG4gICAgICAgICAgICB2YXIgYiA9IG51bWJlciAlIDEwO1xuICAgICAgICAgICAgcmV0dXJuIChiID09PSAxIHx8IGIgPT09IDMpID8gJ2VyJyA6XG4gICAgICAgICAgICAgICAgKGIgPT09IDIpID8gJ2RvJyA6XG4gICAgICAgICAgICAgICAgICAgIChiID09PSA3IHx8IGIgPT09IDApID8gJ21vJyA6XG4gICAgICAgICAgICAgICAgICAgICAgICAoYiA9PT0gOCkgPyAndm8nIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYiA9PT0gOSkgPyAnbm8nIDogJ3RvJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJ+KCrCcsXG4gICAgICAgICAgICBwb3NpdGlvbjogJ3Bvc3RmaXgnLFxuICAgICAgICAgICAgY29kZTogJ0VVUidcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgIGN1cnJlbmN5Rm9ybWF0OiAnLDQgYSdcbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0czoge1xuICAgICAgICAgICAgZm91ckRpZ2l0czogJzQgYScsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzOiAnLDAuMDAgJCcsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzTm9DdXJyZW5jeTogJywwLjAwJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoTm9EZWNpbWFsczogJywwICQnXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gQ29tbW9uSlNcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUobGFuZ3VhZ2UuY3VsdHVyZUNvZGUsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL2VzLUVTLmpzXG4vLyBtb2R1bGUgaWQgPSA1N1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///57\n");
+
+/***/ }),
+/* 58 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/es-MX.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Spanish\n * locale: Mexico\n * author : Joe Bordes : https://github.com/joebordes\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'es-MX',\n cultureCode: 'es-MX',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'k',\n million: 'mm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function (number) {\n var b = number % 10;\n return (b === 1 || b === 3) ? 'er' :\n (b === 2) ? 'do' :\n (b === 7 || b === 0) ? 'mo' :\n (b === 8) ? 'vo' :\n (b === 9) ? 'no' : 'to';\n },\n currency: {\n symbol: '$',\n position: 'postfix',\n code: 'MXN'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNTguanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lcy1NWC5qcz8wYjhiIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogU3BhbmlzaFxuICogbG9jYWxlOiBNZXhpY29cbiAqIGF1dGhvciA6IEpvZSBCb3JkZXMgOiBodHRwczovL2dpdGh1Yi5jb20vam9lYm9yZGVzXG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ2VzLU1YJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICdlcy1NWCcsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJywnLFxuICAgICAgICAgICAgZGVjaW1hbDogJy4nXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAnaycsXG4gICAgICAgICAgICBtaWxsaW9uOiAnbW0nLFxuICAgICAgICAgICAgYmlsbGlvbjogJ2InLFxuICAgICAgICAgICAgdHJpbGxpb246ICd0J1xuICAgICAgICB9LFxuICAgICAgICBvcmRpbmFsOiBmdW5jdGlvbiAobnVtYmVyKSB7XG4gICAgICAgICAgICB2YXIgYiA9IG51bWJlciAlIDEwO1xuICAgICAgICAgICAgcmV0dXJuIChiID09PSAxIHx8IGIgPT09IDMpID8gJ2VyJyA6XG4gICAgICAgICAgICAgICAgKGIgPT09IDIpID8gJ2RvJyA6XG4gICAgICAgICAgICAgICAgICAgIChiID09PSA3IHx8IGIgPT09IDApID8gJ21vJyA6XG4gICAgICAgICAgICAgICAgICAgICAgICAoYiA9PT0gOCkgPyAndm8nIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYiA9PT0gOSkgPyAnbm8nIDogJ3RvJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJyQnLFxuICAgICAgICAgICAgcG9zaXRpb246ICdwb3N0Zml4JyxcbiAgICAgICAgICAgIGNvZGU6ICdNWE4nXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBjdXJyZW5jeUZvcm1hdDogJyw0IGEnXG4gICAgICAgIH0sXG4gICAgICAgIGZvcm1hdHM6IHtcbiAgICAgICAgICAgIGZvdXJEaWdpdHM6ICc0IGEnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsczogJywwLjAwICQnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsc05vQ3VycmVuY3k6ICcsMC4wMCcsXG4gICAgICAgICAgICBmdWxsV2l0aE5vRGVjaW1hbHM6ICcsMCAkJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lcy1NWC5qc1xuLy8gbW9kdWxlIGlkID0gNThcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///58\n");
+
+/***/ }),
+/* 59 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/es-NI.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Spanish\n * locale: Nicaragua\n * author : Gwyn Judd : https://github.com/gwynjudd\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'es-NI',\n cultureCode: 'es-NI',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'k',\n million: 'mm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function (number) {\n var b = number % 10;\n return (b === 1 || b === 3) ? 'er' :\n (b === 2) ? 'do' :\n (b === 7 || b === 0) ? 'mo' :\n (b === 8) ? 'vo' :\n (b === 9) ? 'no' : 'to';\n },\n currency: {\n symbol: 'C$',\n position: 'prefix',\n code: 'NIO'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNTkuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lcy1OSS5qcz8wYzVjIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogU3BhbmlzaFxuICogbG9jYWxlOiBOaWNhcmFndWFcbiAqIGF1dGhvciA6IEd3eW4gSnVkZCA6IGh0dHBzOi8vZ2l0aHViLmNvbS9nd3luanVkZFxuICovXG4oZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciBsYW5ndWFnZSA9IHtcbiAgICAgICAgbGFuZ0xvY2FsZUNvZGU6ICdlcy1OSScsXG4gICAgICAgIGN1bHR1cmVDb2RlOiAnZXMtTkknLFxuICAgICAgICBkZWxpbWl0ZXJzOiB7XG4gICAgICAgICAgICB0aG91c2FuZHM6ICcsJyxcbiAgICAgICAgICAgIGRlY2ltYWw6ICcuJ1xuICAgICAgICB9LFxuICAgICAgICBhYmJyZXZpYXRpb25zOiB7XG4gICAgICAgICAgICB0aG91c2FuZDogJ2snLFxuICAgICAgICAgICAgbWlsbGlvbjogJ21tJyxcbiAgICAgICAgICAgIGJpbGxpb246ICdiJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAndCdcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKG51bWJlcikge1xuICAgICAgICAgICAgdmFyIGIgPSBudW1iZXIgJSAxMDtcbiAgICAgICAgICAgIHJldHVybiAoYiA9PT0gMSB8fCBiID09PSAzKSA/ICdlcicgOlxuICAgICAgICAgICAgICAgIChiID09PSAyKSA/ICdkbycgOlxuICAgICAgICAgICAgICAgICAgICAoYiA9PT0gNyB8fCBiID09PSAwKSA/ICdtbycgOlxuICAgICAgICAgICAgICAgICAgICAgICAgKGIgPT09IDgpID8gJ3ZvJyA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGIgPT09IDkpID8gJ25vJyA6ICd0byc7XG4gICAgICAgIH0sXG4gICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgICBzeW1ib2w6ICdDJCcsXG4gICAgICAgICAgICBwb3NpdGlvbjogJ3ByZWZpeCcsXG4gICAgICAgICAgICBjb2RlOiAnTklPJ1xuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0czoge1xuICAgICAgICAgICAgY3VycmVuY3lGb3JtYXQ6ICcsNCBhJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtYXRzOiB7XG4gICAgICAgICAgICBmb3VyRGlnaXRzOiAnNCBhJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHM6ICcsMC4wMCAkJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHNOb0N1cnJlbmN5OiAnLDAuMDAnLFxuICAgICAgICAgICAgZnVsbFdpdGhOb0RlY2ltYWxzOiAnLDAgJCdcbiAgICAgICAgfVxuICAgIH07XG5cbiAgICAvLyBDb21tb25KU1xuICAgIGlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJyAmJiBtb2R1bGUuZXhwb3J0cykge1xuICAgICAgICBtb2R1bGUuZXhwb3J0cyA9IGxhbmd1YWdlO1xuICAgIH1cbiAgICAvLyBCcm93c2VyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5udW1icm8gJiYgd2luZG93Lm51bWJyby5jdWx0dXJlKSB7XG4gICAgICAgIHdpbmRvdy5udW1icm8uY3VsdHVyZShsYW5ndWFnZS5jdWx0dXJlQ29kZSwgbGFuZ3VhZ2UpO1xuICAgIH1cbn0uY2FsbCh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJyA/IHRoaXMgOiB3aW5kb3cpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMvZXMtTkkuanNcbi8vIG1vZHVsZSBpZCA9IDU5XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///59\n");
+
+/***/ }),
+/* 60 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/es-PE.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Spanish\n * locale: Peru\n * author : Gwyn Judd : https://github.com/gwynjudd\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'es-PE',\n cultureCode: 'es-PE',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'k',\n million: 'mm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function (number) {\n var b = number % 10;\n return (b === 1 || b === 3) ? 'er' :\n (b === 2) ? 'do' :\n (b === 7 || b === 0) ? 'mo' :\n (b === 8) ? 'vo' :\n (b === 9) ? 'no' : 'to';\n },\n currency: {\n symbol: 'S/.',\n position: 'prefix',\n code: 'PEN'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNjAuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lcy1QRS5qcz9lMzg5Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogU3BhbmlzaFxuICogbG9jYWxlOiBQZXJ1XG4gKiBhdXRob3IgOiBHd3luIEp1ZGQgOiBodHRwczovL2dpdGh1Yi5jb20vZ3d5bmp1ZGRcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnZXMtUEUnLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ2VzLVBFJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnLCcsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLidcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICdrJyxcbiAgICAgICAgICAgIG1pbGxpb246ICdtbScsXG4gICAgICAgICAgICBiaWxsaW9uOiAnYicsXG4gICAgICAgICAgICB0cmlsbGlvbjogJ3QnXG4gICAgICAgIH0sXG4gICAgICAgIG9yZGluYWw6IGZ1bmN0aW9uIChudW1iZXIpIHtcbiAgICAgICAgICAgIHZhciBiID0gbnVtYmVyICUgMTA7XG4gICAgICAgICAgICByZXR1cm4gKGIgPT09IDEgfHwgYiA9PT0gMykgPyAnZXInIDpcbiAgICAgICAgICAgICAgICAoYiA9PT0gMikgPyAnZG8nIDpcbiAgICAgICAgICAgICAgICAgICAgKGIgPT09IDcgfHwgYiA9PT0gMCkgPyAnbW8nIDpcbiAgICAgICAgICAgICAgICAgICAgICAgIChiID09PSA4KSA/ICd2bycgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChiID09PSA5KSA/ICdubycgOiAndG8nO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAnUy8uJyxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAncHJlZml4JyxcbiAgICAgICAgICAgIGNvZGU6ICdQRU4nXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBjdXJyZW5jeUZvcm1hdDogJyw0IGEnXG4gICAgICAgIH0sXG4gICAgICAgIGZvcm1hdHM6IHtcbiAgICAgICAgICAgIGZvdXJEaWdpdHM6ICc0IGEnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsczogJywwLjAwICQnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsc05vQ3VycmVuY3k6ICcsMC4wMCcsXG4gICAgICAgICAgICBmdWxsV2l0aE5vRGVjaW1hbHM6ICcsMCAkJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lcy1QRS5qc1xuLy8gbW9kdWxlIGlkID0gNjBcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///60\n");
+
+/***/ }),
+/* 61 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/es-PR.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Spanish\n * locale: Puerto Rico\n * author : Gwyn Judd : https://github.com/gwynjudd\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'es-PR',\n cultureCode: 'es-PR',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'k',\n million: 'mm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function (number) {\n var b = number % 10;\n return (b === 1 || b === 3) ? 'er' :\n (b === 2) ? 'do' :\n (b === 7 || b === 0) ? 'mo' :\n (b === 8) ? 'vo' :\n (b === 9) ? 'no' : 'to';\n },\n currency: {\n symbol: '$',\n position: 'prefix',\n code: 'USD'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNjEuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lcy1QUi5qcz8xZGU4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogU3BhbmlzaFxuICogbG9jYWxlOiBQdWVydG8gUmljb1xuICogYXV0aG9yIDogR3d5biBKdWRkIDogaHR0cHM6Ly9naXRodWIuY29tL2d3eW5qdWRkXG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ2VzLVBSJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICdlcy1QUicsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJywnLFxuICAgICAgICAgICAgZGVjaW1hbDogJy4nXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAnaycsXG4gICAgICAgICAgICBtaWxsaW9uOiAnbW0nLFxuICAgICAgICAgICAgYmlsbGlvbjogJ2InLFxuICAgICAgICAgICAgdHJpbGxpb246ICd0J1xuICAgICAgICB9LFxuICAgICAgICBvcmRpbmFsOiBmdW5jdGlvbiAobnVtYmVyKSB7XG4gICAgICAgICAgICB2YXIgYiA9IG51bWJlciAlIDEwO1xuICAgICAgICAgICAgcmV0dXJuIChiID09PSAxIHx8IGIgPT09IDMpID8gJ2VyJyA6XG4gICAgICAgICAgICAgICAgKGIgPT09IDIpID8gJ2RvJyA6XG4gICAgICAgICAgICAgICAgICAgIChiID09PSA3IHx8IGIgPT09IDApID8gJ21vJyA6XG4gICAgICAgICAgICAgICAgICAgICAgICAoYiA9PT0gOCkgPyAndm8nIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYiA9PT0gOSkgPyAnbm8nIDogJ3RvJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJyQnLFxuICAgICAgICAgICAgcG9zaXRpb246ICdwcmVmaXgnLFxuICAgICAgICAgICAgY29kZTogJ1VTRCdcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgIGN1cnJlbmN5Rm9ybWF0OiAnLDQgYSdcbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0czoge1xuICAgICAgICAgICAgZm91ckRpZ2l0czogJzQgYScsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzOiAnLDAuMDAgJCcsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzTm9DdXJyZW5jeTogJywwLjAwJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoTm9EZWNpbWFsczogJywwICQnXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gQ29tbW9uSlNcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUobGFuZ3VhZ2UuY3VsdHVyZUNvZGUsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL2VzLVBSLmpzXG4vLyBtb2R1bGUgaWQgPSA2MVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///61\n");
+
+/***/ }),
+/* 62 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/es-SV.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Spanish\n * locale: El Salvador\n * author : Gwyn Judd : https://github.com/gwynjudd\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'es-SV',\n cultureCode: 'es-SV',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'k',\n million: 'mm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function (number) {\n var b = number % 10;\n return (b === 1 || b === 3) ? 'er' :\n (b === 2) ? 'do' :\n (b === 7 || b === 0) ? 'mo' :\n (b === 8) ? 'vo' :\n (b === 9) ? 'no' : 'to';\n },\n currency: {\n symbol: '$',\n position: 'prefix',\n code: 'SVC'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNjIuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9lcy1TVi5qcz82ZjEwIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogU3BhbmlzaFxuICogbG9jYWxlOiBFbCBTYWx2YWRvclxuICogYXV0aG9yIDogR3d5biBKdWRkIDogaHR0cHM6Ly9naXRodWIuY29tL2d3eW5qdWRkXG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ2VzLVNWJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICdlcy1TVicsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJywnLFxuICAgICAgICAgICAgZGVjaW1hbDogJy4nXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAnaycsXG4gICAgICAgICAgICBtaWxsaW9uOiAnbW0nLFxuICAgICAgICAgICAgYmlsbGlvbjogJ2InLFxuICAgICAgICAgICAgdHJpbGxpb246ICd0J1xuICAgICAgICB9LFxuICAgICAgICBvcmRpbmFsOiBmdW5jdGlvbiAobnVtYmVyKSB7XG4gICAgICAgICAgICB2YXIgYiA9IG51bWJlciAlIDEwO1xuICAgICAgICAgICAgcmV0dXJuIChiID09PSAxIHx8IGIgPT09IDMpID8gJ2VyJyA6XG4gICAgICAgICAgICAgICAgKGIgPT09IDIpID8gJ2RvJyA6XG4gICAgICAgICAgICAgICAgICAgIChiID09PSA3IHx8IGIgPT09IDApID8gJ21vJyA6XG4gICAgICAgICAgICAgICAgICAgICAgICAoYiA9PT0gOCkgPyAndm8nIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYiA9PT0gOSkgPyAnbm8nIDogJ3RvJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJyQnLFxuICAgICAgICAgICAgcG9zaXRpb246ICdwcmVmaXgnLFxuICAgICAgICAgICAgY29kZTogJ1NWQydcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgIGN1cnJlbmN5Rm9ybWF0OiAnLDQgYSdcbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0czoge1xuICAgICAgICAgICAgZm91ckRpZ2l0czogJzQgYScsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzOiAnLDAuMDAgJCcsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzTm9DdXJyZW5jeTogJywwLjAwJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoTm9EZWNpbWFsczogJywwICQnXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gQ29tbW9uSlNcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUobGFuZ3VhZ2UuY3VsdHVyZUNvZGUsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL2VzLVNWLmpzXG4vLyBtb2R1bGUgaWQgPSA2MlxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///62\n");
+
+/***/ }),
+/* 63 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/et-EE.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Estonian\n * locale: Estonia\n * author : Illimar Tambek : https://github.com/ragulka\n *\n * Note: in Estonian, abbreviations are always separated\n * from numbers with a space\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'et-EE',\n cultureCode: 'et-EE',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: ' tuh',\n million: ' mln',\n billion: ' mld',\n trillion: ' trl'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: '€',\n position: 'postfix',\n code: 'EUR'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNjMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9ldC1FRS5qcz85NGYxIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogRXN0b25pYW5cbiAqIGxvY2FsZTogRXN0b25pYVxuICogYXV0aG9yIDogSWxsaW1hciBUYW1iZWsgOiBodHRwczovL2dpdGh1Yi5jb20vcmFndWxrYVxuICpcbiAqIE5vdGU6IGluIEVzdG9uaWFuLCBhYmJyZXZpYXRpb25zIGFyZSBhbHdheXMgc2VwYXJhdGVkXG4gKiBmcm9tIG51bWJlcnMgd2l0aCBhIHNwYWNlXG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ2V0LUVFJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICdldC1FRScsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJyAnLFxuICAgICAgICAgICAgZGVjaW1hbDogJywnXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAnIHR1aCcsXG4gICAgICAgICAgICBtaWxsaW9uOiAnIG1sbicsXG4gICAgICAgICAgICBiaWxsaW9uOiAnIG1sZCcsXG4gICAgICAgICAgICB0cmlsbGlvbjogJyB0cmwnXG4gICAgICAgIH0sXG4gICAgICAgIG9yZGluYWw6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiAnLic7XG4gICAgICAgIH0sXG4gICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgICBzeW1ib2w6ICfigqwnLFxuICAgICAgICAgICAgcG9zaXRpb246ICdwb3N0Zml4JyxcbiAgICAgICAgICAgIGNvZGU6ICdFVVInXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBjdXJyZW5jeUZvcm1hdDogJyw0IGEnXG4gICAgICAgIH0sXG4gICAgICAgIGZvcm1hdHM6IHtcbiAgICAgICAgICAgIGZvdXJEaWdpdHM6ICc0IGEnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsczogJywwLjAwICQnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsc05vQ3VycmVuY3k6ICcsMC4wMCcsXG4gICAgICAgICAgICBmdWxsV2l0aE5vRGVjaW1hbHM6ICcsMCAkJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9ldC1FRS5qc1xuLy8gbW9kdWxlIGlkID0gNjNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///63\n");
+
+/***/ }),
+/* 64 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/fa-IR.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Farsi\n * locale: Iran\n * author : neo13 : https://github.com/neo13\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'fa-IR',\n cultureCode: 'fa-IR',\n delimiters: {\n thousands: '،',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'هزار',\n million: 'میلیون',\n billion: 'میلیارد',\n trillion: 'تریلیون'\n },\n ordinal: function () {\n return 'ام';\n },\n currency: {\n symbol: '﷼',\n code: 'IRR'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNjQuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9mYS1JUi5qcz8wMmRmIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogRmFyc2lcbiAqIGxvY2FsZTogSXJhblxuICogYXV0aG9yIDogbmVvMTMgOiBodHRwczovL2dpdGh1Yi5jb20vbmVvMTNcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnZmEtSVInLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ2ZhLUlSJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAn2IwnLFxuICAgICAgICAgICAgZGVjaW1hbDogJy4nXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAn2YfYstin2LEnLFxuICAgICAgICAgICAgbWlsbGlvbjogJ9mF24zZhNuM2YjZhicsXG4gICAgICAgICAgICBiaWxsaW9uOiAn2YXbjNmE24zYp9ix2K8nLFxuICAgICAgICAgICAgdHJpbGxpb246ICfYqtix24zZhNuM2YjZhidcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuICfYp9mFJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJ++3vCcsXG4gICAgICAgICAgICBjb2RlOiAnSVJSJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9mYS1JUi5qc1xuLy8gbW9kdWxlIGlkID0gNjRcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///64\n");
+
+/***/ }),
+/* 65 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/fi-FI.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Finnish\n * locale: Finland\n * author : Sami Saada : https://github.com/samitheberber\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'fi-FI',\n cultureCode: 'fi-FI',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: 'k',\n million: 'M',\n billion: 'G',\n trillion: 'T'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: '€',\n position: 'postfix',\n code: 'EUR'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNjUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9maS1GSS5qcz82NTkxIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogRmlubmlzaFxuICogbG9jYWxlOiBGaW5sYW5kXG4gKiBhdXRob3IgOiBTYW1pIFNhYWRhIDogaHR0cHM6Ly9naXRodWIuY29tL3NhbWl0aGViZXJiZXJcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnZmktRkknLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ2ZpLUZJJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnICcsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLCdcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICdrJyxcbiAgICAgICAgICAgIG1pbGxpb246ICdNJyxcbiAgICAgICAgICAgIGJpbGxpb246ICdHJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAnVCdcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuICcuJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJ+KCrCcsXG4gICAgICAgICAgICBwb3NpdGlvbjogJ3Bvc3RmaXgnLFxuICAgICAgICAgICAgY29kZTogJ0VVUidcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgIGN1cnJlbmN5Rm9ybWF0OiAnLDQgYSdcbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0czoge1xuICAgICAgICAgICAgZm91ckRpZ2l0czogJzQgYScsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzOiAnLDAuMDAgJCcsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzTm9DdXJyZW5jeTogJywwLjAwJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoTm9EZWNpbWFsczogJywwICQnXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gQ29tbW9uSlNcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUobGFuZ3VhZ2UuY3VsdHVyZUNvZGUsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL2ZpLUZJLmpzXG4vLyBtb2R1bGUgaWQgPSA2NVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///65\n");
+
+/***/ }),
+/* 66 */
+/*!*************************************************!*\
+ !*** ./node_modules/numbro/languages/fil-PH.js ***!
+ \*************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Filipino (Pilipino)\n * locale: Philippines\n * author : Michael Abadilla : https://github.com/mjmaix\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'fil-PH',\n cultureCode: 'fil-PH',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'k',\n million: 'm',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function (number) {\n var b = number % 10;\n return (~~ (number % 100 / 10) === 1) ? 'th' :\n (b === 1) ? 'st' :\n (b === 2) ? 'nd' :\n (b === 3) ? 'rd' : 'th';\n },\n currency: {\n symbol: '₱',\n code: 'PHP'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNjYuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9maWwtUEguanM/ODA5NiJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIG51bWJyby5qcyBsYW5ndWFnZSBjb25maWd1cmF0aW9uXG4gKiBsYW5ndWFnZSA6IEZpbGlwaW5vIChQaWxpcGlubylcbiAqIGxvY2FsZTogUGhpbGlwcGluZXNcbiAqIGF1dGhvciA6IE1pY2hhZWwgQWJhZGlsbGEgOiBodHRwczovL2dpdGh1Yi5jb20vbWptYWl4XG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ2ZpbC1QSCcsXG4gICAgICAgIGN1bHR1cmVDb2RlOiAnZmlsLVBIJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnLCcsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLidcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICdrJyxcbiAgICAgICAgICAgIG1pbGxpb246ICdtJyxcbiAgICAgICAgICAgIGJpbGxpb246ICdiJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAndCdcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKG51bWJlcikge1xuICAgICAgICAgICAgdmFyIGIgPSBudW1iZXIgJSAxMDtcbiAgICAgICAgICAgIHJldHVybiAofn4gKG51bWJlciAlIDEwMCAvIDEwKSA9PT0gMSkgPyAndGgnIDpcbiAgICAgICAgICAgICAgICAoYiA9PT0gMSkgPyAnc3QnIDpcbiAgICAgICAgICAgICAgICAoYiA9PT0gMikgPyAnbmQnIDpcbiAgICAgICAgICAgICAgICAoYiA9PT0gMykgPyAncmQnIDogJ3RoJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJ+KCsScsXG4gICAgICAgICAgICBjb2RlOiAnUEhQJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9maWwtUEguanNcbi8vIG1vZHVsZSBpZCA9IDY2XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///66\n");
+
+/***/ }),
+/* 67 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/fr-CA.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : French\n * locale: Canada\n * author : Léo Renaud-Allaire : https://github.com/renaudleo\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'fr-CA',\n cultureCode: 'fr-CA',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: 'k',\n million: 'M',\n billion: 'G',\n trillion: 'T'\n },\n ordinal : function (number) {\n return number === 1 ? 'er' : 'ème';\n },\n currency: {\n symbol: '$',\n position: 'postfix',\n spaceSeparated : true,\n code: 'USD'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: '$ ,0.00',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: '$ ,0'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNjcuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9mci1DQS5qcz9hOWYzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogRnJlbmNoXG4gKiBsb2NhbGU6IENhbmFkYVxuICogYXV0aG9yIDogTMOpbyBSZW5hdWQtQWxsYWlyZSA6IGh0dHBzOi8vZ2l0aHViLmNvbS9yZW5hdWRsZW9cbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnZnItQ0EnLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ2ZyLUNBJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnICcsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLCdcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICdrJyxcbiAgICAgICAgICAgIG1pbGxpb246ICdNJyxcbiAgICAgICAgICAgIGJpbGxpb246ICdHJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAnVCdcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbCA6IGZ1bmN0aW9uIChudW1iZXIpIHtcbiAgICAgICAgICAgIHJldHVybiBudW1iZXIgPT09IDEgPyAnZXInIDogJ8OobWUnO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAnJCcsXG4gICAgICAgICAgICBwb3NpdGlvbjogJ3Bvc3RmaXgnLFxuICAgICAgICAgICAgc3BhY2VTZXBhcmF0ZWQgOiB0cnVlLFxuICAgICAgICAgICAgY29kZTogJ1VTRCdcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgIGN1cnJlbmN5Rm9ybWF0OiAnLDQgYSdcbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0czoge1xuICAgICAgICAgICAgZm91ckRpZ2l0czogJzQgYScsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzOiAnJCAsMC4wMCcsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzTm9DdXJyZW5jeTogJywwLjAwJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoTm9EZWNpbWFsczogJyQgLDAnXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gQ29tbW9uSlNcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUobGFuZ3VhZ2UuY3VsdHVyZUNvZGUsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL2ZyLUNBLmpzXG4vLyBtb2R1bGUgaWQgPSA2N1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///67\n");
+
+/***/ }),
+/* 68 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/fr-CH.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : French\n * locale: Switzerland\n * author : Adam Draper : https://github.com/adamwdraper\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'fr-CH',\n cultureCode: 'fr-CH',\n delimiters: {\n thousands: ' ',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'k',\n million: 'm',\n billion: 'b',\n trillion: 't'\n },\n ordinal : function (number) {\n return number === 1 ? 'er' : 'ème';\n },\n currency: {\n symbol: 'CHF',\n position: 'postfix',\n code: 'CHF'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNjguanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9mci1DSC5qcz9lNDRkIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogRnJlbmNoXG4gKiBsb2NhbGU6IFN3aXR6ZXJsYW5kXG4gKiBhdXRob3IgOiBBZGFtIERyYXBlciA6IGh0dHBzOi8vZ2l0aHViLmNvbS9hZGFtd2RyYXBlclxuICovXG4oZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciBsYW5ndWFnZSA9IHtcbiAgICAgICAgbGFuZ0xvY2FsZUNvZGU6ICdmci1DSCcsXG4gICAgICAgIGN1bHR1cmVDb2RlOiAnZnItQ0gnLFxuICAgICAgICBkZWxpbWl0ZXJzOiB7XG4gICAgICAgICAgICB0aG91c2FuZHM6ICcgJyxcbiAgICAgICAgICAgIGRlY2ltYWw6ICcuJ1xuICAgICAgICB9LFxuICAgICAgICBhYmJyZXZpYXRpb25zOiB7XG4gICAgICAgICAgICB0aG91c2FuZDogJ2snLFxuICAgICAgICAgICAgbWlsbGlvbjogJ20nLFxuICAgICAgICAgICAgYmlsbGlvbjogJ2InLFxuICAgICAgICAgICAgdHJpbGxpb246ICd0J1xuICAgICAgICB9LFxuICAgICAgICBvcmRpbmFsIDogZnVuY3Rpb24gKG51bWJlcikge1xuICAgICAgICAgICAgcmV0dXJuIG51bWJlciA9PT0gMSA/ICdlcicgOiAnw6htZSc7XG4gICAgICAgIH0sXG4gICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgICBzeW1ib2w6ICdDSEYnLFxuICAgICAgICAgICAgcG9zaXRpb246ICdwb3N0Zml4JyxcbiAgICAgICAgICAgIGNvZGU6ICdDSEYnXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBjdXJyZW5jeUZvcm1hdDogJyw0IGEnXG4gICAgICAgIH0sXG4gICAgICAgIGZvcm1hdHM6IHtcbiAgICAgICAgICAgIGZvdXJEaWdpdHM6ICc0IGEnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsczogJywwLjAwICQnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsc05vQ3VycmVuY3k6ICcsMC4wMCcsXG4gICAgICAgICAgICBmdWxsV2l0aE5vRGVjaW1hbHM6ICcsMCAkJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9mci1DSC5qc1xuLy8gbW9kdWxlIGlkID0gNjhcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///68\n");
+
+/***/ }),
+/* 69 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/fr-FR.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : French\n * locale: France\n * author : Adam Draper : https://github.com/adamwdraper\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'fr-FR',\n cultureCode: 'fr-FR',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: 'k',\n million: 'm',\n billion: 'b',\n trillion: 't'\n },\n ordinal : function (number) {\n return number === 1 ? 'er' : 'ème';\n },\n currency: {\n symbol: '€',\n position: 'postfix',\n code: 'EUR'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNjkuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9mci1GUi5qcz8zYjQ0Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogRnJlbmNoXG4gKiBsb2NhbGU6IEZyYW5jZVxuICogYXV0aG9yIDogQWRhbSBEcmFwZXIgOiBodHRwczovL2dpdGh1Yi5jb20vYWRhbXdkcmFwZXJcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnZnItRlInLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ2ZyLUZSJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnICcsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLCdcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICdrJyxcbiAgICAgICAgICAgIG1pbGxpb246ICdtJyxcbiAgICAgICAgICAgIGJpbGxpb246ICdiJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAndCdcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbCA6IGZ1bmN0aW9uIChudW1iZXIpIHtcbiAgICAgICAgICAgIHJldHVybiBudW1iZXIgPT09IDEgPyAnZXInIDogJ8OobWUnO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAn4oKsJyxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAncG9zdGZpeCcsXG4gICAgICAgICAgICBjb2RlOiAnRVVSJ1xuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0czoge1xuICAgICAgICAgICAgY3VycmVuY3lGb3JtYXQ6ICcsNCBhJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtYXRzOiB7XG4gICAgICAgICAgICBmb3VyRGlnaXRzOiAnNCBhJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHM6ICcsMC4wMCAkJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHNOb0N1cnJlbmN5OiAnLDAuMDAnLFxuICAgICAgICAgICAgZnVsbFdpdGhOb0RlY2ltYWxzOiAnLDAgJCdcbiAgICAgICAgfVxuICAgIH07XG5cbiAgICAvLyBDb21tb25KU1xuICAgIGlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJyAmJiBtb2R1bGUuZXhwb3J0cykge1xuICAgICAgICBtb2R1bGUuZXhwb3J0cyA9IGxhbmd1YWdlO1xuICAgIH1cbiAgICAvLyBCcm93c2VyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5udW1icm8gJiYgd2luZG93Lm51bWJyby5jdWx0dXJlKSB7XG4gICAgICAgIHdpbmRvdy5udW1icm8uY3VsdHVyZShsYW5ndWFnZS5jdWx0dXJlQ29kZSwgbGFuZ3VhZ2UpO1xuICAgIH1cbn0uY2FsbCh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJyA/IHRoaXMgOiB3aW5kb3cpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMvZnItRlIuanNcbi8vIG1vZHVsZSBpZCA9IDY5XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///69\n");
+
+/***/ }),
+/* 70 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/he-IL.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Hebrew\n * locale : IL\n * author : Eli Zehavi : https://github.com/eli-zehavi\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'he-IL',\n cultureCode: 'he-IL',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'אלף',\n million: 'מליון',\n billion: 'בליון',\n trillion: 'טריליון'\n },\n currency: {\n symbol: '₪',\n position: 'prefix',\n code: 'ILS'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: '₪ ,0.00',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: '₪ ,0'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNzAuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9oZS1JTC5qcz9lZDQwIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogSGVicmV3XG4gKiBsb2NhbGUgOiBJTFxuICogYXV0aG9yIDogRWxpIFplaGF2aSA6IGh0dHBzOi8vZ2l0aHViLmNvbS9lbGktemVoYXZpXG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ2hlLUlMJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICdoZS1JTCcsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJywnLFxuICAgICAgICAgICAgZGVjaW1hbDogJy4nXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAn15DXnNejJyxcbiAgICAgICAgICAgIG1pbGxpb246ICfXntec15nXldefJyxcbiAgICAgICAgICAgIGJpbGxpb246ICfXkdec15nXldefJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAn15jXqNeZ15zXmdeV158nXG4gICAgICAgIH0sXG4gICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgICBzeW1ib2w6ICfigqonLFxuICAgICAgICAgICAgcG9zaXRpb246ICdwcmVmaXgnLFxuICAgICAgICAgICAgY29kZTogJ0lMUydcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgIGN1cnJlbmN5Rm9ybWF0OiAnLDQgYSdcbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0czoge1xuICAgICAgICAgICAgZm91ckRpZ2l0czogJzQgYScsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzOiAn4oKqICwwLjAwJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHNOb0N1cnJlbmN5OiAnLDAuMDAnLFxuICAgICAgICAgICAgZnVsbFdpdGhOb0RlY2ltYWxzOiAn4oKqICwwJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9oZS1JTC5qc1xuLy8gbW9kdWxlIGlkID0gNzBcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///70\n");
+
+/***/ }),
+/* 71 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/hu-HU.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Hungarian\n * locale: Hungary\n * author : Peter Bakondy : https://github.com/pbakondy\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'hu-HU',\n cultureCode: 'hu-HU',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: 'E', // ezer\n million: 'M', // millió\n billion: 'Mrd', // milliárd\n trillion: 'T' // trillió\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: ' Ft',\n position: 'postfix',\n code: 'HUF'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNzEuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9odS1IVS5qcz8wYTQ5Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogSHVuZ2FyaWFuXG4gKiBsb2NhbGU6IEh1bmdhcnlcbiAqIGF1dGhvciA6IFBldGVyIEJha29uZHkgOiBodHRwczovL2dpdGh1Yi5jb20vcGJha29uZHlcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnaHUtSFUnLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ2h1LUhVJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnICcsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLCdcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICdFJywgIC8vIGV6ZXJcbiAgICAgICAgICAgIG1pbGxpb246ICdNJywgICAvLyBtaWxsacOzXG4gICAgICAgICAgICBiaWxsaW9uOiAnTXJkJywgLy8gbWlsbGnDoXJkXG4gICAgICAgICAgICB0cmlsbGlvbjogJ1QnICAgLy8gdHJpbGxpw7NcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuICcuJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJyBGdCcsXG4gICAgICAgICAgICBwb3NpdGlvbjogJ3Bvc3RmaXgnLFxuICAgICAgICAgICAgY29kZTogJ0hVRidcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgIGN1cnJlbmN5Rm9ybWF0OiAnLDQgYSdcbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0czoge1xuICAgICAgICAgICAgZm91ckRpZ2l0czogJzQgYScsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzOiAnLDAuMDAgJCcsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzTm9DdXJyZW5jeTogJywwLjAwJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoTm9EZWNpbWFsczogJywwICQnXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gQ29tbW9uSlNcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUobGFuZ3VhZ2UuY3VsdHVyZUNvZGUsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL2h1LUhVLmpzXG4vLyBtb2R1bGUgaWQgPSA3MVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///71\n");
+
+/***/ }),
+/* 72 */
+/*!*********************************************!*\
+ !*** ./node_modules/numbro/languages/id.js ***!
+ \*********************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Indonesian\n * author : Tim McIntosh (StayinFront NZ)\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'id',\n cultureCode: 'id',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'r',\n million: 'j',\n billion: 'm',\n trillion: 't'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: 'Rp',\n code: 'IDR'\n }\n };\n\n // Node\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture('id', language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNzIuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9pZC5qcz9mOThmIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogSW5kb25lc2lhblxuICogYXV0aG9yIDogVGltIE1jSW50b3NoIChTdGF5aW5Gcm9udCBOWilcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnaWQnLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ2lkJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnLCcsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLidcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICdyJyxcbiAgICAgICAgICAgIG1pbGxpb246ICdqJyxcbiAgICAgICAgICAgIGJpbGxpb246ICdtJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAndCdcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuICcuJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJ1JwJyxcbiAgICAgICAgICAgIGNvZGU6ICdJRFInXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gTm9kZVxuICAgIGlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJyAmJiBtb2R1bGUuZXhwb3J0cykge1xuICAgICAgICBtb2R1bGUuZXhwb3J0cyA9IGxhbmd1YWdlO1xuICAgIH1cbiAgICAvLyBCcm93c2VyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5udW1icm8gJiYgd2luZG93Lm51bWJyby5jdWx0dXJlKSB7XG4gICAgICAgIHdpbmRvdy5udW1icm8uY3VsdHVyZSgnaWQnLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9pZC5qc1xuLy8gbW9kdWxlIGlkID0gNzJcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///72\n");
+
+/***/ }),
+/* 73 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/it-CH.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Italian\n * locale: Switzerland\n * author : Tim McIntosh (StayinFront NZ)\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'it-CH',\n cultureCode: 'it-CH',\n delimiters: {\n thousands: '\\'',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'mila',\n million: 'mil',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function () {\n return '°';\n },\n currency: {\n symbol: 'CHF',\n code: 'CHF'\n }\n };\n\n // Node\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture('it-CH', language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNzMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9pdC1DSC5qcz8zN2Q0Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogSXRhbGlhblxuICogbG9jYWxlOiBTd2l0emVybGFuZFxuICogYXV0aG9yIDogVGltIE1jSW50b3NoIChTdGF5aW5Gcm9udCBOWilcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnaXQtQ0gnLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ2l0LUNIJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnXFwnJyxcbiAgICAgICAgICAgIGRlY2ltYWw6ICcuJ1xuICAgICAgICB9LFxuICAgICAgICBhYmJyZXZpYXRpb25zOiB7XG4gICAgICAgICAgICB0aG91c2FuZDogJ21pbGEnLFxuICAgICAgICAgICAgbWlsbGlvbjogJ21pbCcsXG4gICAgICAgICAgICBiaWxsaW9uOiAnYicsXG4gICAgICAgICAgICB0cmlsbGlvbjogJ3QnXG4gICAgICAgIH0sXG4gICAgICAgIG9yZGluYWw6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiAnwrAnO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAnQ0hGJyxcbiAgICAgICAgICAgIGNvZGU6ICdDSEYnXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gTm9kZVxuICAgIGlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJyAmJiBtb2R1bGUuZXhwb3J0cykge1xuICAgICAgICBtb2R1bGUuZXhwb3J0cyA9IGxhbmd1YWdlO1xuICAgIH1cbiAgICAvLyBCcm93c2VyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5udW1icm8gJiYgd2luZG93Lm51bWJyby5jdWx0dXJlKSB7XG4gICAgICAgIHdpbmRvdy5udW1icm8uY3VsdHVyZSgnaXQtQ0gnLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9pdC1DSC5qc1xuLy8gbW9kdWxlIGlkID0gNzNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///73\n");
+
+/***/ }),
+/* 74 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/it-IT.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Italian\n * locale: Italy\n * author : Giacomo Trombi : http://cinquepunti.it\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'it-IT',\n cultureCode: 'it-IT',\n delimiters: {\n thousands: '.',\n decimal: ','\n },\n abbreviations: {\n thousand: 'mila',\n million: 'mil',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function () {\n return 'º';\n },\n currency: {\n symbol: '€',\n position: 'postfix',\n code: 'EUR'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNzQuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9pdC1JVC5qcz81NWE3Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogSXRhbGlhblxuICogbG9jYWxlOiBJdGFseVxuICogYXV0aG9yIDogR2lhY29tbyBUcm9tYmkgOiBodHRwOi8vY2lucXVlcHVudGkuaXRcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnaXQtSVQnLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ2l0LUlUJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnLicsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLCdcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICdtaWxhJyxcbiAgICAgICAgICAgIG1pbGxpb246ICdtaWwnLFxuICAgICAgICAgICAgYmlsbGlvbjogJ2InLFxuICAgICAgICAgICAgdHJpbGxpb246ICd0J1xuICAgICAgICB9LFxuICAgICAgICBvcmRpbmFsOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gJ8K6JztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJ+KCrCcsXG4gICAgICAgICAgICBwb3NpdGlvbjogJ3Bvc3RmaXgnLFxuICAgICAgICAgICAgY29kZTogJ0VVUidcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgIGN1cnJlbmN5Rm9ybWF0OiAnLDQgYSdcbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0czoge1xuICAgICAgICAgICAgZm91ckRpZ2l0czogJzQgYScsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzOiAnLDAuMDAgJCcsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzTm9DdXJyZW5jeTogJywwLjAwJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoTm9EZWNpbWFsczogJywwICQnXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gQ29tbW9uSlNcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUobGFuZ3VhZ2UuY3VsdHVyZUNvZGUsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL2l0LUlULmpzXG4vLyBtb2R1bGUgaWQgPSA3NFxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///74\n");
+
+/***/ }),
+/* 75 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/ja-JP.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Japanese\n * locale: Japan\n * author : teppeis : https://github.com/teppeis\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'ja-JP',\n cultureCode: 'ja-JP',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: '千',\n million: '百万',\n billion: '十億',\n trillion: '兆'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: '¥',\n position: 'prefix',\n code: 'JPY'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: '$ ,0.00',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: '$ ,0'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNzUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9qYS1KUC5qcz84Zjc0Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogSmFwYW5lc2VcbiAqIGxvY2FsZTogSmFwYW5cbiAqIGF1dGhvciA6IHRlcHBlaXMgOiBodHRwczovL2dpdGh1Yi5jb20vdGVwcGVpc1xuICovXG4oZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciBsYW5ndWFnZSA9IHtcbiAgICAgICAgbGFuZ0xvY2FsZUNvZGU6ICdqYS1KUCcsXG4gICAgICAgIGN1bHR1cmVDb2RlOiAnamEtSlAnLFxuICAgICAgICBkZWxpbWl0ZXJzOiB7XG4gICAgICAgICAgICB0aG91c2FuZHM6ICcsJyxcbiAgICAgICAgICAgIGRlY2ltYWw6ICcuJ1xuICAgICAgICB9LFxuICAgICAgICBhYmJyZXZpYXRpb25zOiB7XG4gICAgICAgICAgICB0aG91c2FuZDogJ+WNgycsXG4gICAgICAgICAgICBtaWxsaW9uOiAn55m+5LiHJyxcbiAgICAgICAgICAgIGJpbGxpb246ICfljYHlhIQnLFxuICAgICAgICAgICAgdHJpbGxpb246ICflhYYnXG4gICAgICAgIH0sXG4gICAgICAgIG9yZGluYWw6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiAnLic7XG4gICAgICAgIH0sXG4gICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgICBzeW1ib2w6ICfCpScsXG4gICAgICAgICAgICBwb3NpdGlvbjogJ3ByZWZpeCcsXG4gICAgICAgICAgICBjb2RlOiAnSlBZJ1xuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0czoge1xuICAgICAgICAgICAgY3VycmVuY3lGb3JtYXQ6ICcsNCBhJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtYXRzOiB7XG4gICAgICAgICAgICBmb3VyRGlnaXRzOiAnNCBhJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHM6ICckICwwLjAwJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHNOb0N1cnJlbmN5OiAnLDAuMDAnLFxuICAgICAgICAgICAgZnVsbFdpdGhOb0RlY2ltYWxzOiAnJCAsMCdcbiAgICAgICAgfVxuICAgIH07XG5cbiAgICAvLyBDb21tb25KU1xuICAgIGlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJyAmJiBtb2R1bGUuZXhwb3J0cykge1xuICAgICAgICBtb2R1bGUuZXhwb3J0cyA9IGxhbmd1YWdlO1xuICAgIH1cbiAgICAvLyBCcm93c2VyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5udW1icm8gJiYgd2luZG93Lm51bWJyby5jdWx0dXJlKSB7XG4gICAgICAgIHdpbmRvdy5udW1icm8uY3VsdHVyZShsYW5ndWFnZS5jdWx0dXJlQ29kZSwgbGFuZ3VhZ2UpO1xuICAgIH1cbn0uY2FsbCh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJyA/IHRoaXMgOiB3aW5kb3cpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMvamEtSlAuanNcbi8vIG1vZHVsZSBpZCA9IDc1XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///75\n");
+
+/***/ }),
+/* 76 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/ko-KR.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Korean\n * author (numbro.js Version): Randy Wilander : https://github.com/rocketedaway\n * author (numeral.js Version) : Rich Daley : https://github.com/pedantic-git\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'ko-KR',\n cultureCode: 'ko-KR',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: '천',\n million: '백만',\n billion: '십억',\n trillion: '일조'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: '₩',\n code: 'KPW'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNzYuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9rby1LUi5qcz9iNWExIl0sInNvdXJjZXNDb250ZW50IjpbIu+7vy8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogS29yZWFuXG4gKiBhdXRob3IgKG51bWJyby5qcyBWZXJzaW9uKTogUmFuZHkgV2lsYW5kZXIgOiBodHRwczovL2dpdGh1Yi5jb20vcm9ja2V0ZWRhd2F5XG4gKiBhdXRob3IgKG51bWVyYWwuanMgVmVyc2lvbikgOiBSaWNoIERhbGV5IDogaHR0cHM6Ly9naXRodWIuY29tL3BlZGFudGljLWdpdFxuICovXG4oZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciBsYW5ndWFnZSA9IHtcbiAgICAgICAgbGFuZ0xvY2FsZUNvZGU6ICdrby1LUicsXG4gICAgICAgIGN1bHR1cmVDb2RlOiAna28tS1InLFxuICAgICAgICBkZWxpbWl0ZXJzOiB7XG4gICAgICAgICAgICB0aG91c2FuZHM6ICcsJyxcbiAgICAgICAgICAgIGRlY2ltYWw6ICcuJ1xuICAgICAgICB9LFxuICAgICAgICBhYmJyZXZpYXRpb25zOiB7XG4gICAgICAgICAgICB0aG91c2FuZDogJ+yynCcsXG4gICAgICAgICAgICBtaWxsaW9uOiAn67Cx66eMJyxcbiAgICAgICAgICAgIGJpbGxpb246ICfsi63slrUnLFxuICAgICAgICAgICAgdHJpbGxpb246ICfsnbzsobAnXG4gICAgICAgIH0sXG4gICAgICAgIG9yZGluYWw6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiAnLic7XG4gICAgICAgIH0sXG4gICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgICBzeW1ib2w6ICfigqknLFxuICAgICAgICAgICAgY29kZTogJ0tQVydcbiAgICAgICAgfVxuICAgIH07XG5cbiAgICAvLyBDb21tb25KU1xuICAgIGlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJyAmJiBtb2R1bGUuZXhwb3J0cykge1xuICAgICAgICBtb2R1bGUuZXhwb3J0cyA9IGxhbmd1YWdlO1xuICAgIH1cbiAgICAvLyBCcm93c2VyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5udW1icm8gJiYgd2luZG93Lm51bWJyby5jdWx0dXJlKSB7XG4gICAgICAgIHdpbmRvdy5udW1icm8uY3VsdHVyZShsYW5ndWFnZS5jdWx0dXJlQ29kZSwgbGFuZ3VhZ2UpO1xuICAgIH1cbn0uY2FsbCh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJyA/IHRoaXMgOiB3aW5kb3cpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMva28tS1IuanNcbi8vIG1vZHVsZSBpZCA9IDc2XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///76\n");
+
+/***/ }),
+/* 77 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/lv-LV.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Latvian\n * locale: Latvia\n * author : Lauris Bukšis-Haberkorns : https://github.com/Lafriks\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'lv-LV',\n cultureCode: 'lv-LV',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: ' tūkst.',\n million: ' milj.',\n billion: ' mljrd.',\n trillion: ' trilj.'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: '€',\n position: 'postfix',\n code: 'EUR'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNzcuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9sdi1MVi5qcz9jOWVhIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogTGF0dmlhblxuICogbG9jYWxlOiBMYXR2aWFcbiAqIGF1dGhvciA6IExhdXJpcyBCdWvFoWlzLUhhYmVya29ybnMgOiBodHRwczovL2dpdGh1Yi5jb20vTGFmcmlrc1xuICovXG4oZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciBsYW5ndWFnZSA9IHtcbiAgICAgICAgbGFuZ0xvY2FsZUNvZGU6ICdsdi1MVicsXG4gICAgICAgIGN1bHR1cmVDb2RlOiAnbHYtTFYnLFxuICAgICAgICBkZWxpbWl0ZXJzOiB7XG4gICAgICAgICAgICB0aG91c2FuZHM6ICcgJyxcbiAgICAgICAgICAgIGRlY2ltYWw6ICcsJ1xuICAgICAgICB9LFxuICAgICAgICBhYmJyZXZpYXRpb25zOiB7XG4gICAgICAgICAgICB0aG91c2FuZDogJyB0xatrc3QuJyxcbiAgICAgICAgICAgIG1pbGxpb246ICcgbWlsai4nLFxuICAgICAgICAgICAgYmlsbGlvbjogJyBtbGpyZC4nLFxuICAgICAgICAgICAgdHJpbGxpb246ICcgdHJpbGouJ1xuICAgICAgICB9LFxuICAgICAgICBvcmRpbmFsOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gJy4nO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAn4oKsJyxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAncG9zdGZpeCcsXG4gICAgICAgICAgICBjb2RlOiAnRVVSJ1xuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0czoge1xuICAgICAgICAgICAgY3VycmVuY3lGb3JtYXQ6ICcsNCBhJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtYXRzOiB7XG4gICAgICAgICAgICBmb3VyRGlnaXRzOiAnNCBhJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHM6ICcsMC4wMCAkJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHNOb0N1cnJlbmN5OiAnLDAuMDAnLFxuICAgICAgICAgICAgZnVsbFdpdGhOb0RlY2ltYWxzOiAnLDAgJCdcbiAgICAgICAgfVxuICAgIH07XG4gICAgLy8gQ29tbW9uSlNcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUobGFuZ3VhZ2UuY3VsdHVyZUNvZGUsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL2x2LUxWLmpzXG4vLyBtb2R1bGUgaWQgPSA3N1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///77\n");
+
+/***/ }),
+/* 78 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/nb-NO.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language: Norwegian Bokmål\n * locale: Norway\n * author : Benjamin Van Ryseghem\n */\n(function() {\n 'use strict';\n\n var language = {\n langLocaleCode: 'nb-NO',\n cultureCode: 'nb-NO',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: 't',\n million: 'M',\n billion: 'md',\n trillion: 't'\n },\n currency: {\n symbol: 'kr',\n position: 'postfix',\n code: 'NOK'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNzguanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9uYi1OTy5qcz80ZGMzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlOiBOb3J3ZWdpYW4gQm9rbcOlbFxuICogbG9jYWxlOiBOb3J3YXlcbiAqIGF1dGhvciA6IEJlbmphbWluIFZhbiBSeXNlZ2hlbVxuICovXG4oZnVuY3Rpb24oKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ25iLU5PJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICduYi1OTycsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJyAnLFxuICAgICAgICAgICAgZGVjaW1hbDogJywnXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAndCcsXG4gICAgICAgICAgICBtaWxsaW9uOiAnTScsXG4gICAgICAgICAgICBiaWxsaW9uOiAnbWQnLFxuICAgICAgICAgICAgdHJpbGxpb246ICd0J1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAna3InLFxuICAgICAgICAgICAgcG9zaXRpb246ICdwb3N0Zml4JyxcbiAgICAgICAgICAgIGNvZGU6ICdOT0snXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBjdXJyZW5jeUZvcm1hdDogJyw0IGEnXG4gICAgICAgIH0sXG4gICAgICAgIGZvcm1hdHM6IHtcbiAgICAgICAgICAgIGZvdXJEaWdpdHM6ICc0IGEnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsczogJywwLjAwICQnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsc05vQ3VycmVuY3k6ICcsMC4wMCcsXG4gICAgICAgICAgICBmdWxsV2l0aE5vRGVjaW1hbHM6ICcsMCAkJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9uYi1OTy5qc1xuLy8gbW9kdWxlIGlkID0gNzhcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///78\n");
+
+/***/ }),
+/* 79 */
+/*!*********************************************!*\
+ !*** ./node_modules/numbro/languages/nb.js ***!
+ \*********************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Norwegian Bokmål (nb)\n * author : Tim McIntosh (StayinFront NZ)\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'nb',\n cultureCode: 'nb',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: 't',\n million: 'mil',\n billion: 'mia',\n trillion: 'b'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: 'kr',\n code: 'NOK'\n }\n };\n\n // Node\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture('nb', language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNzkuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9uYi5qcz9jMjA1Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogTm9yd2VnaWFuIEJva23DpWwgKG5iKVxuICogYXV0aG9yIDogVGltIE1jSW50b3NoIChTdGF5aW5Gcm9udCBOWilcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnbmInLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ25iJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnICcsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLCdcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICd0JyxcbiAgICAgICAgICAgIG1pbGxpb246ICdtaWwnLFxuICAgICAgICAgICAgYmlsbGlvbjogJ21pYScsXG4gICAgICAgICAgICB0cmlsbGlvbjogJ2InXG4gICAgICAgIH0sXG4gICAgICAgIG9yZGluYWw6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiAnLic7XG4gICAgICAgIH0sXG4gICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgICBzeW1ib2w6ICdrcicsXG4gICAgICAgICAgICBjb2RlOiAnTk9LJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIE5vZGVcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUoJ25iJywgbGFuZ3VhZ2UpO1xuICAgIH1cbn0uY2FsbCh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJyA/IHRoaXMgOiB3aW5kb3cpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMvbmIuanNcbi8vIG1vZHVsZSBpZCA9IDc5XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///79\n");
+
+/***/ }),
+/* 80 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/nl-BE.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Dutch\n * locale: Belgium\n * author : Dieter Luypaert : https://github.com/moeriki\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'nl-BE',\n cultureCode: 'nl-BE',\n delimiters: {\n thousands: ' ',\n decimal : ','\n },\n abbreviations: {\n thousand : 'k',\n million : 'mln',\n billion : 'mld',\n trillion : 'bln'\n },\n ordinal : function (number) {\n var remainder = number % 100;\n return (number !== 0 && remainder <= 1 || remainder === 8 || remainder >= 20) ? 'ste' : 'de';\n },\n currency: {\n symbol: '€',\n position: 'postfix',\n code: 'EUR'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiODAuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9ubC1CRS5qcz82OGIwIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogRHV0Y2hcbiAqIGxvY2FsZTogQmVsZ2l1bVxuICogYXV0aG9yIDogRGlldGVyIEx1eXBhZXJ0IDogaHR0cHM6Ly9naXRodWIuY29tL21vZXJpa2lcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnbmwtQkUnLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ25sLUJFJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnICcsXG4gICAgICAgICAgICBkZWNpbWFsICA6ICcsJ1xuICAgICAgICB9LFxuICAgICAgICBhYmJyZXZpYXRpb25zOiB7XG4gICAgICAgICAgICB0aG91c2FuZCA6ICdrJyxcbiAgICAgICAgICAgIG1pbGxpb24gIDogJ21sbicsXG4gICAgICAgICAgICBiaWxsaW9uICA6ICdtbGQnLFxuICAgICAgICAgICAgdHJpbGxpb24gOiAnYmxuJ1xuICAgICAgICB9LFxuICAgICAgICBvcmRpbmFsIDogZnVuY3Rpb24gKG51bWJlcikge1xuICAgICAgICAgICAgdmFyIHJlbWFpbmRlciA9IG51bWJlciAlIDEwMDtcbiAgICAgICAgICAgIHJldHVybiAobnVtYmVyICE9PSAwICYmIHJlbWFpbmRlciA8PSAxIHx8IHJlbWFpbmRlciA9PT0gOCB8fCByZW1haW5kZXIgPj0gMjApID8gJ3N0ZScgOiAnZGUnO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAn4oKsJyxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAncG9zdGZpeCcsXG4gICAgICAgICAgICBjb2RlOiAnRVVSJ1xuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0czoge1xuICAgICAgICAgICAgY3VycmVuY3lGb3JtYXQ6ICcsNCBhJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtYXRzOiB7XG4gICAgICAgICAgICBmb3VyRGlnaXRzOiAnNCBhJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHM6ICcsMC4wMCAkJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHNOb0N1cnJlbmN5OiAnLDAuMDAnLFxuICAgICAgICAgICAgZnVsbFdpdGhOb0RlY2ltYWxzOiAnLDAgJCdcbiAgICAgICAgfVxuICAgIH07XG5cbiAgICAvLyBDb21tb25KU1xuICAgIGlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJyAmJiBtb2R1bGUuZXhwb3J0cykge1xuICAgICAgICBtb2R1bGUuZXhwb3J0cyA9IGxhbmd1YWdlO1xuICAgIH1cbiAgICAvLyBCcm93c2VyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5udW1icm8gJiYgd2luZG93Lm51bWJyby5jdWx0dXJlKSB7XG4gICAgICAgIHdpbmRvdy5udW1icm8uY3VsdHVyZShsYW5ndWFnZS5jdWx0dXJlQ29kZSwgbGFuZ3VhZ2UpO1xuICAgIH1cbn0uY2FsbCh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJyA/IHRoaXMgOiB3aW5kb3cpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMvbmwtQkUuanNcbi8vIG1vZHVsZSBpZCA9IDgwXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///80\n");
+
+/***/ }),
+/* 81 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/nl-NL.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Dutch\n * locale: Netherlands\n * author : Dave Clayton : https://github.com/davedx\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'nl-NL',\n cultureCode: 'nl-NL',\n delimiters: {\n thousands: '.',\n decimal : ','\n },\n abbreviations: {\n thousand : 'k',\n million : 'mln',\n billion : 'mrd',\n trillion : 'bln'\n },\n ordinal : function (number) {\n var remainder = number % 100;\n return (number !== 0 && remainder <= 1 || remainder === 8 || remainder >= 20) ? 'ste' : 'de';\n },\n currency: {\n symbol: '€',\n position: 'postfix',\n code: 'EUR'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiODEuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9ubC1OTC5qcz9hMTc2Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogRHV0Y2hcbiAqIGxvY2FsZTogTmV0aGVybGFuZHNcbiAqIGF1dGhvciA6IERhdmUgQ2xheXRvbiA6IGh0dHBzOi8vZ2l0aHViLmNvbS9kYXZlZHhcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnbmwtTkwnLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ25sLU5MJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnLicsXG4gICAgICAgICAgICBkZWNpbWFsICA6ICcsJ1xuICAgICAgICB9LFxuICAgICAgICBhYmJyZXZpYXRpb25zOiB7XG4gICAgICAgICAgICB0aG91c2FuZCA6ICdrJyxcbiAgICAgICAgICAgIG1pbGxpb24gIDogJ21sbicsXG4gICAgICAgICAgICBiaWxsaW9uICA6ICdtcmQnLFxuICAgICAgICAgICAgdHJpbGxpb24gOiAnYmxuJ1xuICAgICAgICB9LFxuICAgICAgICBvcmRpbmFsIDogZnVuY3Rpb24gKG51bWJlcikge1xuICAgICAgICAgICAgdmFyIHJlbWFpbmRlciA9IG51bWJlciAlIDEwMDtcbiAgICAgICAgICAgIHJldHVybiAobnVtYmVyICE9PSAwICYmIHJlbWFpbmRlciA8PSAxIHx8IHJlbWFpbmRlciA9PT0gOCB8fCByZW1haW5kZXIgPj0gMjApID8gJ3N0ZScgOiAnZGUnO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAn4oKsJyxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAncG9zdGZpeCcsXG4gICAgICAgICAgICBjb2RlOiAnRVVSJ1xuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0czoge1xuICAgICAgICAgICAgY3VycmVuY3lGb3JtYXQ6ICcsNCBhJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtYXRzOiB7XG4gICAgICAgICAgICBmb3VyRGlnaXRzOiAnNCBhJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHM6ICcsMC4wMCAkJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHNOb0N1cnJlbmN5OiAnLDAuMDAnLFxuICAgICAgICAgICAgZnVsbFdpdGhOb0RlY2ltYWxzOiAnLDAgJCdcbiAgICAgICAgfVxuICAgIH07XG5cbiAgICAvLyBDb21tb25KU1xuICAgIGlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJyAmJiBtb2R1bGUuZXhwb3J0cykge1xuICAgICAgICBtb2R1bGUuZXhwb3J0cyA9IGxhbmd1YWdlO1xuICAgIH1cbiAgICAvLyBCcm93c2VyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5udW1icm8gJiYgd2luZG93Lm51bWJyby5jdWx0dXJlKSB7XG4gICAgICAgIHdpbmRvdy5udW1icm8uY3VsdHVyZShsYW5ndWFnZS5jdWx0dXJlQ29kZSwgbGFuZ3VhZ2UpO1xuICAgIH1cbn0uY2FsbCh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJyA/IHRoaXMgOiB3aW5kb3cpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMvbmwtTkwuanNcbi8vIG1vZHVsZSBpZCA9IDgxXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///81\n");
+
+/***/ }),
+/* 82 */
+/*!*********************************************!*\
+ !*** ./node_modules/numbro/languages/nn.js ***!
+ \*********************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Norwegian Nynorsk (nn)\n * author : Tim McIntosh (StayinFront NZ)\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'nn',\n cultureCode: 'nn',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: 't',\n million: 'mil',\n billion: 'mia',\n trillion: 'b'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: 'kr',\n code: 'NOK'\n }\n };\n\n // Node\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.language) {\n window.numbro.language('nn', language);\n }\n}());\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiODIuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9ubi5qcz83ZGYwIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogTm9yd2VnaWFuIE55bm9yc2sgKG5uKVxuICogYXV0aG9yIDogVGltIE1jSW50b3NoIChTdGF5aW5Gcm9udCBOWilcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnbm4nLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ25uJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnICcsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLCdcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICd0JyxcbiAgICAgICAgICAgIG1pbGxpb246ICdtaWwnLFxuICAgICAgICAgICAgYmlsbGlvbjogJ21pYScsXG4gICAgICAgICAgICB0cmlsbGlvbjogJ2InXG4gICAgICAgIH0sXG4gICAgICAgIG9yZGluYWw6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiAnLic7XG4gICAgICAgIH0sXG4gICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgICBzeW1ib2w6ICdrcicsXG4gICAgICAgICAgICBjb2RlOiAnTk9LJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIE5vZGVcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8ubGFuZ3VhZ2UpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5sYW5ndWFnZSgnbm4nLCBsYW5ndWFnZSk7XG4gICAgfVxufSgpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMvbm4uanNcbi8vIG1vZHVsZSBpZCA9IDgyXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///82\n");
+
+/***/ }),
+/* 83 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/pl-PL.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Polish\n * locale : Poland\n * author : Dominik Bulaj : https://github.com/dominikbulaj\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'pl-PL',\n cultureCode: 'pl-PL',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: 'tys.',\n million: 'mln',\n billion: 'mld',\n trillion: 'bln'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: ' zł',\n position: 'postfix',\n code: 'PLN'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiODMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9wbC1QTC5qcz8zNGI4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogUG9saXNoXG4gKiBsb2NhbGUgOiBQb2xhbmRcbiAqIGF1dGhvciA6IERvbWluaWsgQnVsYWogOiBodHRwczovL2dpdGh1Yi5jb20vZG9taW5pa2J1bGFqXG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ3BsLVBMJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICdwbC1QTCcsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJyAnLFxuICAgICAgICAgICAgZGVjaW1hbDogJywnXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAndHlzLicsXG4gICAgICAgICAgICBtaWxsaW9uOiAnbWxuJyxcbiAgICAgICAgICAgIGJpbGxpb246ICdtbGQnLFxuICAgICAgICAgICAgdHJpbGxpb246ICdibG4nXG4gICAgICAgIH0sXG4gICAgICAgIG9yZGluYWw6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiAnLic7XG4gICAgICAgIH0sXG4gICAgICAgIGN1cnJlbmN5OiB7XG4gICAgICAgICAgICBzeW1ib2w6ICcgesWCJyxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAncG9zdGZpeCcsXG4gICAgICAgICAgICBjb2RlOiAnUExOJ1xuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0czoge1xuICAgICAgICAgICAgY3VycmVuY3lGb3JtYXQ6ICcsNCBhJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtYXRzOiB7XG4gICAgICAgICAgICBmb3VyRGlnaXRzOiAnNCBhJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHM6ICcsMC4wMCAkJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHNOb0N1cnJlbmN5OiAnLDAuMDAnLFxuICAgICAgICAgICAgZnVsbFdpdGhOb0RlY2ltYWxzOiAnLDAgJCdcbiAgICAgICAgfVxuICAgIH07XG5cbiAgICAvLyBDb21tb25KU1xuICAgIGlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJyAmJiBtb2R1bGUuZXhwb3J0cykge1xuICAgICAgICBtb2R1bGUuZXhwb3J0cyA9IGxhbmd1YWdlO1xuICAgIH1cbiAgICAvLyBCcm93c2VyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5udW1icm8gJiYgd2luZG93Lm51bWJyby5jdWx0dXJlKSB7XG4gICAgICAgIHdpbmRvdy5udW1icm8uY3VsdHVyZShsYW5ndWFnZS5jdWx0dXJlQ29kZSwgbGFuZ3VhZ2UpO1xuICAgIH1cbn0uY2FsbCh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJyA/IHRoaXMgOiB3aW5kb3cpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMvcGwtUEwuanNcbi8vIG1vZHVsZSBpZCA9IDgzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///83\n");
+
+/***/ }),
+/* 84 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/pt-BR.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Portuguese\n * locale : Brazil\n * author : Ramiro Varandas Jr : https://github.com/ramirovjr\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'pt-BR',\n cultureCode: 'pt-BR',\n delimiters: {\n thousands: '.',\n decimal: ','\n },\n abbreviations: {\n thousand: 'mil',\n million: 'milhões',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function () {\n return 'º';\n },\n currency: {\n symbol: 'R$',\n position: 'prefix',\n code: 'BRL'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiODQuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9wdC1CUi5qcz8yMjQyIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogUG9ydHVndWVzZVxuICogbG9jYWxlIDogQnJhemlsXG4gKiBhdXRob3IgOiBSYW1pcm8gVmFyYW5kYXMgSnIgOiBodHRwczovL2dpdGh1Yi5jb20vcmFtaXJvdmpyXG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ3B0LUJSJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICdwdC1CUicsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJy4nLFxuICAgICAgICAgICAgZGVjaW1hbDogJywnXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAnbWlsJyxcbiAgICAgICAgICAgIG1pbGxpb246ICdtaWxow7VlcycsXG4gICAgICAgICAgICBiaWxsaW9uOiAnYicsXG4gICAgICAgICAgICB0cmlsbGlvbjogJ3QnXG4gICAgICAgIH0sXG4gICAgICAgIG9yZGluYWw6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiAnwronO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAnUiQnLFxuICAgICAgICAgICAgcG9zaXRpb246ICdwcmVmaXgnLFxuICAgICAgICAgICAgY29kZTogJ0JSTCdcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgIGN1cnJlbmN5Rm9ybWF0OiAnLDQgYSdcbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0czoge1xuICAgICAgICAgICAgZm91ckRpZ2l0czogJzQgYScsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzOiAnLDAuMDAgJCcsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzTm9DdXJyZW5jeTogJywwLjAwJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoTm9EZWNpbWFsczogJywwICQnXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gQ29tbW9uSlNcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUobGFuZ3VhZ2UuY3VsdHVyZUNvZGUsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL3B0LUJSLmpzXG4vLyBtb2R1bGUgaWQgPSA4NFxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///84\n");
+
+/***/ }),
+/* 85 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/pt-PT.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Portuguese\n * locale : Portugal\n * author : Diogo Resende : https://github.com/dresende\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'pt-PT',\n cultureCode: 'pt-PT',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: 'k',\n million: 'm',\n billion: 'b',\n trillion: 't'\n },\n ordinal : function () {\n return 'º';\n },\n currency: {\n symbol: '€',\n position: 'postfix',\n code: 'EUR'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiODUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9wdC1QVC5qcz9iMDMwIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogUG9ydHVndWVzZVxuICogbG9jYWxlIDogUG9ydHVnYWxcbiAqIGF1dGhvciA6IERpb2dvIFJlc2VuZGUgOiBodHRwczovL2dpdGh1Yi5jb20vZHJlc2VuZGVcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAncHQtUFQnLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ3B0LVBUJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnICcsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLCdcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICdrJyxcbiAgICAgICAgICAgIG1pbGxpb246ICdtJyxcbiAgICAgICAgICAgIGJpbGxpb246ICdiJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAndCdcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbCA6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiAnwronO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAn4oKsJyxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAncG9zdGZpeCcsXG4gICAgICAgICAgICBjb2RlOiAnRVVSJ1xuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0czoge1xuICAgICAgICAgICAgY3VycmVuY3lGb3JtYXQ6ICcsNCBhJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtYXRzOiB7XG4gICAgICAgICAgICBmb3VyRGlnaXRzOiAnNCBhJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHM6ICcsMC4wMCAkJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHNOb0N1cnJlbmN5OiAnLDAuMDAnLFxuICAgICAgICAgICAgZnVsbFdpdGhOb0RlY2ltYWxzOiAnLDAgJCdcbiAgICAgICAgfVxuICAgIH07XG5cbiAgICAvLyBDb21tb25KU1xuICAgIGlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJyAmJiBtb2R1bGUuZXhwb3J0cykge1xuICAgICAgICBtb2R1bGUuZXhwb3J0cyA9IGxhbmd1YWdlO1xuICAgIH1cbiAgICAvLyBCcm93c2VyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5udW1icm8gJiYgd2luZG93Lm51bWJyby5jdWx0dXJlKSB7XG4gICAgICAgIHdpbmRvdy5udW1icm8uY3VsdHVyZShsYW5ndWFnZS5jdWx0dXJlQ29kZSwgbGFuZ3VhZ2UpO1xuICAgIH1cbn0uY2FsbCh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJyA/IHRoaXMgOiB3aW5kb3cpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMvcHQtUFQuanNcbi8vIG1vZHVsZSBpZCA9IDg1XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///85\n");
+
+/***/ }),
+/* 86 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/ro-RO.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numeral.js language configuration\n * language : Romanian\n * author : Andrei Alecu https://github.com/andreialecu\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'ro-RO',\n cultureCode: 'ro-RO',\n delimiters: {\n thousands: '.',\n decimal: ','\n },\n abbreviations: {\n thousand: 'mii',\n million: 'mil',\n billion: 'mld',\n trillion: 'bln'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: ' lei',\n position: 'postfix',\n code: 'RON'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiODYuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9yby1STy5qcz9jZGM4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtZXJhbC5qcyBsYW5ndWFnZSBjb25maWd1cmF0aW9uXG4gKiBsYW5ndWFnZSA6IFJvbWFuaWFuXG4gKiBhdXRob3IgOiBBbmRyZWkgQWxlY3UgaHR0cHM6Ly9naXRodWIuY29tL2FuZHJlaWFsZWN1XG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ3JvLVJPJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICdyby1STycsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJy4nLFxuICAgICAgICAgICAgZGVjaW1hbDogJywnXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAnbWlpJyxcbiAgICAgICAgICAgIG1pbGxpb246ICdtaWwnLFxuICAgICAgICAgICAgYmlsbGlvbjogJ21sZCcsXG4gICAgICAgICAgICB0cmlsbGlvbjogJ2JsbidcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuICcuJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJyBsZWknLFxuICAgICAgICAgICAgcG9zaXRpb246ICdwb3N0Zml4JyxcbiAgICAgICAgICAgIGNvZGU6ICdST04nXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBjdXJyZW5jeUZvcm1hdDogJyw0IGEnXG4gICAgICAgIH0sXG4gICAgICAgIGZvcm1hdHM6IHtcbiAgICAgICAgICAgIGZvdXJEaWdpdHM6ICc0IGEnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsczogJywwLjAwICQnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsc05vQ3VycmVuY3k6ICcsMC4wMCcsXG4gICAgICAgICAgICBmdWxsV2l0aE5vRGVjaW1hbHM6ICcsMCAkJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9yby1STy5qc1xuLy8gbW9kdWxlIGlkID0gODZcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///86\n");
+
+/***/ }),
+/* 87 */
+/*!*********************************************!*\
+ !*** ./node_modules/numbro/languages/ro.js ***!
+ \*********************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Romanian (ro)\n * author : Tim McIntosh (StayinFront NZ)\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'ro',\n cultureCode: 'ro',\n delimiters: {\n thousands: '.',\n decimal: ','\n },\n abbreviations: {\n thousand: 'mie',\n million: 'mln',\n billion: 'mld',\n trillion: 't'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: 'RON',\n code: 'RON'\n }\n };\n\n // Node\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture('ro', language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiODcuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9yby5qcz83ZWE0Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogUm9tYW5pYW4gKHJvKVxuICogYXV0aG9yIDogVGltIE1jSW50b3NoIChTdGF5aW5Gcm9udCBOWilcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAncm8nLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ3JvJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnLicsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLCdcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICdtaWUnLFxuICAgICAgICAgICAgbWlsbGlvbjogJ21sbicsXG4gICAgICAgICAgICBiaWxsaW9uOiAnbWxkJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAndCdcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuICcuJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJ1JPTicsXG4gICAgICAgICAgICBjb2RlOiAnUk9OJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIE5vZGVcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUoJ3JvJywgbGFuZ3VhZ2UpO1xuICAgIH1cbn0uY2FsbCh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJyA/IHRoaXMgOiB3aW5kb3cpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMvcm8uanNcbi8vIG1vZHVsZSBpZCA9IDg3XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///87\n");
+
+/***/ }),
+/* 88 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/ru-RU.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Russian\n * locale : Russsia\n * author : Anatoli Papirovski : https://github.com/apapirovski\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'ru-RU',\n cultureCode: 'ru-RU',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: 'тыс.',\n million: 'млн',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function () {\n // not ideal, but since in Russian it can taken on\n // different forms (masculine, feminine, neuter)\n // this is all we can do\n return '.';\n },\n currency: {\n symbol: 'руб.',\n position: 'postfix',\n code: 'RUB'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiODguanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9ydS1SVS5qcz81ODcwIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogUnVzc2lhblxuICogbG9jYWxlIDogUnVzc3NpYVxuICogYXV0aG9yIDogQW5hdG9saSBQYXBpcm92c2tpIDogaHR0cHM6Ly9naXRodWIuY29tL2FwYXBpcm92c2tpXG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ3J1LVJVJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICdydS1SVScsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJyAnLFxuICAgICAgICAgICAgZGVjaW1hbDogJywnXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAn0YLRi9GBLicsXG4gICAgICAgICAgICBtaWxsaW9uOiAn0LzQu9C9JyxcbiAgICAgICAgICAgIGJpbGxpb246ICdiJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAndCdcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgLy8gbm90IGlkZWFsLCBidXQgc2luY2UgaW4gUnVzc2lhbiBpdCBjYW4gdGFrZW4gb25cbiAgICAgICAgICAgIC8vIGRpZmZlcmVudCBmb3JtcyAobWFzY3VsaW5lLCBmZW1pbmluZSwgbmV1dGVyKVxuICAgICAgICAgICAgLy8gdGhpcyBpcyBhbGwgd2UgY2FuIGRvXG4gICAgICAgICAgICByZXR1cm4gJy4nO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAn0YDRg9CxLicsXG4gICAgICAgICAgICBwb3NpdGlvbjogJ3Bvc3RmaXgnLFxuICAgICAgICAgICAgY29kZTogJ1JVQidcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgIGN1cnJlbmN5Rm9ybWF0OiAnLDQgYSdcbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0czoge1xuICAgICAgICAgICAgZm91ckRpZ2l0czogJzQgYScsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzOiAnLDAuMDAgJCcsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzTm9DdXJyZW5jeTogJywwLjAwJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoTm9EZWNpbWFsczogJywwICQnXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gQ29tbW9uSlNcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUobGFuZ3VhZ2UuY3VsdHVyZUNvZGUsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL3J1LVJVLmpzXG4vLyBtb2R1bGUgaWQgPSA4OFxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///88\n");
+
+/***/ }),
+/* 89 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/ru-UA.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Russian\n * locale : Ukraine\n * author : Anatoli Papirovski : https://github.com/apapirovski\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'ru-UA',\n cultureCode: 'ru-UA',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: 'тыс.',\n million: 'млн',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function () {\n // not ideal, but since in Russian it can taken on\n // different forms (masculine, feminine, neuter)\n // this is all we can do\n return '.';\n },\n currency: {\n symbol: '\\u20B4',\n position: 'postfix',\n code: 'UAH'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiODkuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9ydS1VQS5qcz9jZjJjIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogUnVzc2lhblxuICogbG9jYWxlIDogVWtyYWluZVxuICogYXV0aG9yIDogQW5hdG9saSBQYXBpcm92c2tpIDogaHR0cHM6Ly9naXRodWIuY29tL2FwYXBpcm92c2tpXG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ3J1LVVBJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICdydS1VQScsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJyAnLFxuICAgICAgICAgICAgZGVjaW1hbDogJywnXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAn0YLRi9GBLicsXG4gICAgICAgICAgICBtaWxsaW9uOiAn0LzQu9C9JyxcbiAgICAgICAgICAgIGJpbGxpb246ICdiJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAndCdcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgLy8gbm90IGlkZWFsLCBidXQgc2luY2UgaW4gUnVzc2lhbiBpdCBjYW4gdGFrZW4gb25cbiAgICAgICAgICAgIC8vIGRpZmZlcmVudCBmb3JtcyAobWFzY3VsaW5lLCBmZW1pbmluZSwgbmV1dGVyKVxuICAgICAgICAgICAgLy8gdGhpcyBpcyBhbGwgd2UgY2FuIGRvXG4gICAgICAgICAgICByZXR1cm4gJy4nO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAnXFx1MjBCNCcsXG4gICAgICAgICAgICBwb3NpdGlvbjogJ3Bvc3RmaXgnLFxuICAgICAgICAgICAgY29kZTogJ1VBSCdcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgIGN1cnJlbmN5Rm9ybWF0OiAnLDQgYSdcbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0czoge1xuICAgICAgICAgICAgZm91ckRpZ2l0czogJzQgYScsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzOiAnLDAuMDAgJCcsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzTm9DdXJyZW5jeTogJywwLjAwJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoTm9EZWNpbWFsczogJywwICQnXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gQ29tbW9uSlNcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUobGFuZ3VhZ2UuY3VsdHVyZUNvZGUsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL3J1LVVBLmpzXG4vLyBtb2R1bGUgaWQgPSA4OVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///89\n");
+
+/***/ }),
+/* 90 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/sk-SK.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Slovak\n * locale : Slovakia\n * author : Jan Pesa : https://github.com/smajl (based on work from Ahmed Al Hafoudh : http://www.freevision.sk)\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'sk-SK',\n cultureCode: 'sk-SK',\n delimiters: {\n thousands: '\\u00a0',\n decimal: ','\n },\n abbreviations: {\n thousand: 'tis.',\n million: 'mil.',\n billion: 'mld.',\n trillion: 'bil.'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: '€',\n position: 'postfix',\n spaceSeparated: true,\n code: 'EUR'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiOTAuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9zay1TSy5qcz8zMzQwIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogU2xvdmFrXG4gKiBsb2NhbGUgOiBTbG92YWtpYVxuICogYXV0aG9yIDogSmFuIFBlc2EgOiBodHRwczovL2dpdGh1Yi5jb20vc21hamwgKGJhc2VkIG9uIHdvcmsgZnJvbSBBaG1lZCBBbCBIYWZvdWRoIDogaHR0cDovL3d3dy5mcmVldmlzaW9uLnNrKVxuICovXG4oZnVuY3Rpb24gKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciBsYW5ndWFnZSA9IHtcbiAgICAgICAgbGFuZ0xvY2FsZUNvZGU6ICdzay1TSycsXG4gICAgICAgIGN1bHR1cmVDb2RlOiAnc2stU0snLFxuICAgICAgICBkZWxpbWl0ZXJzOiB7XG4gICAgICAgICAgICB0aG91c2FuZHM6ICdcXHUwMGEwJyxcbiAgICAgICAgICAgIGRlY2ltYWw6ICcsJ1xuICAgICAgICB9LFxuICAgICAgICBhYmJyZXZpYXRpb25zOiB7XG4gICAgICAgICAgICB0aG91c2FuZDogJ3Rpcy4nLFxuICAgICAgICAgICAgbWlsbGlvbjogJ21pbC4nLFxuICAgICAgICAgICAgYmlsbGlvbjogJ21sZC4nLFxuICAgICAgICAgICAgdHJpbGxpb246ICdiaWwuJ1xuICAgICAgICB9LFxuICAgICAgICBvcmRpbmFsOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gJy4nO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAn4oKsJyxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAncG9zdGZpeCcsXG4gICAgICAgICAgICBzcGFjZVNlcGFyYXRlZDogdHJ1ZSxcbiAgICAgICAgICAgIGNvZGU6ICdFVVInXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBjdXJyZW5jeUZvcm1hdDogJyw0IGEnXG4gICAgICAgIH0sXG4gICAgICAgIGZvcm1hdHM6IHtcbiAgICAgICAgICAgIGZvdXJEaWdpdHM6ICc0IGEnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsczogJywwLjAwICQnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsc05vQ3VycmVuY3k6ICcsMC4wMCcsXG4gICAgICAgICAgICBmdWxsV2l0aE5vRGVjaW1hbHM6ICcsMCAkJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9zay1TSy5qc1xuLy8gbW9kdWxlIGlkID0gOTBcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///90\n");
+
+/***/ }),
+/* 91 */
+/*!*********************************************!*\
+ !*** ./node_modules/numbro/languages/sl.js ***!
+ \*********************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Slovene\n * locale: Slovenia\n * author : Tim McIntosh (StayinFront NZ)\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'sl',\n cultureCode: 'sl',\n delimiters: {\n thousands: '.',\n decimal: ','\n },\n abbreviations: {\n thousand: 'tis.',\n million: 'mil.',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: '€',\n code: 'EUR'\n }\n };\n\n // Node\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture('sl', language);\n }\n}());\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiOTEuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9zbC5qcz83NGZiIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogU2xvdmVuZVxuICogbG9jYWxlOiBTbG92ZW5pYVxuICogYXV0aG9yIDogVGltIE1jSW50b3NoIChTdGF5aW5Gcm9udCBOWilcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnc2wnLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ3NsJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnLicsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLCdcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICd0aXMuJyxcbiAgICAgICAgICAgIG1pbGxpb246ICdtaWwuJyxcbiAgICAgICAgICAgIGJpbGxpb246ICdiJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAndCdcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuICcuJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJ+KCrCcsXG4gICAgICAgICAgICBjb2RlOiAnRVVSJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIE5vZGVcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUoJ3NsJywgbGFuZ3VhZ2UpO1xuICAgIH1cbn0oKSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL3NsLmpzXG4vLyBtb2R1bGUgaWQgPSA5MVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///91\n");
+
+/***/ }),
+/* 92 */
+/*!*****************************************************!*\
+ !*** ./node_modules/numbro/languages/sr-Cyrl-RS.js ***!
+ \*****************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Serbian (sr)\n * country : Serbia (Cyrillic)\n * author : Tim McIntosh (StayinFront NZ)\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'sr-Cyrl-RS',\n cultureCode: 'sr-Cyrl-RS',\n delimiters: {\n thousands: '.',\n decimal: ','\n },\n abbreviations: {\n thousand: 'тыс.',\n million: 'млн',\n billion: 'b',\n trillion: 't'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: 'RSD',\n code: 'RSD'\n }\n };\n\n // Node\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture('sr-Cyrl-RS', language);\n }\n}());\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiOTIuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9zci1DeXJsLVJTLmpzPzk3ZjkiXSwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBudW1icm8uanMgbGFuZ3VhZ2UgY29uZmlndXJhdGlvblxuICogbGFuZ3VhZ2UgOiBTZXJiaWFuIChzcilcbiAqIGNvdW50cnkgOiBTZXJiaWEgKEN5cmlsbGljKVxuICogYXV0aG9yIDogVGltIE1jSW50b3NoIChTdGF5aW5Gcm9udCBOWilcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnc3ItQ3lybC1SUycsXG4gICAgICAgIGN1bHR1cmVDb2RlOiAnc3ItQ3lybC1SUycsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJy4nLFxuICAgICAgICAgICAgZGVjaW1hbDogJywnXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAn0YLRi9GBLicsXG4gICAgICAgICAgICBtaWxsaW9uOiAn0LzQu9C9JyxcbiAgICAgICAgICAgIGJpbGxpb246ICdiJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAndCdcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuICcuJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJ1JTRCcsXG4gICAgICAgICAgICBjb2RlOiAnUlNEJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIE5vZGVcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUoJ3NyLUN5cmwtUlMnLCBsYW5ndWFnZSk7XG4gICAgfVxufSgpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMvc3ItQ3lybC1SUy5qc1xuLy8gbW9kdWxlIGlkID0gOTJcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///92\n");
+
+/***/ }),
+/* 93 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/sv-SE.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Swedish\n * locale : Sweden\n * author : Benjamin Van Ryseghem (benjamin.vanryseghem.com)\n */\n(function() {\n 'use strict';\n\n var language = {\n langLocaleCode: 'sv-SE',\n cultureCode: 'sv-SE',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: 't',\n million: 'M',\n billion: 'md',\n trillion: 'tmd'\n },\n currency: {\n symbol: 'kr',\n position: 'postfix',\n code: 'SEK'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiOTMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9zdi1TRS5qcz9jMGYwIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogU3dlZGlzaFxuICogbG9jYWxlIDogU3dlZGVuXG4gKiBhdXRob3IgOiBCZW5qYW1pbiBWYW4gUnlzZWdoZW0gKGJlbmphbWluLnZhbnJ5c2VnaGVtLmNvbSlcbiAqL1xuKGZ1bmN0aW9uKCkge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIHZhciBsYW5ndWFnZSA9IHtcbiAgICAgICAgbGFuZ0xvY2FsZUNvZGU6ICdzdi1TRScsXG4gICAgICAgIGN1bHR1cmVDb2RlOiAnc3YtU0UnLFxuICAgICAgICBkZWxpbWl0ZXJzOiB7XG4gICAgICAgICAgICB0aG91c2FuZHM6ICcgJyxcbiAgICAgICAgICAgIGRlY2ltYWw6ICcsJ1xuICAgICAgICB9LFxuICAgICAgICBhYmJyZXZpYXRpb25zOiB7XG4gICAgICAgICAgICB0aG91c2FuZDogJ3QnLFxuICAgICAgICAgICAgbWlsbGlvbjogJ00nLFxuICAgICAgICAgICAgYmlsbGlvbjogJ21kJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAndG1kJ1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAna3InLFxuICAgICAgICAgICAgcG9zaXRpb246ICdwb3N0Zml4JyxcbiAgICAgICAgICAgIGNvZGU6ICdTRUsnXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBjdXJyZW5jeUZvcm1hdDogJyw0IGEnXG4gICAgICAgIH0sXG4gICAgICAgIGZvcm1hdHM6IHtcbiAgICAgICAgICAgIGZvdXJEaWdpdHM6ICc0IGEnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsczogJywwLjAwICQnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsc05vQ3VycmVuY3k6ICcsMC4wMCcsXG4gICAgICAgICAgICBmdWxsV2l0aE5vRGVjaW1hbHM6ICcsMCAkJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy9zdi1TRS5qc1xuLy8gbW9kdWxlIGlkID0gOTNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///93\n");
+
+/***/ }),
+/* 94 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/th-TH.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Thai\n * locale : Thailand\n * author : Sathit Jittanupat : https://github.com/jojosati\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'th-TH',\n cultureCode: 'th-TH',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: 'พัน',\n million: 'ล้าน',\n billion: 'พันล้าน',\n trillion: 'ล้านล้าน'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: '฿',\n position: 'postfix',\n code: 'THB'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiOTQuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy90aC1USC5qcz9jZWU0Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogVGhhaVxuICogbG9jYWxlIDogVGhhaWxhbmRcbiAqIGF1dGhvciA6IFNhdGhpdCBKaXR0YW51cGF0IDogaHR0cHM6Ly9naXRodWIuY29tL2pvam9zYXRpXG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ3RoLVRIJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICd0aC1USCcsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJywnLFxuICAgICAgICAgICAgZGVjaW1hbDogJy4nXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAn4Lie4Lix4LiZJyxcbiAgICAgICAgICAgIG1pbGxpb246ICfguKXguYnguLLguJknLFxuICAgICAgICAgICAgYmlsbGlvbjogJ+C4nuC4seC4meC4peC5ieC4suC4mScsXG4gICAgICAgICAgICB0cmlsbGlvbjogJ+C4peC5ieC4suC4meC4peC5ieC4suC4mSdcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuICcuJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJ+C4vycsXG4gICAgICAgICAgICBwb3NpdGlvbjogJ3Bvc3RmaXgnLFxuICAgICAgICAgICAgY29kZTogJ1RIQidcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdHM6IHtcbiAgICAgICAgICAgIGN1cnJlbmN5Rm9ybWF0OiAnLDQgYSdcbiAgICAgICAgfSxcbiAgICAgICAgZm9ybWF0czoge1xuICAgICAgICAgICAgZm91ckRpZ2l0czogJzQgYScsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzOiAnLDAuMDAgJCcsXG4gICAgICAgICAgICBmdWxsV2l0aFR3b0RlY2ltYWxzTm9DdXJyZW5jeTogJywwLjAwJyxcbiAgICAgICAgICAgIGZ1bGxXaXRoTm9EZWNpbWFsczogJywwICQnXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gQ29tbW9uSlNcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUobGFuZ3VhZ2UuY3VsdHVyZUNvZGUsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL3RoLVRILmpzXG4vLyBtb2R1bGUgaWQgPSA5NFxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///94\n");
+
+/***/ }),
+/* 95 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/tr-TR.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Turkish\n * locale : Turkey\n * author : Ecmel Ercan : https://github.com/ecmel,\n * Erhan Gundogan : https://github.com/erhangundogan,\n * Burak Yiğit Kaya: https://github.com/BYK\n */\n(function() {\n 'use strict';\n\n var suffixes = {\n 1: '\\'inci',\n 5: '\\'inci',\n 8: '\\'inci',\n 70: '\\'inci',\n 80: '\\'inci',\n\n 2: '\\'nci',\n 7: '\\'nci',\n 20: '\\'nci',\n 50: '\\'nci',\n\n 3: '\\'üncü',\n 4: '\\'üncü',\n 100: '\\'üncü',\n\n 6: '\\'ncı',\n\n 9: '\\'uncu',\n 10: '\\'uncu',\n 30: '\\'uncu',\n\n 60: '\\'ıncı',\n 90: '\\'ıncı'\n },\n language = {\n langLocaleCode: 'tr-TR',\n cultureCode: 'tr-TR',\n delimiters: {\n thousands: '.',\n decimal: ','\n },\n abbreviations: {\n thousand: 'bin',\n million: 'milyon',\n billion: 'milyar',\n trillion: 'trilyon'\n },\n ordinal: function(number) {\n if (number === 0) { // special case for zero\n return '\\'ıncı';\n }\n\n var a = number % 10,\n b = number % 100 - a,\n c = number >= 100 ? 100 : null;\n\n return suffixes[a] || suffixes[b] || suffixes[c];\n },\n currency: {\n symbol: '\\u20BA',\n position: 'postfix',\n code: 'TRY'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiOTUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy90ci1UUi5qcz8wM2UwIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogVHVya2lzaFxuICogbG9jYWxlIDogVHVya2V5XG4gKiBhdXRob3IgOiBFY21lbCBFcmNhbiA6IGh0dHBzOi8vZ2l0aHViLmNvbS9lY21lbCxcbiAqICAgICAgICAgIEVyaGFuIEd1bmRvZ2FuIDogaHR0cHM6Ly9naXRodWIuY29tL2VyaGFuZ3VuZG9nYW4sXG4gKiAgICAgICAgICBCdXJhayBZacSfaXQgS2F5YTogaHR0cHM6Ly9naXRodWIuY29tL0JZS1xuICovXG4oZnVuY3Rpb24oKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIHN1ZmZpeGVzID0ge1xuICAgICAgICAgICAgMTogJ1xcJ2luY2knLFxuICAgICAgICAgICAgNTogJ1xcJ2luY2knLFxuICAgICAgICAgICAgODogJ1xcJ2luY2knLFxuICAgICAgICAgICAgNzA6ICdcXCdpbmNpJyxcbiAgICAgICAgICAgIDgwOiAnXFwnaW5jaScsXG5cbiAgICAgICAgICAgIDI6ICdcXCduY2knLFxuICAgICAgICAgICAgNzogJ1xcJ25jaScsXG4gICAgICAgICAgICAyMDogJ1xcJ25jaScsXG4gICAgICAgICAgICA1MDogJ1xcJ25jaScsXG5cbiAgICAgICAgICAgIDM6ICdcXCfDvG5jw7wnLFxuICAgICAgICAgICAgNDogJ1xcJ8O8bmPDvCcsXG4gICAgICAgICAgICAxMDA6ICdcXCfDvG5jw7wnLFxuXG4gICAgICAgICAgICA2OiAnXFwnbmPEsScsXG5cbiAgICAgICAgICAgIDk6ICdcXCd1bmN1JyxcbiAgICAgICAgICAgIDEwOiAnXFwndW5jdScsXG4gICAgICAgICAgICAzMDogJ1xcJ3VuY3UnLFxuXG4gICAgICAgICAgICA2MDogJ1xcJ8SxbmPEsScsXG4gICAgICAgICAgICA5MDogJ1xcJ8SxbmPEsSdcbiAgICAgICAgfSxcbiAgICAgICAgbGFuZ3VhZ2UgPSB7XG4gICAgICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ3RyLVRSJyxcbiAgICAgICAgICAgIGN1bHR1cmVDb2RlOiAndHItVFInLFxuICAgICAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgICAgIHRob3VzYW5kczogJy4nLFxuICAgICAgICAgICAgICAgIGRlY2ltYWw6ICcsJ1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgICAgICB0aG91c2FuZDogJ2JpbicsXG4gICAgICAgICAgICAgICAgbWlsbGlvbjogJ21pbHlvbicsXG4gICAgICAgICAgICAgICAgYmlsbGlvbjogJ21pbHlhcicsXG4gICAgICAgICAgICAgICAgdHJpbGxpb246ICd0cmlseW9uJ1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIG9yZGluYWw6IGZ1bmN0aW9uKG51bWJlcikge1xuICAgICAgICAgICAgICAgIGlmIChudW1iZXIgPT09IDApIHsgIC8vIHNwZWNpYWwgY2FzZSBmb3IgemVyb1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ1xcJ8SxbmPEsSc7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdmFyIGEgPSBudW1iZXIgJSAxMCxcbiAgICAgICAgICAgICAgICAgICAgYiA9IG51bWJlciAlIDEwMCAtIGEsXG4gICAgICAgICAgICAgICAgICAgIGMgPSBudW1iZXIgPj0gMTAwID8gMTAwIDogbnVsbDtcblxuICAgICAgICAgICAgICAgIHJldHVybiBzdWZmaXhlc1thXSB8fCBzdWZmaXhlc1tiXSB8fCBzdWZmaXhlc1tjXTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgICAgIHN5bWJvbDogJ1xcdTIwQkEnLFxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiAncG9zdGZpeCcsXG4gICAgICAgICAgICAgICAgY29kZTogJ1RSWSdcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBkZWZhdWx0czoge1xuICAgICAgICAgICAgICAgIGN1cnJlbmN5Rm9ybWF0OiAnLDQgYSdcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBmb3JtYXRzOiB7XG4gICAgICAgICAgICAgICAgZm91ckRpZ2l0czogJzQgYScsXG4gICAgICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsczogJywwLjAwICQnLFxuICAgICAgICAgICAgICAgIGZ1bGxXaXRoVHdvRGVjaW1hbHNOb0N1cnJlbmN5OiAnLDAuMDAnLFxuICAgICAgICAgICAgICAgIGZ1bGxXaXRoTm9EZWNpbWFsczogJywwICQnXG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG5cbiAgICAvLyBDb21tb25KU1xuICAgIGlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJyAmJiBtb2R1bGUuZXhwb3J0cykge1xuICAgICAgICBtb2R1bGUuZXhwb3J0cyA9IGxhbmd1YWdlO1xuICAgIH1cbiAgICAvLyBCcm93c2VyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5udW1icm8gJiYgd2luZG93Lm51bWJyby5jdWx0dXJlKSB7XG4gICAgICAgIHdpbmRvdy5udW1icm8uY3VsdHVyZShsYW5ndWFnZS5jdWx0dXJlQ29kZSwgbGFuZ3VhZ2UpO1xuICAgIH1cbn0uY2FsbCh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJyA/IHRoaXMgOiB3aW5kb3cpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMvdHItVFIuanNcbi8vIG1vZHVsZSBpZCA9IDk1XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///95\n");
+
+/***/ }),
+/* 96 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/uk-UA.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Ukrainian\n * locale : Ukraine\n * author : Michael Piefel : https://github.com/piefel (with help from Tetyana Kuzmenko)\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'uk-UA',\n cultureCode: 'uk-UA',\n delimiters: {\n thousands: ' ',\n decimal: ','\n },\n abbreviations: {\n thousand: 'тис.',\n million: 'млн',\n billion: 'млрд',\n trillion: 'блн'\n },\n ordinal: function () {\n // not ideal, but since in Ukrainian it can taken on\n // different forms (masculine, feminine, neuter)\n // this is all we can do\n return '';\n },\n currency: {\n symbol: '\\u20B4',\n position: 'postfix',\n code: 'UAH'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: ',0.00 $',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: ',0 $'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiOTYuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy91ay1VQS5qcz84NDkzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogVWtyYWluaWFuXG4gKiBsb2NhbGUgOiBVa3JhaW5lXG4gKiBhdXRob3IgOiBNaWNoYWVsIFBpZWZlbCA6IGh0dHBzOi8vZ2l0aHViLmNvbS9waWVmZWwgKHdpdGggaGVscCBmcm9tIFRldHlhbmEgS3V6bWVua28pXG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ3VrLVVBJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICd1ay1VQScsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJyAnLFxuICAgICAgICAgICAgZGVjaW1hbDogJywnXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAn0YLQuNGBLicsXG4gICAgICAgICAgICBtaWxsaW9uOiAn0LzQu9C9JyxcbiAgICAgICAgICAgIGJpbGxpb246ICfQvNC70YDQtCcsXG4gICAgICAgICAgICB0cmlsbGlvbjogJ9Cx0LvQvSdcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgLy8gbm90IGlkZWFsLCBidXQgc2luY2UgaW4gVWtyYWluaWFuIGl0IGNhbiB0YWtlbiBvblxuICAgICAgICAgICAgLy8gZGlmZmVyZW50IGZvcm1zIChtYXNjdWxpbmUsIGZlbWluaW5lLCBuZXV0ZXIpXG4gICAgICAgICAgICAvLyB0aGlzIGlzIGFsbCB3ZSBjYW4gZG9cbiAgICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJ1xcdTIwQjQnLFxuICAgICAgICAgICAgcG9zaXRpb246ICdwb3N0Zml4JyxcbiAgICAgICAgICAgIGNvZGU6ICdVQUgnXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBjdXJyZW5jeUZvcm1hdDogJyw0IGEnXG4gICAgICAgIH0sXG4gICAgICAgIGZvcm1hdHM6IHtcbiAgICAgICAgICAgIGZvdXJEaWdpdHM6ICc0IGEnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsczogJywwLjAwICQnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsc05vQ3VycmVuY3k6ICcsMC4wMCcsXG4gICAgICAgICAgICBmdWxsV2l0aE5vRGVjaW1hbHM6ICcsMCAkJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy91ay1VQS5qc1xuLy8gbW9kdWxlIGlkID0gOTZcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///96\n");
+
+/***/ }),
+/* 97 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/zh-CN.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : simplified chinese\n * locale : China\n * author : badplum : https://github.com/badplum\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'zh-CN',\n cultureCode: 'zh-CN',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: '千',\n million: '百万',\n billion: '十亿',\n trillion: '兆'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: '¥',\n position: 'prefix',\n code: 'CNY'\n },\n defaults: {\n currencyFormat: ',4 a'\n },\n formats: {\n fourDigits: '4 a',\n fullWithTwoDecimals: '$ ,0.00',\n fullWithTwoDecimalsNoCurrency: ',0.00',\n fullWithNoDecimals: '$ ,0'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiOTcuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy96aC1DTi5qcz9lOTNhIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogc2ltcGxpZmllZCBjaGluZXNlXG4gKiBsb2NhbGUgOiBDaGluYVxuICogYXV0aG9yIDogYmFkcGx1bSA6IGh0dHBzOi8vZ2l0aHViLmNvbS9iYWRwbHVtXG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ3poLUNOJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICd6aC1DTicsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJywnLFxuICAgICAgICAgICAgZGVjaW1hbDogJy4nXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAn5Y2DJyxcbiAgICAgICAgICAgIG1pbGxpb246ICfnmb7kuIcnLFxuICAgICAgICAgICAgYmlsbGlvbjogJ+WNgeS6vycsXG4gICAgICAgICAgICB0cmlsbGlvbjogJ+WFhidcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuICcuJztcbiAgICAgICAgfSxcbiAgICAgICAgY3VycmVuY3k6IHtcbiAgICAgICAgICAgIHN5bWJvbDogJ8KlJyxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAncHJlZml4JyxcbiAgICAgICAgICAgIGNvZGU6ICdDTlknXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHRzOiB7XG4gICAgICAgICAgICBjdXJyZW5jeUZvcm1hdDogJyw0IGEnXG4gICAgICAgIH0sXG4gICAgICAgIGZvcm1hdHM6IHtcbiAgICAgICAgICAgIGZvdXJEaWdpdHM6ICc0IGEnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsczogJyQgLDAuMDAnLFxuICAgICAgICAgICAgZnVsbFdpdGhUd29EZWNpbWFsc05vQ3VycmVuY3k6ICcsMC4wMCcsXG4gICAgICAgICAgICBmdWxsV2l0aE5vRGVjaW1hbHM6ICckICwwJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIENvbW1vbkpTXG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gICAgICAgIG1vZHVsZS5leHBvcnRzID0gbGFuZ3VhZ2U7XG4gICAgfVxuICAgIC8vIEJyb3dzZXJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm51bWJybyAmJiB3aW5kb3cubnVtYnJvLmN1bHR1cmUpIHtcbiAgICAgICAgd2luZG93Lm51bWJyby5jdWx0dXJlKGxhbmd1YWdlLmN1bHR1cmVDb2RlLCBsYW5ndWFnZSk7XG4gICAgfVxufS5jYWxsKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gdGhpcyA6IHdpbmRvdykpO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy96aC1DTi5qc1xuLy8gbW9kdWxlIGlkID0gOTdcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///97\n");
+
+/***/ }),
+/* 98 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/zh-MO.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Chinese traditional\n * locale: Macau\n * author : Tim McIntosh (StayinFront NZ)\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'zh-MO',\n cultureCode: 'zh-MO',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: '千',\n million: '百萬',\n billion: '十億',\n trillion: '兆'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: 'MOP',\n code: 'MOP'\n }\n };\n\n // Node\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture('zh-MO', language);\n }\n}());\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiOTguanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy96aC1NTy5qcz80ZjU5Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogQ2hpbmVzZSB0cmFkaXRpb25hbFxuICogbG9jYWxlOiBNYWNhdVxuICogYXV0aG9yIDogVGltIE1jSW50b3NoIChTdGF5aW5Gcm9udCBOWilcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnemgtTU8nLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ3poLU1PJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnLCcsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLidcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICfljYMnLFxuICAgICAgICAgICAgbWlsbGlvbjogJ+eZvuiQrCcsXG4gICAgICAgICAgICBiaWxsaW9uOiAn5Y2B5YSEJyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAn5YWGJ1xuICAgICAgICB9LFxuICAgICAgICBvcmRpbmFsOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gJy4nO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAnTU9QJyxcbiAgICAgICAgICAgIGNvZGU6ICdNT1AnXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gTm9kZVxuICAgIGlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJyAmJiBtb2R1bGUuZXhwb3J0cykge1xuICAgICAgICBtb2R1bGUuZXhwb3J0cyA9IGxhbmd1YWdlO1xuICAgIH1cbiAgICAvLyBCcm93c2VyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5udW1icm8gJiYgd2luZG93Lm51bWJyby5jdWx0dXJlKSB7XG4gICAgICAgIHdpbmRvdy5udW1icm8uY3VsdHVyZSgnemgtTU8nLCBsYW5ndWFnZSk7XG4gICAgfVxufSgpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMvemgtTU8uanNcbi8vIG1vZHVsZSBpZCA9IDk4XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///98\n");
+
+/***/ }),
+/* 99 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/zh-SG.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Chinese simplified\n * locale: Singapore\n * author : Tim McIntosh (StayinFront NZ)\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'zh-SG',\n cultureCode: 'zh-SG',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: '千',\n million: '百万',\n billion: '十亿',\n trillion: '兆'\n },\n ordinal: function () {\n return '.';\n },\n currency: {\n symbol: '$',\n code: 'SGD'\n }\n };\n\n // Node\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture('zh-SG', language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiOTkuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvbnVtYnJvL2xhbmd1YWdlcy96aC1TRy5qcz9lZGI2Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogbnVtYnJvLmpzIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb25cbiAqIGxhbmd1YWdlIDogQ2hpbmVzZSBzaW1wbGlmaWVkXG4gKiBsb2NhbGU6IFNpbmdhcG9yZVxuICogYXV0aG9yIDogVGltIE1jSW50b3NoIChTdGF5aW5Gcm9udCBOWilcbiAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICB2YXIgbGFuZ3VhZ2UgPSB7XG4gICAgICAgIGxhbmdMb2NhbGVDb2RlOiAnemgtU0cnLFxuICAgICAgICBjdWx0dXJlQ29kZTogJ3poLVNHJyxcbiAgICAgICAgZGVsaW1pdGVyczoge1xuICAgICAgICAgICAgdGhvdXNhbmRzOiAnLCcsXG4gICAgICAgICAgICBkZWNpbWFsOiAnLidcbiAgICAgICAgfSxcbiAgICAgICAgYWJicmV2aWF0aW9uczoge1xuICAgICAgICAgICAgdGhvdXNhbmQ6ICfljYMnLFxuICAgICAgICAgICAgbWlsbGlvbjogJ+eZvuS4hycsXG4gICAgICAgICAgICBiaWxsaW9uOiAn5Y2B5Lq/JyxcbiAgICAgICAgICAgIHRyaWxsaW9uOiAn5YWGJ1xuICAgICAgICB9LFxuICAgICAgICBvcmRpbmFsOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gJy4nO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAnJCcsXG4gICAgICAgICAgICBjb2RlOiAnU0dEJ1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIC8vIE5vZGVcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUoJ3poLVNHJywgbGFuZ3VhZ2UpO1xuICAgIH1cbn0uY2FsbCh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJyA/IHRoaXMgOiB3aW5kb3cpKTtcblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMvemgtU0cuanNcbi8vIG1vZHVsZSBpZCA9IDk5XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///99\n");
+
+/***/ }),
+/* 100 */
+/*!************************************************!*\
+ !*** ./node_modules/numbro/languages/zh-TW.js ***!
+ \************************************************/
+/*! dynamic exports provided */
+/*! all exports used */
+/***/ (function(module, exports) {
+
+eval("/*!\n * numbro.js language configuration\n * language : Chinese (Taiwan)\n * author (numbro.js Version): Randy Wilander : https://github.com/rocketedaway\n * author (numeral.js Version) : Rich Daley : https://github.com/pedantic-git\n */\n(function () {\n 'use strict';\n\n var language = {\n langLocaleCode: 'zh-TW',\n cultureCode: 'zh-TW',\n delimiters: {\n thousands: ',',\n decimal: '.'\n },\n abbreviations: {\n thousand: '千',\n million: '百萬',\n billion: '十億',\n trillion: '兆'\n },\n ordinal: function () {\n return '第';\n },\n currency: {\n symbol: 'NT$',\n code: 'TWD'\n }\n };\n\n // CommonJS\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = language;\n }\n // Browser\n if (typeof window !== 'undefined' && window.numbro && window.numbro.culture) {\n window.numbro.culture(language.cultureCode, language);\n }\n}.call(typeof window === 'undefined' ? this : window));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMTAwLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL251bWJyby9sYW5ndWFnZXMvemgtVFcuanM/MjhiMCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIG51bWJyby5qcyBsYW5ndWFnZSBjb25maWd1cmF0aW9uXG4gKiBsYW5ndWFnZSA6IENoaW5lc2UgKFRhaXdhbilcbiAqIGF1dGhvciAobnVtYnJvLmpzIFZlcnNpb24pOiBSYW5keSBXaWxhbmRlciA6IGh0dHBzOi8vZ2l0aHViLmNvbS9yb2NrZXRlZGF3YXlcbiAqIGF1dGhvciAobnVtZXJhbC5qcyBWZXJzaW9uKSA6IFJpY2ggRGFsZXkgOiBodHRwczovL2dpdGh1Yi5jb20vcGVkYW50aWMtZ2l0XG4gKi9cbihmdW5jdGlvbiAoKSB7XG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgdmFyIGxhbmd1YWdlID0ge1xuICAgICAgICBsYW5nTG9jYWxlQ29kZTogJ3poLVRXJyxcbiAgICAgICAgY3VsdHVyZUNvZGU6ICd6aC1UVycsXG4gICAgICAgIGRlbGltaXRlcnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kczogJywnLFxuICAgICAgICAgICAgZGVjaW1hbDogJy4nXG4gICAgICAgIH0sXG4gICAgICAgIGFiYnJldmlhdGlvbnM6IHtcbiAgICAgICAgICAgIHRob3VzYW5kOiAn5Y2DJyxcbiAgICAgICAgICAgIG1pbGxpb246ICfnmb7okKwnLFxuICAgICAgICAgICAgYmlsbGlvbjogJ+WNgeWEhCcsXG4gICAgICAgICAgICB0cmlsbGlvbjogJ+WFhidcbiAgICAgICAgfSxcbiAgICAgICAgb3JkaW5hbDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuICfnrKwnO1xuICAgICAgICB9LFxuICAgICAgICBjdXJyZW5jeToge1xuICAgICAgICAgICAgc3ltYm9sOiAnTlQkJyxcbiAgICAgICAgICAgIGNvZGU6ICdUV0QnXG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gQ29tbW9uSlNcbiAgICBpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBsYW5ndWFnZTtcbiAgICB9XG4gICAgLy8gQnJvd3NlclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubnVtYnJvICYmIHdpbmRvdy5udW1icm8uY3VsdHVyZSkge1xuICAgICAgICB3aW5kb3cubnVtYnJvLmN1bHR1cmUobGFuZ3VhZ2UuY3VsdHVyZUNvZGUsIGxhbmd1YWdlKTtcbiAgICB9XG59LmNhbGwodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyB0aGlzIDogd2luZG93KSk7XG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL25vZGVfbW9kdWxlcy9udW1icm8vbGFuZ3VhZ2VzL3poLVRXLmpzXG4vLyBtb2R1bGUgaWQgPSAxMDBcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///100\n");
+
+/***/ })
+/******/ ]);
+});
\ No newline at end of file
diff --git a/example/package.json b/example/package.json
index ca37f88..62457d5 100644
--- a/example/package.json
+++ b/example/package.json
@@ -6,7 +6,6 @@
"material-ui": "^0.17.0",
"react": "15.4.2",
"react-dom": "15.4.2",
- "react-number-input": "file:../",
"react-tap-event-plugin": "^2.0.1"
},
"devDependencies": {
diff --git a/example/src/App.js b/example/src/App.js
index 770567a..4d4ed8f 100644
--- a/example/src/App.js
+++ b/example/src/App.js
@@ -1,6 +1,6 @@
import React, { Component } from 'react';
import TextField from 'material-ui/TextField';
-import NumberInput from '../../dist/index.js';
+import NumberInput from '../../dist/index';
import './App.css';
class App extends Component {
@@ -36,7 +36,7 @@ class App extends Component {
NumberInput with thousand separators
NumberInput with decimal points (2 significant places)
-
+
Custom renderer
for numbers, currency and other important numbers",
"main": "dist/index.js",
"author": "hongymagic",
@@ -21,7 +21,7 @@
"currency"
],
"scripts": {
- "build": "babel index.js -d dist",
+ "build": "webpack -d",
"flow": "flow",
"test": "jest",
"storybook": "start-storybook -p 6006",
@@ -36,10 +36,12 @@
},
"dependencies": {
"babel-jest": "^19.0.0",
+ "babel-loader": "^7.1.2",
"babel-polyfill": "^6.23.0",
"numbro": "^1.10.1",
"react": "^0.14 || ^15.0.0-rc || ^15.0",
- "react-dom": "^0.14 || ^15.0.0-rc || ^15.0"
+ "react-dom": "^0.14 || ^15.0.0-rc || ^15.0",
+ "webpack": "^3.10.0"
},
"devDependencies": {
"@kadira/storybook": "^2.21.0",
diff --git a/index.js b/src/react-number-input.js
similarity index 100%
rename from index.js
rename to src/react-number-input.js
diff --git a/index.test.js b/src/react-number-input.test.js
similarity index 98%
rename from index.test.js
rename to src/react-number-input.test.js
index 6a4dbca..8ebba1d 100644
--- a/index.test.js
+++ b/src/react-number-input.test.js
@@ -1,6 +1,6 @@
import React from 'react';
import numbro from 'numbro';
-import NumberInput from './index';
+import NumberInput from './react-number-input';
import { shallow } from 'enzyme';
const testInitialFormat = states => {
diff --git a/stories/index.js b/stories/index.js
index 9279599..aa272a1 100644
--- a/stories/index.js
+++ b/stories/index.js
@@ -1,6 +1,6 @@
-import React from 'react';
-import { storiesOf, action } from '@kadira/storybook';
-import NumberInput from '../index.js';
+import React from 'react'
+import { storiesOf, action } from '@kadira/storybook'
+import NumberInput from '../dist/index'
storiesOf('NumberInput', module)
.add('without any properties', () => (
diff --git a/webpack.config.js b/webpack.config.js
new file mode 100644
index 0000000..8f51ea9
--- /dev/null
+++ b/webpack.config.js
@@ -0,0 +1,23 @@
+var path = require('path')
+var libraryName = require('./package.json').name
+var outputFile = libraryName + '.js'
+
+module.exports = {
+ devtool: 'eval-source-map',
+ entry: [path.join(__dirname, 'src/' + outputFile)],
+ output: {
+ path: path.join(__dirname, 'dist'),
+ filename: 'index.js',
+ library: libraryName,
+ libraryTarget: 'umd',
+ },
+ module: {
+ loaders: [
+ {
+ test: /(\.jsx|\.js)$/,
+ loader: 'babel-loader',
+ exclude: /(node_modules|bower_components)/,
+ },
+ ],
+ }
+}
\ No newline at end of file