{"version":3,"sources":["webpack:///./node_modules/eth-ens-namehash/index.js","webpack:///./node_modules/es5-ext/global.js","webpack:///./node_modules/eth-lib/lib/account.js","webpack:///./node_modules/eth-lib/lib/bytes.js","webpack:///./node_modules/eth-lib/lib/hash.js","webpack:///./node_modules/eth-ens-namehash/node_modules/js-sha3/src/sha3.js","webpack:///./node_modules/eth-lib/lib/nat.js","webpack:///./node_modules/eth-lib/lib/array.js","webpack:///./node_modules/eth-lib/lib/rlp.js"],"names":["r","keccak_256","uts46","normalize","name","toUnicode","useStd3ASCII","transitional","exports","hash","inputName","node","i","labels","split","length","labelSha","sha3","Buffer","naiveFallback","self","window","Error","module","this","globalThis","Object","defineProperty","prototype","get","configurable","error","__global__","Nat","elliptic","secp256k1","ec","keccak256","keccak256s","toChecksum","address","addressHash","slice","checksumAddress","parseInt","toUpperCase","fromPrivate","privateKey","buffer","publicKey","keyFromPrivate","getPublic","publicHash","encodeSignature","v","s","Bytes","flatten","decodeSignature","hex","makeSigner","addToV","signature","sign","canonical","fromString","fromNumber","recoveryParam","pad","fromNat","toString","create","entropy","innerHex","concat","random","middleHex","outerHex","recover","vals","vrs","toNumber","recoverPubKey","encode","at","bytes","index","a","l","padRight","toArray","arr","push","fromArray","b","rnd","crypto","getRandomValues","Uint8Array","randomBytes","reduce","j","bs","reverse","rev","fromAscii","ascii","charCodeAt","toAscii","String","fromCharCode","makeByte","uint8","ci","c","c2","num","bn","toNat","fromUint8Array","call","toUint8Array","HEX_CHARS","KECCAK_PADDING","SHIFT","RC","update","state","message","code","blocks","byteCount","blockCount","outputBlocks","reset","block","start","lastByteIndex","f","h","n","c0","c1","c3","c4","c5","c6","c7","c8","c9","b0","b1","b2","b3","b4","b5","b6","b7","b8","b9","b10","b11","b12","b13","b14","b15","b16","b17","b18","b19","b20","b21","b22","b23","b24","b25","b26","b27","b28","b29","b30","b31","b32","b33","b34","b35","b36","b37","b38","b39","b40","b41","b42","b43","b44","b45","b46","b47","b48","b49","keccak","bits","str","msg","Keccak","keccak512","keccak512s","root","JS_SHA3_NO_NODE_JS","process","versions","global","COMMON_JS","JS_SHA3_NO_COMMON_JS","BITS","OUTPUT_TYPES","createOutputMethod","padding","outputType","createShakeOutputMethod","outputBits","createMethod","method","type","algorithms","methods","methodNames","algorithm","methodName","extraBytes","notString","constructor","ArrayBuffer","finalize","arrayBuffer","array","Uint32Array","digest","offset","BN","toBN","test","bin","fromBN","add","mul","div","sub","toEther","wei","fromEther","eth","Math","floor","toUint256","generate","fn","replicate","val","J","I","chunksOf","tree","uint","padEven","len","dataTree","map","join","decode","parseTree","head","parseHex","parseList","parseLength","lim","list","e"],"mappings":"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","file":"js/chunk-vendors~79ccc924.0d74e8bb.js","sourcesContent":["var sha3 = require('js-sha3').keccak_256\nvar uts46 = require('idna-uts46-hx')\n\nfunction namehash (inputName) {\n // Reject empty names:\n var node = ''\n for (var i = 0; i < 32; i++) {\n node += '00'\n }\n\n name = normalize(inputName)\n\n if (name) {\n var labels = name.split('.')\n\n for(var i = labels.length - 1; i >= 0; i--) {\n var labelSha = sha3(labels[i])\n node = sha3(new Buffer(node + labelSha, 'hex'))\n }\n }\n\n return '0x' + node\n}\n\nfunction normalize(name) {\n return name ? uts46.toUnicode(name, {useStd3ASCII: true, transitional: false}) : name\n}\n\nexports.hash = namehash\nexports.normalize = normalize\n","var naiveFallback = function () {\n\tif (typeof self === \"object\" && self) return self;\n\tif (typeof window === \"object\" && window) return window;\n\tthrow new Error(\"Unable to resolve global `this`\");\n};\n\nmodule.exports = (function () {\n\tif (this) return this;\n\n\t// Unexpected strict mode (may happen if e.g. bundled into ESM module)\n\n\t// Fallback to standard globalThis if available\n\tif (typeof globalThis === \"object\" && globalThis) return globalThis;\n\n\t// Thanks @mathiasbynens -> https://mathiasbynens.be/notes/globalthis\n\t// In all ES5+ engines global object inherits from Object.prototype\n\t// (if you approached one that doesn't please report)\n\ttry {\n\t\tObject.defineProperty(Object.prototype, \"__global__\", {\n\t\t\tget: function () { return this; },\n\t\t\tconfigurable: true\n\t\t});\n\t} catch (error) {\n\t\t// Unfortunate case of updates to Object.prototype being restricted\n\t\t// via preventExtensions, seal or freeze\n\t\treturn naiveFallback();\n\t}\n\ttry {\n\t\t// Safari case (window.__global__ works, but __global__ does not)\n\t\tif (!__global__) return naiveFallback();\n\t\treturn __global__;\n\t} finally {\n\t\tdelete Object.prototype.__global__;\n\t}\n})();\n","const Bytes = require(\"./bytes\");\nconst Nat = require(\"./nat\");\nconst elliptic = require(\"elliptic\");\nconst rlp = require(\"./rlp\");\nconst secp256k1 = new elliptic.ec(\"secp256k1\"); // eslint-disable-line\nconst { keccak256, keccak256s } = require(\"./hash\");\n\nconst create = entropy => {\n const innerHex = keccak256(Bytes.concat(Bytes.random(32), entropy || Bytes.random(32)));\n const middleHex = Bytes.concat(Bytes.concat(Bytes.random(32), innerHex), Bytes.random(32));\n const outerHex = keccak256(middleHex);\n return fromPrivate(outerHex);\n};\n\nconst toChecksum = address => {\n const addressHash = keccak256s(address.slice(2));\n let checksumAddress = \"0x\";\n for (let i = 0; i < 40; i++) checksumAddress += parseInt(addressHash[i + 2], 16) > 7 ? address[i + 2].toUpperCase() : address[i + 2];\n return checksumAddress;\n};\n\nconst fromPrivate = privateKey => {\n const buffer = new Buffer(privateKey.slice(2), \"hex\");\n const ecKey = secp256k1.keyFromPrivate(buffer);\n const publicKey = \"0x\" + ecKey.getPublic(false, 'hex').slice(2);\n const publicHash = keccak256(publicKey);\n const address = toChecksum(\"0x\" + publicHash.slice(-40));\n return {\n address: address,\n privateKey: privateKey\n };\n};\n\nconst encodeSignature = ([v, r, s]) => Bytes.flatten([r, s, v]);\n\nconst decodeSignature = hex => [Bytes.slice(64, Bytes.length(hex), hex), Bytes.slice(0, 32, hex), Bytes.slice(32, 64, hex)];\n\nconst makeSigner = addToV => (hash, privateKey) => {\n const signature = secp256k1.keyFromPrivate(new Buffer(privateKey.slice(2), \"hex\")).sign(new Buffer(hash.slice(2), \"hex\"), { canonical: true });\n return encodeSignature([Nat.fromString(Bytes.fromNumber(addToV + signature.recoveryParam)), Bytes.pad(32, Bytes.fromNat(\"0x\" + signature.r.toString(16))), Bytes.pad(32, Bytes.fromNat(\"0x\" + signature.s.toString(16)))]);\n};\n\nconst sign = makeSigner(27); // v=27|28 instead of 0|1...\n\nconst recover = (hash, signature) => {\n const vals = decodeSignature(signature);\n const vrs = { v: Bytes.toNumber(vals[0]), r: vals[1].slice(2), s: vals[2].slice(2) };\n const ecPublicKey = secp256k1.recoverPubKey(new Buffer(hash.slice(2), \"hex\"), vrs, vrs.v < 2 ? vrs.v : 1 - vrs.v % 2); // because odd vals mean v=0... sadly that means v=0 means v=1... I hate that\n const publicKey = \"0x\" + ecPublicKey.encode(\"hex\", false).slice(2);\n const publicHash = keccak256(publicKey);\n const address = toChecksum(\"0x\" + publicHash.slice(-40));\n return address;\n};\n\nmodule.exports = {\n create,\n toChecksum,\n fromPrivate,\n sign,\n makeSigner,\n recover,\n encodeSignature,\n decodeSignature\n};","const A = require(\"./array.js\");\n\nconst at = (bytes, index) => parseInt(bytes.slice(index * 2 + 2, index * 2 + 4), 16);\n\nconst random = bytes => {\n let rnd;\n if (typeof window !== \"undefined\" && window.crypto && window.crypto.getRandomValues) rnd = window.crypto.getRandomValues(new Uint8Array(bytes));else if (typeof require !== \"undefined\") rnd = require(\"c\" + \"rypto\").randomBytes(bytes);else throw \"Safe random numbers not available.\";\n let hex = \"0x\";\n for (let i = 0; i < bytes; ++i) hex += (\"00\" + rnd[i].toString(16)).slice(-2);\n return hex;\n};\n\nconst length = a => (a.length - 2) / 2;\n\nconst flatten = a => \"0x\" + a.reduce((r, s) => r + s.slice(2), \"\");\n\nconst slice = (i, j, bs) => \"0x\" + bs.slice(i * 2 + 2, j * 2 + 2);\n\nconst reverse = hex => {\n let rev = \"0x\";\n for (let i = 0, l = length(hex); i < l; ++i) {\n rev += hex.slice((l - i) * 2, (l - i + 1) * 2);\n }\n return rev;\n};\n\nconst pad = (l, hex) => hex.length === l * 2 + 2 ? hex : pad(l, \"0x\" + \"0\" + hex.slice(2));\n\nconst padRight = (l, hex) => hex.length === l * 2 + 2 ? hex : padRight(l, hex + \"0\");\n\nconst toArray = hex => {\n let arr = [];\n for (let i = 2, l = hex.length; i < l; i += 2) arr.push(parseInt(hex.slice(i, i + 2), 16));\n return arr;\n};\n\nconst fromArray = arr => {\n let hex = \"0x\";\n for (let i = 0, l = arr.length; i < l; ++i) {\n let b = arr[i];\n hex += (b < 16 ? \"0\" : \"\") + b.toString(16);\n }\n return hex;\n};\n\nconst toUint8Array = hex => new Uint8Array(toArray(hex));\n\nconst fromUint8Array = arr => fromArray([].slice.call(arr, 0));\n\nconst fromNumber = num => {\n let hex = num.toString(16);\n return hex.length % 2 === 0 ? \"0x\" + hex : \"0x0\" + hex;\n};\n\nconst toNumber = hex => parseInt(hex.slice(2), 16);\n\nconst concat = (a, b) => a.concat(b.slice(2));\n\nconst fromNat = bn => bn === \"0x0\" ? \"0x\" : bn.length % 2 === 0 ? bn : \"0x0\" + bn.slice(2);\n\nconst toNat = bn => bn[2] === \"0\" ? \"0x\" + bn.slice(3) : bn;\n\nconst fromAscii = ascii => {\n let hex = \"0x\";\n for (let i = 0; i < ascii.length; ++i) hex += (\"00\" + ascii.charCodeAt(i).toString(16)).slice(-2);\n return hex;\n};\n\nconst toAscii = hex => {\n let ascii = \"\";\n for (let i = 2; i < hex.length; i += 2) ascii += String.fromCharCode(parseInt(hex.slice(i, i + 2), 16));\n return ascii;\n};\n\n// From https://gist.github.com/pascaldekloe/62546103a1576803dade9269ccf76330\nconst fromString = s => {\n const makeByte = uint8 => {\n const b = uint8.toString(16);\n return b.length < 2 ? \"0\" + b : b;\n };\n let bytes = \"0x\";\n for (let ci = 0; ci != s.length; ci++) {\n let c = s.charCodeAt(ci);\n if (c < 128) {\n bytes += makeByte(c);\n continue;\n }\n if (c < 2048) {\n bytes += makeByte(c >> 6 | 192);\n } else {\n if (c > 0xd7ff && c < 0xdc00) {\n if (++ci == s.length) return null;\n let c2 = s.charCodeAt(ci);\n if (c2 < 0xdc00 || c2 > 0xdfff) return null;\n c = 0x10000 + ((c & 0x03ff) << 10) + (c2 & 0x03ff);\n bytes += makeByte(c >> 18 | 240);\n bytes += makeByte(c >> 12 & 63 | 128);\n } else {\n // c <= 0xffff\n bytes += makeByte(c >> 12 | 224);\n }\n bytes += makeByte(c >> 6 & 63 | 128);\n }\n bytes += makeByte(c & 63 | 128);\n }\n return bytes;\n};\n\nconst toString = bytes => {\n let s = '';\n let i = 0;\n let l = length(bytes);\n while (i < l) {\n let c = at(bytes, i++);\n if (c > 127) {\n if (c > 191 && c < 224) {\n if (i >= l) return null;\n c = (c & 31) << 6 | at(bytes, i) & 63;\n } else if (c > 223 && c < 240) {\n if (i + 1 >= l) return null;\n c = (c & 15) << 12 | (at(bytes, i) & 63) << 6 | at(bytes, ++i) & 63;\n } else if (c > 239 && c < 248) {\n if (i + 2 >= l) return null;\n c = (c & 7) << 18 | (at(bytes, i) & 63) << 12 | (at(bytes, ++i) & 63) << 6 | at(bytes, ++i) & 63;\n } else return null;\n ++i;\n }\n if (c <= 0xffff) s += String.fromCharCode(c);else if (c <= 0x10ffff) {\n c -= 0x10000;\n s += String.fromCharCode(c >> 10 | 0xd800);\n s += String.fromCharCode(c & 0x3FF | 0xdc00);\n } else return null;\n }\n return s;\n};\n\nmodule.exports = {\n random,\n length,\n concat,\n flatten,\n slice,\n reverse,\n pad,\n padRight,\n fromAscii,\n toAscii,\n fromString,\n toString,\n fromNumber,\n toNumber,\n fromNat,\n toNat,\n fromArray,\n toArray,\n fromUint8Array,\n toUint8Array\n};","// This was ported from https://github.com/emn178/js-sha3, with some minor\n// modifications and pruning. It is licensed under MIT:\n//\n// Copyright 2015-2016 Chen, Yi-Cyuan\n// \n// Permission is hereby granted, free of charge, to any person obtaining\n// a copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to\n// permit persons to whom the Software is furnished to do so, subject to\n// the following conditions:\n// \n// The above copyright notice and this permission notice shall be\n// included in all copies or substantial portions of the Software.\n// \n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nconst HEX_CHARS = '0123456789abcdef'.split('');\nconst KECCAK_PADDING = [1, 256, 65536, 16777216];\nconst SHIFT = [0, 8, 16, 24];\nconst RC = [1, 0, 32898, 0, 32906, 2147483648, 2147516416, 2147483648, 32907, 0, 2147483649, 0, 2147516545, 2147483648, 32777, 2147483648, 138, 0, 136, 0, 2147516425, 0, 2147483658, 0, 2147516555, 0, 139, 2147483648, 32905, 2147483648, 32771, 2147483648, 32770, 2147483648, 128, 2147483648, 32778, 0, 2147483658, 2147483648, 2147516545, 2147483648, 32896, 2147483648, 2147483649, 0, 2147516424, 2147483648];\n\nconst Keccak = bits => ({\n blocks: [],\n reset: true,\n block: 0,\n start: 0,\n blockCount: 1600 - (bits << 1) >> 5,\n outputBlocks: bits >> 5,\n s: (s => [].concat(s, s, s, s, s))([0, 0, 0, 0, 0, 0, 0, 0, 0, 0])\n});\n\nconst update = (state, message) => {\n var length = message.length,\n blocks = state.blocks,\n byteCount = state.blockCount << 2,\n blockCount = state.blockCount,\n outputBlocks = state.outputBlocks,\n s = state.s,\n index = 0,\n i,\n code;\n\n // update\n while (index < length) {\n if (state.reset) {\n state.reset = false;\n blocks[0] = state.block;\n for (i = 1; i < blockCount + 1; ++i) {\n blocks[i] = 0;\n }\n }\n if (typeof message !== \"string\") {\n for (i = state.start; index < length && i < byteCount; ++index) {\n blocks[i >> 2] |= message[index] << SHIFT[i++ & 3];\n }\n } else {\n for (i = state.start; index < length && i < byteCount; ++index) {\n code = message.charCodeAt(index);\n if (code < 0x80) {\n blocks[i >> 2] |= code << SHIFT[i++ & 3];\n } else if (code < 0x800) {\n blocks[i >> 2] |= (0xc0 | code >> 6) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | code & 0x3f) << SHIFT[i++ & 3];\n } else if (code < 0xd800 || code >= 0xe000) {\n blocks[i >> 2] |= (0xe0 | code >> 12) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | code >> 6 & 0x3f) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | code & 0x3f) << SHIFT[i++ & 3];\n } else {\n code = 0x10000 + ((code & 0x3ff) << 10 | message.charCodeAt(++index) & 0x3ff);\n blocks[i >> 2] |= (0xf0 | code >> 18) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | code >> 12 & 0x3f) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | code >> 6 & 0x3f) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | code & 0x3f) << SHIFT[i++ & 3];\n }\n }\n }\n state.lastByteIndex = i;\n if (i >= byteCount) {\n state.start = i - byteCount;\n state.block = blocks[blockCount];\n for (i = 0; i < blockCount; ++i) {\n s[i] ^= blocks[i];\n }\n f(s);\n state.reset = true;\n } else {\n state.start = i;\n }\n }\n\n // finalize\n i = state.lastByteIndex;\n blocks[i >> 2] |= KECCAK_PADDING[i & 3];\n if (state.lastByteIndex === byteCount) {\n blocks[0] = blocks[blockCount];\n for (i = 1; i < blockCount + 1; ++i) {\n blocks[i] = 0;\n }\n }\n blocks[blockCount - 1] |= 0x80000000;\n for (i = 0; i < blockCount; ++i) {\n s[i] ^= blocks[i];\n }\n f(s);\n\n // toString\n var hex = '',\n i = 0,\n j = 0,\n block;\n while (j < outputBlocks) {\n for (i = 0; i < blockCount && j < outputBlocks; ++i, ++j) {\n block = s[i];\n hex += HEX_CHARS[block >> 4 & 0x0F] + HEX_CHARS[block & 0x0F] + HEX_CHARS[block >> 12 & 0x0F] + HEX_CHARS[block >> 8 & 0x0F] + HEX_CHARS[block >> 20 & 0x0F] + HEX_CHARS[block >> 16 & 0x0F] + HEX_CHARS[block >> 28 & 0x0F] + HEX_CHARS[block >> 24 & 0x0F];\n }\n if (j % blockCount === 0) {\n f(s);\n i = 0;\n }\n }\n return \"0x\" + hex;\n};\n\nconst f = s => {\n var h, l, n, c0, c1, c2, c3, c4, c5, c6, c7, c8, c9, b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32, b33, b34, b35, b36, b37, b38, b39, b40, b41, b42, b43, b44, b45, b46, b47, b48, b49;\n\n for (n = 0; n < 48; n += 2) {\n c0 = s[0] ^ s[10] ^ s[20] ^ s[30] ^ s[40];\n c1 = s[1] ^ s[11] ^ s[21] ^ s[31] ^ s[41];\n c2 = s[2] ^ s[12] ^ s[22] ^ s[32] ^ s[42];\n c3 = s[3] ^ s[13] ^ s[23] ^ s[33] ^ s[43];\n c4 = s[4] ^ s[14] ^ s[24] ^ s[34] ^ s[44];\n c5 = s[5] ^ s[15] ^ s[25] ^ s[35] ^ s[45];\n c6 = s[6] ^ s[16] ^ s[26] ^ s[36] ^ s[46];\n c7 = s[7] ^ s[17] ^ s[27] ^ s[37] ^ s[47];\n c8 = s[8] ^ s[18] ^ s[28] ^ s[38] ^ s[48];\n c9 = s[9] ^ s[19] ^ s[29] ^ s[39] ^ s[49];\n\n h = c8 ^ (c2 << 1 | c3 >>> 31);\n l = c9 ^ (c3 << 1 | c2 >>> 31);\n s[0] ^= h;\n s[1] ^= l;\n s[10] ^= h;\n s[11] ^= l;\n s[20] ^= h;\n s[21] ^= l;\n s[30] ^= h;\n s[31] ^= l;\n s[40] ^= h;\n s[41] ^= l;\n h = c0 ^ (c4 << 1 | c5 >>> 31);\n l = c1 ^ (c5 << 1 | c4 >>> 31);\n s[2] ^= h;\n s[3] ^= l;\n s[12] ^= h;\n s[13] ^= l;\n s[22] ^= h;\n s[23] ^= l;\n s[32] ^= h;\n s[33] ^= l;\n s[42] ^= h;\n s[43] ^= l;\n h = c2 ^ (c6 << 1 | c7 >>> 31);\n l = c3 ^ (c7 << 1 | c6 >>> 31);\n s[4] ^= h;\n s[5] ^= l;\n s[14] ^= h;\n s[15] ^= l;\n s[24] ^= h;\n s[25] ^= l;\n s[34] ^= h;\n s[35] ^= l;\n s[44] ^= h;\n s[45] ^= l;\n h = c4 ^ (c8 << 1 | c9 >>> 31);\n l = c5 ^ (c9 << 1 | c8 >>> 31);\n s[6] ^= h;\n s[7] ^= l;\n s[16] ^= h;\n s[17] ^= l;\n s[26] ^= h;\n s[27] ^= l;\n s[36] ^= h;\n s[37] ^= l;\n s[46] ^= h;\n s[47] ^= l;\n h = c6 ^ (c0 << 1 | c1 >>> 31);\n l = c7 ^ (c1 << 1 | c0 >>> 31);\n s[8] ^= h;\n s[9] ^= l;\n s[18] ^= h;\n s[19] ^= l;\n s[28] ^= h;\n s[29] ^= l;\n s[38] ^= h;\n s[39] ^= l;\n s[48] ^= h;\n s[49] ^= l;\n\n b0 = s[0];\n b1 = s[1];\n b32 = s[11] << 4 | s[10] >>> 28;\n b33 = s[10] << 4 | s[11] >>> 28;\n b14 = s[20] << 3 | s[21] >>> 29;\n b15 = s[21] << 3 | s[20] >>> 29;\n b46 = s[31] << 9 | s[30] >>> 23;\n b47 = s[30] << 9 | s[31] >>> 23;\n b28 = s[40] << 18 | s[41] >>> 14;\n b29 = s[41] << 18 | s[40] >>> 14;\n b20 = s[2] << 1 | s[3] >>> 31;\n b21 = s[3] << 1 | s[2] >>> 31;\n b2 = s[13] << 12 | s[12] >>> 20;\n b3 = s[12] << 12 | s[13] >>> 20;\n b34 = s[22] << 10 | s[23] >>> 22;\n b35 = s[23] << 10 | s[22] >>> 22;\n b16 = s[33] << 13 | s[32] >>> 19;\n b17 = s[32] << 13 | s[33] >>> 19;\n b48 = s[42] << 2 | s[43] >>> 30;\n b49 = s[43] << 2 | s[42] >>> 30;\n b40 = s[5] << 30 | s[4] >>> 2;\n b41 = s[4] << 30 | s[5] >>> 2;\n b22 = s[14] << 6 | s[15] >>> 26;\n b23 = s[15] << 6 | s[14] >>> 26;\n b4 = s[25] << 11 | s[24] >>> 21;\n b5 = s[24] << 11 | s[25] >>> 21;\n b36 = s[34] << 15 | s[35] >>> 17;\n b37 = s[35] << 15 | s[34] >>> 17;\n b18 = s[45] << 29 | s[44] >>> 3;\n b19 = s[44] << 29 | s[45] >>> 3;\n b10 = s[6] << 28 | s[7] >>> 4;\n b11 = s[7] << 28 | s[6] >>> 4;\n b42 = s[17] << 23 | s[16] >>> 9;\n b43 = s[16] << 23 | s[17] >>> 9;\n b24 = s[26] << 25 | s[27] >>> 7;\n b25 = s[27] << 25 | s[26] >>> 7;\n b6 = s[36] << 21 | s[37] >>> 11;\n b7 = s[37] << 21 | s[36] >>> 11;\n b38 = s[47] << 24 | s[46] >>> 8;\n b39 = s[46] << 24 | s[47] >>> 8;\n b30 = s[8] << 27 | s[9] >>> 5;\n b31 = s[9] << 27 | s[8] >>> 5;\n b12 = s[18] << 20 | s[19] >>> 12;\n b13 = s[19] << 20 | s[18] >>> 12;\n b44 = s[29] << 7 | s[28] >>> 25;\n b45 = s[28] << 7 | s[29] >>> 25;\n b26 = s[38] << 8 | s[39] >>> 24;\n b27 = s[39] << 8 | s[38] >>> 24;\n b8 = s[48] << 14 | s[49] >>> 18;\n b9 = s[49] << 14 | s[48] >>> 18;\n\n s[0] = b0 ^ ~b2 & b4;\n s[1] = b1 ^ ~b3 & b5;\n s[10] = b10 ^ ~b12 & b14;\n s[11] = b11 ^ ~b13 & b15;\n s[20] = b20 ^ ~b22 & b24;\n s[21] = b21 ^ ~b23 & b25;\n s[30] = b30 ^ ~b32 & b34;\n s[31] = b31 ^ ~b33 & b35;\n s[40] = b40 ^ ~b42 & b44;\n s[41] = b41 ^ ~b43 & b45;\n s[2] = b2 ^ ~b4 & b6;\n s[3] = b3 ^ ~b5 & b7;\n s[12] = b12 ^ ~b14 & b16;\n s[13] = b13 ^ ~b15 & b17;\n s[22] = b22 ^ ~b24 & b26;\n s[23] = b23 ^ ~b25 & b27;\n s[32] = b32 ^ ~b34 & b36;\n s[33] = b33 ^ ~b35 & b37;\n s[42] = b42 ^ ~b44 & b46;\n s[43] = b43 ^ ~b45 & b47;\n s[4] = b4 ^ ~b6 & b8;\n s[5] = b5 ^ ~b7 & b9;\n s[14] = b14 ^ ~b16 & b18;\n s[15] = b15 ^ ~b17 & b19;\n s[24] = b24 ^ ~b26 & b28;\n s[25] = b25 ^ ~b27 & b29;\n s[34] = b34 ^ ~b36 & b38;\n s[35] = b35 ^ ~b37 & b39;\n s[44] = b44 ^ ~b46 & b48;\n s[45] = b45 ^ ~b47 & b49;\n s[6] = b6 ^ ~b8 & b0;\n s[7] = b7 ^ ~b9 & b1;\n s[16] = b16 ^ ~b18 & b10;\n s[17] = b17 ^ ~b19 & b11;\n s[26] = b26 ^ ~b28 & b20;\n s[27] = b27 ^ ~b29 & b21;\n s[36] = b36 ^ ~b38 & b30;\n s[37] = b37 ^ ~b39 & b31;\n s[46] = b46 ^ ~b48 & b40;\n s[47] = b47 ^ ~b49 & b41;\n s[8] = b8 ^ ~b0 & b2;\n s[9] = b9 ^ ~b1 & b3;\n s[18] = b18 ^ ~b10 & b12;\n s[19] = b19 ^ ~b11 & b13;\n s[28] = b28 ^ ~b20 & b22;\n s[29] = b29 ^ ~b21 & b23;\n s[38] = b38 ^ ~b30 & b32;\n s[39] = b39 ^ ~b31 & b33;\n s[48] = b48 ^ ~b40 & b42;\n s[49] = b49 ^ ~b41 & b43;\n\n s[0] ^= RC[n];\n s[1] ^= RC[n + 1];\n }\n};\n\nconst keccak = bits => str => {\n var msg;\n if (str.slice(0, 2) === \"0x\") {\n msg = [];\n for (var i = 2, l = str.length; i < l; i += 2) msg.push(parseInt(str.slice(i, i + 2), 16));\n } else {\n msg = str;\n }\n return update(Keccak(bits, bits), msg);\n};\n\nmodule.exports = {\n keccak256: keccak(256),\n keccak512: keccak(512),\n keccak256s: keccak(256),\n keccak512s: keccak(512)\n};","/**\r\n * [js-sha3]{@link https://github.com/emn178/js-sha3}\r\n *\r\n * @version 0.5.7\r\n * @author Chen, Yi-Cyuan [emn178@gmail.com]\r\n * @copyright Chen, Yi-Cyuan 2015-2016\r\n * @license MIT\r\n */\r\n/*jslint bitwise: true */\r\n(function () {\r\n 'use strict';\r\n\r\n var root = typeof window === 'object' ? window : {};\r\n var NODE_JS = !root.JS_SHA3_NO_NODE_JS && typeof process === 'object' && process.versions && process.versions.node;\r\n if (NODE_JS) {\r\n root = global;\r\n }\r\n var COMMON_JS = !root.JS_SHA3_NO_COMMON_JS && typeof module === 'object' && module.exports;\r\n var HEX_CHARS = '0123456789abcdef'.split('');\r\n var SHAKE_PADDING = [31, 7936, 2031616, 520093696];\r\n var KECCAK_PADDING = [1, 256, 65536, 16777216];\r\n var PADDING = [6, 1536, 393216, 100663296];\r\n var SHIFT = [0, 8, 16, 24];\r\n var RC = [1, 0, 32898, 0, 32906, 2147483648, 2147516416, 2147483648, 32907, 0, 2147483649,\r\n 0, 2147516545, 2147483648, 32777, 2147483648, 138, 0, 136, 0, 2147516425, 0,\r\n 2147483658, 0, 2147516555, 0, 139, 2147483648, 32905, 2147483648, 32771,\r\n 2147483648, 32770, 2147483648, 128, 2147483648, 32778, 0, 2147483658, 2147483648,\r\n 2147516545, 2147483648, 32896, 2147483648, 2147483649, 0, 2147516424, 2147483648];\r\n var BITS = [224, 256, 384, 512];\r\n var SHAKE_BITS = [128, 256];\r\n var OUTPUT_TYPES = ['hex', 'buffer', 'arrayBuffer', 'array'];\r\n\r\n var createOutputMethod = function (bits, padding, outputType) {\r\n return function (message) {\r\n return new Keccak(bits, padding, bits).update(message)[outputType]();\r\n };\r\n };\r\n\r\n var createShakeOutputMethod = function (bits, padding, outputType) {\r\n return function (message, outputBits) {\r\n return new Keccak(bits, padding, outputBits).update(message)[outputType]();\r\n };\r\n };\r\n\r\n var createMethod = function (bits, padding) {\r\n var method = createOutputMethod(bits, padding, 'hex');\r\n method.create = function () {\r\n return new Keccak(bits, padding, bits);\r\n };\r\n method.update = function (message) {\r\n return method.create().update(message);\r\n };\r\n for (var i = 0; i < OUTPUT_TYPES.length; ++i) {\r\n var type = OUTPUT_TYPES[i];\r\n method[type] = createOutputMethod(bits, padding, type);\r\n }\r\n return method;\r\n };\r\n\r\n var createShakeMethod = function (bits, padding) {\r\n var method = createShakeOutputMethod(bits, padding, 'hex');\r\n method.create = function (outputBits) {\r\n return new Keccak(bits, padding, outputBits);\r\n };\r\n method.update = function (message, outputBits) {\r\n return method.create(outputBits).update(message);\r\n };\r\n for (var i = 0; i < OUTPUT_TYPES.length; ++i) {\r\n var type = OUTPUT_TYPES[i];\r\n method[type] = createShakeOutputMethod(bits, padding, type);\r\n }\r\n return method;\r\n };\r\n\r\n var algorithms = [\r\n {name: 'keccak', padding: KECCAK_PADDING, bits: BITS, createMethod: createMethod},\r\n {name: 'sha3', padding: PADDING, bits: BITS, createMethod: createMethod},\r\n {name: 'shake', padding: SHAKE_PADDING, bits: SHAKE_BITS, createMethod: createShakeMethod}\r\n ];\r\n\r\n var methods = {}, methodNames = [];\r\n\r\n for (var i = 0; i < algorithms.length; ++i) {\r\n var algorithm = algorithms[i];\r\n var bits = algorithm.bits;\r\n for (var j = 0; j < bits.length; ++j) {\r\n var methodName = algorithm.name +'_' + bits[j];\r\n methodNames.push(methodName);\r\n methods[methodName] = algorithm.createMethod(bits[j], algorithm.padding);\r\n }\r\n }\r\n\r\n function Keccak(bits, padding, outputBits) {\r\n this.blocks = [];\r\n this.s = [];\r\n this.padding = padding;\r\n this.outputBits = outputBits;\r\n this.reset = true;\r\n this.block = 0;\r\n this.start = 0;\r\n this.blockCount = (1600 - (bits << 1)) >> 5;\r\n this.byteCount = this.blockCount << 2;\r\n this.outputBlocks = outputBits >> 5;\r\n this.extraBytes = (outputBits & 31) >> 3;\r\n\r\n for (var i = 0; i < 50; ++i) {\r\n this.s[i] = 0;\r\n }\r\n }\r\n\r\n Keccak.prototype.update = function (message) {\r\n var notString = typeof message !== 'string';\r\n if (notString && message.constructor === ArrayBuffer) {\r\n message = new Uint8Array(message);\r\n }\r\n var length = message.length, blocks = this.blocks, byteCount = this.byteCount,\r\n blockCount = this.blockCount, index = 0, s = this.s, i, code;\r\n\r\n while (index < length) {\r\n if (this.reset) {\r\n this.reset = false;\r\n blocks[0] = this.block;\r\n for (i = 1; i < blockCount + 1; ++i) {\r\n blocks[i] = 0;\r\n }\r\n }\r\n if (notString) {\r\n for (i = this.start; index < length && i < byteCount; ++index) {\r\n blocks[i >> 2] |= message[index] << SHIFT[i++ & 3];\r\n }\r\n } else {\r\n for (i = this.start; index < length && i < byteCount; ++index) {\r\n code = message.charCodeAt(index);\r\n if (code < 0x80) {\r\n blocks[i >> 2] |= code << SHIFT[i++ & 3];\r\n } else if (code < 0x800) {\r\n blocks[i >> 2] |= (0xc0 | (code >> 6)) << SHIFT[i++ & 3];\r\n blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\r\n } else if (code < 0xd800 || code >= 0xe000) {\r\n blocks[i >> 2] |= (0xe0 | (code >> 12)) << SHIFT[i++ & 3];\r\n blocks[i >> 2] |= (0x80 | ((code >> 6) & 0x3f)) << SHIFT[i++ & 3];\r\n blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\r\n } else {\r\n code = 0x10000 + (((code & 0x3ff) << 10) | (message.charCodeAt(++index) & 0x3ff));\r\n blocks[i >> 2] |= (0xf0 | (code >> 18)) << SHIFT[i++ & 3];\r\n blocks[i >> 2] |= (0x80 | ((code >> 12) & 0x3f)) << SHIFT[i++ & 3];\r\n blocks[i >> 2] |= (0x80 | ((code >> 6) & 0x3f)) << SHIFT[i++ & 3];\r\n blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\r\n }\r\n }\r\n }\r\n this.lastByteIndex = i;\r\n if (i >= byteCount) {\r\n this.start = i - byteCount;\r\n this.block = blocks[blockCount];\r\n for (i = 0; i < blockCount; ++i) {\r\n s[i] ^= blocks[i];\r\n }\r\n f(s);\r\n this.reset = true;\r\n } else {\r\n this.start = i;\r\n }\r\n }\r\n return this;\r\n };\r\n\r\n Keccak.prototype.finalize = function () {\r\n var blocks = this.blocks, i = this.lastByteIndex, blockCount = this.blockCount, s = this.s;\r\n blocks[i >> 2] |= this.padding[i & 3];\r\n if (this.lastByteIndex === this.byteCount) {\r\n blocks[0] = blocks[blockCount];\r\n for (i = 1; i < blockCount + 1; ++i) {\r\n blocks[i] = 0;\r\n }\r\n }\r\n blocks[blockCount - 1] |= 0x80000000;\r\n for (i = 0; i < blockCount; ++i) {\r\n s[i] ^= blocks[i];\r\n }\r\n f(s);\r\n };\r\n\r\n Keccak.prototype.toString = Keccak.prototype.hex = function () {\r\n this.finalize();\r\n\r\n var blockCount = this.blockCount, s = this.s, outputBlocks = this.outputBlocks,\r\n extraBytes = this.extraBytes, i = 0, j = 0;\r\n var hex = '', block;\r\n while (j < outputBlocks) {\r\n for (i = 0; i < blockCount && j < outputBlocks; ++i, ++j) {\r\n block = s[i];\r\n hex += HEX_CHARS[(block >> 4) & 0x0F] + HEX_CHARS[block & 0x0F] +\r\n HEX_CHARS[(block >> 12) & 0x0F] + HEX_CHARS[(block >> 8) & 0x0F] +\r\n HEX_CHARS[(block >> 20) & 0x0F] + HEX_CHARS[(block >> 16) & 0x0F] +\r\n HEX_CHARS[(block >> 28) & 0x0F] + HEX_CHARS[(block >> 24) & 0x0F];\r\n }\r\n if (j % blockCount === 0) {\r\n f(s);\r\n i = 0;\r\n }\r\n }\r\n if (extraBytes) {\r\n block = s[i];\r\n if (extraBytes > 0) {\r\n hex += HEX_CHARS[(block >> 4) & 0x0F] + HEX_CHARS[block & 0x0F];\r\n }\r\n if (extraBytes > 1) {\r\n hex += HEX_CHARS[(block >> 12) & 0x0F] + HEX_CHARS[(block >> 8) & 0x0F];\r\n }\r\n if (extraBytes > 2) {\r\n hex += HEX_CHARS[(block >> 20) & 0x0F] + HEX_CHARS[(block >> 16) & 0x0F];\r\n }\r\n }\r\n return hex;\r\n };\r\n\r\n Keccak.prototype.arrayBuffer = function () {\r\n this.finalize();\r\n\r\n var blockCount = this.blockCount, s = this.s, outputBlocks = this.outputBlocks,\r\n extraBytes = this.extraBytes, i = 0, j = 0;\r\n var bytes = this.outputBits >> 3;\r\n var buffer;\r\n if (extraBytes) {\r\n buffer = new ArrayBuffer((outputBlocks + 1) << 2);\r\n } else {\r\n buffer = new ArrayBuffer(bytes);\r\n }\r\n var array = new Uint32Array(buffer);\r\n while (j < outputBlocks) {\r\n for (i = 0; i < blockCount && j < outputBlocks; ++i, ++j) {\r\n array[j] = s[i];\r\n }\r\n if (j % blockCount === 0) {\r\n f(s);\r\n }\r\n }\r\n if (extraBytes) {\r\n array[i] = s[i];\r\n buffer = buffer.slice(0, bytes);\r\n }\r\n return buffer;\r\n };\r\n\r\n Keccak.prototype.buffer = Keccak.prototype.arrayBuffer;\r\n\r\n Keccak.prototype.digest = Keccak.prototype.array = function () {\r\n this.finalize();\r\n\r\n var blockCount = this.blockCount, s = this.s, outputBlocks = this.outputBlocks,\r\n extraBytes = this.extraBytes, i = 0, j = 0;\r\n var array = [], offset, block;\r\n while (j < outputBlocks) {\r\n for (i = 0; i < blockCount && j < outputBlocks; ++i, ++j) {\r\n offset = j << 2;\r\n block = s[i];\r\n array[offset] = block & 0xFF;\r\n array[offset + 1] = (block >> 8) & 0xFF;\r\n array[offset + 2] = (block >> 16) & 0xFF;\r\n array[offset + 3] = (block >> 24) & 0xFF;\r\n }\r\n if (j % blockCount === 0) {\r\n f(s);\r\n }\r\n }\r\n if (extraBytes) {\r\n offset = j << 2;\r\n block = s[i];\r\n if (extraBytes > 0) {\r\n array[offset] = block & 0xFF;\r\n }\r\n if (extraBytes > 1) {\r\n array[offset + 1] = (block >> 8) & 0xFF;\r\n }\r\n if (extraBytes > 2) {\r\n array[offset + 2] = (block >> 16) & 0xFF;\r\n }\r\n }\r\n return array;\r\n };\r\n\r\n var f = function (s) {\r\n var h, l, n, c0, c1, c2, c3, c4, c5, c6, c7, c8, c9,\r\n b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16, b17,\r\n b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32, b33,\r\n b34, b35, b36, b37, b38, b39, b40, b41, b42, b43, b44, b45, b46, b47, b48, b49;\r\n for (n = 0; n < 48; n += 2) {\r\n c0 = s[0] ^ s[10] ^ s[20] ^ s[30] ^ s[40];\r\n c1 = s[1] ^ s[11] ^ s[21] ^ s[31] ^ s[41];\r\n c2 = s[2] ^ s[12] ^ s[22] ^ s[32] ^ s[42];\r\n c3 = s[3] ^ s[13] ^ s[23] ^ s[33] ^ s[43];\r\n c4 = s[4] ^ s[14] ^ s[24] ^ s[34] ^ s[44];\r\n c5 = s[5] ^ s[15] ^ s[25] ^ s[35] ^ s[45];\r\n c6 = s[6] ^ s[16] ^ s[26] ^ s[36] ^ s[46];\r\n c7 = s[7] ^ s[17] ^ s[27] ^ s[37] ^ s[47];\r\n c8 = s[8] ^ s[18] ^ s[28] ^ s[38] ^ s[48];\r\n c9 = s[9] ^ s[19] ^ s[29] ^ s[39] ^ s[49];\r\n\r\n h = c8 ^ ((c2 << 1) | (c3 >>> 31));\r\n l = c9 ^ ((c3 << 1) | (c2 >>> 31));\r\n s[0] ^= h;\r\n s[1] ^= l;\r\n s[10] ^= h;\r\n s[11] ^= l;\r\n s[20] ^= h;\r\n s[21] ^= l;\r\n s[30] ^= h;\r\n s[31] ^= l;\r\n s[40] ^= h;\r\n s[41] ^= l;\r\n h = c0 ^ ((c4 << 1) | (c5 >>> 31));\r\n l = c1 ^ ((c5 << 1) | (c4 >>> 31));\r\n s[2] ^= h;\r\n s[3] ^= l;\r\n s[12] ^= h;\r\n s[13] ^= l;\r\n s[22] ^= h;\r\n s[23] ^= l;\r\n s[32] ^= h;\r\n s[33] ^= l;\r\n s[42] ^= h;\r\n s[43] ^= l;\r\n h = c2 ^ ((c6 << 1) | (c7 >>> 31));\r\n l = c3 ^ ((c7 << 1) | (c6 >>> 31));\r\n s[4] ^= h;\r\n s[5] ^= l;\r\n s[14] ^= h;\r\n s[15] ^= l;\r\n s[24] ^= h;\r\n s[25] ^= l;\r\n s[34] ^= h;\r\n s[35] ^= l;\r\n s[44] ^= h;\r\n s[45] ^= l;\r\n h = c4 ^ ((c8 << 1) | (c9 >>> 31));\r\n l = c5 ^ ((c9 << 1) | (c8 >>> 31));\r\n s[6] ^= h;\r\n s[7] ^= l;\r\n s[16] ^= h;\r\n s[17] ^= l;\r\n s[26] ^= h;\r\n s[27] ^= l;\r\n s[36] ^= h;\r\n s[37] ^= l;\r\n s[46] ^= h;\r\n s[47] ^= l;\r\n h = c6 ^ ((c0 << 1) | (c1 >>> 31));\r\n l = c7 ^ ((c1 << 1) | (c0 >>> 31));\r\n s[8] ^= h;\r\n s[9] ^= l;\r\n s[18] ^= h;\r\n s[19] ^= l;\r\n s[28] ^= h;\r\n s[29] ^= l;\r\n s[38] ^= h;\r\n s[39] ^= l;\r\n s[48] ^= h;\r\n s[49] ^= l;\r\n\r\n b0 = s[0];\r\n b1 = s[1];\r\n b32 = (s[11] << 4) | (s[10] >>> 28);\r\n b33 = (s[10] << 4) | (s[11] >>> 28);\r\n b14 = (s[20] << 3) | (s[21] >>> 29);\r\n b15 = (s[21] << 3) | (s[20] >>> 29);\r\n b46 = (s[31] << 9) | (s[30] >>> 23);\r\n b47 = (s[30] << 9) | (s[31] >>> 23);\r\n b28 = (s[40] << 18) | (s[41] >>> 14);\r\n b29 = (s[41] << 18) | (s[40] >>> 14);\r\n b20 = (s[2] << 1) | (s[3] >>> 31);\r\n b21 = (s[3] << 1) | (s[2] >>> 31);\r\n b2 = (s[13] << 12) | (s[12] >>> 20);\r\n b3 = (s[12] << 12) | (s[13] >>> 20);\r\n b34 = (s[22] << 10) | (s[23] >>> 22);\r\n b35 = (s[23] << 10) | (s[22] >>> 22);\r\n b16 = (s[33] << 13) | (s[32] >>> 19);\r\n b17 = (s[32] << 13) | (s[33] >>> 19);\r\n b48 = (s[42] << 2) | (s[43] >>> 30);\r\n b49 = (s[43] << 2) | (s[42] >>> 30);\r\n b40 = (s[5] << 30) | (s[4] >>> 2);\r\n b41 = (s[4] << 30) | (s[5] >>> 2);\r\n b22 = (s[14] << 6) | (s[15] >>> 26);\r\n b23 = (s[15] << 6) | (s[14] >>> 26);\r\n b4 = (s[25] << 11) | (s[24] >>> 21);\r\n b5 = (s[24] << 11) | (s[25] >>> 21);\r\n b36 = (s[34] << 15) | (s[35] >>> 17);\r\n b37 = (s[35] << 15) | (s[34] >>> 17);\r\n b18 = (s[45] << 29) | (s[44] >>> 3);\r\n b19 = (s[44] << 29) | (s[45] >>> 3);\r\n b10 = (s[6] << 28) | (s[7] >>> 4);\r\n b11 = (s[7] << 28) | (s[6] >>> 4);\r\n b42 = (s[17] << 23) | (s[16] >>> 9);\r\n b43 = (s[16] << 23) | (s[17] >>> 9);\r\n b24 = (s[26] << 25) | (s[27] >>> 7);\r\n b25 = (s[27] << 25) | (s[26] >>> 7);\r\n b6 = (s[36] << 21) | (s[37] >>> 11);\r\n b7 = (s[37] << 21) | (s[36] >>> 11);\r\n b38 = (s[47] << 24) | (s[46] >>> 8);\r\n b39 = (s[46] << 24) | (s[47] >>> 8);\r\n b30 = (s[8] << 27) | (s[9] >>> 5);\r\n b31 = (s[9] << 27) | (s[8] >>> 5);\r\n b12 = (s[18] << 20) | (s[19] >>> 12);\r\n b13 = (s[19] << 20) | (s[18] >>> 12);\r\n b44 = (s[29] << 7) | (s[28] >>> 25);\r\n b45 = (s[28] << 7) | (s[29] >>> 25);\r\n b26 = (s[38] << 8) | (s[39] >>> 24);\r\n b27 = (s[39] << 8) | (s[38] >>> 24);\r\n b8 = (s[48] << 14) | (s[49] >>> 18);\r\n b9 = (s[49] << 14) | (s[48] >>> 18);\r\n\r\n s[0] = b0 ^ (~b2 & b4);\r\n s[1] = b1 ^ (~b3 & b5);\r\n s[10] = b10 ^ (~b12 & b14);\r\n s[11] = b11 ^ (~b13 & b15);\r\n s[20] = b20 ^ (~b22 & b24);\r\n s[21] = b21 ^ (~b23 & b25);\r\n s[30] = b30 ^ (~b32 & b34);\r\n s[31] = b31 ^ (~b33 & b35);\r\n s[40] = b40 ^ (~b42 & b44);\r\n s[41] = b41 ^ (~b43 & b45);\r\n s[2] = b2 ^ (~b4 & b6);\r\n s[3] = b3 ^ (~b5 & b7);\r\n s[12] = b12 ^ (~b14 & b16);\r\n s[13] = b13 ^ (~b15 & b17);\r\n s[22] = b22 ^ (~b24 & b26);\r\n s[23] = b23 ^ (~b25 & b27);\r\n s[32] = b32 ^ (~b34 & b36);\r\n s[33] = b33 ^ (~b35 & b37);\r\n s[42] = b42 ^ (~b44 & b46);\r\n s[43] = b43 ^ (~b45 & b47);\r\n s[4] = b4 ^ (~b6 & b8);\r\n s[5] = b5 ^ (~b7 & b9);\r\n s[14] = b14 ^ (~b16 & b18);\r\n s[15] = b15 ^ (~b17 & b19);\r\n s[24] = b24 ^ (~b26 & b28);\r\n s[25] = b25 ^ (~b27 & b29);\r\n s[34] = b34 ^ (~b36 & b38);\r\n s[35] = b35 ^ (~b37 & b39);\r\n s[44] = b44 ^ (~b46 & b48);\r\n s[45] = b45 ^ (~b47 & b49);\r\n s[6] = b6 ^ (~b8 & b0);\r\n s[7] = b7 ^ (~b9 & b1);\r\n s[16] = b16 ^ (~b18 & b10);\r\n s[17] = b17 ^ (~b19 & b11);\r\n s[26] = b26 ^ (~b28 & b20);\r\n s[27] = b27 ^ (~b29 & b21);\r\n s[36] = b36 ^ (~b38 & b30);\r\n s[37] = b37 ^ (~b39 & b31);\r\n s[46] = b46 ^ (~b48 & b40);\r\n s[47] = b47 ^ (~b49 & b41);\r\n s[8] = b8 ^ (~b0 & b2);\r\n s[9] = b9 ^ (~b1 & b3);\r\n s[18] = b18 ^ (~b10 & b12);\r\n s[19] = b19 ^ (~b11 & b13);\r\n s[28] = b28 ^ (~b20 & b22);\r\n s[29] = b29 ^ (~b21 & b23);\r\n s[38] = b38 ^ (~b30 & b32);\r\n s[39] = b39 ^ (~b31 & b33);\r\n s[48] = b48 ^ (~b40 & b42);\r\n s[49] = b49 ^ (~b41 & b43);\r\n\r\n s[0] ^= RC[n];\r\n s[1] ^= RC[n + 1];\r\n }\r\n };\r\n\r\n if (COMMON_JS) {\r\n module.exports = methods;\r\n } else {\r\n for (var i = 0; i < methodNames.length; ++i) {\r\n root[methodNames[i]] = methods[methodNames[i]];\r\n }\r\n }\r\n})();\r\n","const BN = require(\"bn.js\");\nconst Bytes = require(\"./bytes\");\n\nconst fromBN = bn => \"0x\" + bn.toString(\"hex\");\n\nconst toBN = str => new BN(str.slice(2), 16);\n\nconst fromString = str => {\n const bn = \"0x\" + (str.slice(0, 2) === \"0x\" ? new BN(str.slice(2), 16) : new BN(str, 10)).toString(\"hex\");\n return bn === \"0x0\" ? \"0x\" : bn;\n};\n\nconst toEther = wei => toNumber(div(wei, fromString(\"10000000000\"))) / 100000000;\n\nconst fromEther = eth => mul(fromNumber(Math.floor(eth * 100000000)), fromString(\"10000000000\"));\n\nconst toString = a => toBN(a).toString(10);\n\nconst fromNumber = a => typeof a === \"string\" ? /^0x/.test(a) ? a : \"0x\" + a : \"0x\" + new BN(a).toString(\"hex\");\n\nconst toNumber = a => toBN(a).toNumber();\n\nconst toUint256 = a => Bytes.pad(32, a);\n\nconst bin = method => (a, b) => fromBN(toBN(a)[method](toBN(b)));\n\nconst add = bin(\"add\");\nconst mul = bin(\"mul\");\nconst div = bin(\"div\");\nconst sub = bin(\"sub\");\n\nmodule.exports = {\n toString,\n fromString,\n toNumber,\n fromNumber,\n toEther,\n fromEther,\n toUint256,\n add,\n mul,\n div,\n sub\n};","const generate = (num, fn) => {\n let a = [];\n for (var i = 0; i < num; ++i) a.push(fn(i));\n return a;\n};\n\nconst replicate = (num, val) => generate(num, () => val);\n\nconst concat = (a, b) => a.concat(b);\n\nconst flatten = a => {\n let r = [];\n for (let j = 0, J = a.length; j < J; ++j) for (let i = 0, I = a[j].length; i < I; ++i) r.push(a[j][i]);\n return r;\n};\n\nconst chunksOf = (n, a) => {\n let b = [];\n for (let i = 0, l = a.length; i < l; i += n) b.push(a.slice(i, i + n));\n return b;\n};\n\nmodule.exports = {\n generate,\n replicate,\n concat,\n flatten,\n chunksOf\n};","// The RLP format\n// Serialization and deserialization for the BytesTree type, under the following grammar:\n// | First byte | Meaning |\n// | ---------- | -------------------------------------------------------------------------- |\n// | 0 to 127 | HEX(leaf) |\n// | 128 to 183 | HEX(length_of_leaf + 128) + HEX(leaf) |\n// | 184 to 191 | HEX(length_of_length_of_leaf + 128 + 55) + HEX(length_of_leaf) + HEX(leaf) |\n// | 192 to 247 | HEX(length_of_node + 192) + HEX(node) |\n// | 248 to 255 | HEX(length_of_length_of_node + 128 + 55) + HEX(length_of_node) + HEX(node) |\n\nconst encode = tree => {\n const padEven = str => str.length % 2 === 0 ? str : \"0\" + str;\n\n const uint = num => padEven(num.toString(16));\n\n const length = (len, add) => len < 56 ? uint(add + len) : uint(add + uint(len).length / 2 + 55) + uint(len);\n\n const dataTree = tree => {\n if (typeof tree === \"string\") {\n const hex = tree.slice(2);\n const pre = hex.length != 2 || hex >= \"80\" ? length(hex.length / 2, 128) : \"\";\n return pre + hex;\n } else {\n const hex = tree.map(dataTree).join(\"\");\n const pre = length(hex.length / 2, 192);\n return pre + hex;\n }\n };\n\n return \"0x\" + dataTree(tree);\n};\n\nconst decode = hex => {\n let i = 2;\n\n const parseTree = () => {\n if (i >= hex.length) throw \"\";\n const head = hex.slice(i, i + 2);\n return head < \"80\" ? (i += 2, \"0x\" + head) : head < \"c0\" ? parseHex() : parseList();\n };\n\n const parseLength = () => {\n const len = parseInt(hex.slice(i, i += 2), 16) % 64;\n return len < 56 ? len : parseInt(hex.slice(i, i += (len - 55) * 2), 16);\n };\n\n const parseHex = () => {\n const len = parseLength();\n return \"0x\" + hex.slice(i, i += len * 2);\n };\n\n const parseList = () => {\n const lim = parseLength() * 2 + i;\n let list = [];\n while (i < lim) list.push(parseTree());\n return list;\n };\n\n try {\n return parseTree();\n } catch (e) {\n return [];\n }\n};\n\nmodule.exports = { encode, decode };"],"sourceRoot":""}