@bitgo/sdk-coin-eth 4.10.0 → 7.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +126 -0
- package/dist/src/erc20Token.d.ts +12 -4
- package/dist/src/erc20Token.d.ts.map +1 -1
- package/dist/src/erc20Token.js +20 -3
- package/dist/src/eth.d.ts +20 -534
- package/dist/src/eth.d.ts.map +1 -1
- package/dist/src/eth.js +180 -1609
- package/dist/src/gteth.d.ts +0 -4
- package/dist/src/gteth.d.ts.map +1 -1
- package/dist/src/gteth.js +1 -11
- package/dist/src/hteth.d.ts +0 -4
- package/dist/src/hteth.d.ts.map +1 -1
- package/dist/src/hteth.js +1 -11
- package/dist/src/lib/index.d.ts +4 -13
- package/dist/src/lib/index.d.ts.map +1 -1
- package/dist/src/lib/index.js +12 -29
- package/dist/src/lib/transactionBuilder.d.ts +3 -205
- package/dist/src/lib/transactionBuilder.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilder.js +10 -658
- package/dist/src/lib/transferBuilder.d.ts +2 -50
- package/dist/src/lib/transferBuilder.d.ts.map +1 -1
- package/dist/src/lib/transferBuilder.js +3 -199
- package/dist/src/lib/transferBuilders/index.d.ts +2 -3
- package/dist/src/lib/transferBuilders/index.d.ts.map +1 -1
- package/dist/src/lib/transferBuilders/index.js +6 -14
- package/dist/src/lib/walletUtil.d.ts +0 -25
- package/dist/src/lib/walletUtil.d.ts.map +1 -1
- package/dist/src/lib/walletUtil.js +2 -27
- package/dist/src/teth.d.ts +0 -3
- package/dist/src/teth.d.ts.map +1 -1
- package/dist/src/teth.js +1 -8
- package/package.json +9 -15
- package/dist/src/lib/contractCall.d.ts +0 -8
- package/dist/src/lib/contractCall.d.ts.map +0 -1
- package/dist/src/lib/contractCall.js +0 -17
- package/dist/src/lib/iface.d.ts +0 -130
- package/dist/src/lib/iface.d.ts.map +0 -1
- package/dist/src/lib/iface.js +0 -8
- package/dist/src/lib/keyPair.d.ts +0 -26
- package/dist/src/lib/keyPair.d.ts.map +0 -1
- package/dist/src/lib/keyPair.js +0 -66
- package/dist/src/lib/transaction.d.ts +0 -64
- package/dist/src/lib/transaction.d.ts.map +0 -1
- package/dist/src/lib/transaction.js +0 -137
- package/dist/src/lib/transferBuilders/baseNFTTransferBuilder.d.ts +0 -47
- package/dist/src/lib/transferBuilders/baseNFTTransferBuilder.d.ts.map +0 -1
- package/dist/src/lib/transferBuilders/baseNFTTransferBuilder.js +0 -113
- package/dist/src/lib/transferBuilders/transferBuilderERC1155.d.ts +0 -14
- package/dist/src/lib/transferBuilders/transferBuilderERC1155.d.ts.map +0 -1
- package/dist/src/lib/transferBuilders/transferBuilderERC1155.js +0 -83
- package/dist/src/lib/transferBuilders/transferBuilderERC721.d.ts +0 -13
- package/dist/src/lib/transferBuilders/transferBuilderERC721.d.ts.map +0 -1
- package/dist/src/lib/transferBuilders/transferBuilderERC721.js +0 -68
- package/dist/src/lib/types.d.ts +0 -39
- package/dist/src/lib/types.d.ts.map +0 -1
- package/dist/src/lib/types.js +0 -137
- package/dist/src/lib/utils.d.ts +0 -228
- package/dist/src/lib/utils.d.ts.map +0 -1
- package/dist/src/lib/utils.js +0 -577
|
@@ -1,41 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
import { TransferBuilder as EthTransferBuilder } from '@bitgo/abstract-eth';
|
|
2
2
|
/** ETH transfer builder */
|
|
3
|
-
export declare class TransferBuilder {
|
|
4
|
-
private readonly _EMPTY_HEX_VALUE;
|
|
5
|
-
protected _amount: string;
|
|
6
|
-
protected _toAddress: string;
|
|
7
|
-
protected _sequenceId: number;
|
|
8
|
-
protected _signKey: string;
|
|
9
|
-
protected _expirationTime: number;
|
|
10
|
-
protected _signature: string;
|
|
11
|
-
private _data;
|
|
12
|
-
private _tokenContractAddress?;
|
|
13
|
-
private _coin;
|
|
14
|
-
constructor(serializedData?: string);
|
|
15
|
-
/**
|
|
16
|
-
* A method to set the ERC20 token to be transferred.
|
|
17
|
-
* This ERC20 token may not be compatible with the network.
|
|
18
|
-
*
|
|
19
|
-
* @param {string} coin the ERC20 coin to be set
|
|
20
|
-
* @returns {TransferBuilder} the transfer builder instance modified
|
|
21
|
-
*/
|
|
22
|
-
coin(coin: string): TransferBuilder;
|
|
23
|
-
data(additionalData: string): TransferBuilder;
|
|
24
|
-
amount(amount: string): this;
|
|
25
|
-
to(address: string): TransferBuilder;
|
|
26
|
-
contractSequenceId(counter: number): TransferBuilder;
|
|
27
|
-
key(signKey: string): TransferBuilder;
|
|
28
|
-
expirationTime(date: number): TransferBuilder;
|
|
29
|
-
signAndBuild(): string;
|
|
30
|
-
private hasMandatoryFields;
|
|
31
|
-
/**
|
|
32
|
-
* Obtains the proper operation hash to sign either a sendMultiSig data
|
|
33
|
-
* or a sendMultiSigToken data
|
|
34
|
-
*
|
|
35
|
-
* @returns {string} the operation hash
|
|
36
|
-
*/
|
|
37
|
-
private getOperationHash;
|
|
38
|
-
protected getOperationData(): (string | Buffer)[][];
|
|
3
|
+
export declare class TransferBuilder extends EthTransferBuilder {
|
|
39
4
|
/**
|
|
40
5
|
* Get the prefix used in generating an operation hash for sending tokens
|
|
41
6
|
*
|
|
@@ -48,18 +13,5 @@ export declare class TransferBuilder {
|
|
|
48
13
|
* @returns the string prefix
|
|
49
14
|
*/
|
|
50
15
|
protected getNativeOperationHashPrefix(): string;
|
|
51
|
-
/** Return an expiration time, in seconds, set to one hour from now
|
|
52
|
-
*
|
|
53
|
-
* @returns {number} expiration time
|
|
54
|
-
*/
|
|
55
|
-
private getExpirationTime;
|
|
56
|
-
/**
|
|
57
|
-
* If a signing key is set for this builder, recalculates the signature
|
|
58
|
-
*
|
|
59
|
-
* @returns {string} the signature value
|
|
60
|
-
*/
|
|
61
|
-
protected getSignature(): string;
|
|
62
|
-
protected ethSignMsgHash(): string;
|
|
63
|
-
private decodeTransferData;
|
|
64
16
|
}
|
|
65
17
|
//# sourceMappingURL=transferBuilder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transferBuilder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,IAAI,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE5E,2BAA2B;AAC3B,qBAAa,eAAgB,SAAQ,kBAAkB;IACrD;;;;OAIG;IACH,SAAS,CAAC,2BAA2B,IAAI,MAAM;IAI/C;;;;OAIG;IACH,SAAS,CAAC,4BAA4B,IAAI,MAAM;CAGjD"}
|
|
@@ -1,157 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
|
-
};
|
|
24
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
3
|
exports.TransferBuilder = void 0;
|
|
26
|
-
const
|
|
27
|
-
const ethereumjs_abi_1 = __importDefault(require("ethereumjs-abi"));
|
|
28
|
-
const bn_js_1 = __importDefault(require("bn.js"));
|
|
29
|
-
const statics_1 = require("@bitgo/statics");
|
|
30
|
-
const sdk_core_1 = require("@bitgo/sdk-core");
|
|
31
|
-
const utils_1 = require("./utils");
|
|
4
|
+
const abstract_eth_1 = require("@bitgo/abstract-eth");
|
|
32
5
|
/** ETH transfer builder */
|
|
33
|
-
class TransferBuilder {
|
|
34
|
-
constructor(serializedData) {
|
|
35
|
-
this._EMPTY_HEX_VALUE = '0x';
|
|
36
|
-
if (serializedData) {
|
|
37
|
-
this.decodeTransferData(serializedData);
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
40
|
-
// initialize with default values for non mandatory fields
|
|
41
|
-
this._expirationTime = this.getExpirationTime();
|
|
42
|
-
this._data = this._EMPTY_HEX_VALUE;
|
|
43
|
-
this._signature = this._EMPTY_HEX_VALUE;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* A method to set the ERC20 token to be transferred.
|
|
48
|
-
* This ERC20 token may not be compatible with the network.
|
|
49
|
-
*
|
|
50
|
-
* @param {string} coin the ERC20 coin to be set
|
|
51
|
-
* @returns {TransferBuilder} the transfer builder instance modified
|
|
52
|
-
*/
|
|
53
|
-
coin(coin) {
|
|
54
|
-
this._coin = statics_1.coins.get(coin);
|
|
55
|
-
if (this._coin instanceof statics_1.ContractAddressDefinedToken) {
|
|
56
|
-
this._tokenContractAddress = this._coin.contractAddress.toString();
|
|
57
|
-
}
|
|
58
|
-
return this;
|
|
59
|
-
}
|
|
60
|
-
data(additionalData) {
|
|
61
|
-
this._signature = this._EMPTY_HEX_VALUE;
|
|
62
|
-
this._data = additionalData;
|
|
63
|
-
return this;
|
|
64
|
-
}
|
|
65
|
-
amount(amount) {
|
|
66
|
-
if (!utils_1.isValidAmount(amount)) {
|
|
67
|
-
throw new sdk_core_1.InvalidParameterValueError('Invalid amount');
|
|
68
|
-
}
|
|
69
|
-
this._signature = this._EMPTY_HEX_VALUE;
|
|
70
|
-
this._amount = amount;
|
|
71
|
-
return this;
|
|
72
|
-
}
|
|
73
|
-
to(address) {
|
|
74
|
-
if (utils_1.isValidEthAddress(address)) {
|
|
75
|
-
this._signature = this._EMPTY_HEX_VALUE;
|
|
76
|
-
this._toAddress = address;
|
|
77
|
-
return this;
|
|
78
|
-
}
|
|
79
|
-
throw new sdk_core_1.InvalidParameterValueError('Invalid address');
|
|
80
|
-
}
|
|
81
|
-
contractSequenceId(counter) {
|
|
82
|
-
if (counter >= 0) {
|
|
83
|
-
this._signature = this._EMPTY_HEX_VALUE;
|
|
84
|
-
this._sequenceId = counter;
|
|
85
|
-
return this;
|
|
86
|
-
}
|
|
87
|
-
throw new sdk_core_1.InvalidParameterValueError('Invalid contract sequence id');
|
|
88
|
-
}
|
|
89
|
-
key(signKey) {
|
|
90
|
-
this._signKey = signKey;
|
|
91
|
-
return this;
|
|
92
|
-
}
|
|
93
|
-
expirationTime(date) {
|
|
94
|
-
if (date > 0) {
|
|
95
|
-
this._signature = this._EMPTY_HEX_VALUE;
|
|
96
|
-
this._expirationTime = date;
|
|
97
|
-
return this;
|
|
98
|
-
}
|
|
99
|
-
throw new sdk_core_1.InvalidParameterValueError('Invalid expiration time');
|
|
100
|
-
}
|
|
101
|
-
signAndBuild() {
|
|
102
|
-
if (this.hasMandatoryFields()) {
|
|
103
|
-
if (this._tokenContractAddress !== undefined) {
|
|
104
|
-
return utils_1.sendMultiSigTokenData(this._toAddress, this._amount, this._tokenContractAddress, this._expirationTime, this._sequenceId, this.getSignature());
|
|
105
|
-
}
|
|
106
|
-
else {
|
|
107
|
-
return utils_1.sendMultiSigData(this._toAddress, this._amount, this._data, this._expirationTime, this._sequenceId, this.getSignature());
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
throw new sdk_core_1.BuildTransactionError('Missing transfer mandatory fields. Amount, destination (to) address and sequenceID are mandatory');
|
|
111
|
-
}
|
|
112
|
-
hasMandatoryFields() {
|
|
113
|
-
return this._amount !== undefined && this._toAddress !== undefined && this._sequenceId !== undefined;
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* Obtains the proper operation hash to sign either a sendMultiSig data
|
|
117
|
-
* or a sendMultiSigToken data
|
|
118
|
-
*
|
|
119
|
-
* @returns {string} the operation hash
|
|
120
|
-
*/
|
|
121
|
-
getOperationHash() {
|
|
122
|
-
const operationData = this.getOperationData();
|
|
123
|
-
return ethUtil.bufferToHex(ethereumjs_abi_1.default.soliditySHA3(...operationData));
|
|
124
|
-
}
|
|
125
|
-
getOperationData() {
|
|
126
|
-
let operationData;
|
|
127
|
-
if (this._tokenContractAddress !== undefined) {
|
|
128
|
-
operationData = [
|
|
129
|
-
['string', 'address', 'uint', 'address', 'uint', 'uint'],
|
|
130
|
-
[
|
|
131
|
-
this.getTokenOperationHashPrefix(),
|
|
132
|
-
new bn_js_1.default(ethUtil.stripHexPrefix(this._toAddress), 16),
|
|
133
|
-
this._amount,
|
|
134
|
-
new bn_js_1.default(ethUtil.stripHexPrefix(this._tokenContractAddress), 16),
|
|
135
|
-
this._expirationTime,
|
|
136
|
-
this._sequenceId,
|
|
137
|
-
],
|
|
138
|
-
];
|
|
139
|
-
}
|
|
140
|
-
else {
|
|
141
|
-
operationData = [
|
|
142
|
-
['string', 'address', 'uint', 'bytes', 'uint', 'uint'],
|
|
143
|
-
[
|
|
144
|
-
this.getNativeOperationHashPrefix(),
|
|
145
|
-
new bn_js_1.default(ethUtil.stripHexPrefix(this._toAddress), 16),
|
|
146
|
-
this._amount,
|
|
147
|
-
Buffer.from(ethUtil.padToEven(ethUtil.stripHexPrefix(this._data)) || '', 'hex'),
|
|
148
|
-
this._expirationTime,
|
|
149
|
-
this._sequenceId,
|
|
150
|
-
],
|
|
151
|
-
];
|
|
152
|
-
}
|
|
153
|
-
return operationData;
|
|
154
|
-
}
|
|
6
|
+
class TransferBuilder extends abstract_eth_1.TransferBuilder {
|
|
155
7
|
/**
|
|
156
8
|
* Get the prefix used in generating an operation hash for sending tokens
|
|
157
9
|
*
|
|
@@ -168,54 +20,6 @@ class TransferBuilder {
|
|
|
168
20
|
getNativeOperationHashPrefix() {
|
|
169
21
|
return 'ETHER';
|
|
170
22
|
}
|
|
171
|
-
/** Return an expiration time, in seconds, set to one hour from now
|
|
172
|
-
*
|
|
173
|
-
* @returns {number} expiration time
|
|
174
|
-
*/
|
|
175
|
-
getExpirationTime() {
|
|
176
|
-
const currentDate = new Date();
|
|
177
|
-
currentDate.setHours(currentDate.getHours() + 1);
|
|
178
|
-
return currentDate.getTime() / 1000;
|
|
179
|
-
}
|
|
180
|
-
/**
|
|
181
|
-
* If a signing key is set for this builder, recalculates the signature
|
|
182
|
-
*
|
|
183
|
-
* @returns {string} the signature value
|
|
184
|
-
*/
|
|
185
|
-
getSignature() {
|
|
186
|
-
if (this._signKey) {
|
|
187
|
-
this._signature = this.ethSignMsgHash();
|
|
188
|
-
}
|
|
189
|
-
return this._signature;
|
|
190
|
-
}
|
|
191
|
-
ethSignMsgHash() {
|
|
192
|
-
const data = this.getOperationHash();
|
|
193
|
-
const keyBuffer = Buffer.from(ethUtil.padToEven(this._signKey), 'hex');
|
|
194
|
-
if (keyBuffer.length != 32) {
|
|
195
|
-
throw new Error('private key length is invalid');
|
|
196
|
-
}
|
|
197
|
-
const signatureInParts = ethUtil.ecsign(Buffer.from(ethUtil.padToEven(ethUtil.stripHexPrefix(data)), 'hex'), keyBuffer);
|
|
198
|
-
// Assemble strings from r, s and v
|
|
199
|
-
const r = ethUtil.setLengthLeft(signatureInParts.r, 32).toString('hex');
|
|
200
|
-
const s = ethUtil.setLengthLeft(signatureInParts.s, 32).toString('hex');
|
|
201
|
-
const v = ethUtil.stripHexPrefix(ethUtil.intToHex(signatureInParts.v));
|
|
202
|
-
// Concatenate the r, s and v parts to make the signature string
|
|
203
|
-
return ethUtil.addHexPrefix(r.concat(s, v));
|
|
204
|
-
}
|
|
205
|
-
decodeTransferData(data) {
|
|
206
|
-
const transferData = utils_1.decodeTransferData(data);
|
|
207
|
-
this._toAddress = transferData.to;
|
|
208
|
-
this._amount = transferData.amount;
|
|
209
|
-
this._expirationTime = transferData.expireTime;
|
|
210
|
-
this._sequenceId = transferData.sequenceId;
|
|
211
|
-
this._signature = transferData.signature;
|
|
212
|
-
if (transferData.data) {
|
|
213
|
-
this._data = transferData.data;
|
|
214
|
-
}
|
|
215
|
-
if (transferData.tokenContractAddress) {
|
|
216
|
-
this._tokenContractAddress = transferData.tokenContractAddress;
|
|
217
|
-
}
|
|
218
|
-
}
|
|
219
23
|
}
|
|
220
24
|
exports.TransferBuilder = TransferBuilder;
|
|
221
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2ZlckJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHlEQUEyQztBQUMzQyxvRUFBeUM7QUFDekMsa0RBQXVCO0FBQ3ZCLDRDQUE4RTtBQUM5RSw4Q0FBb0Y7QUFDcEYsbUNBQXdIO0FBRXhILDJCQUEyQjtBQUMzQixNQUFhLGVBQWU7SUFZMUIsWUFBWSxjQUF1QjtRQVhsQixxQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFZdkMsSUFBSSxjQUFjLEVBQUU7WUFDbEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQ3pDO2FBQU07WUFDTCwwREFBMEQ7WUFDMUQsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUNoRCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztZQUNuQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztTQUN6QztJQUNILENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxJQUFJLENBQUMsSUFBWTtRQUNmLElBQUksQ0FBQyxLQUFLLEdBQUcsZUFBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUU3QixJQUFJLElBQUksQ0FBQyxLQUFLLFlBQVkscUNBQTJCLEVBQUU7WUFDckQsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQ3BFO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsSUFBSSxDQUFDLGNBQXNCO1FBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBQ3hDLElBQUksQ0FBQyxLQUFLLEdBQUcs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QUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEUsTUFBTSxDQUFDLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sQ0FBQyxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRXZFLGdFQUFnRTtRQUNoRSxPQUFPLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRU8sa0JBQWtCLENBQUMsSUFBWTtRQUNyQyxNQUFNLFlBQVksR0FBRywwQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUU5QyxJQUFJLENBQUMsVUFBVSxHQUFHLFlBQVksQ0FBQyxFQUFFLENBQUM7UUFDbEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDO1FBQ25DLElBQUksQ0FBQyxlQUFlLEdBQUcsWUFBWSxDQUFDLFVBQVUsQ0FBQztRQUMvQyxJQUFJLENBQUMsV0FBVyxHQUFHLFlBQVksQ0FBQyxVQUFVLENBQUM7UUFDM0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxZQUFZLENBQUMsU0FBUyxDQUFDO1FBRXpDLElBQUksWUFBWSxDQUFDLElBQUksRUFBRTtZQUNyQixJQUFJLENBQUMsS0FBSyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUM7U0FDaEM7UUFFRCxJQUFJLFlBQVksQ0FBQyxvQkFBb0IsRUFBRTtZQUNyQyxJQUFJLENBQUMscUJBQXFCLEdBQUcsWUFBWSxDQUFDLG9CQUFvQixDQUFDO1NBQ2hFO0lBQ0gsQ0FBQztDQUNGO0FBNU9ELDBDQTRPQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGV0aFV0aWwgZnJvbSAnZXRoZXJldW1qcy11dGlsJztcbmltcG9ydCBFdGhlcmV1bUFiaSBmcm9tICdldGhlcmV1bWpzLWFiaSc7XG5pbXBvcnQgQk4gZnJvbSAnYm4uanMnO1xuaW1wb3J0IHsgY29pbnMsIEJhc2VDb2luLCBDb250cmFjdEFkZHJlc3NEZWZpbmVkVG9rZW4gfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsIEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB7IGRlY29kZVRyYW5zZmVyRGF0YSwgc2VuZE11bHRpU2lnRGF0YSwgc2VuZE11bHRpU2lnVG9rZW5EYXRhLCBpc1ZhbGlkRXRoQWRkcmVzcywgaXNWYWxpZEFtb3VudCB9IGZyb20gJy4vdXRpbHMnO1xuXG4vKiogRVRIIHRyYW5zZmVyIGJ1aWxkZXIgKi9cbmV4cG9ydCBjbGFzcyBUcmFuc2ZlckJ1aWxkZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IF9FTVBUWV9IRVhfVkFMVUUgPSAnMHgnO1xuICBwcm90ZWN0ZWQgX2Ftb3VudDogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX3RvQWRkcmVzczogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX3NlcXVlbmNlSWQ6IG51bWJlcjtcbiAgcHJvdGVjdGVkIF9zaWduS2V5OiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfZXhwaXJhdGlvblRpbWU6IG51bWJlcjtcbiAgcHJvdGVjdGVkIF9zaWduYXR1cmU6IHN0cmluZztcbiAgcHJpdmF0ZSBfZGF0YTogc3RyaW5nO1xuICBwcml2YXRlIF90b2tlbkNvbnRyYWN0QWRkcmVzcz86IHN0cmluZztcbiAgcHJpdmF0ZSBfY29pbjogUmVhZG9ubHk8QmFzZUNvaW4+O1xuXG4gIGNvbnN0cnVjdG9yKHNlcmlhbGl6ZWREYXRhPzogc3RyaW5nKSB7XG4gICAgaWYgKHNlcmlhbGl6ZWREYXRhKSB7XG4gICAgICB0aGlzLmRlY29kZVRyYW5zZmVyRGF0YShzZXJpYWxpemVkRGF0YSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIGluaXRpYWxpemUgd2l0aCBkZWZhdWx0IHZhbHVlcyBmb3Igbm9uIG1hbmRhdG9yeSBmaWVsZHNcbiAgICAgIHRoaXMuX2V4cGlyYXRpb25UaW1lID0gdGhpcy5nZXRFeHBpcmF0aW9uVGltZSgpO1xuICAgICAgdGhpcy5fZGF0YSA9IHRoaXMuX0VNUFRZX0hFWF9WQUxVRTtcbiAgICAgIHRoaXMuX3NpZ25hdHVyZSA9IHRoaXMuX0VNUFRZX0hFWF9WQUxVRTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQSBtZXRob2QgdG8gc2V0IHRoZSBFUkMyMCB0b2tlbiB0byBiZSB0cmFuc2ZlcnJlZC5cbiAgICogVGhpcyBFUkMyMCB0b2tlbiBtYXkgbm90IGJlIGNvbXBhdGlibGUgd2l0aCB0aGUgbmV0d29yay5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGNvaW4gdGhlIEVSQzIwIGNvaW4gdG8gYmUgc2V0XG4gICAqIEByZXR1cm5zIHtUcmFuc2ZlckJ1aWxkZXJ9IHRoZSB0cmFuc2ZlciBidWlsZGVyIGluc3RhbmNlIG1vZGlmaWVkXG4gICAqL1xuICBjb2luKGNvaW46IHN0cmluZyk6IFRyYW5zZmVyQnVpbGRlciB7XG4gICAgdGhpcy5fY29pbiA9IGNvaW5zLmdldChjb2luKTtcblxuICAgIGlmICh0aGlzLl9jb2luIGluc3RhbmNlb2YgQ29udHJhY3RBZGRyZXNzRGVmaW5lZFRva2VuKSB7XG4gICAgICB0aGlzLl90b2tlbkNvbnRyYWN0QWRkcmVzcyA9IHRoaXMuX2NvaW4uY29udHJhY3RBZGRyZXNzLnRvU3RyaW5nKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBkYXRhKGFkZGl0aW9uYWxEYXRhOiBzdHJpbmcpOiBUcmFuc2ZlckJ1aWxkZXIge1xuICAgIHRoaXMuX3NpZ25hdHVyZSA9IHRoaXMuX0VNUFRZX0hFWF9WQUxVRTtcbiAgICB0aGlzLl9kYXRhID0gYWRkaXRpb25hbERhdGE7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBhbW91bnQoYW1vdW50OiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAoIWlzVmFsaWRBbW91bnQoYW1vdW50KSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yKCdJbnZhbGlkIGFtb3VudCcpO1xuICAgIH1cbiAgICB0aGlzLl9zaWduYXR1cmUgPSB0aGlzLl9FTVBUWV9IRVhfVkFMVUU7XG4gICAgdGhpcy5fYW1vdW50ID0gYW1vdW50O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgdG8oYWRkcmVzczogc3RyaW5nKTogVHJhbnNmZXJCdWlsZGVyIHtcbiAgICBpZiAoaXNWYWxpZEV0aEFkZHJlc3MoYWRkcmVzcykpIHtcbiAgICAgIHRoaXMuX3NpZ25hdHVyZSA9IHRoaXMuX0VNUFRZX0hFWF9WQUxVRTtcbiAgICAgIHRoaXMuX3RvQWRkcmVzcyA9IGFkZHJlc3M7XG4gICAgICByZXR1cm4gdGhpcztcbiAgICB9XG4gICAgdGhyb3cgbmV3IEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yKCdJbnZhbGlkIGFkZHJlc3MnKTtcbiAgfVxuXG4gIGNvbnRyYWN0U2VxdWVuY2VJZChjb3VudGVyOiBudW1iZXIpOiBUcmFuc2ZlckJ1aWxkZXIge1xuICAgIGlmIChjb3VudGVyID49IDApIHtcbiAgICAgIHRoaXMuX3NpZ25hdHVyZSA9IHRoaXMuX0VNUFRZX0hFWF9WQUxVRTtcbiAgICAgIHRoaXMuX3NlcXVlbmNlSWQgPSBjb3VudGVyO1xuICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuICAgIHRocm93IG5ldyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcignSW52YWxpZCBjb250cmFjdCBzZXF1ZW5jZSBpZCcpO1xuICB9XG5cbiAga2V5KHNpZ25LZXk6IHN0cmluZyk6IFRyYW5zZmVyQnVpbGRlciB7XG4gICAgdGhpcy5fc2lnbktleSA9IHNpZ25LZXk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBleHBpcmF0aW9uVGltZShkYXRlOiBudW1iZXIpOiBUcmFuc2ZlckJ1aWxkZXIge1xuICAgIGlmIChkYXRlID4gMCkge1xuICAgICAgdGhpcy5fc2lnbmF0dXJlID0gdGhpcy5fRU1QVFlfSEVYX1ZBTFVFO1xuICAgICAgdGhpcy5fZXhwaXJhdGlvblRpbWUgPSBkYXRlO1xuICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuICAgIHRocm93IG5ldyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcignSW52YWxpZCBleHBpcmF0aW9uIHRpbWUnKTtcbiAgfVxuXG4gIHNpZ25BbmRCdWlsZCgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLmhhc01hbmRhdG9yeUZpZWxkcygpKSB7XG4gICAgICBpZiAodGhpcy5fdG9rZW5Db250cmFjdEFkZHJlc3MgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICByZXR1cm4gc2VuZE11bHRpU2lnVG9rZW5EYXRhKFxuICAgICAgICAgIHRoaXMuX3RvQWRkcmVzcyxcbiAgICAgICAgICB0aGlzLl9hbW91bnQsXG4gICAgICAgICAgdGhpcy5fdG9rZW5Db250cmFjdEFkZHJlc3MsXG4gICAgICAgICAgdGhpcy5fZXhwaXJhdGlvblRpbWUsXG4gICAgICAgICAgdGhpcy5fc2VxdWVuY2VJZCxcbiAgICAgICAgICB0aGlzLmdldFNpZ25hdHVyZSgpXG4gICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gc2VuZE11bHRpU2lnRGF0YShcbiAgICAgICAgICB0aGlzLl90b0FkZHJlc3MsXG4gICAgICAgICAgdGhpcy5fYW1vdW50LFxuICAgICAgICAgIHRoaXMuX2RhdGEsXG4gICAgICAgICAgdGhpcy5fZXhwaXJhdGlvblRpbWUsXG4gICAgICAgICAgdGhpcy5fc2VxdWVuY2VJZCxcbiAgICAgICAgICB0aGlzLmdldFNpZ25hdHVyZSgpXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoXG4gICAgICAnTWlzc2luZyB0cmFuc2ZlciBtYW5kYXRvcnkgZmllbGRzLiBBbW91bnQsIGRlc3RpbmF0aW9uICh0bykgYWRkcmVzcyBhbmQgc2VxdWVuY2VJRCBhcmUgbWFuZGF0b3J5J1xuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGhhc01hbmRhdG9yeUZpZWxkcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fYW1vdW50ICE9PSB1bmRlZmluZWQgJiYgdGhpcy5fdG9BZGRyZXNzICE9PSB1bmRlZmluZWQgJiYgdGhpcy5fc2VxdWVuY2VJZCAhPT0gdW5kZWZpbmVkO1xuICB9XG5cbiAgLyoqXG4gICAqIE9idGFpbnMgdGhlIHByb3BlciBvcGVyYXRpb24gaGFzaCB0byBzaWduIGVpdGhlciBhIHNlbmRNdWx0aVNpZyBkYXRhXG4gICAqIG9yIGEgc2VuZE11bHRpU2lnVG9rZW4gZGF0YVxuICAgKlxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSB0aGUgb3BlcmF0aW9uIGhhc2hcbiAgICovXG4gIHByaXZhdGUgZ2V0T3BlcmF0aW9uSGFzaCgpOiBzdHJpbmcge1xuICAgIGNvbnN0IG9wZXJhdGlvbkRhdGEgPSB0aGlzLmdldE9wZXJhdGlvbkRhdGEoKTtcbiAgICByZXR1cm4gZXRoVXRpbC5idWZmZXJUb0hleChFdGhlcmV1bUFiaS5zb2xpZGl0eVNIQTMoLi4ub3BlcmF0aW9uRGF0YSkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldE9wZXJhdGlvbkRhdGEoKTogKHN0cmluZyB8IEJ1ZmZlcilbXVtdIHtcbiAgICBsZXQgb3BlcmF0aW9uRGF0YTtcbiAgICBpZiAodGhpcy5fdG9rZW5Db250cmFjdEFkZHJlc3MgIT09IHVuZGVmaW5lZCkge1xuICAgICAgb3BlcmF0aW9uRGF0YSA9IFtcbiAgICAgICAgWydzdHJpbmcnLCAnYWRkcmVzcycsICd1aW50JywgJ2FkZHJlc3MnLCAndWludCcsICd1aW50J10sXG4gICAgICAgIFtcbiAgICAgICAgICB0aGlzLmdldFRva2VuT3BlcmF0aW9uSGFzaFByZWZpeCgpLFxuICAgICAgICAgIG5ldyBCTihldGhVdGlsLnN0cmlwSGV4UHJlZml4KHRoaXMuX3RvQWRkcmVzcyksIDE2KSxcbiAgICAgICAgICB0aGlzLl9hbW91bnQsXG4gICAgICAgICAgbmV3IEJOKGV0aFV0aWwuc3RyaXBIZXhQcmVmaXgodGhpcy5fdG9rZW5Db250cmFjdEFkZHJlc3MpLCAxNiksXG4gICAgICAgICAgdGhpcy5fZXhwaXJhdGlvblRpbWUsXG4gICAgICAgICAgdGhpcy5fc2VxdWVuY2VJZCxcbiAgICAgICAgXSxcbiAgICAgIF07XG4gICAgfSBlbHNlIHtcbiAgICAgIG9wZXJhdGlvbkRhdGEgPSBbXG4gICAgICAgIFsnc3RyaW5nJywgJ2FkZHJlc3MnLCAndWludCcsICdieXRlcycsICd1aW50JywgJ3VpbnQnXSxcbiAgICAgICAgW1xuICAgICAgICAgIHRoaXMuZ2V0TmF0aXZlT3BlcmF0aW9uSGFzaFByZWZpeCgpLFxuICAgICAgICAgIG5ldyBCTihldGhVdGlsLnN0cmlwSGV4UHJlZml4KHRoaXMuX3RvQWRkcmVzcyksIDE2KSxcbiAgICAgICAgICB0aGlzLl9hbW91bnQsXG4gICAgICAgICAgQnVmZmVyLmZyb20oZXRoVXRpbC5wYWRUb0V2ZW4oZXRoVXRpbC5zdHJpcEhleFByZWZpeCh0aGlzLl9kYXRhKSkgfHwgJycsICdoZXgnKSxcbiAgICAgICAgICB0aGlzLl9leHBpcmF0aW9uVGltZSxcbiAgICAgICAgICB0aGlzLl9zZXF1ZW5jZUlkLFxuICAgICAgICBdLFxuICAgICAgXTtcbiAgICB9XG4gICAgcmV0dXJuIG9wZXJhdGlvbkRhdGE7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBwcmVmaXggdXNlZCBpbiBnZW5lcmF0aW5nIGFuIG9wZXJhdGlvbiBoYXNoIGZvciBzZW5kaW5nIHRva2Vuc1xuICAgKlxuICAgKiBAcmV0dXJucyB0aGUgc3RyaW5nIHByZWZpeFxuICAgKi9cbiAgcHJvdGVjdGVkIGdldFRva2VuT3BlcmF0aW9uSGFzaFByZWZpeCgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnRVJDMjAnO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgcHJlZml4IHVzZWQgaW4gZ2VuZXJhdGluZyBhbiBvcGVyYXRpb24gaGFzaCBmb3Igc2VuZGluZyBuYXRpdmUgY29pbnNcbiAgICpcbiAgICogQHJldHVybnMgdGhlIHN0cmluZyBwcmVmaXhcbiAgICovXG4gIHByb3RlY3RlZCBnZXROYXRpdmVPcGVyYXRpb25IYXNoUHJlZml4KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdFVEhFUic7XG4gIH1cblxuICAvKiogUmV0dXJuIGFuIGV4cGlyYXRpb24gdGltZSwgaW4gc2Vjb25kcywgc2V0IHRvIG9uZSBob3VyIGZyb20gbm93XG4gICAqXG4gICAqIEByZXR1cm5zIHtudW1iZXJ9IGV4cGlyYXRpb24gdGltZVxuICAgKi9cbiAgcHJpdmF0ZSBnZXRFeHBpcmF0aW9uVGltZSgpOiBudW1iZXIge1xuICAgIGNvbnN0IGN1cnJlbnREYXRlID0gbmV3IERhdGUoKTtcbiAgICBjdXJyZW50RGF0ZS5zZXRIb3VycyhjdXJyZW50RGF0ZS5nZXRIb3VycygpICsgMSk7XG4gICAgcmV0dXJuIGN1cnJlbnREYXRlLmdldFRpbWUoKSAvIDEwMDA7XG4gIH1cblxuICAvKipcbiAgICogSWYgYSBzaWduaW5nIGtleSBpcyBzZXQgZm9yIHRoaXMgYnVpbGRlciwgcmVjYWxjdWxhdGVzIHRoZSBzaWduYXR1cmVcbiAgICpcbiAgICogQHJldHVybnMge3N0cmluZ30gdGhlIHNpZ25hdHVyZSB2YWx1ZVxuICAgKi9cbiAgcHJvdGVjdGVkIGdldFNpZ25hdHVyZSgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLl9zaWduS2V5KSB7XG4gICAgICB0aGlzLl9zaWduYXR1cmUgPSB0aGlzLmV0aFNpZ25Nc2dIYXNoKCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLl9zaWduYXR1cmUhO1xuICB9XG5cbiAgcHJvdGVjdGVkIGV0aFNpZ25Nc2dIYXNoKCk6IHN0cmluZyB7XG4gICAgY29uc3QgZGF0YSA9IHRoaXMuZ2V0T3BlcmF0aW9uSGFzaCgpO1xuICAgIGNvbnN0IGtleUJ1ZmZlciA9IEJ1ZmZlci5mcm9tKGV0aFV0aWwucGFkVG9FdmVuKHRoaXMuX3NpZ25LZXkpLCAnaGV4Jyk7XG4gICAgaWYgKGtleUJ1ZmZlci5sZW5ndGggIT0gMzIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigncHJpdmF0ZSBrZXkgbGVuZ3RoIGlzIGludmFsaWQnKTtcbiAgICB9XG4gICAgY29uc3Qgc2lnbmF0dXJlSW5QYXJ0cyA9IGV0aFV0aWwuZWNzaWduKFxuICAgICAgQnVmZmVyLmZyb20oZXRoVXRpbC5wYWRUb0V2ZW4oZXRoVXRpbC5zdHJpcEhleFByZWZpeChkYXRhKSksICdoZXgnKSxcbiAgICAgIGtleUJ1ZmZlclxuICAgICk7XG5cbiAgICAvLyBBc3NlbWJsZSBzdHJpbmdzIGZyb20gciwgcyBhbmQgdlxuICAgIGNvbnN0IHIgPSBldGhVdGlsLnNldExlbmd0aExlZnQoc2lnbmF0dXJlSW5QYXJ0cy5yLCAzMikudG9TdHJpbmcoJ2hleCcpO1xuICAgIGNvbnN0IHMgPSBldGhVdGlsLnNldExlbmd0aExlZnQoc2lnbmF0dXJlSW5QYXJ0cy5zLCAzMikudG9TdHJpbmcoJ2hleCcpO1xuICAgIGNvbnN0IHYgPSBldGhVdGlsLnN0cmlwSGV4UHJlZml4KGV0aFV0aWwuaW50VG9IZXgoc2lnbmF0dXJlSW5QYXJ0cy52KSk7XG5cbiAgICAvLyBDb25jYXRlbmF0ZSB0aGUgciwgcyBhbmQgdiBwYXJ0cyB0byBtYWtlIHRoZSBzaWduYXR1cmUgc3RyaW5nXG4gICAgcmV0dXJuIGV0aFV0aWwuYWRkSGV4UHJlZml4KHIuY29uY2F0KHMsIHYpKTtcbiAgfVxuXG4gIHByaXZhdGUgZGVjb2RlVHJhbnNmZXJEYXRhKGRhdGE6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHRyYW5zZmVyRGF0YSA9IGRlY29kZVRyYW5zZmVyRGF0YShkYXRhKTtcblxuICAgIHRoaXMuX3RvQWRkcmVzcyA9IHRyYW5zZmVyRGF0YS50bztcbiAgICB0aGlzLl9hbW91bnQgPSB0cmFuc2ZlckRhdGEuYW1vdW50O1xuICAgIHRoaXMuX2V4cGlyYXRpb25UaW1lID0gdHJhbnNmZXJEYXRhLmV4cGlyZVRpbWU7XG4gICAgdGhpcy5fc2VxdWVuY2VJZCA9IHRyYW5zZmVyRGF0YS5zZXF1ZW5jZUlkO1xuICAgIHRoaXMuX3NpZ25hdHVyZSA9IHRyYW5zZmVyRGF0YS5zaWduYXR1cmU7XG5cbiAgICBpZiAodHJhbnNmZXJEYXRhLmRhdGEpIHtcbiAgICAgIHRoaXMuX2RhdGEgPSB0cmFuc2ZlckRhdGEuZGF0YTtcbiAgICB9XG5cbiAgICBpZiAodHJhbnNmZXJEYXRhLnRva2VuQ29udHJhY3RBZGRyZXNzKSB7XG4gICAgICB0aGlzLl90b2tlbkNvbnRyYWN0QWRkcmVzcyA9IHRyYW5zZmVyRGF0YS50b2tlbkNvbnRyYWN0QWRkcmVzcztcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2ZlckJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsc0RBQTRFO0FBRTVFLDJCQUEyQjtBQUMzQixNQUFhLGVBQWdCLFNBQVEsOEJBQWtCO0lBQ3JEOzs7O09BSUc7SUFDTywyQkFBMkI7UUFDbkMsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVEOzs7O09BSUc7SUFDTyw0QkFBNEI7UUFDcEMsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBbEJELDBDQWtCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zZmVyQnVpbGRlciBhcyBFdGhUcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICdAYml0Z28vYWJzdHJhY3QtZXRoJztcblxuLyoqIEVUSCB0cmFuc2ZlciBidWlsZGVyICovXG5leHBvcnQgY2xhc3MgVHJhbnNmZXJCdWlsZGVyIGV4dGVuZHMgRXRoVHJhbnNmZXJCdWlsZGVyIHtcbiAgLyoqXG4gICAqIEdldCB0aGUgcHJlZml4IHVzZWQgaW4gZ2VuZXJhdGluZyBhbiBvcGVyYXRpb24gaGFzaCBmb3Igc2VuZGluZyB0b2tlbnNcbiAgICpcbiAgICogQHJldHVybnMgdGhlIHN0cmluZyBwcmVmaXhcbiAgICovXG4gIHByb3RlY3RlZCBnZXRUb2tlbk9wZXJhdGlvbkhhc2hQcmVmaXgoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ0VSQzIwJztcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIHByZWZpeCB1c2VkIGluIGdlbmVyYXRpbmcgYW4gb3BlcmF0aW9uIGhhc2ggZm9yIHNlbmRpbmcgbmF0aXZlIGNvaW5zXG4gICAqXG4gICAqIEByZXR1cm5zIHRoZSBzdHJpbmcgcHJlZml4XG4gICAqL1xuICBwcm90ZWN0ZWQgZ2V0TmF0aXZlT3BlcmF0aW9uSGFzaFByZWZpeCgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnRVRIRVInO1xuICB9XG59XG4iXX0=
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
export
|
|
3
|
-
export * from './transferBuilderERC721';
|
|
1
|
+
import { BaseNFTTransferBuilder, ERC721TransferBuilder, ERC1155TransferBuilder } from '@bitgo/abstract-eth';
|
|
2
|
+
export { BaseNFTTransferBuilder, ERC721TransferBuilder, ERC1155TransferBuilder };
|
|
4
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/transferBuilders/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/transferBuilders/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAE5G,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,CAAC"}
|
|
@@ -1,16 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
10
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
|
-
};
|
|
12
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
3
|
+
exports.ERC1155TransferBuilder = exports.ERC721TransferBuilder = exports.BaseNFTTransferBuilder = void 0;
|
|
4
|
+
const abstract_eth_1 = require("@bitgo/abstract-eth");
|
|
5
|
+
Object.defineProperty(exports, "BaseNFTTransferBuilder", { enumerable: true, get: function () { return abstract_eth_1.BaseNFTTransferBuilder; } });
|
|
6
|
+
Object.defineProperty(exports, "ERC721TransferBuilder", { enumerable: true, get: function () { return abstract_eth_1.ERC721TransferBuilder; } });
|
|
7
|
+
Object.defineProperty(exports, "ERC1155TransferBuilder", { enumerable: true, get: function () { return abstract_eth_1.ERC1155TransferBuilder; } });
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3RyYW5zZmVyQnVpbGRlcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsc0RBQTRHO0FBRW5HLHVHQUZBLHFDQUFzQixPQUVBO0FBQUUsc0dBRkEsb0NBQXFCLE9BRUE7QUFBRSx1R0FGQSxxQ0FBc0IsT0FFQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VORlRUcmFuc2ZlckJ1aWxkZXIsIEVSQzcyMVRyYW5zZmVyQnVpbGRlciwgRVJDMTE1NVRyYW5zZmVyQnVpbGRlciB9IGZyb20gJ0BiaXRnby9hYnN0cmFjdC1ldGgnO1xuXG5leHBvcnQgeyBCYXNlTkZUVHJhbnNmZXJCdWlsZGVyLCBFUkM3MjFUcmFuc2ZlckJ1aWxkZXIsIEVSQzExNTVUcmFuc2ZlckJ1aWxkZXIgfTtcbiJdfQ==
|
|
@@ -1,27 +1,2 @@
|
|
|
1
|
-
export declare const sendMultisigMethodId = "0x39125215";
|
|
2
|
-
export declare const sendMultisigTokenMethodId = "0x0dcd7a6c";
|
|
3
|
-
export declare const v1CreateForwarderMethodId = "0xfb90b320";
|
|
4
|
-
export declare const v1WalletInitializationFirstBytes = "0x60806040";
|
|
5
|
-
export declare const v1CreateWalletMethodId = "0x7117f3fa";
|
|
6
|
-
export declare const createForwarderMethodId = "0xa68a76cc";
|
|
7
|
-
export declare const walletInitializationFirstBytes = "0x60606040";
|
|
8
|
-
export declare const recoveryWalletInitializationFirstBytes = "0x60c06040";
|
|
9
|
-
export declare const flushForwarderTokensMethodId = "0x2da03409";
|
|
10
|
-
export declare const flushCoinsMethodId = "0x6b9f96ea";
|
|
11
|
-
export declare const ERC721SafeTransferTypeMethodId = "0xb88d4fde";
|
|
12
|
-
export declare const ERC1155SafeTransferTypeMethodId = "0xf242432a";
|
|
13
|
-
export declare const ERC1155BatchTransferTypeMethodId = "0x2eb2c2d6";
|
|
14
|
-
export declare const defaultForwarderVersion = 0;
|
|
15
|
-
export declare const defaultWalletVersion = 0;
|
|
16
1
|
export declare const walletSimpleByteCode = "0x60606040526000600160006101000a81548160ff021916908315150217905550341561002a57600080fd5b60405161155b38038061155b833981016040528080518201919050506003815114151561005657600080fd5b806000908051906020019061006c929190610073565b5050610140565b8280548282559060005260206000209081019282156100ec579160200282015b828111156100eb5782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555091602001919060010190610093565b5b5090506100f991906100fd565b5090565b61013d91905b8082111561013957600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550600101610103565b5090565b90565b61140c8061014f6000396000f300606060405260043610610099576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630dcd7a6c146101335780632079fb9a146101e95780632da034091461024c57806339125215146102a45780637df73e271461037e578063a0b7967b146103cf578063a68a76cc146103f8578063abe3219c1461044d578063fc0f392d1461047a575b6000341115610131577f6e89d517057028190560dd200cf6bf792842861353d1173761dfa362e1c133f03334600036604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200180602001828103825284848281815260200192508082843782019150509550505050505060405180910390a15b005b341561013e57600080fd5b6101e7600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001909190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190505061048f565b005b34156101f457600080fd5b61020a6004808035906020019091905050610668565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561025757600080fd5b6102a2600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506106a7565b005b34156102af57600080fd5b61037c600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803590602001909190803590602001909190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091905050610773565b005b341561038957600080fd5b6103b5600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610a72565b604051808215151515815260200191505060405180910390f35b34156103da57600080fd5b6103e2610b16565b6040518082815260200191505060405180910390f35b341561040357600080fd5b61040b610b70565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561045857600080fd5b610460610b95565b604051808215151515815260200191505060405180910390f35b341561048557600080fd5b61048d610ba8565b005b60008061049b33610a72565b15156104a657600080fd5b878787878760405180807f45524332300000000000000000000000000000000000000000000000000000008152506005018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140183815260200182815260200195505050505050604051809103902091506105898883858888610c3b565b508590508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb89896000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b151561063857600080fd5b6102c65a03f1151561064957600080fd5b50505060405180519050151561065e57600080fd5b5050505050505050565b60008181548110151561067757fe5b90600052602060002090016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006106b233610a72565b15156106bd57600080fd5b8290508073ffffffffffffffffffffffffffffffffffffffff16633ef13367836040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b151561075a57600080fd5b6102c65a03f1151561076b57600080fd5b505050505050565b60008061077f33610a72565b151561078a57600080fd5b878787878760405180807f45544845520000000000000000000000000000000000000000000000000000008152506005018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140185815260200184805190602001908083835b602083101515610833578051825260208201915060208101905060208303925061080e565b6001836020036101000a038019825116818451168082178552505050505050905001838152602001828152602001955050505050506040518091039020915061087f8883858888610c3b565b90508773ffffffffffffffffffffffffffffffffffffffff16878760405180828051906020019080838360005b838110156108c75780820151818401526020810190506108ac565b50505050905090810190601f1680156108f45780820380516001836020036101000a031916815260200191505b5091505060006040518083038185876187965a03f192505050151561091857600080fd5b7f59bed9ab5d78073465dd642a9e3e76dfdb7d53bcae9d09df7d0b8f5234d5a8063382848b8b8b604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200185600019166000191681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610a29578082015181840152602081019050610a0e565b50505050905090810190601f168015610a565780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a15050505050505050565b600080600090505b600080549050811015610b0b578273ffffffffffffffffffffffffffffffffffffffff16600082815481101515610aad57fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610afe5760019150610b10565b8080600101915050610a7a565b600091505b50919050565b6000806000809150600090505b600a811015610b655781600282600a81101515610b3c57fe5b01541115610b5857600281600a81101515610b5357fe5b015491505b8080600101915050610b23565b600182019250505090565b6000610b7a610e90565b604051809103906000f0801515610b9057600080fd5b905090565b600160009054906101000a900460ff1681565b610bb133610a72565b1515610bbc57600080fd5b60018060006101000a81548160ff0219169083151502179055507f0909e8f76a4fd3e970f2eaef56c0ee6dfaf8b87c5b8d3f56ffce78e825a9115733604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b600080610c488686610ce6565b9050600160009054906101000a900460ff168015610c6c5750610c6a87610a72565b155b15610c7657600080fd5b42841015610c8357600080fd5b610c8c83610db9565b610c9581610a72565b1515610ca057600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610cd957600080fd5b8091505095945050505050565b60008060008060418551141515610cfc57600080fd5b602085015192506040850151915060ff6041860151169050601b8160ff161015610d2757601b810190505b600186828585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f11515610da557600080fd5b505060206040510351935050505092915050565b600080610dc533610a72565b1515610dd057600080fd5b60009150600090505b600a811015610e385782600282600a81101515610df257fe5b01541415610dff57600080fd5b600282600a81101515610e0e57fe5b0154600282600a81101515610e1f57fe5b01541015610e2b578091505b8080600101915050610dd9565b600282600a81101515610e4757fe5b0154831015610e5557600080fd5b612710600283600a81101515610e6757fe5b015401831115610e7657600080fd5b82600283600a81101515610e8657fe5b0181905550505050565b60405161054080610ea18339019056006060604052341561000f57600080fd5b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506104e28061005e6000396000f300606060405260043610610056576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168062821de3146101475780633ef133671461019c5780636b9f96ea146101d5575b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015156100b757600080fd5b7f69b31548dea9b3b707b4dff357d326e3e9348b24e7a6080a218a6edeeec48f9b3334600036604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200180602001828103825284848281815260200192508082843782019150509550505050505060405180910390a1005b341561015257600080fd5b61015a6101ea565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156101a757600080fd5b6101d3600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061020f565b005b34156101e057600080fd5b6101e861043c565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561026f57600080fd5b8392503091508273ffffffffffffffffffffffffffffffffffffffff166370a08231836000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b151561031857600080fd5b6102c65a03f1151561032957600080fd5b505050604051805190509050600081141561034357610436565b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b151561040f57600080fd5b6102c65a03f1151561042057600080fd5b50505060405180519050151561043557600080fd5b5b50505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f1935050505015156104b457600080fd5b5600a165627a7a72305820088cce905e424bfe474510efe41761893e9e34b54b885b8fee546d8be88aee3c0029a165627a7a72305820827adc3ef3a179757bc33003e41070fbbfcdfc5db31275af3cb0395155cd3bbb0029";
|
|
17
|
-
export declare const walletSimpleConstructor: string[];
|
|
18
|
-
export declare const createV1WalletTypes: string[];
|
|
19
|
-
export declare const flushTokensTypes: string[];
|
|
20
|
-
export declare const flushCoinsTypes: never[];
|
|
21
|
-
export declare const sendMultiSigTypes: string[];
|
|
22
|
-
export declare const sendMultiSigTokenTypes: string[];
|
|
23
|
-
export declare const ERC721SafeTransferTypes: string[];
|
|
24
|
-
export declare const ERC1155SafeTransferTypes: string[];
|
|
25
|
-
export declare const ERC1155BatchTransferTypes: string[];
|
|
26
|
-
export declare const createV1ForwarderTypes: string[];
|
|
27
2
|
//# sourceMappingURL=walletUtil.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"walletUtil.d.ts","sourceRoot":"","sources":["../../../src/lib/walletUtil.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"walletUtil.d.ts","sourceRoot":"","sources":["../../../src/lib/walletUtil.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,oBAAoB,6rVAC2pV,CAAC"}
|
|
@@ -1,21 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
exports.sendMultisigMethodId = '0x39125215';
|
|
5
|
-
exports.sendMultisigTokenMethodId = '0x0dcd7a6c';
|
|
6
|
-
exports.v1CreateForwarderMethodId = '0xfb90b320';
|
|
7
|
-
exports.v1WalletInitializationFirstBytes = '0x60806040';
|
|
8
|
-
exports.v1CreateWalletMethodId = '0x7117f3fa';
|
|
9
|
-
exports.createForwarderMethodId = '0xa68a76cc';
|
|
10
|
-
exports.walletInitializationFirstBytes = '0x60606040';
|
|
11
|
-
exports.recoveryWalletInitializationFirstBytes = '0x60c06040';
|
|
12
|
-
exports.flushForwarderTokensMethodId = '0x2da03409';
|
|
13
|
-
exports.flushCoinsMethodId = '0x6b9f96ea';
|
|
14
|
-
exports.ERC721SafeTransferTypeMethodId = '0xb88d4fde';
|
|
15
|
-
exports.ERC1155SafeTransferTypeMethodId = '0xf242432a';
|
|
16
|
-
exports.ERC1155BatchTransferTypeMethodId = '0x2eb2c2d6';
|
|
17
|
-
exports.defaultForwarderVersion = 0;
|
|
18
|
-
exports.defaultWalletVersion = 0;
|
|
3
|
+
exports.walletSimpleByteCode = void 0;
|
|
19
4
|
/*
|
|
20
5
|
Steps to reproduce:
|
|
21
6
|
Checkout https://github.com/bitgo/eth-multisig-v2
|
|
@@ -24,14 +9,4 @@ exports.defaultWalletVersion = 0;
|
|
|
24
9
|
cat WalletSimple.bin
|
|
25
10
|
*/
|
|
26
11
|
exports.walletSimpleByteCode = '0x60606040526000600160006101000a81548160ff021916908315150217905550341561002a57600080fd5b60405161155b38038061155b833981016040528080518201919050506003815114151561005657600080fd5b806000908051906020019061006c929190610073565b5050610140565b8280548282559060005260206000209081019282156100ec579160200282015b828111156100eb5782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555091602001919060010190610093565b5b5090506100f991906100fd565b5090565b61013d91905b8082111561013957600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550600101610103565b5090565b90565b61140c8061014f6000396000f300606060405260043610610099576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630dcd7a6c146101335780632079fb9a146101e95780632da034091461024c57806339125215146102a45780637df73e271461037e578063a0b7967b146103cf578063a68a76cc146103f8578063abe3219c1461044d578063fc0f392d1461047a575b6000341115610131577f6e89d517057028190560dd200cf6bf792842861353d1173761dfa362e1c133f03334600036604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200180602001828103825284848281815260200192508082843782019150509550505050505060405180910390a15b005b341561013e57600080fd5b6101e7600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001909190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190505061048f565b005b34156101f457600080fd5b61020a6004808035906020019091905050610668565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561025757600080fd5b6102a2600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506106a7565b005b34156102af57600080fd5b61037c600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803590602001909190803590602001909190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091905050610773565b005b341561038957600080fd5b6103b5600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610a72565b604051808215151515815260200191505060405180910390f35b34156103da57600080fd5b6103e2610b16565b6040518082815260200191505060405180910390f35b341561040357600080fd5b61040b610b70565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561045857600080fd5b610460610b95565b604051808215151515815260200191505060405180910390f35b341561048557600080fd5b61048d610ba8565b005b60008061049b33610a72565b15156104a657600080fd5b878787878760405180807f45524332300000000000000000000000000000000000000000000000000000008152506005018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140183815260200182815260200195505050505050604051809103902091506105898883858888610c3b565b508590508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb89896000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b151561063857600080fd5b6102c65a03f1151561064957600080fd5b50505060405180519050151561065e57600080fd5b5050505050505050565b60008181548110151561067757fe5b90600052602060002090016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006106b233610a72565b15156106bd57600080fd5b8290508073ffffffffffffffffffffffffffffffffffffffff16633ef13367836040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b151561075a57600080fd5b6102c65a03f1151561076b57600080fd5b505050505050565b60008061077f33610a72565b151561078a57600080fd5b878787878760405180807f45544845520000000000000000000000000000000000000000000000000000008152506005018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140185815260200184805190602001908083835b602083101515610833578051825260208201915060208101905060208303925061080e565b6001836020036101000a038019825116818451168082178552505050505050905001838152602001828152602001955050505050506040518091039020915061087f8883858888610c3b565b90508773ffffffffffffffffffffffffffffffffffffffff16878760405180828051906020019080838360005b838110156108c75780820151818401526020810190506108ac565b50505050905090810190601f1680156108f45780820380516001836020036101000a031916815260200191505b5091505060006040518083038185876187965a03f192505050151561091857600080fd5b7f59bed9ab5d78073465dd642a9e3e76dfdb7d53bcae9d09df7d0b8f5234d5a8063382848b8b8b604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200185600019166000191681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610a29578082015181840152602081019050610a0e565b50505050905090810190601f168015610a565780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a15050505050505050565b600080600090505b600080549050811015610b0b578273ffffffffffffffffffffffffffffffffffffffff16600082815481101515610aad57fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610afe5760019150610b10565b8080600101915050610a7a565b600091505b50919050565b6000806000809150600090505b600a811015610b655781600282600a81101515610b3c57fe5b01541115610b5857600281600a81101515610b5357fe5b015491505b8080600101915050610b23565b600182019250505090565b6000610b7a610e90565b604051809103906000f0801515610b9057600080fd5b905090565b600160009054906101000a900460ff1681565b610bb133610a72565b1515610bbc57600080fd5b60018060006101000a81548160ff0219169083151502179055507f0909e8f76a4fd3e970f2eaef56c0ee6dfaf8b87c5b8d3f56ffce78e825a9115733604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b600080610c488686610ce6565b9050600160009054906101000a900460ff168015610c6c5750610c6a87610a72565b155b15610c7657600080fd5b42841015610c8357600080fd5b610c8c83610db9565b610c9581610a72565b1515610ca057600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610cd957600080fd5b8091505095945050505050565b60008060008060418551141515610cfc57600080fd5b602085015192506040850151915060ff6041860151169050601b8160ff161015610d2757601b810190505b600186828585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f11515610da557600080fd5b505060206040510351935050505092915050565b600080610dc533610a72565b1515610dd057600080fd5b60009150600090505b600a811015610e385782600282600a81101515610df257fe5b01541415610dff57600080fd5b600282600a81101515610e0e57fe5b0154600282600a81101515610e1f57fe5b01541015610e2b578091505b8080600101915050610dd9565b600282600a81101515610e4757fe5b0154831015610e5557600080fd5b612710600283600a81101515610e6757fe5b015401831115610e7657600080fd5b82600283600a81101515610e8657fe5b0181905550505050565b60405161054080610ea18339019056006060604052341561000f57600080fd5b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506104e28061005e6000396000f300606060405260043610610056576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168062821de3146101475780633ef133671461019c5780636b9f96ea146101d5575b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015156100b757600080fd5b7f69b31548dea9b3b707b4dff357d326e3e9348b24e7a6080a218a6edeeec48f9b3334600036604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200180602001828103825284848281815260200192508082843782019150509550505050505060405180910390a1005b341561015257600080fd5b61015a6101ea565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156101a757600080fd5b6101d3600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061020f565b005b34156101e057600080fd5b6101e861043c565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561026f57600080fd5b8392503091508273ffffffffffffffffffffffffffffffffffffffff166370a08231836000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b151561031857600080fd5b6102c65a03f1151561032957600080fd5b505050604051805190509050600081141561034357610436565b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b151561040f57600080fd5b6102c65a03f1151561042057600080fd5b50505060405180519050151561043557600080fd5b5b50505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f1935050505015156104b457600080fd5b5600a165627a7a72305820088cce905e424bfe474510efe41761893e9e34b54b885b8fee546d8be88aee3c0029a165627a7a72305820827adc3ef3a179757bc33003e41070fbbfcdfc5db31275af3cb0395155cd3bbb0029';
|
|
27
|
-
exports.walletSimpleConstructor = ['address[]'];
|
|
28
|
-
exports.createV1WalletTypes = ['address[]', 'bytes32'];
|
|
29
|
-
exports.flushTokensTypes = ['address', 'address'];
|
|
30
|
-
exports.flushCoinsTypes = [];
|
|
31
|
-
exports.sendMultiSigTypes = ['address', 'uint', 'bytes', 'uint', 'uint', 'bytes'];
|
|
32
|
-
exports.sendMultiSigTokenTypes = ['address', 'uint', 'address', 'uint', 'uint', 'bytes'];
|
|
33
|
-
exports.ERC721SafeTransferTypes = ['address', 'address', 'uint256', 'bytes'];
|
|
34
|
-
exports.ERC1155SafeTransferTypes = ['address', 'address', 'uint256', 'uint256', 'bytes'];
|
|
35
|
-
exports.ERC1155BatchTransferTypes = ['address', 'address', 'uint256[]', 'uint256[]', 'bytes'];
|
|
36
|
-
exports.createV1ForwarderTypes = ['address', 'bytes32'];
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FsbGV0VXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvd2FsbGV0VXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBYSxRQUFBLG9CQUFvQixHQUFHLFlBQVksQ0FBQztBQUNwQyxRQUFBLHlCQUF5QixHQUFHLFlBQVksQ0FBQztBQUN6QyxRQUFBLHlCQUF5QixHQUFHLFlBQVksQ0FBQztBQUN6QyxRQUFBLGdDQUFnQyxHQUFHLFlBQVksQ0FBQztBQUNoRCxRQUFBLHNCQUFzQixHQUFHLFlBQVksQ0FBQztBQUN0QyxRQUFBLHVCQUF1QixHQUFHLFlBQVksQ0FBQztBQUN2QyxRQUFBLDhCQUE4QixHQUFHLFlBQVksQ0FBQztBQUM5QyxRQUFBLHNDQUFzQyxHQUFHLFlBQVksQ0FBQztBQUN0RCxRQUFBLDRCQUE0QixHQUFHLFlBQVksQ0FBQztBQUM1QyxRQUFBLGtCQUFrQixHQUFHLFlBQVksQ0FBQztBQUVsQyxRQUFBLDhCQUE4QixHQUFHLFlBQVksQ0FBQztBQUM5QyxRQUFBLCtCQUErQixHQUFHLFlBQVksQ0FBQztBQUMvQyxRQUFBLGdDQUFnQyxHQUFHLFlBQVksQ0FBQztBQUNoRCxRQUFBLHVCQUF1QixHQUFHLENBQUMsQ0FBQztBQUM1QixRQUFBLG9CQUFvQixHQUFHLENBQUMsQ0FBQztBQUV0Qzs7Ozs7O0VBTUU7QUFDVyxRQUFBLG9CQUFvQixHQUMvQiwwclZBQTByVixDQUFDO0FBRWhyVixRQUFBLHVCQUF1QixHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7QUFDeEMsUUFBQSxtQkFBbUIsR0FBRyxDQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsQ0FBQztBQUMvQyxRQUFBLGdCQUFnQixHQUFHLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQzFDLFFBQUEsZUFBZSxHQUFHLEVBQUUsQ0FBQztBQUVyQixRQUFBLGlCQUFpQixHQUFHLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztBQUUxRSxRQUFBLHNCQUFzQixHQUFHLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztBQUVqRixRQUFBLHVCQUF1QixHQUFHLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFFckUsUUFBQSx3QkFBd0IsR0FBRyxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztBQUNqRixRQUFBLHlCQUF5QixHQUFHLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ3RGLFFBQUEsc0JBQXNCLEdBQUcsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3Qgc2VuZE11bHRpc2lnTWV0aG9kSWQgPSAnMHgzOTEyNTIxNSc7XG5leHBvcnQgY29uc3Qgc2VuZE11bHRpc2lnVG9rZW5NZXRob2RJZCA9ICcweDBkY2Q3YTZjJztcbmV4cG9ydCBjb25zdCB2MUNyZWF0ZUZvcndhcmRlck1ldGhvZElkID0gJzB4ZmI5MGIzMjAnO1xuZXhwb3J0IGNvbnN0IHYxV2FsbGV0SW5pdGlhbGl6YXRpb25GaXJzdEJ5dGVzID0gJzB4NjA4MDYwNDAnO1xuZXhwb3J0IGNvbnN0IHYxQ3JlYXRlV2FsbGV0TWV0aG9kSWQgPSAnMHg3MTE3ZjNmYSc7XG5leHBvcnQgY29uc3QgY3JlYXRlRm9yd2FyZGVyTWV0aG9kSWQgPSAnMHhhNjhhNzZjYyc7XG5leHBvcnQgY29uc3Qgd2FsbGV0SW5pdGlhbGl6YXRpb25GaXJzdEJ5dGVzID0gJzB4NjA2MDYwNDAnO1xuZXhwb3J0IGNvbnN0IHJlY292ZXJ5V2FsbGV0SW5pdGlhbGl6YXRpb25GaXJzdEJ5dGVzID0gJzB4NjBjMDYwNDAnO1xuZXhwb3J0IGNvbnN0IGZsdXNoRm9yd2FyZGVyVG9rZW5zTWV0aG9kSWQgPSAnMHgyZGEwMzQwOSc7XG5leHBvcnQgY29uc3QgZmx1c2hDb2luc01ldGhvZElkID0gJzB4NmI5Zjk2ZWEnO1xuXG5leHBvcnQgY29uc3QgRVJDNzIxU2FmZVRyYW5zZmVyVHlwZU1ldGhvZElkID0gJzB4Yjg4ZDRmZGUnO1xuZXhwb3J0IGNvbnN0IEVSQzExNTVTYWZlVHJhbnNmZXJUeXBlTWV0aG9kSWQgPSAnMHhmMjQyNDMyYSc7XG5leHBvcnQgY29uc3QgRVJDMTE1NUJhdGNoVHJhbnNmZXJUeXBlTWV0aG9kSWQgPSAnMHgyZWIyYzJkNic7XG5leHBvcnQgY29uc3QgZGVmYXVsdEZvcndhcmRlclZlcnNpb24gPSAwO1xuZXhwb3J0IGNvbnN0IGRlZmF1bHRXYWxsZXRWZXJzaW9uID0gMDtcblxuLypcbiAgU3RlcHMgdG8gcmVwcm9kdWNlOlxuICBDaGVja291dCBodHRwczovL2dpdGh1Yi5jb20vYml0Z28vZXRoLW11bHRpc2lnLXYyXG4gIG5wbSBpbnN0YWxsIC1nIHNvbGNAMC40LjE4XG4gIHNvbGNqcyAtLWJpbiAuL2NvbnRyYWN0cy9XYWxsZXRTaW1wbGUuc29sIC4vY29udHJhY3RzL0ZvcndhcmRlci5zb2wgLi9jb250cmFjdHMvRVJDMjBJbnRlcmZhY2Uuc29sXG4gIGNhdCBXYWxsZXRTaW1wbGUuYmluXG4qL1xuZXhwb3J0IGNvbnN0IHdhbGxldFNpbXBsZUJ5dGVDb2RlID1cbiAgJzB4NjA2MDYwNDA1MjYwMDA2MDAxNjAwMDYxMDEwMDBhODE1NDgxNjBmZjAyMTkxNjkwODMxNTE1MDIxNzkwNTU1MDM0MTU2MTAwMmE1NzYwMDA4MGZkNWI2MDQwNTE2MTE1NWIzODAzODA2MTE1NWI4MzM5ODEwMTYwNDA1MjgwODA1MTgyMDE5MTkwNTA1MDYwMDM4MTUxMTQxNTE1NjEwMDU2NTc2MDAwODBmZDViODA2MDAwOTA4MDUxOTA2MDIwMDE5MDYxMDA2YzkyOTE5MDYxMDA3MzU2NWI1MDUwNjEwMTQwNTY1YjgyODA1NDgyODI1NTkwNjAwMDUyNjAyMDYwMDAyMDkwODEwMTkyODIxNTYxMDBlYzU3OTE2MDIwMDI4MjAxNWI4MjgxMTExNTYxMDBlYjU3ODI1MTgyNjAwMDYxMDEwMDBhODE1NDgxNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMDIxOTE2OTA4MzczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2MDIxNzkwNTU1MDkxNjAyMDAxOTE5MDYwMDEwMTkwNjEwMDkzNTY1YjViNTA5MDUwNjEwMGY5OTE5MDYxMDBmZDU2NWI1MDkwNTY1YjYxMDEzZDkxOTA1YjgwODIxMTE1NjEwMTM5NTc2MDAwODE4MTYxMDEwMDBhODE1NDkwNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMDIxOTE2OTA1NTUwNjAwMTAxNjEwMTAzNTY1YjUwOTA1NjViOTA1NjViNjExNDBjODA2MTAxNGY2MDAwMzk2MDAwZjMwMDYwNjA2MDQwNTI2MDA0MzYxMDYxMDA5OTU3NjAwMDM1N2MwMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwOTAwNDYzZmZmZmZmZmYxNjgwNjMwZGNkN2E2YzE0NjEwMTMzNTc4MDYzMjA3OWZiOWExNDYxMDFlOTU3ODA2MzJkYTAzNDA5MTQ2MTAyNGM1NzgwNjMzOTEyNTIxNTE0NjEwMmE0NTc4MDYzN2RmNzNlMjcxNDYxMDM3ZTU3ODA2M2EwYjc5NjdiMTQ2MTAzY2Y1NzgwNjNhNjhhNzZjYzE0NjEwM2Y4NTc4MDYzYWJlMzIxOWMxNDYxMDQ0ZDU3ODA2M2ZjMGYzOTJkMTQ2MTA0N2E1NzViNjAwMDM0MTExNTYxMDEzMTU3N2Y2ZTg5ZDUxNzA1NzAyODE5MDU2MGRkMjAwY2Y2YmY3OTI4NDI4NjEzNTNkMTE3Mzc2MWRmYTM2MmUxYzEzM2YwMzMzNDYwMDAzNjYwNDA1MTgwODU3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE1MjYwMjAwMTg0ODE1MjYwMjAwMTgwNjAyMDAxODI4MTAzODI1Mjg0ODQ4MjgxODE1MjYwMjAwMTkyNTA4MDgyODQzNzgyMDE5MTUwNTA5NTUwNTA1MDUwNTA1MDYwNDA1MTgwOTEwMzkwYTE1YjAwNWIzNDE1NjEwMTNlNTc2MDAwODBmZDViNjEwMWU3NjAwNDgwODAzNTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2OTA2MDIwMDE5MDkxOTA4MDM1OTA2MDIwMDE5MDkxOTA4MDM1NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY5MDYwMjAwMTkwOTE5MDgwMzU5MDYwMjAwMTkwOTE5MDgwMzU5MDYwMjAwMTkwOTE5MDgwMzU5MDYwMjAwMTkwODIwMTgwMzU5MDYwMjAwMTkwODA4MDYwMWYwMTYwMjA4MDkxMDQwMjYwMjAwMTYwNDA1MTkwODEwMTYwNDA1MjgwOTM5MjkxOTA4MTgxNTI2MDIwMDE4MzgzODA4Mjg0Mzc4MjAxOTE1MDUwNTA1MDUwNTA5MTkwNTA1MDYxMDQ4ZjU2NWIwMDViMzQxNTYxMDFmNDU3NjAwMDgwZmQ1YjYxMDIwYTYwMDQ4MDgwMzU5MDYwMjAwMTkwOTE5MDUwNTA2MTA2Njg1NjViNjA0MDUxODA4MjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxOTE1MDUwNjA0MDUxODA5MTAzOTBmMzViMzQxNTYxMDI1NzU3NjAwMDgwZmQ1YjYxMDJhMjYwMDQ4MDgwMzU3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjkwNjAyMDAxOTA5MTkwODAzNTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2OTA2MDIwMDE5MDkxOTA1MDUwNjEwNmE3NTY1YjAwNWIzNDE1NjEwMmFmNTc2MDAwODBmZDViNjEwMzdjNjAwNDgwODAzNTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2OTA2MDIwMDE5MDkxOTA4MDM1OTA2MDIwMDE5MDkxOTA4MDM1OTA2MDIwMDE5MDgyMDE4MDM1OTA2MDIwMDE5MDgwODA2MDFmMDE2MDIwODA5MTA0MDI2MDIwMDE2MDQwNTE5MDgxMDE2MDQwNTI4MDkzOTI5MTkwODE4MTUyNjAyMDAxODM4MzgwODI4NDM3ODIwMTkxNTA1MDUwNTA1MDUwOTE5MDgwMzU5MDYwMjAwMTkwOTE5MDgwMzU5MDYwMjAwMTkwOTE5MDgwMzU5MDYwMjAwMTkwODIwMTgwMzU5MDYwMjAwMTkwODA4MDYwMWYwMTYwMjA4MDkxMDQwMjYwMjAwMTYwNDA1MTkwODEwMTYwNDA1MjgwOTM5MjkxOTA4MTgxNTI2MDIwMDE4MzgzODA4Mjg0Mzc4MjAxOTE1MDUwNTA1MDUwNTA5MTkwNTA1MDYxMDc3MzU2NWIwMDViMzQxNTYxMDM4OTU3NjAwMDgwZmQ1YjYxMDNiNTYwMDQ4MDgwMzU3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjkwNjAyMDAxOTA5MTkwNTA1MDYxMGE3MjU2NWI2MDQwNTE4MDgyMTUxNTE1MTU4MTUyNjAyMDAxOTE1MDUwNjA0MDUxODA5MTAzOTBmMzViMzQxNTYxMDNkYTU3NjAwMDgwZmQ1YjYxMDNlMjYxMGIxNjU2NWI2MDQwNTE4MDgyODE1MjYwMjAwMTkxNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjM0MTU2MTA0MDM1NzYwMDA4MGZkNWI2MTA0MGI2MTBiNzA1NjViNjA0MDUxODA4MjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxOTE1MDUwNjA0MDUxODA5MTAzOTBmMzViMzQxNTYxMDQ1ODU3NjAwMDgwZmQ1YjYxMDQ2MDYxMGI5NTU2NWI2MDQwNTE4MDgyMTUxNTE1MTU4MTUyNjAyMDAxOTE1MDUwNjA0MDUxODA5MTAzOTBmMzViMzQxNTYxMDQ4NTU3NjAwMDgwZmQ1YjYxMDQ4ZDYxMGJhODU2NWIwMDViNjAwMDgwNjEwNDliMzM2MTBhNzI1NjViMTUxNTYxMDRhNjU3NjAwMDgwZmQ1Yjg3ODc4Nzg3ODc2MDQwNTE4MDgwN2Y0NTUyNDMzMjMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwODE1MjUwNjAwNTAxODY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NmMwMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAyODE1MjYwMTQwMTg1ODE1MjYwMjAwMTg0NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjZjMDEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMjgxNTI2MDE0MDE4MzgxNTI2MDIwMDE4MjgxNTI2MDIwMDE5NTUwNTA1MDUwNTA1MDYwNDA1MTgwOTEwMzkwMjA5MTUwNjEwNTg5ODg4Mzg1ODg4ODYxMGMzYjU2NWI1MDg1OTA1MDgwNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY2M2E5MDU5Y2JiODk4OTYwMDA2MDQwNTE2MDIwMDE1MjYwNDA1MTgzNjNmZmZmZmZmZjE2N2MwMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDI4MTUyNjAwNDAxODA4MzczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxODI4MTUyNjAyMDAxOTI1MDUwNTA2MDIwNjA0MDUxODA4MzAzODE2MDAwODc4MDNiMTUxNTYxMDYzODU3NjAwMDgwZmQ1YjYxMDJjNjVhMDNmMTE1MTU2MTA2NDk1NzYwMDA4MGZkNWI1MDUwNTA2MDQwNTE4MDUxOTA1MDE1MTU2MTA2NWU1NzYwMDA4MGZkNWI1MDUwNTA1MDUwNTA1MDUwNTY1YjYwMDA4MTgxNTQ4MTEwMTUxNTYxMDY3NzU3ZmU1YjkwNjAwMDUyNjAyMDYwMDAyMDkwMDE2MDAwOTE1MDU0OTA2MTAxMDAwYTkwMDQ3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTY1YjYwMDA2MTA2YjIzMzYxMGE3MjU2NWIxNTE1NjEwNmJkNTc2MDAwODBmZDViODI5MDUwODA3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjYzM2VmMTMzNjc4MzYwNDA1MTgyNjNmZmZmZmZmZjE2N2MwMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDI4MTUyNjAwNDAxODA4MjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxOTE1MDUwNjAwMDYwNDA1MTgwODMwMzgxNjAwMDg3ODAzYjE1MTU2MTA3NWE1NzYwMDA4MGZkNWI2MTAyYzY1YTAzZjExNTE1NjEwNzZiNTc2MDAwODBmZDViNTA1MDUwNTA1MDUwNTY1YjYwMDA4MDYxMDc3ZjMzNjEwYTcyNTY1YjE1MTU2MTA3OGE1NzYwMDA4MGZkNWI4Nzg3ODc4Nzg3NjA0MDUxODA4MDdmNDU1NDQ4NDU1MjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDgxNTI1MDYwMDUwMTg2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjZjMDEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMjgxNTI2MDE0MDE4NTgxNTI2MDIwMDE4NDgwNTE5MDYwMjAwMTkwODA4MzgzNWI2MDIwODMxMDE1MTU2MTA4MzM1NzgwNTE4MjUyNjAyMDgyMDE5MTUwNjAyMDgxMDE5MDUwNjAyMDgzMDM5MjUwNjEwODBlNTY1YjYwMDE4MzYwMjAwMzYxMDEwMDBhMDM4MDE5ODI1MTE2ODE4NDUxMTY4MDgyMTc4NTUyNTA1MDUwNTA1MDUwOTA1MDAxODM4MTUyNjAyMDAxODI4MTUyNjAyMDAxOTU1MDUwNTA1MDUwNTA2MDQwNTE4MDkxMDM5MDIwOTE1MDYxMDg3Zjg4ODM4NTg4ODg2MTBjM2I1NjViOTA1MDg3NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4Nzg3NjA0MDUxODA4MjgwNTE5MDYwMjAwMTkwODA4MzgzNjAwMDViODM4MTEwMTU2MTA4Yzc1NzgwODIwMTUxODE4NDAxNTI2MDIwODEwMTkwNTA2MTA4YWM1NjViNTA1MDUwNTA5MDUwOTA4MTAxOTA2MDFmMTY4MDE1NjEwOGY0NTc4MDgyMDM4MDUxNjAwMTgzNjAyMDAzNjEwMTAwMGEwMzE5MTY4MTUyNjAyMDAxOTE1MDViNTA5MTUwNTA2MDAwNjA0MDUxODA4MzAzODE4NTg3NjE4Nzk2NWEwM2YxOTI1MDUwNTAxNTE1NjEwOTE4NTc2MDAwODBmZDViN2Y1OWJlZDlhYjVkNzgwNzM0NjVkZDY0MmE5ZTNlNzZkZmRiN2Q1M2JjYWU5ZDA5ZGY3ZDBiOGY1MjM0ZDVhODA2MzM4Mjg0OGI4YjhiNjA0MDUxODA4NzczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxODY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE1MjYwMjAwMTg1NjAwMDE5MTY2MDAwMTkxNjgxNTI2MDIwMDE4NDczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxODM4MTUyNjAyMDAxODA2MDIwMDE4MjgxMDM4MjUyODM4MTgxNTE4MTUyNjAyMDAxOTE1MDgwNTE5MDYwMjAwMTkwODA4MzgzNjAwMDViODM4MTEwMTU2MTBhMjk1NzgwODIwMTUxODE4NDAxNTI2MDIwODEwMTkwNTA2MTBhMGU1NjViNTA1MDUwNTA5MDUwOTA4MTAxOTA2MDFmMTY4MDE1NjEwYTU2NTc4MDgyMDM4MDUxNjAwMTgzNjAyMDAzNjEwMTAwMGEwMzE5MTY4MTUyNjAyMDAxOTE1MDViNTA5NzUwNTA1MDUwNTA1MDUwNTA2MDQwNTE4MDkxMDM5MGExNTA1MDUwNTA1MDUwNTA1MDU2NWI2MDAwODA2MDAwOTA1MDViNjAwMDgwNTQ5MDUwODExMDE1NjEwYjBiNTc4MjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NjAwMDgyODE1NDgxMTAxNTE1NjEwYWFkNTdmZTViOTA2MDAwNTI2MDIwNjAwMDIwOTAwMTYwMDA5MDU0OTA2MTAxMDAwYTkwMDQ3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2MTQxNTYxMGFmZTU3NjAwMTkxNTA2MTBiMTA1NjViODA4MDYwMDEwMTkxNTA1MDYxMGE3YTU2NWI2MDAwOTE1MDViNTA5MTkwNTA1NjViNjAwMDgwNjAwMDgwOTE1MDYwMDA5MDUwNWI2MDBhODExMDE1NjEwYjY1NTc4MTYwMDI4MjYwMGE4MTEwMTUxNTYxMGIzYzU3ZmU1YjAxNTQxMTE1NjEwYjU4NTc2MDAyODE2MDBhODExMDE1MTU2MTBiNTM1N2ZlNWIwMTU0OTE1MDViODA4MDYwMDEwMTkxNTA1MDYxMGIyMzU2NWI2MDAxODIwMTkyNTA1MDUwOTA1NjViNjAwMDYxMGI3YTYxMGU5MDU2NWI2MDQwNTE4MDkxMDM5MDYwMDBmMDgwMTUxNTYxMGI5MDU3NjAwMDgwZmQ1YjkwNTA5MDU2NWI2MDAxNjAwMDkwNTQ5MDYxMDEwMDBhOTAwNDYwZmYxNjgxNTY1YjYxMGJiMTMzNjEwYTcyNTY1YjE1MTU2MTBiYmM1NzYwMDA4MGZkNWI2MDAxODA2MDAwNjEwMTAwMGE4MTU0ODE2MGZmMDIxOTE2OTA4MzE1MTUwMjE3OTA1NTUwN2YwOTA5ZThmNzZhNGZkM2U5NzBmMmVhZWY1NmMwZWU2ZGZhZjhiODdjNWI4ZDNmNTZmZmNlNzhlODI1YTkxMTU3MzM2MDQwNTE4MDgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGExNTY1YjYwMDA4MDYxMGM0ODg2ODY2MTBjZTY1NjViOTA1MDYwMDE2MDAwOTA1NDkwNjEwMTAwMGE5MDA0NjBmZjE2ODAxNTYxMGM2YzU3NTA2MTBjNmE4NzYxMGE3MjU2NWIxNTViMTU2MTBjNzY1NzYwMDA4MGZkNWI0Mjg0MTAxNTYxMGM4MzU3NjAwMDgwZmQ1YjYxMGM4YzgzNjEwZGI5NTY1YjYxMGM5NTgxNjEwYTcyNTY1YjE1MTU2MTBjYTA1NzYwMDA4MGZkNWIzMzczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjE0MTU2MTBjZDk1NzYwMDA4MGZkNWI4MDkxNTA1MDk1OTQ1MDUwNTA1MDUwNTY1YjYwMDA4MDYwMDA4MDYwNDE4NTUxMTQxNTE1NjEwY2ZjNTc2MDAwODBmZDViNjAyMDg1MDE1MTkyNTA2MDQwODUwMTUxOTE1MDYwZmY2MDQxODYwMTUxMTY5MDUwNjAxYjgxNjBmZjE2MTAxNTYxMGQyNzU3NjAxYjgxMDE5MDUwNWI2MDAxODY4Mjg1ODU2MDQwNTE2MDAwODE1MjYwMjAwMTYwNDA1MjYwMDA2MDQwNTE2MDIwMDE1MjYwNDA1MTgwODU2MDAwMTkxNjYwMDAxOTE2ODE1MjYwMjAwMTg0NjBmZjE2NjBmZjE2ODE1MjYwMjAwMTgzNjAwMDE5MTY2MDAwMTkxNjgxNTI2MDIwMDE4MjYwMDAxOTE2NjAwMDE5MTY4MTUyNjAyMDAxOTQ1MDUwNTA1MDUwNjAyMDYwNDA1MTYwMjA4MTAzOTA4MDg0MDM5MDYwMDA4NjYxNjQ2ZTVhMDNmMTE1MTU2MTBkYTU1NzYwMDA4MGZkNWI1MDUwNjAyMDYwNDA1MTAzNTE5MzUwNTA1MDUwOTI5MTUwNTA1NjViNjAwMDgwNjEwZGM1MzM2MTBhNzI1NjViMTUxNTYxMGRkMDU3NjAwMDgwZmQ1YjYwMDA5MTUwNjAwMDkwNTA1YjYwMGE4MTEwMTU2MTBlMzg1NzgyNjAwMjgyNjAwYTgxMTAxNTE1NjEwZGYyNTdmZTViMDE1NDE0MTU2MTBkZmY1NzYwMDA4MGZkNWI2MDAyODI2MDBhODExMDE1MTU2MTBlMGU1N2ZlNWIwMTU0NjAwMjgyNjAwYTgxMTAxNTE1NjEwZTFmNTdmZTViMDE1NDEwMTU2MTBlMmI1NzgwOTE1MDViODA4MDYwMDEwMTkxNTA1MDYxMGRkOTU2NWI2MDAyODI2MDBhODExMDE1MTU2MTBlNDc1N2ZlNWIwMTU0ODMxMDE1NjEwZTU1NTc2MDAwODBmZDViNjEyNzEwNjAwMjgzNjAwYTgxMTAxNTE1NjEwZTY3NTdmZTViMDE1NDAxODMxMTE1NjEwZTc2NTc2MDAwODBmZDViODI2MDAyODM2MDBhODExMDE1MTU2MTBlODY1N2ZlNWIwMTgxOTA1NTUwNTA1MDUwNTY1YjYwNDA1MTYxMDU0MDgwNjEwZWExODMzOTAxOTA1NjAwNjA2MDYwNDA1MjM0MTU2MTAwMGY1NzYwMDA4MGZkNWIzMzYwMDA4MDYxMDEwMDBhODE1NDgxNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMDIxOTE2OTA4MzczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2MDIxNzkwNTU1MDYxMDRlMjgwNjEwMDVlNjAwMDM5NjAwMGYzMDA2MDYwNjA0MDUyNjAwNDM2MTA2MTAwNTY1NzYwMDAzNTdjMDEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDkwMDQ2M2ZmZmZmZmZmMTY4MDYyODIxZGUzMTQ2MTAxNDc1NzgwNjMzZWYxMzM2NzE0NjEwMTljNTc4MDYzNmI5Zjk2ZWExNDYxMDFkNTU3NWI2MDAwODA5MDU0OTA2MTAxMDAwYTkwMDQ3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NjEwOGZjMzQ5MDgxMTUwMjkwNjA0MDUxNjAwMDYwNDA1MTgwODMwMzgxODU4ODg4ZjE5MzUwNTA1MDUwMTUxNTYxMDBiNzU3NjAwMDgwZmQ1YjdmNjliMzE1NDhkZWE5YjNiNzA3YjRkZmYzNTdkMzI2ZTNlOTM0OGIyNGU3YTYwODBhMjE4YTZlZGVlZWM0OGY5YjMzMzQ2MDAwMzY2MDQwNTE4MDg1NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE4NDgxNTI2MDIwMDE4MDYwMjAwMTgyODEwMzgyNTI4NDg0ODI4MTgxNTI2MDIwMDE5MjUwODA4Mjg0Mzc4MjAxOTE1MDUwOTU1MDUwNTA1MDUwNTA2MDQwNTE4MDkxMDM5MGExMDA1YjM0MTU2MTAxNTI1NzYwMDA4MGZkNWI2MTAxNWE2MTAxZWE1NjViNjA0MDUxODA4MjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxOTE1MDUwNjA0MDUxODA5MTAzOTBmMzViMzQxNTYxMDFhNzU3NjAwMDgwZmQ1YjYxMDFkMzYwMDQ4MDgwMzU3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjkwNjAyMDAxOTA5MTkwNTA1MDYxMDIwZjU2NWIwMDViMzQxNTYxMDFlMDU3NjAwMDgwZmQ1YjYxMDFlODYxMDQzYzU2NWIwMDViNjAwMDgwOTA1NDkwNjEwMTAwMGE5MDA0NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTU2NWI2MDAwODA2MDAwODA2MDAwOTA1NDkwNjEwMTAwMGE5MDA0NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjMzNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTYxNDE1MTU2MTAyNmY1NzYwMDA4MGZkNWI4MzkyNTAzMDkxNTA4MjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NjM3MGEwODIzMTgzNjAwMDYwNDA1MTYwMjAwMTUyNjA0MDUxODI2M2ZmZmZmZmZmMTY3YzAxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMjgxNTI2MDA0MDE4MDgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE5MTUwNTA2MDIwNjA0MDUxODA4MzAzODE2MDAwODc4MDNiMTUxNTYxMDMxODU3NjAwMDgwZmQ1YjYxMDJjNjVhMDNmMTE1MTU2MTAzMjk1NzYwMDA4MGZkNWI1MDUwNTA2MDQwNTE4MDUxOTA1MDkwNTA2MDAwODExNDE1NjEwMzQzNTc2MTA0MzY1NjViODI3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjYzYTkwNTljYmI2MDAwODA5MDU0OTA2MTAxMDAwYTkwMDQ3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgzNjAwMDYwNDA1MTYwMjAwMTUyNjA0MDUxODM2M2ZmZmZmZmZmMTY3YzAxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMjgxNTI2MDA0MDE4MDgzNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE4MjgxNTI2MDIwMDE5MjUwNTA1MDYwMjA2MDQwNTE4MDgzMDM4MTYwMDA4NzgwM2IxNTE1NjEwNDBmNTc2MDAwODBmZDViNjEwMmM2NWEwM2YxMTUxNTYxMDQyMDU3NjAwMDgwZmQ1YjUwNTA1MDYwNDA1MTgwNTE5MDUwMTUxNTYxMDQzNTU3NjAwMDgwZmQ1YjViNTA1MDUwNTA1NjViNjAwMDgwOTA1NDkwNjEwMTAwMGE5MDA0NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjYxMDhmYzMwNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTYzMTkwODExNTAyOTA2MDQwNTE2MDAwNjA0MDUxODA4MzAzODE4NTg4ODhmMTkzNTA1MDUwNTAxNTE1NjEwNGI0NTc2MDAwODBmZDViNTYwMGExNjU2MjdhN2E3MjMwNTgyMDA4OGNjZTkwNWU0MjRiZmU0NzQ1MTBlZmU0MTc2MTg5M2U5ZTM0YjU0Yjg4NWI4ZmVlNTQ2ZDhiZTg4YWVlM2MwMDI5YTE2NTYyN2E3YTcyMzA1ODIwODI3YWRjM2VmM2ExNzk3NTdiYzMzMDAzZTQxMDcwZmJiZmNkZmM1ZGIzMTI3NWFmM2NiMDM5NTE1NWNkM2JiYjAwMjknO1xuXG5leHBvcnQgY29uc3Qgd2FsbGV0U2ltcGxlQ29uc3RydWN0b3IgPSBbJ2FkZHJlc3NbXSddO1xuZXhwb3J0IGNvbnN0IGNyZWF0ZVYxV2FsbGV0VHlwZXMgPSBbJ2FkZHJlc3NbXScsICdieXRlczMyJ107XG5leHBvcnQgY29uc3QgZmx1c2hUb2tlbnNUeXBlcyA9IFsnYWRkcmVzcycsICdhZGRyZXNzJ107XG5leHBvcnQgY29uc3QgZmx1c2hDb2luc1R5cGVzID0gW107XG5cbmV4cG9ydCBjb25zdCBzZW5kTXVsdGlTaWdUeXBlcyA9IFsnYWRkcmVzcycsICd1aW50JywgJ2J5dGVzJywgJ3VpbnQnLCAndWludCcsICdieXRlcyddO1xuXG5leHBvcnQgY29uc3Qgc2VuZE11bHRpU2lnVG9rZW5UeXBlcyA9IFsnYWRkcmVzcycsICd1aW50JywgJ2FkZHJlc3MnLCAndWludCcsICd1aW50JywgJ2J5dGVzJ107XG5cbmV4cG9ydCBjb25zdCBFUkM3MjFTYWZlVHJhbnNmZXJUeXBlcyA9IFsnYWRkcmVzcycsICdhZGRyZXNzJywgJ3VpbnQyNTYnLCAnYnl0ZXMnXTtcblxuZXhwb3J0IGNvbnN0IEVSQzExNTVTYWZlVHJhbnNmZXJUeXBlcyA9IFsnYWRkcmVzcycsICdhZGRyZXNzJywgJ3VpbnQyNTYnLCAndWludDI1NicsICdieXRlcyddO1xuZXhwb3J0IGNvbnN0IEVSQzExNTVCYXRjaFRyYW5zZmVyVHlwZXMgPSBbJ2FkZHJlc3MnLCAnYWRkcmVzcycsICd1aW50MjU2W10nLCAndWludDI1NltdJywgJ2J5dGVzJ107XG5leHBvcnQgY29uc3QgY3JlYXRlVjFGb3J3YXJkZXJUeXBlcyA9IFsnYWRkcmVzcycsICdieXRlczMyJ107XG4iXX0=
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FsbGV0VXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvd2FsbGV0VXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7Ozs7O0VBTUU7QUFDVyxRQUFBLG9CQUFvQixHQUMvQiwwclZBQTByVixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAgU3RlcHMgdG8gcmVwcm9kdWNlOlxuICBDaGVja291dCBodHRwczovL2dpdGh1Yi5jb20vYml0Z28vZXRoLW11bHRpc2lnLXYyXG4gIG5wbSBpbnN0YWxsIC1nIHNvbGNAMC40LjE4XG4gIHNvbGNqcyAtLWJpbiAuL2NvbnRyYWN0cy9XYWxsZXRTaW1wbGUuc29sIC4vY29udHJhY3RzL0ZvcndhcmRlci5zb2wgLi9jb250cmFjdHMvRVJDMjBJbnRlcmZhY2Uuc29sXG4gIGNhdCBXYWxsZXRTaW1wbGUuYmluXG4qL1xuZXhwb3J0IGNvbnN0IHdhbGxldFNpbXBsZUJ5dGVDb2RlID1cbiAgJzB4NjA2MDYwNDA1MjYwMDA2MDAxNjAwMDYxMDEwMDBhODE1NDgxNjBmZjAyMTkxNjkwODMxNTE1MDIxNzkwNTU1MDM0MTU2MTAwMmE1NzYwMDA4MGZkNWI2MDQwNTE2MTE1NWIzODAzODA2MTE1NWI4MzM5ODEwMTYwNDA1MjgwODA1MTgyMDE5MTkwNTA1MDYwMDM4MTUxMTQxNTE1NjEwMDU2NTc2MDAwODBmZDViODA2MDAwOTA4MDUxOTA2MDIwMDE5MDYxMDA2YzkyOTE5MDYxMDA3MzU2NWI1MDUwNjEwMTQwNTY1YjgyODA1NDgyODI1NTkwNjAwMDUyNjAyMDYwMDAyMDkwODEwMTkyODIxNTYxMDBlYzU3OTE2MDIwMDI4MjAxNWI4MjgxMTExNTYxMDBlYjU3ODI1MTgyNjAwMDYxMDEwMDBhODE1NDgxNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMDIxOTE2OTA4MzczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2MDIxNzkwNTU1MDkxNjAyMDAxOTE5MDYwMDEwMTkwNjEwMDkzNTY1YjViNTA5MDUwNjEwMGY5OTE5MDYxMDBmZDU2NWI1MDkwNTY1YjYxMDEzZDkxOTA1YjgwODIxMTE1NjEwMTM5NTc2MDAwODE4MTYxMDEwMDBhODE1NDkwNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMDIxOTE2OTA1NTUwNjAwMTAxNjEwMTAzNTY1YjUwOTA1NjViOTA1NjViNjExNDBjODA2MTAxNGY2MDAwMzk2MDAwZjMwMDYwNjA2MDQwNTI2MDA0MzYxMDYxMDA5OTU3NjAwMDM1N2MwMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwOTAwNDYzZmZmZmZmZmYxNjgwNjMwZGNkN2E2YzE0NjEwMTMzNTc4MDYzMjA3OWZiOWExNDYxMDFlOTU3ODA2MzJkYTAzNDA5MTQ2MTAyNGM1NzgwNjMzOTEyNTIxNTE0NjEwMmE0NTc4MDYzN2RmNzNlMjcxNDYxMDM3ZTU3ODA2M2EwYjc5NjdiMTQ2MTAzY2Y1NzgwNjNhNjhhNzZjYzE0NjEwM2Y4NTc4MDYzYWJlMzIxOWMxNDYxMDQ0ZDU3ODA2M2ZjMGYzOTJkMTQ2MTA0N2E1NzViNjAwMDM0MTExNTYxMDEzMTU3N2Y2ZTg5ZDUxNzA1NzAyODE5MDU2MGRkMjAwY2Y2YmY3OTI4NDI4NjEzNTNkMTE3Mzc2MWRmYTM2MmUxYzEzM2YwMzMzNDYwMDAzNjYwNDA1MTgwODU3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE1MjYwMjAwMTg0ODE1MjYwMjAwMTgwNjAyMDAxODI4MTAzODI1Mjg0ODQ4MjgxODE1MjYwMjAwMTkyNTA4MDgyODQzNzgyMDE5MTUwNTA5NTUwNTA1MDUwNTA1MDYwNDA1MTgwOTEwMzkwYTE1YjAwNWIzNDE1NjEwMTNlNTc2MDAwODBmZDViNjEwMWU3NjAwNDgwODAzNTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2OTA2MDIwMDE5MDkxOTA4MDM1OTA2MDIwMDE5MDkxOTA4MDM1NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY5MDYwMjAwMTkwOTE5MDgwMzU5MDYwMjAwMTkwOTE5MDgwMzU5MDYwMjAwMTkwOTE5MDgwMzU5MDYwMjAwMTkwODIwMTgwMzU5MDYwMjAwMTkwODA4MDYwMWYwMTYwMjA4MDkxMDQwMjYwMjAwMTYwNDA1MTkwODEwMTYwNDA1MjgwOTM5MjkxOTA4MTgxNTI2MDIwMDE4MzgzODA4Mjg0Mzc4MjAxOTE1MDUwNTA1MDUwNTA5MTkwNTA1MDYxMDQ4ZjU2NWIwMDViMzQxNTYxMDFmNDU3NjAwMDgwZmQ1YjYxMDIwYTYwMDQ4MDgwMzU5MDYwMjAwMTkwOTE5MDUwNTA2MTA2Njg1NjViNjA0MDUxODA4MjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxOTE1MDUwNjA0MDUxODA5MTAzOTBmMzViMzQxNTYxMDI1NzU3NjAwMDgwZmQ1YjYxMDJhMjYwMDQ4MDgwMzU3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjkwNjAyMDAxOTA5MTkwODAzNTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2OTA2MDIwMDE5MDkxOTA1MDUwNjEwNmE3NTY1YjAwNWIzNDE1NjEwMmFmNTc2MDAwODBmZDViNjEwMzdjNjAwNDgwODAzNTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2OTA2MDIwMDE5MDkxOTA4MDM1OTA2MDIwMDE5MDkxOTA4MDM1OTA2MDIwMDE5MDgyMDE4MDM1OTA2MDIwMDE5MDgwODA2MDFmMDE2MDIwODA5MTA0MDI2MDIwMDE2MDQwNTE5MDgxMDE2MDQwNTI4MDkzOTI5MTkwODE4MTUyNjAyMDAxODM4MzgwODI4NDM3ODIwMTkxNTA1MDUwNTA1MDUwOTE5MDgwMzU5MDYwMjAwMTkwOTE5MDgwMzU5MDYwMjAwMTkwOTE5MDgwMzU5MDYwMjAwMTkwODIwMTgwMzU5MDYwMjAwMTkwODA4MDYwMWYwMTYwMjA4MDkxMDQwMjYwMjAwMTYwNDA1MTkwODEwMTYwNDA1MjgwOTM5MjkxOTA4MTgxNTI2MDIwMDE4MzgzODA4Mjg0Mzc4MjAxOTE1MDUwNTA1MDUwNTA5MTkwNTA1MDYxMDc3MzU2NWIwMDViMzQxNTYxMDM4OTU3NjAwMDgwZmQ1YjYxMDNiNTYwMDQ4MDgwMzU3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjkwNjAyMDAxOTA5MTkwNTA1MDYxMGE3MjU2NWI2MDQwNTE4MDgyMTUxNTE1MTU4MTUyNjAyMDAxOTE1MDUwNjA0MDUxODA5MTAzOTBmMzViMzQxNTYxMDNkYTU3NjAwMDgwZmQ1YjYxMDNlMjYxMGIxNjU2NWI2MDQwNTE4MDgyODE1MjYwMjAwMTkxNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjM0MTU2MTA0MDM1NzYwMDA4MGZkNWI2MTA0MGI2MTBiNzA1NjViNjA0MDUxODA4MjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxOTE1MDUwNjA0MDUxODA5MTAzOTBmMzViMzQxNTYxMDQ1ODU3NjAwMDgwZmQ1YjYxMDQ2MDYxMGI5NTU2NWI2MDQwNTE4MDgyMTUxNTE1MTU4MTUyNjAyMDAxOTE1MDUwNjA0MDUxODA5MTAzOTBmMzViMzQxNTYxMDQ4NTU3NjAwMDgwZmQ1YjYxMDQ4ZDYxMGJhODU2NWIwMDViNjAwMDgwNjEwNDliMzM2MTBhNzI1NjViMTUxNTYxMDRhNjU3NjAwMDgwZmQ1Yjg3ODc4Nzg3ODc2MDQwNTE4MDgwN2Y0NTUyNDMzMjMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwODE1MjUwNjAwNTAxODY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NmMwMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAyODE1MjYwMTQwMTg1ODE1MjYwMjAwMTg0NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjZjMDEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMjgxNTI2MDE0MDE4MzgxNTI2MDIwMDE4MjgxNTI2MDIwMDE5NTUwNTA1MDUwNTA1MDYwNDA1MTgwOTEwMzkwMjA5MTUwNjEwNTg5ODg4Mzg1ODg4ODYxMGMzYjU2NWI1MDg1OTA1MDgwNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY2M2E5MDU5Y2JiODk4OTYwMDA2MDQwNTE2MDIwMDE1MjYwNDA1MTgzNjNmZmZmZmZmZjE2N2MwMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDI4MTUyNjAwNDAxODA4MzczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxODI4MTUyNjAyMDAxOTI1MDUwNTA2MDIwNjA0MDUxODA4MzAzODE2MDAwODc4MDNiMTUxNTYxMDYzODU3NjAwMDgwZmQ1YjYxMDJjNjVhMDNmMTE1MTU2MTA2NDk1NzYwMDA4MGZkNWI1MDUwNTA2MDQwNTE4MDUxOTA1MDE1MTU2MTA2NWU1NzYwMDA4MGZkNWI1MDUwNTA1MDUwNTA1MDUwNTY1YjYwMDA4MTgxNTQ4MTEwMTUxNTYxMDY3NzU3ZmU1YjkwNjAwMDUyNjAyMDYwMDAyMDkwMDE2MDAwOTE1MDU0OTA2MTAxMDAwYTkwMDQ3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTY1YjYwMDA2MTA2YjIzMzYxMGE3MjU2NWIxNTE1NjEwNmJkNTc2MDAwODBmZDViODI5MDUwODA3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjYzM2VmMTMzNjc4MzYwNDA1MTgyNjNmZmZmZmZmZjE2N2MwMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDI4MTUyNjAwNDAxODA4MjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxOTE1MDUwNjAwMDYwNDA1MTgwODMwMzgxNjAwMDg3ODAzYjE1MTU2MTA3NWE1NzYwMDA4MGZkNWI2MTAyYzY1YTAzZjExNTE1NjEwNzZiNTc2MDAwODBmZDViNTA1MDUwNTA1MDUwNTY1YjYwMDA4MDYxMDc3ZjMzNjEwYTcyNTY1YjE1MTU2MTA3OGE1NzYwMDA4MGZkNWI4Nzg3ODc4Nzg3NjA0MDUxODA4MDdmNDU1NDQ4NDU1MjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDgxNTI1MDYwMDUwMTg2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjZjMDEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMjgxNTI2MDE0MDE4NTgxNTI2MDIwMDE4NDgwNTE5MDYwMjAwMTkwODA4MzgzNWI2MDIwODMxMDE1MTU2MTA4MzM1NzgwNTE4MjUyNjAyMDgyMDE5MTUwNjAyMDgxMDE5MDUwNjAyMDgzMDM5MjUwNjEwODBlNTY1YjYwMDE4MzYwMjAwMzYxMDEwMDBhMDM4MDE5ODI1MTE2ODE4NDUxMTY4MDgyMTc4NTUyNTA1MDUwNTA1MDUwOTA1MDAxODM4MTUyNjAyMDAxODI4MTUyNjAyMDAxOTU1MDUwNTA1MDUwNTA2MDQwNTE4MDkxMDM5MDIwOTE1MDYxMDg3Zjg4ODM4NTg4ODg2MTBjM2I1NjViOTA1MDg3NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4Nzg3NjA0MDUxODA4MjgwNTE5MDYwMjAwMTkwODA4MzgzNjAwMDViODM4MTEwMTU2MTA4Yzc1NzgwODIwMTUxODE4NDAxNTI2MDIwODEwMTkwNTA2MTA4YWM1NjViNTA1MDUwNTA5MDUwOTA4MTAxOTA2MDFmMTY4MDE1NjEwOGY0NTc4MDgyMDM4MDUxNjAwMTgzNjAyMDAzNjEwMTAwMGEwMzE5MTY4MTUyNjAyMDAxOTE1MDViNTA5MTUwNTA2MDAwNjA0MDUxODA4MzAzODE4NTg3NjE4Nzk2NWEwM2YxOTI1MDUwNTAxNTE1NjEwOTE4NTc2MDAwODBmZDViN2Y1OWJlZDlhYjVkNzgwNzM0NjVkZDY0MmE5ZTNlNzZkZmRiN2Q1M2JjYWU5ZDA5ZGY3ZDBiOGY1MjM0ZDVhODA2MzM4Mjg0OGI4YjhiNjA0MDUxODA4NzczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxODY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE1MjYwMjAwMTg1NjAwMDE5MTY2MDAwMTkxNjgxNTI2MDIwMDE4NDczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxODM4MTUyNjAyMDAxODA2MDIwMDE4MjgxMDM4MjUyODM4MTgxNTE4MTUyNjAyMDAxOTE1MDgwNTE5MDYwMjAwMTkwODA4MzgzNjAwMDViODM4MTEwMTU2MTBhMjk1NzgwODIwMTUxODE4NDAxNTI2MDIwODEwMTkwNTA2MTBhMGU1NjViNTA1MDUwNTA5MDUwOTA4MTAxOTA2MDFmMTY4MDE1NjEwYTU2NTc4MDgyMDM4MDUxNjAwMTgzNjAyMDAzNjEwMTAwMGEwMzE5MTY4MTUyNjAyMDAxOTE1MDViNTA5NzUwNTA1MDUwNTA1MDUwNTA2MDQwNTE4MDkxMDM5MGExNTA1MDUwNTA1MDUwNTA1MDU2NWI2MDAwODA2MDAwOTA1MDViNjAwMDgwNTQ5MDUwODExMDE1NjEwYjBiNTc4MjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NjAwMDgyODE1NDgxMTAxNTE1NjEwYWFkNTdmZTViOTA2MDAwNTI2MDIwNjAwMDIwOTAwMTYwMDA5MDU0OTA2MTAxMDAwYTkwMDQ3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2MTQxNTYxMGFmZTU3NjAwMTkxNTA2MTBiMTA1NjViODA4MDYwMDEwMTkxNTA1MDYxMGE3YTU2NWI2MDAwOTE1MDViNTA5MTkwNTA1NjViNjAwMDgwNjAwMDgwOTE1MDYwMDA5MDUwNWI2MDBhODExMDE1NjEwYjY1NTc4MTYwMDI4MjYwMGE4MTEwMTUxNTYxMGIzYzU3ZmU1YjAxNTQxMTE1NjEwYjU4NTc2MDAyODE2MDBhODExMDE1MTU2MTBiNTM1N2ZlNWIwMTU0OTE1MDViODA4MDYwMDEwMTkxNTA1MDYxMGIyMzU2NWI2MDAxODIwMTkyNTA1MDUwOTA1NjViNjAwMDYxMGI3YTYxMGU5MDU2NWI2MDQwNTE4MDkxMDM5MDYwMDBmMDgwMTUxNTYxMGI5MDU3NjAwMDgwZmQ1YjkwNTA5MDU2NWI2MDAxNjAwMDkwNTQ5MDYxMDEwMDBhOTAwNDYwZmYxNjgxNTY1YjYxMGJiMTMzNjEwYTcyNTY1YjE1MTU2MTBiYmM1NzYwMDA4MGZkNWI2MDAxODA2MDAwNjEwMTAwMGE4MTU0ODE2MGZmMDIxOTE2OTA4MzE1MTUwMjE3OTA1NTUwN2YwOTA5ZThmNzZhNGZkM2U5NzBmMmVhZWY1NmMwZWU2ZGZhZjhiODdjNWI4ZDNmNTZmZmNlNzhlODI1YTkxMTU3MzM2MDQwNTE4MDgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGExNTY1YjYwMDA4MDYxMGM0ODg2ODY2MTBjZTY1NjViOTA1MDYwMDE2MDAwOTA1NDkwNjEwMTAwMGE5MDA0NjBmZjE2ODAxNTYxMGM2YzU3NTA2MTBjNmE4NzYxMGE3MjU2NWIxNTViMTU2MTBjNzY1NzYwMDA4MGZkNWI0Mjg0MTAxNTYxMGM4MzU3NjAwMDgwZmQ1YjYxMGM4YzgzNjEwZGI5NTY1YjYxMGM5NTgxNjEwYTcyNTY1YjE1MTU2MTBjYTA1NzYwMDA4MGZkNWIzMzczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjE0MTU2MTBjZDk1NzYwMDA4MGZkNWI4MDkxNTA1MDk1OTQ1MDUwNTA1MDUwNTY1YjYwMDA4MDYwMDA4MDYwNDE4NTUxMTQxNTE1NjEwY2ZjNTc2MDAwODBmZDViNjAyMDg1MDE1MTkyNTA2MDQwODUwMTUxOTE1MDYwZmY2MDQxODYwMTUxMTY5MDUwNjAxYjgxNjBmZjE2MTAxNTYxMGQyNzU3NjAxYjgxMDE5MDUwNWI2MDAxODY4Mjg1ODU2MDQwNTE2MDAwODE1MjYwMjAwMTYwNDA1MjYwMDA2MDQwNTE2MDIwMDE1MjYwNDA1MTgwODU2MDAwMTkxNjYwMDAxOTE2ODE1MjYwMjAwMTg0NjBmZjE2NjBmZjE2ODE1MjYwMjAwMTgzNjAwMDE5MTY2MDAwMTkxNjgxNTI2MDIwMDE4MjYwMDAxOTE2NjAwMDE5MTY4MTUyNjAyMDAxOTQ1MDUwNTA1MDUwNjAyMDYwNDA1MTYwMjA4MTAzOTA4MDg0MDM5MDYwMDA4NjYxNjQ2ZTVhMDNmMTE1MTU2MTBkYTU1NzYwMDA4MGZkNWI1MDUwNjAyMDYwNDA1MTAzNTE5MzUwNTA1MDUwOTI5MTUwNTA1NjViNjAwMDgwNjEwZGM1MzM2MTBhNzI1NjViMTUxNTYxMGRkMDU3NjAwMDgwZmQ1YjYwMDA5MTUwNjAwMDkwNTA1YjYwMGE4MTEwMTU2MTBlMzg1NzgyNjAwMjgyNjAwYTgxMTAxNTE1NjEwZGYyNTdmZTViMDE1NDE0MTU2MTBkZmY1NzYwMDA4MGZkNWI2MDAyODI2MDBhODExMDE1MTU2MTBlMGU1N2ZlNWIwMTU0NjAwMjgyNjAwYTgxMTAxNTE1NjEwZTFmNTdmZTViMDE1NDEwMTU2MTBlMmI1NzgwOTE1MDViODA4MDYwMDEwMTkxNTA1MDYxMGRkOTU2NWI2MDAyODI2MDBhODExMDE1MTU2MTBlNDc1N2ZlNWIwMTU0ODMxMDE1NjEwZTU1NTc2MDAwODBmZDViNjEyNzEwNjAwMjgzNjAwYTgxMTAxNTE1NjEwZTY3NTdmZTViMDE1NDAxODMxMTE1NjEwZTc2NTc2MDAwODBmZDViODI2MDAyODM2MDBhODExMDE1MTU2MTBlODY1N2ZlNWIwMTgxOTA1NTUwNTA1MDUwNTY1YjYwNDA1MTYxMDU0MDgwNjEwZWExODMzOTAxOTA1NjAwNjA2MDYwNDA1MjM0MTU2MTAwMGY1NzYwMDA4MGZkNWIzMzYwMDA4MDYxMDEwMDBhODE1NDgxNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMDIxOTE2OTA4MzczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2MDIxNzkwNTU1MDYxMDRlMjgwNjEwMDVlNjAwMDM5NjAwMGYzMDA2MDYwNjA0MDUyNjAwNDM2MTA2MTAwNTY1NzYwMDAzNTdjMDEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDkwMDQ2M2ZmZmZmZmZmMTY4MDYyODIxZGUzMTQ2MTAxNDc1NzgwNjMzZWYxMzM2NzE0NjEwMTljNTc4MDYzNmI5Zjk2ZWExNDYxMDFkNTU3NWI2MDAwODA5MDU0OTA2MTAxMDAwYTkwMDQ3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NjEwOGZjMzQ5MDgxMTUwMjkwNjA0MDUxNjAwMDYwNDA1MTgwODMwMzgxODU4ODg4ZjE5MzUwNTA1MDUwMTUxNTYxMDBiNzU3NjAwMDgwZmQ1YjdmNjliMzE1NDhkZWE5YjNiNzA3YjRkZmYzNTdkMzI2ZTNlOTM0OGIyNGU3YTYwODBhMjE4YTZlZGVlZWM0OGY5YjMzMzQ2MDAwMzY2MDQwNTE4MDg1NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE4NDgxNTI2MDIwMDE4MDYwMjAwMTgyODEwMzgyNTI4NDg0ODI4MTgxNTI2MDIwMDE5MjUwODA4Mjg0Mzc4MjAxOTE1MDUwOTU1MDUwNTA1MDUwNTA2MDQwNTE4MDkxMDM5MGExMDA1YjM0MTU2MTAxNTI1NzYwMDA4MGZkNWI2MTAxNWE2MTAxZWE1NjViNjA0MDUxODA4MjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxOTE1MDUwNjA0MDUxODA5MTAzOTBmMzViMzQxNTYxMDFhNzU3NjAwMDgwZmQ1YjYxMDFkMzYwMDQ4MDgwMzU3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjkwNjAyMDAxOTA5MTkwNTA1MDYxMDIwZjU2NWIwMDViMzQxNTYxMDFlMDU3NjAwMDgwZmQ1YjYxMDFlODYxMDQzYzU2NWIwMDViNjAwMDgwOTA1NDkwNjEwMTAwMGE5MDA0NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTU2NWI2MDAwODA2MDAwODA2MDAwOTA1NDkwNjEwMTAwMGE5MDA0NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjMzNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTYxNDE1MTU2MTAyNmY1NzYwMDA4MGZkNWI4MzkyNTAzMDkxNTA4MjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NjM3MGEwODIzMTgzNjAwMDYwNDA1MTYwMjAwMTUyNjA0MDUxODI2M2ZmZmZmZmZmMTY3YzAxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMjgxNTI2MDA0MDE4MDgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE5MTUwNTA2MDIwNjA0MDUxODA4MzAzODE2MDAwODc4MDNiMTUxNTYxMDMxODU3NjAwMDgwZmQ1YjYxMDJjNjVhMDNmMTE1MTU2MTAzMjk1NzYwMDA4MGZkNWI1MDUwNTA2MDQwNTE4MDUxOTA1MDkwNTA2MDAwODExNDE1NjEwMzQzNTc2MTA0MzY1NjViODI3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjYzYTkwNTljYmI2MDAwODA5MDU0OTA2MTAxMDAwYTkwMDQ3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgzNjAwMDYwNDA1MTYwMjAwMTUyNjA0MDUxODM2M2ZmZmZmZmZmMTY3YzAxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMjgxNTI2MDA0MDE4MDgzNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE4MjgxNTI2MDIwMDE5MjUwNTA1MDYwMjA2MDQwNTE4MDgzMDM4MTYwMDA4NzgwM2IxNTE1NjEwNDBmNTc2MDAwODBmZDViNjEwMmM2NWEwM2YxMTUxNTYxMDQyMDU3NjAwMDgwZmQ1YjUwNTA1MDYwNDA1MTgwNTE5MDUwMTUxNTYxMDQzNTU3NjAwMDgwZmQ1YjViNTA1MDUwNTA1NjViNjAwMDgwOTA1NDkwNjEwMTAwMGE5MDA0NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjYxMDhmYzMwNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTYzMTkwODExNTAyOTA2MDQwNTE2MDAwNjA0MDUxODA4MzAzODE4NTg4ODhmMTkzNTA1MDUwNTAxNTE1NjEwNGI0NTc2MDAwODBmZDViNTYwMGExNjU2MjdhN2E3MjMwNTgyMDA4OGNjZTkwNWU0MjRiZmU0NzQ1MTBlZmU0MTc2MTg5M2U5ZTM0YjU0Yjg4NWI4ZmVlNTQ2ZDhiZTg4YWVlM2MwMDI5YTE2NTYyN2E3YTcyMzA1ODIwODI3YWRjM2VmM2ExNzk3NTdiYzMzMDAzZTQxMDcwZmJiZmNkZmM1ZGIzMTI3NWFmM2NiMDM5NTE1NWNkM2JiYjAwMjknO1xuIl19
|
package/dist/src/teth.d.ts
CHANGED
|
@@ -2,10 +2,7 @@ import { BaseCoin, BitGoBase } from '@bitgo/sdk-core';
|
|
|
2
2
|
import { Eth } from './eth';
|
|
3
3
|
import { BaseCoin as StaticsBaseCoin } from '@bitgo/statics';
|
|
4
4
|
export declare class Teth extends Eth {
|
|
5
|
-
protected readonly sendMethodName: 'sendMultiSig' | 'sendMultiSigToken';
|
|
6
5
|
protected constructor(bitgo: BitGoBase, staticsCoin?: Readonly<StaticsBaseCoin>);
|
|
7
6
|
static createInstance(bitgo: BitGoBase, staticsCoin?: Readonly<StaticsBaseCoin>): BaseCoin;
|
|
8
|
-
getChain(): string;
|
|
9
|
-
getFullName(): string;
|
|
10
7
|
}
|
|
11
8
|
//# sourceMappingURL=teth.d.ts.map
|
package/dist/src/teth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"teth.d.ts","sourceRoot":"","sources":["../../src/teth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAE7D,qBAAa,IAAK,SAAQ,GAAG;IAC3B,SAAS,
|
|
1
|
+
{"version":3,"file":"teth.d.ts","sourceRoot":"","sources":["../../src/teth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAE7D,qBAAa,IAAK,SAAQ,GAAG;IAC3B,SAAS,aAAa,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,eAAe,CAAC;IAI/E,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,QAAQ;CAG3F"}
|
package/dist/src/teth.js
CHANGED
|
@@ -5,17 +5,10 @@ const eth_1 = require("./eth");
|
|
|
5
5
|
class Teth extends eth_1.Eth {
|
|
6
6
|
constructor(bitgo, staticsCoin) {
|
|
7
7
|
super(bitgo, staticsCoin);
|
|
8
|
-
this.sendMethodName = 'sendMultiSig';
|
|
9
8
|
}
|
|
10
9
|
static createInstance(bitgo, staticsCoin) {
|
|
11
10
|
return new Teth(bitgo, staticsCoin);
|
|
12
11
|
}
|
|
13
|
-
getChain() {
|
|
14
|
-
return 'teth';
|
|
15
|
-
}
|
|
16
|
-
getFullName() {
|
|
17
|
-
return 'Testnet Ethereum';
|
|
18
|
-
}
|
|
19
12
|
}
|
|
20
13
|
exports.Teth = Teth;
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLCtCQUE0QjtBQUc1QixNQUFhLElBQUssU0FBUSxTQUFHO0lBQzNCLFlBQXNCLEtBQWdCLEVBQUUsV0FBdUM7UUFDN0UsS0FBSyxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFnQixFQUFFLFdBQXVDO1FBQzdFLE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7Q0FDRjtBQVJELG9CQVFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUNvaW4sIEJpdEdvQmFzZSB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgeyBFdGggfSBmcm9tICcuL2V0aCc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBTdGF0aWNzQmFzZUNvaW4gfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5cbmV4cG9ydCBjbGFzcyBUZXRoIGV4dGVuZHMgRXRoIHtcbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKGJpdGdvOiBCaXRHb0Jhc2UsIHN0YXRpY3NDb2luPzogUmVhZG9ubHk8U3RhdGljc0Jhc2VDb2luPikge1xuICAgIHN1cGVyKGJpdGdvLCBzdGF0aWNzQ29pbik7XG4gIH1cblxuICBzdGF0aWMgY3JlYXRlSW5zdGFuY2UoYml0Z286IEJpdEdvQmFzZSwgc3RhdGljc0NvaW4/OiBSZWFkb25seTxTdGF0aWNzQmFzZUNvaW4+KTogQmFzZUNvaW4ge1xuICAgIHJldHVybiBuZXcgVGV0aChiaXRnbywgc3RhdGljc0NvaW4pO1xuICB9XG59XG4iXX0=
|