{"version":3,"file":"8123.dee50138ad6fac5a.js","sources":["webpack://storefronts/./node_modules/base64-js/index.js","webpack://storefronts/./node_modules/buffer/index.js","webpack://storefronts/./node_modules/ieee754/index.js"],"sourcesContent":["'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction getLens (b64) {\n var len = b64.length\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=')\n if (validLen === -1) validLen = len\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4)\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))\n\n var curByte = 0\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen\n\n var i\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)]\n arr[curByte++] = (tmp >> 16) & 0xFF\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n )\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1]\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n )\n }\n\n return parts.join('')\n}\n","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nconst base64 = require('base64-js')\nconst ieee754 = require('ieee754')\nconst customInspectSymbol =\n (typeof Symbol === 'function' && typeof Symbol['for'] === 'function') // eslint-disable-line dot-notation\n ? Symbol['for']('nodejs.util.inspect.custom') // eslint-disable-line dot-notation\n : null\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\nconst K_MAX_LENGTH = 0x7fffffff\nexports.kMaxLength = K_MAX_LENGTH\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Print warning and recommend using `buffer` v4.x which has an Object\n * implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * We report that the browser does not support typed arrays if the are not subclassable\n * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n * for __proto__ and has a buggy typed array implementation.\n */\nBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport()\n\nif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n typeof console.error === 'function') {\n console.error(\n 'This browser lacks typed array (Uint8Array) support which is required by ' +\n '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n )\n}\n\nfunction typedArraySupport () {\n // Can typed array instances can be augmented?\n try {\n const arr = new Uint8Array(1)\n const proto = { foo: function () { return 42 } }\n Object.setPrototypeOf(proto, Uint8Array.prototype)\n Object.setPrototypeOf(arr, proto)\n return arr.foo() === 42\n } catch (e) {\n return false\n }\n}\n\nObject.defineProperty(Buffer.prototype, 'parent', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.buffer\n }\n})\n\nObject.defineProperty(Buffer.prototype, 'offset', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.byteOffset\n }\n})\n\nfunction createBuffer (length) {\n if (length > K_MAX_LENGTH) {\n throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n }\n // Return an augmented `Uint8Array` instance\n const buf = new Uint8Array(length)\n Object.setPrototypeOf(buf, Buffer.prototype)\n return buf\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new TypeError(\n 'The \"string\" argument must be of type string. Received type number'\n )\n }\n return allocUnsafe(arg)\n }\n return from(arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\nfunction from (value, encodingOrOffset, length) {\n if (typeof value === 'string') {\n return fromString(value, encodingOrOffset)\n }\n\n if (ArrayBuffer.isView(value)) {\n return fromArrayView(value)\n }\n\n if (value == null) {\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n }\n\n if (isInstance(value, ArrayBuffer) ||\n (value && isInstance(value.buffer, ArrayBuffer))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof SharedArrayBuffer !== 'undefined' &&\n (isInstance(value, SharedArrayBuffer) ||\n (value && isInstance(value.buffer, SharedArrayBuffer)))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof value === 'number') {\n throw new TypeError(\n 'The \"value\" argument must not be of type number. Received type number'\n )\n }\n\n const valueOf = value.valueOf && value.valueOf()\n if (valueOf != null && valueOf !== value) {\n return Buffer.from(valueOf, encodingOrOffset, length)\n }\n\n const b = fromObject(value)\n if (b) return b\n\n if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n typeof value[Symbol.toPrimitive] === 'function') {\n return Buffer.from(value[Symbol.toPrimitive]('string'), encodingOrOffset, length)\n }\n\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(value, encodingOrOffset, length)\n}\n\n// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n// https://github.com/feross/buffer/pull/148\nObject.setPrototypeOf(Buffer.prototype, Uint8Array.prototype)\nObject.setPrototypeOf(Buffer, Uint8Array)\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be of type number')\n } else if (size < 0) {\n throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n }\n}\n\nfunction alloc (size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpreted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(size).fill(fill, encoding)\n : createBuffer(size).fill(fill)\n }\n return createBuffer(size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(size, fill, encoding)\n}\n\nfunction allocUnsafe (size) {\n assertSize(size)\n return createBuffer(size < 0 ? 0 : checked(size) | 0)\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(size)\n}\n\nfunction fromString (string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n\n const length = byteLength(string, encoding) | 0\n let buf = createBuffer(length)\n\n const actual = buf.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n buf = buf.slice(0, actual)\n }\n\n return buf\n}\n\nfunction fromArrayLike (array) {\n const length = array.length < 0 ? 0 : checked(array.length) | 0\n const buf = createBuffer(length)\n for (let i = 0; i < length; i += 1) {\n buf[i] = array[i] & 255\n }\n return buf\n}\n\nfunction fromArrayView (arrayView) {\n if (isInstance(arrayView, Uint8Array)) {\n const copy = new Uint8Array(arrayView)\n return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength)\n }\n return fromArrayLike(arrayView)\n}\n\nfunction fromArrayBuffer (array, byteOffset, length) {\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\"offset\" is outside of buffer bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\"length\" is outside of buffer bounds')\n }\n\n let buf\n if (byteOffset === undefined && length === undefined) {\n buf = new Uint8Array(array)\n } else if (length === undefined) {\n buf = new Uint8Array(array, byteOffset)\n } else {\n buf = new Uint8Array(array, byteOffset, length)\n }\n\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(buf, Buffer.prototype)\n\n return buf\n}\n\nfunction fromObject (obj) {\n if (Buffer.isBuffer(obj)) {\n const len = checked(obj.length) | 0\n const buf = createBuffer(len)\n\n if (buf.length === 0) {\n return buf\n }\n\n obj.copy(buf, 0, 0, len)\n return buf\n }\n\n if (obj.length !== undefined) {\n if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n return createBuffer(0)\n }\n return fromArrayLike(obj)\n }\n\n if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n return fromArrayLike(obj.data)\n }\n}\n\nfunction checked (length) {\n // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= K_MAX_LENGTH) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return b != null && b._isBuffer === true &&\n b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n}\n\nBuffer.compare = function compare (a, b) {\n if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength)\n if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength)\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError(\n 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n )\n }\n\n if (a === b) return 0\n\n let x = a.length\n let y = b.length\n\n for (let i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!Array.isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n let i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n const buffer = Buffer.allocUnsafe(length)\n let pos = 0\n for (i = 0; i < list.length; ++i) {\n let buf = list[i]\n if (isInstance(buf, Uint8Array)) {\n if (pos + buf.length > buffer.length) {\n if (!Buffer.isBuffer(buf)) buf = Buffer.from(buf)\n buf.copy(buffer, pos)\n } else {\n Uint8Array.prototype.set.call(\n buffer,\n buf,\n pos\n )\n }\n } else if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n } else {\n buf.copy(buffer, pos)\n }\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n throw new TypeError(\n 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n 'Received type ' + typeof string\n )\n }\n\n const len = string.length\n const mustMatch = (arguments.length > 2 && arguments[2] === true)\n if (!mustMatch && len === 0) return 0\n\n // Use a for loop to avoid recursion\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) {\n return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n }\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n let loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coercion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n// reliably in a browserify context because there could be multiple different\n// copies of the 'buffer' package in use. This method works even for Buffer\n// instances that were created from another copy of the `buffer` package.\n// See: https://github.com/feross/buffer/issues/154\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n const i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n const len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (let i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n const len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (let i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n const len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (let i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n const length = this.length\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.toLocaleString = Buffer.prototype.toString\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n let str = ''\n const max = exports.INSPECT_MAX_BYTES\n str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim()\n if (this.length > max) str += ' ... '\n return ''\n}\nif (customInspectSymbol) {\n Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (isInstance(target, Uint8Array)) {\n target = Buffer.from(target, target.offset, target.byteLength)\n }\n if (!Buffer.isBuffer(target)) {\n throw new TypeError(\n 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n 'Received type ' + (typeof target)\n )\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n let x = thisEnd - thisStart\n let y = end - start\n const len = Math.min(x, y)\n\n const thisCopy = this.slice(thisStart, thisEnd)\n const targetCopy = target.slice(start, end)\n\n for (let i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (numberIsNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [val], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n let indexSize = 1\n let arrLength = arr.length\n let valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n let i\n if (dir) {\n let foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n let found = true\n for (let j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n const remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n const strLen = string.length\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n let i\n for (i = 0; i < length; ++i) {\n const parsed = parseInt(string.substr(i * 2, 2), 16)\n if (numberIsNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset >>> 0\n if (isFinite(length)) {\n length = length >>> 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n const remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n case 'latin1':\n case 'binary':\n return asciiWrite(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n const res = []\n\n let i = start\n while (i < end) {\n const firstByte = buf[i]\n let codePoint = null\n let bytesPerSequence = (firstByte > 0xEF)\n ? 4\n : (firstByte > 0xDF)\n ? 3\n : (firstByte > 0xBF)\n ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n let secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nconst MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n const len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n let res = ''\n let i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n const len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n let out = ''\n for (let i = start; i < end; ++i) {\n out += hexSliceLookupTable[buf[i]]\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n const bytes = buf.slice(start, end)\n let res = ''\n // If bytes.length is odd, the last 8 bits must be ignored (same as node.js)\n for (let i = 0; i < bytes.length - 1; i += 2) {\n res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256))\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n const len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n const newBuf = this.subarray(start, end)\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(newBuf, Buffer.prototype)\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUintLE =\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUintBE =\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n let val = this[offset + --byteLength]\n let mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUint8 =\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUint16LE =\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUint16BE =\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUint32LE =\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUint32BE =\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const lo = first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24\n\n const hi = this[++offset] +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n last * 2 ** 24\n\n return BigInt(lo) + (BigInt(hi) << BigInt(32))\n})\n\nBuffer.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const hi = first * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n const lo = this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last\n\n return (BigInt(hi) << BigInt(32)) + BigInt(lo)\n})\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let i = byteLength\n let mul = 1\n let val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = this[offset + 4] +\n this[offset + 5] * 2 ** 8 +\n this[offset + 6] * 2 ** 16 +\n (last << 24) // Overflow\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24)\n})\n\nBuffer.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = (first << 24) + // Overflow\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last)\n})\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUintLE =\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let mul = 1\n let i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUintBE =\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let i = byteLength - 1\n let mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUint8 =\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeUint16LE =\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeUint16BE =\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeUint32LE =\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeUint32BE =\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nfunction wrtBigUInt64LE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n return offset\n}\n\nfunction wrtBigUInt64BE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset + 7] = lo\n lo = lo >> 8\n buf[offset + 6] = lo\n lo = lo >> 8\n buf[offset + 5] = lo\n lo = lo >> 8\n buf[offset + 4] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset + 3] = hi\n hi = hi >> 8\n buf[offset + 2] = hi\n hi = hi >> 8\n buf[offset + 1] = hi\n hi = hi >> 8\n buf[offset] = hi\n return offset + 8\n}\n\nBuffer.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = 0\n let mul = 1\n let sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = byteLength - 1\n let mul = 1\n let sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nBuffer.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n const len = end - start\n\n if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') {\n // Use built-in when available, missing from IE11\n this.copyWithin(targetStart, start, end)\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, end),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n if (val.length === 1) {\n const code = val.charCodeAt(0)\n if ((encoding === 'utf8' && code < 128) ||\n encoding === 'latin1') {\n // Fast path: If `val` fits into a single byte, use that numeric value.\n val = code\n }\n }\n } else if (typeof val === 'number') {\n val = val & 255\n } else if (typeof val === 'boolean') {\n val = Number(val)\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n let i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n const bytes = Buffer.isBuffer(val)\n ? val\n : Buffer.from(val, encoding)\n const len = bytes.length\n if (len === 0) {\n throw new TypeError('The value \"' + val +\n '\" is invalid for argument \"value\"')\n }\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// CUSTOM ERRORS\n// =============\n\n// Simplified versions from Node, changed for Buffer-only usage\nconst errors = {}\nfunction E (sym, getMessage, Base) {\n errors[sym] = class NodeError extends Base {\n constructor () {\n super()\n\n Object.defineProperty(this, 'message', {\n value: getMessage.apply(this, arguments),\n writable: true,\n configurable: true\n })\n\n // Add the error code to the name to include it in the stack trace.\n this.name = `${this.name} [${sym}]`\n // Access the stack to generate the error message including the error code\n // from the name.\n this.stack // eslint-disable-line no-unused-expressions\n // Reset the name to the actual name.\n delete this.name\n }\n\n get code () {\n return sym\n }\n\n set code (value) {\n Object.defineProperty(this, 'code', {\n configurable: true,\n enumerable: true,\n value,\n writable: true\n })\n }\n\n toString () {\n return `${this.name} [${sym}]: ${this.message}`\n }\n }\n}\n\nE('ERR_BUFFER_OUT_OF_BOUNDS',\n function (name) {\n if (name) {\n return `${name} is outside of buffer bounds`\n }\n\n return 'Attempt to access memory outside buffer bounds'\n }, RangeError)\nE('ERR_INVALID_ARG_TYPE',\n function (name, actual) {\n return `The \"${name}\" argument must be of type number. Received type ${typeof actual}`\n }, TypeError)\nE('ERR_OUT_OF_RANGE',\n function (str, range, input) {\n let msg = `The value of \"${str}\" is out of range.`\n let received = input\n if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) {\n received = addNumericalSeparator(String(input))\n } else if (typeof input === 'bigint') {\n received = String(input)\n if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) {\n received = addNumericalSeparator(received)\n }\n received += 'n'\n }\n msg += ` It must be ${range}. Received ${received}`\n return msg\n }, RangeError)\n\nfunction addNumericalSeparator (val) {\n let res = ''\n let i = val.length\n const start = val[0] === '-' ? 1 : 0\n for (; i >= start + 4; i -= 3) {\n res = `_${val.slice(i - 3, i)}${res}`\n }\n return `${val.slice(0, i)}${res}`\n}\n\n// CHECK FUNCTIONS\n// ===============\n\nfunction checkBounds (buf, offset, byteLength) {\n validateNumber(offset, 'offset')\n if (buf[offset] === undefined || buf[offset + byteLength] === undefined) {\n boundsError(offset, buf.length - (byteLength + 1))\n }\n}\n\nfunction checkIntBI (value, min, max, buf, offset, byteLength) {\n if (value > max || value < min) {\n const n = typeof min === 'bigint' ? 'n' : ''\n let range\n if (byteLength > 3) {\n if (min === 0 || min === BigInt(0)) {\n range = `>= 0${n} and < 2${n} ** ${(byteLength + 1) * 8}${n}`\n } else {\n range = `>= -(2${n} ** ${(byteLength + 1) * 8 - 1}${n}) and < 2 ** ` +\n `${(byteLength + 1) * 8 - 1}${n}`\n }\n } else {\n range = `>= ${min}${n} and <= ${max}${n}`\n }\n throw new errors.ERR_OUT_OF_RANGE('value', range, value)\n }\n checkBounds(buf, offset, byteLength)\n}\n\nfunction validateNumber (value, name) {\n if (typeof value !== 'number') {\n throw new errors.ERR_INVALID_ARG_TYPE(name, 'number', value)\n }\n}\n\nfunction boundsError (value, length, type) {\n if (Math.floor(value) !== value) {\n validateNumber(value, type)\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset', 'an integer', value)\n }\n\n if (length < 0) {\n throw new errors.ERR_BUFFER_OUT_OF_BOUNDS()\n }\n\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset',\n `>= ${type ? 1 : 0} and <= ${length}`,\n value)\n}\n\n// HELPER FUNCTIONS\n// ================\n\nconst INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node takes equal signs as end of the Base64 encoding\n str = str.split('=')[0]\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = str.trim().replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n let codePoint\n const length = string.length\n let leadSurrogate = null\n const bytes = []\n\n for (let i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n let c, hi, lo\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n let i\n for (i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\n// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n// the `instanceof` check but they should be treated as of that type.\n// See: https://github.com/feross/buffer/issues/166\nfunction isInstance (obj, type) {\n return obj instanceof type ||\n (obj != null && obj.constructor != null && obj.constructor.name != null &&\n obj.constructor.name === type.name)\n}\nfunction numberIsNaN (obj) {\n // For IE11 support\n return obj !== obj // eslint-disable-line no-self-compare\n}\n\n// Create lookup table for `toString('hex')`\n// See: https://github.com/feross/buffer/issues/219\nconst hexSliceLookupTable = (function () {\n const alphabet = '0123456789abcdef'\n const table = new Array(256)\n for (let i = 0; i < 16; ++i) {\n const i16 = i * 16\n for (let j = 0; j < 16; ++j) {\n table[i16 + j] = alphabet[i] + alphabet[j]\n }\n }\n return table\n})()\n\n// Return not function with Error if BigInt not supported\nfunction defineBigIntMethod (fn) {\n return typeof BigInt === 'undefined' ? BufferBigIntNotDefined : fn\n}\n\nfunction BufferBigIntNotDefined () {\n throw new Error('BigInt not supported')\n}\n","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n"],"names":["exports","b64","lens","getLens","validLen","placeHoldersLen","tmp","i","arr","Arr","curByte","len","revLookup","uint8","extraBytes","parts","len2","encodeChunk","start","end","output","lookup","num","Uint8Array","Array","code","Error","base64","ieee754","customInspectSymbol","Symbol","createBuffer","length","RangeError","buf","Object","Buffer","arg","encodingOrOffset","TypeError","allocUnsafe","from","value","fromString","string","encoding","byteLength","actual","ArrayBuffer","fromArrayView","arrayView","isInstance","copy","fromArrayBuffer","fromArrayLike","SharedArrayBuffer","valueOf","b","fromObject","obj","checked","undefined","numberIsNaN","assertSize","size","array","byteOffset","mustMatch","arguments","loweredCase","utf8ToBytes","base64ToBytes","slowToString","hexSlice","out","hexSliceLookupTable","utf8Slice","asciiSlice","ret","Math","String","latin1Slice","utf16leSlice","bytes","res","swap","n","m","bidirectionalIndexOf","buffer","val","dir","arrayIndexOf","indexSize","arrLength","valLength","read","foundIndex","found","j","firstByte","codePoint","bytesPerSequence","secondByte","thirdByte","fourthByte","tempCodePoint","decodeCodePointsArray","codePoints","checkOffset","offset","ext","checkInt","max","min","wrtBigUInt64LE","checkIntBI","lo","Number","BigInt","hi","wrtBigUInt64BE","checkIEEE754","writeFloat","littleEndian","noAssert","writeDouble","typedArraySupport","proto","e","console","fill","a","x","y","list","pos","str","target","thisStart","thisEnd","thisCopy","targetCopy","isFinite","remaining","hexWrite","strLen","parsed","parseInt","blitBuffer","asciiToBytes","byteArray","utf16leToBytes","units","c","newBuf","mul","defineBigIntMethod","validateNumber","first","last","boundsError","maxBytes","limit","sub","targetStart","errors","E","sym","getMessage","Base","addNumericalSeparator","range","name","type","input","msg","received","INVALID_BASE64_RE","Infinity","leadSurrogate","base64clean","src","dst","alphabet","table","i16","fn","BufferBigIntNotDefined","isLE","mLen","nBytes","eLen","eMax","eBias","nBits","d","s","NaN","rt","isNaN"],"mappings":"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"}