"use strict"; /* * ATTENTION: An "eval-source-map" devtool has been used. * This devtool is neither made for production nor for readable output files. * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) * or disable the default devtool with "devtool: false". * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). */ exports.id = "vendor-chunks/hi-base32"; exports.ids = ["vendor-chunks/hi-base32"]; exports.modules = { /***/ "(ssr)/./node_modules/hi-base32/src/base32.js": /*!**********************************************!*\ !*** ./node_modules/hi-base32/src/base32.js ***! \**********************************************/ /***/ ((module, exports, __webpack_require__) => { eval("var __WEBPACK_AMD_DEFINE_RESULT__;\n/*\n * [hi-base32]{@link https://github.com/emn178/hi-base32}\n *\n * @version 0.5.0\n * @author Chen, Yi-Cyuan [emn178@gmail.com]\n * @copyright Chen, Yi-Cyuan 2015-2018\n * @license MIT\n */ /*jslint bitwise: true */ (function() {\n \"use strict\";\n var root = false ? 0 : {};\n var NODE_JS = !root.HI_BASE32_NO_NODE_JS && typeof process === \"object\" && process.versions && process.versions.node;\n if (NODE_JS) {\n root = global;\n }\n var COMMON_JS = !root.HI_BASE32_NO_COMMON_JS && \"object\" === \"object\" && module.exports;\n var AMD = true && __webpack_require__.amdO;\n var BASE32_ENCODE_CHAR = \"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567\".split(\"\");\n var BASE32_DECODE_CHAR = {\n \"A\": 0,\n \"B\": 1,\n \"C\": 2,\n \"D\": 3,\n \"E\": 4,\n \"F\": 5,\n \"G\": 6,\n \"H\": 7,\n \"I\": 8,\n \"J\": 9,\n \"K\": 10,\n \"L\": 11,\n \"M\": 12,\n \"N\": 13,\n \"O\": 14,\n \"P\": 15,\n \"Q\": 16,\n \"R\": 17,\n \"S\": 18,\n \"T\": 19,\n \"U\": 20,\n \"V\": 21,\n \"W\": 22,\n \"X\": 23,\n \"Y\": 24,\n \"Z\": 25,\n \"2\": 26,\n \"3\": 27,\n \"4\": 28,\n \"5\": 29,\n \"6\": 30,\n \"7\": 31\n };\n var blocks = [\n 0,\n 0,\n 0,\n 0,\n 0,\n 0,\n 0,\n 0\n ];\n var throwInvalidUtf8 = function(position, partial) {\n if (partial.length > 10) {\n partial = \"...\" + partial.substr(-10);\n }\n var err = new Error(\"Decoded data is not valid UTF-8.\" + \" Maybe try base32.decode.asBytes()?\" + \" Partial data after reading \" + position + \" bytes: \" + partial + \" <-\");\n err.position = position;\n throw err;\n };\n var toUtf8String = function(bytes) {\n var str = \"\", length = bytes.length, i = 0, followingChars = 0, b, c;\n while(i < length){\n b = bytes[i++];\n if (b <= 0x7F) {\n str += String.fromCharCode(b);\n continue;\n } else if (b > 0xBF && b <= 0xDF) {\n c = b & 0x1F;\n followingChars = 1;\n } else if (b <= 0xEF) {\n c = b & 0x0F;\n followingChars = 2;\n } else if (b <= 0xF7) {\n c = b & 0x07;\n followingChars = 3;\n } else {\n throwInvalidUtf8(i, str);\n }\n for(var j = 0; j < followingChars; ++j){\n b = bytes[i++];\n if (b < 0x80 || b > 0xBF) {\n throwInvalidUtf8(i, str);\n }\n c <<= 6;\n c += b & 0x3F;\n }\n if (c >= 0xD800 && c <= 0xDFFF) {\n throwInvalidUtf8(i, str);\n }\n if (c > 0x10FFFF) {\n throwInvalidUtf8(i, str);\n }\n if (c <= 0xFFFF) {\n str += String.fromCharCode(c);\n } else {\n c -= 0x10000;\n str += String.fromCharCode((c >> 10) + 0xD800);\n str += String.fromCharCode((c & 0x3FF) + 0xDC00);\n }\n }\n return str;\n };\n var decodeAsBytes = function(base32Str) {\n if (base32Str === \"\") {\n return [];\n } else if (!/^[A-Z2-7=]+$/.test(base32Str)) {\n throw new Error(\"Invalid base32 characters\");\n }\n base32Str = base32Str.replace(/=/g, \"\");\n var v1, v2, v3, v4, v5, v6, v7, v8, bytes = [], index = 0, length = base32Str.length;\n // 4 char to 3 bytes\n for(var i = 0, count = length >> 3 << 3; i < count;){\n v1 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v2 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v3 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v4 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v5 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v6 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v7 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v8 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n bytes[index++] = (v1 << 3 | v2 >>> 2) & 255;\n bytes[index++] = (v2 << 6 | v3 << 1 | v4 >>> 4) & 255;\n bytes[index++] = (v4 << 4 | v5 >>> 1) & 255;\n bytes[index++] = (v5 << 7 | v6 << 2 | v7 >>> 3) & 255;\n bytes[index++] = (v7 << 5 | v8) & 255;\n }\n // remain bytes\n var remain = length - count;\n if (remain === 2) {\n v1 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v2 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n bytes[index++] = (v1 << 3 | v2 >>> 2) & 255;\n } else if (remain === 4) {\n v1 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v2 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v3 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v4 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n bytes[index++] = (v1 << 3 | v2 >>> 2) & 255;\n bytes[index++] = (v2 << 6 | v3 << 1 | v4 >>> 4) & 255;\n } else if (remain === 5) {\n v1 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v2 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v3 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v4 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v5 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n bytes[index++] = (v1 << 3 | v2 >>> 2) & 255;\n bytes[index++] = (v2 << 6 | v3 << 1 | v4 >>> 4) & 255;\n bytes[index++] = (v4 << 4 | v5 >>> 1) & 255;\n } else if (remain === 7) {\n v1 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v2 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v3 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v4 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v5 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v6 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v7 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n bytes[index++] = (v1 << 3 | v2 >>> 2) & 255;\n bytes[index++] = (v2 << 6 | v3 << 1 | v4 >>> 4) & 255;\n bytes[index++] = (v4 << 4 | v5 >>> 1) & 255;\n bytes[index++] = (v5 << 7 | v6 << 2 | v7 >>> 3) & 255;\n }\n return bytes;\n };\n var encodeAscii = function(str) {\n var v1, v2, v3, v4, v5, base32Str = \"\", length = str.length;\n for(var i = 0, count = parseInt(length / 5) * 5; i < count;){\n v1 = str.charCodeAt(i++);\n v2 = str.charCodeAt(i++);\n v3 = str.charCodeAt(i++);\n v4 = str.charCodeAt(i++);\n v5 = str.charCodeAt(i++);\n base32Str += BASE32_ENCODE_CHAR[v1 >>> 3] + BASE32_ENCODE_CHAR[(v1 << 2 | v2 >>> 6) & 31] + BASE32_ENCODE_CHAR[v2 >>> 1 & 31] + BASE32_ENCODE_CHAR[(v2 << 4 | v3 >>> 4) & 31] + BASE32_ENCODE_CHAR[(v3 << 1 | v4 >>> 7) & 31] + BASE32_ENCODE_CHAR[v4 >>> 2 & 31] + BASE32_ENCODE_CHAR[(v4 << 3 | v5 >>> 5) & 31] + BASE32_ENCODE_CHAR[v5 & 31];\n }\n // remain char\n var remain = length - count;\n if (remain === 1) {\n v1 = str.charCodeAt(i);\n base32Str += BASE32_ENCODE_CHAR[v1 >>> 3] + BASE32_ENCODE_CHAR[v1 << 2 & 31] + \"======\";\n } else if (remain === 2) {\n v1 = str.charCodeAt(i++);\n v2 = str.charCodeAt(i);\n base32Str += BASE32_ENCODE_CHAR[v1 >>> 3] + BASE32_ENCODE_CHAR[(v1 << 2 | v2 >>> 6) & 31] + BASE32_ENCODE_CHAR[v2 >>> 1 & 31] + BASE32_ENCODE_CHAR[v2 << 4 & 31] + \"====\";\n } else if (remain === 3) {\n v1 = str.charCodeAt(i++);\n v2 = str.charCodeAt(i++);\n v3 = str.charCodeAt(i);\n base32Str += BASE32_ENCODE_CHAR[v1 >>> 3] + BASE32_ENCODE_CHAR[(v1 << 2 | v2 >>> 6) & 31] + BASE32_ENCODE_CHAR[v2 >>> 1 & 31] + BASE32_ENCODE_CHAR[(v2 << 4 | v3 >>> 4) & 31] + BASE32_ENCODE_CHAR[v3 << 1 & 31] + \"===\";\n } else if (remain === 4) {\n v1 = str.charCodeAt(i++);\n v2 = str.charCodeAt(i++);\n v3 = str.charCodeAt(i++);\n v4 = str.charCodeAt(i);\n base32Str += BASE32_ENCODE_CHAR[v1 >>> 3] + BASE32_ENCODE_CHAR[(v1 << 2 | v2 >>> 6) & 31] + BASE32_ENCODE_CHAR[v2 >>> 1 & 31] + BASE32_ENCODE_CHAR[(v2 << 4 | v3 >>> 4) & 31] + BASE32_ENCODE_CHAR[(v3 << 1 | v4 >>> 7) & 31] + BASE32_ENCODE_CHAR[v4 >>> 2 & 31] + BASE32_ENCODE_CHAR[v4 << 3 & 31] + \"=\";\n }\n return base32Str;\n };\n var encodeUtf8 = function(str) {\n var v1, v2, v3, v4, v5, code, end = false, base32Str = \"\", index = 0, i, start = 0, bytes = 0, length = str.length;\n if (str === \"\") {\n return base32Str;\n }\n do {\n blocks[0] = blocks[5];\n blocks[1] = blocks[6];\n blocks[2] = blocks[7];\n for(i = start; index < length && i < 5; ++index){\n code = str.charCodeAt(index);\n if (code < 0x80) {\n blocks[i++] = code;\n } else if (code < 0x800) {\n blocks[i++] = 0xc0 | code >> 6;\n blocks[i++] = 0x80 | code & 0x3f;\n } else if (code < 0xd800 || code >= 0xe000) {\n blocks[i++] = 0xe0 | code >> 12;\n blocks[i++] = 0x80 | code >> 6 & 0x3f;\n blocks[i++] = 0x80 | code & 0x3f;\n } else {\n code = 0x10000 + ((code & 0x3ff) << 10 | str.charCodeAt(++index) & 0x3ff);\n blocks[i++] = 0xf0 | code >> 18;\n blocks[i++] = 0x80 | code >> 12 & 0x3f;\n blocks[i++] = 0x80 | code >> 6 & 0x3f;\n blocks[i++] = 0x80 | code & 0x3f;\n }\n }\n bytes += i - start;\n start = i - 5;\n if (index === length) {\n ++index;\n }\n if (index > length && i < 6) {\n end = true;\n }\n v1 = blocks[0];\n if (i > 4) {\n v2 = blocks[1];\n v3 = blocks[2];\n v4 = blocks[3];\n v5 = blocks[4];\n base32Str += BASE32_ENCODE_CHAR[v1 >>> 3] + BASE32_ENCODE_CHAR[(v1 << 2 | v2 >>> 6) & 31] + BASE32_ENCODE_CHAR[v2 >>> 1 & 31] + BASE32_ENCODE_CHAR[(v2 << 4 | v3 >>> 4) & 31] + BASE32_ENCODE_CHAR[(v3 << 1 | v4 >>> 7) & 31] + BASE32_ENCODE_CHAR[v4 >>> 2 & 31] + BASE32_ENCODE_CHAR[(v4 << 3 | v5 >>> 5) & 31] + BASE32_ENCODE_CHAR[v5 & 31];\n } else if (i === 1) {\n base32Str += BASE32_ENCODE_CHAR[v1 >>> 3] + BASE32_ENCODE_CHAR[v1 << 2 & 31] + \"======\";\n } else if (i === 2) {\n v2 = blocks[1];\n base32Str += BASE32_ENCODE_CHAR[v1 >>> 3] + BASE32_ENCODE_CHAR[(v1 << 2 | v2 >>> 6) & 31] + BASE32_ENCODE_CHAR[v2 >>> 1 & 31] + BASE32_ENCODE_CHAR[v2 << 4 & 31] + \"====\";\n } else if (i === 3) {\n v2 = blocks[1];\n v3 = blocks[2];\n base32Str += BASE32_ENCODE_CHAR[v1 >>> 3] + BASE32_ENCODE_CHAR[(v1 << 2 | v2 >>> 6) & 31] + BASE32_ENCODE_CHAR[v2 >>> 1 & 31] + BASE32_ENCODE_CHAR[(v2 << 4 | v3 >>> 4) & 31] + BASE32_ENCODE_CHAR[v3 << 1 & 31] + \"===\";\n } else {\n v2 = blocks[1];\n v3 = blocks[2];\n v4 = blocks[3];\n base32Str += BASE32_ENCODE_CHAR[v1 >>> 3] + BASE32_ENCODE_CHAR[(v1 << 2 | v2 >>> 6) & 31] + BASE32_ENCODE_CHAR[v2 >>> 1 & 31] + BASE32_ENCODE_CHAR[(v2 << 4 | v3 >>> 4) & 31] + BASE32_ENCODE_CHAR[(v3 << 1 | v4 >>> 7) & 31] + BASE32_ENCODE_CHAR[v4 >>> 2 & 31] + BASE32_ENCODE_CHAR[v4 << 3 & 31] + \"=\";\n }\n }while (!end);\n return base32Str;\n };\n var encodeBytes = function(bytes) {\n var v1, v2, v3, v4, v5, base32Str = \"\", length = bytes.length;\n for(var i = 0, count = parseInt(length / 5) * 5; i < count;){\n v1 = bytes[i++];\n v2 = bytes[i++];\n v3 = bytes[i++];\n v4 = bytes[i++];\n v5 = bytes[i++];\n base32Str += BASE32_ENCODE_CHAR[v1 >>> 3] + BASE32_ENCODE_CHAR[(v1 << 2 | v2 >>> 6) & 31] + BASE32_ENCODE_CHAR[v2 >>> 1 & 31] + BASE32_ENCODE_CHAR[(v2 << 4 | v3 >>> 4) & 31] + BASE32_ENCODE_CHAR[(v3 << 1 | v4 >>> 7) & 31] + BASE32_ENCODE_CHAR[v4 >>> 2 & 31] + BASE32_ENCODE_CHAR[(v4 << 3 | v5 >>> 5) & 31] + BASE32_ENCODE_CHAR[v5 & 31];\n }\n // remain char\n var remain = length - count;\n if (remain === 1) {\n v1 = bytes[i];\n base32Str += BASE32_ENCODE_CHAR[v1 >>> 3] + BASE32_ENCODE_CHAR[v1 << 2 & 31] + \"======\";\n } else if (remain === 2) {\n v1 = bytes[i++];\n v2 = bytes[i];\n base32Str += BASE32_ENCODE_CHAR[v1 >>> 3] + BASE32_ENCODE_CHAR[(v1 << 2 | v2 >>> 6) & 31] + BASE32_ENCODE_CHAR[v2 >>> 1 & 31] + BASE32_ENCODE_CHAR[v2 << 4 & 31] + \"====\";\n } else if (remain === 3) {\n v1 = bytes[i++];\n v2 = bytes[i++];\n v3 = bytes[i];\n base32Str += BASE32_ENCODE_CHAR[v1 >>> 3] + BASE32_ENCODE_CHAR[(v1 << 2 | v2 >>> 6) & 31] + BASE32_ENCODE_CHAR[v2 >>> 1 & 31] + BASE32_ENCODE_CHAR[(v2 << 4 | v3 >>> 4) & 31] + BASE32_ENCODE_CHAR[v3 << 1 & 31] + \"===\";\n } else if (remain === 4) {\n v1 = bytes[i++];\n v2 = bytes[i++];\n v3 = bytes[i++];\n v4 = bytes[i];\n base32Str += BASE32_ENCODE_CHAR[v1 >>> 3] + BASE32_ENCODE_CHAR[(v1 << 2 | v2 >>> 6) & 31] + BASE32_ENCODE_CHAR[v2 >>> 1 & 31] + BASE32_ENCODE_CHAR[(v2 << 4 | v3 >>> 4) & 31] + BASE32_ENCODE_CHAR[(v3 << 1 | v4 >>> 7) & 31] + BASE32_ENCODE_CHAR[v4 >>> 2 & 31] + BASE32_ENCODE_CHAR[v4 << 3 & 31] + \"=\";\n }\n return base32Str;\n };\n var encode = function(input, asciiOnly) {\n var notString = typeof input !== \"string\";\n if (notString && input.constructor === ArrayBuffer) {\n input = new Uint8Array(input);\n }\n if (notString) {\n return encodeBytes(input);\n } else if (asciiOnly) {\n return encodeAscii(input);\n } else {\n return encodeUtf8(input);\n }\n };\n var decode = function(base32Str, asciiOnly) {\n if (!asciiOnly) {\n return toUtf8String(decodeAsBytes(base32Str));\n }\n if (base32Str === \"\") {\n return \"\";\n } else if (!/^[A-Z2-7=]+$/.test(base32Str)) {\n throw new Error(\"Invalid base32 characters\");\n }\n var v1, v2, v3, v4, v5, v6, v7, v8, str = \"\", length = base32Str.indexOf(\"=\");\n if (length === -1) {\n length = base32Str.length;\n }\n // 8 char to 5 bytes\n for(var i = 0, count = length >> 3 << 3; i < count;){\n v1 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v2 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v3 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v4 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v5 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v6 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v7 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v8 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n str += String.fromCharCode((v1 << 3 | v2 >>> 2) & 255) + String.fromCharCode((v2 << 6 | v3 << 1 | v4 >>> 4) & 255) + String.fromCharCode((v4 << 4 | v5 >>> 1) & 255) + String.fromCharCode((v5 << 7 | v6 << 2 | v7 >>> 3) & 255) + String.fromCharCode((v7 << 5 | v8) & 255);\n }\n // remain bytes\n var remain = length - count;\n if (remain === 2) {\n v1 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v2 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n str += String.fromCharCode((v1 << 3 | v2 >>> 2) & 255);\n } else if (remain === 4) {\n v1 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v2 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v3 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v4 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n str += String.fromCharCode((v1 << 3 | v2 >>> 2) & 255) + String.fromCharCode((v2 << 6 | v3 << 1 | v4 >>> 4) & 255);\n } else if (remain === 5) {\n v1 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v2 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v3 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v4 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v5 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n str += String.fromCharCode((v1 << 3 | v2 >>> 2) & 255) + String.fromCharCode((v2 << 6 | v3 << 1 | v4 >>> 4) & 255) + String.fromCharCode((v4 << 4 | v5 >>> 1) & 255);\n } else if (remain === 7) {\n v1 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v2 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v3 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v4 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v5 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v6 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n v7 = BASE32_DECODE_CHAR[base32Str.charAt(i++)];\n str += String.fromCharCode((v1 << 3 | v2 >>> 2) & 255) + String.fromCharCode((v2 << 6 | v3 << 1 | v4 >>> 4) & 255) + String.fromCharCode((v4 << 4 | v5 >>> 1) & 255) + String.fromCharCode((v5 << 7 | v6 << 2 | v7 >>> 3) & 255);\n }\n return str;\n };\n var exports = {\n encode: encode,\n decode: decode\n };\n decode.asBytes = decodeAsBytes;\n if (COMMON_JS) {\n module.exports = exports;\n } else {\n root.base32 = exports;\n if (AMD) {\n !(__WEBPACK_AMD_DEFINE_RESULT__ = (function() {\n return exports;\n }).call(exports, __webpack_require__, exports, module),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n }\n }\n})();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvaGktYmFzZTMyL3NyYy9iYXNlMzIuanMiLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7O0NBT0MsR0FDRCx1QkFBdUIsR0FDdEI7SUFDQztJQUVBLElBQUlBLE9BQU8sTUFBa0IsR0FBV0MsQ0FBTUEsR0FBRyxDQUFDO0lBQ2xELElBQUlDLFVBQVUsQ0FBQ0YsS0FBS0csb0JBQW9CLElBQUksT0FBT0MsWUFBWSxZQUFZQSxRQUFRQyxRQUFRLElBQUlELFFBQVFDLFFBQVEsQ0FBQ0MsSUFBSTtJQUNwSCxJQUFJSixTQUFTO1FBQ1hGLE9BQU9PO0lBQ1Q7SUFDQSxJQUFJQyxZQUFZLENBQUNSLEtBQUtTLHNCQUFzQixJQUFJLFFBQWFDLEtBQUssWUFBWUEsT0FBT0MsT0FBTztJQUM1RixJQUFJQyxNQUFNLEtBQWtCLElBQWNDLHdCQUFVO0lBQ3BELElBQUlFLHFCQUFxQixtQ0FBbUNDLEtBQUssQ0FBQztJQUNsRSxJQUFJQyxxQkFBcUI7UUFDdkIsS0FBSztRQUFHLEtBQUs7UUFBRyxLQUFLO1FBQUcsS0FBSztRQUFHLEtBQUs7UUFBRyxLQUFLO1FBQUcsS0FBSztRQUFHLEtBQUs7UUFBRyxLQUFLO1FBQ3JFLEtBQUs7UUFBRyxLQUFLO1FBQUksS0FBSztRQUFJLEtBQUs7UUFBSSxLQUFLO1FBQUksS0FBSztRQUFJLEtBQUs7UUFBSSxLQUFLO1FBQ25FLEtBQUs7UUFBSSxLQUFLO1FBQUksS0FBSztRQUFJLEtBQUs7UUFBSSxLQUFLO1FBQUksS0FBSztRQUFJLEtBQUs7UUFBSSxLQUFLO1FBQ3BFLEtBQUs7UUFBSSxLQUFLO1FBQUksS0FBSztRQUFJLEtBQUs7UUFBSSxLQUFLO1FBQUksS0FBSztRQUFJLEtBQUs7SUFDN0Q7SUFFQSxJQUFJQyxTQUFTO1FBQUM7UUFBRztRQUFHO1FBQUc7UUFBRztRQUFHO1FBQUc7UUFBRztLQUFFO0lBRXJDLElBQUlDLG1CQUFtQixTQUFVQyxRQUFRLEVBQUVDLE9BQU87UUFDaEQsSUFBSUEsUUFB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Q1JPLFFBQVFBO0lBQ1Y7SUFDQUEsT0FBT0UsT0FBTyxHQUFHakM7SUFFakIsSUFBSTVCLFdBQVc7UUFDYkUsT0FBT0MsT0FBTyxHQUFHQTtJQUNuQixPQUFPO1FBQ0xYLEtBQUtzRSxNQUFNLEdBQUczRDtRQUNkLElBQUlDLEtBQUs7WUFDUEMsbUNBQU87Z0JBQ0wsT0FBT0Y7WUFDVCxDQUFDO0FBQUEsa0dBQUM7UUFDSjtJQUNGO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9mbHVzaC1ub3Rlcy8uL25vZGVfbW9kdWxlcy9oaS1iYXNlMzIvc3JjL2Jhc2UzMi5qcz82YmJlIl0sInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBbaGktYmFzZTMyXXtAbGluayBodHRwczovL2dpdGh1Yi5jb20vZW1uMTc4L2hpLWJhc2UzMn1cbiAqXG4gKiBAdmVyc2lvbiAwLjUuMFxuICogQGF1dGhvciBDaGVuLCBZaS1DeXVhbiBbZW1uMTc4QGdtYWlsLmNvbV1cbiAqIEBjb3B5cmlnaHQgQ2hlbiwgWWktQ3l1YW4gMjAxNS0yMDE4XG4gKiBAbGljZW5zZSBNSVRcbiAqL1xuLypqc2xpbnQgYml0d2lzZTogdHJ1ZSAqL1xuKGZ1bmN0aW9uICgpIHtcbiAgJ3VzZSBzdHJpY3QnO1xuXG4gIHZhciByb290ID0gdHlwZW9mIHdpbmRvdyA9PT0gJ29iamVjdCcgPyB3aW5kb3cgOiB7fTtcbiAgdmFyIE5PREVfSlMgPSAhcm9vdC5ISV9CQVNFMzJfTk9fTk9ERV9KUyAmJiB0eXBlb2YgcHJvY2VzcyA9PT0gJ29iamVjdCcgJiYgcHJvY2Vzcy52ZXJzaW9ucyAmJiBwcm9jZXNzLnZlcnNpb25zLm5vZGU7XG4gIGlmIChOT0RFX0pTKSB7XG4gICAgcm9vdCA9IGdsb2JhbDtcbiAgfVxuICB2YXIgQ09NTU9OX0pTID0gIXJvb3QuSElfQkFTRTMyX05PX0NPTU1PTl9KUyAmJiB0eXBlb2YgbW9kdWxlID09PSAnb2JqZWN0JyAmJiBtb2R1bGUuZXhwb3J0cztcbiAgdmFyIEFNRCA9IHR5cGVvZiBkZWZpbmUgPT09ICdmdW5jdGlvbicgJiYgZGVmaW5lLmFtZDtcbiAgdmFyIEJBU0UzMl9FTkNPREVfQ0hBUiA9ICdBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjIzNDU2Nycuc3BsaXQoJycpO1xuICB2YXIgQkFTRTMyX0RFQ09ERV9DSEFSID0ge1xuICAgICdBJzogMCwgJ0InOiAxLCAnQyc6IDIsICdEJzogMywgJ0UnOiA0LCAnRic6IDUsICdHJzogNiwgJ0gnOiA3LCAnSSc6IDgsXG4gICAgJ0onOiA5LCAnSyc6IDEwLCAnTCc6IDExLCAnTSc6IDEyLCAnTic6IDEzLCAnTyc6IDE0LCAnUCc6IDE1LCAnUSc6IDE2LFxuICAgICdSJzogMTcsICdTJzogMTgsICdUJzogMTksICdVJzogMjAsICdWJzogMjEsICdXJzogMjIsICdYJzogMjMsICdZJzogMjQsXG4gICAgJ1onOiAyNSwgJzInOiAyNiwgJzMnOiAyNywgJzQnOiAyOCwgJzUnOiAyOSwgJzYnOiAzMCwgJzcnOiAzMVxuICB9O1xuXG4gIHZhciBibG9ja3MgPSBbMCwgMCwgMCwgMCwgMCwgMCwgMCwgMF07XG5cbiAgdmFyIHRocm93SW52YWxpZFV0ZjggPSBmdW5jdGlvbiAocG9zaXRpb24sIHBhcnRpYWwpIHtcbiAgICBpZiAocGFydGlhbC5sZW5ndGggPiAxMCkge1xuICAgICAgcGFydGlhbCA9ICcuLi4nICsgcGFydGlhbC5zdWJzdHIoLTEwKTtcbiAgICB9XG4gICAgdmFyIGVyciA9IG5ldyBFcnJvcignRGVjb2RlZCBkYXRhIGlzIG5vdCB2YWxpZCBVVEYtOC4nXG4gICAgICArICcgTWF5YmUgdHJ5IGJhc2UzMi5kZWNvZGUuYXNCeXRlcygpPydcbiAgICAgICsgJyBQYXJ0aWFsIGRhdGEgYWZ0ZXIgcmVhZGluZyAnICsgcG9zaXRpb24gKyAnIGJ5dGVzOiAnICsgcGFydGlhbCArICcgPC0nKTtcbiAgICBlcnIucG9zaXRpb24gPSBwb3NpdGlvbjtcbiAgICB0aHJvdyBlcnI7XG4gIH07XG5cbiAgdmFyIHRvVXRmOFN0cmluZyA9IGZ1bmN0aW9uIChieXRlcykge1xuICAgIHZhciBzdHIgPSAnJywgbGVuZ3RoID0gYnl0ZXMubGVuZ3RoLCBpID0gMCwgZm9sbG93aW5nQ2hhcnMgPSAwLCBiLCBjO1xuICAgIHdoaWxlIChpIDwgbGVuZ3RoKSB7XG4gICAgICBiID0gYnl0ZXNbaSsrXTtcbiAgICAgIGlmIChiIDw9IDB4N0YpIHtcbiAgICAgICAgc3RyICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoYik7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfSBlbHNlIGlmIChiID4gMHhCRiAmJiBiIDw9IDB4REYpIHtcbiAgICAgICAgYyA9IGIgJiAweDFGO1xuICAgICAgICBmb2xsb3dpbmdDaGFycyA9IDE7XG4gICAgICB9IGVsc2UgaWYgKGIgPD0gMHhFRikge1xuICAgICAgICBjID0gYiAmIDB4MEY7XG4gICAgICAgIGZvbGxvd2luZ0NoYXJzID0gMjtcbiAgICAgIH0gZWxzZSBpZiAoYiA8PSAweEY3KSB7XG4gICAgICAgIGMgPSBiICYgMHgwNztcbiAgICAgICAgZm9sbG93aW5nQ2hhcnMgPSAzO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3dJbnZhbGlkVXRmOChpLCBzdHIpO1xuICAgICAgfVxuXG4gICAgICBmb3IgKHZhciBqID0gMDsgaiA8IGZvbGxvd2luZ0NoYXJzOyArK2opIHtcbiAgICAgICAgYiA9IGJ5dGVzW2krK107XG4gICAgICAgIGlmIChiIDwgMHg4MCB8fCBiID4gMHhCRikge1xuICAgICAgICAgIHRocm93SW52YWxpZFV0ZjgoaSwgc3RyKTtcbiAgICAgICAgfVxuICAgICAgICBjIDw8PSA2O1xuICAgICAgICBjICs9IGIgJiAweDNGO1xuICAgICAgfVxuICAgICAgaWYgKGMgPj0gMHhEODAwICYmIGMgPD0gMHhERkZGKSB7XG4gICAgICAgIHRocm93SW52YWxpZFV0ZjgoaSwgc3RyKTtcbiAgICAgIH1cbiAgICAgIGlmIChjID4gMHgxMEZGRkYpIHtcbiAgICAgICAgdGhyb3dJbnZhbGlkVXRmOChpLCBzdHIpO1xuICAgICAgfVxuXG4gICAgICBpZiAoYyA8PSAweEZGRkYpIHtcbiAgICAgICAgc3RyICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoYyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjIC09IDB4MTAwMDA7XG4gICAgICAgIHN0ciArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKChjID4+IDEwKSArIDB4RDgwMCk7XG4gICAgICAgIHN0ciArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKChjICYgMHgzRkYpICsgMHhEQzAwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHN0cjtcbiAgfTtcblxuICB2YXIgZGVjb2RlQXNCeXRlcyA9IGZ1bmN0aW9uIChiYXNlMzJTdHIpIHtcbiAgICBpZiAoYmFzZTMyU3RyID09PSAnJykge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH0gZWxzZSBpZiAoIS9eW0EtWjItNz1dKyQvLnRlc3QoYmFzZTMyU3RyKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGJhc2UzMiBjaGFyYWN0ZXJzJyk7XG4gICAgfVxuICAgIGJhc2UzMlN0ciA9IGJhc2UzMlN0ci5yZXBsYWNlKC89L2csICcnKTtcbiAgICB2YXIgdjEsIHYyLCB2MywgdjQsIHY1LCB2NiwgdjcsIHY4LCBieXRlcyA9IFtdLCBpbmRleCA9IDAsIGxlbmd0aCA9IGJhc2UzMlN0ci5sZW5ndGg7XG5cbiAgICAvLyA0IGNoYXIgdG8gMyBieXRlc1xuICAgIGZvciAodmFyIGkgPSAwLCBjb3VudCA9IGxlbmd0aCA+PiAzIDw8IDM7IGkgPCBjb3VudDspIHtcbiAgICAgIHYxID0gQkFTRTMyX0RFQ09ERV9DSEFSW2Jhc2UzMlN0ci5jaGFyQXQoaSsrKV07XG4gICAgICB2MiA9IEJBU0UzMl9ERUNPREVfQ0hBUltiYXNlMzJTdHIuY2hhckF0KGkrKyldO1xuICAgICAgdjMgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIHY0ID0gQkFTRTMyX0RFQ09ERV9DSEFSW2Jhc2UzMlN0ci5jaGFyQXQoaSsrKV07XG4gICAgICB2NSA9IEJBU0UzMl9ERUNPREVfQ0hBUltiYXNlMzJTdHIuY2hhckF0KGkrKyldO1xuICAgICAgdjYgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIHY3ID0gQkFTRTMyX0RFQ09ERV9DSEFSW2Jhc2UzMlN0ci5jaGFyQXQoaSsrKV07XG4gICAgICB2OCA9IEJBU0UzMl9ERUNPREVfQ0hBUltiYXNlMzJTdHIuY2hhckF0KGkrKyldO1xuICAgICAgYnl0ZXNbaW5kZXgrK10gPSAodjEgPDwgMyB8IHYyID4+PiAyKSAmIDI1NTtcbiAgICAgIGJ5dGVzW2luZGV4KytdID0gKHYyIDw8IDYgfCB2MyA8PCAxIHwgdjQgPj4+IDQpICYgMjU1O1xuICAgICAgYnl0ZXNbaW5kZXgrK10gPSAodjQgPDwgNCB8IHY1ID4+PiAxKSAmIDI1NTtcbiAgICAgIGJ5dGVzW2luZGV4KytdID0gKHY1IDw8IDcgfCB2NiA8PCAyIHwgdjcgPj4+IDMpICYgMjU1O1xuICAgICAgYnl0ZXNbaW5kZXgrK10gPSAodjcgPDwgNSB8IHY4KSAmIDI1NTtcbiAgICB9XG5cbiAgICAvLyByZW1haW4gYnl0ZXNcbiAgICB2YXIgcmVtYWluID0gbGVuZ3RoIC0gY291bnQ7XG4gICAgaWYgKHJlbWFpbiA9PT0gMikge1xuICAgICAgdjEgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIHYyID0gQkFTRTMyX0RFQ09ERV9DSEFSW2Jhc2UzMlN0ci5jaGFyQXQoaSsrKV07XG4gICAgICBieXRlc1tpbmRleCsrXSA9ICh2MSA8PCAzIHwgdjIgPj4+IDIpICYgMjU1O1xuICAgIH0gZWxzZSBpZiAocmVtYWluID09PSA0KSB7XG4gICAgICB2MSA9IEJBU0UzMl9ERUNPREVfQ0hBUltiYXNlMzJTdHIuY2hhckF0KGkrKyldO1xuICAgICAgdjIgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIHYzID0gQkFTRTMyX0RFQ09ERV9DSEFSW2Jhc2UzMlN0ci5jaGFyQXQoaSsrKV07XG4gICAgICB2NCA9IEJBU0UzMl9ERUNPREVfQ0hBUltiYXNlMzJTdHIuY2hhckF0KGkrKyldO1xuICAgICAgYnl0ZXNbaW5kZXgrK10gPSAodjEgPDwgMyB8IHYyID4+PiAyKSAmIDI1NTtcbiAgICAgIGJ5dGVzW2luZGV4KytdID0gKHYyIDw8IDYgfCB2MyA8PCAxIHwgdjQgPj4+IDQpICYgMjU1O1xuICAgIH0gZWxzZSBpZiAocmVtYWluID09PSA1KSB7XG4gICAgICB2MSA9IEJBU0UzMl9ERUNPREVfQ0hBUltiYXNlMzJTdHIuY2hhckF0KGkrKyldO1xuICAgICAgdjIgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIHYzID0gQkFTRTMyX0RFQ09ERV9DSEFSW2Jhc2UzMlN0ci5jaGFyQXQoaSsrKV07XG4gICAgICB2NCA9IEJBU0UzMl9ERUNPREVfQ0hBUltiYXNlMzJTdHIuY2hhckF0KGkrKyldO1xuICAgICAgdjUgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIGJ5dGVzW2luZGV4KytdID0gKHYxIDw8IDMgfCB2MiA+Pj4gMikgJiAyNTU7XG4gICAgICBieXRlc1tpbmRleCsrXSA9ICh2MiA8PCA2IHwgdjMgPDwgMSB8IHY0ID4+PiA0KSAmIDI1NTtcbiAgICAgIGJ5dGVzW2luZGV4KytdID0gKHY0IDw8IDQgfCB2NSA+Pj4gMSkgJiAyNTU7XG4gICAgfSBlbHNlIGlmIChyZW1haW4gPT09IDcpIHtcbiAgICAgIHYxID0gQkFTRTMyX0RFQ09ERV9DSEFSW2Jhc2UzMlN0ci5jaGFyQXQoaSsrKV07XG4gICAgICB2MiA9IEJBU0UzMl9ERUNPREVfQ0hBUltiYXNlMzJTdHIuY2hhckF0KGkrKyldO1xuICAgICAgdjMgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIHY0ID0gQkFTRTMyX0RFQ09ERV9DSEFSW2Jhc2UzMlN0ci5jaGFyQXQoaSsrKV07XG4gICAgICB2NSA9IEJBU0UzMl9ERUNPREVfQ0hBUltiYXNlMzJTdHIuY2hhckF0KGkrKyldO1xuICAgICAgdjYgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIHY3ID0gQkFTRTMyX0RFQ09ERV9DSEFSW2Jhc2UzMlN0ci5jaGFyQXQoaSsrKV07XG4gICAgICBieXRlc1tpbmRleCsrXSA9ICh2MSA8PCAzIHwgdjIgPj4+IDIpICYgMjU1O1xuICAgICAgYnl0ZXNbaW5kZXgrK10gPSAodjIgPDwgNiB8IHYzIDw8IDEgfCB2NCA+Pj4gNCkgJiAyNTU7XG4gICAgICBieXRlc1tpbmRleCsrXSA9ICh2NCA8PCA0IHwgdjUgPj4+IDEpICYgMjU1O1xuICAgICAgYnl0ZXNbaW5kZXgrK10gPSAodjUgPDwgNyB8IHY2IDw8IDIgfCB2NyA+Pj4gMykgJiAyNTU7XG4gICAgfVxuICAgIHJldHVybiBieXRlcztcbiAgfTtcblxuICB2YXIgZW5jb2RlQXNjaWkgPSBmdW5jdGlvbiAoc3RyKSB7XG4gICAgdmFyIHYxLCB2MiwgdjMsIHY0LCB2NSwgYmFzZTMyU3RyID0gJycsIGxlbmd0aCA9IHN0ci5sZW5ndGg7XG4gICAgZm9yICh2YXIgaSA9IDAsIGNvdW50ID0gcGFyc2VJbnQobGVuZ3RoIC8gNSkgKiA1OyBpIDwgY291bnQ7KSB7XG4gICAgICB2MSA9IHN0ci5jaGFyQ29kZUF0KGkrKyk7XG4gICAgICB2MiA9IHN0ci5jaGFyQ29kZUF0KGkrKyk7XG4gICAgICB2MyA9IHN0ci5jaGFyQ29kZUF0KGkrKyk7XG4gICAgICB2NCA9IHN0ci5jaGFyQ29kZUF0KGkrKyk7XG4gICAgICB2NSA9IHN0ci5jaGFyQ29kZUF0KGkrKyk7XG4gICAgICBiYXNlMzJTdHIgKz0gQkFTRTMyX0VOQ09ERV9DSEFSW3YxID4+PiAzXSArXG4gICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjEgPDwgMiB8IHYyID4+PiA2KSAmIDMxXSArXG4gICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjIgPj4+IDEpICYgMzFdICtcbiAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2MiA8PCA0IHwgdjMgPj4+IDQpICYgMzFdICtcbiAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2MyA8PCAxIHwgdjQgPj4+IDcpICYgMzFdICtcbiAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2NCA+Pj4gMikgJiAzMV0gK1xuICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHY0IDw8IDMgfCB2NSA+Pj4gNSkgJiAzMV0gK1xuICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbdjUgJiAzMV07XG4gICAgfVxuXG4gICAgLy8gcmVtYWluIGNoYXJcbiAgICB2YXIgcmVtYWluID0gbGVuZ3RoIC0gY291bnQ7XG4gICAgaWYgKHJlbWFpbiA9PT0gMSkge1xuICAgICAgdjEgPSBzdHIuY2hhckNvZGVBdChpKTtcbiAgICAgIGJhc2UzMlN0ciArPSBCQVNFMzJfRU5DT0RFX0NIQVJbdjEgPj4+IDNdICtcbiAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2MSA8PCAyKSAmIDMxXSArXG4gICAgICAgICc9PT09PT0nO1xuICAgIH0gZWxzZSBpZiAocmVtYWluID09PSAyKSB7XG4gICAgICB2MSA9IHN0ci5jaGFyQ29kZUF0KGkrKyk7XG4gICAgICB2MiA9IHN0ci5jaGFyQ29kZUF0KGkpO1xuICAgICAgYmFzZTMyU3RyICs9IEJBU0UzMl9FTkNPREVfQ0hBUlt2MSA+Pj4gM10gK1xuICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHYxIDw8IDIgfCB2MiA+Pj4gNikgJiAzMV0gK1xuICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHYyID4+PiAxKSAmIDMxXSArXG4gICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjIgPDwgNCkgJiAzMV0gK1xuICAgICAgICAnPT09PSc7XG4gICAgfSBlbHNlIGlmIChyZW1haW4gPT09IDMpIHtcbiAgICAgIHYxID0gc3RyLmNoYXJDb2RlQXQoaSsrKTtcbiAgICAgIHYyID0gc3RyLmNoYXJDb2RlQXQoaSsrKTtcbiAgICAgIHYzID0gc3RyLmNoYXJDb2RlQXQoaSk7XG4gICAgICBiYXNlMzJTdHIgKz0gQkFTRTMyX0VOQ09ERV9DSEFSW3YxID4+PiAzXSArXG4gICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjEgPDwgMiB8IHYyID4+PiA2KSAmIDMxXSArXG4gICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjIgPj4+IDEpICYgMzFdICtcbiAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2MiA8PCA0IHwgdjMgPj4+IDQpICYgMzFdICtcbiAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2MyA8PCAxKSAmIDMxXSArXG4gICAgICAgICc9PT0nO1xuICAgIH0gZWxzZSBpZiAocmVtYWluID09PSA0KSB7XG4gICAgICB2MSA9IHN0ci5jaGFyQ29kZUF0KGkrKyk7XG4gICAgICB2MiA9IHN0ci5jaGFyQ29kZUF0KGkrKyk7XG4gICAgICB2MyA9IHN0ci5jaGFyQ29kZUF0KGkrKyk7XG4gICAgICB2NCA9IHN0ci5jaGFyQ29kZUF0KGkpO1xuICAgICAgYmFzZTMyU3RyICs9IEJBU0UzMl9FTkNPREVfQ0hBUlt2MSA+Pj4gM10gK1xuICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHYxIDw8IDIgfCB2MiA+Pj4gNikgJiAzMV0gK1xuICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHYyID4+PiAxKSAmIDMxXSArXG4gICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjIgPDwgNCB8IHYzID4+PiA0KSAmIDMxXSArXG4gICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjMgPDwgMSB8IHY0ID4+PiA3KSAmIDMxXSArXG4gICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjQgPj4+IDIpICYgMzFdICtcbiAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2NCA8PCAzKSAmIDMxXSArXG4gICAgICAgICc9JztcbiAgICB9XG4gICAgcmV0dXJuIGJhc2UzMlN0cjtcbiAgfTtcblxuICB2YXIgZW5jb2RlVXRmOCA9IGZ1bmN0aW9uIChzdHIpIHtcbiAgICB2YXIgdjEsIHYyLCB2MywgdjQsIHY1LCBjb2RlLCBlbmQgPSBmYWxzZSwgYmFzZTMyU3RyID0gJycsXG4gICAgICBpbmRleCA9IDAsIGksIHN0YXJ0ID0gMCwgYnl0ZXMgPSAwLCBsZW5ndGggPSBzdHIubGVuZ3RoO1xuICAgICAgaWYgKHN0ciA9PT0gJycpIHtcbiAgICAgICAgcmV0dXJuIGJhc2UzMlN0cjtcbiAgICAgIH1cbiAgICBkbyB7XG4gICAgICBibG9ja3NbMF0gPSBibG9ja3NbNV07XG4gICAgICBibG9ja3NbMV0gPSBibG9ja3NbNl07XG4gICAgICBibG9ja3NbMl0gPSBibG9ja3NbN107XG4gICAgICBmb3IgKGkgPSBzdGFydDsgaW5kZXggPCBsZW5ndGggJiYgaSA8IDU7ICsraW5kZXgpIHtcbiAgICAgICAgY29kZSA9IHN0ci5jaGFyQ29kZUF0KGluZGV4KTtcbiAgICAgICAgaWYgKGNvZGUgPCAweDgwKSB7XG4gICAgICAgICAgYmxvY2tzW2krK10gPSBjb2RlO1xuICAgICAgICB9IGVsc2UgaWYgKGNvZGUgPCAweDgwMCkge1xuICAgICAgICAgIGJsb2Nrc1tpKytdID0gMHhjMCB8IChjb2RlID4+IDYpO1xuICAgICAgICAgIGJsb2Nrc1tpKytdID0gMHg4MCB8IChjb2RlICYgMHgzZik7XG4gICAgICAgIH0gZWxzZSBpZiAoY29kZSA8IDB4ZDgwMCB8fCBjb2RlID49IDB4ZTAwMCkge1xuICAgICAgICAgIGJsb2Nrc1tpKytdID0gMHhlMCB8IChjb2RlID4+IDEyKTtcbiAgICAgICAgICBibG9ja3NbaSsrXSA9IDB4ODAgfCAoKGNvZGUgPj4gNikgJiAweDNmKTtcbiAgICAgICAgICBibG9ja3NbaSsrXSA9IDB4ODAgfCAoY29kZSAmIDB4M2YpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvZGUgPSAweDEwMDAwICsgKCgoY29kZSAmIDB4M2ZmKSA8PCAxMCkgfCAoc3RyLmNoYXJDb2RlQXQoKytpbmRleCkgJiAweDNmZikpO1xuICAgICAgICAgIGJsb2Nrc1tpKytdID0gMHhmMCB8IChjb2RlID4+IDE4KTtcbiAgICAgICAgICBibG9ja3NbaSsrXSA9IDB4ODAgfCAoKGNvZGUgPj4gMTIpICYgMHgzZik7XG4gICAgICAgICAgYmxvY2tzW2krK10gPSAweDgwIHwgKChjb2RlID4+IDYpICYgMHgzZik7XG4gICAgICAgICAgYmxvY2tzW2krK10gPSAweDgwIHwgKGNvZGUgJiAweDNmKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYnl0ZXMgKz0gaSAtIHN0YXJ0O1xuICAgICAgc3RhcnQgPSBpIC0gNTtcbiAgICAgIGlmIChpbmRleCA9PT0gbGVuZ3RoKSB7XG4gICAgICAgICsraW5kZXg7XG4gICAgICB9XG4gICAgICBpZiAoaW5kZXggPiBsZW5ndGggJiYgaSA8IDYpIHtcbiAgICAgICAgZW5kID0gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIHYxID0gYmxvY2tzWzBdO1xuICAgICAgaWYgKGkgPiA0KSB7XG4gICAgICAgIHYyID0gYmxvY2tzWzFdO1xuICAgICAgICB2MyA9IGJsb2Nrc1syXTtcbiAgICAgICAgdjQgPSBibG9ja3NbM107XG4gICAgICAgIHY1ID0gYmxvY2tzWzRdO1xuICAgICAgICBiYXNlMzJTdHIgKz0gQkFTRTMyX0VOQ09ERV9DSEFSW3YxID4+PiAzXSArXG4gICAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2MSA8PCAyIHwgdjIgPj4+IDYpICYgMzFdICtcbiAgICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHYyID4+PiAxKSAmIDMxXSArXG4gICAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2MiA8PCA0IHwgdjMgPj4+IDQpICYgMzFdICtcbiAgICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHYzIDw8IDEgfCB2NCA+Pj4gNykgJiAzMV0gK1xuICAgICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjQgPj4+IDIpICYgMzFdICtcbiAgICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHY0IDw8IDMgfCB2NSA+Pj4gNSkgJiAzMV0gK1xuICAgICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlt2NSAmIDMxXTtcbiAgICAgIH0gZWxzZSBpZiAoaSA9PT0gMSkge1xuICAgICAgICBiYXNlMzJTdHIgKz0gQkFTRTMyX0VOQ09ERV9DSEFSW3YxID4+PiAzXSArXG4gICAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2MSA8PCAyKSAmIDMxXSArXG4gICAgICAgICAgJz09PT09PSc7XG4gICAgICB9IGVsc2UgaWYgKGkgPT09IDIpIHtcbiAgICAgICAgdjIgPSBibG9ja3NbMV07XG4gICAgICAgIGJhc2UzMlN0ciArPSBCQVNFMzJfRU5DT0RFX0NIQVJbdjEgPj4+IDNdICtcbiAgICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHYxIDw8IDIgfCB2MiA+Pj4gNikgJiAzMV0gK1xuICAgICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjIgPj4+IDEpICYgMzFdICtcbiAgICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHYyIDw8IDQpICYgMzFdICtcbiAgICAgICAgICAnPT09PSc7XG4gICAgICB9IGVsc2UgaWYgKGkgPT09IDMpIHtcbiAgICAgICAgdjIgPSBibG9ja3NbMV07XG4gICAgICAgIHYzID0gYmxvY2tzWzJdO1xuICAgICAgICBiYXNlMzJTdHIgKz0gQkFTRTMyX0VOQ09ERV9DSEFSW3YxID4+PiAzXSArXG4gICAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2MSA8PCAyIHwgdjIgPj4+IDYpICYgMzFdICtcbiAgICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHYyID4+PiAxKSAmIDMxXSArXG4gICAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2MiA8PCA0IHwgdjMgPj4+IDQpICYgMzFdICtcbiAgICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHYzIDw8IDEpICYgMzFdICtcbiAgICAgICAgICAnPT09JztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHYyID0gYmxvY2tzWzFdO1xuICAgICAgICB2MyA9IGJsb2Nrc1syXTtcbiAgICAgICAgdjQgPSBibG9ja3NbM107XG4gICAgICAgIGJhc2UzMlN0ciArPSBCQVNFMzJfRU5DT0RFX0NIQVJbdjEgPj4+IDNdICtcbiAgICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHYxIDw8IDIgfCB2MiA+Pj4gNikgJiAzMV0gK1xuICAgICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjIgPj4+IDEpICYgMzFdICtcbiAgICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHYyIDw8IDQgfCB2MyA+Pj4gNCkgJiAzMV0gK1xuICAgICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjMgPDwgMSB8IHY0ID4+PiA3KSAmIDMxXSArXG4gICAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2NCA+Pj4gMikgJiAzMV0gK1xuICAgICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjQgPDwgMykgJiAzMV0gK1xuICAgICAgICAgICc9JztcbiAgICAgIH1cbiAgICB9IHdoaWxlICghZW5kKTtcbiAgICByZXR1cm4gYmFzZTMyU3RyO1xuICB9O1xuXG4gIHZhciBlbmNvZGVCeXRlcyA9IGZ1bmN0aW9uIChieXRlcykge1xuICAgIHZhciB2MSwgdjIsIHYzLCB2NCwgdjUsIGJhc2UzMlN0ciA9ICcnLCBsZW5ndGggPSBieXRlcy5sZW5ndGg7XG4gICAgZm9yICh2YXIgaSA9IDAsIGNvdW50ID0gcGFyc2VJbnQobGVuZ3RoIC8gNSkgKiA1OyBpIDwgY291bnQ7KSB7XG4gICAgICB2MSA9IGJ5dGVzW2krK107XG4gICAgICB2MiA9IGJ5dGVzW2krK107XG4gICAgICB2MyA9IGJ5dGVzW2krK107XG4gICAgICB2NCA9IGJ5dGVzW2krK107XG4gICAgICB2NSA9IGJ5dGVzW2krK107XG4gICAgICBiYXNlMzJTdHIgKz0gQkFTRTMyX0VOQ09ERV9DSEFSW3YxID4+PiAzXSArXG4gICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjEgPDwgMiB8IHYyID4+PiA2KSAmIDMxXSArXG4gICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjIgPj4+IDEpICYgMzFdICtcbiAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2MiA8PCA0IHwgdjMgPj4+IDQpICYgMzFdICtcbiAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2MyA8PCAxIHwgdjQgPj4+IDcpICYgMzFdICtcbiAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2NCA+Pj4gMikgJiAzMV0gK1xuICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHY0IDw8IDMgfCB2NSA+Pj4gNSkgJiAzMV0gK1xuICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbdjUgJiAzMV07XG4gICAgfVxuXG4gICAgLy8gcmVtYWluIGNoYXJcbiAgICB2YXIgcmVtYWluID0gbGVuZ3RoIC0gY291bnQ7XG4gICAgaWYgKHJlbWFpbiA9PT0gMSkge1xuICAgICAgdjEgPSBieXRlc1tpXTtcbiAgICAgIGJhc2UzMlN0ciArPSBCQVNFMzJfRU5DT0RFX0NIQVJbdjEgPj4+IDNdICtcbiAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2MSA8PCAyKSAmIDMxXSArXG4gICAgICAgICc9PT09PT0nO1xuICAgIH0gZWxzZSBpZiAocmVtYWluID09PSAyKSB7XG4gICAgICB2MSA9IGJ5dGVzW2krK107XG4gICAgICB2MiA9IGJ5dGVzW2ldO1xuICAgICAgYmFzZTMyU3RyICs9IEJBU0UzMl9FTkNPREVfQ0hBUlt2MSA+Pj4gM10gK1xuICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHYxIDw8IDIgfCB2MiA+Pj4gNikgJiAzMV0gK1xuICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHYyID4+PiAxKSAmIDMxXSArXG4gICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjIgPDwgNCkgJiAzMV0gK1xuICAgICAgICAnPT09PSc7XG4gICAgfSBlbHNlIGlmIChyZW1haW4gPT09IDMpIHtcbiAgICAgIHYxID0gYnl0ZXNbaSsrXTtcbiAgICAgIHYyID0gYnl0ZXNbaSsrXTtcbiAgICAgIHYzID0gYnl0ZXNbaV07XG4gICAgICBiYXNlMzJTdHIgKz0gQkFTRTMyX0VOQ09ERV9DSEFSW3YxID4+PiAzXSArXG4gICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjEgPDwgMiB8IHYyID4+PiA2KSAmIDMxXSArXG4gICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjIgPj4+IDEpICYgMzFdICtcbiAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2MiA8PCA0IHwgdjMgPj4+IDQpICYgMzFdICtcbiAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2MyA8PCAxKSAmIDMxXSArXG4gICAgICAgICc9PT0nO1xuICAgIH0gZWxzZSBpZiAocmVtYWluID09PSA0KSB7XG4gICAgICB2MSA9IGJ5dGVzW2krK107XG4gICAgICB2MiA9IGJ5dGVzW2krK107XG4gICAgICB2MyA9IGJ5dGVzW2krK107XG4gICAgICB2NCA9IGJ5dGVzW2ldO1xuICAgICAgYmFzZTMyU3RyICs9IEJBU0UzMl9FTkNPREVfQ0hBUlt2MSA+Pj4gM10gK1xuICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHYxIDw8IDIgfCB2MiA+Pj4gNikgJiAzMV0gK1xuICAgICAgICBCQVNFMzJfRU5DT0RFX0NIQVJbKHYyID4+PiAxKSAmIDMxXSArXG4gICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjIgPDwgNCB8IHYzID4+PiA0KSAmIDMxXSArXG4gICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjMgPDwgMSB8IHY0ID4+PiA3KSAmIDMxXSArXG4gICAgICAgIEJBU0UzMl9FTkNPREVfQ0hBUlsodjQgPj4+IDIpICYgMzFdICtcbiAgICAgICAgQkFTRTMyX0VOQ09ERV9DSEFSWyh2NCA8PCAzKSAmIDMxXSArXG4gICAgICAgICc9JztcbiAgICB9XG4gICAgcmV0dXJuIGJhc2UzMlN0cjtcbiAgfTtcblxuICB2YXIgZW5jb2RlID0gZnVuY3Rpb24gKGlucHV0LCBhc2NpaU9ubHkpIHtcbiAgICB2YXIgbm90U3RyaW5nID0gdHlwZW9mKGlucHV0KSAhPT0gJ3N0cmluZyc7XG4gICAgaWYgKG5vdFN0cmluZyAmJiBpbnB1dC5jb25zdHJ1Y3RvciA9PT0gQXJyYXlCdWZmZXIpIHtcbiAgICAgIGlucHV0ID0gbmV3IFVpbnQ4QXJyYXkoaW5wdXQpO1xuICAgIH1cbiAgICBpZiAobm90U3RyaW5nKSB7XG4gICAgICByZXR1cm4gZW5jb2RlQnl0ZXMoaW5wdXQpO1xuICAgIH0gZWxzZSBpZiAoYXNjaWlPbmx5KSB7XG4gICAgICByZXR1cm4gZW5jb2RlQXNjaWkoaW5wdXQpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gZW5jb2RlVXRmOChpbnB1dCk7XG4gICAgfVxuICB9O1xuXG4gIHZhciBkZWNvZGUgPSBmdW5jdGlvbiAoYmFzZTMyU3RyLCBhc2NpaU9ubHkpIHtcbiAgICBpZiAoIWFzY2lpT25seSkge1xuICAgICAgcmV0dXJuIHRvVXRmOFN0cmluZyhkZWNvZGVBc0J5dGVzKGJhc2UzMlN0cikpO1xuICAgIH1cbiAgICBpZiAoYmFzZTMyU3RyID09PSAnJykge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH0gZWxzZSBpZiAoIS9eW0EtWjItNz1dKyQvLnRlc3QoYmFzZTMyU3RyKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGJhc2UzMiBjaGFyYWN0ZXJzJyk7XG4gICAgfVxuICAgIHZhciB2MSwgdjIsIHYzLCB2NCwgdjUsIHY2LCB2NywgdjgsIHN0ciA9ICcnLCBsZW5ndGggPSBiYXNlMzJTdHIuaW5kZXhPZignPScpO1xuICAgIGlmIChsZW5ndGggPT09IC0xKSB7XG4gICAgICBsZW5ndGggPSBiYXNlMzJTdHIubGVuZ3RoO1xuICAgIH1cblxuICAgIC8vIDggY2hhciB0byA1IGJ5dGVzXG4gICAgZm9yICh2YXIgaSA9IDAsIGNvdW50ID0gbGVuZ3RoID4+IDMgPDwgMzsgaSA8IGNvdW50Oykge1xuICAgICAgdjEgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIHYyID0gQkFTRTMyX0RFQ09ERV9DSEFSW2Jhc2UzMlN0ci5jaGFyQXQoaSsrKV07XG4gICAgICB2MyA9IEJBU0UzMl9ERUNPREVfQ0hBUltiYXNlMzJTdHIuY2hhckF0KGkrKyldO1xuICAgICAgdjQgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIHY1ID0gQkFTRTMyX0RFQ09ERV9DSEFSW2Jhc2UzMlN0ci5jaGFyQXQoaSsrKV07XG4gICAgICB2NiA9IEJBU0UzMl9ERUNPREVfQ0hBUltiYXNlMzJTdHIuY2hhckF0KGkrKyldO1xuICAgICAgdjcgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIHY4ID0gQkFTRTMyX0RFQ09ERV9DSEFSW2Jhc2UzMlN0ci5jaGFyQXQoaSsrKV07XG4gICAgICBzdHIgKz0gU3RyaW5nLmZyb21DaGFyQ29kZSgodjEgPDwgMyB8IHYyID4+PiAyKSAmIDI1NSkgK1xuICAgICAgICBTdHJpbmcuZnJvbUNoYXJDb2RlKCh2MiA8PCA2IHwgdjMgPDwgMSB8IHY0ID4+PiA0KSAmIDI1NSkgK1xuICAgICAgICBTdHJpbmcuZnJvbUNoYXJDb2RlKCh2NCA8PCA0IHwgdjUgPj4+IDEpICYgMjU1KSArXG4gICAgICAgIFN0cmluZy5mcm9tQ2hhckNvZGUoKHY1IDw8IDcgfCB2NiA8PCAyIHwgdjcgPj4+IDMpICYgMjU1KSArXG4gICAgICAgIFN0cmluZy5mcm9tQ2hhckNvZGUoKHY3IDw8IDUgfCB2OCkgJiAyNTUpO1xuICAgIH1cblxuICAgIC8vIHJlbWFpbiBieXRlc1xuICAgIHZhciByZW1haW4gPSBsZW5ndGggLSBjb3VudDtcbiAgICBpZiAocmVtYWluID09PSAyKSB7XG4gICAgICB2MSA9IEJBU0UzMl9ERUNPREVfQ0hBUltiYXNlMzJTdHIuY2hhckF0KGkrKyldO1xuICAgICAgdjIgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIHN0ciArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKCh2MSA8PCAzIHwgdjIgPj4+IDIpICYgMjU1KTtcbiAgICB9IGVsc2UgaWYgKHJlbWFpbiA9PT0gNCkge1xuICAgICAgdjEgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIHYyID0gQkFTRTMyX0RFQ09ERV9DSEFSW2Jhc2UzMlN0ci5jaGFyQXQoaSsrKV07XG4gICAgICB2MyA9IEJBU0UzMl9ERUNPREVfQ0hBUltiYXNlMzJTdHIuY2hhckF0KGkrKyldO1xuICAgICAgdjQgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIHN0ciArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKCh2MSA8PCAzIHwgdjIgPj4+IDIpICYgMjU1KSArXG4gICAgICAgIFN0cmluZy5mcm9tQ2hhckNvZGUoKHYyIDw8IDYgfCB2MyA8PCAxIHwgdjQgPj4+IDQpICYgMjU1KTtcbiAgICB9IGVsc2UgaWYgKHJlbWFpbiA9PT0gNSkge1xuICAgICAgdjEgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIHYyID0gQkFTRTMyX0RFQ09ERV9DSEFSW2Jhc2UzMlN0ci5jaGFyQXQoaSsrKV07XG4gICAgICB2MyA9IEJBU0UzMl9ERUNPREVfQ0hBUltiYXNlMzJTdHIuY2hhckF0KGkrKyldO1xuICAgICAgdjQgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIHY1ID0gQkFTRTMyX0RFQ09ERV9DSEFSW2Jhc2UzMlN0ci5jaGFyQXQoaSsrKV07XG4gICAgICBzdHIgKz0gU3RyaW5nLmZyb21DaGFyQ29kZSgodjEgPDwgMyB8IHYyID4+PiAyKSAmIDI1NSkgK1xuICAgICAgICBTdHJpbmcuZnJvbUNoYXJDb2RlKCh2MiA8PCA2IHwgdjMgPDwgMSB8IHY0ID4+PiA0KSAmIDI1NSkgK1xuICAgICAgICBTdHJpbmcuZnJvbUNoYXJDb2RlKCh2NCA8PCA0IHwgdjUgPj4+IDEpICYgMjU1KTtcbiAgICB9IGVsc2UgaWYgKHJlbWFpbiA9PT0gNykge1xuICAgICAgdjEgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIHYyID0gQkFTRTMyX0RFQ09ERV9DSEFSW2Jhc2UzMlN0ci5jaGFyQXQoaSsrKV07XG4gICAgICB2MyA9IEJBU0UzMl9ERUNPREVfQ0hBUltiYXNlMzJTdHIuY2hhckF0KGkrKyldO1xuICAgICAgdjQgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIHY1ID0gQkFTRTMyX0RFQ09ERV9DSEFSW2Jhc2UzMlN0ci5jaGFyQXQoaSsrKV07XG4gICAgICB2NiA9IEJBU0UzMl9ERUNPREVfQ0hBUltiYXNlMzJTdHIuY2hhckF0KGkrKyldO1xuICAgICAgdjcgPSBCQVNFMzJfREVDT0RFX0NIQVJbYmFzZTMyU3RyLmNoYXJBdChpKyspXTtcbiAgICAgIHN0ciArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKCh2MSA8PCAzIHwgdjIgPj4+IDIpICYgMjU1KSArXG4gICAgICAgIFN0cmluZy5mcm9tQ2hhckNvZGUoKHYyIDw8IDYgfCB2MyA8PCAxIHwgdjQgPj4+IDQpICYgMjU1KSArXG4gICAgICAgIFN0cmluZy5mcm9tQ2hhckNvZGUoKHY0IDw8IDQgfCB2NSA+Pj4gMSkgJiAyNTUpICtcbiAgICAgICAgU3RyaW5nLmZyb21DaGFyQ29kZSgodjUgPDwgNyB8IHY2IDw8IDIgfCB2NyA+Pj4gMykgJiAyNTUpO1xuICAgIH1cbiAgICByZXR1cm4gc3RyO1xuICB9O1xuXG4gIHZhciBleHBvcnRzID0ge1xuICAgIGVuY29kZTogZW5jb2RlLFxuICAgIGRlY29kZTogZGVjb2RlXG4gIH07XG4gIGRlY29kZS5hc0J5dGVzID0gZGVjb2RlQXNCeXRlcztcblxuICBpZiAoQ09NTU9OX0pTKSB7XG4gICAgbW9kdWxlLmV4cG9ydHMgPSBleHBvcnRzO1xuICB9IGVsc2Uge1xuICAgIHJvb3QuYmFzZTMyID0gZXhwb3J0cztcbiAgICBpZiAoQU1EKSB7XG4gICAgICBkZWZpbmUoZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiBleHBvcnRzO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG59KSgpO1xuIl0sIm5hbWVzIjpbInJvb3QiLCJ3aW5kb3ciLCJOT0RFX0pTIiwiSElfQkFTRTMyX05PX05PREVfSlMiLCJwcm9jZXNzIiwidmVyc2lvbnMiLCJub2RlIiwiZ2xvYmFsIiwiQ09NTU9OX0pTIiwiSElfQkFTRTMyX05PX0NPTU1PTl9KUyIsIm1vZHVsZSIsImV4cG9ydHMiLCJBTUQiLCJkZWZpbmUiLCJhbWQiLCJCQVNFMzJfRU5DT0RFX0NIQVIiLCJzcGxpdCIsIkJBU0UzMl9ERUNPREVfQ0hBUiIsImJsb2NrcyIsInRocm93SW52YWxpZFV0ZjgiLCJwb3NpdGlvbiIsInBhcnRpYWwiLCJsZW5ndGgiLCJzdWJzdHIiLCJlcnIiLCJFcnJvciIsInRvVXRmOFN0cmluZyIsImJ5dGVzIiwic3RyIiwiaSIsImZvbGxvd2luZ0NoYXJzIiwiYiIsImMiLCJTdHJpbmciLCJmcm9tQ2hhckNvZGUiLCJqIiwiZGVjb2RlQXNCeXRlcyIsImJhc2UzMlN0ciIsInRlc3QiLCJyZXBsYWNlIiwidjEiLCJ2MiIsInYzIiwidjQiLCJ2NSIsInY2IiwidjciLCJ2OCIsImluZGV4IiwiY291bnQiLCJjaGFyQXQiLCJyZW1haW4iLCJlbmNvZGVBc2NpaSIsInBhcnNlSW50IiwiY2hhckNvZGVBdCIsImVuY29kZVV0ZjgiLCJjb2RlIiwiZW5kIiwic3RhcnQiLCJlbmNvZGVCeXRlcyIsImVuY29kZSIsImlucHV0IiwiYXNjaWlPbmx5Iiwibm90U3RyaW5nIiwiY29uc3RydWN0b3IiLCJBcnJheUJ1ZmZlciIsIlVpbnQ4QXJyYXkiLCJkZWNvZGUiLCJpbmRleE9mIiwiYXNCeXRlcyIsImJhc2UzMiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/hi-base32/src/base32.js\n"); /***/ }) }; ;