Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Socket
Sign inDemoInstall

@bitgo/utxo-lib

Package Overview
Dependencies
Maintainers
4
Versions
171
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@bitgo/utxo-lib - npm Package Compare versions

Comparing version 1.9.6 to 1.9.7-rc.0.0.1.0

dist/src/bitgo/outputScripts.js

23

dist/src/bitgo/index.js

@@ -1,4 +0,21 @@

module.exports = {
keyutil: require('./keyutil')
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYml0Z28vaW5kZXguanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE9BQU8sR0FBRztJQUNmLE9BQU8sRUFBRSxPQUFPLENBQUMsV0FBVyxDQUFDO0NBQzlCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJtb2R1bGUuZXhwb3J0cyA9IHtcbiAga2V5dXRpbDogcmVxdWlyZSgnLi9rZXl1dGlsJylcbn1cbiJdfQ==
Object.defineProperty(exports, "__esModule", { value: true });
exports.parseSignatureScript = exports.verifySignature = exports.getDefaultSigHash = exports.outputScripts = exports.keyutil = void 0;
exports.keyutil = require("./keyutil");
exports.outputScripts = require("./outputScripts");
var signature_1 = require("./signature");
Object.defineProperty(exports, "getDefaultSigHash", { enumerable: true, get: function () { return signature_1.getDefaultSigHash; } });
Object.defineProperty(exports, "verifySignature", { enumerable: true, get: function () { return signature_1.verifySignature; } });
Object.defineProperty(exports, "parseSignatureScript", { enumerable: true, get: function () { return signature_1.parseSignatureScript; } });
__exportStar(require("./transaction"), exports);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYml0Z28vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUFBLHVDQUFxQztBQUNyQyxtREFBaUQ7QUFDakQseUNBQXVGO0FBQTlFLDhHQUFBLGlCQUFpQixPQUFBO0FBQUUsNEdBQUEsZUFBZSxPQUFBO0FBQUUsaUhBQUEsb0JBQW9CLE9BQUE7QUFDakUsZ0RBQThCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogYXMga2V5dXRpbCBmcm9tICcuL2tleXV0aWwnO1xuZXhwb3J0ICogYXMgb3V0cHV0U2NyaXB0cyBmcm9tICcuL291dHB1dFNjcmlwdHMnO1xuZXhwb3J0IHsgZ2V0RGVmYXVsdFNpZ0hhc2gsIHZlcmlmeVNpZ25hdHVyZSwgcGFyc2VTaWduYXR1cmVTY3JpcHQgfSBmcm9tICcuL3NpZ25hdHVyZSc7XG5leHBvcnQgKiBmcm9tICcuL3RyYW5zYWN0aW9uJztcbiJdfQ==

24

dist/src/bitgo/keyutil.js

@@ -1,4 +0,10 @@

var BigInteger = require('bigi');
var ECPair = require('../ecpair');
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.privateKeyBufferFromECPair = exports.privateKeyBufferToECPair = void 0;
/**
* @prettier
*/
const BigInteger = require('bigi');
const ECPair = require('../ecpair');
/**
* Create an ECPair from the raw private key bytes

@@ -13,5 +19,6 @@ * @param {Buffer} buffer - Private key for the ECPair. Must be exactly 32 bytes.

}
var d = BigInteger.fromBuffer(buffer);
return new ECPair(d, null, { network: network });
const d = BigInteger.fromBuffer(buffer);
return new ECPair(d, null, { network });
}
exports.privateKeyBufferToECPair = privateKeyBufferToECPair;
/**

@@ -24,3 +31,3 @@ * Get the private key as a 32 bytes buffer. If it is smaller than 32 bytes, pad it with zeros

if (!(ecPair instanceof ECPair)) {
throw new TypeError("invalid argument ecpair");
throw new TypeError(`invalid argument ecpair`);
}

@@ -31,6 +38,3 @@ if (!ecPair.d)

}
module.exports = {
privateKeyBufferToECPair: privateKeyBufferToECPair,
privateKeyBufferFromECPair: privateKeyBufferFromECPair
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5dXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iaXRnby9rZXl1dGlsLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLElBQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQTtBQUNsQyxJQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUE7QUFFbkM7Ozs7O0dBS0c7QUFDSCxTQUFTLHdCQUF3QixDQUFFLE1BQU0sRUFBRSxPQUFPO0lBQ2hELElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssRUFBRSxFQUFFO1FBQ3BELE1BQU0sSUFBSSxLQUFLLENBQUMsNEJBQTRCLENBQUMsQ0FBQTtLQUM5QztJQUVELElBQU0sQ0FBQyxHQUFHLFVBQVUsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDdkMsT0FBTyxJQUFJLE1BQU0sQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsT0FBTyxTQUFBLEVBQUUsQ0FBQyxDQUFBO0FBQ3pDLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBUywwQkFBMEIsQ0FBRSxNQUFNO0lBQ3pDLElBQUksQ0FBQyxDQUFDLE1BQU0sWUFBWSxNQUFNLENBQUMsRUFBRTtRQUMvQixNQUFNLElBQUksU0FBUyxDQUFDLHlCQUF5QixDQUFDLENBQUE7S0FDL0M7SUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUE7SUFFckQsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQTtBQUM5QixDQUFDO0FBRUQsTUFBTSxDQUFDLE9BQU8sR0FBRztJQUNmLHdCQUF3QiwwQkFBQTtJQUN4QiwwQkFBMEIsNEJBQUE7Q0FDM0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IEJpZ0ludGVnZXIgPSByZXF1aXJlKCdiaWdpJylcbmNvbnN0IEVDUGFpciA9IHJlcXVpcmUoJy4uL2VjcGFpcicpXG5cbi8qKlxuICogQ3JlYXRlIGFuIEVDUGFpciBmcm9tIHRoZSByYXcgcHJpdmF0ZSBrZXkgYnl0ZXNcbiAqIEBwYXJhbSB7QnVmZmVyfSBidWZmZXIgLSBQcml2YXRlIGtleSBmb3IgdGhlIEVDUGFpci4gTXVzdCBiZSBleGFjdGx5IDMyIGJ5dGVzLlxuICogQHBhcmFtIHtPYmplY3R9IFtuZXR3b3JrXSAtIE5ldHdvcmsgZm9yIHRoZSBFQ1BhaXIuIERlZmF1bHRzIHRvIGJpdGNvaW4uXG4gKiBAcmV0dXJuIHtFQ1BhaXJ9XG4gKi9cbmZ1bmN0aW9uIHByaXZhdGVLZXlCdWZmZXJUb0VDUGFpciAoYnVmZmVyLCBuZXR3b3JrKSB7XG4gIGlmICghQnVmZmVyLmlzQnVmZmVyKGJ1ZmZlcikgfHwgYnVmZmVyLmxlbmd0aCAhPT0gMzIpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgcHJpdmF0ZSBrZXkgYnVmZmVyJylcbiAgfVxuXG4gIGNvbnN0IGQgPSBCaWdJbnRlZ2VyLmZyb21CdWZmZXIoYnVmZmVyKVxuICByZXR1cm4gbmV3IEVDUGFpcihkLCBudWxsLCB7IG5ldHdvcmsgfSlcbn1cblxuLyoqXG4gKiBHZXQgdGhlIHByaXZhdGUga2V5IGFzIGEgMzIgYnl0ZXMgYnVmZmVyLiBJZiBpdCBpcyBzbWFsbGVyIHRoYW4gMzIgYnl0ZXMsIHBhZCBpdCB3aXRoIHplcm9zXG4gKiBAcGFyYW0ge0VDUGFpcn0gZWNQYWlyXG4gKiBAcmV0dXJuIHtCdWZmZXJ9IDMyIGJ5dGVzXG4gKi9cbmZ1bmN0aW9uIHByaXZhdGVLZXlCdWZmZXJGcm9tRUNQYWlyIChlY1BhaXIpIHtcbiAgaWYgKCEoZWNQYWlyIGluc3RhbmNlb2YgRUNQYWlyKSkge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYGludmFsaWQgYXJndW1lbnQgZWNwYWlyYClcbiAgfVxuXG4gIGlmICghZWNQYWlyLmQpIHRocm93IG5ldyBFcnJvcignTWlzc2luZyBwcml2YXRlIGtleScpXG5cbiAgcmV0dXJuIGVjUGFpci5kLnRvQnVmZmVyKDMyKVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgcHJpdmF0ZUtleUJ1ZmZlclRvRUNQYWlyLFxuICBwcml2YXRlS2V5QnVmZmVyRnJvbUVDUGFpclxufVxuIl19
exports.privateKeyBufferFromECPair = privateKeyBufferFromECPair;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5dXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iaXRnby9rZXl1dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBOztHQUVHO0FBQ0gsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ25DLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUVwQzs7Ozs7R0FLRztBQUNILFNBQWdCLHdCQUF3QixDQUFDLE1BQU0sRUFBRSxPQUFPO0lBQ3RELElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssRUFBRSxFQUFFO1FBQ3BELE1BQU0sSUFBSSxLQUFLLENBQUMsNEJBQTRCLENBQUMsQ0FBQztLQUMvQztJQUVELE1BQU0sQ0FBQyxHQUFHLFVBQVUsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDeEMsT0FBTyxJQUFJLE1BQU0sQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztBQUMxQyxDQUFDO0FBUEQsNERBT0M7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsMEJBQTBCLENBQUMsTUFBTTtJQUMvQyxJQUFJLENBQUMsQ0FBQyxNQUFNLFlBQVksTUFBTSxDQUFDLEVBQUU7UUFDL0IsTUFBTSxJQUFJLFNBQVMsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0tBQ2hEO0lBRUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBRXRELE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDL0IsQ0FBQztBQVJELGdFQVFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuY29uc3QgQmlnSW50ZWdlciA9IHJlcXVpcmUoJ2JpZ2knKTtcbmNvbnN0IEVDUGFpciA9IHJlcXVpcmUoJy4uL2VjcGFpcicpO1xuXG4vKipcbiAqIENyZWF0ZSBhbiBFQ1BhaXIgZnJvbSB0aGUgcmF3IHByaXZhdGUga2V5IGJ5dGVzXG4gKiBAcGFyYW0ge0J1ZmZlcn0gYnVmZmVyIC0gUHJpdmF0ZSBrZXkgZm9yIHRoZSBFQ1BhaXIuIE11c3QgYmUgZXhhY3RseSAzMiBieXRlcy5cbiAqIEBwYXJhbSB7T2JqZWN0fSBbbmV0d29ya10gLSBOZXR3b3JrIGZvciB0aGUgRUNQYWlyLiBEZWZhdWx0cyB0byBiaXRjb2luLlxuICogQHJldHVybiB7RUNQYWlyfVxuICovXG5leHBvcnQgZnVuY3Rpb24gcHJpdmF0ZUtleUJ1ZmZlclRvRUNQYWlyKGJ1ZmZlciwgbmV0d29yaykge1xuICBpZiAoIUJ1ZmZlci5pc0J1ZmZlcihidWZmZXIpIHx8IGJ1ZmZlci5sZW5ndGggIT09IDMyKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIHByaXZhdGUga2V5IGJ1ZmZlcicpO1xuICB9XG5cbiAgY29uc3QgZCA9IEJpZ0ludGVnZXIuZnJvbUJ1ZmZlcihidWZmZXIpO1xuICByZXR1cm4gbmV3IEVDUGFpcihkLCBudWxsLCB7IG5ldHdvcmsgfSk7XG59XG5cbi8qKlxuICogR2V0IHRoZSBwcml2YXRlIGtleSBhcyBhIDMyIGJ5dGVzIGJ1ZmZlci4gSWYgaXQgaXMgc21hbGxlciB0aGFuIDMyIGJ5dGVzLCBwYWQgaXQgd2l0aCB6ZXJvc1xuICogQHBhcmFtIHtFQ1BhaXJ9IGVjUGFpclxuICogQHJldHVybiB7QnVmZmVyfSAzMiBieXRlc1xuICovXG5leHBvcnQgZnVuY3Rpb24gcHJpdmF0ZUtleUJ1ZmZlckZyb21FQ1BhaXIoZWNQYWlyKSB7XG4gIGlmICghKGVjUGFpciBpbnN0YW5jZW9mIEVDUGFpcikpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKGBpbnZhbGlkIGFyZ3VtZW50IGVjcGFpcmApO1xuICB9XG5cbiAgaWYgKCFlY1BhaXIuZCkgdGhyb3cgbmV3IEVycm9yKCdNaXNzaW5nIHByaXZhdGUga2V5Jyk7XG5cbiAgcmV0dXJuIGVjUGFpci5kLnRvQnVmZmVyKDMyKTtcbn1cbiJdfQ==

@@ -13,2 +13,6 @@ var Buffer = require('safe-buffer').Buffer;

typeforce(types.maybe(types.Network), network);
if (coins.isZcash(network)) {
/* istanbul ignore next */
throw new Error('unsupported network');
}
network = network || networks.bitcoin;

@@ -22,10 +26,4 @@ this.version = 1;

this.network = network;
if (coins.isZcash(network)) {
this.finalSaplingRoot = null;
this.solutionSize = 0;
this.solution = null;
}
}
Block.HEADER_BYTE_SIZE = 80;
Block.ZCASH_HEADER_BYTE_SIZE = 1487;
Block.fromBuffer = function (buffer, network) {

@@ -35,3 +33,3 @@ if (buffer.length < 80)

network = network || networks.bitcoin;
var bufferReader = new bufferutils.BufferReader(buffer);
const bufferReader = new bufferutils.BufferReader(buffer);
var block = new Block(network);

@@ -41,16 +39,6 @@ block.version = bufferReader.readInt32();

block.merkleRoot = bufferReader.readSlice(32);
if (coins.isZcash(network)) {
block.finalSaplingRoot = bufferReader.readSlice(32);
}
block.timestamp = bufferReader.readUInt32();
block.bits = bufferReader.readUInt32();
if (coins.isZcash(network)) {
block.nonce = bufferReader.readSlice(32);
block.solutionSize = bufferReader.readVarInt();
block.solution = bufferReader.readSlice(1344);
}
else {
// Not sure sure why the nonce is read as UInt 32 and not as a slice
block.nonce = bufferReader.readUInt32();
}
// Not sure sure why the nonce is read as UInt 32 and not as a slice
block.nonce = bufferReader.readUInt32();
if (bufferReader.buffer.length === 80)

@@ -72,11 +60,2 @@ return block;

Block.prototype.byteLength = function (headersOnly) {
if (coins.isZcash(this.network)) {
if (headersOnly) {
return Block.ZCASH_HEADER_BYTE_SIZE;
}
return Block.ZCASH_HEADER_BYTE_SIZE +
varuint.encodingLength(this.transactions.length) + this.transactions.reduce(function (a, x) {
return a + x.byteLength();
}, 0);
}
if (headersOnly || !this.transactions)

@@ -110,18 +89,6 @@ return Block.HEADER_BYTE_SIZE;

bufferWriter.writeSlice(this.merkleRoot);
if (coins.isZcash(this.network)) {
bufferWriter.writeSlice(this.finalSaplingRoot);
}
bufferWriter.writeUInt32(this.timestamp);
bufferWriter.writeUInt32(this.bits);
if (coins.isZcash(this.network)) {
bufferWriter.writeSlice(this.nonce);
// TODO: use writeVarInt
varuint.encode(this.solutionSize, bufferWriter.buffer, bufferWriter.offset);
bufferWriter.offset += varuint.encode.bytes;
bufferWriter.writeSlice(this.solution);
}
else {
// Not sure sure why the nonce is interpreted as UInt 32 and not a slice in bitcoin
bufferWriter.writeUInt32(this.nonce);
}
// Not sure sure why the nonce is interpreted as UInt 32 and not a slice in bitcoin
bufferWriter.writeUInt32(this.nonce);
if (headersOnly || !this.transactions)

@@ -184,2 +151,2 @@ return buffer;

module.exports = Block;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2suanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsSUFBSSxNQUFNLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLE1BQU0sQ0FBQTtBQUMxQyxJQUFJLE9BQU8sR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUE7QUFDakMsSUFBSSxjQUFjLEdBQUcsT0FBTyxDQUFDLHFCQUFxQixDQUFDLENBQUE7QUFDbkQsSUFBSSxTQUFTLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFBO0FBQ3BDLElBQUksS0FBSyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQTtBQUM5QixJQUFJLFdBQVcsR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUE7QUFDMUMsSUFBSSxPQUFPLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUE7QUFDeEMsSUFBSSxRQUFRLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFBO0FBQ3BDLElBQUksS0FBSyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQTtBQUU5QixJQUFJLFdBQVcsR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUE7QUFFMUMsU0FBUyxLQUFLLENBQUUsT0FBTztJQUNyQixTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUE7SUFDOUMsT0FBTyxHQUFHLE9BQU8sSUFBSSxRQUFRLENBQUMsT0FBTyxDQUFBO0lBQ3JDLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFBO0lBQ2hCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFBO0lBQ3BCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFBO0lBQ3RCLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFBO0lBQ2xCLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxD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WyJ2YXIgQnVmZmVyID0gcmVxdWlyZSgnc2FmZS1idWZmZXInKS5CdWZmZXJcbnZhciBiY3J5cHRvID0gcmVxdWlyZSgnLi9jcnlwdG8nKVxudmFyIGZhc3RNZXJrbGVSb290ID0gcmVxdWlyZSgnbWVya2xlLWxpYi9mYXN0Um9vdCcpXG52YXIgdHlwZWZvcmNlID0gcmVxdWlyZSgndHlwZWZvcmNlJylcbnZhciB0eXBlcyA9IHJlcXVpcmUoJy4vdHlwZXMnKVxudmFyIGJ1ZmZlcnV0aWxzID0gcmVxdWlyZSgnLi9idWZmZXJ1dGlscycpXG52YXIgdmFydWludCA9IHJlcXVpcmUoJ3ZhcnVpbnQtYml0Y29pbicpXG52YXIgbmV0d29ya3MgPSByZXF1aXJlKCcuL25ldHdvcmtzJylcbnZhciBjb2lucyA9IHJlcXVpcmUoJy4vY29pbnMnKVxuXG52YXIgVHJhbnNhY3Rpb24gPSByZXF1aXJlKCcuL3RyYW5zYWN0aW9uJylcblxuZnVuY3Rpb24gQmxvY2sgKG5ldHdvcmspIHtcbiAgdHlwZWZvcmNlKHR5cGVzLm1heWJlKHR5cGVzLk5ldHdvcmspLCBuZXR3b3JrKVxuICBuZXR3b3JrID0gbmV0d29yayB8fCBuZXR3b3Jrcy5iaXRjb2luXG4gIHRoaXMudmVyc2lvbiA9IDFcbiAgdGhpcy5wcmV2SGFzaCA9IG51bGxcbiAgdGhpcy5tZXJrbGVSb290ID0gbnVsbFxuICB0aGlzLnRpbWVzdGFtcCA9IDBcbiAgdGhpcy5iaXRzID0gMFxuICB0aGlzLm5vbmNlID0gMFxuICB0aGlzLm5ldHdvcmsgPSBuZXR3b3JrXG4gIGlmIChjb2lucy5pc1pjYXNoKG5ldHdvcmspKSB7XG4gICAgdGhpcy5maW5hbFNhcGxpbmdSb290ID0gbnVsbFxuICAgIHRoaXMuc29sdXRpb25TaXplID0gMFxuICAgIHRoaXMuc29sdXRpb24gPSBudWxsXG4gIH1cbn1cblxuQmxvY2suSEVBREVSX0JZVEVfU0laRSA9IDgwXG5CbG9jay5aQ0FTSF9IRUFERVJfQllURV9TSVpFID0gMTQ4N1xuXG5CbG9jay5mcm9tQnVmZmVyID0gZnVuY3Rpb24gKGJ1ZmZlciwgbmV0d29yaykge1xuICBpZiAoYnVmZmVyLmxlbmd0aCA8IDgwKSB0aHJvdyBuZXcgRXJyb3IoJ0J1ZmZlciB0b28gc21hbGwgKDwgODAgYnl0ZXMpJylcbiAgbmV0d29yayA9IG5ldHdvcmsgfHwgbmV0d29ya3MuYml0Y29pblxuXG4gIGNvbnN0IGJ1ZmZlclJlYWRlciA9IG5ldyBidWZmZXJ1dGlscy5CdWZmZXJSZWFkZXIoYnVmZmVyKVxuXG4gIHZhciBibG9jayA9IG5ldyBCbG9jayhuZXR3b3JrKVxuICBibG9jay52ZXJzaW9uID0gYnVmZmVyUmVhZGVyLnJlYWRJbnQzMigpXG4gIGJsb2NrLnByZXZIYXNoID0gYnVmZmVyUmVhZGVyLnJlYWRTbGljZSgzMilcbiAgYmxvY2subWVya2xlUm9vdCA9IGJ1ZmZlclJlYWRlci5yZWFkU2xpY2UoMzIpXG4gIGlmIChjb2lucy5pc1pjYXNoKG5ldHdvcmspKSB7XG4gICAgYmxvY2suZmluYWxTYXBsaW5nUm9vdCA9IGJ1ZmZlclJlYWRlci5yZWFkU2xpY2UoMzIpXG4gIH1cbiAgYmxvY2sudGltZXN0YW1wID0gYnVmZmVyUmVhZGVyLnJlYWRVSW50MzIoKVxuICBibG9jay5iaXRzID0gYnVmZmVyUmVhZGVyLnJlYWRVSW50MzIoKVxuICBpZiAoY29pbnMuaXNaY2FzaChuZXR3b3JrKSkge1xuICAgIGJsb2NrLm5vbmNlID0gYnVmZmVyUmVhZGVyLnJlYWRTbGljZSgzMilcbiAgICBibG9jay5zb2x1dGlvblNpemUgPSBidWZmZXJSZWFkZXIucmVhZFZhckludCgpXG4gICAgYmxvY2suc29sdXRpb24gPSBidWZmZXJSZWFkZXIucmVhZFNsaWNlKDEzNDQpXG4gIH0gZWxzZSB7XG4gICAgLy8gTm90IHN1cmUgc3VyZSB3aHkgdGhlIG5vbmNlIGlzIHJlYWQgYXMgVUludCAzMiBhbmQgbm90IGFzIGEgc2xpY2VcbiAgICBibG9jay5ub25jZSA9IGJ1ZmZlclJlYWRlci5yZWFkVUludDMyKClcbiAgfVxuXG4gIGlmIChidWZmZXJSZWFkZXIuYnVmZmVyLmxlbmd0aCA9PT0gODApIHJldHVybiBibG9ja1xuXG4gIGZ1bmN0aW9uIHJlYWRUcmFuc2FjdGlvbiAoKSB7XG4gICAgdmFyIHR4ID0gVHJhbnNhY3Rpb24uZnJvbUJ1ZmZlcihidWZmZXIuc2xpY2UoYnVmZmVyUmVhZGVyLm9mZnNldCksIG5ldHdvcmssIHRydWUpXG4gICAgYnVmZmVyUmVhZGVyLm9mZnNldCArPSB0eC5ieXRlTGVuZ3RoKClcbiAgICByZXR1cm4gdHhcbiAgfVxuXG4gIHZhciBuVHJhbnNhY3Rpb25zID0gYnVmZmVyUmVhZGVyLnJlYWRWYXJJbnQoKVxuICBibG9jay50cmFuc2FjdGlvbnMgPSBbXVxuXG4gIGZvciAodmFyIGkgPSAwOyBpIDwgblRyYW5zYWN0aW9uczsgKytpKSB7XG4gICAgdmFyIHR4ID0gcmVhZFRyYW5zYWN0aW9uKClcbiAgICBibG9jay50cmFuc2FjdGlvbnMucHVzaCh0eClcbiAgfVxuXG4gIHJldHVybiBibG9ja1xufVxuXG5CbG9jay5wcm90b3R5cGUuYnl0ZUxlbmd0aCA9IGZ1bmN0aW9uIChoZWFkZXJzT25seSkge1xuICBpZiAoY29pbnMuaXNaY2FzaCh0aGlzLm5ldHdvcmspKSB7XG4gICAgaWYgKGhlYWRlcnNPbmx5KSB7XG4gICAgICByZXR1cm4gQmxvY2suWkNBU0hfSEVBREVSX0JZVEVfU0laRVxuICAgIH1cbiAgICByZXR1cm4gQmxvY2suWkNBU0hfSEVBREVSX0JZVEVfU0laRSArXG4gICAgICB2YXJ1aW50LmVuY29kaW5nTGVuZ3RoKHRoaXMudHJhbnNhY3Rpb25zLmxlbmd0aCkgKyB0aGlzLnRyYW5zYWN0aW9ucy5yZWR1Y2UoZnVuY3Rpb24gKGEsIHgpIHtcbiAgICAgICAgcmV0dXJuIGEgKyB4LmJ5dGVMZW5ndGgoKVxuICAgICAgfSwgMClcbiAgfVxuXG4gIGlmIChoZWFkZXJzT25seSB8fCAhdGhpcy50cmFuc2FjdGlvbnMpIHJldHVybiBCbG9jay5IRUFERVJfQllURV9TSVpFXG5cbiAgcmV0dXJuIEJsb2NrLkhFQURFUl9CWVRFX1NJWkUgK1xuICAgIHZhcnVpbnQuZW5jb2RpbmdMZW5ndGgodGhpcy50cmFuc2FjdGlvbnMubGVuZ3RoKSArIHRoaXMudHJhbnNhY3Rpb25zLnJlZHVjZShmdW5jdGlvbiAoYSwgeCkge1xuICAgICAgcmV0dXJuIGEgKyB4LmJ5dGVMZW5ndGgoKVxuICAgIH0sIDApXG59XG5cbkJsb2NrLmZyb21IZXggPSBmdW5jdGlvbiAoaGV4LCBuZXR3b3JrKSB7XG4gIHJldHVybiBCbG9jay5mcm9tQnVmZmVyKEJ1ZmZlci5mcm9tKGhleCwgJ2hleCcpLCBuZXR3b3JrKVxufVxuXG5CbG9jay5wcm90b3R5cGUuZ2V0SGFzaCA9IGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIGJjcnlwdG8uaGFzaDI1Nih0aGlzLnRvQnVmZmVyKHRydWUpKVxufVxuXG5CbG9jay5wcm90b3R5cGUuZ2V0SWQgPSBmdW5jdGlvbiAoKSB7XG4gIHJldHVybiB0aGlzLmdldEhhc2goKS5yZXZlcnNlKCkudG9TdHJpbmcoJ2hleCcpXG59XG5cbkJsb2NrLnByb3RvdHlwZS5nZXRVVENEYXRlID0gZnVuY3Rpb24gKCkge1xuICB2YXIgZGF0ZSA9IG5ldyBEYXRlKDApIC8vIGVwb2NoXG4gIGRhdGUuc2V0VVRDU2Vjb25kcyh0aGlzLnRpbWVzdGFtcClcblxuICByZXR1cm4gZGF0ZVxufVxuXG4vLyBUT0RPOiBidWZmZXIsIG9mZnNldCBjb21wYXRpYmlsaXR5XG5CbG9jay5wcm90b3R5cGUudG9CdWZmZXIgPSBmdW5jdGlvbiAoaGVhZGVyc09ubHkpIHtcbiAgdmFyIGJ1ZmZlciA9IEJ1ZmZlci5hbGxvY1Vuc2FmZSh0aGlzLmJ5dGVMZW5ndGgoaGVhZGVyc09ubHkpKVxuICB2YXIgYnVmZmVyV3JpdGVyID0gbmV3IGJ1ZmZlcnV0aWxzLkJ1ZmZlcldyaXRlcihidWZmZXIpXG5cbiAgYnVmZmVyV3JpdGVyLndyaXRlSW50MzIodGhpcy52ZXJzaW9uKVxuICBidWZmZXJXcml0ZXIud3JpdGVTbGljZSh0aGlzLnByZXZIYXNoKVxuICBidWZmZXJXcml0ZXIud3JpdGVTbGljZSh0aGlzLm1lcmtsZVJvb3QpXG4gIGlmIChjb2lucy5pc1pjYXNoKHRoaXMubmV0d29yaykpIHtcbiAgICBidWZmZXJXcml0ZXIud3JpdGVTbGljZSh0aGlzLmZpbmFsU2FwbGluZ1Jvb3QpXG4gIH1cbiAgYnVmZmVyV3JpdGVyLndyaXRlVUludDMyKHRoaXMudGltZXN0YW1wKVxuICBidWZmZXJXcml0ZXIud3JpdGVVSW50MzIodGhpcy5iaXRzKVxuICBpZiAoY29pbnMuaXNaY2FzaCh0aGlzLm5ldHdvcmspKSB7XG4gICAgYnVmZmVyV3JpdGVyLndyaXRlU2xpY2UodGhpcy5ub25jZSlcbiAgICAvLyBUT0RPOiB1c2Ugd3JpdGVWYXJJbnRcbiAgICB2YXJ1aW50LmVuY29kZSh0aGlzLnNvbHV0aW9uU2l6ZSwgYnVmZmVyV3JpdGVyLmJ1ZmZlciwgYnVmZmVyV3JpdGVyLm9mZnNldClcbiAgICBidWZmZXJXcml0ZXIub2Zmc2V0ICs9IHZhcnVpbnQuZW5jb2RlLmJ5dGVzXG4gICAgYnVmZmVyV3JpdGVyLndyaXRlU2xpY2UodGhpcy5zb2x1dGlvbilcbiAgfSBlbHNlIHtcbiAgICAvLyBOb3Qgc3VyZSBzdXJlIHdoeSB0aGUgbm9uY2UgaXMgaW50ZXJwcmV0ZWQgYXMgVUludCAzMiBhbmQgbm90IGEgc2xpY2UgaW4gYml0Y29pblxuICAgIGJ1ZmZlcldyaXRlci53cml0ZVVJbnQzMih0aGlzLm5vbmNlKVxuICB9XG5cbiAgaWYgKGhlYWRlcnNPbmx5IHx8ICF0aGlzLnRyYW5zYWN0aW9ucykgcmV0dXJuIGJ1ZmZlclxuXG4gIC8vIFRPRE86IHVzZSB3cml0ZVZhckludFxuICB2YXJ1aW50LmVuY29kZSh0aGlzLnRyYW5zYWN0aW9ucy5sZW5ndGgsIGJ1ZmZlcldyaXRlci5idWZmZXIsIGJ1ZmZlcldyaXRlci5vZmZzZXQpXG4gIGJ1ZmZlcldyaXRlci5vZmZzZXQgKz0gdmFydWludC5lbmNvZGUuYnl0ZXNcblxuICAvLyBUT0RPOiB1c2Ugd3JpdGVWYXJJbnRcbiAgdGhpcy50cmFuc2FjdGlvbnMuZm9yRWFjaChmdW5jdGlvbiAodHgpIHtcbiAgICB2YXIgdHhTaXplID0gdHguYnl0ZUxlbmd0aCgpIC8vIFRPRE86IGV4dHJhY3QgZnJvbSB0b0J1ZmZlcj9cbiAgICB0eC50b0J1ZmZlcihidWZmZXJXcml0ZXIuYnVmZmVyLCBidWZmZXJXcml0ZXIub2Zmc2V0KVxuICAgIGJ1ZmZlcldyaXRlci5vZmZzZXQgKz0gdHhTaXplXG4gIH0pXG5cbiAgcmV0dXJuIGJ1ZmZlclxufVxuXG5CbG9jay5wcm90b3R5cGUudG9IZXggPSBmdW5jdGlvbiAoaGVhZGVyc09ubHkpIHtcbiAgcmV0dXJuIHRoaXMudG9CdWZmZXIoaGVhZGVyc09ubHkpLnRvU3RyaW5nKCdoZXgnKVxufVxuXG5CbG9jay5jYWxjdWxhdGVUYXJnZXQgPSBmdW5jdGlvbiAoYml0cykge1xuICB2YXIgZXhwb25lbnQgPSAoKGJpdHMgJiAweGZmMDAwMDAwKSA+PiAyNCkgLSAzXG4gIHZhciBtYW50aXNzYSA9IGJpdHMgJiAweDAwN2ZmZmZmXG4gIHZhciB0YXJnZXQgPSBCdWZmZXIuYWxsb2MoMzIsIDApXG4gIGlmIChleHBvbmVudCA8IDApIHtcbiAgICAvLyBJZiBpdCBpcyBuZWdhdGl2ZSwgd2Ugd2lsbCBvdmVyZmxvdyB0aGUgdGFyZ2V0IGJ1ZmZlciBzbyB3ZSBoYXZlIHRvIHNsaWNlIHRoZSBtYW50aXNzYSB0byBmaXRcbiAgICBtYW50aXNzYSA9IG1hbnRpc3NhID4+ICg4ICogTWF0aC5hYnMoZXhwb25lbnQpKVxuICAgIHRhcmdldC53cml0ZVVJbnQzMkJFKG1hbnRpc3NhLCAyOClcbiAgfSBlbHNlIGlmIChleHBvbmVudCA+IDI4KSB7XG4gICAgLy8gSWYgaXQgaXMgZ3JlYXRlciB0aGFuIDI4LCB3ZSBuZWVkIHRvIHNoaWZ0IHRoZSBtYW50aXNzYSBzaW5jZSB0aGUgb2Zmc2V0IGNhbm5vdCBiZSBncmVhdGVyIHRoYW4gMzIgLSA0XG4gICAgLy8gKHNhZmUtYnVmZmVyIHJlc3RyaWN0aW9uKVxuICAgIG1hbnRpc3NhIDw8PSA4ICogKGV4cG9uZW50IC0gMjgpXG4gICAgdGFyZ2V0LndyaXRlVUludDMyQkUobWFudGlzc2EsIDApXG4gIH0gZWxzZSB7XG4gICAgdGFyZ2V0LndyaXRlVUludDMyQkUobWFudGlzc2EsIDI4IC0gZXhwb25lbnQpXG4gIH1cbiAgcmV0dXJuIHRhcmdldFxufVxuXG5CbG9jay5jYWxjdWxhdGVNZXJrbGVSb290ID0gZnVuY3Rpb24gKHRyYW5zYWN0aW9ucykge1xuICB0eXBlZm9yY2UoW3sgZ2V0SGFzaDogdHlwZXMuRnVuY3Rpb24gfV0sIHRyYW5zYWN0aW9ucylcbiAgaWYgKHRyYW5zYWN0aW9ucy5sZW5ndGggPT09IDApIHRocm93IFR5cGVFcnJvcignQ2Fubm90IGNvbXB1dGUgbWVya2xlIHJvb3QgZm9yIHplcm8gdHJhbnNhY3Rpb25zJylcblxuICB2YXIgaGFzaGVzID0gdHJhbnNhY3Rpb25zLm1hcChmdW5jdGlvbiAodHJhbnNhY3Rpb24pIHtcbiAgICByZXR1cm4gdHJhbnNhY3Rpb24uZ2V0SGFzaCgpXG4gIH0pXG5cbiAgcmV0dXJuIGZhc3RNZXJrbGVSb290KGhhc2hlcywgYmNyeXB0by5oYXNoMjU2KVxufVxuXG5CbG9jay5wcm90b3R5cGUuY2hlY2tNZXJrbGVSb290ID0gZnVuY3Rpb24gKCkge1xuICBpZiAoIXRoaXMudHJhbnNhY3Rpb25zKSByZXR1cm4gZmFsc2VcblxuICB2YXIgYWN0dWFsTWVya2xlUm9vdCA9IEJsb2NrLmNhbGN1bGF0ZU1lcmtsZVJvb3QodGhpcy50cmFuc2FjdGlvbnMpXG4gIHJldHVybiB0aGlzLm1lcmtsZVJvb3QuY29tcGFyZShhY3R1YWxNZXJrbGVSb290KSA9PT0gMFxufVxuXG5CbG9jay5wcm90b3R5cGUuY2hlY2tQcm9vZk9mV29yayA9IGZ1bmN0aW9uICgpIHtcbiAgdmFyIGhhc2ggPSB0aGlzLmdldEhhc2goKS5yZXZlcnNlKClcbiAgdmFyIHRhcmdldCA9IEJsb2NrLmNhbGN1bGF0ZVRhcmdldCh0aGlzLmJpdHMpXG5cbiAgcmV0dXJuIGhhc2guY29tcGFyZSh0YXJnZXQpIDw9IDBcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBCbG9ja1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2suanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsSUFBSSxNQUFNLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLE1BQU0sQ0FBQTtBQUMxQyxJQUFJLE9BQU8sR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUE7QUFDakMsSUFBSSxjQUFjLEdBQUcsT0FBTyxDQUFDLHFCQUFxQixDQUFDLENBQUE7QUFDbkQsSUFBSSxTQUFTLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFBO0FBQ3BDLElBQUksS0FBSyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQTtBQUM5QixJQUFJLFdBQVcsR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUE7QUFDMUMsSUFBSSxPQUFPLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUE7QUFDeEMsSUFBSSxRQUFRLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFBO0FBQ3BDLElBQUksS0FBSyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQTtBQUU5QixJQUFJLFdBQVcsR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUE7QUFFMUMsU0FBUyxLQUFLLENBQUUsT0FBTztJQUNyQixTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUE7SUFDOUMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQzFCLDBCQUEwQjtRQUMxQixNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUE7S0FDdkM7SUFDRCxPQUFPLEdBQUcsT0FBTyxJQUFJLFFBQVEsQ0FBQyxPQUFPLENBQUE7SUFDckMsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUE7SUFDaEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUE7SUFDcEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUE7SUFDdEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUE7SUFDbEIsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUE7SUFDYixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQTtJQUNkLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO0FBQ3hCLENBQUM7QUFFRCxLQUFLLENBQUMsZ0JBQWdCLEdBQUcsRUFBRSxDQUFBO0FBRTNCLEtBQUssQ0FBQyxVQUFVLEdBQUcsVUFBVSxNQUFNLEVBQUUsT0FBTztJQUMxQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsRUFBRTtRQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsK0JBQStCLENBQUMsQ0FBQTtJQUN4RSxPQUFPLEdBQUcsT0FBTyxJQUFJLFFBQVEsQ0FBQyxPQUFPLENBQUE7SUFFckMsTUFBTSxZQUFZLEdBQUcsSUFBSSxXQUFXLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBRXpELElBQUksS0FBSyxHQUFHLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBQzlCLEtBQUssQ0FBQyxPQUFPLEdBQUcsWUFBWSxDQUFDLFNBQVMsRUFBRSxDQUFBO0lBQ3hDLEtBQUssQ0FBQyxRQUFRLEdBQUcsWUFBWSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQTtJQUMzQyxLQUFLLENBQUMsVUFBVSxHQUFHLFlBQVksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDN0MsS0FBSyxDQUFDLFNBQVMsR0FBRyxZQUFZLENBQUMsVUFBVSxFQUFFLENBQUE7SUFDM0MsS0FBSyxDQUFDLElBQUksR0FBRyxZQUFZLENBQUMsVUFBVSxFQUFFLENBQUE7SUFDdEMsb0VBQW9FO0lBQ3BFLEtBQUssQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDLFVBQVUsRUFBRSxDQUFBO0lBRXZDLElBQUksWUFBWSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEtBQUssRUFBRTtRQUFFLE9BQU8sS0FBSyxDQUFBO0lBRW5ELFNBQVMsZUFBZTtRQUN0QixJQUFJLEVBQUUsR0FBRyxXQUFXLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQTtRQUNqRixZQUFZLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQTtRQUN0QyxPQUFPLEVBQUUsQ0FBQTtJQUNYLENBQUM7SUFFRCxJQUFJLGFBQWEsR0FBRyxZQUFZLENBQUMsVUFBVSxFQUFFLENBQUE7SUFDN0MsS0FBSyxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUE7SUFFdkIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLGFBQWEsRUFBRSxFQUFFLENBQUMsRUFBRTtRQUN0QyxJQUFJLEVBQUUsR0FBRyxlQUFlLEVBQUUsQ0FBQTtRQUMxQixLQUFLLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQTtLQUM1QjtJQUVELE9BQU8sS0FBSyxDQUFBO0FBQ2QsQ0FBQyxDQUFBO0FBRUQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxVQUFVLEdBQUcsVUFBVSxXQUFXO0lBQ2hELElBQUksV0FBVyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVk7UUFBRSxPQUFPLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQTtJQUVwRSxPQUFPLEtBQUssQ0FBQyxnQkFBZ0I7UUFDM0IsT0FBTyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7UUFDeEYsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFVBQVUsRUFBRSxDQUFBO0lBQzNCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtBQUNULENBQUMsQ0FBQTtBQUVELEtBQUssQ0FBQyxPQUFPLEdBQUcsVUFBVSxHQUFHLEVBQUUsT0FBTztJQUNwQyxPQUFPLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUE7QUFDM0QsQ0FBQyxDQUFBO0FBRUQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxPQUFPLEdBQUc7SUFDeEIsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtBQUM3QyxDQUFDLENBQUE7QUFFRCxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRztJQUN0QixPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUE7QUFDakQsQ0FBQyxDQUFBO0FBRUQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxVQUFVLEdBQUc7SUFDM0IsSUFBSSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUEsQ0FBQyxRQUFRO0lBQy9CLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBRWxDLE9BQU8sSUFBSSxDQUFBO0FBQ2IsQ0FBQyxDQUFBO0FBRUQscUNBQXFDO0FBQ3JDLEtBQUssQ0FBQyxTQUFTLENBQUMsUUFBUSxHQUFHLFVBQVUsV0FBVztJQUM5QyxJQUFJLE1BQU0sR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQTtJQUM3RCxJQUFJLFlBQVksR0FBRyxJQUFJLFdBQVcsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUE7SUFFdkQsWUFBWSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7SUFDckMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDdEMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDeEMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUE7SUFDeEMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDbkMsbUZBQW1GO0lBQ25GLFlBQVksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBRXBDLElBQUksV0FBVyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVk7UUFBRSxPQUFPLE1BQU0sQ0FBQTtJQUVwRCx3QkFBd0I7SUFDeEIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxZQUFZLENBQUMsTUFBTSxFQUFFLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUNsRixZQUFZLENBQUMsTUFBTSxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFBO0lBRTNDLHdCQUF3QjtJQUN4QixJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUU7UUFDcEMsSUFBSSxNQUFNLEdBQUcsRUFBRSxDQUFDLFVBQVUsRUFBRSxDQUFBLENBQUMsK0JBQStCO1FBQzVELEVBQUUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDckQsWUFBWSxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUE7SUFDL0IsQ0FBQyxDQUFDLENBQUE7SUFFRixPQUFPLE1BQU0sQ0FBQTtBQUNmLENBQUMsQ0FBQTtBQUVELEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLFVBQVUsV0FBVztJQUMzQyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFBO0FBQ25ELENBQUMsQ0FBQTtBQUVELEtBQUssQ0FBQyxlQUFlLEdBQUcsVUFBVSxJQUFJO0lBQ3BDLElBQUksUUFBUSxHQUFHLENBQUMsQ0FBQyxJQUFJLEdBQUcsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQzlDLElBQUksUUFBUSxHQUFHLElBQUksR0FBRyxVQUFVLENBQUE7SUFDaEMsSUFBSSxNQUFNLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDaEMsSUFBSSxRQUFRLEdBQUcsQ0FBQyxFQUFFO1FBQ2hCLGdHQUFnRztRQUNoRyxRQUFRLEdBQUcsUUFBUSxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQTtRQUMvQyxNQUFNLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQTtLQUNuQztTQUFNLElBQUksUUFBUSxHQUFHLEVBQUUsRUFBRTtRQUN4Qix5R0FBeUc7UUFDekcsNEJBQTRCO1FBQzVCLFFBQVEsS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDLENBQUE7UUFDaEMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUE7S0FDbEM7U0FBTTtRQUNMLE1BQU0sQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQTtLQUM5QztJQUNELE9BQU8sTUFBTSxDQUFBO0FBQ2YsQ0FBQyxDQUFBO0FBRUQsS0FBSyxDQUFDLG1CQUFtQixHQUFHLFVBQVUsWUFBWTtJQUNoRCxTQUFTLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQTtJQUN0RCxJQUFJLFlBQVksQ0FBQyxNQUFNLEtBQUssQ0FBQztRQUFFLE1BQU0sU0FBUyxDQUFDLGtEQUFrRCxDQUFDLENBQUE7SUFFbEcsSUFBSSxNQUFNLEdBQUcsWUFBWSxDQUFDLEdBQUcsQ0FBQyxVQUFVLFdBQVc7UUFDakQsT0FBTyxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUE7SUFDOUIsQ0FBQyxDQUFDLENBQUE7SUFFRixPQUFPLGNBQWMsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFBO0FBQ2hELENBQUMsQ0FBQTtBQUVELEtBQUssQ0FBQyxTQUFTLENBQUMsZUFBZSxHQUFHO0lBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWTtRQUFFLE9BQU8sS0FBSyxDQUFBO0lBRXBDLElBQUksZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQTtJQUNuRSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFBO0FBQ3hELENBQUMsQ0FBQTtBQUVELEtBQUssQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLEdBQUc7SUFDakMsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFBO0lBQ25DLElBQUksTUFBTSxHQUFHLEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO0lBRTdDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUE7QUFDbEMsQ0FBQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgQnVmZmVyID0gcmVxdWlyZSgnc2FmZS1idWZmZXInKS5CdWZmZXJcbnZhciBiY3J5cHRvID0gcmVxdWlyZSgnLi9jcnlwdG8nKVxudmFyIGZhc3RNZXJrbGVSb290ID0gcmVxdWlyZSgnbWVya2xlLWxpYi9mYXN0Um9vdCcpXG52YXIgdHlwZWZvcmNlID0gcmVxdWlyZSgndHlwZWZvcmNlJylcbnZhciB0eXBlcyA9IHJlcXVpcmUoJy4vdHlwZXMnKVxudmFyIGJ1ZmZlcnV0aWxzID0gcmVxdWlyZSgnLi9idWZmZXJ1dGlscycpXG52YXIgdmFydWludCA9IHJlcXVpcmUoJ3ZhcnVpbnQtYml0Y29pbicpXG52YXIgbmV0d29ya3MgPSByZXF1aXJlKCcuL25ldHdvcmtzJylcbnZhciBjb2lucyA9IHJlcXVpcmUoJy4vY29pbnMnKVxuXG52YXIgVHJhbnNhY3Rpb24gPSByZXF1aXJlKCcuL3RyYW5zYWN0aW9uJylcblxuZnVuY3Rpb24gQmxvY2sgKG5ldHdvcmspIHtcbiAgdHlwZWZvcmNlKHR5cGVzLm1heWJlKHR5cGVzLk5ldHdvcmspLCBuZXR3b3JrKVxuICBpZiAoY29pbnMuaXNaY2FzaChuZXR3b3JrKSkge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgdGhyb3cgbmV3IEVycm9yKCd1bnN1cHBvcnRlZCBuZXR3b3JrJylcbiAgfVxuICBuZXR3b3JrID0gbmV0d29yayB8fCBuZXR3b3Jrcy5iaXRjb2luXG4gIHRoaXMudmVyc2lvbiA9IDFcbiAgdGhpcy5wcmV2SGFzaCA9IG51bGxcbiAgdGhpcy5tZXJrbGVSb290ID0gbnVsbFxuICB0aGlzLnRpbWVzdGFtcCA9IDBcbiAgdGhpcy5iaXRzID0gMFxuICB0aGlzLm5vbmNlID0gMFxuICB0aGlzLm5ldHdvcmsgPSBuZXR3b3JrXG59XG5cbkJsb2NrLkhFQURFUl9CWVRFX1NJWkUgPSA4MFxuXG5CbG9jay5mcm9tQnVmZmVyID0gZnVuY3Rpb24gKGJ1ZmZlciwgbmV0d29yaykge1xuICBpZiAoYnVmZmVyLmxlbmd0aCA8IDgwKSB0aHJvdyBuZXcgRXJyb3IoJ0J1ZmZlciB0b28gc21hbGwgKDwgODAgYnl0ZXMpJylcbiAgbmV0d29yayA9IG5ldHdvcmsgfHwgbmV0d29ya3MuYml0Y29pblxuXG4gIGNvbnN0IGJ1ZmZlclJlYWRlciA9IG5ldyBidWZmZXJ1dGlscy5CdWZmZXJSZWFkZXIoYnVmZmVyKVxuXG4gIHZhciBibG9jayA9IG5ldyBCbG9jayhuZXR3b3JrKVxuICBibG9jay52ZXJzaW9uID0gYnVmZmVyUmVhZGVyLnJlYWRJbnQzMigpXG4gIGJsb2NrLnByZXZIYXNoID0gYnVmZmVyUmVhZGVyLnJlYWRTbGljZSgzMilcbiAgYmxvY2subWVya2xlUm9vdCA9IGJ1ZmZlclJlYWRlci5yZWFkU2xpY2UoMzIpXG4gIGJsb2NrLnRpbWVzdGFtcCA9IGJ1ZmZlclJlYWRlci5yZWFkVUludDMyKClcbiAgYmxvY2suYml0cyA9IGJ1ZmZlclJlYWRlci5yZWFkVUludDMyKClcbiAgLy8gTm90IHN1cmUgc3VyZSB3aHkgdGhlIG5vbmNlIGlzIHJlYWQgYXMgVUludCAzMiBhbmQgbm90IGFzIGEgc2xpY2VcbiAgYmxvY2subm9uY2UgPSBidWZmZXJSZWFkZXIucmVhZFVJbnQzMigpXG5cbiAgaWYgKGJ1ZmZlclJlYWRlci5idWZmZXIubGVuZ3RoID09PSA4MCkgcmV0dXJuIGJsb2NrXG5cbiAgZnVuY3Rpb24gcmVhZFRyYW5zYWN0aW9uICgpIHtcbiAgICB2YXIgdHggPSBUcmFuc2FjdGlvbi5mcm9tQnVmZmVyKGJ1ZmZlci5zbGljZShidWZmZXJSZWFkZXIub2Zmc2V0KSwgbmV0d29yaywgdHJ1ZSlcbiAgICBidWZmZXJSZWFkZXIub2Zmc2V0ICs9IHR4LmJ5dGVMZW5ndGgoKVxuICAgIHJldHVybiB0eFxuICB9XG5cbiAgdmFyIG5UcmFuc2FjdGlvbnMgPSBidWZmZXJSZWFkZXIucmVhZFZhckludCgpXG4gIGJsb2NrLnRyYW5zYWN0aW9ucyA9IFtdXG5cbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBuVHJhbnNhY3Rpb25zOyArK2kpIHtcbiAgICB2YXIgdHggPSByZWFkVHJhbnNhY3Rpb24oKVxuICAgIGJsb2NrLnRyYW5zYWN0aW9ucy5wdXNoKHR4KVxuICB9XG5cbiAgcmV0dXJuIGJsb2NrXG59XG5cbkJsb2NrLnByb3RvdHlwZS5ieXRlTGVuZ3RoID0gZnVuY3Rpb24gKGhlYWRlcnNPbmx5KSB7XG4gIGlmIChoZWFkZXJzT25seSB8fCAhdGhpcy50cmFuc2FjdGlvbnMpIHJldHVybiBCbG9jay5IRUFERVJfQllURV9TSVpFXG5cbiAgcmV0dXJuIEJsb2NrLkhFQURFUl9CWVRFX1NJWkUgK1xuICAgIHZhcnVpbnQuZW5jb2RpbmdMZW5ndGgodGhpcy50cmFuc2FjdGlvbnMubGVuZ3RoKSArIHRoaXMudHJhbnNhY3Rpb25zLnJlZHVjZShmdW5jdGlvbiAoYSwgeCkge1xuICAgICAgcmV0dXJuIGEgKyB4LmJ5dGVMZW5ndGgoKVxuICAgIH0sIDApXG59XG5cbkJsb2NrLmZyb21IZXggPSBmdW5jdGlvbiAoaGV4LCBuZXR3b3JrKSB7XG4gIHJldHVybiBCbG9jay5mcm9tQnVmZmVyKEJ1ZmZlci5mcm9tKGhleCwgJ2hleCcpLCBuZXR3b3JrKVxufVxuXG5CbG9jay5wcm90b3R5cGUuZ2V0SGFzaCA9IGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIGJjcnlwdG8uaGFzaDI1Nih0aGlzLnRvQnVmZmVyKHRydWUpKVxufVxuXG5CbG9jay5wcm90b3R5cGUuZ2V0SWQgPSBmdW5jdGlvbiAoKSB7XG4gIHJldHVybiB0aGlzLmdldEhhc2goKS5yZXZlcnNlKCkudG9TdHJpbmcoJ2hleCcpXG59XG5cbkJsb2NrLnByb3RvdHlwZS5nZXRVVENEYXRlID0gZnVuY3Rpb24gKCkge1xuICB2YXIgZGF0ZSA9IG5ldyBEYXRlKDApIC8vIGVwb2NoXG4gIGRhdGUuc2V0VVRDU2Vjb25kcyh0aGlzLnRpbWVzdGFtcClcblxuICByZXR1cm4gZGF0ZVxufVxuXG4vLyBUT0RPOiBidWZmZXIsIG9mZnNldCBjb21wYXRpYmlsaXR5XG5CbG9jay5wcm90b3R5cGUudG9CdWZmZXIgPSBmdW5jdGlvbiAoaGVhZGVyc09ubHkpIHtcbiAgdmFyIGJ1ZmZlciA9IEJ1ZmZlci5hbGxvY1Vuc2FmZSh0aGlzLmJ5dGVMZW5ndGgoaGVhZGVyc09ubHkpKVxuICB2YXIgYnVmZmVyV3JpdGVyID0gbmV3IGJ1ZmZlcnV0aWxzLkJ1ZmZlcldyaXRlcihidWZmZXIpXG5cbiAgYnVmZmVyV3JpdGVyLndyaXRlSW50MzIodGhpcy52ZXJzaW9uKVxuICBidWZmZXJXcml0ZXIud3JpdGVTbGljZSh0aGlzLnByZXZIYXNoKVxuICBidWZmZXJXcml0ZXIud3JpdGVTbGljZSh0aGlzLm1lcmtsZVJvb3QpXG4gIGJ1ZmZlcldyaXRlci53cml0ZVVJbnQzMih0aGlzLnRpbWVzdGFtcClcbiAgYnVmZmVyV3JpdGVyLndyaXRlVUludDMyKHRoaXMuYml0cylcbiAgLy8gTm90IHN1cmUgc3VyZSB3aHkgdGhlIG5vbmNlIGlzIGludGVycHJldGVkIGFzIFVJbnQgMzIgYW5kIG5vdCBhIHNsaWNlIGluIGJpdGNvaW5cbiAgYnVmZmVyV3JpdGVyLndyaXRlVUludDMyKHRoaXMubm9uY2UpXG5cbiAgaWYgKGhlYWRlcnNPbmx5IHx8ICF0aGlzLnRyYW5zYWN0aW9ucykgcmV0dXJuIGJ1ZmZlclxuXG4gIC8vIFRPRE86IHVzZSB3cml0ZVZhckludFxuICB2YXJ1aW50LmVuY29kZSh0aGlzLnRyYW5zYWN0aW9ucy5sZW5ndGgsIGJ1ZmZlcldyaXRlci5idWZmZXIsIGJ1ZmZlcldyaXRlci5vZmZzZXQpXG4gIGJ1ZmZlcldyaXRlci5vZmZzZXQgKz0gdmFydWludC5lbmNvZGUuYnl0ZXNcblxuICAvLyBUT0RPOiB1c2Ugd3JpdGVWYXJJbnRcbiAgdGhpcy50cmFuc2FjdGlvbnMuZm9yRWFjaChmdW5jdGlvbiAodHgpIHtcbiAgICB2YXIgdHhTaXplID0gdHguYnl0ZUxlbmd0aCgpIC8vIFRPRE86IGV4dHJhY3QgZnJvbSB0b0J1ZmZlcj9cbiAgICB0eC50b0J1ZmZlcihidWZmZXJXcml0ZXIuYnVmZmVyLCBidWZmZXJXcml0ZXIub2Zmc2V0KVxuICAgIGJ1ZmZlcldyaXRlci5vZmZzZXQgKz0gdHhTaXplXG4gIH0pXG5cbiAgcmV0dXJuIGJ1ZmZlclxufVxuXG5CbG9jay5wcm90b3R5cGUudG9IZXggPSBmdW5jdGlvbiAoaGVhZGVyc09ubHkpIHtcbiAgcmV0dXJuIHRoaXMudG9CdWZmZXIoaGVhZGVyc09ubHkpLnRvU3RyaW5nKCdoZXgnKVxufVxuXG5CbG9jay5jYWxjdWxhdGVUYXJnZXQgPSBmdW5jdGlvbiAoYml0cykge1xuICB2YXIgZXhwb25lbnQgPSAoKGJpdHMgJiAweGZmMDAwMDAwKSA+PiAyNCkgLSAzXG4gIHZhciBtYW50aXNzYSA9IGJpdHMgJiAweDAwN2ZmZmZmXG4gIHZhciB0YXJnZXQgPSBCdWZmZXIuYWxsb2MoMzIsIDApXG4gIGlmIChleHBvbmVudCA8IDApIHtcbiAgICAvLyBJZiBpdCBpcyBuZWdhdGl2ZSwgd2Ugd2lsbCBvdmVyZmxvdyB0aGUgdGFyZ2V0IGJ1ZmZlciBzbyB3ZSBoYXZlIHRvIHNsaWNlIHRoZSBtYW50aXNzYSB0byBmaXRcbiAgICBtYW50aXNzYSA9IG1hbnRpc3NhID4+ICg4ICogTWF0aC5hYnMoZXhwb25lbnQpKVxuICAgIHRhcmdldC53cml0ZVVJbnQzMkJFKG1hbnRpc3NhLCAyOClcbiAgfSBlbHNlIGlmIChleHBvbmVudCA+IDI4KSB7XG4gICAgLy8gSWYgaXQgaXMgZ3JlYXRlciB0aGFuIDI4LCB3ZSBuZWVkIHRvIHNoaWZ0IHRoZSBtYW50aXNzYSBzaW5jZSB0aGUgb2Zmc2V0IGNhbm5vdCBiZSBncmVhdGVyIHRoYW4gMzIgLSA0XG4gICAgLy8gKHNhZmUtYnVmZmVyIHJlc3RyaWN0aW9uKVxuICAgIG1hbnRpc3NhIDw8PSA4ICogKGV4cG9uZW50IC0gMjgpXG4gICAgdGFyZ2V0LndyaXRlVUludDMyQkUobWFudGlzc2EsIDApXG4gIH0gZWxzZSB7XG4gICAgdGFyZ2V0LndyaXRlVUludDMyQkUobWFudGlzc2EsIDI4IC0gZXhwb25lbnQpXG4gIH1cbiAgcmV0dXJuIHRhcmdldFxufVxuXG5CbG9jay5jYWxjdWxhdGVNZXJrbGVSb290ID0gZnVuY3Rpb24gKHRyYW5zYWN0aW9ucykge1xuICB0eXBlZm9yY2UoW3sgZ2V0SGFzaDogdHlwZXMuRnVuY3Rpb24gfV0sIHRyYW5zYWN0aW9ucylcbiAgaWYgKHRyYW5zYWN0aW9ucy5sZW5ndGggPT09IDApIHRocm93IFR5cGVFcnJvcignQ2Fubm90IGNvbXB1dGUgbWVya2xlIHJvb3QgZm9yIHplcm8gdHJhbnNhY3Rpb25zJylcblxuICB2YXIgaGFzaGVzID0gdHJhbnNhY3Rpb25zLm1hcChmdW5jdGlvbiAodHJhbnNhY3Rpb24pIHtcbiAgICByZXR1cm4gdHJhbnNhY3Rpb24uZ2V0SGFzaCgpXG4gIH0pXG5cbiAgcmV0dXJuIGZhc3RNZXJrbGVSb290KGhhc2hlcywgYmNyeXB0by5oYXNoMjU2KVxufVxuXG5CbG9jay5wcm90b3R5cGUuY2hlY2tNZXJrbGVSb290ID0gZnVuY3Rpb24gKCkge1xuICBpZiAoIXRoaXMudHJhbnNhY3Rpb25zKSByZXR1cm4gZmFsc2VcblxuICB2YXIgYWN0dWFsTWVya2xlUm9vdCA9IEJsb2NrLmNhbGN1bGF0ZU1lcmtsZVJvb3QodGhpcy50cmFuc2FjdGlvbnMpXG4gIHJldHVybiB0aGlzLm1lcmtsZVJvb3QuY29tcGFyZShhY3R1YWxNZXJrbGVSb290KSA9PT0gMFxufVxuXG5CbG9jay5wcm90b3R5cGUuY2hlY2tQcm9vZk9mV29yayA9IGZ1bmN0aW9uICgpIHtcbiAgdmFyIGhhc2ggPSB0aGlzLmdldEhhc2goKS5yZXZlcnNlKClcbiAgdmFyIHRhcmdldCA9IEJsb2NrLmNhbGN1bGF0ZVRhcmdldCh0aGlzLmJpdHMpXG5cbiAgcmV0dXJuIGhhc2guY29tcGFyZSh0YXJnZXQpIDw9IDBcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBCbG9ja1xuIl19
/* eslint-disable */
var types = require('./types');
var typeforce = require('typeforce');
var varuint = require('varuint-bitcoin');
const types = require('./types');
const typeforce = require('typeforce');
const varuint = require('varuint-bitcoin');
// https://github.com/feross/buffer/blob/master/index.js#L1127

@@ -17,4 +17,4 @@ function verifuint(value, max) {

function readUInt64LE(buffer, offset) {
var a = buffer.readUInt32LE(offset);
var b = buffer.readUInt32LE(offset + 4);
const a = buffer.readUInt32LE(offset);
let b = buffer.readUInt32LE(offset + 4);
b *= 0x100000000;

@@ -33,5 +33,5 @@ verifuint(b + a, 0x001fffffffffffff);

return buffer;
var j = buffer.length - 1;
var tmp = 0;
for (var i = 0; i < buffer.length / 2; i++) {
let j = buffer.length - 1;
let tmp = 0;
for (let i = 0; i < buffer.length / 2; i++) {
tmp = buffer[i];

@@ -47,5 +47,4 @@ buffer[i] = buffer[j];

*/
var BufferWriter = /** @class */ (function () {
function BufferWriter(buffer, offset) {
if (offset === void 0) { offset = 0; }
class BufferWriter {
constructor(buffer, offset = 0) {
this.buffer = buffer;

@@ -55,19 +54,19 @@ this.offset = offset;

}
BufferWriter.prototype.writeUInt8 = function (i) {
writeUInt8(i) {
this.offset = this.buffer.writeUInt8(i, this.offset);
};
BufferWriter.prototype.writeInt32 = function (i) {
}
writeInt32(i) {
this.offset = this.buffer.writeInt32LE(i, this.offset);
};
BufferWriter.prototype.writeUInt32 = function (i) {
}
writeUInt32(i) {
this.offset = this.buffer.writeUInt32LE(i, this.offset);
};
BufferWriter.prototype.writeUInt64 = function (i) {
}
writeUInt64(i) {
this.offset = writeUInt64LE(this.buffer, i, this.offset);
};
BufferWriter.prototype.writeVarInt = function (i) {
}
writeVarInt(i) {
varuint.encode(i, this.buffer, this.offset);
this.offset += varuint.encode.bytes;
};
BufferWriter.prototype.writeSlice = function (slice) {
}
writeSlice(slice) {
if (this.buffer.length < this.offset + slice.length) {

@@ -77,20 +76,17 @@ throw new Error('Cannot write slice out of bounds');

this.offset += slice.copy(this.buffer, this.offset);
};
BufferWriter.prototype.writeVarSlice = function (slice) {
}
writeVarSlice(slice) {
this.writeVarInt(slice.length);
this.writeSlice(slice);
};
BufferWriter.prototype.writeVector = function (vector) {
var _this = this;
}
writeVector(vector) {
this.writeVarInt(vector.length);
vector.forEach(function (buf) { return _this.writeVarSlice(buf); });
};
return BufferWriter;
}());
vector.forEach((buf) => this.writeVarSlice(buf));
}
}
/**
* Helper class for reading of bitcoin data types from a buffer.
*/
var BufferReader = /** @class */ (function () {
function BufferReader(buffer, offset) {
if (offset === void 0) { offset = 0; }
class BufferReader {
constructor(buffer, offset = 0) {
this.buffer = buffer;

@@ -100,54 +96,53 @@ this.offset = offset;

}
BufferReader.prototype.readUInt8 = function () {
var result = this.buffer.readUInt8(this.offset);
readUInt8() {
const result = this.buffer.readUInt8(this.offset);
this.offset++;
return result;
};
BufferReader.prototype.readInt32 = function () {
var result = this.buffer.readInt32LE(this.offset);
}
readInt32() {
const result = this.buffer.readInt32LE(this.offset);
this.offset += 4;
return result;
};
BufferReader.prototype.readUInt32 = function () {
var result = this.buffer.readUInt32LE(this.offset);
}
readUInt32() {
const result = this.buffer.readUInt32LE(this.offset);
this.offset += 4;
return result;
};
BufferReader.prototype.readUInt64 = function () {
var result = readUInt64LE(this.buffer, this.offset);
}
readUInt64() {
const result = readUInt64LE(this.buffer, this.offset);
this.offset += 8;
return result;
};
BufferReader.prototype.readVarInt = function () {
var vi = varuint.decode(this.buffer, this.offset);
}
readVarInt() {
const vi = varuint.decode(this.buffer, this.offset);
this.offset += varuint.decode.bytes;
return vi;
};
BufferReader.prototype.readSlice = function (n) {
}
readSlice(n) {
if (this.buffer.length < this.offset + n) {
throw new Error('Cannot read slice out of bounds');
}
var result = this.buffer.slice(this.offset, this.offset + n);
const result = this.buffer.slice(this.offset, this.offset + n);
this.offset += n;
return result;
};
BufferReader.prototype.readVarSlice = function () {
}
readVarSlice() {
return this.readSlice(this.readVarInt());
};
BufferReader.prototype.readVector = function () {
var count = this.readVarInt();
var vector = [];
for (var i = 0; i < count; i++)
}
readVector() {
const count = this.readVarInt();
const vector = [];
for (let i = 0; i < count; i++)
vector.push(this.readVarSlice());
return vector;
};
return BufferReader;
}());
}
}
module.exports = {
readUInt64LE: readUInt64LE,
writeUInt64LE: writeUInt64LE,
reverseBuffer: reverseBuffer,
BufferWriter: BufferWriter,
BufferReader: BufferReader,
readUInt64LE,
writeUInt64LE,
reverseBuffer,
BufferWriter,
BufferReader,
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVmZmVydXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYnVmZmVydXRpbHMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0JBQW9CO0FBQ3BCLElBQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUNqQyxJQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7QUFDdkMsSUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUM7QUFDM0MsOERBQThEO0FBQzlELFNBQVMsU0FBUyxDQUFDLEtBQUssRUFBRSxHQUFHO0lBQ3pCLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUTtRQUN6QixNQUFNLElBQUksS0FBSyxDQUFDLHVDQUF1QyxDQUFDLENBQUM7SUFDN0QsSUFBSSxLQUFLLEdBQUcsQ0FBQztRQUNULE1BQU0sSUFBSSxLQUFLLENBQUMsMERBQTBELENBQUMsQ0FBQztJQUNoRixJQUFJLEtBQUssR0FBRyxHQUFHO1FBQ1gsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO0lBQ3RELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxLQUFLO1FBQzNCLE1BQU0sSUFBSSxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQztBQUM1RCxDQUFDO0FBQ0QsU0FBUyxZQUFZLENBQUMsTUFBTSxFQUFFLE1BQU07SUFDaEMsSUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN0QyxJQUFJLENBQUMsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN4QyxDQUFDLElBQUksV0FBVyxDQUFDO0lBQ2pCLFNBQVMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLGtCQUFrQixDQUFDLENBQUM7SUFDckMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FB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RSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQy9ELElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDO1FBQ2pCLE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFDRCxtQ0FBWSxHQUFaO1FBQ0ksT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFDRCxpQ0FBVSxHQUFWO1FBQ0ksSUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2hDLElBQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNsQixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRTtZQUMxQixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBQ3JDLE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFDTCxtQkFBQztBQUFELENBQUMsQUFqREQsSUFpREM7QUFDRCxNQUFNLENBQUMsT0FBTyxHQUFHO0lBQ2IsWUFBWSxjQUFBO0lBQ1osYUFBYSxlQUFBO0lBQ2IsYUFBYSxlQUFBO0lBQ2IsWUFBWSxjQUFBO0lBQ1osWUFBWSxjQUFBO0NBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlICovXG5jb25zdCB0eXBlcyA9IHJlcXVpcmUoJy4vdHlwZXMnKTtcbmNvbnN0IHR5cGVmb3JjZSA9IHJlcXVpcmUoJ3R5cGVmb3JjZScpO1xuY29uc3QgdmFydWludCA9IHJlcXVpcmUoJ3ZhcnVpbnQtYml0Y29pbicpO1xuLy8gaHR0cHM6Ly9naXRodWIuY29tL2Zlcm9zcy9idWZmZXIvYmxvYi9tYXN0ZXIvaW5kZXguanMjTDExMjdcbmZ1bmN0aW9uIHZlcmlmdWludCh2YWx1ZSwgbWF4KSB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ251bWJlcicpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignY2Fubm90IHdyaXRlIGEgbm9uLW51bWJlciBhcyBhIG51bWJlcicpO1xuICAgIGlmICh2YWx1ZSA8IDApXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignc3BlY2lmaWVkIGEgbmVnYXRpdmUgdmFsdWUgZm9yIHdyaXRpbmcgYW4gdW5zaWduZWQgdmFsdWUnKTtcbiAgICBpZiAodmFsdWUgPiBtYXgpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignUmFuZ2VFcnJvcjogdmFsdWUgb3V0IG9mIHJhbmdlJyk7XG4gICAgaWYgKE1hdGguZmxvb3IodmFsdWUpICE9PSB2YWx1ZSlcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd2YWx1ZSBoYXMgYSBmcmFjdGlvbmFsIGNvbXBvbmVudCcpO1xufVxuZnVuY3Rpb24gcmVhZFVJbnQ2NExFKGJ1ZmZlciwgb2Zmc2V0KSB7XG4gICAgY29uc3QgYSA9IGJ1ZmZlci5yZWFkVUludDMyTEUob2Zmc2V0KTtcbiAgICBsZXQgYiA9IGJ1ZmZlci5yZWFkVUludDMyTEUob2Zmc2V0ICsgNCk7XG4gICAgYiAqPSAweDEwMDAwMDAwMDtcbiAgICB2ZXJpZnVpbnQoYiArIGEsIDB4MDAxZmZmZmZmZmZmZmZmZik7XG4gICAgcmV0dXJuIGIgKyBhO1xufVxuZnVuY3Rpb24gd3JpdGVVSW50NjRMRShidWZmZXIsIHZhbHVlLCBvZmZzZXQpIHtcbiAgICB2ZXJpZnVpbnQodmFsdWUsIDB4MDAxZmZmZmZmZmZmZmZmZik7XG4gICAgYnVmZmVyLndyaXRlSW50MzJMRSh2YWx1ZSAmIC0xLCBvZmZzZXQpO1xuICAgIGJ1ZmZlci53cml0ZVVJbnQzMkxFKE1hdGguZmxvb3IodmFsdWUgLyAweDEwMDAwMDAwMCksIG9mZnNldCArIDQpO1xuICAgIHJldHVybiBvZmZzZXQgKyA4O1xufVxuZnVuY3Rpb24gcmV2ZXJzZUJ1ZmZlcihidWZmZXIpIHtcbiAgICBpZiAoYnVmZmVyLmxlbmd0aCA8IDEpXG4gICAgICAgIHJldHVybiBidWZmZXI7XG4gICAgbGV0IGogPSBidWZmZXIubGVuZ3RoIC0gMTtcbiAgICBsZXQgdG1wID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGJ1ZmZlci5sZW5ndGggLyAyOyBpKyspIHtcbiAgICAgICAgdG1wID0gYnVmZmVyW2ldO1xuICAgICAgICBidWZmZXJbaV0gPSBidWZmZXJbal07XG4gICAgICAgIGJ1ZmZlcltqXSA9IHRtcDtcbiAgICAgICAgai0tO1xuICAgIH1cbiAgICByZXR1cm4gYnVmZmVyO1xufVxuLyoqXG4gKiBIZWxwZXIgY2xhc3MgZm9yIHNlcmlhbGl6YXRpb24gb2YgYml0Y29pbiBkYXRhIHR5cGVzIGludG8gYSBwcmUtYWxsb2NhdGVkIGJ1ZmZlci5cbiAqL1xuY2xhc3MgQnVmZmVyV3JpdGVyIHtcbiAgICBjb25zdHJ1Y3RvcihidWZmZXIsIG9mZnNldCA9IDApIHtcbiAgICAgICAgdGhpcy5idWZmZXIgPSBidWZmZXI7XG4gICAgICAgIHRoaXMub2Zmc2V0ID0gb2Zmc2V0O1xuICAgICAgICB0eXBlZm9yY2UodHlwZXMudHVwbGUodHlwZXMuQnVmZmVyLCB0eXBlcy5VSW50MzIpLCBbYnVmZmVyLCBvZmZzZXRdKTtcbiAgICB9XG4gICAgd3JpdGVVSW50OChpKSB7XG4gICAgICAgIHRoaXMub2Zmc2V0ID0gdGhpcy5idWZmZXIud3JpdGVVSW50OChpLCB0aGlzLm9mZnNldCk7XG4gICAgfVxuICAgIHdyaXRlSW50MzIoaSkge1xuICAgICAgICB0aGlzLm9mZnNldCA9IHRoaXMuYnVmZmVyLndyaXRlSW50MzJMRShpLCB0aGlzLm9mZnNldCk7XG4gICAgfVxuICAgIHdyaXRlVUludDMyKGkpIHtcbiAgICAgICAgdGhpcy5vZmZzZXQgPSB0aGlzLmJ1ZmZlci53cml0ZVVJbnQzMkxFKGksIHRoaXMub2Zmc2V0KTtcbiAgICB9XG4gICAgd3JpdGVVSW50NjQoaSkge1xuICAgICAgICB0aGlzLm9mZnNldCA9IHdyaXRlVUludDY0TEUodGhpcy5idWZmZXIsIGksIHRoaXMub2Zmc2V0KTtcbiAgICB9XG4gICAgd3JpdGVWYXJJbnQoaSkge1xuICAgICAgICB2YXJ1aW50LmVuY29kZShpLCB0aGlzLmJ1ZmZlciwgdGhpcy5vZmZzZXQpO1xuICAgICAgICB0aGlzLm9mZnNldCArPSB2YXJ1aW50LmVuY29kZS5ieXRlcztcbiAgICB9XG4gICAgd3JpdGVTbGljZShzbGljZSkge1xuICAgICAgICBpZiAodGhpcy5idWZmZXIubGVuZ3RoIDwgdGhpcy5vZmZzZXQgKyBzbGljZS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ2Fubm90IHdyaXRlIHNsaWNlIG91dCBvZiBib3VuZHMnKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm9mZnNldCArPSBzbGljZS5jb3B5KHRoaXMuYnVmZmVyLCB0aGlzLm9mZnNldCk7XG4gICAgfVxuICAgIHdyaXRlVmFyU2xpY2Uoc2xpY2UpIHtcbiAgICAgICAgdGhpcy53cml0ZVZhckludChzbGljZS5sZW5ndGgpO1xuICAgICAgICB0aGlzLndyaXRlU2xpY2Uoc2xpY2UpO1xuICAgIH1cbiAgICB3cml0ZVZlY3Rvcih2ZWN0b3IpIHtcbiAgICAgICAgdGhpcy53cml0ZVZhckludCh2ZWN0b3IubGVuZ3RoKTtcbiAgICAgICAgdmVjdG9yLmZvckVhY2goKGJ1ZikgPT4gdGhpcy53cml0ZVZhclNsaWNlKGJ1ZikpO1xuICAgIH1cbn1cbi8qKlxuICogSGVscGVyIGNsYXNzIGZvciByZWFkaW5nIG9mIGJpdGNvaW4gZGF0YSB0eXBlcyBmcm9tIGEgYnVmZmVyLlxuICovXG5jbGFzcyBCdWZmZXJSZWFkZXIge1xuICAgIGNvbnN0cnVjdG9yKGJ1ZmZlciwgb2Zmc2V0ID0gMCkge1xuICAgICAgICB0aGlzLmJ1ZmZlciA9IGJ1ZmZlcjtcbiAgICAgICAgdGhpcy5vZmZzZXQgPSBvZmZzZXQ7XG4gICAgICAgIHR5cGVmb3JjZSh0eXBlcy50dXBsZSh0eXBlcy5CdWZmZXIsIHR5cGVzLlVJbnQzMiksIFtidWZmZXIsIG9mZnNldF0pO1xuICAgIH1cbiAgICByZWFkVUludDgoKSB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuYnVmZmVyLnJlYWRVSW50OCh0aGlzLm9mZnNldCk7XG4gICAgICAgIHRoaXMub2Zmc2V0Kys7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuICAgIHJlYWRJbnQzMigpIHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5idWZmZXIucmVhZEludDMyTEUodGhpcy5vZmZzZXQpO1xuICAgICAgICB0aGlzLm9mZnNldCArPSA0O1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cbiAgICByZWFkVUludDMyKCkge1xuICAgICAgICBjb25zdCByZXN1bHQgPSB0aGlzLmJ1ZmZlci5yZWFkVUludDMyTEUodGhpcy5vZmZzZXQpO1xuICAgICAgICB0aGlzLm9mZnNldCArPSA0O1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cbiAgICByZWFkVUludDY0KCkge1xuICAgICAgICBjb25zdCByZXN1bHQgPSByZWFkVUludDY0TEUodGhpcy5idWZmZXIsIHRoaXMub2Zmc2V0KTtcbiAgICAgICAgdGhpcy5vZmZzZXQgKz0gODtcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG4gICAgcmVhZFZhckludCgpIHtcbiAgICAgICAgY29uc3QgdmkgPSB2YXJ1aW50LmRlY29kZSh0aGlzLmJ1ZmZlciwgdGhpcy5vZmZzZXQpO1xuICAgICAgICB0aGlzLm9mZnNldCArPSB2YXJ1aW50LmRlY29kZS5ieXRlcztcbiAgICAgICAgcmV0dXJuIHZpO1xuICAgIH1cbiAgICByZWFkU2xpY2Uobikge1xuICAgICAgICBpZiAodGhpcy5idWZmZXIubGVuZ3RoIDwgdGhpcy5vZmZzZXQgKyBuKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCByZWFkIHNsaWNlIG91dCBvZiBib3VuZHMnKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCByZXN1bHQgPSB0aGlzLmJ1ZmZlci5zbGljZSh0aGlzLm9mZnNldCwgdGhpcy5vZmZzZXQgKyBuKTtcbiAgICAgICAgdGhpcy5vZmZzZXQgKz0gbjtcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG4gICAgcmVhZFZhclNsaWNlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5yZWFkU2xpY2UodGhpcy5yZWFkVmFySW50KCkpO1xuICAgIH1cbiAgICByZWFkVmVjdG9yKCkge1xuICAgICAgICBjb25zdCBjb3VudCA9IHRoaXMucmVhZFZhckludCgpO1xuICAgICAgICBjb25zdCB2ZWN0b3IgPSBbXTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb3VudDsgaSsrKVxuICAgICAgICAgICAgdmVjdG9yLnB1c2godGhpcy5yZWFkVmFyU2xpY2UoKSk7XG4gICAgICAgIHJldHVybiB2ZWN0b3I7XG4gICAgfVxufVxubW9kdWxlLmV4cG9ydHMgPSB7XG4gICAgcmVhZFVJbnQ2NExFLFxuICAgIHdyaXRlVUludDY0TEUsXG4gICAgcmV2ZXJzZUJ1ZmZlcixcbiAgICBCdWZmZXJXcml0ZXIsXG4gICAgQnVmZmVyUmVhZGVyLFxufTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVmZmVydXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYnVmZmVydXRpbHMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0JBQW9CO0FBQ3BCLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUNqQyxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7QUFDdkMsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUM7QUFDM0MsOERBQThEO0FBQzlELFNBQVMsU0FBUyxDQUFDLEtBQUssRUFBRSxHQUFHO0lBQ3pCLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUTtRQUN6QixNQUFNLElBQUksS0FBSyxDQUFDLHVDQUF1QyxDQUFDLENBQUM7SUFDN0QsSUFBSSxLQUFLLEdBQUcsQ0FBQztRQUNULE1BQU0sSUFBSSxLQUFLLENBQUMsMERBQTBELENBQUMsQ0FBQztJQUNoRixJQUFJLEtBQUssR0FBRyxHQUFHO1FBQ1gsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO0lBQ3RELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxLQUFLO1FBQzNCLE1BQU0sSUFBSSxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQztBQUM1RCxDQUFDO0FBQ0QsU0FBUyxZQUFZLENBQUMsTUFBTSxFQUFFLE1BQU07SUFDaEMsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN0QyxJQUFJLENBQUMsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN4QyxDQUFDLElBQUksV0FBVyxDQUFDO0lBQ2pCLFNBQVMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLGtCQUFrQixDQUFDLENBQUM7SUFDckMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FB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U0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFDRCxVQUFVO1FBQ04sTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2hDLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNsQixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRTtZQUMxQixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBQ3JDLE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7Q0FDSjtBQUNELE1BQU0sQ0FBQyxPQUFPLEdBQUc7SUFDYixZQUFZO0lBQ1osYUFBYTtJQUNiLGFBQWE7SUFDYixZQUFZO0lBQ1osWUFBWTtDQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSAqL1xuY29uc3QgdHlwZXMgPSByZXF1aXJlKCcuL3R5cGVzJyk7XG5jb25zdCB0eXBlZm9yY2UgPSByZXF1aXJlKCd0eXBlZm9yY2UnKTtcbmNvbnN0IHZhcnVpbnQgPSByZXF1aXJlKCd2YXJ1aW50LWJpdGNvaW4nKTtcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mZXJvc3MvYnVmZmVyL2Jsb2IvbWFzdGVyL2luZGV4LmpzI0wxMTI3XG5mdW5jdGlvbiB2ZXJpZnVpbnQodmFsdWUsIG1heCkge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdudW1iZXInKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2Nhbm5vdCB3cml0ZSBhIG5vbi1udW1iZXIgYXMgYSBudW1iZXInKTtcbiAgICBpZiAodmFsdWUgPCAwKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3NwZWNpZmllZCBhIG5lZ2F0aXZlIHZhbHVlIGZvciB3cml0aW5nIGFuIHVuc2lnbmVkIHZhbHVlJyk7XG4gICAgaWYgKHZhbHVlID4gbWF4KVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1JhbmdlRXJyb3I6IHZhbHVlIG91dCBvZiByYW5nZScpO1xuICAgIGlmIChNYXRoLmZsb29yKHZhbHVlKSAhPT0gdmFsdWUpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcigndmFsdWUgaGFzIGEgZnJhY3Rpb25hbCBjb21wb25lbnQnKTtcbn1cbmZ1bmN0aW9uIHJlYWRVSW50NjRMRShidWZmZXIsIG9mZnNldCkge1xuICAgIGNvbnN0IGEgPSBidWZmZXIucmVhZFVJbnQzMkxFKG9mZnNldCk7XG4gICAgbGV0IGIgPSBidWZmZXIucmVhZFVJbnQzMkxFKG9mZnNldCArIDQpO1xuICAgIGIgKj0gMHgxMDAwMDAwMDA7XG4gICAgdmVyaWZ1aW50KGIgKyBhLCAweDAwMWZmZmZmZmZmZmZmZmYpO1xuICAgIHJldHVybiBiICsgYTtcbn1cbmZ1bmN0aW9uIHdyaXRlVUludDY0TEUoYnVmZmVyLCB2YWx1ZSwgb2Zmc2V0KSB7XG4gICAgdmVyaWZ1aW50KHZhbHVlLCAweDAwMWZmZmZmZmZmZmZmZmYpO1xuICAgIGJ1ZmZlci53cml0ZUludDMyTEUodmFsdWUgJiAtMSwgb2Zmc2V0KTtcbiAgICBidWZmZXIud3JpdGVVSW50MzJMRShNYXRoLmZsb29yKHZhbHVlIC8gMHgxMDAwMDAwMDApLCBvZmZzZXQgKyA0KTtcbiAgICByZXR1cm4gb2Zmc2V0ICsgODtcbn1cbmZ1bmN0aW9uIHJldmVyc2VCdWZmZXIoYnVmZmVyKSB7XG4gICAgaWYgKGJ1ZmZlci5sZW5ndGggPCAxKVxuICAgICAgICByZXR1cm4gYnVmZmVyO1xuICAgIGxldCBqID0gYnVmZmVyLmxlbmd0aCAtIDE7XG4gICAgbGV0IHRtcCA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBidWZmZXIubGVuZ3RoIC8gMjsgaSsrKSB7XG4gICAgICAgIHRtcCA9IGJ1ZmZlcltpXTtcbiAgICAgICAgYnVmZmVyW2ldID0gYnVmZmVyW2pdO1xuICAgICAgICBidWZmZXJbal0gPSB0bXA7XG4gICAgICAgIGotLTtcbiAgICB9XG4gICAgcmV0dXJuIGJ1ZmZlcjtcbn1cbi8qKlxuICogSGVscGVyIGNsYXNzIGZvciBzZXJpYWxpemF0aW9uIG9mIGJpdGNvaW4gZGF0YSB0eXBlcyBpbnRvIGEgcHJlLWFsbG9jYXRlZCBidWZmZXIuXG4gKi9cbmNsYXNzIEJ1ZmZlcldyaXRlciB7XG4gICAgY29uc3RydWN0b3IoYnVmZmVyLCBvZmZzZXQgPSAwKSB7XG4gICAgICAgIHRoaXMuYnVmZmVyID0gYnVmZmVyO1xuICAgICAgICB0aGlzLm9mZnNldCA9IG9mZnNldDtcbiAgICAgICAgdHlwZWZvcmNlKHR5cGVzLnR1cGxlKHR5cGVzLkJ1ZmZlciwgdHlwZXMuVUludDMyKSwgW2J1ZmZlciwgb2Zmc2V0XSk7XG4gICAgfVxuICAgIHdyaXRlVUludDgoaSkge1xuICAgICAgICB0aGlzLm9mZnNldCA9IHRoaXMuYnVmZmVyLndyaXRlVUludDgoaSwgdGhpcy5vZmZzZXQpO1xuICAgIH1cbiAgICB3cml0ZUludDMyKGkpIHtcbiAgICAgICAgdGhpcy5vZmZzZXQgPSB0aGlzLmJ1ZmZlci53cml0ZUludDMyTEUoaSwgdGhpcy5vZmZzZXQpO1xuICAgIH1cbiAgICB3cml0ZVVJbnQzMihpKSB7XG4gICAgICAgIHRoaXMub2Zmc2V0ID0gdGhpcy5idWZmZXIud3JpdGVVSW50MzJMRShpLCB0aGlzLm9mZnNldCk7XG4gICAgfVxuICAgIHdyaXRlVUludDY0KGkpIHtcbiAgICAgICAgdGhpcy5vZmZzZXQgPSB3cml0ZVVJbnQ2NExFKHRoaXMuYnVmZmVyLCBpLCB0aGlzLm9mZnNldCk7XG4gICAgfVxuICAgIHdyaXRlVmFySW50KGkpIHtcbiAgICAgICAgdmFydWludC5lbmNvZGUoaSwgdGhpcy5idWZmZXIsIHRoaXMub2Zmc2V0KTtcbiAgICAgICAgdGhpcy5vZmZzZXQgKz0gdmFydWludC5lbmNvZGUuYnl0ZXM7XG4gICAgfVxuICAgIHdyaXRlU2xpY2Uoc2xpY2UpIHtcbiAgICAgICAgaWYgKHRoaXMuYnVmZmVyLmxlbmd0aCA8IHRoaXMub2Zmc2V0ICsgc2xpY2UubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCB3cml0ZSBzbGljZSBvdXQgb2YgYm91bmRzJyk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5vZmZzZXQgKz0gc2xpY2UuY29weSh0aGlzLmJ1ZmZlciwgdGhpcy5vZmZzZXQpO1xuICAgIH1cbiAgICB3cml0ZVZhclNsaWNlKHNsaWNlKSB7XG4gICAgICAgIHRoaXMud3JpdGVWYXJJbnQoc2xpY2UubGVuZ3RoKTtcbiAgICAgICAgdGhpcy53cml0ZVNsaWNlKHNsaWNlKTtcbiAgICB9XG4gICAgd3JpdGVWZWN0b3IodmVjdG9yKSB7XG4gICAgICAgIHRoaXMud3JpdGVWYXJJbnQodmVjdG9yLmxlbmd0aCk7XG4gICAgICAgIHZlY3Rvci5mb3JFYWNoKChidWYpID0+IHRoaXMud3JpdGVWYXJTbGljZShidWYpKTtcbiAgICB9XG59XG4vKipcbiAqIEhlbHBlciBjbGFzcyBmb3IgcmVhZGluZyBvZiBiaXRjb2luIGRhdGEgdHlwZXMgZnJvbSBhIGJ1ZmZlci5cbiAqL1xuY2xhc3MgQnVmZmVyUmVhZGVyIHtcbiAgICBjb25zdHJ1Y3RvcihidWZmZXIsIG9mZnNldCA9IDApIHtcbiAgICAgICAgdGhpcy5idWZmZXIgPSBidWZmZXI7XG4gICAgICAgIHRoaXMub2Zmc2V0ID0gb2Zmc2V0O1xuICAgICAgICB0eXBlZm9yY2UodHlwZXMudHVwbGUodHlwZXMuQnVmZmVyLCB0eXBlcy5VSW50MzIpLCBbYnVmZmVyLCBvZmZzZXRdKTtcbiAgICB9XG4gICAgcmVhZFVJbnQ4KCkge1xuICAgICAgICBjb25zdCByZXN1bHQgPSB0aGlzLmJ1ZmZlci5yZWFkVUludDgodGhpcy5vZmZzZXQpO1xuICAgICAgICB0aGlzLm9mZnNldCsrO1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cbiAgICByZWFkSW50MzIoKSB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuYnVmZmVyLnJlYWRJbnQzMkxFKHRoaXMub2Zmc2V0KTtcbiAgICAgICAgdGhpcy5vZmZzZXQgKz0gNDtcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG4gICAgcmVhZFVJbnQzMigpIHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5idWZmZXIucmVhZFVJbnQzMkxFKHRoaXMub2Zmc2V0KTtcbiAgICAgICAgdGhpcy5vZmZzZXQgKz0gNDtcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG4gICAgcmVhZFVJbnQ2NCgpIHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gcmVhZFVJbnQ2NExFKHRoaXMuYnVmZmVyLCB0aGlzLm9mZnNldCk7XG4gICAgICAgIHRoaXMub2Zmc2V0ICs9IDg7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuICAgIHJlYWRWYXJJbnQoKSB7XG4gICAgICAgIGNvbnN0IHZpID0gdmFydWludC5kZWNvZGUodGhpcy5idWZmZXIsIHRoaXMub2Zmc2V0KTtcbiAgICAgICAgdGhpcy5vZmZzZXQgKz0gdmFydWludC5kZWNvZGUuYnl0ZXM7XG4gICAgICAgIHJldHVybiB2aTtcbiAgICB9XG4gICAgcmVhZFNsaWNlKG4pIHtcbiAgICAgICAgaWYgKHRoaXMuYnVmZmVyLmxlbmd0aCA8IHRoaXMub2Zmc2V0ICsgbikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgcmVhZCBzbGljZSBvdXQgb2YgYm91bmRzJyk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5idWZmZXIuc2xpY2UodGhpcy5vZmZzZXQsIHRoaXMub2Zmc2V0ICsgbik7XG4gICAgICAgIHRoaXMub2Zmc2V0ICs9IG47XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuICAgIHJlYWRWYXJTbGljZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVhZFNsaWNlKHRoaXMucmVhZFZhckludCgpKTtcbiAgICB9XG4gICAgcmVhZFZlY3RvcigpIHtcbiAgICAgICAgY29uc3QgY291bnQgPSB0aGlzLnJlYWRWYXJJbnQoKTtcbiAgICAgICAgY29uc3QgdmVjdG9yID0gW107XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7IGkrKylcbiAgICAgICAgICAgIHZlY3Rvci5wdXNoKHRoaXMucmVhZFZhclNsaWNlKCkpO1xuICAgICAgICByZXR1cm4gdmVjdG9yO1xuICAgIH1cbn1cbm1vZHVsZS5leHBvcnRzID0ge1xuICAgIHJlYWRVSW50NjRMRSxcbiAgICB3cml0ZVVJbnQ2NExFLFxuICAgIHJldmVyc2VCdWZmZXIsXG4gICAgQnVmZmVyV3JpdGVyLFxuICAgIEJ1ZmZlclJlYWRlcixcbn07XG4iXX0=

@@ -1,10 +0,17 @@

// Coins supported by bitgo-bitcoinjs-lib
var typeforce = require('typeforce');
var networks = require('./networks');
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.ZEC = exports.LTC = exports.DASH = exports.BTG = exports.BTC = exports.BSV = exports.BCH = exports.isValidNetwork = exports.isZcash = exports.isLitecoin = exports.isDash = exports.isBitcoinSV = exports.isBitcoinGold = exports.isBitcoinCash = exports.isBitcoin = exports.getTestnet = exports.isSameCoin = exports.isTestnet = exports.isMainnet = exports.getMainnet = exports.getNetworkName = exports.getNetworkList = void 0;
/**
* @prettier
*/
const networks = require("./networks");
const networkTypes_1 = require("./networkTypes");
const typeforce = require('typeforce');
/**
* @returns {Network[]} all known networks as array
*/
function getNetworkList() {
return Object.keys(networks).map(function (n) { return networks[n]; });
return Object.keys(networks).map((n) => networks[n]);
}
exports.getNetworkList = getNetworkList;
/**

@@ -16,4 +23,5 @@ * @param {Network} network

function getNetworkName(network) {
return Object.keys(networks).find(function (n) { return networks[n] === network; });
return Object.keys(networks).find((n) => networks[n] === network);
}
exports.getNetworkName = getNetworkName;
/**

@@ -47,4 +55,5 @@ * @param {Network} network

}
throw new TypeError("invalid network");
throw new TypeError(`invalid network`);
}
exports.getMainnet = getMainnet;
/**

@@ -57,2 +66,3 @@ * @param {Network} network

}
exports.isMainnet = isMainnet;
/**

@@ -65,2 +75,3 @@ * @param {Network} network

}
exports.isTestnet = isTestnet;
/**

@@ -75,4 +86,5 @@ *

}
var mainnets = getNetworkList().filter(isMainnet);
var testnets = getNetworkList().filter(isTestnet);
exports.isSameCoin = isSameCoin;
const mainnets = getNetworkList().filter(isMainnet);
const testnets = getNetworkList().filter(isTestnet);
/**

@@ -82,3 +94,3 @@ * Map where keys are mainnet networks and values are testnet networks

*/
var mainnetTestnetPairs = new Map(mainnets.map(function (m) { return [m, testnets.filter(function (t) { return getMainnet(t) === m; })]; }));
const mainnetTestnetPairs = new Map(mainnets.map((m) => [m, testnets.filter((t) => getMainnet(t) === m)]));
/**

@@ -93,5 +105,5 @@ * @param {Network} network

}
var testnets = mainnetTestnetPairs.get(network);
const testnets = mainnetTestnetPairs.get(network);
if (testnets === undefined) {
throw new Error("invalid argument");
throw new Error(`invalid argument`);
}

@@ -104,4 +116,5 @@ if (testnets.length === 0) {

}
throw new Error("more than one testnet for " + getNetworkName(network));
throw new Error(`more than one testnet for ${getNetworkName(network)}`);
}
exports.getTestnet = getTestnet;
/**

@@ -114,2 +127,3 @@ * @param {Network} network

}
exports.isBitcoin = isBitcoin;
/**

@@ -122,2 +136,3 @@ * @param {Network} network

}
exports.isBitcoinCash = isBitcoinCash;
/**

@@ -130,2 +145,3 @@ * @param {Network} network

}
exports.isBitcoinGold = isBitcoinGold;
/**

@@ -138,2 +154,3 @@ * @param {Network} network

}
exports.isBitcoinSV = isBitcoinSV;
/**

@@ -146,2 +163,3 @@ * @param {Network} network

}
exports.isDash = isDash;
/**

@@ -154,2 +172,3 @@ * @param {Network} network

}
exports.isLitecoin = isLitecoin;
/**

@@ -162,2 +181,3 @@ * @param {Network} network

}
exports.isZcash = isZcash;
/**

@@ -167,31 +187,17 @@ * @param {Network} network

*/
var isValidNetwork = typeforce.oneOf(isBitcoin, isBitcoinCash, isBitcoinGold, isBitcoinSV, isDash, isLitecoin, isZcash);
module.exports = {
BTC: networks.bitcoin.coin,
BCH: networks.bitcoincash.coin,
BSV: networks.bitcoinsv.coin,
BTG: networks.bitcoingold.coin,
DASH: networks.dash.coin,
LTC: networks.litecoin.coin,
ZEC: networks.zcash.coin,
getNetworkList: getNetworkList,
getNetworkName: getNetworkName,
getMainnet: getMainnet,
isMainnet: isMainnet,
getTestnet: getTestnet,
isTestnet: isTestnet,
isSameCoin: isSameCoin,
isBitcoin: isBitcoin,
isBitcoinCash: isBitcoinCash,
isBitcoinGold: isBitcoinGold,
isBitcoinSV: isBitcoinSV,
isDash: isDash,
isLitecoin: isLitecoin,
isZcash: isZcash,
isValidNetwork: isValidNetwork,
/**
* @deprecated: use isValidNetwork
*/
isValidCoin: isValidNetwork
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29pbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29pbnMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEseUNBQXlDO0FBQ3pDLElBQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQTtBQUV0QyxJQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUE7QUFFdEM7O0dBRUc7QUFDSCxTQUFTLGNBQWM7SUFDckIsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxVQUFBLENBQUMsSUFBSSxPQUFBLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBWCxDQUFXLENBQUMsQ0FBQTtBQUNwRCxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILFNBQVMsY0FBYyxDQUFFLE9BQU87SUFDOUIsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFBLENBQUMsSUFBSSxPQUFBLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxPQUFPLEVBQXZCLENBQXVCLENBQUMsQ0FBQTtBQUNqRSxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyxVQUFVLENBQUUsT0FBTztJQUMxQixRQUFRLE9BQU8sRUFBRTtRQUNmLEtBQUssUUFBUSxDQUFDLE9BQU8sQ0FBQztRQUN0QixLQUFLLFFBQVEsQ0FBQyxPQUFPO1lBQ25CLE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FBQTtRQUV6QixLQUFLLFFBQVEsQ0FBQyxXQUFXLENBQUM7UUFDMUIsS0FBSyxRQUFRLENBQUMsa0JBQWtCO1lBQzlCLE9BQU8sUUFBUSxDQUFDLFdBQVcsQ0FBQTtRQUU3QixLQUFLLFFBQVEsQ0FBQyxXQUFXLENBQUM7UUFDMUIsS0FBSyxRQUFRLENBQUMsa0JBQWtCO1lBQzlCLE9BQU8sUUFBUSxDQUFDLFdBQVcsQ0FBQTtRQUU3QixLQUFLLFFBQVEsQ0FBQyxTQUFTLENBQUM7UUFDeEIs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U0FBUyxXQUFBO0lBQ1QsVUFBVSxZQUFBO0lBQ1YsU0FBUyxXQUFBO0lBQ1QsVUFBVSxZQUFBO0lBRVYsU0FBUyxXQUFBO0lBQ1QsYUFBYSxlQUFBO0lBQ2IsYUFBYSxlQUFBO0lBQ2IsV0FBVyxhQUFBO0lBQ1gsTUFBTSxRQUFBO0lBQ04sVUFBVSxZQUFBO0lBQ1YsT0FBTyxTQUFBO0lBRVAsY0FBYyxnQkFBQTtJQUNkOztPQUVHO0lBQ0gsV0FBVyxFQUFFLGNBQWM7Q0FDNUIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvaW5zIHN1cHBvcnRlZCBieSBiaXRnby1iaXRjb2luanMtbGliXG5jb25zdCB0eXBlZm9yY2UgPSByZXF1aXJlKCd0eXBlZm9yY2UnKVxuXG5jb25zdCBuZXR3b3JrcyA9IHJlcXVpcmUoJy4vbmV0d29ya3MnKVxuXG4vKipcbiAqIEByZXR1cm5zIHtOZXR3b3JrW119IGFsbCBrbm93biBuZXR3b3JrcyBhcyBhcnJheVxuICovXG5mdW5jdGlvbiBnZXROZXR3b3JrTGlzdCAoKSB7XG4gIHJldHVybiBPYmplY3Qua2V5cyhuZXR3b3JrcykubWFwKG4gPT4gbmV0d29ya3Nbbl0pXG59XG5cbi8qKlxuICogQHBhcmFtIHtOZXR3b3JrfSBuZXR3b3JrXG4gKiBAcmV0dXJucyB7c3RyaW5nfSB0aGUgbmFtZSBvZiB0aGUgbmV0d29yay4gUmV0dXJucyB1bmRlZmluZWQgaWYgbmV0d29yayBpcyBub3QgYSB2YWx1ZVxuICogICAgICAgICAgICAgICAgICAgb2YgYG5ldHdvcmtzYFxuICovXG5mdW5jdGlvbiBnZXROZXR3b3JrTmFtZSAobmV0d29yaykge1xuICByZXR1cm4gT2JqZWN0LmtleXMobmV0d29ya3MpLmZpbmQobiA9PiBuZXR3b3Jrc1tuXSA9PT0gbmV0d29yaylcbn1cblxuLyoqXG4gKiBAcGFyYW0ge05ldHdvcmt9IG5ldHdvcmtcbiAqIEByZXR1cm5zIHtPYmplY3R9IHRoZSBtYWlubmV0IGNvcnJlc3BvbmRpbmcgdG8gYSB0ZXN0bmV0XG4gKi9cbmZ1bmN0aW9uIGdldE1haW5uZXQgKG5ldHdvcmspIHtcbiAgc3dpdGNoIChuZXR3b3JrKSB7XG4gICAgY2FzZSBuZXR3b3Jrcy5iaXRjb2luOlxuICAgIGNhc2UgbmV0d29ya3MudGVzdG5ldDpcbiAgICAgIHJldHVybiBuZXR3b3Jrcy5iaXRjb2luXG5cbiAgICBjYXNlIG5ldHdvcmtzLmJpdGNvaW5jYXNoOlxuICAgIGNhc2UgbmV0d29ya3MuYml0Y29pbmNhc2hUZXN0bmV0OlxuICAgICAgcmV0dXJuIG5ldHdvcmtzLmJpdGNvaW5jYXNoXG5cbiAgICBjYXNlIG5ldHdvcmtzLmJpdGNvaW5nb2xkOlxuICAgIGNhc2UgbmV0d29ya3MuYml0Y29pbmdvbGRUZXN0bmV0OlxuICAgICAgcmV0dXJuIG5ldHdvcmtzLmJpdGNvaW5nb2xkXG5cbiAgICBjYXNlIG5ldHdvcmtzLmJpdGNvaW5zdjpcbiAgICBjYXNlIG5ldHdvcmtzLmJpdGNvaW5zdlRlc3RuZXQ6XG4gICAgICByZXR1cm4gbmV0d29ya3MuYml0Y29pbnN2XG5cbiAgICBjYXNlIG5ldHdvcmtzLmRhc2g6XG4gICAgY2FzZSBuZXR3b3Jrcy5kYXNoVGVzdDpcbiAgICAgIHJldHVybiBuZXR3b3Jrcy5kYXNoXG5cbiAgICBjYXNlIG5ldHdvcmtzLmxpdGVjb2luOlxuICAgIGNhc2UgbmV0d29ya3MubGl0ZWNvaW5UZXN0OlxuICAgICAgcmV0dXJuIG5ldHdvcmtzLmxpdGVjb2luXG5cbiAgICBjYXNlIG5ldHdvcmtzLnpjYXNoOlxuICAgIGNhc2UgbmV0d29ya3MuemNhc2hUZXN0OlxuICAgICAgcmV0dXJuIG5ldHdvcmtzLnpjYXNoXG4gIH1cbiAgdGhyb3cgbmV3IFR5cGVFcnJvcihgaW52YWxpZCBuZXR3b3JrYClcbn1cblxuLyoqXG4gKiBAcGFyYW0ge05ldHdvcmt9IG5ldHdvcmtcbiAqIEByZXR1cm5zIHtib29sZWFufSB0cnVlIGlmZiBuZXR3b3JrIGlzIGEgbWFpbm5ldFxuICovXG5mdW5jdGlvbiBpc01haW5uZXQgKG5ldHdvcmspIHtcbiAgcmV0dXJuIGdldE1haW5uZXQobmV0d29yaykgPT09IG5ldHdvcmtcbn1cblxuLyoqXG4gKiBAcGFyYW0ge05ldHdvcmt9IG5ldHdvcmtcbiAqIEByZXR1cm5zIHtib29sZWFufSB0cnVlIGlmZiBuZXR3b3JrIGlzIGEgdGVzdG5ldFxuICovXG5mdW5jdGlvbiBpc1Rlc3RuZXQgKG5ldHdvcmspIHtcbiAgcmV0dXJuIGdldE1haW5uZXQobmV0d29yaykgIT09IG5ldHdvcmtcbn1cblxuLyoqXG4gKlxuICogQHBhcmFtIHtOZXR3b3JrfSBuZXR3b3JrXG4gKiBAcGFyYW0ge05ldHdvcmt9IG90aGVyTmV0d29ya1xuICogQHJldHVybnMge2Jvb2xlYW59IHRydWUgaWZmIGJvdGggbmV0d29ya3MgYXJlIGZvciB0aGUgc2FtZSBjb2luXG4gKi9cbmZ1bmN0aW9uIGlzU2FtZUNvaW4gKG5ldHdvcmssIG90aGVyTmV0d29yaykge1xuICByZXR1cm4gZ2V0TWFpbm5ldChuZXR3b3JrKSA9PT0gZ2V0TWFpbm5ldChvdGhlck5ldHdvcmspXG59XG5cbmNvbnN0IG1haW5uZXRzID0gZ2V0TmV0d29ya0xpc3QoKS5maWx0ZXIoaXNNYWlubmV0KVxuY29uc3QgdGVzdG5ldHMgPSBnZXROZXR3b3JrTGlzdCgpLmZpbHRlcihpc1Rlc3RuZXQpXG5cbi8qKlxuICogTWFwIHdoZXJlIGtleXMgYXJlIG1haW5uZXQgbmV0d29ya3MgYW5kIHZhbHVlcyBhcmUgdGVzdG5ldCBuZXR3b3Jrc1xuICogQHR5cGUge01hcDxOZXR3b3JrLCBOZXR3b3JrW10+fVxuICovXG5jb25zdCBtYWlubmV0VGVzdG5ldFBhaXJzID0gbmV3IE1hcChcbiAgbWFpbm5ldHMubWFwKG0gPT4gW20sIHRlc3RuZXRzLmZpbHRlcih0ID0+IGdldE1haW5uZXQodCkgPT09IG0pXSlcbilcblxuLyoqXG4gKiBAcGFyYW0ge05ldHdvcmt9IG5ldHdvcmtcbiAqIEByZXR1cm5zIHtOZXR3b3JrfHVuZGVmaW5lZH0gLSBUaGUgdGVzdG5ldCBjb3JyZXNwb25kaW5nIHRvIGEgbWFpbm5ldC5cbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybnMgdW5kZWZpbmVkIGlmIGEgbmV0d29yayBoYXMgbm8gdGVzdG5ldC5cbiAqL1xuZnVuY3Rpb24gZ2V0VGVzdG5ldCAobmV0d29yaykge1xuICBpZiAoaXNUZXN0bmV0KG5ldHdvcmspKSB7XG4gICAgcmV0dXJuIG5ldHdvcmtcbiAgfVxuICBjb25zdCB0ZXN0bmV0cyA9IG1haW5uZXRUZXN0bmV0UGFpcnMuZ2V0KG5ldHdvcmspXG4gIGlmICh0ZXN0bmV0cyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIGFyZ3VtZW50YClcbiAgfVxuICBpZiAodGVzdG5ldHMubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuXG4gIH1cbiAgaWYgKHRlc3RuZXRzLmxlbmd0aCA9PT0gMSkge1xuICAgIHJldHVybiB0ZXN0bmV0c1swXVxuICB9XG4gIHRocm93IG5ldyBFcnJvcihgbW9yZSB0aGFuIG9uZSB0ZXN0bmV0IGZvciAke2dldE5ldHdvcmtOYW1lKG5ldHdvcmspfWApXG59XG5cbi8qKlxuICogQHBhcmFtIHtOZXR3b3JrfSBuZXR3b3JrXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBpZmYgbmV0d29yayBiaXRjb2luIG9yIHRlc3RuZXRcbiAqL1xuZnVuY3Rpb24gaXNCaXRjb2luIChuZXR3b3JrKSB7XG4gIHJldHVybiBnZXRNYWlubmV0KG5ldHdvcmspID09PSBuZXR3b3Jrcy5iaXRjb2luXG59XG5cbi8qKlxuICogQHBhcmFtIHtOZXR3b3JrfSBuZXR3b3JrXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBpZmYgbmV0d29yayBpcyBiaXRjb2luY2FzaCBvciBiaXRjb2luY2FzaFRlc3RuZXRcbiAqL1xuZnVuY3Rpb24gaXNCaXRjb2luQ2FzaCAobmV0d29yaykge1xuICByZXR1cm4gZ2V0TWFpbm5ldChuZXR3b3JrKSA9PT0gbmV0d29ya3MuYml0Y29pbmNhc2hcbn1cblxuLyoqXG4gKiBAcGFyYW0ge05ldHdvcmt9IG5ldHdvcmtcbiAqIEByZXR1cm5zIHtib29sZWFufSB0cnVlIGlmZiBuZXR3b3JrIGlzIGJpdGNvaW5nb2xkXG4gKi9cbmZ1bmN0aW9uIGlzQml0Y29pbkdvbGQgKG5ldHdvcmspIHtcbiAgcmV0dXJuIGdldE1haW5uZXQobmV0d29yaykgPT09IG5ldHdvcmtzLmJpdGNvaW5nb2xkXG59XG5cbi8qKlxuICogQHBhcmFtIHtOZXR3b3JrfSBuZXR3b3JrXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBpZmYgbmV0d29yayBpcyBiaXRjb2luc3Ygb3IgYml0Y29pbnN2VGVzdG5ldFxuICovXG5mdW5jdGlvbiBpc0JpdGNvaW5TViAobmV0d29yaykge1xuICByZXR1cm4gZ2V0TWFpbm5ldChuZXR3b3JrKSA9PT0gbmV0d29ya3MuYml0Y29pbnN2XG59XG5cbi8qKlxuICogQHBhcmFtIHtOZXR3b3JrfSBuZXR3b3JrXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBpZmYgbmV0d29yayBpcyBkYXNoIG9yIGRhc2hUZXN0XG4gKi9cbmZ1bmN0aW9uIGlzRGFzaCAobmV0d29yaykge1xuICByZXR1cm4gZ2V0TWFpbm5ldChuZXR3b3JrKSA9PT0gbmV0d29ya3MuZGFzaFxufVxuXG4vKipcbiAqIEBwYXJhbSB7TmV0d29ya30gbmV0d29ya1xuICogQHJldHVybnMge2Jvb2xlYW59IHRydWUgaWZmIG5ldHdvcmsgaXMgbGl0ZWNvaW4gb3IgbGl0ZWNvaW5UZXN0XG4gKi9cbmZ1bmN0aW9uIGlzTGl0ZWNvaW4gKG5ldHdvcmspIHtcbiAgcmV0dXJuIGdldE1haW5uZXQobmV0d29yaykgPT09IG5ldHdvcmtzLmxpdGVjb2luXG59XG5cbi8qKlxuICogQHBhcmFtIHtOZXR3b3JrfSBuZXR3b3JrXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBpZmYgbmV0d29yayBpcyB6Y2FzaCBvciB6Y2FzaFRlc3RcbiAqL1xuZnVuY3Rpb24gaXNaY2FzaCAobmV0d29yaykge1xuICByZXR1cm4gZ2V0TWFpbm5ldChuZXR3b3JrKSA9PT0gbmV0d29ya3MuemNhc2hcbn1cblxuLyoqXG4gKiBAcGFyYW0ge05ldHdvcmt9IG5ldHdvcmtcbiAqIEByZXR1cm5zIHtib29sZWFufSByZXR1cm5zIHRydWUgaWZmIG5ldHdvcmsgaXMgYW55IG9mIHRoZSBuZXR3b3JrIHN0YXRlZCBpbiB0aGUgYXJndW1lbnRcbiAqL1xuY29uc3QgaXNWYWxpZE5ldHdvcmsgPSB0eXBlZm9yY2Uub25lT2YoXG4gIGlzQml0Y29pbixcbiAgaXNCaXRjb2luQ2FzaCxcbiAgaXNCaXRjb2luR29sZCxcbiAgaXNCaXRjb2luU1YsXG4gIGlzRGFzaCxcbiAgaXNMaXRlY29pbixcbiAgaXNaY2FzaFxuKVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgQlRDOiBuZXR3b3Jrcy5iaXRjb2luLmNvaW4sXG4gIEJDSDogbmV0d29ya3MuYml0Y29pbmNhc2guY29pbixcbiAgQlNWOiBuZXR3b3Jrcy5iaXRjb2luc3YuY29pbixcbiAgQlRHOiBuZXR3b3Jrcy5iaXRjb2luZ29sZC5jb2luLFxuICBEQVNIOiBuZXR3b3Jrcy5kYXNoLmNvaW4sXG4gIExUQzogbmV0d29ya3MubGl0ZWNvaW4uY29pbixcbiAgWkVDOiBuZXR3b3Jrcy56Y2FzaC5jb2luLFxuXG4gIGdldE5ldHdvcmtMaXN0LFxuICBnZXROZXR3b3JrTmFtZSxcblxuICBnZXRNYWlubmV0LFxuICBpc01haW5uZXQsXG4gIGdldFRlc3RuZXQsXG4gIGlzVGVzdG5ldCxcbiAgaXNTYW1lQ29pbixcblxuICBpc0JpdGNvaW4sXG4gIGlzQml0Y29pbkNhc2gsXG4gIGlzQml0Y29pbkdvbGQsXG4gIGlzQml0Y29pblNWLFxuICBpc0Rhc2gsXG4gIGlzTGl0ZWNvaW4sXG4gIGlzWmNhc2gsXG5cbiAgaXNWYWxpZE5ldHdvcmssXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZDogdXNlIGlzVmFsaWROZXR3b3JrXG4gICAqL1xuICBpc1ZhbGlkQ29pbjogaXNWYWxpZE5ldHdvcmtcbn1cbiJdfQ==
exports.isValidNetwork = typeforce.oneOf(isBitcoin, isBitcoinCash, isBitcoinGold, isBitcoinSV, isDash, isLitecoin, isZcash);
/** @deprecated */
exports.BCH = networkTypes_1.coins.BCH;
/** @deprecated */
exports.BSV = networkTypes_1.coins.BSV;
/** @deprecated */
exports.BTC = networkTypes_1.coins.BTC;
/** @deprecated */
exports.BTG = networkTypes_1.coins.BTG;
/** @deprecated */
exports.DASH = networkTypes_1.coins.DASH;
/** @deprecated */
exports.LTC = networkTypes_1.coins.LTC;
/** @deprecated */
exports.ZEC = networkTypes_1.coins.ZEC;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29pbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29pbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7O0dBRUc7QUFDSCx1Q0FBdUM7QUFDdkMsaURBQWdEO0FBRWhELE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUV2Qzs7R0FFRztBQUNILFNBQWdCLGNBQWM7SUFDNUIsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDdkQsQ0FBQztBQUZELHdDQUVDO0FBRUQ7Ozs7R0FJRztBQUNILFNBQWdCLGNBQWMsQ0FBQyxPQUFnQjtJQUM3QyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssT0FBTyxDQUFDLENBQUM7QUFDcEUsQ0FBQztBQUZELHdDQUVDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsVUFBVSxDQUFDLE9BQWdCO0lBQ3pDLFFBQVEsT0FBTyxFQUFFO1FBQ2YsS0FBSyxRQUFRLENBQUMsT0FBTyxDQUFDO1FBQ3RCLEtBQUssUUFBUSxDQUFDLE9BQU87WUFDbkIsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUFDO1FBRTFCLEtBQUssUUFBUSxDQUFDLFdBQVcsQ0FBQztRQUMxQixLQUFLLFFBQVEsQ0FBQyxrQkFBa0I7WUFDOUIsT0FBTyxRQUFRLENBQUMsV0FBVyxDQUFDO1FBRTlCLEtBQUssUUFBUSxDQUFDLFdBQVcsQ0FBQztRQUMxQixLQUFLLFFBQVEsQ0FBQyxrQkFBa0I7WUFDOUIsT0FBTyxRQUFRLENBQUMsV0FBVyxDQUFDO1FBRTlCLEtBQUssUUFBUSxDQUFDLFNBQVMsQ0FBQztRQUN4QixLQUFL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a0JBQWtCO0FBQ0wsUUFBQSxJQUFJLEdBQUcsb0JBQUssQ0FBQyxJQUFJLENBQUM7QUFDL0Isa0JBQWtCO0FBQ0wsUUFBQSxHQUFHLEdBQUcsb0JBQUssQ0FBQyxHQUFHLENBQUM7QUFDN0Isa0JBQWtCO0FBQ0wsUUFBQSxHQUFHLEdBQUcsb0JBQUssQ0FBQyxHQUFHLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwcmV0dGllclxuICovXG5pbXBvcnQgKiBhcyBuZXR3b3JrcyBmcm9tICcuL25ldHdvcmtzJztcbmltcG9ydCB7IGNvaW5zLCBOZXR3b3JrIH0gZnJvbSAnLi9uZXR3b3JrVHlwZXMnO1xuXG5jb25zdCB0eXBlZm9yY2UgPSByZXF1aXJlKCd0eXBlZm9yY2UnKTtcblxuLyoqXG4gKiBAcmV0dXJucyB7TmV0d29ya1tdfSBhbGwga25vd24gbmV0d29ya3MgYXMgYXJyYXlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldE5ldHdvcmtMaXN0KCk6IE5ldHdvcmtbXSB7XG4gIHJldHVybiBPYmplY3Qua2V5cyhuZXR3b3JrcykubWFwKChuKSA9PiBuZXR3b3Jrc1tuXSk7XG59XG5cbi8qKlxuICogQHBhcmFtIHtOZXR3b3JrfSBuZXR3b3JrXG4gKiBAcmV0dXJucyB7c3RyaW5nfSB0aGUgbmFtZSBvZiB0aGUgbmV0d29yay4gUmV0dXJucyB1bmRlZmluZWQgaWYgbmV0d29yayBpcyBub3QgYSB2YWx1ZVxuICogICAgICAgICAgICAgICAgICAgb2YgYG5ldHdvcmtzYFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0TmV0d29ya05hbWUobmV0d29yazogTmV0d29yayk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIHJldHVybiBPYmplY3Qua2V5cyhuZXR3b3JrcykuZmluZCgobikgPT4gbmV0d29ya3Nbbl0gPT09IG5ldHdvcmspO1xufVxuXG4vKipcbiAqIEBwYXJhbSB7TmV0d29ya30gbmV0d29ya1xuICogQHJldHVybnMge09iamVjdH0gdGhlIG1haW5uZXQgY29ycmVzcG9uZGluZyB0byBhIHRlc3RuZXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldE1haW5uZXQobmV0d29yazogTmV0d29yayk6IE5ldHdvcmsge1xuICBzd2l0Y2ggKG5ldHdvcmspIHtcbiAgICBjYXNlIG5ldHdvcmtzLmJpdGNvaW46XG4gICAgY2FzZSBuZXR3b3Jrcy50ZXN0bmV0OlxuICAgICAgcmV0dXJuIG5ldHdvcmtzLmJpdGNvaW47XG5cbiAgICBjYXNlIG5ldHdvcmtzLmJpdGNvaW5jYXNoOlxuICAgIGNhc2UgbmV0d29ya3MuYml0Y29pbmNhc2hUZXN0bmV0OlxuICAgICAgcmV0dXJuIG5ldHdvcmtzLmJpdGNvaW5jYXNoO1xuXG4gICAgY2FzZSBuZXR3b3Jrcy5iaXRjb2luZ29sZDpcbiAgICBjYXNlIG5ldHdvcmtzLmJpdGNvaW5nb2xkVGVzdG5ldDpcbiAgICAgIHJldHVybiBuZXR3b3Jrcy5iaXRjb2luZ29sZDtcblxuICAgIGNhc2UgbmV0d29ya3MuYml0Y29pbnN2OlxuICAgIGNhc2UgbmV0d29ya3MuYml0Y29pbnN2VGVzdG5ldDpcbiAgICAgIHJldHVybiBuZXR3b3Jrcy5iaXRjb2luc3Y7XG5cbiAgICBjYXNlIG5ldHdvcmtzLmRhc2g6XG4gICAgY2FzZSBuZXR3b3Jrcy5kYXNoVGVzdDpcbiAgICAgIHJldHVybiBuZXR3b3Jrcy5kYXNoO1xuXG4gICAgY2FzZSBuZXR3b3Jrcy5saXRlY29pbjpcbiAgICBjYXNlIG5ldHdvcmtzLmxpdGVjb2luVGVzdDpcbiAgICAgIHJldHVybiBuZXR3b3Jrcy5saXRlY29pbjtcblxuICAgIGNhc2UgbmV0d29ya3MuemNhc2g6XG4gICAgY2FzZSBuZXR3b3Jrcy56Y2FzaFRlc3Q6XG4gICAgICByZXR1cm4gbmV0d29ya3MuemNhc2g7XG4gIH1cbiAgdGhyb3cgbmV3IFR5cGVFcnJvcihgaW52YWxpZCBuZXR3b3JrYCk7XG59XG5cbi8qKlxuICogQHBhcmFtIHtOZXR3b3JrfSBuZXR3b3JrXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBpZmYgbmV0d29yayBpcyBhIG1haW5uZXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzTWFpbm5ldChuZXR3b3JrOiBOZXR3b3JrKTogYm9vbGVhbiB7XG4gIHJldHVybiBnZXRNYWlubmV0KG5ldHdvcmspID09PSBuZXR3b3JrO1xufVxuXG4vKipcbiAqIEBwYXJhbSB7TmV0d29ya30gbmV0d29ya1xuICogQHJldHVybnMge2Jvb2xlYW59IHRydWUgaWZmIG5ldHdvcmsgaXMgYSB0ZXN0bmV0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1Rlc3RuZXQobmV0d29yazogTmV0d29yayk6IGJvb2xlYW4ge1xuICByZXR1cm4gZ2V0TWFpbm5ldChuZXR3b3JrKSAhPT0gbmV0d29yaztcbn1cblxuLyoqXG4gKlxuICogQHBhcmFtIHtOZXR3b3JrfSBuZXR3b3JrXG4gKiBAcGFyYW0ge05ldHdvcmt9IG90aGVyTmV0d29ya1xuICogQHJldHVybnMge2Jvb2xlYW59IHRydWUgaWZmIGJvdGggbmV0d29ya3MgYXJlIGZvciB0aGUgc2FtZSBjb2luXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1NhbWVDb2luKG5ldHdvcms6IE5ldHdvcmssIG90aGVyTmV0d29yazogTmV0d29yaykge1xuICByZXR1cm4gZ2V0TWFpbm5ldChuZXR3b3JrKSA9PT0gZ2V0TWFpbm5ldChvdGhlck5ldHdvcmspO1xufVxuXG5jb25zdCBtYWlubmV0cyA9IGdldE5ldHdvcmtMaXN0KCkuZmlsdGVyKGlzTWFpbm5ldCk7XG5jb25zdCB0ZXN0bmV0cyA9IGdldE5ldHdvcmtMaXN0KCkuZmlsdGVyKGlzVGVzdG5ldCk7XG5cbi8qKlxuICogTWFwIHdoZXJlIGtleXMgYXJlIG1haW5uZXQgbmV0d29ya3MgYW5kIHZhbHVlcyBhcmUgdGVzdG5ldCBuZXR3b3Jrc1xuICogQHR5cGUge01hcDxOZXR3b3JrLCBOZXR3b3JrW10+fVxuICovXG5jb25zdCBtYWlubmV0VGVzdG5ldFBhaXJzID0gbmV3IE1hcChtYWlubmV0cy5tYXAoKG0pID0+IFttLCB0ZXN0bmV0cy5maWx0ZXIoKHQpID0+IGdldE1haW5uZXQodCkgPT09IG0pXSkpO1xuXG4vKipcbiAqIEBwYXJhbSB7TmV0d29ya30gbmV0d29ya1xuICogQHJldHVybnMge05ldHdvcmt8dW5kZWZpbmVkfSAtIFRoZSB0ZXN0bmV0IGNvcnJlc3BvbmRpbmcgdG8gYSBtYWlubmV0LlxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJucyB1bmRlZmluZWQgaWYgYSBuZXR3b3JrIGhhcyBubyB0ZXN0bmV0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0VGVzdG5ldChuZXR3b3JrOiBOZXR3b3JrKTogTmV0d29yayB8IHVuZGVmaW5lZCB7XG4gIGlmIChpc1Rlc3RuZXQobmV0d29yaykpIHtcbiAgICByZXR1cm4gbmV0d29yaztcbiAgfVxuICBjb25zdCB0ZXN0bmV0cyA9IG1haW5uZXRUZXN0bmV0UGFpcnMuZ2V0KG5ldHdvcmspO1xuICBpZiAodGVzdG5ldHMgPT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgaW52YWxpZCBhcmd1bWVudGApO1xuICB9XG4gIGlmICh0ZXN0bmV0cy5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm47XG4gIH1cbiAgaWYgKHRlc3RuZXRzLmxlbmd0aCA9PT0gMSkge1xuICAgIHJldHVybiB0ZXN0bmV0c1swXTtcbiAgfVxuICB0aHJvdyBuZXcgRXJyb3IoYG1vcmUgdGhhbiBvbmUgdGVzdG5ldCBmb3IgJHtnZXROZXR3b3JrTmFtZShuZXR3b3JrKX1gKTtcbn1cblxuLyoqXG4gKiBAcGFyYW0ge05ldHdvcmt9IG5ldHdvcmtcbiAqIEByZXR1cm5zIHtib29sZWFufSB0cnVlIGlmZiBuZXR3b3JrIGJpdGNvaW4gb3IgdGVzdG5ldFxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNCaXRjb2luKG5ldHdvcms6IE5ldHdvcmspIHtcbiAgcmV0dXJuIGdldE1haW5uZXQobmV0d29yaykgPT09IG5ldHdvcmtzLmJpdGNvaW47XG59XG5cbi8qKlxuICogQHBhcmFtIHtOZXR3b3JrfSBuZXR3b3JrXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBpZmYgbmV0d29yayBpcyBiaXRjb2luY2FzaCBvciBiaXRjb2luY2FzaFRlc3RuZXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzQml0Y29pbkNhc2gobmV0d29yazogTmV0d29yaykge1xuICByZXR1cm4gZ2V0TWFpbm5ldChuZXR3b3JrKSA9PT0gbmV0d29ya3MuYml0Y29pbmNhc2g7XG59XG5cbi8qKlxuICogQHBhcmFtIHtOZXR3b3JrfSBuZXR3b3JrXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBpZmYgbmV0d29yayBpcyBiaXRjb2luZ29sZFxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNCaXRjb2luR29sZChuZXR3b3JrOiBOZXR3b3JrKSB7XG4gIHJldHVybiBnZXRNYWlubmV0KG5ldHdvcmspID09PSBuZXR3b3Jrcy5iaXRjb2luZ29sZDtcbn1cblxuLyoqXG4gKiBAcGFyYW0ge05ldHdvcmt9IG5ldHdvcmtcbiAqIEByZXR1cm5zIHtib29sZWFufSB0cnVlIGlmZiBuZXR3b3JrIGlzIGJpdGNvaW5zdiBvciBiaXRjb2luc3ZUZXN0bmV0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0JpdGNvaW5TVihuZXR3b3JrOiBOZXR3b3JrKSB7XG4gIHJldHVybiBnZXRNYWlubmV0KG5ldHdvcmspID09PSBuZXR3b3Jrcy5iaXRjb2luc3Y7XG59XG5cbi8qKlxuICogQHBhcmFtIHtOZXR3b3JrfSBuZXR3b3JrXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBpZmYgbmV0d29yayBpcyBkYXNoIG9yIGRhc2hUZXN0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0Rhc2gobmV0d29yazogTmV0d29yaykge1xuICByZXR1cm4gZ2V0TWFpbm5ldChuZXR3b3JrKSA9PT0gbmV0d29ya3MuZGFzaDtcbn1cblxuLyoqXG4gKiBAcGFyYW0ge05ldHdvcmt9IG5ldHdvcmtcbiAqIEByZXR1cm5zIHtib29sZWFufSB0cnVlIGlmZiBuZXR3b3JrIGlzIGxpdGVjb2luIG9yIGxpdGVjb2luVGVzdFxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNMaXRlY29pbihuZXR3b3JrOiBOZXR3b3JrKSB7XG4gIHJldHVybiBnZXRNYWlubmV0KG5ldHdvcmspID09PSBuZXR3b3Jrcy5saXRlY29pbjtcbn1cblxuLyoqXG4gKiBAcGFyYW0ge05ldHdvcmt9IG5ldHdvcmtcbiAqIEByZXR1cm5zIHtib29sZWFufSB0cnVlIGlmZiBuZXR3b3JrIGlzIHpjYXNoIG9yIHpjYXNoVGVzdFxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNaY2FzaChuZXR3b3JrKSB7XG4gIHJldHVybiBnZXRNYWlubmV0KG5ldHdvcmspID09PSBuZXR3b3Jrcy56Y2FzaDtcbn1cblxuLyoqXG4gKiBAcGFyYW0ge05ldHdvcmt9IG5ldHdvcmtcbiAqIEByZXR1cm5zIHtib29sZWFufSByZXR1cm5zIHRydWUgaWZmIG5ldHdvcmsgaXMgYW55IG9mIHRoZSBuZXR3b3JrIHN0YXRlZCBpbiB0aGUgYXJndW1lbnRcbiAqL1xuZXhwb3J0IGNvbnN0IGlzVmFsaWROZXR3b3JrID0gdHlwZWZvcmNlLm9uZU9mKFxuICBpc0JpdGNvaW4sXG4gIGlzQml0Y29pbkNhc2gsXG4gIGlzQml0Y29pbkdvbGQsXG4gIGlzQml0Y29pblNWLFxuICBpc0Rhc2gsXG4gIGlzTGl0ZWNvaW4sXG4gIGlzWmNhc2hcbik7XG5cbi8qKiBAZGVwcmVjYXRlZCAqL1xuZXhwb3J0IGNvbnN0IEJDSCA9IGNvaW5zLkJDSDtcbi8qKiBAZGVwcmVjYXRlZCAqL1xuZXhwb3J0IGNvbnN0IEJTViA9IGNvaW5zLkJTVjtcbi8qKiBAZGVwcmVjYXRlZCAqL1xuZXhwb3J0IGNvbnN0IEJUQyA9IGNvaW5zLkJUQztcbi8qKiBAZGVwcmVjYXRlZCAqL1xuZXhwb3J0IGNvbnN0IEJURyA9IGNvaW5zLkJURztcbi8qKiBAZGVwcmVjYXRlZCAqL1xuZXhwb3J0IGNvbnN0IERBU0ggPSBjb2lucy5EQVNIO1xuLyoqIEBkZXByZWNhdGVkICovXG5leHBvcnQgY29uc3QgTFRDID0gY29pbnMuTFRDO1xuLyoqIEBkZXByZWNhdGVkICovXG5leHBvcnQgY29uc3QgWkVDID0gY29pbnMuWkVDO1xuIl19

@@ -41,3 +41,3 @@ var baddress = require('./address');

if (!this.__Q && this.d) {
var qBuf = fastcurve.publicKeyCreate(this.d.toBuffer(32), false);
const qBuf = fastcurve.publicKeyCreate(this.d.toBuffer(32), false);
this.__Q = qBuf ? ecurve.Point.decodeFrom(curve, qBuf) : secp256k1.G.multiply(this.d);

@@ -138,2 +138,2 @@ }

module.exports = ECPair;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNwYWlyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2VjcGFpci5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxJQUFJLFFBQVEsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUE7QUFDbkMsSUFBSSxPQUFPLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFBO0FBQ2pDLElBQUksS0FBSyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQTtBQUM5QixJQUFJLFdBQVcsR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUE7QUFDeEMsSUFBSSxTQUFTLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFBO0FBQ3BDLElBQUksS0FBSyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQTtBQUM5QixJQUFJLEdBQUcsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7QUFFeEIsSUFBSSxRQUFRLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFBO0FBQ3BDLElBQUksVUFBVSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQTtBQUVoQyxJQUFJLE1BQU0sR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUE7QUFDOUIsSUFBSSxLQUFLLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQTtBQUM5QyxJQUFJLFNBQVMsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFBO0FBRTdCLElBQUksU0FBUyxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUV0QyxTQUFTLE1BQU0sQ0FBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLE9BQU87SUFDNUIsSUFBSSxPQUFPLEVBQUU7UUFDWCxTQUFTLENBQUM7WUFDUixVQUFVLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ3RDLE9BQU8sRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7U0FDcEMsRUFBRSxPQUFPLENBQUMsQ0FBQTtLQUNaO0lBRUQsT0FBTyxHQUFHLE9BQU8sSUFBSSxFQUFFLENBQUE7SUFFdkIsSUFBSSxDQUFDLEVBQUU7UUFDTCxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFBO1FBQzFFLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsK0NBQStDLENBQUMsQ0FBQTtRQUNuRyxJQUFJLENBQUM7WUFBRSxNQUFNLElBQUksU0FBUyxDQUFDLGdDQUFnQyxDQUFDLENBQUE7UUFFNUQsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUE7S0FDWDtTQUFNO1FBQ0wsU0FBUyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFFM0IsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUE7S0FDYjtJQUVELElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLFVBQVUsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQTtJQUM5RSxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQTtBQUNwRCxDQUFDO0FBRUQsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRTtJQUMzQyxHQUFHLEVBQUU7UUFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxFQUFFO1lBQ3ZCLElBQU0sSUFBSSxHQUFHLFNBQVMsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUE7WUFDbEUsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO1NBQ3RGO1FBRUQsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFBO0lBQ2pCLENBQUM7Q0FDRixDQUFDLENBQUE7QUFFRixNQUFNLENBQUMsbUJBQW1CLEdBQUcsVUFBVSxNQUFNLEVBQUUsT0FBTztJQUNwRCxJQUFJLENBQUMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFFbEQsT0FBTyxJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFO1FBQ3pCLFVBQVUsRUFBRSxDQUFDLENBQUMsVUFBVTtRQUN4QixPQUFPLEVBQUUsT0FBTztLQUNqQixDQUFDLENBQUE7QUFDSixDQUFDLENBQUE7QUFDRCxNQUFNLENBQUMsT0FBTyxHQUFHLFVBQVUsTUFBTSxFQUFFLE9BQU87SUFDeEMsSUFBSSxPQUFPLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUNoQyxJQUFJLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFBO0lBRTdCLG9CQUFvQjtJQUNwQixJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUU7UUFDeEIsT0FBTyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDO1lBQ2xDLE9BQU8sT0FBTyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUE7UUFDMUIsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUE7UUFFUixJQUFJLENBQUMsT0FBTztZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQTtRQUUxRCw2REFBNkQ7S0FDNUQ7U0FBTTtRQUNMLE9BQU8sR0FBRyxPQUFPLElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQTtRQUVyQyxJQUFJLE9BQU8sS0FBSyxPQUFPLENBQUMsR0FBRztZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQTtLQUN4RTtJQUVELElBQUksQ0FBQyxHQUFHLFVBQVUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBRWpELE9BQU8sSUFBSSxNQUFNLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRTtRQUN6QixVQUFVLEVBQUUsT0FBTyxDQUFDLFVBQVU7UUFDOUIsT0FBTyxFQUFFLE9BQU87S0FDakIsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBO0FBRUQsTUFBTSxDQUFDLFVBQVUsR0FBRyxVQUFVLE9BQU87SUFDbkMsT0FBTyxHQUFHLE9BQU8sSUFBSSxFQUFFLENBQUE7SUFFdkIsSUFBSSxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsSUFBSSxXQUFXLENBQUE7SUFFcEMsSUFBSSxDQUFDLENBQUE7SUFDTCxHQUFHO1FBQ0QsSUFBSSxNQUFNLEdBQUcsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFBO1FBQ3BCLFNBQVMsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFBO1FBRXJDLENBQUMsR0FBRyxVQUFVLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0tBQ2xDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUM7SUFFMUQsT0FBTyxJQUFJLE1BQU0sQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFBO0FBQ3JDLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxTQUFTLENBQUMsVUFBVSxHQUFHO0lBQzVCLE9BQU8sUUFBUSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFBO0FBQ3pHLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxTQUFTLENBQUMsVUFBVSxHQUFHO0lBQzVCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQTtBQUNyQixDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLGtCQUFrQixHQUFHO0lBQ3BDLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFBO0FBQzNDLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxHQUFHLFVBQVUsSUFBSTtJQUNwQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUE7SUFFbkQsSUFBSSxHQUFHLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ3RDLElBQUksR0FBRyxLQUFLLFNBQVM7UUFBRSxPQUFPLEdBQUcsQ0FBQTtJQUNqQyxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtBQUNqQyxDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRztJQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUE7SUFFbkQsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQTtBQUMzRSxDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxVQUFVLElBQUksRUFBRSxTQUFTO0lBQ2pELElBQUksT0FBTyxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFBO0lBQzFFLElBQUksT0FBTyxLQUFLLFNBQVM7UUFBRSxPQUFPLE9BQU8sQ0FBQTtJQUN6QyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFDOUMsQ0FBQyxDQUFBO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxvQkFBb0IsR0FBRyxVQUFVLE1BQU0sRUFBRSxPQUFPO0lBQ3JELHlEQUF5RDtJQUN6RCxJQUFJLE9BQU8sR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUN4QyxPQUFPLE9BQU8sQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUE7QUFDMUQsQ0FBQyxDQUFBO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxTQUFTLENBQUMsbUJBQW1CLEdBQUc7SUFDckMseURBQXlEO0lBQ3pELElBQUksT0FBTyxHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO0lBQ3hDLE9BQU8sT0FBTyxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxDQUFBO0FBQ2pELENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsidmFyIGJhZGRyZXNzID0gcmVxdWlyZSgnLi9hZGRyZXNzJylcbnZhciBiY3J5cHRvID0gcmVxdWlyZSgnLi9jcnlwdG8nKVxudmFyIGVjZHNhID0gcmVxdWlyZSgnLi9lY2RzYScpXG52YXIgcmFuZG9tQnl0ZXMgPSByZXF1aXJlKCdyYW5kb21ieXRlcycpXG52YXIgdHlwZWZvcmNlID0gcmVxdWlyZSgndHlwZWZvcmNlJylcbnZhciB0eXBlcyA9IHJlcXVpcmUoJy4vdHlwZXMnKVxudmFyIHdpZiA9IHJlcXVpcmUoJ3dpZicpXG5cbnZhciBORVRXT1JLUyA9IHJlcXVpcmUoJy4vbmV0d29ya3MnKVxudmFyIEJpZ0ludGVnZXIgPSByZXF1aXJlKCdiaWdpJylcblxudmFyIGVjdXJ2ZSA9IHJlcXVpcmUoJ2VjdXJ2ZScpXG52YXIgY3VydmUgPSBlY3VydmUuZ2V0Q3VydmVCeU5hbWUoJ3NlY3AyNTZrMScpXG52YXIgc2VjcDI1NmsxID0gZWNkc2EuX19jdXJ2ZVxuXG52YXIgZmFzdGN1cnZlID0gcmVxdWlyZSgnLi9mYXN0Y3VydmUnKVxuXG5mdW5jdGlvbiBFQ1BhaXIgKGQsIFEsIG9wdGlvbnMpIHtcbiAgaWYgKG9wdGlvbnMpIHtcbiAgICB0eXBlZm9yY2Uoe1xuICAgICAgY29tcHJlc3NlZDogdHlwZXMubWF5YmUodHlwZXMuQm9vbGVhbiksXG4gICAgICBuZXR3b3JrOiB0eXBlcy5tYXliZSh0eXBlcy5OZXR3b3JrKVxuICAgIH0sIG9wdGlvbnMpXG4gIH1cblxuICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fVxuXG4gIGlmIChkKSB7XG4gICAgaWYgKGQuc2lnbnVtKCkgPD0gMCkgdGhyb3cgbmV3IEVycm9yKCdQcml2YXRlIGtleSBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAwJylcbiAgICBpZiAoZC5jb21wYXJlVG8oc2VjcDI1NmsxLm4pID49IDApIHRocm93IG5ldyBFcnJvcignUHJpdmF0ZSBrZXkgbXVzdCBiZSBsZXNzIHRoYW4gdGhlIGN1cnZlIG9yZGVyJylcbiAgICBpZiAoUSkgdGhyb3cgbmV3IFR5cGVFcnJvcignVW5leHBlY3RlZCBwdWJsaWNLZXkgcGFyYW1ldGVyJylcblxuICAgIHRoaXMuZCA9IGRcbiAgfSBlbHNlIHtcbiAgICB0eXBlZm9yY2UodHlwZXMuRUNQb2ludCwgUSlcblxuICAgIHRoaXMuX19RID0gUVxuICB9XG5cbiAgdGhpcy5jb21wcmVzc2VkID0gb3B0aW9ucy5jb21wcmVzc2VkID09PSB1bmRlZmluZWQgPyB0cnVlIDogb3B0aW9ucy5jb21wcmVzc2VkXG4gIHRoaXMubmV0d29yayA9IG9wdGlvbnMubmV0d29yayB8fCBORVRXT1JLUy5iaXRjb2luXG59XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShFQ1BhaXIucHJvdG90eXBlLCAnUScsIHtcbiAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgaWYgKCF0aGlzLl9fUSAmJiB0aGlzLmQpIHtcbiAgICAgIGNvbnN0IHFCdWYgPSBmYXN0Y3VydmUucHVibGljS2V5Q3JlYXRlKHRoaXMuZC50b0J1ZmZlcigzMiksIGZhbHNlKVxuICAgICAgdGhpcy5fX1EgPSBxQnVmID8gZWN1cnZlLlBvaW50LmRlY29kZUZyb20oY3VydmUsIHFCdWYpIDogc2VjcDI1NmsxLkcubXVsdGlwbHkodGhpcy5kKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9fUVxuICB9XG59KVxuXG5FQ1BhaXIuZnJvbVB1YmxpY0tleUJ1ZmZlciA9IGZ1bmN0aW9uIChidWZmZXIsIG5ldHdvcmspIHtcbiAgdmFyIFEgPSBlY3VydmUuUG9pbnQuZGVjb2RlRnJvbShzZWNwMjU2azEsIGJ1ZmZlcilcblxuICByZXR1cm4gbmV3IEVDUGFpcihudWxsLCBRLCB7XG4gICAgY29tcHJlc3NlZDogUS5jb21wcmVzc2VkLFxuICAgIG5ldHdvcms6IG5ldHdvcmtcbiAgfSlcbn1cbkVDUGFpci5mcm9tV0lGID0gZnVuY3Rpb24gKHN0cmluZywgbmV0d29yaykge1xuICB2YXIgZGVjb2RlZCA9IHdpZi5kZWNvZGUoc3RyaW5nKVxuICB2YXIgdmVyc2lvbiA9IGRlY29kZWQudmVyc2lvblxuXG4gIC8vIGxpc3Qgb2YgbmV0d29ya3M/XG4gIGlmICh0eXBlcy5BcnJheShuZXR3b3JrKSkge1xuICAgIG5ldHdvcmsgPSBuZXR3b3JrLmZpbHRlcihmdW5jdGlvbiAoeCkge1xuICAgICAgcmV0dXJuIHZlcnNpb24gPT09IHgud2lmXG4gICAgfSkucG9wKClcblxuICAgIGlmICghbmV0d29yaykgdGhyb3cgbmV3IEVycm9yKCdVbmtub3duIG5ldHdvcmsgdmVyc2lvbicpXG5cbiAgLy8gb3RoZXJ3aXNlLCBhc3N1bWUgYSBuZXR3b3JrIG9iamVjdCAob3IgZGVmYXVsdCB0byBiaXRjb2luKVxuICB9IGVsc2Uge1xuICAgIG5ldHdvcmsgPSBuZXR3b3JrIHx8IE5FVFdPUktTLmJpdGNvaW5cblxuICAgIGlmICh2ZXJzaW9uICE9PSBuZXR3b3JrLndpZikgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIG5ldHdvcmsgdmVyc2lvbicpXG4gIH1cblxuICB2YXIgZCA9IEJpZ0ludGVnZXIuZnJvbUJ1ZmZlcihkZWNvZGVkLnByaXZhdGVLZXkpXG5cbiAgcmV0dXJuIG5ldyBFQ1BhaXIoZCwgbnVsbCwge1xuICAgIGNvbXByZXNzZWQ6IGRlY29kZWQuY29tcHJlc3NlZCxcbiAgICBuZXR3b3JrOiBuZXR3b3JrXG4gIH0pXG59XG5cbkVDUGFpci5tYWtlUmFuZG9tID0gZnVuY3Rpb24gKG9wdGlvbnMpIHtcbiAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge31cblxuICB2YXIgcm5nID0gb3B0aW9ucy5ybmcgfHwgcmFuZG9tQnl0ZXNcblxuICB2YXIgZFxuICBkbyB7XG4gICAgdmFyIGJ1ZmZlciA9IHJuZygzMilcbiAgICB0eXBlZm9yY2UodHlwZXMuQnVmZmVyMjU2Yml0LCBidWZmZXIpXG5cbiAgICBkID0gQmlnSW50ZWdlci5mcm9tQnVmZmVyKGJ1ZmZlcilcbiAgfSB3aGlsZSAoZC5zaWdudW0oKSA8PSAwIHx8IGQuY29tcGFyZVRvKHNlY3AyNTZrMS5uKSA+PSAwKVxuXG4gIHJldHVybiBuZXcgRUNQYWlyKGQsIG51bGwsIG9wdGlvbnMpXG59XG5cbkVDUGFpci5wcm90b3R5cGUuZ2V0QWRkcmVzcyA9IGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIGJhZGRyZXNzLnRvQmFzZTU4Q2hlY2soYmNyeXB0by5oYXNoMTYwKHRoaXMuZ2V0UHVibGljS2V5QnVmZmVyKCkpLCB0aGlzLmdldE5ldHdvcmsoKS5wdWJLZXlIYXNoKVxufVxuXG5FQ1BhaXIucHJvdG90eXBlLmdldE5ldHdvcmsgPSBmdW5jdGlvbiAoKSB7XG4gIHJldHVybiB0aGlzLm5ldHdvcmtcbn1cblxuRUNQYWlyLnByb3RvdHlwZS5nZXRQdWJsaWNLZXlCdWZmZXIgPSBmdW5jdGlvbiAoKSB7XG4gIHJldHVybiB0aGlzLlEuZ2V0RW5jb2RlZCh0aGlzLmNvbXByZXNzZWQpXG59XG5cbkVDUGFpci5wcm90b3R5cGUuc2lnbiA9IGZ1bmN0aW9uIChoYXNoKSB7XG4gIGlmICghdGhpcy5kKSB0aHJvdyBuZXcgRXJyb3IoJ01pc3NpbmcgcHJpdmF0ZSBrZXknKVxuXG4gIHZhciBzaWcgPSBmYXN0Y3VydmUuc2lnbihoYXNoLCB0aGlzLmQpXG4gIGlmIChzaWcgIT09IHVuZGVmaW5lZCkgcmV0dXJuIHNpZ1xuICByZXR1cm4gZWNkc2Euc2lnbihoYXNoLCB0aGlzLmQpXG59XG5cbkVDUGFpci5wcm90b3R5cGUudG9XSUYgPSBmdW5jdGlvbiAoKSB7XG4gIGlmICghdGhpcy5kKSB0aHJvdyBuZXcgRXJyb3IoJ01pc3NpbmcgcHJpdmF0ZSBrZXknKVxuXG4gIHJldHVybiB3aWYuZW5jb2RlKHRoaXMubmV0d29yay53aWYsIHRoaXMuZC50b0J1ZmZlcigzMiksIHRoaXMuY29tcHJlc3NlZClcbn1cblxuRUNQYWlyLnByb3RvdHlwZS52ZXJpZnkgPSBmdW5jdGlvbiAoaGFzaCwgc2lnbmF0dXJlKSB7XG4gIHZhciBmYXN0c2lnID0gZmFzdGN1cnZlLnZlcmlmeShoYXNoLCBzaWduYXR1cmUsIHRoaXMuZ2V0UHVibGljS2V5QnVmZmVyKCkpXG4gIGlmIChmYXN0c2lnICE9PSB1bmRlZmluZWQpIHJldHVybiBmYXN0c2lnXG4gIHJldHVybiBlY2RzYS52ZXJpZnkoaGFzaCwgc2lnbmF0dXJlLCB0aGlzLlEpXG59XG5cbi8qKlxuICogQGRlcHJlY2F0ZWRcbiAqIFVzZSB7QHNlZSBrZXl1dGlsLnByaXZhdGVLZXlCdWZmZXJUb0VDUGFpcn0gaW5zdGVhZFxuICogV2lsbCBiZSByZW1vdmVkIGluIG5leHQgbWFqb3IgdmVyc2lvbiAoQkxPQ0stMjY3KVxuICovXG5FQ1BhaXIuZnJvbVByaXZhdGVLZXlCdWZmZXIgPSBmdW5jdGlvbiAoYnVmZmVyLCBuZXR3b3JrKSB7XG4gIC8vIHRvcGxldmVsIGltcG9ydCB1bmF2YWlsYWJsZSBkdWUgdG8gY2lyY3VsYXIgZGVwZW5kZW5jeVxuICB2YXIga2V5dXRpbCA9IHJlcXVpcmUoJy4vYml0Z28va2V5dXRpbCcpXG4gIHJldHVybiBrZXl1dGlsLnByaXZhdGVLZXlCdWZmZXJUb0VDUGFpcihidWZmZXIsIG5ldHdvcmspXG59XG5cbi8qKlxuICogQGRlcHJlY2F0ZWRcbiAqIFVzZSB7QHNlZSBrZXl1dGlsLnByaXZhdGVLZXlCdWZmZXJGcm9tRUNQYWlyfSBpbnN0ZWFkXG4gKiBXaWxsIGJlIHJlbW92ZWQgaW4gbmV4dCBtYWpvciB2ZXJzaW9uIChCTE9DSy0yNjcpXG4gKi9cbkVDUGFpci5wcm90b3R5cGUuZ2V0UHJpdmF0ZUtleUJ1ZmZlciA9IGZ1bmN0aW9uICgpIHtcbiAgLy8gdG9wbGV2ZWwgaW1wb3J0IHVuYXZhaWxhYmxlIGR1ZSB0byBjaXJjdWxhciBkZXBlbmRlbmN5XG4gIHZhciBrZXl1dGlsID0gcmVxdWlyZSgnLi9iaXRnby9rZXl1dGlsJylcbiAgcmV0dXJuIGtleXV0aWwucHJpdmF0ZUtleUJ1ZmZlckZyb21FQ1BhaXIodGhpcylcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBFQ1BhaXJcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNwYWlyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2VjcGFpci5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxJQUFJLFFBQVEsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUE7QUFDbkMsSUFBSSxPQUFPLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFBO0FBQ2pDLElBQUksS0FBSyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQTtBQUM5QixJQUFJLFdBQVcsR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUE7QUFDeEMsSUFBSSxTQUFTLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFBO0FBQ3BDLElBQUksS0FBSyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQTtBQUM5QixJQUFJLEdBQUcsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7QUFFeEIsSUFBSSxRQUFRLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFBO0FBQ3BDLElBQUksVUFBVSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQTtBQUVoQyxJQUFJLE1BQU0sR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUE7QUFDOUIsSUFBSSxLQUFLLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQTtBQUM5QyxJQUFJLFNBQVMsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFBO0FBRTdCLElBQUksU0FBUyxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUV0QyxTQUFTLE1BQU0sQ0FBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLE9BQU87SUFDNUIsSUFBSSxPQUFPLEVBQUU7UUFDWCxTQUFTLENBQUM7WUFDUixVQUFVLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ3RDLE9BQU8sRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7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Q0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFBO0lBQzFFLElBQUksT0FBTyxLQUFLLFNBQVM7UUFBRSxPQUFPLE9BQU8sQ0FBQTtJQUN6QyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFDOUMsQ0FBQyxDQUFBO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxvQkFBb0IsR0FBRyxVQUFVLE1BQU0sRUFBRSxPQUFPO0lBQ3JELHlEQUF5RDtJQUN6RCxJQUFJLE9BQU8sR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUN4QyxPQUFPLE9BQU8sQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUE7QUFDMUQsQ0FBQyxDQUFBO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxTQUFTLENBQUMsbUJBQW1CLEdBQUc7SUFDckMseURBQXlEO0lBQ3pELElBQUksT0FBTyxHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO0lBQ3hDLE9BQU8sT0FBTyxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxDQUFBO0FBQ2pELENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsidmFyIGJhZGRyZXNzID0gcmVxdWlyZSgnLi9hZGRyZXNzJylcbnZhciBiY3J5cHRvID0gcmVxdWlyZSgnLi9jcnlwdG8nKVxudmFyIGVjZHNhID0gcmVxdWlyZSgnLi9lY2RzYScpXG52YXIgcmFuZG9tQnl0ZXMgPSByZXF1aXJlKCdyYW5kb21ieXRlcycpXG52YXIgdHlwZWZvcmNlID0gcmVxdWlyZSgndHlwZWZvcmNlJylcbnZhciB0eXBlcyA9IHJlcXVpcmUoJy4vdHlwZXMnKVxudmFyIHdpZiA9IHJlcXVpcmUoJ3dpZicpXG5cbnZhciBORVRXT1JLUyA9IHJlcXVpcmUoJy4vbmV0d29ya3MnKVxudmFyIEJpZ0ludGVnZXIgPSByZXF1aXJlKCdiaWdpJylcblxudmFyIGVjdXJ2ZSA9IHJlcXVpcmUoJ2VjdXJ2ZScpXG52YXIgY3VydmUgPSBlY3VydmUuZ2V0Q3VydmVCeU5hbWUoJ3NlY3AyNTZrMScpXG52YXIgc2VjcDI1NmsxID0gZWNkc2EuX19jdXJ2ZVxuXG52YXIgZmFzdGN1cnZlID0gcmVxdWlyZSgnLi9mYXN0Y3VydmUnKVxuXG5mdW5jdGlvbiBFQ1BhaXIgKGQsIFEsIG9wdGlvbnMpIHtcbiAgaWYgKG9wdGlvbnMpIHtcbiAgICB0eXBlZm9yY2Uoe1xuICAgICAgY29tcHJlc3NlZDogdHlwZXMubWF5YmUodHlwZXMuQm9vbGVhbiksXG4gICAgICBuZXR3b3JrOiB0eXBlcy5tYXliZSh0eXBlcy5OZXR3b3JrKVxuICAgIH0sIG9wdGlvbnMpXG4gIH1cblxuICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fVxuXG4gIGlmIChkKSB7XG4gICAgaWYgKGQuc2lnbnVtKCkgPD0gMCkgdGhyb3cgbmV3IEVycm9yKCdQcml2YXRlIGtleSBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAwJylcbiAgICBpZiAoZC5jb21wYXJlVG8oc2VjcDI1NmsxLm4pID49IDApIHRocm93IG5ldyBFcnJvcignUHJpdmF0ZSBrZXkgbXVzdCBiZSBsZXNzIHRoYW4gdGhlIGN1cnZlIG9yZGVyJylcbiAgICBpZiAoUSkgdGhyb3cgbmV3IFR5cGVFcnJvcignVW5leHBlY3RlZCBwdWJsaWNLZXkgcGFyYW1ldGVyJylcblxuICAgIHRoaXMuZCA9IGRcbiAgfSBlbHNlIHtcbiAgICB0eXBlZm9yY2UodHlwZXMuRUNQb2ludCwgUSlcblxuICAgIHRoaXMuX19RID0gUVxuICB9XG5cbiAgdGhpcy5jb21wcmVzc2VkID0gb3B0aW9ucy5jb21wcmVzc2VkID09PSB1bmRlZmluZWQgPyB0cnVlIDogb3B0aW9ucy5jb21wcmVzc2VkXG4gIHRoaXMubmV0d29yayA9IG9wdGlvbnMubmV0d29yayB8fCBORVRXT1JLUy5iaXRjb2luXG59XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShFQ1BhaXIucHJvdG90eXBlLCAnUScsIHtcbiAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgaWYgKCF0aGlzLl9fUSAmJiB0aGlzLmQpIHtcbiAgICAgIGNvbnN0IHFCdWYgPSBmYXN0Y3VydmUucHVibGljS2V5Q3JlYXRlKHRoaXMuZC50b0J1ZmZlcigzMiksIGZhbHNlKVxuICAgICAgdGhpcy5fX1EgPSBxQnVmID8gZWN1cnZlLlBvaW50LmRlY29kZUZyb20oY3VydmUsIHFCdWYpIDogc2VjcDI1NmsxLkcubXVsdGlwbHkodGhpcy5kKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9fUVxuICB9XG59KVxuXG5FQ1BhaXIuZnJvbVB1YmxpY0tleUJ1ZmZlciA9IGZ1bmN0aW9uIChidWZmZXIsIG5ldHdvcmspIHtcbiAgdmFyIFEgPSBlY3VydmUuUG9pbnQuZGVjb2RlRnJvbShzZWNwMjU2azEsIGJ1ZmZlcilcblxuICByZXR1cm4gbmV3IEVDUGFpcihudWxsLCBRLCB7XG4gICAgY29tcHJlc3NlZDogUS5jb21wcmVzc2VkLFxuICAgIG5ldHdvcms6IG5ldHdvcmtcbiAgfSlcbn1cbkVDUGFpci5mcm9tV0lGID0gZnVuY3Rpb24gKHN0cmluZywgbmV0d29yaykge1xuICB2YXIgZGVjb2RlZCA9IHdpZi5kZWNvZGUoc3RyaW5nKVxuICB2YXIgdmVyc2lvbiA9IGRlY29kZWQudmVyc2lvblxuXG4gIC8vIGxpc3Qgb2YgbmV0d29ya3M/XG4gIGlmICh0eXBlcy5BcnJheShuZXR3b3JrKSkge1xuICAgIG5ldHdvcmsgPSBuZXR3b3JrLmZpbHRlcihmdW5jdGlvbiAoeCkge1xuICAgICAgcmV0dXJuIHZlcnNpb24gPT09IHgud2lmXG4gICAgfSkucG9wKClcblxuICAgIGlmICghbmV0d29yaykgdGhyb3cgbmV3IEVycm9yKCdVbmtub3duIG5ldHdvcmsgdmVyc2lvbicpXG5cbiAgLy8gb3RoZXJ3aXNlLCBhc3N1bWUgYSBuZXR3b3JrIG9iamVjdCAob3IgZGVmYXVsdCB0byBiaXRjb2luKVxuICB9IGVsc2Uge1xuICAgIG5ldHdvcmsgPSBuZXR3b3JrIHx8IE5FVFdPUktTLmJpdGNvaW5cblxuICAgIGlmICh2ZXJzaW9uICE9PSBuZXR3b3JrLndpZikgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIG5ldHdvcmsgdmVyc2lvbicpXG4gIH1cblxuICB2YXIgZCA9IEJpZ0ludGVnZXIuZnJvbUJ1ZmZlcihkZWNvZGVkLnByaXZhdGVLZXkpXG5cbiAgcmV0dXJuIG5ldyBFQ1BhaXIoZCwgbnVsbCwge1xuICAgIGNvbXByZXNzZWQ6IGRlY29kZWQuY29tcHJlc3NlZCxcbiAgICBuZXR3b3JrOiBuZXR3b3JrXG4gIH0pXG59XG5cbkVDUGFpci5tYWtlUmFuZG9tID0gZnVuY3Rpb24gKG9wdGlvbnMpIHtcbiAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge31cblxuICB2YXIgcm5nID0gb3B0aW9ucy5ybmcgfHwgcmFuZG9tQnl0ZXNcblxuICB2YXIgZFxuICBkbyB7XG4gICAgdmFyIGJ1ZmZlciA9IHJuZygzMilcbiAgICB0eXBlZm9yY2UodHlwZXMuQnVmZmVyMjU2Yml0LCBidWZmZXIpXG5cbiAgICBkID0gQmlnSW50ZWdlci5mcm9tQnVmZmVyKGJ1ZmZlcilcbiAgfSB3aGlsZSAoZC5zaWdudW0oKSA8PSAwIHx8IGQuY29tcGFyZVRvKHNlY3AyNTZrMS5uKSA+PSAwKVxuXG4gIHJldHVybiBuZXcgRUNQYWlyKGQsIG51bGwsIG9wdGlvbnMpXG59XG5cbkVDUGFpci5wcm90b3R5cGUuZ2V0QWRkcmVzcyA9IGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIGJhZGRyZXNzLnRvQmFzZTU4Q2hlY2soYmNyeXB0by5oYXNoMTYwKHRoaXMuZ2V0UHVibGljS2V5QnVmZmVyKCkpLCB0aGlzLmdldE5ldHdvcmsoKS5wdWJLZXlIYXNoKVxufVxuXG5FQ1BhaXIucHJvdG90eXBlLmdldE5ldHdvcmsgPSBmdW5jdGlvbiAoKSB7XG4gIHJldHVybiB0aGlzLm5ldHdvcmtcbn1cblxuRUNQYWlyLnByb3RvdHlwZS5nZXRQdWJsaWNLZXlCdWZmZXIgPSBmdW5jdGlvbiAoKSB7XG4gIHJldHVybiB0aGlzLlEuZ2V0RW5jb2RlZCh0aGlzLmNvbXByZXNzZWQpXG59XG5cbkVDUGFpci5wcm90b3R5cGUuc2lnbiA9IGZ1bmN0aW9uIChoYXNoKSB7XG4gIGlmICghdGhpcy5kKSB0aHJvdyBuZXcgRXJyb3IoJ01pc3NpbmcgcHJpdmF0ZSBrZXknKVxuXG4gIHZhciBzaWcgPSBmYXN0Y3VydmUuc2lnbihoYXNoLCB0aGlzLmQpXG4gIGlmIChzaWcgIT09IHVuZGVmaW5lZCkgcmV0dXJuIHNpZ1xuICByZXR1cm4gZWNkc2Euc2lnbihoYXNoLCB0aGlzLmQpXG59XG5cbkVDUGFpci5wcm90b3R5cGUudG9XSUYgPSBmdW5jdGlvbiAoKSB7XG4gIGlmICghdGhpcy5kKSB0aHJvdyBuZXcgRXJyb3IoJ01pc3NpbmcgcHJpdmF0ZSBrZXknKVxuXG4gIHJldHVybiB3aWYuZW5jb2RlKHRoaXMubmV0d29yay53aWYsIHRoaXMuZC50b0J1ZmZlcigzMiksIHRoaXMuY29tcHJlc3NlZClcbn1cblxuRUNQYWlyLnByb3RvdHlwZS52ZXJpZnkgPSBmdW5jdGlvbiAoaGFzaCwgc2lnbmF0dXJlKSB7XG4gIHZhciBmYXN0c2lnID0gZmFzdGN1cnZlLnZlcmlmeShoYXNoLCBzaWduYXR1cmUsIHRoaXMuZ2V0UHVibGljS2V5QnVmZmVyKCkpXG4gIGlmIChmYXN0c2lnICE9PSB1bmRlZmluZWQpIHJldHVybiBmYXN0c2lnXG4gIHJldHVybiBlY2RzYS52ZXJpZnkoaGFzaCwgc2lnbmF0dXJlLCB0aGlzLlEpXG59XG5cbi8qKlxuICogQGRlcHJlY2F0ZWRcbiAqIFVzZSB7QHNlZSBrZXl1dGlsLnByaXZhdGVLZXlCdWZmZXJUb0VDUGFpcn0gaW5zdGVhZFxuICogV2lsbCBiZSByZW1vdmVkIGluIG5leHQgbWFqb3IgdmVyc2lvbiAoQkxPQ0stMjY3KVxuICovXG5FQ1BhaXIuZnJvbVByaXZhdGVLZXlCdWZmZXIgPSBmdW5jdGlvbiAoYnVmZmVyLCBuZXR3b3JrKSB7XG4gIC8vIHRvcGxldmVsIGltcG9ydCB1bmF2YWlsYWJsZSBkdWUgdG8gY2lyY3VsYXIgZGVwZW5kZW5jeVxuICB2YXIga2V5dXRpbCA9IHJlcXVpcmUoJy4vYml0Z28va2V5dXRpbCcpXG4gIHJldHVybiBrZXl1dGlsLnByaXZhdGVLZXlCdWZmZXJUb0VDUGFpcihidWZmZXIsIG5ldHdvcmspXG59XG5cbi8qKlxuICogQGRlcHJlY2F0ZWRcbiAqIFVzZSB7QHNlZSBrZXl1dGlsLnByaXZhdGVLZXlCdWZmZXJGcm9tRUNQYWlyfSBpbnN0ZWFkXG4gKiBXaWxsIGJlIHJlbW92ZWQgaW4gbmV4dCBtYWpvciB2ZXJzaW9uIChCTE9DSy0yNjcpXG4gKi9cbkVDUGFpci5wcm90b3R5cGUuZ2V0UHJpdmF0ZUtleUJ1ZmZlciA9IGZ1bmN0aW9uICgpIHtcbiAgLy8gdG9wbGV2ZWwgaW1wb3J0IHVuYXZhaWxhYmxlIGR1ZSB0byBjaXJjdWxhciBkZXBlbmRlbmN5XG4gIHZhciBrZXl1dGlsID0gcmVxdWlyZSgnLi9iaXRnby9rZXl1dGlsJylcbiAgcmV0dXJuIGtleXV0aWwucHJpdmF0ZUtleUJ1ZmZlckZyb21FQ1BhaXIodGhpcylcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBFQ1BhaXJcbiJdfQ==

@@ -1,41 +0,24 @@

var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var typeforce = require('typeforce');
var types = require('../../types');
var version = require('./version');
var _a = require('../../bufferutils'), BufferReader = _a.BufferReader, BufferWriter = _a.BufferWriter;
var NUM_JOINSPLITS_INPUTS = 2;
var NUM_JOINSPLITS_OUTPUTS = 2;
var NOTECIPHERTEXT_SIZE = 1 + 8 + 32 + 32 + 512 + 16;
var G1_PREFIX_MASK = 0x02;
var G2_PREFIX_MASK = 0x0a;
var ZcashBufferReader = /** @class */ (function (_super) {
__extends(ZcashBufferReader, _super);
function ZcashBufferReader(buffer, offset, txVersion) {
var _this = _super.call(this, buffer, offset) || this;
const typeforce = require('typeforce');
const types = require('../../types');
const version = require('./version');
const { BufferReader, BufferWriter } = require('../../bufferutils');
const NUM_JOINSPLITS_INPUTS = 2;
const NUM_JOINSPLITS_OUTPUTS = 2;
const NOTECIPHERTEXT_SIZE = 1 + 8 + 32 + 32 + 512 + 16;
const G1_PREFIX_MASK = 0x02;
const G2_PREFIX_MASK = 0x0a;
class ZcashBufferReader extends BufferReader {
constructor(buffer, offset, txVersion) {
super(buffer, offset);
typeforce(types.maybe(types.Int32), txVersion);
_this.txVersion = txVersion;
return _this;
this.txVersion = txVersion;
}
ZcashBufferReader.prototype.readInt64 = function () {
var a = this.buffer.readUInt32LE(this.offset);
var b = this.buffer.readInt32LE(this.offset + 4);
readInt64() {
const a = this.buffer.readUInt32LE(this.offset);
let b = this.buffer.readInt32LE(this.offset + 4);
b *= 0x100000000;
this.offset += 8;
return b + a;
};
ZcashBufferReader.prototype.readCompressedG1 = function () {
}
readCompressedG1() {
var yLsb = this.readUInt8() & 1;

@@ -47,4 +30,4 @@ var x = this.readSlice(32);

};
};
ZcashBufferReader.prototype.readCompressedG2 = function () {
}
readCompressedG2() {
var yLsb = this.readUInt8() & 1;

@@ -56,4 +39,4 @@ var x = this.readSlice(64);

};
};
ZcashBufferReader.prototype.readZKProof = function () {
}
readZKProof() {
var zkproof;

@@ -80,4 +63,4 @@ if (this.txVersion >= version.SAPLING) {

return zkproof;
};
ZcashBufferReader.prototype.readJoinSplit = function () {
}
readJoinSplit() {
var vpubOld = this.readUInt64();

@@ -117,4 +100,4 @@ var vpubNew = this.readUInt64();

};
};
ZcashBufferReader.prototype.readShieldedSpend = function () {
}
readShieldedSpend() {
var cv = this.readSlice(32);

@@ -134,4 +117,4 @@ var anchor = this.readSlice(32);

};
};
ZcashBufferReader.prototype.readShieldedOutput = function () {
}
readShieldedOutput() {
var cv = this.readSlice(32);

@@ -151,21 +134,15 @@ var cmu = this.readSlice(32);

};
};
return ZcashBufferReader;
}(BufferReader));
var ZcashBufferWriter = /** @class */ (function (_super) {
__extends(ZcashBufferWriter, _super);
function ZcashBufferWriter() {
return _super !== null && _super.apply(this, arguments) || this;
}
ZcashBufferWriter.prototype.writeCompressedG1 = function (i) {
}
class ZcashBufferWriter extends BufferWriter {
writeCompressedG1(i) {
this.writeUInt8(G1_PREFIX_MASK | i.yLsb);
this.writeSlice(i.x);
};
ZcashBufferWriter.prototype.writeCompressedG2 = function (i) {
}
writeCompressedG2(i) {
this.writeUInt8(G2_PREFIX_MASK | i.yLsb);
this.writeSlice(i.x);
};
return ZcashBufferWriter;
}(BufferWriter));
module.exports = { ZcashBufferReader: ZcashBufferReader, ZcashBufferWriter: ZcashBufferWriter };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVmZmVydXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZm9ya3MvemNhc2gvYnVmZmVydXRpbHMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsSUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFBO0FBQ3RDLElBQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNwQyxJQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUE7QUFFOUIsSUFBQSxLQUFpQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsRUFBM0QsWUFBWSxrQkFBQSxFQUFFLFlBQVksa0JBQWlDLENBQUE7QUFFbkUsSUFBTSxxQkFBcUIsR0FBRyxDQUFDLENBQUE7QUFDL0IsSUFBTSxzQkFBc0IsR0FBRyxDQUFDLENBQUE7QUFDaEMsSUFBTSxtQkFBbUIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsR0FBRyxHQUFHLEVBQUUsQ0FBQTtBQUV0RCxJQUFNLGNBQWMsR0FBRyxJQUFJLENBQUE7QUFDM0IsSUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFBO0FBRTNCO0lBQWdDLHFDQUFZO0lBQzFDLDJCQUFhLE1BQU0sRUFBRSxNQUFNLEVBQUUsU0FBUztRQUF0QyxZQUNFLGtCQUFNLE1BQU0sRUFBRSxNQUFNLENBQUMsU0FHdEI7UUFGQyxTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUE7UUFDOUMsS0FBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUE7O0lBQzVCLENBQUM7SUFFRCxxQ0FBUyxHQUFUO1FBQ0UsSUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQy9DLElBQUksQ0FB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LENBQUMsSUFBSSxDQUFDLENBQUE7UUFDeEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDdEIsQ0FBQztJQUVELDZDQUFpQixHQUFqQixVQUFtQixDQUFDO1FBQ2xCLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUN4QyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUN0QixDQUFDO0lBQ0gsd0JBQUM7QUFBRCxDQUFDLEFBVkQsQ0FBZ0MsWUFBWSxHQVUzQztBQUVELE1BQU0sQ0FBQyxPQUFPLEdBQUcsRUFBRSxpQkFBaUIsbUJBQUEsRUFBRSxpQkFBaUIsbUJBQUEsRUFBRSxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgdHlwZWZvcmNlID0gcmVxdWlyZSgndHlwZWZvcmNlJylcbmNvbnN0IHR5cGVzID0gcmVxdWlyZSgnLi4vLi4vdHlwZXMnKVxuY29uc3QgdmVyc2lvbiA9IHJlcXVpcmUoJy4vdmVyc2lvbicpXG5cbmNvbnN0IHsgQnVmZmVyUmVhZGVyLCBCdWZmZXJXcml0ZXIgfSA9IHJlcXVpcmUoJy4uLy4uL2J1ZmZlcnV0aWxzJylcblxuY29uc3QgTlVNX0pPSU5TUExJVFNfSU5QVVRTID0gMlxuY29uc3QgTlVNX0pPSU5TUExJVFNfT1VUUFVUUyA9IDJcbmNvbnN0IE5PVEVDSVBIRVJURVhUX1NJWkUgPSAxICsgOCArIDMyICsgMzIgKyA1MTIgKyAxNlxuXG5jb25zdCBHMV9QUkVGSVhfTUFTSyA9IDB4MDJcbmNvbnN0IEcyX1BSRUZJWF9NQVNLID0gMHgwYVxuXG5jbGFzcyBaY2FzaEJ1ZmZlclJlYWRlciBleHRlbmRzIEJ1ZmZlclJlYWRlciB7XG4gIGNvbnN0cnVjdG9yIChidWZmZXIsIG9mZnNldCwgdHhWZXJzaW9uKSB7XG4gICAgc3VwZXIoYnVmZmVyLCBvZmZzZXQpXG4gICAgdHlwZWZvcmNlKHR5cGVzLm1heWJlKHR5cGVzLkludDMyKSwgdHhWZXJzaW9uKVxuICAgIHRoaXMudHhWZXJzaW9uID0gdHhWZXJzaW9uXG4gIH1cblxuICByZWFkSW50NjQgKCkge1xuICAgIGNvbnN0IGEgPSB0aGlzLmJ1ZmZlci5yZWFkVUludDMyTEUodGhpcy5vZmZzZXQpXG4gICAgbGV0IGIgPSB0aGlzLmJ1ZmZlci5yZWFkSW50MzJMRSh0aGlzLm9mZnNldCArIDQpXG4gICAgYiAqPSAweDEwMDAwMDAwMFxuICAgIHRoaXMub2Zmc2V0ICs9IDhcbiAgICByZXR1cm4gYiArIGFcbiAgfVxuXG4gIHJlYWRDb21wcmVzc2VkRzEgKCkge1xuICAgIHZhciB5THNiID0gdGhpcy5yZWFkVUludDgoKSAmIDFcbiAgICB2YXIgeCA9IHRoaXMucmVhZFNsaWNlKDMyKVxuICAgIHJldHVybiB7XG4gICAgICB4OiB4LFxuICAgICAgeUxzYjogeUxzYlxuICAgIH1cbiAgfVxuXG4gIHJlYWRDb21wcmVzc2VkRzIgKCkge1xuICAgIHZhciB5THNiID0gdGhpcy5yZWFkVUludDgoKSAmIDFcbiAgICB2YXIgeCA9IHRoaXMucmVhZFNsaWNlKDY0KVxuICAgIHJldHVybiB7XG4gICAgICB4OiB4LFxuICAgICAgeUxzYjogeUxzYlxuICAgIH1cbiAgfVxuXG4gIHJlYWRaS1Byb29mICgpIHtcbiAgICB2YXIgemtwcm9vZlxuICAgIGlmICh0aGlzLnR4VmVyc2lvbiA+PSB2ZXJzaW9uLlNBUExJTkcpIHtcbiAgICAgIHprcHJvb2YgPSB7XG4gICAgICAgIHNBOiB0aGlzLnJlYWRTbGljZSg0OCksXG4gICAgICAgIHNCOiB0aGlzLnJlYWRTbGljZSg5NiksXG4gICAgICAgIHNDOiB0aGlzLnJlYWRTbGljZSg0OClcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgemtwcm9vZiA9IHtcbiAgICAgICAgZ0E6IHRoaXMucmVhZENvbXByZXNzZWRHMSgpLFxuICAgICAgICBnQVByaW1lOiB0aGlzLnJlYWRDb21wcmVzc2VkRzEoKSxcbiAgICAgICAgZ0I6IHRoaXMucmVhZENvbXByZXNzZWRHMigpLFxuICAgICAgICBnQlByaW1lOiB0aGlzLnJlYWRDb21wcmVzc2VkRzEoKSxcbiAgICAgICAgZ0M6IHRoaXMucmVhZENvbXByZXNzZWRHMSgpLFxuICAgICAgICBnQ1ByaW1lOiB0aGlzLnJlYWRDb21wcmVzc2VkRzEoKSxcbiAgICAgICAgZ0s6IHRoaXMucmVhZENvbXByZXNzZWRHMSgpLFxuICAgICAgICBnSDogdGhpcy5yZWFkQ29tcHJlc3NlZEcxKClcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHprcHJvb2ZcbiAgfVxuXG4gIHJlYWRKb2luU3BsaXQgKCkge1xuICAgIHZhciB2cHViT2xkID0gdGhpcy5yZWFkVUludDY0KClcbiAgICB2YXIgdnB1Yk5ldyA9IHRoaXMucmVhZFVJbnQ2NCgpXG4gICAgdmFyIGFuY2hvciA9IHRoaXMucmVhZFNsaWNlKDMyKVxuICAgIHZhciBudWxsaWZpZXJzID0gW11cbiAgICBmb3IgKHZhciBqID0gMDsgaiA8IE5VTV9KT0lOU1BMSVRTX0lOUFVUUzsgaisrKSB7XG4gICAgICBudWxsaWZpZXJzLnB1c2godGhpcy5yZWFkU2xpY2UoMzIpKVxuICAgIH1cbiAgICB2YXIgY29tbWl0bWVudHMgPSBbXVxuICAgIGZvciAoaiA9IDA7IGogPCBOVU1fSk9JTlNQTElUU19PVVRQVVRTOyBqKyspIHtcbiAgICAgIGNvbW1pdG1lbnRzLnB1c2godGhpcy5yZWFkU2xpY2UoMzIpKVxuICAgIH1cbiAgICB2YXIgZXBoZW1lcmFsS2V5ID0gdGhpcy5yZWFkU2xpY2UoMzIpXG4gICAgdmFyIHJhbmRvbVNlZWQgPSB0aGlzLnJlYWRTbGljZSgzMilcbiAgICB2YXIgbWFjcyA9IFtdXG4gICAgZm9yIChqID0gMDsgaiA8IE5VTV9KT0lOU1BMSVRTX0lOUFVUUzsgaisrKSB7XG4gICAgICBtYWNzLnB1c2godGhpcy5yZWFkU2xpY2UoMzIpKVxuICAgIH1cblxuICAgIHZhciB6a3Byb29mID0gdGhpcy5yZWFkWktQcm9vZigpXG4gICAgdmFyIGNpcGhlcnRleHRzID0gW11cbiAgICBmb3IgKGogPSAwOyBqIDwgTlVNX0pPSU5TUExJVFNfT1VUUFVUUzsgaisrKSB7XG4gICAgICBjaXBoZXJ0ZXh0cy5wdXNoKHRoaXMucmVhZFNsaWNlKE5PVEVDSVBIRVJURVhUX1NJWkUpKVxuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgdnB1Yk9sZDogdnB1Yk9sZCxcbiAgICAgIHZwdWJOZXc6IHZwdWJOZXcsXG4gICAgICBhbmNob3I6IGFuY2hvcixcbiAgICAgIG51bGxpZmllcnM6IG51bGxpZmllcnMsXG4gICAgICBjb21taXRtZW50czogY29tbWl0bWVudHMsXG4gICAgICBlcGhlbWVyYWxLZXk6IGVwaGVtZXJhbEtleSxcbiAgICAgIHJhbmRvbVNlZWQ6IHJhbmRvbVNlZWQsXG4gICAgICBtYWNzOiBtYWNzLFxuICAgICAgemtwcm9vZjogemtwcm9vZixcbiAgICAgIGNpcGhlcnRleHRzOiBjaXBoZXJ0ZXh0c1xuICAgIH1cbiAgfVxuXG4gIHJlYWRTaGllbGRlZFNwZW5kICgpIHtcbiAgICB2YXIgY3YgPSB0aGlzLnJlYWRTbGljZSgzMilcbiAgICB2YXIgYW5jaG9yID0gdGhpcy5yZWFkU2xpY2UoMzIpXG4gICAgdmFyIG51bGxpZmllciA9IHRoaXMucmVhZFNsaWNlKDMyKVxuICAgIHZhciByayA9IHRoaXMucmVhZFNsaWNlKDMyKVxuICAgIHZhciB6a3Byb29mID0gdGhpcy5yZWFkWktQcm9vZigpXG4gICAgdmFyIHNwZW5kQXV0aFNpZyA9IHRoaXMucmVhZFNsaWNlKDY0KVxuICAgIHJldHVybiB7XG4gICAgICBjdjogY3YsXG4gICAgICBhbmNob3I6IGFuY2hvcixcbiAgICAgIG51bGxpZmllcjogbnVsbGlmaWVyLFxuICAgICAgcms6IHJrLFxuICAgICAgemtwcm9vZjogemtwcm9vZixcbiAgICAgIHNwZW5kQXV0aFNpZzogc3BlbmRBdXRoU2lnXG4gICAgfVxuICB9XG5cbiAgcmVhZFNoaWVsZGVkT3V0cHV0ICgpIHtcbiAgICB2YXIgY3YgPSB0aGlzLnJlYWRTbGljZSgzMilcbiAgICB2YXIgY211ID0gdGhpcy5yZWFkU2xpY2UoMzIpXG4gICAgdmFyIGVwaGVtZXJhbEtleSA9IHRoaXMucmVhZFNsaWNlKDMyKVxuICAgIHZhciBlbmNDaXBoZXJ0ZXh0ID0gdGhpcy5yZWFkU2xpY2UoNTgwKVxuICAgIHZhciBvdXRDaXBoZXJ0ZXh0ID0gdGhpcy5yZWFkU2xpY2UoODApXG4gICAgdmFyIHprcHJvb2YgPSB0aGlzLnJlYWRaS1Byb29mKClcblxuICAgIHJldHVybiB7XG4gICAgICBjdjogY3YsXG4gICAgICBjbXU6IGNtdSxcbiAgICAgIGVwaGVtZXJhbEtleTogZXBoZW1lcmFsS2V5LFxuICAgICAgZW5jQ2lwaGVydGV4dDogZW5jQ2lwaGVydGV4dCxcbiAgICAgIG91dENpcGhlcnRleHQ6IG91dENpcGhlcnRleHQsXG4gICAgICB6a3Byb29mOiB6a3Byb29mXG4gICAgfVxuICB9XG59XG5cbmNsYXNzIFpjYXNoQnVmZmVyV3JpdGVyIGV4dGVuZHMgQnVmZmVyV3JpdGVyIHtcbiAgd3JpdGVDb21wcmVzc2VkRzEgKGkpIHtcbiAgICB0aGlzLndyaXRlVUludDgoRzFfUFJFRklYX01BU0sgfCBpLnlMc2IpXG4gICAgdGhpcy53cml0ZVNsaWNlKGkueClcbiAgfVxuXG4gIHdyaXRlQ29tcHJlc3NlZEcyIChpKSB7XG4gICAgdGhpcy53cml0ZVVJbnQ4KEcyX1BSRUZJWF9NQVNLIHwgaS55THNiKVxuICAgIHRoaXMud3JpdGVTbGljZShpLngpXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7IFpjYXNoQnVmZmVyUmVhZGVyLCBaY2FzaEJ1ZmZlcldyaXRlciB9XG4iXX0=
}
}
module.exports = { ZcashBufferReader, ZcashBufferWriter };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVmZmVydXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZm9ya3MvemNhc2gvYnVmZmVydXRpbHMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFBO0FBQ3RDLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNwQyxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUE7QUFFcEMsTUFBTSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsR0FBRyxPQUFPLENBQUMsbUJBQW1CLENBQUMsQ0FBQTtBQUVuRSxNQUFNLHFCQUFxQixHQUFHLENBQUMsQ0FBQTtBQUMvQixNQUFNLHNCQUFzQixHQUFHLENBQUMsQ0FBQTtBQUNoQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxHQUFHLEdBQUcsRUFBRSxDQUFBO0FBRXRELE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQTtBQUMzQixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUE7QUFFM0IsTUFBTSxpQkFBa0IsU0FBUSxZQUFZO0lBQzFDLFlBQWEsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTO1FBQ3BDLEtBQUssQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7UUFDckIsU0FBUyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFBO1FBQzlDLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFBO0lBQzVCLENBQUM7SUFFRCxTQUFTO1FBQ1AsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQy9DLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENB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QUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDeEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDdEIsQ0FBQztDQUNGO0FBRUQsTUFBTSxDQUFDLE9BQU8sR0FBRyxFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCB0eXBlZm9yY2UgPSByZXF1aXJlKCd0eXBlZm9yY2UnKVxuY29uc3QgdHlwZXMgPSByZXF1aXJlKCcuLi8uLi90eXBlcycpXG5jb25zdCB2ZXJzaW9uID0gcmVxdWlyZSgnLi92ZXJzaW9uJylcblxuY29uc3QgeyBCdWZmZXJSZWFkZXIsIEJ1ZmZlcldyaXRlciB9ID0gcmVxdWlyZSgnLi4vLi4vYnVmZmVydXRpbHMnKVxuXG5jb25zdCBOVU1fSk9JTlNQTElUU19JTlBVVFMgPSAyXG5jb25zdCBOVU1fSk9JTlNQTElUU19PVVRQVVRTID0gMlxuY29uc3QgTk9URUNJUEhFUlRFWFRfU0laRSA9IDEgKyA4ICsgMzIgKyAzMiArIDUxMiArIDE2XG5cbmNvbnN0IEcxX1BSRUZJWF9NQVNLID0gMHgwMlxuY29uc3QgRzJfUFJFRklYX01BU0sgPSAweDBhXG5cbmNsYXNzIFpjYXNoQnVmZmVyUmVhZGVyIGV4dGVuZHMgQnVmZmVyUmVhZGVyIHtcbiAgY29uc3RydWN0b3IgKGJ1ZmZlciwgb2Zmc2V0LCB0eFZlcnNpb24pIHtcbiAgICBzdXBlcihidWZmZXIsIG9mZnNldClcbiAgICB0eXBlZm9yY2UodHlwZXMubWF5YmUodHlwZXMuSW50MzIpLCB0eFZlcnNpb24pXG4gICAgdGhpcy50eFZlcnNpb24gPSB0eFZlcnNpb25cbiAgfVxuXG4gIHJlYWRJbnQ2NCAoKSB7XG4gICAgY29uc3QgYSA9IHRoaXMuYnVmZmVyLnJlYWRVSW50MzJMRSh0aGlzLm9mZnNldClcbiAgICBsZXQgYiA9IHRoaXMuYnVmZmVyLnJlYWRJbnQzMkxFKHRoaXMub2Zmc2V0ICsgNClcbiAgICBiICo9IDB4MTAwMDAwMDAwXG4gICAgdGhpcy5vZmZzZXQgKz0gOFxuICAgIHJldHVybiBiICsgYVxuICB9XG5cbiAgcmVhZENvbXByZXNzZWRHMSAoKSB7XG4gICAgdmFyIHlMc2IgPSB0aGlzLnJlYWRVSW50OCgpICYgMVxuICAgIHZhciB4ID0gdGhpcy5yZWFkU2xpY2UoMzIpXG4gICAgcmV0dXJuIHtcbiAgICAgIHg6IHgsXG4gICAgICB5THNiOiB5THNiXG4gICAgfVxuICB9XG5cbiAgcmVhZENvbXByZXNzZWRHMiAoKSB7XG4gICAgdmFyIHlMc2IgPSB0aGlzLnJlYWRVSW50OCgpICYgMVxuICAgIHZhciB4ID0gdGhpcy5yZWFkU2xpY2UoNjQpXG4gICAgcmV0dXJuIHtcbiAgICAgIHg6IHgsXG4gICAgICB5THNiOiB5THNiXG4gICAgfVxuICB9XG5cbiAgcmVhZFpLUHJvb2YgKCkge1xuICAgIHZhciB6a3Byb29mXG4gICAgaWYgKHRoaXMudHhWZXJzaW9uID49IHZlcnNpb24uU0FQTElORykge1xuICAgICAgemtwcm9vZiA9IHtcbiAgICAgICAgc0E6IHRoaXMucmVhZFNsaWNlKDQ4KSxcbiAgICAgICAgc0I6IHRoaXMucmVhZFNsaWNlKDk2KSxcbiAgICAgICAgc0M6IHRoaXMucmVhZFNsaWNlKDQ4KVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB6a3Byb29mID0ge1xuICAgICAgICBnQTogdGhpcy5yZWFkQ29tcHJlc3NlZEcxKCksXG4gICAgICAgIGdBUHJpbWU6IHRoaXMucmVhZENvbXByZXNzZWRHMSgpLFxuICAgICAgICBnQjogdGhpcy5yZWFkQ29tcHJlc3NlZEcyKCksXG4gICAgICAgIGdCUHJpbWU6IHRoaXMucmVhZENvbXByZXNzZWRHMSgpLFxuICAgICAgICBnQzogdGhpcy5yZWFkQ29tcHJlc3NlZEcxKCksXG4gICAgICAgIGdDUHJpbWU6IHRoaXMucmVhZENvbXByZXNzZWRHMSgpLFxuICAgICAgICBnSzogdGhpcy5yZWFkQ29tcHJlc3NlZEcxKCksXG4gICAgICAgIGdIOiB0aGlzLnJlYWRDb21wcmVzc2VkRzEoKVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gemtwcm9vZlxuICB9XG5cbiAgcmVhZEpvaW5TcGxpdCAoKSB7XG4gICAgdmFyIHZwdWJPbGQgPSB0aGlzLnJlYWRVSW50NjQoKVxuICAgIHZhciB2cHViTmV3ID0gdGhpcy5yZWFkVUludDY0KClcbiAgICB2YXIgYW5jaG9yID0gdGhpcy5yZWFkU2xpY2UoMzIpXG4gICAgdmFyIG51bGxpZmllcnMgPSBbXVxuICAgIGZvciAodmFyIGogPSAwOyBqIDwgTlVNX0pPSU5TUExJVFNfSU5QVVRTOyBqKyspIHtcbiAgICAgIG51bGxpZmllcnMucHVzaCh0aGlzLnJlYWRTbGljZSgzMikpXG4gICAgfVxuICAgIHZhciBjb21taXRtZW50cyA9IFtdXG4gICAgZm9yIChqID0gMDsgaiA8IE5VTV9KT0lOU1BMSVRTX09VVFBVVFM7IGorKykge1xuICAgICAgY29tbWl0bWVudHMucHVzaCh0aGlzLnJlYWRTbGljZSgzMikpXG4gICAgfVxuICAgIHZhciBlcGhlbWVyYWxLZXkgPSB0aGlzLnJlYWRTbGljZSgzMilcbiAgICB2YXIgcmFuZG9tU2VlZCA9IHRoaXMucmVhZFNsaWNlKDMyKVxuICAgIHZhciBtYWNzID0gW11cbiAgICBmb3IgKGogPSAwOyBqIDwgTlVNX0pPSU5TUExJVFNfSU5QVVRTOyBqKyspIHtcbiAgICAgIG1hY3MucHVzaCh0aGlzLnJlYWRTbGljZSgzMikpXG4gICAgfVxuXG4gICAgdmFyIHprcHJvb2YgPSB0aGlzLnJlYWRaS1Byb29mKClcbiAgICB2YXIgY2lwaGVydGV4dHMgPSBbXVxuICAgIGZvciAoaiA9IDA7IGogPCBOVU1fSk9JTlNQTElUU19PVVRQVVRTOyBqKyspIHtcbiAgICAgIGNpcGhlcnRleHRzLnB1c2godGhpcy5yZWFkU2xpY2UoTk9URUNJUEhFUlRFWFRfU0laRSkpXG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICB2cHViT2xkOiB2cHViT2xkLFxuICAgICAgdnB1Yk5ldzogdnB1Yk5ldyxcbiAgICAgIGFuY2hvcjogYW5jaG9yLFxuICAgICAgbnVsbGlmaWVyczogbnVsbGlmaWVycyxcbiAgICAgIGNvbW1pdG1lbnRzOiBjb21taXRtZW50cyxcbiAgICAgIGVwaGVtZXJhbEtleTogZXBoZW1lcmFsS2V5LFxuICAgICAgcmFuZG9tU2VlZDogcmFuZG9tU2VlZCxcbiAgICAgIG1hY3M6IG1hY3MsXG4gICAgICB6a3Byb29mOiB6a3Byb29mLFxuICAgICAgY2lwaGVydGV4dHM6IGNpcGhlcnRleHRzXG4gICAgfVxuICB9XG5cbiAgcmVhZFNoaWVsZGVkU3BlbmQgKCkge1xuICAgIHZhciBjdiA9IHRoaXMucmVhZFNsaWNlKDMyKVxuICAgIHZhciBhbmNob3IgPSB0aGlzLnJlYWRTbGljZSgzMilcbiAgICB2YXIgbnVsbGlmaWVyID0gdGhpcy5yZWFkU2xpY2UoMzIpXG4gICAgdmFyIHJrID0gdGhpcy5yZWFkU2xpY2UoMzIpXG4gICAgdmFyIHprcHJvb2YgPSB0aGlzLnJlYWRaS1Byb29mKClcbiAgICB2YXIgc3BlbmRBdXRoU2lnID0gdGhpcy5yZWFkU2xpY2UoNjQpXG4gICAgcmV0dXJuIHtcbiAgICAgIGN2OiBjdixcbiAgICAgIGFuY2hvcjogYW5jaG9yLFxuICAgICAgbnVsbGlmaWVyOiBudWxsaWZpZXIsXG4gICAgICByazogcmssXG4gICAgICB6a3Byb29mOiB6a3Byb29mLFxuICAgICAgc3BlbmRBdXRoU2lnOiBzcGVuZEF1dGhTaWdcbiAgICB9XG4gIH1cblxuICByZWFkU2hpZWxkZWRPdXRwdXQgKCkge1xuICAgIHZhciBjdiA9IHRoaXMucmVhZFNsaWNlKDMyKVxuICAgIHZhciBjbXUgPSB0aGlzLnJlYWRTbGljZSgzMilcbiAgICB2YXIgZXBoZW1lcmFsS2V5ID0gdGhpcy5yZWFkU2xpY2UoMzIpXG4gICAgdmFyIGVuY0NpcGhlcnRleHQgPSB0aGlzLnJlYWRTbGljZSg1ODApXG4gICAgdmFyIG91dENpcGhlcnRleHQgPSB0aGlzLnJlYWRTbGljZSg4MClcbiAgICB2YXIgemtwcm9vZiA9IHRoaXMucmVhZFpLUHJvb2YoKVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGN2OiBjdixcbiAgICAgIGNtdTogY211LFxuICAgICAgZXBoZW1lcmFsS2V5OiBlcGhlbWVyYWxLZXksXG4gICAgICBlbmNDaXBoZXJ0ZXh0OiBlbmNDaXBoZXJ0ZXh0LFxuICAgICAgb3V0Q2lwaGVydGV4dDogb3V0Q2lwaGVydGV4dCxcbiAgICAgIHprcHJvb2Y6IHprcHJvb2ZcbiAgICB9XG4gIH1cbn1cblxuY2xhc3MgWmNhc2hCdWZmZXJXcml0ZXIgZXh0ZW5kcyBCdWZmZXJXcml0ZXIge1xuICB3cml0ZUNvbXByZXNzZWRHMSAoaSkge1xuICAgIHRoaXMud3JpdGVVSW50OChHMV9QUkVGSVhfTUFTSyB8IGkueUxzYilcbiAgICB0aGlzLndyaXRlU2xpY2UoaS54KVxuICB9XG5cbiAgd3JpdGVDb21wcmVzc2VkRzIgKGkpIHtcbiAgICB0aGlzLndyaXRlVUludDgoRzJfUFJFRklYX01BU0sgfCBpLnlMc2IpXG4gICAgdGhpcy53cml0ZVNsaWNlKGkueClcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHsgWmNhc2hCdWZmZXJSZWFkZXIsIFpjYXNoQnVmZmVyV3JpdGVyIH1cbiJdfQ==

@@ -0,1 +1,5 @@

"use strict";
/**
* @prettier
*/
/*

@@ -17,11 +21,3 @@

*/
var coins = {
BCH: 'bch',
BSV: 'bsv',
BTC: 'btc',
BTG: 'btg',
LTC: 'ltc',
ZEC: 'zec',
DASH: 'dash'
};
const networkTypes_1 = require("./networkTypes");
function getDefaultBip32Mainnet() {

@@ -32,3 +28,3 @@ return {

// base58 'xprv'
private: 0x0488ade4
private: 0x0488ade4,
};

@@ -41,6 +37,6 @@ }

// base58 'tprv'
private: 0x04358394
private: 0x04358394,
};
}
module.exports = {
const networks = {
// https://github.com/bitcoin/bitcoin/blob/master/src/validation.cpp

@@ -55,3 +51,3 @@ // https://github.com/bitcoin/bitcoin/blob/master/src/chainparams.cpp

wif: 0x80,
coin: coins.BTC
coin: networkTypes_1.coins.BTC,
},

@@ -65,6 +61,7 @@ testnet: {

wif: 0xef,
coin: coins.BTC
coin: networkTypes_1.coins.BTC,
},
// https://github.com/Bitcoin-ABC/bitcoin-abc/blob/master/src/validation.cpp
// https://github.com/Bitcoin-ABC/bitcoin-abc/blob/master/src/chainparams.cpp
// https://github.com/bitcoincashorg/bitcoincash.org/blob/master/spec/cashaddr.md
bitcoincash: {

@@ -76,4 +73,9 @@ messagePrefix: '\x18Bitcoin Signed Message:\n',

wif: 0x80,
coin: coins.BCH,
forkId: 0x00
coin: networkTypes_1.coins.BCH,
forkId: 0x00,
cashAddr: {
prefix: 'bitcoincash',
pubKeyHash: 0x00,
scriptHash: 0x08,
},
},

@@ -86,3 +88,8 @@ bitcoincashTestnet: {

wif: 0xef,
coin: coins.BCH
coin: networkTypes_1.coins.BCH,
cashAddr: {
prefix: 'bchtest',
pubKeyHash: 0x00,
scriptHash: 0x08,
},
},

@@ -100,3 +107,3 @@ // https://github.com/BTCGPU/BTCGPU/blob/master/src/validation.cpp

forkId: 79,
coin: coins.BTG
coin: networkTypes_1.coins.BTG,
},

@@ -111,3 +118,3 @@ bitcoingoldTestnet: {

forkId: 79,
coin: coins.BTG
coin: networkTypes_1.coins.BTG,
},

@@ -122,4 +129,4 @@ // https://github.com/bitcoin-sv/bitcoin-sv/blob/master/src/validation.cpp

wif: 0x80,
coin: coins.BSV,
forkId: 0x00
coin: networkTypes_1.coins.BSV,
forkId: 0x00,
},

@@ -132,3 +139,3 @@ bitcoinsvTestnet: {

wif: 0xef,
coin: coins.BSV
coin: networkTypes_1.coins.BSV,
},

@@ -143,3 +150,3 @@ // https://github.com/dashpay/dash/blob/master/src/validation.cpp

wif: 0xcc,
coin: coins.DASH
coin: networkTypes_1.coins.DASH,
},

@@ -152,3 +159,3 @@ dashTest: {

wif: 0xef,
coin: coins.DASH
coin: networkTypes_1.coins.DASH,
},

@@ -164,3 +171,3 @@ // https://github.com/litecoin-project/litecoin/blob/master/src/validation.cpp

wif: 0xb0,
coin: coins.LTC
coin: networkTypes_1.coins.LTC,
},

@@ -174,3 +181,3 @@ litecoinTest: {

wif: 0xef,
coin: coins.LTC
coin: networkTypes_1.coins.LTC,
},

@@ -194,5 +201,5 @@ // https://github.com/zcash/zcash/blob/master/src/validation.cpp

// 4: 0xf5b9230b (Heartwood branch id, see https://zips.z.cash/zip-0250)
4: 0xe9ff75a6 // (Canopy branch id, see https://zips.z.cash/zip-0251)
4: 0xe9ff75a6, // (Canopy branch id, see https://zips.z.cash/zip-0251)
},
coin: coins.ZEC
coin: networkTypes_1.coins.ZEC,
},

@@ -212,7 +219,8 @@ zcashTest: {

// 4: 0xf5b9230b (Heartwood branch id, see https://zips.z.cash/zip-0250)
4: 0xe9ff75a6 // (Canopy branch id, see https://zips.z.cash/zip-0251)
4: 0xe9ff75a6, // (Canopy branch id, see https://zips.z.cash/zip-0251)
},
coin: coins.ZEC
}
coin: networkTypes_1.coins.ZEC,
},
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29ya3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbmV0d29ya3MuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztFQWVFO0FBRUYsSUFBTSxLQUFLLEdBQUc7SUFDWixHQUFHLEVBQUUsS0FBSztJQUNWLEdBQUcsRUFBRSxLQUFLO0lBQ1YsR0FBRyxFQUFFLEtBQUs7SUFDVixHQUFHLEVBQUUsS0FBSztJQUNWLEdBQUcsRUFBRSxLQUFLO0lBQ1YsR0FBRyxFQUFFLEtBQUs7SUFDVixJQUFJLEVBQUUsTUFBTTtDQUNiLENBQUE7QUFFRCxTQUFTLHNCQUFzQjtJQUM3QixPQUFPO1FBQ0wsZ0JBQWdCO1FBQ2hCLE1BQU0sRUFBRSxVQUFVO1FBQ2xCLGdCQUFnQjtRQUNoQixPQUFPLEVBQUUsVUFBVTtLQUNwQixDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsc0JBQXNCO0lBQzdCLE9BQU87UUFDTCxnQkFBZ0I7UUFDaEIsTUFBTSxFQUFFLFVBQVU7UUFDbEIsZ0JBQWdCO1FBQ2hCLE9BQU8sRUFBRSxVQUFVO0tBQ3BCLENBQUE7QUFDSCxDQUFDO0FBRUQsTUFBTSxDQUFDLE9BQU8sR0FBRztJQUVmLG9FQUFvRTtJQUNwRSxxRUFBcUU7SUFDckUsT0FBTyxFQUFFO1FBQ1AsYUFBYSxFQUFFLCtCQUErQjtRQUM5QyxNQUFNLEVBQUUsSUFBSTtRQUNaLEtBQUssRUFBRSxzQkFBc0IsRUFBRTtRQUMvQixVQUFVLEVBQUUsSUFBSTtRQUNoQixVQUFVLEVBQUUsSUFBSTtRQUNoQixHQUFHLEVBQUUsSUFBSTtRQUNULElBQUksRUFBRSxLQUFLLENBQUMsR0FBRztLQUNoQjtJQUNELE9BQU8sRUFBRTtRQUNQLGFBQWEsRUFBRSwrQkFBK0I7UUFDOUMsTUFBTSxFQUFFLElBQUk7UUFDWixLQUFLLEVBQUUsc0JBQXNCLEVBQUU7UUFDL0IsVUFBVSxFQUFFLElBQUk7UUFDaEIsVUFBVSxFQUFFLElBQUk7UUFD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InNvdXJjZXNDb250ZW50IjpbIi8qXG5cblRoZSB2YWx1ZXMgZm9yIHRoZSB2YXJpb3VzIGZvcmsgY29pbnMgY2FuIGJlIGZvdW5kIGluIHRoZXNlIGZpbGVzOlxuXG5wcm9wZXJ0eSAgICAgICBmaWxlbmFtZSAgICAgICAgICAgICAgICAgIHZhcm5hbWUgICAgICAgICAgICAgICAgICAgICAgICAgICBub3Rlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5tZXNzYWdlUHJlZml4ICBzcmMvdmFsaWRhdGlvbi5jcHAgICAgICAgIHN0ck1lc3NhZ2VNYWdpYyAgICAgICAgICAgICAgICAgICBGb3JtYXQgYCR7Q29pbk5hbWV9IFNpZ25lZCBNZXNzYWdlYFxuYmVjaDMyX2hycCAgICAgc3JjL2NoYWlucGFyYW1zLmNwcCAgICAgICBiZWNoMzJfaHJwICAgICAgICAgICAgICAgICAgICAgICAgT25seSBmb3Igc29tZSBuZXR3b3Jrc1xuYmlwMzIucHVibGljICAgc3JjL2NoYWlucGFyYW1zLmNwcCAgICAgICBiYXNlNThQcmVmaXhlc1tFWFRfUFVCTElDX0tFWV0gICAgTWFpbm5ldHMgaGF2ZSBzYW1lIHZhbHVlLCB0ZXN0bmV0cyBoYXZlIHNhbWUgdmFsdWVcbmJpcDMyLnByaXZhdGUgIHNyYy9jaGFpbnBhcmFtcy5jcHAgICAgICAgYmFzZTU4UHJlZml4ZXNbRVhUX1NFQ1JFVF9LRVldICAgIE1haW5uZXRzIGhhdmUgc2FtZSB2YWx1ZSwgdGVzdG5ldHMgaGF2ZSBzYW1lIHZhbHVlXG5wdWJLZXlIYXNoICAgICBzcmMvY2hhaW5wYXJhbXMuY3BwICAgICAgIGJhc2U1OFByZWZpeGVzW1BVQktFWV9BRERSRVNTXVxuc2NyaXB0SGFzaCAgICAgc3JjL2NoYWlucGFyYW1zLmNwcCAgICAgICBiYXNlNThQcmVmaXhlc1tTQ1JJUFRfQUREUkVTU11cbndpZiAgICAgICAgICAgIHNyYy9jaGFpbnBhcmFtcy5jcHAgICAgICAgYmFzZTU4UHJlZml4ZXNbU0VDUkVUX0tFWV0gICAgICAgIFRlc3RuZXRzIGhhdmUgc2FtZSB2YWx1ZVxuZm9ya0lkICAgICAgICAgc3JjL3NjcmlwdC9pbnRlcnByZXRlci5oICBGT1JLSURfKlxuXG4qL1xuXG5jb25zdCBjb2lucyA9IHtcbiAgQkNIOiAnYmNoJyxcbiAgQlNWOiAnYnN2JyxcbiAgQlRDOiAnYnRjJyxcbiAgQlRHOiAnYnRnJyxcbiAgTFRDOiAnbHRjJyxcbiAgWkVDOiAnemVjJyxcbiAgREFTSDogJ2Rhc2gnXG59XG5cbmZ1bmN0aW9uIGdldERlZmF1bHRCaXAzMk1haW5uZXQgKCkge1xuICByZXR1cm4ge1xuICAgIC8vIGJhc2U1OCAneHB1YidcbiAgICBwdWJsaWM6IDB4MDQ4OGIyMWUsXG4gICAgLy8gYmFzZTU4ICd4cHJ2J1xuICAgIHByaXZhdGU6IDB4MDQ4OGFkZTRcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXREZWZhdWx0QmlwMzJUZXN0bmV0ICgpIHtcbiAgcmV0dXJuIHtcbiAgICAvLyBiYXNlNTggJ3RwdWInXG4gICAgcHVibGljOiAweDA0MzU4N2NmLFxuICAgIC8vIGJhc2U1OCAndHBydidcbiAgICBwcml2YXRlOiAweDA0MzU4Mzk0XG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2JpdGNvaW4vYml0Y29pbi9ibG9iL21hc3Rlci9zcmMvdmFsaWRhdGlvbi5jcHBcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2JpdGNvaW4vYml0Y29pbi9ibG9iL21hc3Rlci9zcmMvY2hhaW5wYXJhbXMuY3BwXG4gIGJpdGNvaW46IHtcbiAgICBtZXNzYWdlUHJlZml4OiAnXFx4MThCaXRjb2luIFNpZ25lZCBNZXNzYWdlOlxcbicsXG4gICAgYmVjaDMyOiAnYmMnLFxuICAgIGJpcDMyOiBnZXREZWZhdWx0QmlwMzJNYWlubmV0KCksXG4gICAgcHViS2V5SGFzaDogMHgwMCxcbiAgICBzY3JpcHRIYXNoOiAweDA1LFxuICAgIHdpZjogMHg4MCxcbiAgICBjb2luOiBjb2lucy5CVENcbiAgfSxcbiAgdGVzdG5ldDoge1xuICAgIG1lc3NhZ2VQcmVmaXg6ICdcXHgxOEJpdGNvaW4gU2lnbmVkIE1lc3NhZ2U6XFxuJyxcbiAgICBiZWNoMzI6ICd0YicsXG4gICAgYmlwMzI6IGdldERlZmF1bHRCaXAzMlRlc3RuZXQoKSxcbiAgICBwdWJLZXlIYXNoOiAweDZmLFxuICAgIHNjcmlwdEhhc2g6IDB4YzQsXG4gICAgd2lmOiAweGVmLFxuICAgIGNvaW46IGNvaW5zLkJUQ1xuICB9LFxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9CaXRjb2luLUFCQy9iaXRjb2luLWFiYy9ibG9iL21hc3Rlci9zcmMvdmFsaWRhdGlvbi5jcHBcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL0JpdGNvaW4tQUJDL2JpdGNvaW4tYWJjL2Jsb2IvbWFzdGVyL3NyYy9jaGFpbnBhcmFtcy5jcHBcbiAgYml0Y29pbmNhc2g6IHtcbiAgICBtZXNzYWdlUHJlZml4OiAnXFx4MThCaXRjb2luIFNpZ25lZCBNZXNzYWdlOlxcbicsXG4gICAgYmlwMzI6IGdldERlZmF1bHRCaXAzMk1haW5uZXQoKSxcbiAgICBwdWJLZXlIYXNoOiAweDAwLFxuICAgIHNjcmlwdEhhc2g6IDB4MDUsXG4gICAgd2lmOiAweDgwLFxuICAgIGNvaW46IGNvaW5zLkJDSCxcbiAgICBmb3JrSWQ6IDB4MDBcbiAgfSxcbiAgYml0Y29pbmNhc2hUZXN0bmV0OiB7XG4gICAgbWVzc2FnZVByZWZpeDogJ1xceDE4Qml0Y29pbiBTaWduZWQgTWVzc2FnZTpcXG4nLFxuICAgIGJpcDMyOiBnZXREZWZhdWx0QmlwMzJUZXN0bmV0KCksXG4gICAgcHViS2V5SGFzaDogMHg2ZixcbiAgICBzY3JpcHRIYXNoOiAweGM0LFxuICAgIHdpZjogMHhlZixcbiAgICBjb2luOiBjb2lucy5CQ0hcbiAgfSxcblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vQlRDR1BVL0JUQ0dQVS9ibG9iL21hc3Rlci9zcmMvdmFsaWRhdGlvbi5jcHBcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL0JUQ0dQVS9CVENHUFUvYmxvYi9tYXN0ZXIvc3JjL2NoYWlucGFyYW1zLmNwcFxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vQlRDR1BVL0JUQ0dQVS9ibG9iL21hc3Rlci9zcmMvc2NyaXB0L2ludGVycHJldGVyLmhcbiAgYml0Y29pbmdvbGQ6IHtcbiAgICBtZXNzYWdlUHJlZml4OiAnXFx4MThCaXRjb2luIEdvbGQgU2lnbmVkIE1lc3NhZ2U6XFxuJyxcbiAgICBiZWNoMzI6ICdidGcnLFxuICAgIGJpcDMyOiBnZXREZWZhdWx0QmlwMzJNYWlubmV0KCksXG4gICAgcHViS2V5SGFzaDogMHgyNixcbiAgICBzY3JpcHRIYXNoOiAweDE3LFxuICAgIHdpZjogMHg4MCxcbiAgICBmb3JrSWQ6IDc5LFxuICAgIGNvaW46IGNvaW5zLkJUR1xuICB9LFxuICBiaXRjb2luZ29sZFRlc3RuZXQ6IHtcbiAgICBtZXNzYWdlUHJlZml4OiAnXFx4MThCaXRjb2luIEdvbGQgU2lnbmVkIE1lc3NhZ2U6XFxuJyxcbiAgICBiZWNoMzI6ICd0YnRnJyxcbiAgICBiaXAzMjogZ2V0RGVmYXVsdEJpcDMyVGVzdG5ldCgpLFxuICAgIHB1YktleUhhc2g6IDExMSxcbiAgICBzY3JpcHRIYXNoOiAxOTYsXG4gICAgd2lmOiAweGVmLFxuICAgIGZvcmtJZDogNzksXG4gICAgY29pbjogY29pbnMuQlRHXG4gIH0sXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2JpdGNvaW4tc3YvYml0Y29pbi1zdi9ibG9iL21hc3Rlci9zcmMvdmFsaWRhdGlvbi5jcHBcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2JpdGNvaW4tc3YvYml0Y29pbi1zdi9ibG9iL21hc3Rlci9zcmMvY2hhaW5wYXJhbXMuY3BwXG4gIGJpdGNvaW5zdjoge1xuICAgIG1lc3NhZ2VQcmVmaXg6ICdcXHgxOEJpdGNvaW4gU2lnbmVkIE1lc3NhZ2U6XFxuJyxcbiAgICBiaXAzMjogZ2V0RGVmYXVsdEJpcDMyTWFpbm5ldCgpLFxuICAgIHB1YktleUhhc2g6IDB4MDAsXG4gICAgc2NyaXB0SGFzaDogMHgwNSxcbiAgICB3aWY6IDB4ODAsXG4gICAgY29pbjogY29pbnMuQlNWLFxuICAgIGZvcmtJZDogMHgwMFxuICB9LFxuICBiaXRjb2luc3ZUZXN0bmV0OiB7XG4gICAgbWVzc2FnZVByZWZpeDogJ1xceDE4Qml0Y29pbiBTaWduZWQgTWVzc2FnZTpcXG4nLFxuICAgIGJpcDMyOiBnZXREZWZhdWx0QmlwMzJUZXN0bmV0KCksXG4gICAgcHViS2V5SGFzaDogMHg2ZixcbiAgICBzY3JpcHRIYXNoOiAweGM0LFxuICAgIHdpZjogMHhlZixcbiAgICBjb2luOiBjb2lucy5CU1ZcbiAgfSxcblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vZGFzaHBheS9kYXNoL2Jsb2IvbWFzdGVyL3NyYy92YWxpZGF0aW9uLmNwcFxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vZGFzaHBheS9kYXNoL2Jsb2IvbWFzdGVyL3NyYy9jaGFpbnBhcmFtcy5jcHBcbiAgZGFzaDoge1xuICAgIG1lc3NhZ2VQcmVmaXg6ICdcXHgxOURhcmtDb2luIFNpZ25lZCBNZXNzYWdlOlxcbicsXG4gICAgYmlwMzI6IGdldERlZmF1bHRCaXAzMk1haW5uZXQoKSxcbiAgICBwdWJLZXlIYXNoOiAweDRjLFxuICAgIHNjcmlwdEhhc2g6IDB4MTAsXG4gICAgd2lmOiAweGNjLFxuICAgIGNvaW46IGNvaW5zLkRBU0hcbiAgfSxcbiAgZGFzaFRlc3Q6IHtcbiAgICBtZXNzYWdlUHJlZml4OiAnXFx4MTlEYXJrQ29pbiBTaWduZWQgTWVzc2FnZTpcXG4nLFxuICAgIGJpcDMyOiBnZXREZWZhdWx0QmlwMzJUZXN0bmV0KCksXG4gICAgcHViS2V5SGFzaDogMHg4YyxcbiAgICBzY3JpcHRIYXNoOiAweDEzLFxuICAgIHdpZjogMHhlZixcbiAgICBjb2luOiBjb2lucy5EQVNIXG4gIH0sXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2xpdGVjb2luLXByb2plY3QvbGl0ZWNvaW4vYmxvYi9tYXN0ZXIvc3JjL3ZhbGlkYXRpb24uY3BwXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9saXRlY29pbi1wcm9qZWN0L2xpdGVjb2luL2Jsb2IvbWFzdGVyL3NyYy9jaGFpbnBhcmFtcy5jcHBcbiAgbGl0ZWNvaW46IHtcbiAgICBtZXNzYWdlUHJlZml4OiAnXFx4MTlMaXRlY29pbiBTaWduZWQgTWVzc2FnZTpcXG4nLFxuICAgIGJlY2gzMjogJ2x0YycsXG4gICAgYmlwMzI6IGdldERlZmF1bHRCaXAzMk1haW5uZXQoKSxcbiAgICBwdWJLZXlIYXNoOiAweDMwLFxuICAgIHNjcmlwdEhhc2g6IDB4MzIsXG4gICAgd2lmOiAweGIwLFxuICAgIGNvaW46IGNvaW5zLkxUQ1xuICB9LFxuICBsaXRlY29pblRlc3Q6IHtcbiAgICBtZXNzYWdlUHJlZml4OiAnXFx4MTlMaXRlY29pbiBTaWduZWQgTWVzc2FnZTpcXG4nLFxuICAgIGJlY2gzMjogJ3RsdGMnLFxuICAgIGJpcDMyOiBnZXREZWZhdWx0QmlwMzJUZXN0bmV0KCksXG4gICAgcHViS2V5SGFzaDogMHg2ZixcbiAgICBzY3JpcHRIYXNoOiAweDNhLFxuICAgIHdpZjogMHhlZixcbiAgICBjb2luOiBjb2lucy5MVENcbiAgfSxcblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vemNhc2gvemNhc2gvYmxvYi9tYXN0ZXIvc3JjL3ZhbGlkYXRpb24uY3BwXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96Y2FzaC96Y2FzaC9ibG9iL21hc3Rlci9zcmMvY2hhaW5wYXJhbXMuY3BwXG4gIHpjYXNoOiB7XG4gICAgbWVzc2FnZVByZWZpeDogJ1xceDE4WkNhc2ggU2lnbmVkIE1lc3NhZ2U6XFxuJyxcbiAgICBiaXAzMjogZ2V0RGVmYXVsdEJpcDMyTWFpbm5ldCgpLFxuICAgIHB1YktleUhhc2g6IDB4MWNiOCxcbiAgICBzY3JpcHRIYXNoOiAweDFjYmQsXG4gICAgd2lmOiAweDgwLFxuICAgIC8vIFRoaXMgcGFyYW1ldGVyIHdhcyBpbnRyb2R1Y2VkIGluIHZlcnNpb24gMyB0byBhbGxvdyBzb2Z0IGZvcmtzLCBmb3IgdmVyc2lvbiAxIGFuZCAyIHRyYW5zYWN0aW9ucyB3ZSBhZGQgYVxuICAgIC8vIGR1bW15IHZhbHVlLlxuICAgIGNvbnNlbnN1c0JyYW5jaElkOiB7XG4gICAgICAxOiAweDAwLFxuICAgICAgMjogMHgwMCxcbiAgICAgIDM6IDB4NWJhODFiMTksXG4gICAgICAvLyA0OiAweDc2YjgwOWJiIChvbGQgU2FwbGluZyBicmFuY2ggaWQpLiBCbG9zc29tIGJyYW5jaCBpZCBiZWNvbWVzIGVmZmVjdGl2ZSBhZnRlciBibG9jayA2NTM2MDBcbiAgICAgIC8vIDQ6IDB4MmJiNDBlNjBcbiAgICAgIC8vIDQ6IDB4ZjViOTIzMGIgKEhlYXJ0d29vZCBicmFuY2ggaWQsIHNlZSBodHRwczovL3ppcHMuei5jYXNoL3ppcC0wMjUwKVxuICAgICAgNDogMHhlOWZmNzVhNiAvLyAoQ2Fub3B5IGJyYW5jaCBpZCwgc2VlIGh0dHBzOi8vemlwcy56LmNhc2gvemlwLTAyNTEpXG4gICAgfSxcbiAgICBjb2luOiBjb2lucy5aRUNcbiAgfSxcbiAgemNhc2hUZXN0OiB7XG4gICAgbWVzc2FnZVByZWZpeDogJ1xceDE4WkNhc2ggU2lnbmVkIE1lc3NhZ2U6XFxuJyxcbiAgICBiaXAzMjogZ2V0RGVmYXVsdEJpcDMyVGVzdG5ldCgpLFxuICAgIHB1YktleUhhc2g6IDB4MWQyNSxcbiAgICBzY3JpcHRIYXNoOiAweDFjYmEsXG4gICAgd2lmOiAweGVmLFxuICAgIGNvbnNlbnN1c0JyYW5jaElkOiB7XG4gICAgICAxOiAweDAwLFxuICAgICAgMjogMHgwMCxcbiAgICAgIDM6IDB4NWJhODFiMTksXG4gICAgICAvLyA0OiAweDc2YjgwOWJiIChvbGQgU2FwbGluZyBicmFuY2ggaWQpXG4gICAgICAvLyA0OiAweDJiYjQwZTYwXG4gICAgICAvLyA0OiAweGY1YjkyMzBiIChIZWFydHdvb2QgYnJhbmNoIGlkLCBzZWUgaHR0cHM6Ly96aXBzLnouY2FzaC96aXAtMDI1MClcbiAgICAgIDQ6IDB4ZTlmZjc1YTYgLy8gKENhbm9weSBicmFuY2ggaWQsIHNlZSBodHRwczovL3ppcHMuei5jYXNoL3ppcC0wMjUxKVxuICAgIH0sXG4gICAgY29pbjogY29pbnMuWkVDXG4gIH1cbn1cbiJdfQ==
module.exports = networks;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29ya3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbmV0d29ya3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHO0FBRUg7Ozs7Ozs7Ozs7Ozs7OztFQWVFO0FBRUYsaURBQStGO0FBRS9GLFNBQVMsc0JBQXNCO0lBQzdCLE9BQU87UUFDTCxnQkFBZ0I7UUFDaEIsTUFBTSxFQUFFLFVBQVU7UUFDbEIsZ0JBQWdCO1FBQ2hCLE9BQU8sRUFBRSxVQUFVO0tBQ3BCLENBQUM7QUFDSixDQUFDO0FBRUQsU0FBUyxzQkFBc0I7SUFDN0IsT0FBTztRQUNMLGdCQUFnQjtRQUNoQixNQUFNLEVBQUUsVUFBVTtRQUNsQixnQkFBZ0I7UUFDaEIsT0FBTyxFQUFFLFVBQVU7S0FDcEIsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFFBQVEsR0FFdUQ7SUFDbkUsb0VBQW9FO0lBQ3BFLHFFQUFxRTtJQUNyRSxPQUFPLEVBQUU7UUFDUCxhQUFhLEVBQUUsK0JBQStCO1FBQzlDLE1BQU0sRUFBRSxJQUFJO1FBQ1osS0FBSyxFQUFFLHNCQUFzQixFQUFFO1FBQy9CLFVBQVUsRUFBRSxJQUFJO1FBQ2hCLFVBQVUsRUFBRSxJQUFJO1FBQ2hCLEdBQUcsRUFBRSxJQUFJO1FBQ1QsSUFBSSxFQUFFLG9CQUFLLENBQUMsR0FBRztLQUNoQjtJQUNELE9BQU8sRUFBRTtRQUNQLGFBQWEsRUFBRSwrQkFBK0I7UUFDOUMsTUFBTSxFQUFFLElBQUk7UUFDWixLQUFLLEVBQUUsc0JBQXNCLEVBQUU7UUFDL0IsVUFBVSxFQUFFLElBQUk7UUFDaEIsVUFBVSxFQUFFLElBQUk7UUFDaEIsR0FBRyxFQUFFLElBQUk7UUFDVCxJQUFJLEVBQUUsb0JBQUssQ0FBQyxHQUFHO0tBQ2hCO0lBRUQsNEVBQTRFO0lBQzVFLDZFQUE2RTtJQUM3RSxpRkFBaUY7SUFDakYsV0FBVyxFQUFFO1FBQ1gsYUFBYSxFQUFFLCtCQUErQjtRQUM5QyxLQUFLLEVBQUUs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LElBQUksRUFBRSxvQkFBSyxDQUFDLEdBQUc7S0FDaEI7Q0FDRixDQUFDO0FBRUYsaUJBQVMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuXG4vKlxuXG5UaGUgdmFsdWVzIGZvciB0aGUgdmFyaW91cyBmb3JrIGNvaW5zIGNhbiBiZSBmb3VuZCBpbiB0aGVzZSBmaWxlczpcblxucHJvcGVydHkgICAgICAgZmlsZW5hbWUgICAgICAgICAgICAgICAgICB2YXJuYW1lICAgICAgICAgICAgICAgICAgICAgICAgICAgbm90ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxubWVzc2FnZVByZWZpeCAgc3JjL3ZhbGlkYXRpb24uY3BwICAgICAgICBzdHJNZXNzYWdlTWFnaWMgICAgICAgICAgICAgICAgICAgRm9ybWF0IGAke0NvaW5OYW1lfSBTaWduZWQgTWVzc2FnZWBcbmJlY2gzMl9ocnAgICAgIHNyYy9jaGFpbnBhcmFtcy5jcHAgICAgICAgYmVjaDMyX2hycCAgICAgICAgICAgICAgICAgICAgICAgIE9ubHkgZm9yIHNvbWUgbmV0d29ya3NcbmJpcDMyLnB1YmxpYyAgIHNyYy9jaGFpbnBhcmFtcy5jcHAgICAgICAgYmFzZTU4UHJlZml4ZXNbRVhUX1BVQkxJQ19LRVldICAgIE1haW5uZXRzIGhhdmUgc2FtZSB2YWx1ZSwgdGVzdG5ldHMgaGF2ZSBzYW1lIHZhbHVlXG5iaXAzMi5wcml2YXRlICBzcmMvY2hhaW5wYXJhbXMuY3BwICAgICAgIGJhc2U1OFByZWZpeGVzW0VYVF9TRUNSRVRfS0VZXSAgICBNYWlubmV0cyBoYXZlIHNhbWUgdmFsdWUsIHRlc3RuZXRzIGhhdmUgc2FtZSB2YWx1ZVxucHViS2V5SGFzaCAgICAgc3JjL2NoYWlucGFyYW1zLmNwcCAgICAgICBiYXNlNThQcmVmaXhlc1tQVUJLRVlfQUREUkVTU11cbnNjcmlwdEhhc2ggICAgIHNyYy9jaGFpbnBhcmFtcy5jcHAgICAgICAgYmFzZTU4UHJlZml4ZXNbU0NSSVBUX0FERFJFU1NdXG53aWYgICAgICAgICAgICBzcmMvY2hhaW5wYXJhbXMuY3BwICAgICAgIGJhc2U1OFByZWZpeGVzW1NFQ1JFVF9LRVldICAgICAgICBUZXN0bmV0cyBoYXZlIHNhbWUgdmFsdWVcbmZvcmtJZCAgICAgICAgIHNyYy9zY3JpcHQvaW50ZXJwcmV0ZXIuaCAgRk9SS0lEXypcblxuKi9cblxuaW1wb3J0IHsgY29pbnMsIEJpdGNvaW5DYXNoTmV0d29yaywgTmV0d29yaywgTmV0d29ya05hbWUsIFpjYXNoTmV0d29yayB9IGZyb20gJy4vbmV0d29ya1R5cGVzJztcblxuZnVuY3Rpb24gZ2V0RGVmYXVsdEJpcDMyTWFpbm5ldCgpOiBOZXR3b3JrWydiaXAzMiddIHtcbiAgcmV0dXJuIHtcbiAgICAvLyBiYXNlNTggJ3hwdWInXG4gICAgcHVibGljOiAweDA0ODhiMjFlLFxuICAgIC8vIGJhc2U1OCAneHBydidcbiAgICBwcml2YXRlOiAweDA0ODhhZGU0LFxuICB9O1xufVxuXG5mdW5jdGlvbiBnZXREZWZhdWx0QmlwMzJUZXN0bmV0KCk6IE5ldHdvcmtbJ2JpcDMyJ10ge1xuICByZXR1cm4ge1xuICAgIC8vIGJhc2U1OCAndHB1YidcbiAgICBwdWJsaWM6IDB4MDQzNTg3Y2YsXG4gICAgLy8gYmFzZTU4ICd0cHJ2J1xuICAgIHByaXZhdGU6IDB4MDQzNTgzOTQsXG4gIH07XG59XG5cbmNvbnN0IG5ldHdvcmtzOiBSZWNvcmQ8TmV0d29ya05hbWUsIE5ldHdvcms+ICZcbiAgUmVjb3JkPCd6Y2FzaCcgfCAnemNhc2hUZXN0JywgWmNhc2hOZXR3b3JrPiAmXG4gIFJlY29yZDwnYml0Y29pbmNhc2gnIHwgJ2JpdGNvaW5jYXNoVGVzdG5ldCcsIEJpdGNvaW5DYXNoTmV0d29yaz4gPSB7XG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9iaXRjb2luL2JpdGNvaW4vYmxvYi9tYXN0ZXIvc3JjL3ZhbGlkYXRpb24uY3BwXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9iaXRjb2luL2JpdGNvaW4vYmxvYi9tYXN0ZXIvc3JjL2NoYWlucGFyYW1zLmNwcFxuICBiaXRjb2luOiB7XG4gICAgbWVzc2FnZVByZWZpeDogJ1xceDE4Qml0Y29pbiBTaWduZWQgTWVzc2FnZTpcXG4nLFxuICAgIGJlY2gzMjogJ2JjJyxcbiAgICBiaXAzMjogZ2V0RGVmYXVsdEJpcDMyTWFpbm5ldCgpLFxuICAgIHB1YktleUhhc2g6IDB4MDAsXG4gICAgc2NyaXB0SGFzaDogMHgwNSxcbiAgICB3aWY6IDB4ODAsXG4gICAgY29pbjogY29pbnMuQlRDLFxuICB9LFxuICB0ZXN0bmV0OiB7XG4gICAgbWVzc2FnZVByZWZpeDogJ1xceDE4Qml0Y29pbiBTaWduZWQgTWVzc2FnZTpcXG4nLFxuICAgIGJlY2gzMjogJ3RiJyxcbiAgICBiaXAzMjogZ2V0RGVmYXVsdEJpcDMyVGVzdG5ldCgpLFxuICAgIHB1YktleUhhc2g6IDB4NmYsXG4gICAgc2NyaXB0SGFzaDogMHhjNCxcbiAgICB3aWY6IDB4ZWYsXG4gICAgY29pbjogY29pbnMuQlRDLFxuICB9LFxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9CaXRjb2luLUFCQy9iaXRjb2luLWFiYy9ibG9iL21hc3Rlci9zcmMvdmFsaWRhdGlvbi5jcHBcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL0JpdGNvaW4tQUJDL2JpdGNvaW4tYWJjL2Jsb2IvbWFzdGVyL3NyYy9jaGFpbnBhcmFtcy5jcHBcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2JpdGNvaW5jYXNob3JnL2JpdGNvaW5jYXNoLm9yZy9ibG9iL21hc3Rlci9zcGVjL2Nhc2hhZGRyLm1kXG4gIGJpdGNvaW5jYXNoOiB7XG4gICAgbWVzc2FnZVByZWZpeDogJ1xceDE4Qml0Y29pbiBTaWduZWQgTWVzc2FnZTpcXG4nLFxuICAgIGJpcDMyOiBnZXREZWZhdWx0QmlwMzJNYWlubmV0KCksXG4gICAgcHViS2V5SGFzaDogMHgwMCxcbiAgICBzY3JpcHRIYXNoOiAweDA1LFxuICAgIHdpZjogMHg4MCxcbiAgICBjb2luOiBjb2lucy5CQ0gsXG4gICAgZm9ya0lkOiAweDAwLFxuICAgIGNhc2hBZGRyOiB7XG4gICAgICBwcmVmaXg6ICdiaXRjb2luY2FzaCcsXG4gICAgICBwdWJLZXlIYXNoOiAweDAwLFxuICAgICAgc2NyaXB0SGFzaDogMHgwOCxcbiAgICB9LFxuICB9LFxuICBiaXRjb2luY2FzaFRlc3RuZXQ6IHtcbiAgICBtZXNzYWdlUHJlZml4OiAnXFx4MThCaXRjb2luIFNpZ25lZCBNZXNzYWdlOlxcbicsXG4gICAgYmlwMzI6IGdldERlZmF1bHRCaXAzMlRlc3RuZXQoKSxcbiAgICBwdWJLZXlIYXNoOiAweDZmLFxuICAgIHNjcmlwdEhhc2g6IDB4YzQsXG4gICAgd2lmOiAweGVmLFxuICAgIGNvaW46IGNvaW5zLkJDSCxcbiAgICBjYXNoQWRkcjoge1xuICAgICAgcHJlZml4OiAnYmNodGVzdCcsXG4gICAgICBwdWJLZXlIYXNoOiAweDAwLFxuICAgICAgc2NyaXB0SGFzaDogMHgwOCxcbiAgICB9LFxuICB9LFxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9CVENHUFUvQlRDR1BVL2Jsb2IvbWFzdGVyL3NyYy92YWxpZGF0aW9uLmNwcFxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vQlRDR1BVL0JUQ0dQVS9ibG9iL21hc3Rlci9zcmMvY2hhaW5wYXJhbXMuY3BwXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9CVENHUFUvQlRDR1BVL2Jsb2IvbWFzdGVyL3NyYy9zY3JpcHQvaW50ZXJwcmV0ZXIuaFxuICBiaXRjb2luZ29sZDoge1xuICAgIG1lc3NhZ2VQcmVmaXg6ICdcXHgxOEJpdGNvaW4gR29sZCBTaWduZWQgTWVzc2FnZTpcXG4nLFxuICAgIGJlY2gzMjogJ2J0ZycsXG4gICAgYmlwMzI6IGdldERlZmF1bHRCaXAzMk1haW5uZXQoKSxcbiAgICBwdWJLZXlIYXNoOiAweDI2LFxuICAgIHNjcmlwdEhhc2g6IDB4MTcsXG4gICAgd2lmOiAweDgwLFxuICAgIGZvcmtJZDogNzksXG4gICAgY29pbjogY29pbnMuQlRHLFxuICB9LFxuICBiaXRjb2luZ29sZFRlc3RuZXQ6IHtcbiAgICBtZXNzYWdlUHJlZml4OiAnXFx4MThCaXRjb2luIEdvbGQgU2lnbmVkIE1lc3NhZ2U6XFxuJyxcbiAgICBiZWNoMzI6ICd0YnRnJyxcbiAgICBiaXAzMjogZ2V0RGVmYXVsdEJpcDMyVGVzdG5ldCgpLFxuICAgIHB1YktleUhhc2g6IDExMSxcbiAgICBzY3JpcHRIYXNoOiAxOTYsXG4gICAgd2lmOiAweGVmLFxuICAgIGZvcmtJZDogNzksXG4gICAgY29pbjogY29pbnMuQlRHLFxuICB9LFxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9iaXRjb2luLXN2L2JpdGNvaW4tc3YvYmxvYi9tYXN0ZXIvc3JjL3ZhbGlkYXRpb24uY3BwXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9iaXRjb2luLXN2L2JpdGNvaW4tc3YvYmxvYi9tYXN0ZXIvc3JjL2NoYWlucGFyYW1zLmNwcFxuICBiaXRjb2luc3Y6IHtcbiAgICBtZXNzYWdlUHJlZml4OiAnXFx4MThCaXRjb2luIFNpZ25lZCBNZXNzYWdlOlxcbicsXG4gICAgYmlwMzI6IGdldERlZmF1bHRCaXAzMk1haW5uZXQoKSxcbiAgICBwdWJLZXlIYXNoOiAweDAwLFxuICAgIHNjcmlwdEhhc2g6IDB4MDUsXG4gICAgd2lmOiAweDgwLFxuICAgIGNvaW46IGNvaW5zLkJTVixcbiAgICBmb3JrSWQ6IDB4MDAsXG4gIH0sXG4gIGJpdGNvaW5zdlRlc3RuZXQ6IHtcbiAgICBtZXNzYWdlUHJlZml4OiAnXFx4MThCaXRjb2luIFNpZ25lZCBNZXNzYWdlOlxcbicsXG4gICAgYmlwMzI6IGdldERlZmF1bHRCaXAzMlRlc3RuZXQoKSxcbiAgICBwdWJLZXlIYXNoOiAweDZmLFxuICAgIHNjcmlwdEhhc2g6IDB4YzQsXG4gICAgd2lmOiAweGVmLFxuICAgIGNvaW46IGNvaW5zLkJTVixcbiAgfSxcblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vZGFzaHBheS9kYXNoL2Jsb2IvbWFzdGVyL3NyYy92YWxpZGF0aW9uLmNwcFxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vZGFzaHBheS9kYXNoL2Jsb2IvbWFzdGVyL3NyYy9jaGFpbnBhcmFtcy5jcHBcbiAgZGFzaDoge1xuICAgIG1lc3NhZ2VQcmVmaXg6ICdcXHgxOURhcmtDb2luIFNpZ25lZCBNZXNzYWdlOlxcbicsXG4gICAgYmlwMzI6IGdldERlZmF1bHRCaXAzMk1haW5uZXQoKSxcbiAgICBwdWJLZXlIYXNoOiAweDRjLFxuICAgIHNjcmlwdEhhc2g6IDB4MTAsXG4gICAgd2lmOiAweGNjLFxuICAgIGNvaW46IGNvaW5zLkRBU0gsXG4gIH0sXG4gIGRhc2hUZXN0OiB7XG4gICAgbWVzc2FnZVByZWZpeDogJ1xceDE5RGFya0NvaW4gU2lnbmVkIE1lc3NhZ2U6XFxuJyxcbiAgICBiaXAzMjogZ2V0RGVmYXVsdEJpcDMyVGVzdG5ldCgpLFxuICAgIHB1YktleUhhc2g6IDB4OGMsXG4gICAgc2NyaXB0SGFzaDogMHgxMyxcbiAgICB3aWY6IDB4ZWYsXG4gICAgY29pbjogY29pbnMuREFTSCxcbiAgfSxcblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vbGl0ZWNvaW4tcHJvamVjdC9saXRlY29pbi9ibG9iL21hc3Rlci9zcmMvdmFsaWRhdGlvbi5jcHBcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2xpdGVjb2luLXByb2plY3QvbGl0ZWNvaW4vYmxvYi9tYXN0ZXIvc3JjL2NoYWlucGFyYW1zLmNwcFxuICBsaXRlY29pbjoge1xuICAgIG1lc3NhZ2VQcmVmaXg6ICdcXHgxOUxpdGVjb2luIFNpZ25lZCBNZXNzYWdlOlxcbicsXG4gICAgYmVjaDMyOiAnbHRjJyxcbiAgICBiaXAzMjogZ2V0RGVmYXVsdEJpcDMyTWFpbm5ldCgpLFxuICAgIHB1YktleUhhc2g6IDB4MzAsXG4gICAgc2NyaXB0SGFzaDogMHgzMixcbiAgICB3aWY6IDB4YjAsXG4gICAgY29pbjogY29pbnMuTFRDLFxuICB9LFxuICBsaXRlY29pblRlc3Q6IHtcbiAgICBtZXNzYWdlUHJlZml4OiAnXFx4MTlMaXRlY29pbiBTaWduZWQgTWVzc2FnZTpcXG4nLFxuICAgIGJlY2gzMjogJ3RsdGMnLFxuICAgIGJpcDMyOiBnZXREZWZhdWx0QmlwMzJUZXN0bmV0KCksXG4gICAgcHViS2V5SGFzaDogMHg2ZixcbiAgICBzY3JpcHRIYXNoOiAweDNhLFxuICAgIHdpZjogMHhlZixcbiAgICBjb2luOiBjb2lucy5MVEMsXG4gIH0sXG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3pjYXNoL3pjYXNoL2Jsb2IvbWFzdGVyL3NyYy92YWxpZGF0aW9uLmNwcFxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vemNhc2gvemNhc2gvYmxvYi9tYXN0ZXIvc3JjL2NoYWlucGFyYW1zLmNwcFxuICB6Y2FzaDoge1xuICAgIG1lc3NhZ2VQcmVmaXg6ICdcXHgxOFpDYXNoIFNpZ25lZCBNZXNzYWdlOlxcbicsXG4gICAgYmlwMzI6IGdldERlZmF1bHRCaXAzMk1haW5uZXQoKSxcbiAgICBwdWJLZXlIYXNoOiAweDFjYjgsXG4gICAgc2NyaXB0SGFzaDogMHgxY2JkLFxuICAgIHdpZjogMHg4MCxcbiAgICAvLyBUaGlzIHBhcmFtZXRlciB3YXMgaW50cm9kdWNlZCBpbiB2ZXJzaW9uIDMgdG8gYWxsb3cgc29mdCBmb3JrcywgZm9yIHZlcnNpb24gMSBhbmQgMiB0cmFuc2FjdGlvbnMgd2UgYWRkIGFcbiAgICAvLyBkdW1teSB2YWx1ZS5cbiAgICBjb25zZW5zdXNCcmFuY2hJZDoge1xuICAgICAgMTogMHgwMCxcbiAgICAgIDI6IDB4MDAsXG4gICAgICAzOiAweDViYTgxYjE5LFxuICAgICAgLy8gNDogMHg3NmI4MDliYiAob2xkIFNhcGxpbmcgYnJhbmNoIGlkKS4gQmxvc3NvbSBicmFuY2ggaWQgYmVjb21lcyBlZmZlY3RpdmUgYWZ0ZXIgYmxvY2sgNjUzNjAwXG4gICAgICAvLyA0OiAweDJiYjQwZTYwXG4gICAgICAvLyA0OiAweGY1YjkyMzBiIChIZWFydHdvb2QgYnJhbmNoIGlkLCBzZWUgaHR0cHM6Ly96aXBzLnouY2FzaC96aXAtMDI1MClcbiAgICAgIDQ6IDB4ZTlmZjc1YTYsIC8vIChDYW5vcHkgYnJhbmNoIGlkLCBzZWUgaHR0cHM6Ly96aXBzLnouY2FzaC96aXAtMDI1MSlcbiAgICB9LFxuICAgIGNvaW46IGNvaW5zLlpFQyxcbiAgfSxcbiAgemNhc2hUZXN0OiB7XG4gICAgbWVzc2FnZVByZWZpeDogJ1xceDE4WkNhc2ggU2lnbmVkIE1lc3NhZ2U6XFxuJyxcbiAgICBiaXAzMjogZ2V0RGVmYXVsdEJpcDMyVGVzdG5ldCgpLFxuICAgIHB1YktleUhhc2g6IDB4MWQyNSxcbiAgICBzY3JpcHRIYXNoOiAweDFjYmEsXG4gICAgd2lmOiAweGVmLFxuICAgIGNvbnNlbnN1c0JyYW5jaElkOiB7XG4gICAgICAxOiAweDAwLFxuICAgICAgMjogMHgwMCxcbiAgICAgIDM6IDB4NWJhODFiMTksXG4gICAgICAvLyA0OiAweDc2YjgwOWJiIChvbGQgU2FwbGluZyBicmFuY2ggaWQpXG4gICAgICAvLyA0OiAweDJiYjQwZTYwXG4gICAgICAvLyA0OiAweGY1YjkyMzBiIChIZWFydHdvb2QgYnJhbmNoIGlkLCBzZWUgaHR0cHM6Ly96aXBzLnouY2FzaC96aXAtMDI1MClcbiAgICAgIDQ6IDB4ZTlmZjc1YTYsIC8vIChDYW5vcHkgYnJhbmNoIGlkLCBzZWUgaHR0cHM6Ly96aXBzLnouY2FzaC96aXAtMDI1MSlcbiAgICB9LFxuICAgIGNvaW46IGNvaW5zLlpFQyxcbiAgfSxcbn07XG5cbmV4cG9ydCA9IG5ldHdvcmtzO1xuIl19
{
"name": "@bitgo/utxo-lib",
"version": "1.9.6",
"version": "1.9.7-rc.0.0.1.0",
"description": "Client-side Bitcoin JavaScript library",

@@ -24,3 +24,3 @@ "main": "./dist/src/index.js",

"coverage-html": "nyc report --reporter=html",
"coverage": "npm run build && BITGO_UTXO_LIB_TEST_EXPECTED_COUNT=3539 nyc --check-coverage --branches 89 --functions 90 mocha",
"coverage": "npm run build && BITGO_UTXO_LIB_TEST_EXPECTED_COUNT=3594 nyc --check-coverage --branches 88 --functions 90 mocha",
"integration-test": "mocha test/integration/",

@@ -78,3 +78,3 @@ "standard": "standard",

},
"gitHead": "3d8946eb94fddc51924c8317fd70871062b4a755"
"gitHead": "97044012d54af712cd2196f8dc4dc9431523252f"
}

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc