@toon-protocol/client 0.9.0 → 0.9.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../node_modules/.pnpm/js-sha256@0.9.0/node_modules/js-sha256/src/sha256.js","../../../node_modules/.pnpm/blakejs@1.2.1/node_modules/blakejs/util.js","../../../node_modules/.pnpm/blakejs@1.2.1/node_modules/blakejs/blake2b.js","../../../node_modules/.pnpm/blakejs@1.2.1/node_modules/blakejs/blake2s.js","../../../node_modules/.pnpm/blakejs@1.2.1/node_modules/blakejs/index.js","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/lib/util/assert.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/bindings/crypto/bigint-helpers.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/bindings/crypto/random.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/bindings/crypto/finite-field.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/lib/util/errors.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/bindings/crypto/elliptic-curve-endomorphism.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/bindings/crypto/elliptic-curve.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/bindings/crypto/constants.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/bindings/crypto/non-negative.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/bindings/lib/binable.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/lib/util/base58.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/bindings/lib/provable-generic.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/mina-signer/src/derivers-bigint.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/mina-signer/src/field-bigint.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/mina-signer/src/curve-bigint.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/mina-signer/src/utils.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/lib/mina/v1/events.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/bindings/mina-transaction/v1/derived-leaves.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/bindings/crypto/poseidon.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/lib/provable/crypto/hash-generic.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/mina-signer/src/poseidon-bigint.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/bindings/mina-transaction/v1/transaction-leaves-bigint.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/bindings/lib/generic.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/bindings/lib/from-layout.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/bindings/mina-transaction/gen/v1/js-layout.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/bindings/mina-transaction/gen/v1/transaction-bigint.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/mina-signer/src/memo.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/mina-signer/src/signature.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/mina-signer/src/types.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/mina-signer/src/sign-zkapp-command.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/mina-signer/src/sign-legacy.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/mina-signer/src/transaction-hash.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/mina-signer/src/rosetta.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/mina-signer/src/nullifier.ts","../../../node_modules/.pnpm/mina-signer@3.1.0/node_modules/mina-signer/mina-signer.ts"],"sourcesContent":["/**\n * [js-sha256]{@link https://github.com/emn178/js-sha256}\n *\n * @version 0.9.0\n * @author Chen, Yi-Cyuan [emn178@gmail.com]\n * @copyright Chen, Yi-Cyuan 2014-2017\n * @license MIT\n */\n/*jslint bitwise: true */\n(function () {\n 'use strict';\n\n var ERROR = 'input is invalid type';\n var WINDOW = typeof window === 'object';\n var root = WINDOW ? window : {};\n if (root.JS_SHA256_NO_WINDOW) {\n WINDOW = false;\n }\n var WEB_WORKER = !WINDOW && typeof self === 'object';\n var NODE_JS = !root.JS_SHA256_NO_NODE_JS && typeof process === 'object' && process.versions && process.versions.node;\n if (NODE_JS) {\n root = global;\n } else if (WEB_WORKER) {\n root = self;\n }\n var COMMON_JS = !root.JS_SHA256_NO_COMMON_JS && typeof module === 'object' && module.exports;\n var AMD = typeof define === 'function' && define.amd;\n var ARRAY_BUFFER = !root.JS_SHA256_NO_ARRAY_BUFFER && typeof ArrayBuffer !== 'undefined';\n var HEX_CHARS = '0123456789abcdef'.split('');\n var EXTRA = [-2147483648, 8388608, 32768, 128];\n var SHIFT = [24, 16, 8, 0];\n var K = [\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2\n ];\n var OUTPUT_TYPES = ['hex', 'array', 'digest', 'arrayBuffer'];\n\n var blocks = [];\n\n if (root.JS_SHA256_NO_NODE_JS || !Array.isArray) {\n Array.isArray = function (obj) {\n return Object.prototype.toString.call(obj) === '[object Array]';\n };\n }\n\n if (ARRAY_BUFFER && (root.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW || !ArrayBuffer.isView)) {\n ArrayBuffer.isView = function (obj) {\n return typeof obj === 'object' && obj.buffer && obj.buffer.constructor === ArrayBuffer;\n };\n }\n\n var createOutputMethod = function (outputType, is224) {\n return function (message) {\n return new Sha256(is224, true).update(message)[outputType]();\n };\n };\n\n var createMethod = function (is224) {\n var method = createOutputMethod('hex', is224);\n if (NODE_JS) {\n method = nodeWrap(method, is224);\n }\n method.create = function () {\n return new Sha256(is224);\n };\n method.update = function (message) {\n return method.create().update(message);\n };\n for (var i = 0; i < OUTPUT_TYPES.length; ++i) {\n var type = OUTPUT_TYPES[i];\n method[type] = createOutputMethod(type, is224);\n }\n return method;\n };\n\n var nodeWrap = function (method, is224) {\n var crypto = eval(\"require('crypto')\");\n var Buffer = eval(\"require('buffer').Buffer\");\n var algorithm = is224 ? 'sha224' : 'sha256';\n var nodeMethod = function (message) {\n if (typeof message === 'string') {\n return crypto.createHash(algorithm).update(message, 'utf8').digest('hex');\n } else {\n if (message === null || message === undefined) {\n throw new Error(ERROR);\n } else if (message.constructor === ArrayBuffer) {\n message = new Uint8Array(message);\n }\n }\n if (Array.isArray(message) || ArrayBuffer.isView(message) ||\n message.constructor === Buffer) {\n return crypto.createHash(algorithm).update(new Buffer(message)).digest('hex');\n } else {\n return method(message);\n }\n };\n return nodeMethod;\n };\n\n var createHmacOutputMethod = function (outputType, is224) {\n return function (key, message) {\n return new HmacSha256(key, is224, true).update(message)[outputType]();\n };\n };\n\n var createHmacMethod = function (is224) {\n var method = createHmacOutputMethod('hex', is224);\n method.create = function (key) {\n return new HmacSha256(key, is224);\n };\n method.update = function (key, message) {\n return method.create(key).update(message);\n };\n for (var i = 0; i < OUTPUT_TYPES.length; ++i) {\n var type = OUTPUT_TYPES[i];\n method[type] = createHmacOutputMethod(type, is224);\n }\n return method;\n };\n\n function Sha256(is224, sharedMemory) {\n if (sharedMemory) {\n blocks[0] = blocks[16] = blocks[1] = blocks[2] = blocks[3] =\n blocks[4] = blocks[5] = blocks[6] = blocks[7] =\n blocks[8] = blocks[9] = blocks[10] = blocks[11] =\n blocks[12] = blocks[13] = blocks[14] = blocks[15] = 0;\n this.blocks = blocks;\n } else {\n this.blocks = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];\n }\n\n if (is224) {\n this.h0 = 0xc1059ed8;\n this.h1 = 0x367cd507;\n this.h2 = 0x3070dd17;\n this.h3 = 0xf70e5939;\n this.h4 = 0xffc00b31;\n this.h5 = 0x68581511;\n this.h6 = 0x64f98fa7;\n this.h7 = 0xbefa4fa4;\n } else { // 256\n this.h0 = 0x6a09e667;\n this.h1 = 0xbb67ae85;\n this.h2 = 0x3c6ef372;\n this.h3 = 0xa54ff53a;\n this.h4 = 0x510e527f;\n this.h5 = 0x9b05688c;\n this.h6 = 0x1f83d9ab;\n this.h7 = 0x5be0cd19;\n }\n\n this.block = this.start = this.bytes = this.hBytes = 0;\n this.finalized = this.hashed = false;\n this.first = true;\n this.is224 = is224;\n }\n\n Sha256.prototype.update = function (message) {\n if (this.finalized) {\n return;\n }\n var notString, type = typeof message;\n if (type !== 'string') {\n if (type === 'object') {\n if (message === null) {\n throw new Error(ERROR);\n } else if (ARRAY_BUFFER && message.constructor === ArrayBuffer) {\n message = new Uint8Array(message);\n } else if (!Array.isArray(message)) {\n if (!ARRAY_BUFFER || !ArrayBuffer.isView(message)) {\n throw new Error(ERROR);\n }\n }\n } else {\n throw new Error(ERROR);\n }\n notString = true;\n }\n var code, index = 0, i, length = message.length, blocks = this.blocks;\n\n while (index < length) {\n if (this.hashed) {\n this.hashed = false;\n blocks[0] = this.block;\n blocks[16] = blocks[1] = blocks[2] = blocks[3] =\n blocks[4] = blocks[5] = blocks[6] = blocks[7] =\n blocks[8] = blocks[9] = blocks[10] = blocks[11] =\n blocks[12] = blocks[13] = blocks[14] = blocks[15] = 0;\n }\n\n if (notString) {\n for (i = this.start; index < length && i < 64; ++index) {\n blocks[i >> 2] |= message[index] << SHIFT[i++ & 3];\n }\n } else {\n for (i = this.start; index < length && i < 64; ++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\n this.lastByteIndex = i;\n this.bytes += i - this.start;\n if (i >= 64) {\n this.block = blocks[16];\n this.start = i - 64;\n this.hash();\n this.hashed = true;\n } else {\n this.start = i;\n }\n }\n if (this.bytes > 4294967295) {\n this.hBytes += this.bytes / 4294967296 << 0;\n this.bytes = this.bytes % 4294967296;\n }\n return this;\n };\n\n Sha256.prototype.finalize = function () {\n if (this.finalized) {\n return;\n }\n this.finalized = true;\n var blocks = this.blocks, i = this.lastByteIndex;\n blocks[16] = this.block;\n blocks[i >> 2] |= EXTRA[i & 3];\n this.block = blocks[16];\n if (i >= 56) {\n if (!this.hashed) {\n this.hash();\n }\n blocks[0] = this.block;\n blocks[16] = blocks[1] = blocks[2] = blocks[3] =\n blocks[4] = blocks[5] = blocks[6] = blocks[7] =\n blocks[8] = blocks[9] = blocks[10] = blocks[11] =\n blocks[12] = blocks[13] = blocks[14] = blocks[15] = 0;\n }\n blocks[14] = this.hBytes << 3 | this.bytes >>> 29;\n blocks[15] = this.bytes << 3;\n this.hash();\n };\n\n Sha256.prototype.hash = function () {\n var a = this.h0, b = this.h1, c = this.h2, d = this.h3, e = this.h4, f = this.h5, g = this.h6,\n h = this.h7, blocks = this.blocks, j, s0, s1, maj, t1, t2, ch, ab, da, cd, bc;\n\n for (j = 16; j < 64; ++j) {\n // rightrotate\n t1 = blocks[j - 15];\n s0 = ((t1 >>> 7) | (t1 << 25)) ^ ((t1 >>> 18) | (t1 << 14)) ^ (t1 >>> 3);\n t1 = blocks[j - 2];\n s1 = ((t1 >>> 17) | (t1 << 15)) ^ ((t1 >>> 19) | (t1 << 13)) ^ (t1 >>> 10);\n blocks[j] = blocks[j - 16] + s0 + blocks[j - 7] + s1 << 0;\n }\n\n bc = b & c;\n for (j = 0; j < 64; j += 4) {\n if (this.first) {\n if (this.is224) {\n ab = 300032;\n t1 = blocks[0] - 1413257819;\n h = t1 - 150054599 << 0;\n d = t1 + 24177077 << 0;\n } else {\n ab = 704751109;\n t1 = blocks[0] - 210244248;\n h = t1 - 1521486534 << 0;\n d = t1 + 143694565 << 0;\n }\n this.first = false;\n } else {\n s0 = ((a >>> 2) | (a << 30)) ^ ((a >>> 13) | (a << 19)) ^ ((a >>> 22) | (a << 10));\n s1 = ((e >>> 6) | (e << 26)) ^ ((e >>> 11) | (e << 21)) ^ ((e >>> 25) | (e << 7));\n ab = a & b;\n maj = ab ^ (a & c) ^ bc;\n ch = (e & f) ^ (~e & g);\n t1 = h + s1 + ch + K[j] + blocks[j];\n t2 = s0 + maj;\n h = d + t1 << 0;\n d = t1 + t2 << 0;\n }\n s0 = ((d >>> 2) | (d << 30)) ^ ((d >>> 13) | (d << 19)) ^ ((d >>> 22) | (d << 10));\n s1 = ((h >>> 6) | (h << 26)) ^ ((h >>> 11) | (h << 21)) ^ ((h >>> 25) | (h << 7));\n da = d & a;\n maj = da ^ (d & b) ^ ab;\n ch = (h & e) ^ (~h & f);\n t1 = g + s1 + ch + K[j + 1] + blocks[j + 1];\n t2 = s0 + maj;\n g = c + t1 << 0;\n c = t1 + t2 << 0;\n s0 = ((c >>> 2) | (c << 30)) ^ ((c >>> 13) | (c << 19)) ^ ((c >>> 22) | (c << 10));\n s1 = ((g >>> 6) | (g << 26)) ^ ((g >>> 11) | (g << 21)) ^ ((g >>> 25) | (g << 7));\n cd = c & d;\n maj = cd ^ (c & a) ^ da;\n ch = (g & h) ^ (~g & e);\n t1 = f + s1 + ch + K[j + 2] + blocks[j + 2];\n t2 = s0 + maj;\n f = b + t1 << 0;\n b = t1 + t2 << 0;\n s0 = ((b >>> 2) | (b << 30)) ^ ((b >>> 13) | (b << 19)) ^ ((b >>> 22) | (b << 10));\n s1 = ((f >>> 6) | (f << 26)) ^ ((f >>> 11) | (f << 21)) ^ ((f >>> 25) | (f << 7));\n bc = b & c;\n maj = bc ^ (b & d) ^ cd;\n ch = (f & g) ^ (~f & h);\n t1 = e + s1 + ch + K[j + 3] + blocks[j + 3];\n t2 = s0 + maj;\n e = a + t1 << 0;\n a = t1 + t2 << 0;\n }\n\n this.h0 = this.h0 + a << 0;\n this.h1 = this.h1 + b << 0;\n this.h2 = this.h2 + c << 0;\n this.h3 = this.h3 + d << 0;\n this.h4 = this.h4 + e << 0;\n this.h5 = this.h5 + f << 0;\n this.h6 = this.h6 + g << 0;\n this.h7 = this.h7 + h << 0;\n };\n\n Sha256.prototype.hex = function () {\n this.finalize();\n\n var h0 = this.h0, h1 = this.h1, h2 = this.h2, h3 = this.h3, h4 = this.h4, h5 = this.h5,\n h6 = this.h6, h7 = this.h7;\n\n var hex = HEX_CHARS[(h0 >> 28) & 0x0F] + HEX_CHARS[(h0 >> 24) & 0x0F] +\n HEX_CHARS[(h0 >> 20) & 0x0F] + HEX_CHARS[(h0 >> 16) & 0x0F] +\n HEX_CHARS[(h0 >> 12) & 0x0F] + HEX_CHARS[(h0 >> 8) & 0x0F] +\n HEX_CHARS[(h0 >> 4) & 0x0F] + HEX_CHARS[h0 & 0x0F] +\n HEX_CHARS[(h1 >> 28) & 0x0F] + HEX_CHARS[(h1 >> 24) & 0x0F] +\n HEX_CHARS[(h1 >> 20) & 0x0F] + HEX_CHARS[(h1 >> 16) & 0x0F] +\n HEX_CHARS[(h1 >> 12) & 0x0F] + HEX_CHARS[(h1 >> 8) & 0x0F] +\n HEX_CHARS[(h1 >> 4) & 0x0F] + HEX_CHARS[h1 & 0x0F] +\n HEX_CHARS[(h2 >> 28) & 0x0F] + HEX_CHARS[(h2 >> 24) & 0x0F] +\n HEX_CHARS[(h2 >> 20) & 0x0F] + HEX_CHARS[(h2 >> 16) & 0x0F] +\n HEX_CHARS[(h2 >> 12) & 0x0F] + HEX_CHARS[(h2 >> 8) & 0x0F] +\n HEX_CHARS[(h2 >> 4) & 0x0F] + HEX_CHARS[h2 & 0x0F] +\n HEX_CHARS[(h3 >> 28) & 0x0F] + HEX_CHARS[(h3 >> 24) & 0x0F] +\n HEX_CHARS[(h3 >> 20) & 0x0F] + HEX_CHARS[(h3 >> 16) & 0x0F] +\n HEX_CHARS[(h3 >> 12) & 0x0F] + HEX_CHARS[(h3 >> 8) & 0x0F] +\n HEX_CHARS[(h3 >> 4) & 0x0F] + HEX_CHARS[h3 & 0x0F] +\n HEX_CHARS[(h4 >> 28) & 0x0F] + HEX_CHARS[(h4 >> 24) & 0x0F] +\n HEX_CHARS[(h4 >> 20) & 0x0F] + HEX_CHARS[(h4 >> 16) & 0x0F] +\n HEX_CHARS[(h4 >> 12) & 0x0F] + HEX_CHARS[(h4 >> 8) & 0x0F] +\n HEX_CHARS[(h4 >> 4) & 0x0F] + HEX_CHARS[h4 & 0x0F] +\n HEX_CHARS[(h5 >> 28) & 0x0F] + HEX_CHARS[(h5 >> 24) & 0x0F] +\n HEX_CHARS[(h5 >> 20) & 0x0F] + HEX_CHARS[(h5 >> 16) & 0x0F] +\n HEX_CHARS[(h5 >> 12) & 0x0F] + HEX_CHARS[(h5 >> 8) & 0x0F] +\n HEX_CHARS[(h5 >> 4) & 0x0F] + HEX_CHARS[h5 & 0x0F] +\n HEX_CHARS[(h6 >> 28) & 0x0F] + HEX_CHARS[(h6 >> 24) & 0x0F] +\n HEX_CHARS[(h6 >> 20) & 0x0F] + HEX_CHARS[(h6 >> 16) & 0x0F] +\n HEX_CHARS[(h6 >> 12) & 0x0F] + HEX_CHARS[(h6 >> 8) & 0x0F] +\n HEX_CHARS[(h6 >> 4) & 0x0F] + HEX_CHARS[h6 & 0x0F];\n if (!this.is224) {\n hex += HEX_CHARS[(h7 >> 28) & 0x0F] + HEX_CHARS[(h7 >> 24) & 0x0F] +\n HEX_CHARS[(h7 >> 20) & 0x0F] + HEX_CHARS[(h7 >> 16) & 0x0F] +\n HEX_CHARS[(h7 >> 12) & 0x0F] + HEX_CHARS[(h7 >> 8) & 0x0F] +\n HEX_CHARS[(h7 >> 4) & 0x0F] + HEX_CHARS[h7 & 0x0F];\n }\n return hex;\n };\n\n Sha256.prototype.toString = Sha256.prototype.hex;\n\n Sha256.prototype.digest = function () {\n this.finalize();\n\n var h0 = this.h0, h1 = this.h1, h2 = this.h2, h3 = this.h3, h4 = this.h4, h5 = this.h5,\n h6 = this.h6, h7 = this.h7;\n\n var arr = [\n (h0 >> 24) & 0xFF, (h0 >> 16) & 0xFF, (h0 >> 8) & 0xFF, h0 & 0xFF,\n (h1 >> 24) & 0xFF, (h1 >> 16) & 0xFF, (h1 >> 8) & 0xFF, h1 & 0xFF,\n (h2 >> 24) & 0xFF, (h2 >> 16) & 0xFF, (h2 >> 8) & 0xFF, h2 & 0xFF,\n (h3 >> 24) & 0xFF, (h3 >> 16) & 0xFF, (h3 >> 8) & 0xFF, h3 & 0xFF,\n (h4 >> 24) & 0xFF, (h4 >> 16) & 0xFF, (h4 >> 8) & 0xFF, h4 & 0xFF,\n (h5 >> 24) & 0xFF, (h5 >> 16) & 0xFF, (h5 >> 8) & 0xFF, h5 & 0xFF,\n (h6 >> 24) & 0xFF, (h6 >> 16) & 0xFF, (h6 >> 8) & 0xFF, h6 & 0xFF\n ];\n if (!this.is224) {\n arr.push((h7 >> 24) & 0xFF, (h7 >> 16) & 0xFF, (h7 >> 8) & 0xFF, h7 & 0xFF);\n }\n return arr;\n };\n\n Sha256.prototype.array = Sha256.prototype.digest;\n\n Sha256.prototype.arrayBuffer = function () {\n this.finalize();\n\n var buffer = new ArrayBuffer(this.is224 ? 28 : 32);\n var dataView = new DataView(buffer);\n dataView.setUint32(0, this.h0);\n dataView.setUint32(4, this.h1);\n dataView.setUint32(8, this.h2);\n dataView.setUint32(12, this.h3);\n dataView.setUint32(16, this.h4);\n dataView.setUint32(20, this.h5);\n dataView.setUint32(24, this.h6);\n if (!this.is224) {\n dataView.setUint32(28, this.h7);\n }\n return buffer;\n };\n\n function HmacSha256(key, is224, sharedMemory) {\n var i, type = typeof key;\n if (type === 'string') {\n var bytes = [], length = key.length, index = 0, code;\n for (i = 0; i < length; ++i) {\n code = key.charCodeAt(i);\n if (code < 0x80) {\n bytes[index++] = code;\n } else if (code < 0x800) {\n bytes[index++] = (0xc0 | (code >> 6));\n bytes[index++] = (0x80 | (code & 0x3f));\n } else if (code < 0xd800 || code >= 0xe000) {\n bytes[index++] = (0xe0 | (code >> 12));\n bytes[index++] = (0x80 | ((code >> 6) & 0x3f));\n bytes[index++] = (0x80 | (code & 0x3f));\n } else {\n code = 0x10000 + (((code & 0x3ff) << 10) | (key.charCodeAt(++i) & 0x3ff));\n bytes[index++] = (0xf0 | (code >> 18));\n bytes[index++] = (0x80 | ((code >> 12) & 0x3f));\n bytes[index++] = (0x80 | ((code >> 6) & 0x3f));\n bytes[index++] = (0x80 | (code & 0x3f));\n }\n }\n key = bytes;\n } else {\n if (type === 'object') {\n if (key === null) {\n throw new Error(ERROR);\n } else if (ARRAY_BUFFER && key.constructor === ArrayBuffer) {\n key = new Uint8Array(key);\n } else if (!Array.isArray(key)) {\n if (!ARRAY_BUFFER || !ArrayBuffer.isView(key)) {\n throw new Error(ERROR);\n }\n }\n } else {\n throw new Error(ERROR);\n }\n }\n\n if (key.length > 64) {\n key = (new Sha256(is224, true)).update(key).array();\n }\n\n var oKeyPad = [], iKeyPad = [];\n for (i = 0; i < 64; ++i) {\n var b = key[i] || 0;\n oKeyPad[i] = 0x5c ^ b;\n iKeyPad[i] = 0x36 ^ b;\n }\n\n Sha256.call(this, is224, sharedMemory);\n\n this.update(iKeyPad);\n this.oKeyPad = oKeyPad;\n this.inner = true;\n this.sharedMemory = sharedMemory;\n }\n HmacSha256.prototype = new Sha256();\n\n HmacSha256.prototype.finalize = function () {\n Sha256.prototype.finalize.call(this);\n if (this.inner) {\n this.inner = false;\n var innerHash = this.array();\n Sha256.call(this, this.is224, this.sharedMemory);\n this.update(this.oKeyPad);\n this.update(innerHash);\n Sha256.prototype.finalize.call(this);\n }\n };\n\n var exports = createMethod();\n exports.sha256 = exports;\n exports.sha224 = createMethod(true);\n exports.sha256.hmac = createHmacMethod();\n exports.sha224.hmac = createHmacMethod(true);\n\n if (COMMON_JS) {\n module.exports = exports;\n } else {\n root.sha256 = exports.sha256;\n root.sha224 = exports.sha224;\n if (AMD) {\n define(function () {\n return exports;\n });\n }\n }\n})();\n","const ERROR_MSG_INPUT = 'Input must be an string, Buffer or Uint8Array'\n\n// For convenience, let people hash a string, not just a Uint8Array\nfunction normalizeInput (input) {\n let ret\n if (input instanceof Uint8Array) {\n ret = input\n } else if (typeof input === 'string') {\n const encoder = new TextEncoder()\n ret = encoder.encode(input)\n } else {\n throw new Error(ERROR_MSG_INPUT)\n }\n return ret\n}\n\n// Converts a Uint8Array to a hexadecimal string\n// For example, toHex([255, 0, 255]) returns \"ff00ff\"\nfunction toHex (bytes) {\n return Array.prototype.map\n .call(bytes, function (n) {\n return (n < 16 ? '0' : '') + n.toString(16)\n })\n .join('')\n}\n\n// Converts any value in [0...2^32-1] to an 8-character hex string\nfunction uint32ToHex (val) {\n return (0x100000000 + val).toString(16).substring(1)\n}\n\n// For debugging: prints out hash state in the same format as the RFC\n// sample computation exactly, so that you can diff\nfunction debugPrint (label, arr, size) {\n let msg = '\\n' + label + ' = '\n for (let i = 0; i < arr.length; i += 2) {\n if (size === 32) {\n msg += uint32ToHex(arr[i]).toUpperCase()\n msg += ' '\n msg += uint32ToHex(arr[i + 1]).toUpperCase()\n } else if (size === 64) {\n msg += uint32ToHex(arr[i + 1]).toUpperCase()\n msg += uint32ToHex(arr[i]).toUpperCase()\n } else throw new Error('Invalid size ' + size)\n if (i % 6 === 4) {\n msg += '\\n' + new Array(label.length + 4).join(' ')\n } else if (i < arr.length - 2) {\n msg += ' '\n }\n }\n console.log(msg)\n}\n\n// For performance testing: generates N bytes of input, hashes M times\n// Measures and prints MB/second hash performance each time\nfunction testSpeed (hashFn, N, M) {\n let startMs = new Date().getTime()\n\n const input = new Uint8Array(N)\n for (let i = 0; i < N; i++) {\n input[i] = i % 256\n }\n const genMs = new Date().getTime()\n console.log('Generated random input in ' + (genMs - startMs) + 'ms')\n startMs = genMs\n\n for (let i = 0; i < M; i++) {\n const hashHex = hashFn(input)\n const hashMs = new Date().getTime()\n const ms = hashMs - startMs\n startMs = hashMs\n console.log('Hashed in ' + ms + 'ms: ' + hashHex.substring(0, 20) + '...')\n console.log(\n Math.round((N / (1 << 20) / (ms / 1000)) * 100) / 100 + ' MB PER SECOND'\n )\n }\n}\n\nmodule.exports = {\n normalizeInput: normalizeInput,\n toHex: toHex,\n debugPrint: debugPrint,\n testSpeed: testSpeed\n}\n","// Blake2B in pure Javascript\n// Adapted from the reference implementation in RFC7693\n// Ported to Javascript by DC - https://github.com/dcposch\n\nconst util = require('./util')\n\n// 64-bit unsigned addition\n// Sets v[a,a+1] += v[b,b+1]\n// v should be a Uint32Array\nfunction ADD64AA (v, a, b) {\n const o0 = v[a] + v[b]\n let o1 = v[a + 1] + v[b + 1]\n if (o0 >= 0x100000000) {\n o1++\n }\n v[a] = o0\n v[a + 1] = o1\n}\n\n// 64-bit unsigned addition\n// Sets v[a,a+1] += b\n// b0 is the low 32 bits of b, b1 represents the high 32 bits\nfunction ADD64AC (v, a, b0, b1) {\n let o0 = v[a] + b0\n if (b0 < 0) {\n o0 += 0x100000000\n }\n let o1 = v[a + 1] + b1\n if (o0 >= 0x100000000) {\n o1++\n }\n v[a] = o0\n v[a + 1] = o1\n}\n\n// Little-endian byte access\nfunction B2B_GET32 (arr, i) {\n return arr[i] ^ (arr[i + 1] << 8) ^ (arr[i + 2] << 16) ^ (arr[i + 3] << 24)\n}\n\n// G Mixing function\n// The ROTRs are inlined for speed\nfunction B2B_G (a, b, c, d, ix, iy) {\n const x0 = m[ix]\n const x1 = m[ix + 1]\n const y0 = m[iy]\n const y1 = m[iy + 1]\n\n ADD64AA(v, a, b) // v[a,a+1] += v[b,b+1] ... in JS we must store a uint64 as two uint32s\n ADD64AC(v, a, x0, x1) // v[a, a+1] += x ... x0 is the low 32 bits of x, x1 is the high 32 bits\n\n // v[d,d+1] = (v[d,d+1] xor v[a,a+1]) rotated to the right by 32 bits\n let xor0 = v[d] ^ v[a]\n let xor1 = v[d + 1] ^ v[a + 1]\n v[d] = xor1\n v[d + 1] = xor0\n\n ADD64AA(v, c, d)\n\n // v[b,b+1] = (v[b,b+1] xor v[c,c+1]) rotated right by 24 bits\n xor0 = v[b] ^ v[c]\n xor1 = v[b + 1] ^ v[c + 1]\n v[b] = (xor0 >>> 24) ^ (xor1 << 8)\n v[b + 1] = (xor1 >>> 24) ^ (xor0 << 8)\n\n ADD64AA(v, a, b)\n ADD64AC(v, a, y0, y1)\n\n // v[d,d+1] = (v[d,d+1] xor v[a,a+1]) rotated right by 16 bits\n xor0 = v[d] ^ v[a]\n xor1 = v[d + 1] ^ v[a + 1]\n v[d] = (xor0 >>> 16) ^ (xor1 << 16)\n v[d + 1] = (xor1 >>> 16) ^ (xor0 << 16)\n\n ADD64AA(v, c, d)\n\n // v[b,b+1] = (v[b,b+1] xor v[c,c+1]) rotated right by 63 bits\n xor0 = v[b] ^ v[c]\n xor1 = v[b + 1] ^ v[c + 1]\n v[b] = (xor1 >>> 31) ^ (xor0 << 1)\n v[b + 1] = (xor0 >>> 31) ^ (xor1 << 1)\n}\n\n// Initialization Vector\nconst BLAKE2B_IV32 = new Uint32Array([\n 0xf3bcc908, 0x6a09e667, 0x84caa73b, 0xbb67ae85, 0xfe94f82b, 0x3c6ef372,\n 0x5f1d36f1, 0xa54ff53a, 0xade682d1, 0x510e527f, 0x2b3e6c1f, 0x9b05688c,\n 0xfb41bd6b, 0x1f83d9ab, 0x137e2179, 0x5be0cd19\n])\n\nconst SIGMA8 = [\n 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 14, 10, 4, 8, 9, 15, 13,\n 6, 1, 12, 0, 2, 11, 7, 5, 3, 11, 8, 12, 0, 5, 2, 15, 13, 10, 14, 3, 6, 7, 1,\n 9, 4, 7, 9, 3, 1, 13, 12, 11, 14, 2, 6, 5, 10, 4, 0, 15, 8, 9, 0, 5, 7, 2, 4,\n 10, 15, 14, 1, 11, 12, 6, 8, 3, 13, 2, 12, 6, 10, 0, 11, 8, 3, 4, 13, 7, 5,\n 15, 14, 1, 9, 12, 5, 1, 15, 14, 13, 4, 10, 0, 7, 6, 3, 9, 2, 8, 11, 13, 11, 7,\n 14, 12, 1, 3, 9, 5, 0, 15, 4, 8, 6, 2, 10, 6, 15, 14, 9, 11, 3, 0, 8, 12, 2,\n 13, 7, 1, 4, 10, 5, 10, 2, 8, 4, 7, 6, 1, 5, 15, 11, 9, 14, 3, 12, 13, 0, 0,\n 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 14, 10, 4, 8, 9, 15, 13, 6,\n 1, 12, 0, 2, 11, 7, 5, 3\n]\n\n// These are offsets into a uint64 buffer.\n// Multiply them all by 2 to make them offsets into a uint32 buffer,\n// because this is Javascript and we don't have uint64s\nconst SIGMA82 = new Uint8Array(\n SIGMA8.map(function (x) {\n return x * 2\n })\n)\n\n// Compression function. 'last' flag indicates last block.\n// Note we're representing 16 uint64s as 32 uint32s\nconst v = new Uint32Array(32)\nconst m = new Uint32Array(32)\nfunction blake2bCompress (ctx, last) {\n let i = 0\n\n // init work variables\n for (i = 0; i < 16; i++) {\n v[i] = ctx.h[i]\n v[i + 16] = BLAKE2B_IV32[i]\n }\n\n // low 64 bits of offset\n v[24] = v[24] ^ ctx.t\n v[25] = v[25] ^ (ctx.t / 0x100000000)\n // high 64 bits not supported, offset may not be higher than 2**53-1\n\n // last block flag set ?\n if (last) {\n v[28] = ~v[28]\n v[29] = ~v[29]\n }\n\n // get little-endian words\n for (i = 0; i < 32; i++) {\n m[i] = B2B_GET32(ctx.b, 4 * i)\n }\n\n // twelve rounds of mixing\n // uncomment the DebugPrint calls to log the computation\n // and match the RFC sample documentation\n // util.debugPrint(' m[16]', m, 64)\n for (i = 0; i < 12; i++) {\n // util.debugPrint(' (i=' + (i < 10 ? ' ' : '') + i + ') v[16]', v, 64)\n B2B_G(0, 8, 16, 24, SIGMA82[i * 16 + 0], SIGMA82[i * 16 + 1])\n B2B_G(2, 10, 18, 26, SIGMA82[i * 16 + 2], SIGMA82[i * 16 + 3])\n B2B_G(4, 12, 20, 28, SIGMA82[i * 16 + 4], SIGMA82[i * 16 + 5])\n B2B_G(6, 14, 22, 30, SIGMA82[i * 16 + 6], SIGMA82[i * 16 + 7])\n B2B_G(0, 10, 20, 30, SIGMA82[i * 16 + 8], SIGMA82[i * 16 + 9])\n B2B_G(2, 12, 22, 24, SIGMA82[i * 16 + 10], SIGMA82[i * 16 + 11])\n B2B_G(4, 14, 16, 26, SIGMA82[i * 16 + 12], SIGMA82[i * 16 + 13])\n B2B_G(6, 8, 18, 28, SIGMA82[i * 16 + 14], SIGMA82[i * 16 + 15])\n }\n // util.debugPrint(' (i=12) v[16]', v, 64)\n\n for (i = 0; i < 16; i++) {\n ctx.h[i] = ctx.h[i] ^ v[i] ^ v[i + 16]\n }\n // util.debugPrint('h[8]', ctx.h, 64)\n}\n\n// reusable parameterBlock\nconst parameterBlock = new Uint8Array([\n 0,\n 0,\n 0,\n 0, // 0: outlen, keylen, fanout, depth\n 0,\n 0,\n 0,\n 0, // 4: leaf length, sequential mode\n 0,\n 0,\n 0,\n 0, // 8: node offset\n 0,\n 0,\n 0,\n 0, // 12: node offset\n 0,\n 0,\n 0,\n 0, // 16: node depth, inner length, rfu\n 0,\n 0,\n 0,\n 0, // 20: rfu\n 0,\n 0,\n 0,\n 0, // 24: rfu\n 0,\n 0,\n 0,\n 0, // 28: rfu\n 0,\n 0,\n 0,\n 0, // 32: salt\n 0,\n 0,\n 0,\n 0, // 36: salt\n 0,\n 0,\n 0,\n 0, // 40: salt\n 0,\n 0,\n 0,\n 0, // 44: salt\n 0,\n 0,\n 0,\n 0, // 48: personal\n 0,\n 0,\n 0,\n 0, // 52: personal\n 0,\n 0,\n 0,\n 0, // 56: personal\n 0,\n 0,\n 0,\n 0 // 60: personal\n])\n\n// Creates a BLAKE2b hashing context\n// Requires an output length between 1 and 64 bytes\n// Takes an optional Uint8Array key\n// Takes an optinal Uint8Array salt\n// Takes an optinal Uint8Array personal\nfunction blake2bInit (outlen, key, salt, personal) {\n if (outlen === 0 || outlen > 64) {\n throw new Error('Illegal output length, expected 0 < length <= 64')\n }\n if (key && key.length > 64) {\n throw new Error('Illegal key, expected Uint8Array with 0 < length <= 64')\n }\n if (salt && salt.length !== 16) {\n throw new Error('Illegal salt, expected Uint8Array with length is 16')\n }\n if (personal && personal.length !== 16) {\n throw new Error('Illegal personal, expected Uint8Array with length is 16')\n }\n\n // state, 'param block'\n const ctx = {\n b: new Uint8Array(128),\n h: new Uint32Array(16),\n t: 0, // input count\n c: 0, // pointer within buffer\n outlen: outlen // output length in bytes\n }\n\n // initialize parameterBlock before usage\n parameterBlock.fill(0)\n parameterBlock[0] = outlen\n if (key) parameterBlock[1] = key.length\n parameterBlock[2] = 1 // fanout\n parameterBlock[3] = 1 // depth\n if (salt) parameterBlock.set(salt, 32)\n if (personal) parameterBlock.set(personal, 48)\n\n // initialize hash state\n for (let i = 0; i < 16; i++) {\n ctx.h[i] = BLAKE2B_IV32[i] ^ B2B_GET32(parameterBlock, i * 4)\n }\n\n // key the hash, if applicable\n if (key) {\n blake2bUpdate(ctx, key)\n // at the end\n ctx.c = 128\n }\n\n return ctx\n}\n\n// Updates a BLAKE2b streaming hash\n// Requires hash context and Uint8Array (byte array)\nfunction blake2bUpdate (ctx, input) {\n for (let i = 0; i < input.length; i++) {\n if (ctx.c === 128) {\n // buffer full ?\n ctx.t += ctx.c // add counters\n blake2bCompress(ctx, false) // compress (not last)\n ctx.c = 0 // counter to zero\n }\n ctx.b[ctx.c++] = input[i]\n }\n}\n\n// Completes a BLAKE2b streaming hash\n// Returns a Uint8Array containing the message digest\nfunction blake2bFinal (ctx) {\n ctx.t += ctx.c // mark last block offset\n\n while (ctx.c < 128) {\n // fill up with zeros\n ctx.b[ctx.c++] = 0\n }\n blake2bCompress(ctx, true) // final block flag = 1\n\n // little endian convert and store\n const out = new Uint8Array(ctx.outlen)\n for (let i = 0; i < ctx.outlen; i++) {\n out[i] = ctx.h[i >> 2] >> (8 * (i & 3))\n }\n return out\n}\n\n// Computes the BLAKE2B hash of a string or byte array, and returns a Uint8Array\n//\n// Returns a n-byte Uint8Array\n//\n// Parameters:\n// - input - the input bytes, as a string, Buffer or Uint8Array\n// - key - optional key Uint8Array, up to 64 bytes\n// - outlen - optional output length in bytes, default 64\n// - salt - optional salt bytes, string, Buffer or Uint8Array\n// - personal - optional personal bytes, string, Buffer or Uint8Array\nfunction blake2b (input, key, outlen, salt, personal) {\n // preprocess inputs\n outlen = outlen || 64\n input = util.normalizeInput(input)\n if (salt) {\n salt = util.normalizeInput(salt)\n }\n if (personal) {\n personal = util.normalizeInput(personal)\n }\n\n // do the math\n const ctx = blake2bInit(outlen, key, salt, personal)\n blake2bUpdate(ctx, input)\n return blake2bFinal(ctx)\n}\n\n// Computes the BLAKE2B hash of a string or byte array\n//\n// Returns an n-byte hash in hex, all lowercase\n//\n// Parameters:\n// - input - the input bytes, as a string, Buffer, or Uint8Array\n// - key - optional key Uint8Array, up to 64 bytes\n// - outlen - optional output length in bytes, default 64\n// - salt - optional salt bytes, string, Buffer or Uint8Array\n// - personal - optional personal bytes, string, Buffer or Uint8Array\nfunction blake2bHex (input, key, outlen, salt, personal) {\n const output = blake2b(input, key, outlen, salt, personal)\n return util.toHex(output)\n}\n\nmodule.exports = {\n blake2b: blake2b,\n blake2bHex: blake2bHex,\n blake2bInit: blake2bInit,\n blake2bUpdate: blake2bUpdate,\n blake2bFinal: blake2bFinal\n}\n","// BLAKE2s hash function in pure Javascript\n// Adapted from the reference implementation in RFC7693\n// Ported to Javascript by DC - https://github.com/dcposch\n\nconst util = require('./util')\n\n// Little-endian byte access.\n// Expects a Uint8Array and an index\n// Returns the little-endian uint32 at v[i..i+3]\nfunction B2S_GET32 (v, i) {\n return v[i] ^ (v[i + 1] << 8) ^ (v[i + 2] << 16) ^ (v[i + 3] << 24)\n}\n\n// Mixing function G.\nfunction B2S_G (a, b, c, d, x, y) {\n v[a] = v[a] + v[b] + x\n v[d] = ROTR32(v[d] ^ v[a], 16)\n v[c] = v[c] + v[d]\n v[b] = ROTR32(v[b] ^ v[c], 12)\n v[a] = v[a] + v[b] + y\n v[d] = ROTR32(v[d] ^ v[a], 8)\n v[c] = v[c] + v[d]\n v[b] = ROTR32(v[b] ^ v[c], 7)\n}\n\n// 32-bit right rotation\n// x should be a uint32\n// y must be between 1 and 31, inclusive\nfunction ROTR32 (x, y) {\n return (x >>> y) ^ (x << (32 - y))\n}\n\n// Initialization Vector.\nconst BLAKE2S_IV = new Uint32Array([\n 0x6a09e667,\n 0xbb67ae85,\n 0x3c6ef372,\n 0xa54ff53a,\n 0x510e527f,\n 0x9b05688c,\n 0x1f83d9ab,\n 0x5be0cd19\n])\n\nconst SIGMA = new Uint8Array([\n 0,\n 1,\n 2,\n 3,\n 4,\n 5,\n 6,\n 7,\n 8,\n 9,\n 10,\n 11,\n 12,\n 13,\n 14,\n 15,\n 14,\n 10,\n 4,\n 8,\n 9,\n 15,\n 13,\n 6,\n 1,\n 12,\n 0,\n 2,\n 11,\n 7,\n 5,\n 3,\n 11,\n 8,\n 12,\n 0,\n 5,\n 2,\n 15,\n 13,\n 10,\n 14,\n 3,\n 6,\n 7,\n 1,\n 9,\n 4,\n 7,\n 9,\n 3,\n 1,\n 13,\n 12,\n 11,\n 14,\n 2,\n 6,\n 5,\n 10,\n 4,\n 0,\n 15,\n 8,\n 9,\n 0,\n 5,\n 7,\n 2,\n 4,\n 10,\n 15,\n 14,\n 1,\n 11,\n 12,\n 6,\n 8,\n 3,\n 13,\n 2,\n 12,\n 6,\n 10,\n 0,\n 11,\n 8,\n 3,\n 4,\n 13,\n 7,\n 5,\n 15,\n 14,\n 1,\n 9,\n 12,\n 5,\n 1,\n 15,\n 14,\n 13,\n 4,\n 10,\n 0,\n 7,\n 6,\n 3,\n 9,\n 2,\n 8,\n 11,\n 13,\n 11,\n 7,\n 14,\n 12,\n 1,\n 3,\n 9,\n 5,\n 0,\n 15,\n 4,\n 8,\n 6,\n 2,\n 10,\n 6,\n 15,\n 14,\n 9,\n 11,\n 3,\n 0,\n 8,\n 12,\n 2,\n 13,\n 7,\n 1,\n 4,\n 10,\n 5,\n 10,\n 2,\n 8,\n 4,\n 7,\n 6,\n 1,\n 5,\n 15,\n 11,\n 9,\n 14,\n 3,\n 12,\n 13,\n 0\n])\n\n// Compression function. \"last\" flag indicates last block\nconst v = new Uint32Array(16)\nconst m = new Uint32Array(16)\nfunction blake2sCompress (ctx, last) {\n let i = 0\n for (i = 0; i < 8; i++) {\n // init work variables\n v[i] = ctx.h[i]\n v[i + 8] = BLAKE2S_IV[i]\n }\n\n v[12] ^= ctx.t // low 32 bits of offset\n v[13] ^= ctx.t / 0x100000000 // high 32 bits\n if (last) {\n // last block flag set ?\n v[14] = ~v[14]\n }\n\n for (i = 0; i < 16; i++) {\n // get little-endian words\n m[i] = B2S_GET32(ctx.b, 4 * i)\n }\n\n // ten rounds of mixing\n // uncomment the DebugPrint calls to log the computation\n // and match the RFC sample documentation\n // util.debugPrint(' m[16]', m, 32)\n for (i = 0; i < 10; i++) {\n // util.debugPrint(' (i=' + i + ') v[16]', v, 32)\n B2S_G(0, 4, 8, 12, m[SIGMA[i * 16 + 0]], m[SIGMA[i * 16 + 1]])\n B2S_G(1, 5, 9, 13, m[SIGMA[i * 16 + 2]], m[SIGMA[i * 16 + 3]])\n B2S_G(2, 6, 10, 14, m[SIGMA[i * 16 + 4]], m[SIGMA[i * 16 + 5]])\n B2S_G(3, 7, 11, 15, m[SIGMA[i * 16 + 6]], m[SIGMA[i * 16 + 7]])\n B2S_G(0, 5, 10, 15, m[SIGMA[i * 16 + 8]], m[SIGMA[i * 16 + 9]])\n B2S_G(1, 6, 11, 12, m[SIGMA[i * 16 + 10]], m[SIGMA[i * 16 + 11]])\n B2S_G(2, 7, 8, 13, m[SIGMA[i * 16 + 12]], m[SIGMA[i * 16 + 13]])\n B2S_G(3, 4, 9, 14, m[SIGMA[i * 16 + 14]], m[SIGMA[i * 16 + 15]])\n }\n // util.debugPrint(' (i=10) v[16]', v, 32)\n\n for (i = 0; i < 8; i++) {\n ctx.h[i] ^= v[i] ^ v[i + 8]\n }\n // util.debugPrint('h[8]', ctx.h, 32)\n}\n\n// Creates a BLAKE2s hashing context\n// Requires an output length between 1 and 32 bytes\n// Takes an optional Uint8Array key\nfunction blake2sInit (outlen, key) {\n if (!(outlen > 0 && outlen <= 32)) {\n throw new Error('Incorrect output length, should be in [1, 32]')\n }\n const keylen = key ? key.length : 0\n if (key && !(keylen > 0 && keylen <= 32)) {\n throw new Error('Incorrect key length, should be in [1, 32]')\n }\n\n const ctx = {\n h: new Uint32Array(BLAKE2S_IV), // hash state\n b: new Uint8Array(64), // input block\n c: 0, // pointer within block\n t: 0, // input count\n outlen: outlen // output length in bytes\n }\n ctx.h[0] ^= 0x01010000 ^ (keylen << 8) ^ outlen\n\n if (keylen > 0) {\n blake2sUpdate(ctx, key)\n ctx.c = 64 // at the end\n }\n\n return ctx\n}\n\n// Updates a BLAKE2s streaming hash\n// Requires hash context and Uint8Array (byte array)\nfunction blake2sUpdate (ctx, input) {\n for (let i = 0; i < input.length; i++) {\n if (ctx.c === 64) {\n // buffer full ?\n ctx.t += ctx.c // add counters\n blake2sCompress(ctx, false) // compress (not last)\n ctx.c = 0 // counter to zero\n }\n ctx.b[ctx.c++] = input[i]\n }\n}\n\n// Completes a BLAKE2s streaming hash\n// Returns a Uint8Array containing the message digest\nfunction blake2sFinal (ctx) {\n ctx.t += ctx.c // mark last block offset\n while (ctx.c < 64) {\n // fill up with zeros\n ctx.b[ctx.c++] = 0\n }\n blake2sCompress(ctx, true) // final block flag = 1\n\n // little endian convert and store\n const out = new Uint8Array(ctx.outlen)\n for (let i = 0; i < ctx.outlen; i++) {\n out[i] = (ctx.h[i >> 2] >> (8 * (i & 3))) & 0xff\n }\n return out\n}\n\n// Computes the BLAKE2S hash of a string or byte array, and returns a Uint8Array\n//\n// Returns a n-byte Uint8Array\n//\n// Parameters:\n// - input - the input bytes, as a string, Buffer, or Uint8Array\n// - key - optional key Uint8Array, up to 32 bytes\n// - outlen - optional output length in bytes, default 64\nfunction blake2s (input, key, outlen) {\n // preprocess inputs\n outlen = outlen || 32\n input = util.normalizeInput(input)\n\n // do the math\n const ctx = blake2sInit(outlen, key)\n blake2sUpdate(ctx, input)\n return blake2sFinal(ctx)\n}\n\n// Computes the BLAKE2S hash of a string or byte array\n//\n// Returns an n-byte hash in hex, all lowercase\n//\n// Parameters:\n// - input - the input bytes, as a string, Buffer, or Uint8Array\n// - key - optional key Uint8Array, up to 32 bytes\n// - outlen - optional output length in bytes, default 64\nfunction blake2sHex (input, key, outlen) {\n const output = blake2s(input, key, outlen)\n return util.toHex(output)\n}\n\nmodule.exports = {\n blake2s: blake2s,\n blake2sHex: blake2sHex,\n blake2sInit: blake2sInit,\n blake2sUpdate: blake2sUpdate,\n blake2sFinal: blake2sFinal\n}\n","const b2b = require('./blake2b')\nconst b2s = require('./blake2s')\n\nmodule.exports = {\n blake2b: b2b.blake2b,\n blake2bHex: b2b.blake2bHex,\n blake2bInit: b2b.blake2bInit,\n blake2bUpdate: b2b.blake2bUpdate,\n blake2bFinal: b2b.blake2bFinal,\n blake2s: b2s.blake2s,\n blake2sHex: b2s.blake2sHex,\n blake2sInit: b2s.blake2sInit,\n blake2sUpdate: b2s.blake2sUpdate,\n blake2sFinal: b2s.blake2sFinal\n}\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"mappings":"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W;AAAA,MAC3B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MA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AAiB;EACjB,YAAY;EACZ,WAAW;EACX,iBAAiB;EACjB,iBAAiB;;AAEnB,IAAI,mBAAmB,EAAE,YAAY,EAAC;AACtC,IAAI,yBAAyB;EAC3B,KAAK;IACH;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;;EAGJ,gBAAgB;IACd;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;;EAGJ,YAAY;EACZ,eAAe;EACf,yBAAyB;EACzB,WAAW;EACX,MAAM;EACN,OAAO;;AAET,IAAI,yBAAyB;EAC3B,KAAK;IACH;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;;EAGJ,gBAAgB;IACd;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MACE;MACA;MACA;;IAEF;MA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","names":["is224","method","blocks","a","b","exports","module","encoder","exports","module","v","a","b","blake2b","exports","module","v","a","b","exports","module","power","x","a","b","p","a","b","q","sizeInBits","n","assert","Field","Scalar","a","p","q","assert","quotient","a","b","p","Field","Scalar","Field","sizeInBits","encoder","base58","Field","TokenId","ReceiptChainHash","StateHash","a","b","HashInput","typeObj","a","b","empty","signable","primitives","sizeInBits","Field","Bool","b","Unsigned","Sign","module","Scalar","p","Field","Poseidon","hashWithPrefix","Events","hash","Actions","empty","Field","Bool","HashHelpers","packToFields","signable","empty","self","b","hash","x","hash","Fp","power","Field","hashWithPrefix","TypeMap","customTypes","Field","signableFromLayout","empty","value","json","typeData","toJSONEssential","TypeMap","customTypes","sign","b","signature","hash","hashWithPrefix","a","import_blakejs","BinablePublicKey","BinableSignature","base58","toString","defaultValidUntil","sign"]}