@bitgo-beta/sdk-coin-celo 1.3.3-alpha.21 → 1.3.3-alpha.211
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 +471 -0
- package/dist/src/index.js +6 -2
- package/dist/src/lib/index.js +6 -2
- package/dist/src/lib/stakingBuilder.js +20 -16
- package/dist/src/lib/transaction.js +6 -2
- package/dist/src/lib/transactionBuilder.js +3 -3
- package/dist/src/lib/types.js +56 -56
- package/dist/src/lib/utils.js +7 -3
- package/package.json +10 -10
package/dist/src/lib/types.js
CHANGED
|
@@ -9,36 +9,6 @@ const wallet_local_1 = require("@celo/wallet-local");
|
|
|
9
9
|
const ethereumjs_util_1 = require("ethereumjs-util");
|
|
10
10
|
const sdk_coin_eth_1 = require("@bitgo-beta/sdk-coin-eth");
|
|
11
11
|
class CeloTransaction {
|
|
12
|
-
constructor(tx) {
|
|
13
|
-
this._feeCurrency = ethereumjs_util_1.toBuffer('0x');
|
|
14
|
-
this._gatewayFeeRecipient = ethereumjs_util_1.toBuffer('0x');
|
|
15
|
-
this._gatewayFee = ethereumjs_util_1.toBuffer('0x');
|
|
16
|
-
this.to = ethereumjs_util_1.toBuffer([]);
|
|
17
|
-
this.v = ethereumjs_util_1.toBuffer([]);
|
|
18
|
-
this.r = ethereumjs_util_1.toBuffer([]);
|
|
19
|
-
this.s = ethereumjs_util_1.toBuffer([]);
|
|
20
|
-
this.nonce = ethereumjs_util_1.unpadBuffer(ethereumjs_util_1.toBuffer(tx.nonce));
|
|
21
|
-
this.gasLimit = ethereumjs_util_1.toBuffer(this.sanitizeHexString(tx.gasLimit));
|
|
22
|
-
this.gasPrice = ethereumjs_util_1.toBuffer(this.sanitizeHexString(tx.gasPrice));
|
|
23
|
-
this.data = ethereumjs_util_1.toBuffer(this.sanitizeHexString(tx.data));
|
|
24
|
-
this.value = ethereumjs_util_1.toBuffer(this.sanitizeHexString(tx.value));
|
|
25
|
-
if (tx.to) {
|
|
26
|
-
this.to = ethereumjs_util_1.toBuffer(tx.to);
|
|
27
|
-
}
|
|
28
|
-
if (tx.v) {
|
|
29
|
-
this.v = ethereumjs_util_1.toBuffer(tx.v);
|
|
30
|
-
}
|
|
31
|
-
if (tx.r) {
|
|
32
|
-
this.r = ethereumjs_util_1.toBuffer(tx.r);
|
|
33
|
-
}
|
|
34
|
-
if (tx.s) {
|
|
35
|
-
this.s = ethereumjs_util_1.toBuffer(tx.s);
|
|
36
|
-
}
|
|
37
|
-
if (tx.from) {
|
|
38
|
-
this._from = ethereumjs_util_1.toBuffer(tx.from);
|
|
39
|
-
}
|
|
40
|
-
this.initRaw();
|
|
41
|
-
}
|
|
42
12
|
// TODO: validate if this needs to be moved to Utils class
|
|
43
13
|
/**
|
|
44
14
|
* Clean hex formatted values ensuring they have an even length
|
|
@@ -55,6 +25,36 @@ class CeloTransaction {
|
|
|
55
25
|
}
|
|
56
26
|
return '0x0' + numberValue.slice(2);
|
|
57
27
|
}
|
|
28
|
+
constructor(tx) {
|
|
29
|
+
this._feeCurrency = (0, ethereumjs_util_1.toBuffer)('0x');
|
|
30
|
+
this._gatewayFeeRecipient = (0, ethereumjs_util_1.toBuffer)('0x');
|
|
31
|
+
this._gatewayFee = (0, ethereumjs_util_1.toBuffer)('0x');
|
|
32
|
+
this.to = (0, ethereumjs_util_1.toBuffer)([]);
|
|
33
|
+
this.v = (0, ethereumjs_util_1.toBuffer)([]);
|
|
34
|
+
this.r = (0, ethereumjs_util_1.toBuffer)([]);
|
|
35
|
+
this.s = (0, ethereumjs_util_1.toBuffer)([]);
|
|
36
|
+
this.nonce = (0, ethereumjs_util_1.unpadBuffer)((0, ethereumjs_util_1.toBuffer)(tx.nonce));
|
|
37
|
+
this.gasLimit = (0, ethereumjs_util_1.toBuffer)(this.sanitizeHexString(tx.gasLimit));
|
|
38
|
+
this.gasPrice = (0, ethereumjs_util_1.toBuffer)(this.sanitizeHexString(tx.gasPrice));
|
|
39
|
+
this.data = (0, ethereumjs_util_1.toBuffer)(this.sanitizeHexString(tx.data));
|
|
40
|
+
this.value = (0, ethereumjs_util_1.toBuffer)(this.sanitizeHexString(tx.value));
|
|
41
|
+
if (tx.to) {
|
|
42
|
+
this.to = (0, ethereumjs_util_1.toBuffer)(tx.to);
|
|
43
|
+
}
|
|
44
|
+
if (tx.v) {
|
|
45
|
+
this.v = (0, ethereumjs_util_1.toBuffer)(tx.v);
|
|
46
|
+
}
|
|
47
|
+
if (tx.r) {
|
|
48
|
+
this.r = (0, ethereumjs_util_1.toBuffer)(tx.r);
|
|
49
|
+
}
|
|
50
|
+
if (tx.s) {
|
|
51
|
+
this.s = (0, ethereumjs_util_1.toBuffer)(tx.s);
|
|
52
|
+
}
|
|
53
|
+
if (tx.from) {
|
|
54
|
+
this._from = (0, ethereumjs_util_1.toBuffer)(tx.from);
|
|
55
|
+
}
|
|
56
|
+
this.initRaw();
|
|
57
|
+
}
|
|
58
58
|
initRaw() {
|
|
59
59
|
this.raw = [
|
|
60
60
|
this.nonce,
|
|
@@ -79,16 +79,16 @@ class CeloTransaction {
|
|
|
79
79
|
else {
|
|
80
80
|
items = this.raw
|
|
81
81
|
.slice(0, 9)
|
|
82
|
-
.concat([ethereumjs_util_1.toBuffer(this.getChainId()), ethereumjs_util_1.unpadBuffer(ethereumjs_util_1.toBuffer(0)), ethereumjs_util_1.unpadBuffer(ethereumjs_util_1.toBuffer(0))]);
|
|
82
|
+
.concat([(0, ethereumjs_util_1.toBuffer)(this.getChainId()), (0, ethereumjs_util_1.unpadBuffer)((0, ethereumjs_util_1.toBuffer)(0)), (0, ethereumjs_util_1.unpadBuffer)((0, ethereumjs_util_1.toBuffer)(0))]);
|
|
83
83
|
}
|
|
84
|
-
return ethereumjs_util_1.rlphash(items);
|
|
84
|
+
return (0, ethereumjs_util_1.rlphash)(items);
|
|
85
85
|
}
|
|
86
86
|
getSenderAddress() {
|
|
87
87
|
if (this._from) {
|
|
88
88
|
return this._from;
|
|
89
89
|
}
|
|
90
90
|
const pubKey = this.getSenderPublicKey();
|
|
91
|
-
this._from = ethereumjs_util_1.publicToAddress(pubKey);
|
|
91
|
+
this._from = (0, ethereumjs_util_1.publicToAddress)(pubKey);
|
|
92
92
|
return this._from;
|
|
93
93
|
}
|
|
94
94
|
getSenderPublicKey() {
|
|
@@ -108,8 +108,8 @@ class CeloTransaction {
|
|
|
108
108
|
const msgHash = this.hash(false);
|
|
109
109
|
try {
|
|
110
110
|
const chainId = this.getChainId();
|
|
111
|
-
const v = ethereumjs_util_1.bufferToInt(this.v) - (2 * chainId + 35);
|
|
112
|
-
this._senderPubKey = ethereumjs_util_1.ecrecover(msgHash, v + 27, this.r, this.s);
|
|
111
|
+
const v = (0, ethereumjs_util_1.bufferToInt)(this.v) - (2 * chainId + 35);
|
|
112
|
+
this._senderPubKey = (0, ethereumjs_util_1.ecrecover)(msgHash, v + 27, this.r, this.s);
|
|
113
113
|
}
|
|
114
114
|
catch (e) {
|
|
115
115
|
return false;
|
|
@@ -117,7 +117,7 @@ class CeloTransaction {
|
|
|
117
117
|
return !!this._senderPubKey;
|
|
118
118
|
}
|
|
119
119
|
getChainId() {
|
|
120
|
-
let chainId = ethereumjs_util_1.bufferToInt(this.v);
|
|
120
|
+
let chainId = (0, ethereumjs_util_1.bufferToInt)(this.v);
|
|
121
121
|
if (this.r.length && this.s.length) {
|
|
122
122
|
chainId = (chainId - 35) >> 1;
|
|
123
123
|
}
|
|
@@ -131,14 +131,14 @@ class CeloTransactionData {
|
|
|
131
131
|
this.deployedAddress = deployedAddress;
|
|
132
132
|
}
|
|
133
133
|
static fromJson(tx) {
|
|
134
|
-
const chainId = ethereumjs_util_1.addHexPrefix(new bignumber_js_1.default(Number(tx.chainId)).toString(16));
|
|
134
|
+
const chainId = (0, ethereumjs_util_1.addHexPrefix)(new bignumber_js_1.default(Number(tx.chainId)).toString(16));
|
|
135
135
|
return new CeloTransactionData(new CeloTransaction({
|
|
136
136
|
_type: sdk_coin_eth_1.ETHTransactionType.LEGACY,
|
|
137
137
|
nonce: tx.nonce,
|
|
138
138
|
to: tx.to,
|
|
139
|
-
gasPrice: ethereumjs_util_1.addHexPrefix(new bignumber_js_1.default(tx.gasPrice).toString(16)),
|
|
140
|
-
gasLimit: ethereumjs_util_1.addHexPrefix(new bignumber_js_1.default(tx.gasLimit).toString(16)),
|
|
141
|
-
value: ethereumjs_util_1.addHexPrefix(new bignumber_js_1.default(tx.value).toString(16)),
|
|
139
|
+
gasPrice: (0, ethereumjs_util_1.addHexPrefix)(new bignumber_js_1.default(tx.gasPrice).toString(16)),
|
|
140
|
+
gasLimit: (0, ethereumjs_util_1.addHexPrefix)(new bignumber_js_1.default(tx.gasLimit).toString(16)),
|
|
141
|
+
value: (0, ethereumjs_util_1.addHexPrefix)(new bignumber_js_1.default(tx.value).toString(16)),
|
|
142
142
|
data: tx.data === '0x' ? '' : tx.data,
|
|
143
143
|
from: tx.from,
|
|
144
144
|
s: tx.s,
|
|
@@ -147,34 +147,34 @@ class CeloTransactionData {
|
|
|
147
147
|
}), tx.deployedAddress);
|
|
148
148
|
}
|
|
149
149
|
async sign(keyPair) {
|
|
150
|
-
const privateKey = ethereumjs_util_1.addHexPrefix(keyPair.getKeys().prv);
|
|
150
|
+
const privateKey = (0, ethereumjs_util_1.addHexPrefix)(keyPair.getKeys().prv);
|
|
151
151
|
const data = CeloTransactionData.txJsonToCeloTx(this.toJson(), keyPair.getAddress());
|
|
152
152
|
const celoLocalWallet = new wallet_local_1.LocalWallet();
|
|
153
153
|
celoLocalWallet.addAccount(privateKey);
|
|
154
154
|
const rawTransaction = await celoLocalWallet.signTransaction(data);
|
|
155
155
|
const nonceBigNumber = new bignumber_js_1.default(rawTransaction.tx.nonce);
|
|
156
|
-
rawTransaction.tx.nonce = ethereumjs_util_1.addHexPrefix(nonceBigNumber.toString(16));
|
|
156
|
+
rawTransaction.tx.nonce = (0, ethereumjs_util_1.addHexPrefix)(nonceBigNumber.toString(16));
|
|
157
157
|
rawTransaction.raw = data.data === undefined ? '' : data.data;
|
|
158
158
|
rawTransaction.tx.gas = rawTransaction.tx.gas;
|
|
159
159
|
this.tx = new CeloTransaction(CeloTransactionData.encodedTxToJson(rawTransaction));
|
|
160
|
-
this.tx.sign(ethereumjs_util_1.toBuffer(privateKey));
|
|
160
|
+
this.tx.sign((0, ethereumjs_util_1.toBuffer)(privateKey));
|
|
161
161
|
}
|
|
162
162
|
/** @inheritdoc */
|
|
163
163
|
toJson() {
|
|
164
164
|
const result = {
|
|
165
165
|
_type: sdk_coin_eth_1.ETHTransactionType.LEGACY,
|
|
166
|
-
nonce: ethereumjs_util_1.bufferToInt(this.tx.nonce),
|
|
167
|
-
gasPrice: new bignumber_js_1.default(ethereumjs_util_1.bufferToHex(this.tx.gasPrice), 16).toString(10),
|
|
168
|
-
gasLimit: new bignumber_js_1.default(ethereumjs_util_1.bufferToHex(this.tx.gasLimit), 16).toString(10),
|
|
169
|
-
value: this.tx.value.length === 0 ? '0' : new bignumber_js_1.default(ethereumjs_util_1.bufferToHex(this.tx.value), 16).toString(10),
|
|
170
|
-
data: ethereumjs_util_1.bufferToHex(this.tx.data),
|
|
171
|
-
id: ethereumjs_util_1.addHexPrefix(ethereumjs_util_1.bufferToHex(this.tx.hash(true))),
|
|
166
|
+
nonce: (0, ethereumjs_util_1.bufferToInt)(this.tx.nonce),
|
|
167
|
+
gasPrice: new bignumber_js_1.default((0, ethereumjs_util_1.bufferToHex)(this.tx.gasPrice), 16).toString(10),
|
|
168
|
+
gasLimit: new bignumber_js_1.default((0, ethereumjs_util_1.bufferToHex)(this.tx.gasLimit), 16).toString(10),
|
|
169
|
+
value: this.tx.value.length === 0 ? '0' : new bignumber_js_1.default((0, ethereumjs_util_1.bufferToHex)(this.tx.value), 16).toString(10),
|
|
170
|
+
data: (0, ethereumjs_util_1.bufferToHex)(this.tx.data),
|
|
171
|
+
id: (0, ethereumjs_util_1.addHexPrefix)((0, ethereumjs_util_1.bufferToHex)(this.tx.hash(true))),
|
|
172
172
|
};
|
|
173
173
|
if (this.tx.to && this.tx.to.length) {
|
|
174
|
-
result.to = ethereumjs_util_1.bufferToHex(this.tx.to);
|
|
174
|
+
result.to = (0, ethereumjs_util_1.bufferToHex)(this.tx.to);
|
|
175
175
|
}
|
|
176
176
|
if (this.tx.verifySignature()) {
|
|
177
|
-
result.from = ethereumjs_util_1.bufferToHex(this.tx.getSenderAddress());
|
|
177
|
+
result.from = (0, ethereumjs_util_1.bufferToHex)(this.tx.getSenderAddress());
|
|
178
178
|
}
|
|
179
179
|
const chainId = this.tx.getChainId();
|
|
180
180
|
if (chainId) {
|
|
@@ -188,18 +188,18 @@ class CeloTransactionData {
|
|
|
188
188
|
}
|
|
189
189
|
setSignatureFields(result) {
|
|
190
190
|
if (this.tx.v && this.tx.v.length) {
|
|
191
|
-
result.v = ethereumjs_util_1.bufferToHex(this.tx.v);
|
|
191
|
+
result.v = (0, ethereumjs_util_1.bufferToHex)(this.tx.v);
|
|
192
192
|
}
|
|
193
193
|
if (this.tx.r && this.tx.r.length) {
|
|
194
|
-
result.r = ethereumjs_util_1.bufferToHex(this.tx.r);
|
|
194
|
+
result.r = (0, ethereumjs_util_1.bufferToHex)(this.tx.r);
|
|
195
195
|
}
|
|
196
196
|
if (this.tx.s && this.tx.s.length) {
|
|
197
|
-
result.s = ethereumjs_util_1.bufferToHex(this.tx.s);
|
|
197
|
+
result.s = (0, ethereumjs_util_1.bufferToHex)(this.tx.s);
|
|
198
198
|
}
|
|
199
199
|
}
|
|
200
200
|
/** @inheritdoc */
|
|
201
201
|
toSerialized() {
|
|
202
|
-
return ethereumjs_util_1.addHexPrefix(this.tx.serialize().toString('hex'));
|
|
202
|
+
return (0, ethereumjs_util_1.addHexPrefix)(this.tx.serialize().toString('hex'));
|
|
203
203
|
}
|
|
204
204
|
static txJsonToCeloTx(txJson, signer) {
|
|
205
205
|
// the celo library requires you to specify the signer address with the from field
|
|
@@ -220,4 +220,4 @@ class CeloTransactionData {
|
|
|
220
220
|
}
|
|
221
221
|
}
|
|
222
222
|
exports.CeloTransactionData = CeloTransactionData;
|
|
223
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLGdFQUFxQztBQUNyQyxxREFBaUQ7QUFDakQscURBVXlCO0FBRXpCLDJEQUE2RztBQUU3RyxNQUFhLGVBQWU7SUFrQzFCLFlBQVksRUFBZ0I7UUE3QnBCLGlCQUFZLEdBQVcsMEJBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0Qyx5QkFBb0IsR0FBVywwQkFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlDLGdCQUFXLEdBQVcsMEJBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQU03QyxPQUFFLEdBQVcsMEJBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMxQixNQUFDLEdBQVcsMEJBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN6QixNQUFDLEdBQVcsMEJBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN6QixNQUFDLEdBQVcsMEJBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQW1CdkIsSUFBSSxDQUFDLEtBQUssR0FBRyw2QkFBVyxDQUFDLDBCQUFRLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLFFBQVEsR0FBRywwQkFBUSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsUUFBUSxHQUFHLDBCQUFRLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxJQUFJLEdBQUcsMEJBQVEsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLEtBQUssR0FBRywwQkFBUSxDQUFDLElBQUksQ0FBQyxpQkFBaUIs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QUFNLENBQUMsQ0FBQyxHQUFHLDZCQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNuQztJQUNILENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsWUFBWTtRQUNWLE9BQU8sOEJBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFTyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQW9CLEVBQUUsTUFBYztRQUNoRSxrRkFBa0Y7UUFDbEYsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUU7WUFDL0IsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztZQUN4RSxHQUFHLEVBQUUsTUFBTSxDQUFDLFFBQVE7WUFDcEIsSUFBSSxFQUFFLE1BQU07U0FDYixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sTUFBTSxDQUFDLGVBQWUsQ0FBQyxTQUE2QjtRQUMxRCxPQUFPO1lBQ0wsR0FBRyxTQUFTLENBQUMsRUFBRTtZQUNmLEtBQUssRUFBRSxpQ0FBa0IsQ0FBQyxNQUFNO1lBQ2hDLEtBQUssRUFBRSxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQ3ZDLFFBQVEsRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEdBQUc7WUFDMUIsSUFBSSxFQUFFLFNBQVMsQ0FBQyxHQUFHO1NBQ3BCLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFuSEQsa0RBbUhDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEJpZ051bWJlciBmcm9tICdiaWdudW1iZXIuanMnO1xuaW1wb3J0IHsgTG9jYWxXYWxsZXQgfSBmcm9tICdAY2Vsby93YWxsZXQtbG9jYWwnO1xuaW1wb3J0IHtcbiAgYWRkSGV4UHJlZml4LFxuICB0b0J1ZmZlcixcbiAgYnVmZmVyVG9IZXgsXG4gIGJ1ZmZlclRvSW50LFxuICBybHAsXG4gIHJscGhhc2gsXG4gIGVjcmVjb3ZlcixcbiAgcHVibGljVG9BZGRyZXNzLFxuICB1bnBhZEJ1ZmZlcixcbn0gZnJvbSAnZXRoZXJldW1qcy11dGlsJztcbmltcG9ydCB7IENlbG9UeCwgRW5jb2RlZFRyYW5zYWN0aW9uIH0gZnJvbSAnQGNlbG8vY29ubmVjdCc7XG5pbXBvcnQgeyBFdGhMaWtlVHJhbnNhY3Rpb25EYXRhLCBFVEhUcmFuc2FjdGlvblR5cGUsIEtleVBhaXIsIExlZ2FjeVR4RGF0YSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWV0aCc7XG5cbmV4cG9ydCBjbGFzcyBDZWxvVHJhbnNhY3Rpb24ge1xuICBwcml2YXRlIHJhdzogQnVmZmVyW107XG4gIHByaXZhdGUgX2Zyb206IEJ1ZmZlcjtcbiAgcHJpdmF0ZSBfc2VuZGVyUHViS2V5PztcbiAgcHJpdmF0ZSBfc2lnbmF0dXJlczogQnVmZmVyW107XG4gIHByaXZhdGUgX2ZlZUN1cnJlbmN5OiBCdWZmZXIgPSB0b0J1ZmZlcignMHgnKTtcbiAgcHJpdmF0ZSBfZ2F0ZXdheUZlZVJlY2lwaWVudDogQnVmZmVyID0gdG9CdWZmZXIoJzB4Jyk7XG4gIHByaXZhdGUgX2dhdGV3YXlGZWU6IEJ1ZmZlciA9IHRvQnVmZmVyKCcweCcpO1xuICBub25jZTogQnVmZmVyO1xuICBnYXNMaW1pdDogQnVmZmVyO1xuICBnYXNQcmljZTogQnVmZmVyO1xuICBkYXRhOiBCdWZmZXI7XG4gIHZhbHVlOiBCdWZmZXI7XG4gIHRvOiBCdWZmZXIgPSB0b0J1ZmZlcihbXSk7XG4gIHY6IEJ1ZmZlciA9IHRvQnVmZmVyKFtdKTtcbiAgcjogQnVmZmVyID0gdG9CdWZmZXIoW10pO1xuICBzOiBCdWZmZXIgPSB0b0J1ZmZlcihbXSk7XG5cbiAgLy8gVE9ETzogdmFsaWRhdGUgaWYgdGhpcyBuZWVkcyB0byBiZSBtb3ZlZCB0byBVdGlscyBjbGFzc1xuICAvKipcbiAgICogQ2xlYW4gaGV4IGZvcm1hdHRlZCB2YWx1ZXMgZW5zdXJpbmcgdGhleSBoYXZlIGFuIGV2ZW4gbGVuZ3RoXG4gICAqXG4gICAqIEBwYXJhbSBudW1iZXJWYWx1ZSBIZXggZm9ybWF0dGVkIG51bWJlciB2YWx1ZS4gRXhhbXBsZSAnMHgwMSdcbiAgICogQHJldHVybnMgc2FuaXRpemVkIHZhbHVlXG4gICAqL1xuICBwcml2YXRlIHNhbml0aXplSGV4U3RyaW5nKG51bWJlclZhbHVlKSB7XG4gICAgaWYgKG51bWJlclZhbHVlID09PSAnMHgwJyB8fCBudW1iZXJWYWx1ZSA9PSAnJykge1xuICAgICAgcmV0dXJuICcweCc7XG4gICAgfSBlbHNlIGlmIChudW1iZXJWYWx1ZS5sZW5ndGggJSAyID09PSAwKSB7XG4gICAgICByZXR1cm4gbnVtYmVyVmFsdWU7XG4gICAgfVxuICAgIHJldHVybiAnMHgwJyArIG51bWJlclZhbHVlLnNsaWNlKDIpO1xuICB9XG5cbiAgY29uc3RydWN0b3IodHg6IExlZ2FjeVR4RGF0YSkge1xuICAgIHRoaXMubm9uY2UgPSB1bnBhZEJ1ZmZlcih0b0J1ZmZlcih0eC5ub25jZSkpO1xuICAgIHRoaXMuZ2FzTGltaXQgPSB0b0J1ZmZlcih0aGlzLnNhbml0aXplSGV4U3RyaW5nKHR4Lmdhc0xpbWl0KSk7XG4gICAgdGhpcy5nYXNQcmljZSA9IHRvQnVmZmVyKHRoaXMuc2FuaXRpemVIZXhTdHJpbmcodHguZ2FzUHJpY2UpKTtcbiAgICB0aGlzLmRhdGEgPSB0b0J1ZmZlcih0aGlzLnNhbml0aXplSGV4U3RyaW5nKHR4LmRhdGEpKTtcbiAgICB0aGlzLnZhbHVlID0gdG9CdWZmZXIodGhpcy5zYW5pdGl6ZUhleFN0cmluZyh0eC52YWx1ZSkpO1xuICAgIGlmICh0eC50bykge1xuICAgICAgdGhpcy50byA9IHRvQnVmZmVyKHR4LnRvKTtcbiAgICB9XG4gICAgaWYgKHR4LnYpIHtcbiAgICAgIHRoaXMudiA9IHRvQnVmZmVyKHR4LnYpO1xuICAgIH1cbiAgICBpZiAodHgucikge1xuICAgICAgdGhpcy5yID0gdG9CdWZmZXIodHgucik7XG4gICAgfVxuICAgIGlmICh0eC5zKSB7XG4gICAgICB0aGlzLnMgPSB0b0J1ZmZlcih0eC5zKTtcbiAgICB9XG4gICAgaWYgKHR4LmZyb20pIHtcbiAgICAgIHRoaXMuX2Zyb20gPSB0b0J1ZmZlcih0eC5mcm9tKTtcbiAgICB9XG4gICAgdGhpcy5pbml0UmF3KCk7XG4gIH1cblxuICBwcml2YXRlIGluaXRSYXcoKSB7XG4gICAgdGhpcy5yYXcgPSBbXG4gICAgICB0aGlzLm5vbmNlLFxuICAgICAgdGhpcy5nYXNQcmljZSxcbiAgICAgIHRoaXMuZ2FzTGltaXQsXG4gICAgICB0aGlzLl9mZWVDdXJyZW5jeSxcbiAgICAgIHRoaXMuX2dhdGV3YXlGZWVSZWNpcGllbnQsXG4gICAgICB0aGlzLl9nYXRld2F5RmVlLFxuICAgICAgdGhpcy50byxcbiAgICAgIHRoaXMudmFsdWUsXG4gICAgICB0aGlzLmRhdGEsXG4gICAgICB0aGlzLnYsXG4gICAgICB0aGlzLnIsXG4gICAgICB0aGlzLnMsXG4gICAgXTtcbiAgfVxuXG4gIGhhc2goaW5jbHVkZVNpZ25hdHVyZT86IGJvb2xlYW4pOiBCdWZmZXIge1xuICAgIGxldCBpdGVtcztcbiAgICBpZiAoaW5jbHVkZVNpZ25hdHVyZSkge1xuICAgICAgaXRlbXMgPSB0aGlzLnJhdztcbiAgICB9IGVsc2Uge1xuICAgICAgaXRlbXMgPSB0aGlzLnJhd1xuICAgICAgICAuc2xpY2UoMCwgOSlcbiAgICAgICAgLmNvbmNhdChbdG9CdWZmZXIodGhpcy5nZXRDaGFpbklkKCkpLCB1bnBhZEJ1ZmZlcih0b0J1ZmZlcigwKSksIHVucGFkQnVmZmVyKHRvQnVmZmVyKDApKV0pO1xuICAgIH1cbiAgICByZXR1cm4gcmxwaGFzaChpdGVtcyk7XG4gIH1cblxuICBnZXRTZW5kZXJBZGRyZXNzKCk6IEJ1ZmZlciB7XG4gICAgaWYgKHRoaXMuX2Zyb20pIHtcbiAgICAgIHJldHVybiB0aGlzLl9mcm9tO1xuICAgIH1cbiAgICBjb25zdCBwdWJLZXkgPSB0aGlzLmdldFNlbmRlclB1YmxpY0tleSgpO1xuICAgIHRoaXMuX2Zyb20gPSBwdWJsaWNUb0FkZHJlc3MocHViS2V5KTtcbiAgICByZXR1cm4gdGhpcy5fZnJvbTtcbiAgfVxuXG4gIGdldFNlbmRlclB1YmxpY0tleSgpIHtcbiAgICBpZiAodGhpcy52ZXJpZnlTaWduYXR1cmUoKSkge1xuICAgICAgLy8gSWYgdGhlIHNpZ25hdHVyZSB3YXMgdmVyaWZpZWQgc3VjY2Vzc2Z1bGx5IHRoZSBfc2VuZGVyUHViS2V5IGZpZWxkIGlzIGRlZmluZWRcbiAgICAgIHJldHVybiB0aGlzLl9zZW5kZXJQdWJLZXk7XG4gICAgfVxuICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBTaWduYXR1cmUnKTtcbiAgfVxuXG4gIHNlcmlhbGl6ZSgpOiBCdWZmZXIge1xuICAgIHJldHVybiBybHAuZW5jb2RlKHRoaXMucmF3KTtcbiAgfVxuXG4gIHNpZ24ocHJpdmF0ZUtleTogQnVmZmVyKTogdm9pZCB7XG4gICAgdGhpcy5fc2lnbmF0dXJlcyA9IFt0aGlzLnYsIHRoaXMuciwgdGhpcy5zLCBwcml2YXRlS2V5XTtcbiAgfVxuXG4gIHZlcmlmeVNpZ25hdHVyZSgpOiBib29sZWFuIHtcbiAgICBjb25zdCBtc2dIYXNoID0gdGhpcy5oYXNoKGZhbHNlKTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgY2hhaW5JZCA9IHRoaXMuZ2V0Q2hhaW5JZCgpO1xuICAgICAgY29uc3QgdiA9IGJ1ZmZlclRvSW50KHRoaXMudikgLSAoMiAqIGNoYWluSWQgKyAzNSk7XG4gICAgICB0aGlzLl9zZW5kZXJQdWJLZXkgPSBlY3JlY292ZXIobXNnSGFzaCwgdiArIDI3LCB0aGlzLnIsIHRoaXMucyk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gISF0aGlzLl9zZW5kZXJQdWJLZXk7XG4gIH1cblxuICBnZXRDaGFpbklkKCk6IG51bWJlciB7XG4gICAgbGV0IGNoYWluSWQgPSBidWZmZXJUb0ludCh0aGlzLnYpO1xuICAgIGlmICh0aGlzLnIubGVuZ3RoICYmIHRoaXMucy5sZW5ndGgpIHtcbiAgICAgIGNoYWluSWQgPSAoY2hhaW5JZCAtIDM1KSA+PiAxO1xuICAgIH1cbiAgICByZXR1cm4gY2hhaW5JZDtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQ2Vsb1RyYW5zYWN0aW9uRGF0YSBpbXBsZW1lbnRzIEV0aExpa2VUcmFuc2FjdGlvbkRhdGEge1xuICBwcml2YXRlIHR4OiBDZWxvVHJhbnNhY3Rpb247XG4gIHByaXZhdGUgZGVwbG95ZWRBZGRyZXNzPzogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHR4OiBDZWxvVHJhbnNhY3Rpb24sIGRlcGxveWVkQWRkcmVzcz86IHN0cmluZykge1xuICAgIHRoaXMudHggPSB0eDtcbiAgICB0aGlzLmRlcGxveWVkQWRkcmVzcyA9IGRlcGxveWVkQWRkcmVzcztcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgZnJvbUpzb24odHg6IExlZ2FjeVR4RGF0YSk6IENlbG9UcmFuc2FjdGlvbkRhdGEge1xuICAgIGNvbnN0IGNoYWluSWQgPSBhZGRIZXhQcmVmaXgobmV3IEJpZ051bWJlcihOdW1iZXIodHguY2hhaW5JZCkpLnRvU3RyaW5nKDE2KSk7XG4gICAgcmV0dXJuIG5ldyBDZWxvVHJhbnNhY3Rpb25EYXRhKFxuICAgICAgbmV3IENlbG9UcmFuc2FjdGlvbih7XG4gICAgICAgIF90eXBlOiBFVEhUcmFuc2FjdGlvblR5cGUuTEVHQUNZLFxuICAgICAgICBub25jZTogdHgubm9uY2UsXG4gICAgICAgIHRvOiB0eC50byxcbiAgICAgICAgZ2FzUHJpY2U6IGFkZEhleFByZWZpeChuZXcgQmlnTnVtYmVyKHR4Lmdhc1ByaWNlKS50b1N0cmluZygxNikpLFxuICAgICAgICBnYXNMaW1pdDogYWRkSGV4UHJlZml4KG5ldyBCaWdOdW1iZXIodHguZ2FzTGltaXQpLnRvU3RyaW5nKDE2KSksXG4gICAgICAgIHZhbHVlOiBhZGRIZXhQcmVmaXgobmV3IEJpZ051bWJlcih0eC52YWx1ZSkudG9TdHJpbmcoMTYpKSxcbiAgICAgICAgZGF0YTogdHguZGF0YSA9PT0gJzB4JyA/ICcnIDogdHguZGF0YSxcbiAgICAgICAgZnJvbTogdHguZnJvbSxcbiAgICAgICAgczogdHgucyxcbiAgICAgICAgcjogdHgucixcbiAgICAgICAgdjogdHgudiB8fCBjaGFpbklkLFxuICAgICAgfSksXG4gICAgICB0eC5kZXBsb3llZEFkZHJlc3NcbiAgICApO1xuICB9XG5cbiAgYXN5bmMgc2lnbihrZXlQYWlyOiBLZXlQYWlyKSB7XG4gICAgY29uc3QgcHJpdmF0ZUtleSA9IGFkZEhleFByZWZpeChrZXlQYWlyLmdldEtleXMoKS5wcnYgYXMgc3RyaW5nKTtcbiAgICBjb25zdCBkYXRhID0gQ2Vsb1RyYW5zYWN0aW9uRGF0YS50eEpzb25Ub0NlbG9UeCh0aGlzLnRvSnNvbigpLCBrZXlQYWlyLmdldEFkZHJlc3MoKSk7XG4gICAgY29uc3QgY2Vsb0xvY2FsV2FsbGV0ID0gbmV3IExvY2FsV2FsbGV0KCk7XG4gICAgY2Vsb0xvY2FsV2FsbGV0LmFkZEFjY291bnQocHJpdmF0ZUtleSk7XG4gICAgY29uc3QgcmF3VHJhbnNhY3Rpb24gPSBhd2FpdCBjZWxvTG9jYWxXYWxsZXQuc2lnblRyYW5zYWN0aW9uKGRhdGEpO1xuXG4gICAgY29uc3Qgbm9uY2VCaWdOdW1iZXIgPSBuZXcgQmlnTnVtYmVyKHJhd1RyYW5zYWN0aW9uLnR4Lm5vbmNlKTtcbiAgICByYXdUcmFuc2FjdGlvbi50eC5ub25jZSA9IGFkZEhleFByZWZpeChub25jZUJpZ051bWJlci50b1N0cmluZygxNikpO1xuICAgIHJhd1RyYW5zYWN0aW9uLnJhdyA9IGRhdGEuZGF0YSA9PT0gdW5kZWZpbmVkID8gJycgOiBkYXRhLmRhdGE7XG4gICAgcmF3VHJhbnNhY3Rpb24udHguZ2FzID0gcmF3VHJhbnNhY3Rpb24udHguZ2FzO1xuICAgIHRoaXMudHggPSBuZXcgQ2Vsb1RyYW5zYWN0aW9uKENlbG9UcmFuc2FjdGlvbkRhdGEuZW5jb2RlZFR4VG9Kc29uKHJhd1RyYW5zYWN0aW9uKSk7XG4gICAgdGhpcy50eC5zaWduKHRvQnVmZmVyKHByaXZhdGVLZXkpKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0pzb24oKTogTGVnYWN5VHhEYXRhIHtcbiAgICBjb25zdCByZXN1bHQ6IExlZ2FjeVR4RGF0YSA9IHtcbiAgICAgIF90eXBlOiBFVEhUcmFuc2FjdGlvblR5cGUuTEVHQUNZLFxuICAgICAgbm9uY2U6IGJ1ZmZlclRvSW50KHRoaXMudHgubm9uY2UpLFxuICAgICAgZ2FzUHJpY2U6IG5ldyBCaWdOdW1iZXIoYnVmZmVyVG9IZXgodGhpcy50eC5nYXNQcmljZSksIDE2KS50b1N0cmluZygxMCksXG4gICAgICBnYXNMaW1pdDogbmV3IEJpZ051bWJlcihidWZmZXJUb0hleCh0aGlzLnR4Lmdhc0xpbWl0KSwgMTYpLnRvU3RyaW5nKDEwKSxcbiAgICAgIHZhbHVlOiB0aGlzLnR4LnZhbHVlLmxlbmd0aCA9PT0gMCA/ICcwJyA6IG5ldyBCaWdOdW1iZXIoYnVmZmVyVG9IZXgodGhpcy50eC52YWx1ZSksIDE2KS50b1N0cmluZygxMCksXG4gICAgICBkYXRhOiBidWZmZXJUb0hleCh0aGlzLnR4LmRhdGEpLFxuICAgICAgaWQ6IGFkZEhleFByZWZpeChidWZmZXJUb0hleCh0aGlzLnR4Lmhhc2godHJ1ZSkpKSxcbiAgICB9O1xuXG4gICAgaWYgKHRoaXMudHgudG8gJiYgdGhpcy50eC50by5sZW5ndGgpIHtcbiAgICAgIHJlc3VsdC50byA9IGJ1ZmZlclRvSGV4KHRoaXMudHgudG8pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnR4LnZlcmlmeVNpZ25hdHVyZSgpKSB7XG4gICAgICByZXN1bHQuZnJvbSA9IGJ1ZmZlclRvSGV4KHRoaXMudHguZ2V0U2VuZGVyQWRkcmVzcygpKTtcbiAgICB9XG5cbiAgICBjb25zdCBjaGFpbklkID0gdGhpcy50eC5nZXRDaGFpbklkKCk7XG4gICAgaWYgKGNoYWluSWQpIHtcbiAgICAgIHJlc3VsdC5jaGFpbklkID0gY2hhaW5JZC50b1N0cmluZygpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmRlcGxveWVkQWRkcmVzcykge1xuICAgICAgcmVzdWx0LmRlcGxveWVkQWRkcmVzcyA9IHRoaXMuZGVwbG95ZWRBZGRyZXNzO1xuICAgIH1cblxuICAgIHRoaXMuc2V0U2lnbmF0dXJlRmllbGRzKHJlc3VsdCk7XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRTaWduYXR1cmVGaWVsZHMocmVzdWx0OiBMZWdhY3lUeERhdGEpOiB2b2lkIHtcbiAgICBpZiAodGhpcy50eC52ICYmIHRoaXMudHgudi5sZW5ndGgpIHtcbiAgICAgIHJlc3VsdC52ID0gYnVmZmVyVG9IZXgodGhpcy50eC52KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy50eC5yICYmIHRoaXMudHguci5sZW5ndGgpIHtcbiAgICAgIHJlc3VsdC5yID0gYnVmZmVyVG9IZXgodGhpcy50eC5yKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy50eC5zICYmIHRoaXMudHgucy5sZW5ndGgpIHtcbiAgICAgIHJlc3VsdC5zID0gYnVmZmVyVG9IZXgodGhpcy50eC5zKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdG9TZXJpYWxpemVkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGFkZEhleFByZWZpeCh0aGlzLnR4LnNlcmlhbGl6ZSgpLnRvU3RyaW5nKCdoZXgnKSk7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyB0eEpzb25Ub0NlbG9UeCh0eEpzb246IExlZ2FjeVR4RGF0YSwgc2lnbmVyOiBzdHJpbmcpOiBDZWxvVHgge1xuICAgIC8vIHRoZSBjZWxvIGxpYnJhcnkgcmVxdWlyZXMgeW91IHRvIHNwZWNpZnkgdGhlIHNpZ25lciBhZGRyZXNzIHdpdGggdGhlIGZyb20gZmllbGRcbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgdHhKc29uLCB7XG4gICAgICBjaGFpbklkOiB0eEpzb24uY2hhaW5JZCA9PT0gdW5kZWZpbmVkID8gMCA6IHBhcnNlSW50KHR4SnNvbi5jaGFpbklkLCAxMCksXG4gICAgICBnYXM6IHR4SnNvbi5nYXNMaW1pdCxcbiAgICAgIGZyb206IHNpZ25lcixcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIGVuY29kZWRUeFRvSnNvbihlbmNvZGVkVHg6IEVuY29kZWRUcmFuc2FjdGlvbik6IExlZ2FjeVR4RGF0YSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLmVuY29kZWRUeC50eCxcbiAgICAgIF90eXBlOiBFVEhUcmFuc2FjdGlvblR5cGUuTEVHQUNZLFxuICAgICAgbm9uY2U6IHBhcnNlSW50KGVuY29kZWRUeC50eC5ub25jZSwgMTYpLFxuICAgICAgZ2FzTGltaXQ6IGVuY29kZWRUeC50eC5nYXMsXG4gICAgICBkYXRhOiBlbmNvZGVkVHgucmF3LFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
|
223
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLGdFQUFxQztBQUNyQyxxREFBaUQ7QUFDakQscURBVXlCO0FBRXpCLDJEQUE2RztBQUU3RyxNQUFhLGVBQWU7SUFrQjFCLDBEQUEwRDtJQUMxRDs7Ozs7T0FLRztJQUNLLGlCQUFpQixDQUFDLFdBQVc7UUFDbkMsSUFBSSxXQUFXLEtBQUssS0FBSyxJQUFJLFdBQVcsSUFBSSxFQUFFLEVBQUU7WUFDOUMsT0FBTyxJQUFJLENBQUM7U0FDYjthQUFNLElBQUksV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3ZDLE9BQU8sV0FBVyxDQUFDO1NBQ3BCO1FBQ0QsT0FBTyxLQUFLLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsWUFBWSxFQUFnQjtRQTdCcEIsaUJBQVksR0FBVyxJQUFBLDBCQUFRLEVBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEMseUJBQW9CLEdBQVcsSUFBQSwwQkFBUSxFQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlDLGdCQUFXLEdBQVcsSUFBQSwwQkFBUSxFQUFDLElBQUksQ0FBQyxDQUFDO1FBTTdDLE9BQUUsR0FBVyxJQUFBLDBCQUFRLEVBQUMsRUFBRSxDQUFDLENBQUM7UUFDMUIsTUFBQyxHQUFXLElBQUEsMEJBQVEsRUFBQyxFQUFFLENBQUMsQ0FBQztRQUN6QixNQUFDLEdBQVcsSUFBQSwwQkFBUSxFQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3pCLE1BQUMsR0FBVyxJQUFBLDBCQUFRLEVBQUMsRUFBRSxDQUFDLENBQUM7UUFtQnZCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBQSw2QkFBVyxFQUFDLElBQUEsMEJBQVEsRUFBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUM3QyxJ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QztZQUN2QyxRQUFRLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxHQUFHO1lBQzFCLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRztTQUNwQixDQUFDO0lBQ0osQ0FBQztDQUNGO0FBbkhELGtEQW1IQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCaWdOdW1iZXIgZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCB7IExvY2FsV2FsbGV0IH0gZnJvbSAnQGNlbG8vd2FsbGV0LWxvY2FsJztcbmltcG9ydCB7XG4gIGFkZEhleFByZWZpeCxcbiAgdG9CdWZmZXIsXG4gIGJ1ZmZlclRvSGV4LFxuICBidWZmZXJUb0ludCxcbiAgcmxwLFxuICBybHBoYXNoLFxuICBlY3JlY292ZXIsXG4gIHB1YmxpY1RvQWRkcmVzcyxcbiAgdW5wYWRCdWZmZXIsXG59IGZyb20gJ2V0aGVyZXVtanMtdXRpbCc7XG5pbXBvcnQgeyBDZWxvVHgsIEVuY29kZWRUcmFuc2FjdGlvbiB9IGZyb20gJ0BjZWxvL2Nvbm5lY3QnO1xuaW1wb3J0IHsgRXRoTGlrZVRyYW5zYWN0aW9uRGF0YSwgRVRIVHJhbnNhY3Rpb25UeXBlLCBLZXlQYWlyLCBMZWdhY3lUeERhdGEgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1ldGgnO1xuXG5leHBvcnQgY2xhc3MgQ2Vsb1RyYW5zYWN0aW9uIHtcbiAgcHJpdmF0ZSByYXc6IEJ1ZmZlcltdO1xuICBwcml2YXRlIF9mcm9tOiBCdWZmZXI7XG4gIHByaXZhdGUgX3NlbmRlclB1YktleT87XG4gIHByaXZhdGUgX3NpZ25hdHVyZXM6IEJ1ZmZlcltdO1xuICBwcml2YXRlIF9mZWVDdXJyZW5jeTogQnVmZmVyID0gdG9CdWZmZXIoJzB4Jyk7XG4gIHByaXZhdGUgX2dhdGV3YXlGZWVSZWNpcGllbnQ6IEJ1ZmZlciA9IHRvQnVmZmVyKCcweCcpO1xuICBwcml2YXRlIF9nYXRld2F5RmVlOiBCdWZmZXIgPSB0b0J1ZmZlcignMHgnKTtcbiAgbm9uY2U6IEJ1ZmZlcjtcbiAgZ2FzTGltaXQ6IEJ1ZmZlcjtcbiAgZ2FzUHJpY2U6IEJ1ZmZlcjtcbiAgZGF0YTogQnVmZmVyO1xuICB2YWx1ZTogQnVmZmVyO1xuICB0bzogQnVmZmVyID0gdG9CdWZmZXIoW10pO1xuICB2OiBCdWZmZXIgPSB0b0J1ZmZlcihbXSk7XG4gIHI6IEJ1ZmZlciA9IHRvQnVmZmVyKFtdKTtcbiAgczogQnVmZmVyID0gdG9CdWZmZXIoW10pO1xuXG4gIC8vIFRPRE86IHZhbGlkYXRlIGlmIHRoaXMgbmVlZHMgdG8gYmUgbW92ZWQgdG8gVXRpbHMgY2xhc3NcbiAgLyoqXG4gICAqIENsZWFuIGhleCBmb3JtYXR0ZWQgdmFsdWVzIGVuc3VyaW5nIHRoZXkgaGF2ZSBhbiBldmVuIGxlbmd0aFxuICAgKlxuICAgKiBAcGFyYW0gbnVtYmVyVmFsdWUgSGV4IGZvcm1hdHRlZCBudW1iZXIgdmFsdWUuIEV4YW1wbGUgJzB4MDEnXG4gICAqIEByZXR1cm5zIHNhbml0aXplZCB2YWx1ZVxuICAgKi9cbiAgcHJpdmF0ZSBzYW5pdGl6ZUhleFN0cmluZyhudW1iZXJWYWx1ZSkge1xuICAgIGlmIChudW1iZXJWYWx1ZSA9PT0gJzB4MCcgfHwgbnVtYmVyVmFsdWUgPT0gJycpIHtcbiAgICAgIHJldHVybiAnMHgnO1xuICAgIH0gZWxzZSBpZiAobnVtYmVyVmFsdWUubGVuZ3RoICUgMiA9PT0gMCkge1xuICAgICAgcmV0dXJuIG51bWJlclZhbHVlO1xuICAgIH1cbiAgICByZXR1cm4gJzB4MCcgKyBudW1iZXJWYWx1ZS5zbGljZSgyKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHR4OiBMZWdhY3lUeERhdGEpIHtcbiAgICB0aGlzLm5vbmNlID0gdW5wYWRCdWZmZXIodG9CdWZmZXIodHgubm9uY2UpKTtcbiAgICB0aGlzLmdhc0xpbWl0ID0gdG9CdWZmZXIodGhpcy5zYW5pdGl6ZUhleFN0cmluZyh0eC5nYXNMaW1pdCkpO1xuICAgIHRoaXMuZ2FzUHJpY2UgPSB0b0J1ZmZlcih0aGlzLnNhbml0aXplSGV4U3RyaW5nKHR4Lmdhc1ByaWNlKSk7XG4gICAgdGhpcy5kYXRhID0gdG9CdWZmZXIodGhpcy5zYW5pdGl6ZUhleFN0cmluZyh0eC5kYXRhKSk7XG4gICAgdGhpcy52YWx1ZSA9IHRvQnVmZmVyKHRoaXMuc2FuaXRpemVIZXhTdHJpbmcodHgudmFsdWUpKTtcbiAgICBpZiAodHgudG8pIHtcbiAgICAgIHRoaXMudG8gPSB0b0J1ZmZlcih0eC50byk7XG4gICAgfVxuICAgIGlmICh0eC52KSB7XG4gICAgICB0aGlzLnYgPSB0b0J1ZmZlcih0eC52KTtcbiAgICB9XG4gICAgaWYgKHR4LnIpIHtcbiAgICAgIHRoaXMuciA9IHRvQnVmZmVyKHR4LnIpO1xuICAgIH1cbiAgICBpZiAodHgucykge1xuICAgICAgdGhpcy5zID0gdG9CdWZmZXIodHgucyk7XG4gICAgfVxuICAgIGlmICh0eC5mcm9tKSB7XG4gICAgICB0aGlzLl9mcm9tID0gdG9CdWZmZXIodHguZnJvbSk7XG4gICAgfVxuICAgIHRoaXMuaW5pdFJhdygpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0UmF3KCkge1xuICAgIHRoaXMucmF3ID0gW1xuICAgICAgdGhpcy5ub25jZSxcbiAgICAgIHRoaXMuZ2FzUHJpY2UsXG4gICAgICB0aGlzLmdhc0xpbWl0LFxuICAgICAgdGhpcy5fZmVlQ3VycmVuY3ksXG4gICAgICB0aGlzLl9nYXRld2F5RmVlUmVjaXBpZW50LFxuICAgICAgdGhpcy5fZ2F0ZXdheUZlZSxcbiAgICAgIHRoaXMudG8sXG4gICAgICB0aGlzLnZhbHVlLFxuICAgICAgdGhpcy5kYXRhLFxuICAgICAgdGhpcy52LFxuICAgICAgdGhpcy5yLFxuICAgICAgdGhpcy5zLFxuICAgIF07XG4gIH1cblxuICBoYXNoKGluY2x1ZGVTaWduYXR1cmU/OiBib29sZWFuKTogQnVmZmVyIHtcbiAgICBsZXQgaXRlbXM7XG4gICAgaWYgKGluY2x1ZGVTaWduYXR1cmUpIHtcbiAgICAgIGl0ZW1zID0gdGhpcy5yYXc7XG4gICAgfSBlbHNlIHtcbiAgICAgIGl0ZW1zID0gdGhpcy5yYXdcbiAgICAgICAgLnNsaWNlKDAsIDkpXG4gICAgICAgIC5jb25jYXQoW3RvQnVmZmVyKHRoaXMuZ2V0Q2hhaW5JZCgpKSwgdW5wYWRCdWZmZXIodG9CdWZmZXIoMCkpLCB1bnBhZEJ1ZmZlcih0b0J1ZmZlcigwKSldKTtcbiAgICB9XG4gICAgcmV0dXJuIHJscGhhc2goaXRlbXMpO1xuICB9XG5cbiAgZ2V0U2VuZGVyQWRkcmVzcygpOiBCdWZmZXIge1xuICAgIGlmICh0aGlzLl9mcm9tKSB7XG4gICAgICByZXR1cm4gdGhpcy5fZnJvbTtcbiAgICB9XG4gICAgY29uc3QgcHViS2V5ID0gdGhpcy5nZXRTZW5kZXJQdWJsaWNLZXkoKTtcbiAgICB0aGlzLl9mcm9tID0gcHVibGljVG9BZGRyZXNzKHB1YktleSk7XG4gICAgcmV0dXJuIHRoaXMuX2Zyb207XG4gIH1cblxuICBnZXRTZW5kZXJQdWJsaWNLZXkoKSB7XG4gICAgaWYgKHRoaXMudmVyaWZ5U2lnbmF0dXJlKCkpIHtcbiAgICAgIC8vIElmIHRoZSBzaWduYXR1cmUgd2FzIHZlcmlmaWVkIHN1Y2Nlc3NmdWxseSB0aGUgX3NlbmRlclB1YktleSBmaWVsZCBpcyBkZWZpbmVkXG4gICAgICByZXR1cm4gdGhpcy5fc2VuZGVyUHViS2V5O1xuICAgIH1cbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgU2lnbmF0dXJlJyk7XG4gIH1cblxuICBzZXJpYWxpemUoKTogQnVmZmVyIHtcbiAgICByZXR1cm4gcmxwLmVuY29kZSh0aGlzLnJhdyk7XG4gIH1cblxuICBzaWduKHByaXZhdGVLZXk6IEJ1ZmZlcik6IHZvaWQge1xuICAgIHRoaXMuX3NpZ25hdHVyZXMgPSBbdGhpcy52LCB0aGlzLnIsIHRoaXMucywgcHJpdmF0ZUtleV07XG4gIH1cblxuICB2ZXJpZnlTaWduYXR1cmUoKTogYm9vbGVhbiB7XG4gICAgY29uc3QgbXNnSGFzaCA9IHRoaXMuaGFzaChmYWxzZSk7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGNoYWluSWQgPSB0aGlzLmdldENoYWluSWQoKTtcbiAgICAgIGNvbnN0IHYgPSBidWZmZXJUb0ludCh0aGlzLnYpIC0gKDIgKiBjaGFpbklkICsgMzUpO1xuICAgICAgdGhpcy5fc2VuZGVyUHViS2V5ID0gZWNyZWNvdmVyKG1zZ0hhc2gsIHYgKyAyNywgdGhpcy5yLCB0aGlzLnMpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuICEhdGhpcy5fc2VuZGVyUHViS2V5O1xuICB9XG5cbiAgZ2V0Q2hhaW5JZCgpOiBudW1iZXIge1xuICAgIGxldCBjaGFpbklkID0gYnVmZmVyVG9JbnQodGhpcy52KTtcbiAgICBpZiAodGhpcy5yLmxlbmd0aCAmJiB0aGlzLnMubGVuZ3RoKSB7XG4gICAgICBjaGFpbklkID0gKGNoYWluSWQgLSAzNSkgPj4gMTtcbiAgICB9XG4gICAgcmV0dXJuIGNoYWluSWQ7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIENlbG9UcmFuc2FjdGlvbkRhdGEgaW1wbGVtZW50cyBFdGhMaWtlVHJhbnNhY3Rpb25EYXRhIHtcbiAgcHJpdmF0ZSB0eDogQ2Vsb1RyYW5zYWN0aW9uO1xuICBwcml2YXRlIGRlcGxveWVkQWRkcmVzcz86IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcih0eDogQ2Vsb1RyYW5zYWN0aW9uLCBkZXBsb3llZEFkZHJlc3M/OiBzdHJpbmcpIHtcbiAgICB0aGlzLnR4ID0gdHg7XG4gICAgdGhpcy5kZXBsb3llZEFkZHJlc3MgPSBkZXBsb3llZEFkZHJlc3M7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGZyb21Kc29uKHR4OiBMZWdhY3lUeERhdGEpOiBDZWxvVHJhbnNhY3Rpb25EYXRhIHtcbiAgICBjb25zdCBjaGFpbklkID0gYWRkSGV4UHJlZml4KG5ldyBCaWdOdW1iZXIoTnVtYmVyKHR4LmNoYWluSWQpKS50b1N0cmluZygxNikpO1xuICAgIHJldHVybiBuZXcgQ2Vsb1RyYW5zYWN0aW9uRGF0YShcbiAgICAgIG5ldyBDZWxvVHJhbnNhY3Rpb24oe1xuICAgICAgICBfdHlwZTogRVRIVHJhbnNhY3Rpb25UeXBlLkxFR0FDWSxcbiAgICAgICAgbm9uY2U6IHR4Lm5vbmNlLFxuICAgICAgICB0bzogdHgudG8sXG4gICAgICAgIGdhc1ByaWNlOiBhZGRIZXhQcmVmaXgobmV3IEJpZ051bWJlcih0eC5nYXNQcmljZSkudG9TdHJpbmcoMTYpKSxcbiAgICAgICAgZ2FzTGltaXQ6IGFkZEhleFByZWZpeChuZXcgQmlnTnVtYmVyKHR4Lmdhc0xpbWl0KS50b1N0cmluZygxNikpLFxuICAgICAgICB2YWx1ZTogYWRkSGV4UHJlZml4KG5ldyBCaWdOdW1iZXIodHgudmFsdWUpLnRvU3RyaW5nKDE2KSksXG4gICAgICAgIGRhdGE6IHR4LmRhdGEgPT09ICcweCcgPyAnJyA6IHR4LmRhdGEsXG4gICAgICAgIGZyb206IHR4LmZyb20sXG4gICAgICAgIHM6IHR4LnMsXG4gICAgICAgIHI6IHR4LnIsXG4gICAgICAgIHY6IHR4LnYgfHwgY2hhaW5JZCxcbiAgICAgIH0pLFxuICAgICAgdHguZGVwbG95ZWRBZGRyZXNzXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIHNpZ24oa2V5UGFpcjogS2V5UGFpcikge1xuICAgIGNvbnN0IHByaXZhdGVLZXkgPSBhZGRIZXhQcmVmaXgoa2V5UGFpci5nZXRLZXlzKCkucHJ2IGFzIHN0cmluZyk7XG4gICAgY29uc3QgZGF0YSA9IENlbG9UcmFuc2FjdGlvbkRhdGEudHhKc29uVG9DZWxvVHgodGhpcy50b0pzb24oKSwga2V5UGFpci5nZXRBZGRyZXNzKCkpO1xuICAgIGNvbnN0IGNlbG9Mb2NhbFdhbGxldCA9IG5ldyBMb2NhbFdhbGxldCgpO1xuICAgIGNlbG9Mb2NhbFdhbGxldC5hZGRBY2NvdW50KHByaXZhdGVLZXkpO1xuICAgIGNvbnN0IHJhd1RyYW5zYWN0aW9uID0gYXdhaXQgY2Vsb0xvY2FsV2FsbGV0LnNpZ25UcmFuc2FjdGlvbihkYXRhKTtcblxuICAgIGNvbnN0IG5vbmNlQmlnTnVtYmVyID0gbmV3IEJpZ051bWJlcihyYXdUcmFuc2FjdGlvbi50eC5ub25jZSk7XG4gICAgcmF3VHJhbnNhY3Rpb24udHgubm9uY2UgPSBhZGRIZXhQcmVmaXgobm9uY2VCaWdOdW1iZXIudG9TdHJpbmcoMTYpKTtcbiAgICByYXdUcmFuc2FjdGlvbi5yYXcgPSBkYXRhLmRhdGEgPT09IHVuZGVmaW5lZCA/ICcnIDogZGF0YS5kYXRhO1xuICAgIHJhd1RyYW5zYWN0aW9uLnR4LmdhcyA9IHJhd1RyYW5zYWN0aW9uLnR4LmdhcztcbiAgICB0aGlzLnR4ID0gbmV3IENlbG9UcmFuc2FjdGlvbihDZWxvVHJhbnNhY3Rpb25EYXRhLmVuY29kZWRUeFRvSnNvbihyYXdUcmFuc2FjdGlvbikpO1xuICAgIHRoaXMudHguc2lnbih0b0J1ZmZlcihwcml2YXRlS2V5KSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdG9Kc29uKCk6IExlZ2FjeVR4RGF0YSB7XG4gICAgY29uc3QgcmVzdWx0OiBMZWdhY3lUeERhdGEgPSB7XG4gICAgICBfdHlwZTogRVRIVHJhbnNhY3Rpb25UeXBlLkxFR0FDWSxcbiAgICAgIG5vbmNlOiBidWZmZXJUb0ludCh0aGlzLnR4Lm5vbmNlKSxcbiAgICAgIGdhc1ByaWNlOiBuZXcgQmlnTnVtYmVyKGJ1ZmZlclRvSGV4KHRoaXMudHguZ2FzUHJpY2UpLCAxNikudG9TdHJpbmcoMTApLFxuICAgICAgZ2FzTGltaXQ6IG5ldyBCaWdOdW1iZXIoYnVmZmVyVG9IZXgodGhpcy50eC5nYXNMaW1pdCksIDE2KS50b1N0cmluZygxMCksXG4gICAgICB2YWx1ZTogdGhpcy50eC52YWx1ZS5sZW5ndGggPT09IDAgPyAnMCcgOiBuZXcgQmlnTnVtYmVyKGJ1ZmZlclRvSGV4KHRoaXMudHgudmFsdWUpLCAxNikudG9TdHJpbmcoMTApLFxuICAgICAgZGF0YTogYnVmZmVyVG9IZXgodGhpcy50eC5kYXRhKSxcbiAgICAgIGlkOiBhZGRIZXhQcmVmaXgoYnVmZmVyVG9IZXgodGhpcy50eC5oYXNoKHRydWUpKSksXG4gICAgfTtcblxuICAgIGlmICh0aGlzLnR4LnRvICYmIHRoaXMudHgudG8ubGVuZ3RoKSB7XG4gICAgICByZXN1bHQudG8gPSBidWZmZXJUb0hleCh0aGlzLnR4LnRvKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy50eC52ZXJpZnlTaWduYXR1cmUoKSkge1xuICAgICAgcmVzdWx0LmZyb20gPSBidWZmZXJUb0hleCh0aGlzLnR4LmdldFNlbmRlckFkZHJlc3MoKSk7XG4gICAgfVxuXG4gICAgY29uc3QgY2hhaW5JZCA9IHRoaXMudHguZ2V0Q2hhaW5JZCgpO1xuICAgIGlmIChjaGFpbklkKSB7XG4gICAgICByZXN1bHQuY2hhaW5JZCA9IGNoYWluSWQudG9TdHJpbmcoKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5kZXBsb3llZEFkZHJlc3MpIHtcbiAgICAgIHJlc3VsdC5kZXBsb3llZEFkZHJlc3MgPSB0aGlzLmRlcGxveWVkQWRkcmVzcztcbiAgICB9XG5cbiAgICB0aGlzLnNldFNpZ25hdHVyZUZpZWxkcyhyZXN1bHQpO1xuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgc2V0U2lnbmF0dXJlRmllbGRzKHJlc3VsdDogTGVnYWN5VHhEYXRhKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudHgudiAmJiB0aGlzLnR4LnYubGVuZ3RoKSB7XG4gICAgICByZXN1bHQudiA9IGJ1ZmZlclRvSGV4KHRoaXMudHgudik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudHguciAmJiB0aGlzLnR4LnIubGVuZ3RoKSB7XG4gICAgICByZXN1bHQuciA9IGJ1ZmZlclRvSGV4KHRoaXMudHgucik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudHgucyAmJiB0aGlzLnR4LnMubGVuZ3RoKSB7XG4gICAgICByZXN1bHQucyA9IGJ1ZmZlclRvSGV4KHRoaXMudHgucyk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHRvU2VyaWFsaXplZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBhZGRIZXhQcmVmaXgodGhpcy50eC5zZXJpYWxpemUoKS50b1N0cmluZygnaGV4JykpO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgdHhKc29uVG9DZWxvVHgodHhKc29uOiBMZWdhY3lUeERhdGEsIHNpZ25lcjogc3RyaW5nKTogQ2Vsb1R4IHtcbiAgICAvLyB0aGUgY2VsbyBsaWJyYXJ5IHJlcXVpcmVzIHlvdSB0byBzcGVjaWZ5IHRoZSBzaWduZXIgYWRkcmVzcyB3aXRoIHRoZSBmcm9tIGZpZWxkXG4gICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIHR4SnNvbiwge1xuICAgICAgY2hhaW5JZDogdHhKc29uLmNoYWluSWQgPT09IHVuZGVmaW5lZCA/IDAgOiBwYXJzZUludCh0eEpzb24uY2hhaW5JZCwgMTApLFxuICAgICAgZ2FzOiB0eEpzb24uZ2FzTGltaXQsXG4gICAgICBmcm9tOiBzaWduZXIsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBlbmNvZGVkVHhUb0pzb24oZW5jb2RlZFR4OiBFbmNvZGVkVHJhbnNhY3Rpb24pOiBMZWdhY3lUeERhdGEge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5lbmNvZGVkVHgudHgsXG4gICAgICBfdHlwZTogRVRIVHJhbnNhY3Rpb25UeXBlLkxFR0FDWSxcbiAgICAgIG5vbmNlOiBwYXJzZUludChlbmNvZGVkVHgudHgubm9uY2UsIDE2KSxcbiAgICAgIGdhc0xpbWl0OiBlbmNvZGVkVHgudHguZ2FzLFxuICAgICAgZGF0YTogZW5jb2RlZFR4LnJhdyxcbiAgICB9O1xuICB9XG59XG4iXX0=
|
package/dist/src/lib/utils.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -46,7 +50,7 @@ function deserialize(serializedTx) {
|
|
|
46
50
|
let chainId = v;
|
|
47
51
|
let from;
|
|
48
52
|
if (r !== '0x' && s !== '0x') {
|
|
49
|
-
const [tx, sender] = wallet_base_1.recoverTransaction(serializedTx);
|
|
53
|
+
const [tx, sender] = (0, wallet_base_1.recoverTransaction)(serializedTx);
|
|
50
54
|
from = sender;
|
|
51
55
|
chainId = tx.chainId;
|
|
52
56
|
}
|
|
@@ -96,4 +100,4 @@ exports.getCommon = getCommon;
|
|
|
96
100
|
cat CeloWalletSimple.bin
|
|
97
101
|
*/
|
|
98
102
|
exports.walletSimpleByteCode = '0x60606040526000600160006101000a81548160ff021916908315150217905550341561002a57600080fd5b60405161155b38038061155b833981016040528080518201919050506003815114151561005657600080fd5b806000908051906020019061006c929190610073565b5050610140565b8280548282559060005260206000209081019282156100ec579160200282015b828111156100eb5782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555091602001919060010190610093565b5b5090506100f991906100fd565b5090565b61013d91905b8082111561013957600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550600101610103565b5090565b90565b61140c8061014f6000396000f300606060405260043610610099576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630dcd7a6c146101335780632079fb9a146101e95780632da034091461024c57806339125215146102a45780637df73e271461037e578063a0b7967b146103cf578063a68a76cc146103f8578063abe3219c1461044d578063fc0f392d1461047a575b6000341115610131577f6e89d517057028190560dd200cf6bf792842861353d1173761dfa362e1c133f03334600036604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200180602001828103825284848281815260200192508082843782019150509550505050505060405180910390a15b005b341561013e57600080fd5b6101e7600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001909190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190505061048f565b005b34156101f457600080fd5b61020a6004808035906020019091905050610668565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561025757600080fd5b6102a2600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506106a7565b005b34156102af57600080fd5b61037c600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803590602001909190803590602001909190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091905050610773565b005b341561038957600080fd5b6103b5600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610a72565b604051808215151515815260200191505060405180910390f35b34156103da57600080fd5b6103e2610b16565b6040518082815260200191505060405180910390f35b341561040357600080fd5b61040b610b70565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561045857600080fd5b610460610b95565b604051808215151515815260200191505060405180910390f35b341561048557600080fd5b61048d610ba8565b005b60008061049b33610a72565b15156104a657600080fd5b878787878760405180807f43454c4f2d455243323000000000000000000000000000000000000000000000815250600a018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c010000000000000000000000000281526014018581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140183815260200182815260200195505050505050604051809103902091506105898883858888610c3b565b508590508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb89896000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b151561063857600080fd5b6102c65a03f1151561064957600080fd5b50505060405180519050151561065e57600080fd5b5050505050505050565b60008181548110151561067757fe5b90600052602060002090016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006106b233610a72565b15156106bd57600080fd5b8290508073ffffffffffffffffffffffffffffffffffffffff16633ef13367836040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b151561075a57600080fd5b6102c65a03f1151561076b57600080fd5b505050505050565b60008061077f33610a72565b151561078a57600080fd5b878787878760405180807f43454c4f000000000000000000000000000000000000000000000000000000008152506004018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c0100000000000000000000000002815260140185815260200184805190602001908083835b602083101515610833578051825260208201915060208101905060208303925061080e565b6001836020036101000a038019825116818451168082178552505050505050905001838152602001828152602001955050505050506040518091039020915061087f8883858888610c3b565b90508773ffffffffffffffffffffffffffffffffffffffff16878760405180828051906020019080838360005b838110156108c75780820151818401526020810190506108ac565b50505050905090810190601f1680156108f45780820380516001836020036101000a031916815260200191505b5091505060006040518083038185876187965a03f192505050151561091857600080fd5b7f59bed9ab5d78073465dd642a9e3e76dfdb7d53bcae9d09df7d0b8f5234d5a8063382848b8b8b604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200185600019166000191681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610a29578082015181840152602081019050610a0e565b50505050905090810190601f168015610a565780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a15050505050505050565b600080600090505b600080549050811015610b0b578273ffffffffffffffffffffffffffffffffffffffff16600082815481101515610aad57fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610afe5760019150610b10565b8080600101915050610a7a565b600091505b50919050565b6000806000809150600090505b600a811015610b655781600282600a81101515610b3c57fe5b01541115610b5857600281600a81101515610b5357fe5b015491505b8080600101915050610b23565b600182019250505090565b6000610b7a610e90565b604051809103906000f0801515610b9057600080fd5b905090565b600160009054906101000a900460ff1681565b610bb133610a72565b1515610bbc57600080fd5b60018060006101000a81548160ff0219169083151502179055507f0909e8f76a4fd3e970f2eaef56c0ee6dfaf8b87c5b8d3f56ffce78e825a9115733604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b600080610c488686610ce6565b9050600160009054906101000a900460ff168015610c6c5750610c6a87610a72565b155b15610c7657600080fd5b42841015610c8357600080fd5b610c8c83610db9565b610c9581610a72565b1515610ca057600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610cd957600080fd5b8091505095945050505050565b60008060008060418551141515610cfc57600080fd5b602085015192506040850151915060ff6041860151169050601b8160ff161015610d2757601b810190505b600186828585604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f11515610da557600080fd5b505060206040510351935050505092915050565b600080610dc533610a72565b1515610dd057600080fd5b60009150600090505b600a811015610e385782600282600a81101515610df257fe5b01541415610dff57600080fd5b600282600a81101515610e0e57fe5b0154600282600a81101515610e1f57fe5b01541015610e2b578091505b8080600101915050610dd9565b600282600a81101515610e4757fe5b0154831015610e5557600080fd5b612710600283600a81101515610e6757fe5b015401831115610e7657600080fd5b82600283600a81101515610e8657fe5b0181905550505050565b60405161054080610ea18339019056006060604052341561000f57600080fd5b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506104e28061005e6000396000f300606060405260043610610056576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168062821de3146101475780633ef133671461019c5780636b9f96ea146101d5575b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015156100b757600080fd5b7f69b31548dea9b3b707b4dff357d326e3e9348b24e7a6080a218a6edeeec48f9b3334600036604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200180602001828103825284848281815260200192508082843782019150509550505050505060405180910390a1005b341561015257600080fd5b61015a6101ea565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156101a757600080fd5b6101d3600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061020f565b005b34156101e057600080fd5b6101e861043c565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561026f57600080fd5b8392503091508273ffffffffffffffffffffffffffffffffffffffff166370a08231836000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b151561031857600080fd5b6102c65a03f1151561032957600080fd5b505050604051805190509050600081141561034357610436565b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b151561040f57600080fd5b6102c65a03f1151561042057600080fd5b50505060405180519050151561043557600080fd5b5b50505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f1935050505015156104b457600080fd5b5600a165627a7a7230582042193b8fa36bb211143819a525fe07f597a57ac51bda735499ecebe2eda648870029a165627a7a7230582011b3e786820bbf974fbf8802c6bfd0fb44ab2ec30ed9018b91aad7503cd214aa0029';
|
|
99
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxpREFBa0Q7QUFFbEQsbURBQXVEO0FBQ3ZELCtDQUFpQztBQUNqQyxnRUFBcUM7QUFDckMsMkRBQTRFO0FBQzVFLG1EQUFzRjtBQUN0RiwyQ0FBMkQ7QUFFM0Q7Ozs7Ozs7R0FPRztBQUNILFNBQWdCLFdBQVcsQ0FBQyxZQUFvQjtJQUM5QyxJQUFJO1FBQ0YsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3hELFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsZ0VBQWdFO1FBQ3hGLE1BQU0sQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQztRQUN4RSxJQUFJLE9BQU8sR0FBRyxDQUFDLENBQUM7UUFDaEIsSUFBSSxJQUFJLENBQUM7UUFDVCxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRTtZQUM1QixNQUFNLENBQUMsRUFBRSxFQUFFLE1BQU0sQ0FBQyxHQUFHLGdDQUFrQixDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3RELElBQUksR0FBRyxNQUFNLENBQUM7WUFDZCxPQUFPLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQztTQUN0QjtRQUNELE1BQU0sTUFBTSxHQUFpQjtZQUMzQixLQUFLLEVBQUUsaUNBQWtCLENBQUMsTUFBTTtZQUNoQyxLQUFLLEVBQUUsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUM3RCxRQUFRLEVBQUUsUUFBUSxDQUFDLFdBQVcsRUFBRSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLHNCQUFTLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRTtZQUN4RixRQUFRLEVBQUUsUUFBUSxDQUFDLFdBQVcsRUFBRSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLHNCQUFTLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRTtZQUN4RixLQUFLLEVBQUUsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLHNCQUFTLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRTtZQUMvRSxJQUFJO1lBQ0osT0FBTztZQUNQLElBQUk7WUFDSixDQUFDO1lBQ0QsQ0FBQztZQUNELENBQUM7U0FDRixDQUFDO1FBRUYsSUFBSSxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ2YsTUFBTSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUM7U0FDaEI7UUFFRCxPQUFPLE1BQU0sQ0FBQztLQUNmO0lBQUMsTUFBTTtRQUNOLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO0tBQ25FO0FBQ0gsQ0FBQztBQWxDRCxrQ0FrQ0M7QUFFRCxNQUFNLE9BQU8sR0FBcUMsSUFBSSxHQUFHLENBQThCO0lBQ3JGLENBQUMscUJBQVcsQ0FBQyxPQUFPLEVBQUUseUJBQWEsQ0FBQztJQUNwQyxDQUFDLHFCQUFXLENBQUMsT0FBTyxFQUFFLHlCQUFhLENBQUM7Q0FDckMsQ0FBQyxDQUFDO0FBRUg7O0dBRUc7QUFDSCxTQUFnQixTQUFTLENBQUMsT0FBb0I7SUFDNUMsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwQyxJQUFJLENBQUMsTUFBTSxFQUFFO1FBQ1gsTUFBTSxJQUFJLGtDQUF1QixDQUFDLHNDQUFzQyxDQUFDLENBQUM7S0FDM0U7SUFDRCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBTkQsOEJBTUM7QUFFRDs7Ozs7O0VBTUU7QUFDVyxRQUFBLG9CQUFvQixHQUMvQiwwclZBQTByVixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmV0d29ya1R5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCBFdGhlcmV1bUNvbW1vbiBmcm9tICdAZXRoZXJldW1qcy9jb21tb24nO1xuaW1wb3J0IHsgcmVjb3ZlclRyYW5zYWN0aW9uIH0gZnJvbSAnQGNlbG8vd2FsbGV0LWJhc2UnO1xuaW1wb3J0ICogYXMgZXRoZXJzIGZyb20gJ2V0aGVycyc7XG5pbXBvcnQgQmlnTnVtYmVyIGZyb20gJ2JpZ251bWJlci5qcyc7XG5pbXBvcnQgeyBFVEhUcmFuc2FjdGlvblR5cGUsIExlZ2FjeVR4RGF0YSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWV0aCc7XG5pbXBvcnQgeyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciwgUGFyc2VUcmFuc2FjdGlvbkVycm9yIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgbWFpbm5ldENvbW1vbiwgdGVzdG5ldENvbW1vbiB9IGZyb20gJy4vcmVzb3VyY2VzJztcblxuLyoqXG4gKiBDZWxvIHRyYW5zYWN0aW9uIGRlc2VyaWFsaXphdGlvbiBiYXNlZCBvbiBjb2RlXG4gKiBmcm9tIEBjZWxvL2NvbnRyYWN0a2l0L2xpYi91dGlscy9zaWduaW5nLXV0aWxzXG4gKiBnaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9jZWxvLW9yZy9jZWxvLW1vbm9yZXBvL3RyZWUvbWFzdGVyL3BhY2thZ2VzL2NvbnRyYWN0a2l0XG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IHNlcmlhbGl6ZWRUeCB0aGUgc2VyaWFsaXplZCB0cmFuc2FjdGlvblxuICogQHJldHVybnMge0xlZ2FjeVR4RGF0YX0gdGhlIGRlc2VyaWFsaXplZCB0cmFuc2FjdGlvblxuICovXG5leHBvcnQgZnVuY3Rpb24gZGVzZXJpYWxpemUoc2VyaWFsaXplZFR4OiBzdHJpbmcpOiBMZWdhY3lUeERhdGEge1xuICB0cnkge1xuICAgIGNvbnN0IGRlY29kZWRUeCA9IGV0aGVycy51dGlscy5STFAuZGVjb2RlKHNlcmlhbGl6ZWRUeCk7XG4gICAgZGVjb2RlZFR4LnNwbGljZSgzLCAzKTsgLy8gcmVtb3ZlIHVudXNlZCBmZWVDdXJyZW5jeSwgZ2F0ZXdheUZlZVJlY2lwaWVudCBhbmQgZ2F0ZXdheUZlZVxuICAgIGNvbnN0IFtub25jZSwgZ2FzUHJpY2UsIGdhc0xpbWl0LCB0bywgdmFsdWUsIGRhdGEsIHYsIHIsIHNdID0gZGVjb2RlZFR4O1xuICAgIGxldCBjaGFpbklkID0gdjtcbiAgICBsZXQgZnJvbTtcbiAgICBpZiAociAhPT0gJzB4JyAmJiBzICE9PSAnMHgnKSB7XG4gICAgICBjb25zdCBbdHgsIHNlbmRlcl0gPSByZWNvdmVyVHJhbnNhY3Rpb24oc2VyaWFsaXplZFR4KTtcbiAgICAgIGZyb20gPSBzZW5kZXI7XG4gICAgICBjaGFpbklkID0gdHguY2hhaW5JZDtcbiAgICB9XG4gICAgY29uc3QgY2Vsb1R4OiBMZWdhY3lUeERhdGEgPSB7XG4gICAgICBfdHlwZTogRVRIVHJhbnNhY3Rpb25UeXBlLkxFR0FDWSxcbiAgICAgIG5vbmNlOiBub25jZS50b0xvd2VyQ2FzZSgpID09PSAnMHgnID8gMCA6IHBhcnNlSW50KG5vbmNlLCAxNiksXG4gICAgICBnYXNQcmljZTogZ2FzUHJpY2UudG9Mb3dlckNhc2UoKSA9PT0gJzB4JyA/ICcwJyA6IG5ldyBCaWdOdW1iZXIoZ2FzUHJpY2UsIDE2KS50b1N0cmluZygpLFxuICAgICAgZ2FzTGltaXQ6IGdhc0xpbWl0LnRvTG93ZXJDYXNlKCkgPT09ICcweCcgPyAnMCcgOiBuZXcgQmlnTnVtYmVyKGdhc0xpbWl0LCAxNikudG9TdHJpbmcoKSxcbiAgICAgIHZhbHVlOiB2YWx1ZS50b0xvd2VyQ2FzZSgpID09PSAnMHgnID8gJzAnIDogbmV3IEJpZ051bWJlcih2YWx1ZSwgMTYpLnRvU3RyaW5nKCksXG4gICAgICBkYXRhLFxuICAgICAgY2hhaW5JZCxcbiAgICAgIGZyb20sXG4gICAgICB2LFxuICAgICAgcixcbiAgICAgIHMsXG4gICAgfTtcblxuICAgIGlmICh0byAhPT0gJzB4Jykge1xuICAgICAgY2Vsb1R4LnRvID0gdG87XG4gICAgfVxuXG4gICAgcmV0dXJuIGNlbG9UeDtcbiAgfSBjYXRjaCB7XG4gICAgdGhyb3cgbmV3IFBhcnNlVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBzZXJpYWxpemVkIHRyYW5zYWN0aW9uJyk7XG4gIH1cbn1cblxuY29uc3QgY29tbW9uczogTWFwPE5ldHdvcmtUeXBlLCBFdGhlcmV1bUNvbW1vbj4gPSBuZXcgTWFwPE5ldHdvcmtUeXBlLCBFdGhlcmV1bUNvbW1vbj4oW1xuICBbTmV0d29ya1R5cGUuTUFJTk5FVCwgbWFpbm5ldENvbW1vbl0sXG4gIFtOZXR3b3JrVHlwZS5URVNUTkVULCB0ZXN0bmV0Q29tbW9uXSxcbl0pO1xuXG4vKipcbiAqIEBwYXJhbSBuZXR3b3JrXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRDb21tb24obmV0d29yazogTmV0d29ya1R5cGUpOiBFdGhlcmV1bUNvbW1vbiB7XG4gIGNvbnN0IGNvbW1vbiA9IGNvbW1vbnMuZ2V0KG5ldHdvcmspO1xuICBpZiAoIWNvbW1vbikge1xuICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignTWlzc2luZyBuZXR3b3JrIGNvbW1vbiBjb25maWd1cmF0aW9uJyk7XG4gIH1cbiAgcmV0dXJuIGNvbW1vbjtcbn1cblxuLypcbiAgU3RlcHMgdG8gcmVwcm9kdWNlOlxuICBDaGVja291dCBodHRwczovL2dpdGh1Yi5jb20vYml0Z28vZXRoLW11bHRpc2lnLXYyXG4gIG5wbSBpbnN0YWxsIC1nIHNvbGNAMC40LjE4XG4gIHNvbGNqcyAtLWJpbiAuL2NvbnRyYWN0cy9jb2lucy9DZWxvV2FsbGV0U2ltcGxlLnNvbCAuL2NvbnRyYWN0cy9Gb3J3YXJkZXIuc29sIC4vY29udHJhY3RzL0VSQzIwSW50ZXJmYWNlLnNvbFxuICBjYXQgQ2Vsb1dhbGxldFNpbXBsZS5iaW5cbiovXG5leHBvcnQgY29uc3Qgd2FsbGV0U2ltcGxlQnl0ZUNvZGUgPVxuICAnMHg2MDYwNjA0MDUyNjAwMDYwMDE2MDAwNjEwMTAwMGE4MTU0ODE2MGZmMDIxOTE2OTA4MzE1MTUwMjE3OTA1NTUwMzQxNTYxMDAyYTU3NjAwMDgwZmQ1YjYwNDA1MTYxMTU1YjM4MDM4MDYxMTU1YjgzMzk4MTAxNjA0MDUyODA4MDUxODIwMTkxOTA1MDUwNjAwMzgxNTExNDE1MTU2MTAwNTY1NzYwMDA4MGZkNWI4MDYwMDA5MDgwNTE5MDYwMjAwMTkwNjEwMDZjOTI5MTkwNjEwMDczNTY1YjUwNTA2MTAxNDA1NjViODI4MDU0ODI4MjU1OTA2MDAwNTI2MDIwNjAwMDIwOTA4MTAxOTI4MjE1NjEwMGVjNTc5MTYwMjAwMjgyMDE1YjgyODExMTE1NjEwMGViNTc4MjUxODI2MDAwNjEwMTAwMGE4MTU0ODE3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYwMjE5MTY5MDgzNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTYwMjE3OTA1NTUwOTE2MDIwMDE5MTkwNjAwMTAxOTA2MTAwOTM1NjViNWI1MDkwNTA2MTAwZjk5MTkwNjEwMGZkNTY1YjUwOTA1NjViNjEwMTNkOTE5MDViODA4MjExMTU2MTAxMzk1NzYwMDA4MTgxNjEwMTAwMGE4MTU0OTA3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYwMjE5MTY5MDU1NTA2MDAxMDE2MTAxMDM1NjViNTA5MDU2NWI5MDU2NWI2MTE0MGM4MDYxMDE0ZjYwMDAzOTYwMDBmMzAwNjA2MDYwNDA1MjYwMDQzNjEwNjEwMDk5NTc2MDAwMzU3YzAxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA5MDA0NjNmZmZmZmZmZjE2ODA2MzBkY2Q3YTZjMTQ2MTAxMzM1NzgwNjMyMDc5ZmI5YTE0NjEwMWU5NTc4MDYzMmRhMDM0MDkxNDYxMDI0YzU3ODA2MzM5MTI1MjE1MTQ2MTAyYTQ1NzgwNjM3ZGY3M2UyNzE0NjEwMzdlNTc4MDYzYTBiNzk2N2IxNDYxMDNjZjU3ODA2M2E2OGE3NmNjMTQ2MTAzZjg1NzgwNjNhYmUzMjE5YzE0NjEwNDRkNTc4MDYzZmMwZjM5MmQxNDYxMDQ3YTU3NWI2MDAwMzQxMTE1NjEwMTMxNTc3ZjZlODlkNTE3MDU3MDI4MTkwNTYwZGQyMDBjZjZiZjc5Mjg0Mjg2MTM1M2QxMTczNzYxZGZhMzYyZTFjMTMzZjAzMzM0NjAwMDM2NjA0MDUxODA4NTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxODQ4MTUyNjAyMDAxODA2MDIwMDE4MjgxMDM4MjUyODQ4NDgyODE4MTUyNjAyMDAxOTI1MDgwODI4NDM3ODIwMTkxNTA1MDk1NTA1MDUwNTA1MDUwNjA0MDUxODA5MTAzOTBhMTViMDA1YjM0MTU2MTAxM2U1NzYwMDA4MGZkNWI2MTAxZTc2MDA0ODA4MDM1NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY5MDYwMjAwMTkwOTE5MDgwMzU5MDYwMjAwMTkwOTE5MDgwMzU3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjkwNjAyMDAxOTA5MTkwODAzNTkwNjAyMDAxOTA5MTkwODAzNTkwNjAyMDAxOTA5MTkwODAzNTkwNjAyMDAxOTA4MjAxODAzNTkwNjAyMDAxOTA4MDgwNjAxZjAxNjAyMDgwOTEwNDAyNjAyMDAxNjA0MDUxOTA4MTAxNjA0MDUyODA5MzkyOTE5MDgxODE1MjYwMjAwMTgzODM4MDgyODQzNzgyMDE5MTUwNTA1MDUwNTA1MDkxOTA1MDUwNjEwNDhmNTY1YjAwNWIzNDE1NjEwMWY0NTc2MDAwODBmZDViNjEwMjBhNjAwNDgwODAzNTkwNjAyMDAxOTA5MTkwNTA1MDYxMDY2ODU2NWI2MDQwNTE4MDgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWIzNDE1NjEwMjU3NTc2MDAwODBmZDViNjEwMmEyNjAwNDgwODAzNTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2OTA2MDIwMDE5MDkxOTA4MDM1NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY5MDYwMjAwMTkwOTE5MDUwNTA2MTA2YTc1NjViMDA1YjM0MTU2MTAyYWY1NzYwMDA4MGZkNWI2MTAzN2M2MDA0ODA4MDM1NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY5MDYwMjAwMTkwOTE5MDgwMzU5MDYwMjAwMTkwOTE5MDgwMzU5MDYwMjAwMTkwODIwMTgwMzU5MDYwMjAwMTkwODA4MDYwMWYwMTYwMjA4MDkxMDQwMjYwMjAwMTYwNDA1MTkwODEwMTYwNDA1MjgwOTM5MjkxOTA4MTgxNTI2MDIwMDE4MzgzODA4Mjg0Mzc4MjAxOTE1MDUwNTA1MDUwNTA5MTkwODAzNTkwNjAyMDAxOTA5MTkwODAzNTkwNjAyMDAxOTA5MTkwODAzNTkwNjAyMDAxOTA4MjAxODAzNTkwNjAyMDAxOTA4MDgwNjAxZjAxNjAyMDgwOTEwNDAyNjAyMDAxNjA0MDUxOTA4MTAxNjA0MDUyODA5MzkyOTE5MDgxODE1MjYwMjAwMTgzODM4MDgyODQzNzgyMDE5MTUwNTA1MDUwNTA1MDkxOTA1MDUwNjEwNzczNTY1YjAwNWIzNDE1NjEwMzg5NTc2MDAwODBmZDViNjEwM2I1NjAwNDgwODAzNTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2OTA2MDIwMDE5MDkxOTA1MDUwNjEwYTcyNTY1YjYwNDA1MTgwODIxNTE1MTUxNTgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWIzNDE1NjEwM2RhNTc2MDAwODBmZDViNjEwM2UyNjEwYjE2NTY1YjYwNDA1MTgwODI4MTUyNjAyMDAxOTE1MDUwNjA0MDUxODA5MTAzOTBmMzViMzQxNTYxMDQwMzU3NjAwMDgwZmQ1YjYxMDQwYjYxMGI3MDU2NWI2MDQwNTE4MDgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWIzNDE1NjEwNDU4NTc2MDAwODBmZDViNjEwNDYwNjEwYjk1NTY1YjYwNDA1MTgwODIxNTE1MTUxNTgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWIzNDE1NjEwNDg1NTc2MDAwODBmZDViNjEwNDhkNjEwYmE4NTY1YjAwNWI2MDAwODA2MTA0OWIzMzYxMGE3MjU2NWIxNTE1NjEwNGE2NTc2MDAwODBmZDViODc4Nzg3ODc4NzYwNDA1MTgwODA3ZjQzNDU0YzRmMmQ0NTUyNDMzMjMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA4MTUyNTA2MDBhMDE4NjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY2YzAxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDI4MTUyNjAxNDAxODU4MTUyNjAyMDAxODQ3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NmMwMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAyODE1MjYwMTQwMTgzODE1MjYwMjAwMTgyODE1MjYwMjAwMTk1NTA1MDUwNTA1MDUwNjA0MDUxODA5MTAzOTAyMDkxNTA2MTA1ODk4ODgzODU4ODg4NjEwYzNiNTY1YjUwODU5MDUwODA3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjYzYTkwNTljYmI4OTg5NjAwMDYwNDA1MTYwMjAwMTUyNjA0MDUxODM2M2ZmZmZmZmZmMTY3YzAxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMjgxNTI2MDA0MDE4MDgzNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE4MjgxNTI2MDIwMDE5MjUwNTA1MDYwMjA2MDQwNTE4MDgzMDM4MTYwMDA4NzgwM2IxNTE1NjEwNjM4NTc2MDAwODBmZDViNjEwMmM2NWEwM2YxMTUxNTYxMDY0OTU3NjAwMDgwZmQ1YjUwNTA1MDYwNDA1MTgwNTE5MDUwMTUxNTYxMDY1ZTU3NjAwMDgwZmQ1YjUwNTA1MDUwNTA1MDUwNTA1NjViNjAwMDgxODE1NDgxMTAxNTE1NjEwNjc3NTdmZTViOTA2MDAwNTI2MDIwNjAwMDIwOTAwMTYwMDA5MTUwNTQ5MDYxMDEwMDBhOTAwNDczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE1NjViNjAwMDYxMDZiMjMzNjEwYTcyNTY1YjE1MTU2MTA2YmQ1NzYwMDA4MGZkNWI4MjkwNTA4MDczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NjMzZWYxMzM2NzgzNjA0MDUxODI2M2ZmZmZmZmZmMTY3YzAxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMjgxNTI2MDA0MDE4MDgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE5MTUwNTA2MDAwNjA0MDUxODA4MzAzODE2MDAwODc4MDNiMTUxNTYxMDc1YTU3NjAwMDgwZmQ1YjYxMDJjNjVhMDNmMTE1MTU2MTA3NmI1NzYwMDA4MGZkNWI1MDUwNTA1MDUwNTA1NjViNjAwMDgwNjEwNzdmMzM2MTBhNzI1NjViMTUxNTYxMDc4YTU3NjAwMDgwZmQ1Yjg3ODc4Nzg3ODc2MDQwNTE4MDgwN2Y0MzQ1NGM0ZjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwODE1MjUwNjAwNDAxODY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NmMwMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAyODE1MjYwMTQwMTg1ODE1MjYwMjAwMTg0ODA1MTkwNjAyMDAxOTA4MDgzODM1YjYwMjA4MzEwMTUxNTYxMDgzMzU3ODA1MTgyNTI2MDIwODIwMTkxNTA2MDIwODEwMTkwNTA2MDIwODMwMzkyNTA2MTA4MGU1NjViNjAwMTgzNjAyMDAzNjEwMTAwMGEwMzgwMTk4MjUxMTY4MTg0NTExNjgwODIxNzg1NTI1MDUwNTA1MDUwNTA5MDUwMDE4MzgxNTI2MDIwMDE4MjgxNTI2MDIwMDE5NTUwNTA1MDUwNTA1MDYwNDA1MTgwOTEwMzkwMjA5MTUwNjEwODdmODg4Mzg1ODg4ODYxMGMzYjU2NWI5MDUwODc3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjg3ODc2MDQwNTE4MDgyODA1MTkwNjAyMDAxOTA4MDgzODM2MDAwNWI4MzgxMTAxNTYxMDhjNzU3ODA4MjAxNTE4MTg0MDE1MjYwMjA4MTAxOTA1MDYxMDhhYzU2NWI1MDUwNTA1MDkwNTA5MDgxMDE5MDYwMWYxNjgwMTU2MTA4ZjQ1NzgwODIwMzgwNTE2MDAxODM2MDIwMDM2MTAxMDAwYTAzMTkxNjgxNTI2MDIwMDE5MTUwNWI1MDkxNTA1MDYwMDA2MDQwNTE4MDgzMDM4MTg1ODc2MTg3OTY1YTAzZjE5MjUwNTA1MDE1MTU2MTA5MTg1NzYwMDA4MGZkNWI3ZjU5YmVkOWFiNWQ3ODA3MzQ2NWRkNjQyYTllM2U3NmRmZGI3ZDUzYmNhZTlkMDlkZjdkMGI4ZjUyMzRkNWE4MDYzMzgyODQ4YjhiOGI2MDQwNTE4MDg3NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE4NjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxODU2MDAwMTkxNjYwMDAxOTE2ODE1MjYwMjAwMTg0NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE4MzgxNTI2MDIwMDE4MDYwMjAwMTgyODEwMzgyNTI4MzgxODE1MTgxNTI2MDIwMDE5MTUwODA1MTkwNjAyMDAxOTA4MDgzODM2MDAwNWI4MzgxMTAxNTYxMGEyOTU3ODA4MjAxNTE4MTg0MDE1MjYwMjA4MTAxOTA1MDYxMGEwZTU2NWI1MDUwNTA1MDkwNTA5MDgxMDE5MDYwMWYxNjgwMTU2MTBhNTY1NzgwODIwMzgwNTE2MDAxODM2MDIwMDM2MTAxMDAwYTAzMTkxNjgxNTI2MDIwMDE5MTUwNWI1MDk3NTA1MDUwNTA1MDUwNTA1MDYwNDA1MTgwOTEwMzkwYTE1MDUwNTA1MDUwNTA1MDUwNTY1YjYwMDA4MDYwMDA5MDUwNWI2MDAwODA1NDkwNTA4MTEwMTU2MTBiMGI1NzgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY2MDAwODI4MTU0ODExMDE1MTU2MTBhYWQ1N2ZlNWI5MDYwMDA1MjYwMjA2MDAwMjA5MDAxNjAwMDkwNTQ5MDYxMDEwMDBhOTAwNDczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTYxNDE1NjEwYWZlNTc2MDAxOTE1MDYxMGIxMDU2NWI4MDgwNjAwMTAxOTE1MDUwNjEwYTdhNTY1YjYwMDA5MTUwNWI1MDkxOTA1MDU2NWI2MDAwODA2MDAwODA5MTUwNjAwMDkwNTA1YjYwMGE4MTEwMTU2MTBiNjU1NzgxNjAwMjgyNjAwYTgxMTAxNTE1NjEwYjNjNTdmZTViMDE1NDExMTU2MTBiNTg1NzYwMDI4MTYwMGE4MTEwMTUxNTYxMGI1MzU3ZmU1YjAxNTQ5MTUwNWI4MDgwNjAwMTAxOTE1MDUwNjEwYjIzNTY1YjYwMDE4MjAxOTI1MDUwNTA5MDU2NWI2MDAwNjEwYjdhNjEwZTkwNTY1YjYwNDA1MTgwOTEwMzkwNjAwMGYwODAxNTE1NjEwYjkwNTc2MDAwODBmZDViOTA1MDkwNTY1YjYwMDE2MDAwOTA1NDkwNjEwMTAwMGE5MDA0NjBmZjE2ODE1NjViNjEwYmIxMzM2MTBhNzI1NjViMTUxNTYxMGJiYzU3NjAwMDgwZmQ1YjYwMDE4MDYwMDA2MTAxMDAwYTgxNTQ4MTYwZmYwMjE5MTY5MDgzMTUxNTAyMTc5MDU1NTA3ZjA5MDllOGY3NmE0ZmQzZTk3MGYyZWFlZjU2YzBlZTZkZmFmOGI4N2M1YjhkM2Y1NmZmY2U3OGU4MjVhOTExNTczMzYwNDA1MTgwODI3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE1MjYwMjAwMTkxNTA1MDYwNDA1MTgwOTEwMzkwYTE1NjViNjAwMDgwNjEwYzQ4ODY4NjYxMGNlNjU2NWI5MDUwNjAwMTYwMDA5MDU0OTA2MTAxMDAwYTkwMDQ2MGZmMTY4MDE1NjEwYzZjNTc1MDYxMGM2YTg3NjEwYTcyNTY1YjE1NWIxNTYxMGM3NjU3NjAwMDgwZmQ1YjQyODQxMDE1NjEwYzgzNTc2MDAwODBmZDViNjEwYzhjODM2MTBkYjk1NjViNjEwYzk1ODE2MTBhNzI1NjViMTUxNTYxMGNhMDU3NjAwMDgwZmQ1YjMzNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2MTQxNTYxMGNkOTU3NjAwMDgwZmQ1YjgwOTE1MDUwOTU5NDUwNTA1MDUwNTA1NjViNjAwMDgwNjAwMDgwNjA0MTg1NTExNDE1MTU2MTBjZmM1NzYwMDA4MGZkNWI2MDIwODUwMTUxOTI1MDYwNDA4NTAxNTE5MTUwNjBmZjYwNDE4NjAxNTExNjkwNTA2MDFiODE2MGZmMTYxMDE1NjEwZDI3NTc2MDFiODEwMTkwNTA1YjYwMDE4NjgyODU4NTYwNDA1MTYwMDA4MTUyNjAyMDAxNjA0MDUyNjAwMDYwNDA1MTYwMjAwMTUyNjA0MDUxODA4NTYwMDAxOTE2NjAwMDE5MTY4MTUyNjAyMDAxODQ2MGZmMTY2MGZmMTY4MTUyNjAyMDAxODM2MDAwMTkxNjYwMDAxOTE2ODE1MjYwMjAwMTgyNjAwMDE5MTY2MDAwMTkxNjgxNTI2MDIwMDE5NDUwNTA1MDUwNTA2MDIwNjA0MDUxNjAyMDgxMDM5MDgwODQwMzkwNjAwMDg2NjE2NDZlNWEwM2YxMTUxNTYxMGRhNTU3NjAwMDgwZmQ1YjUwNTA2MDIwNjA0MDUxMDM1MTkzNTA1MDUwNTA5MjkxNTA1MDU2NWI2MDAwODA2MTBkYzUzMzYxMGE3MjU2NWIxNTE1NjEwZGQwNTc2MDAwODBmZDViNjAwMDkxNTA2MDAwOTA1MDViNjAwYTgxMTAxNTYxMGUzODU3ODI2MDAyODI2MDBhODExMDE1MTU2MTBkZjI1N2ZlNWIwMTU0MTQxNTYxMGRmZjU3NjAwMDgwZmQ1YjYwMDI4MjYwMGE4MTEwMTUxNTYxMGUwZTU3ZmU1YjAxNTQ2MDAyODI2MDBhODExMDE1MTU2MTBlMWY1N2ZlNWIwMTU0MTAxNTYxMGUyYjU3ODA5MTUwNWI4MDgwNjAwMTAxOTE1MDUwNjEwZGQ5NTY1YjYwMDI4MjYwMGE4MTEwMTUxNTYxMGU0NzU3ZmU1YjAxNTQ4MzEwMTU2MTBlNTU1NzYwMDA4MGZkNWI2MTI3MTA2MDAyODM2MDBhODExMDE1MTU2MTBlNjc1N2ZlNWIwMTU0MDE4MzExMTU2MTBlNzY1NzYwMDA4MGZkNWI4MjYwMDI4MzYwMGE4MTEwMTUxNTYxMGU4NjU3ZmU1YjAxODE5MDU1NTA1MDUwNTA1NjViNjA0MDUxNjEwNTQwODA2MTBlYTE4MzM5MDE5MDU2MDA2MDYwNjA0MDUyMzQxNTYxMDAwZjU3NjAwMDgwZmQ1YjMzNjAwMDgwNjEwMTAwMGE4MTU0ODE3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYwMjE5MTY5MDgzNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTYwMjE3OTA1NTUwNjEwNGUyODA2MTAwNWU2MDAwMzk2MDAwZjMwMDYwNjA2MDQwNTI2MDA0MzYxMDYxMDA1NjU3NjAwMDM1N2MwMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwOTAwNDYzZmZmZmZmZmYxNjgwNjI4MjFkZTMxNDYxMDE0NzU3ODA2MzNlZjEzMzY3MTQ2MTAxOWM1NzgwNjM2YjlmOTZlYTE0NjEwMWQ1NTc1YjYwMDA4MDkwNTQ5MDYxMDEwMDBhOTAwNDczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY2MTA4ZmMzNDkwODExNTAyOTA2MDQwNTE2MDAwNjA0MDUxODA4MzAzODE4NTg4ODhmMTkzNTA1MDUwNTAxNTE1NjEwMGI3NTc2MDAwODBmZDViN2Y2OWIzMTU0OGRlYTliM2I3MDdiNGRmZjM1N2QzMjZlM2U5MzQ4YjI0ZTdhNjA4MGEyMThhNmVkZWVlYzQ4ZjliMzMzNDYwMDAzNjYwNDA1MTgwODU3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE1MjYwMjAwMTg0ODE1MjYwMjAwMTgwNjAyMDAxODI4MTAzODI1Mjg0ODQ4MjgxODE1MjYwMjAwMTkyNTA4MDgyODQzNzgyMDE5MTUwNTA5NTUwNTA1MDUwNTA1MDYwNDA1MTgwOTEwMzkwYTEwMDViMzQxNTYxMDE1MjU3NjAwMDgwZmQ1YjYxMDE1YTYxMDFlYTU2NWI2MDQwNTE4MDgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWIzNDE1NjEwMWE3NTc2MDAwODBmZDViNjEwMWQzNjAwNDgwODAzNTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2OTA2MDIwMDE5MDkxOTA1MDUwNjEwMjBmNTY1YjAwNWIzNDE1NjEwMWUwNTc2MDAwODBmZDViNjEwMWU4NjEwNDNjNTY1YjAwNWI2MDAwODA5MDU0OTA2MTAxMDAwYTkwMDQ3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTY1YjYwMDA4MDYwMDA4MDYwMDA5MDU0OTA2MTAxMDAwYTkwMDQ3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2MzM3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjE0MTUxNTYxMDI2ZjU3NjAwMDgwZmQ1YjgzOTI1MDMwOTE1MDgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY2MzcwYTA4MjMxODM2MDAwNjA0MDUxNjAyMDAxNTI2MDQwNTE4MjYzZmZmZmZmZmYxNjdjMDEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAyODE1MjYwMDQwMTgwODI3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE1MjYwMjAwMTkxNTA1MDYwMjA2MDQwNTE4MDgzMDM4MTYwMDA4NzgwM2IxNTE1NjEwMzE4NTc2MDAwODBmZDViNjEwMmM2NWEwM2YxMTUxNTYxMDMyOTU3NjAwMDgwZmQ1YjUwNTA1MDYwNDA1MTgwNTE5MDUwOTA1MDYwMDA4MTE0MTU2MTAzNDM1NzYxMDQzNjU2NWI4MjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NjNhOTA1OWNiYjYwMDA4MDkwNTQ5MDYxMDEwMDBhOTAwNDczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODM2MDAwNjA0MDUxNjAyMDAxNTI2MDQwNTE4MzYzZmZmZmZmZmYxNjdjMDEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAyODE1MjYwMDQwMTgwODM3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE1MjYwMjAwMTgyODE1MjYwMjAwMTkyNTA1MDUwNjAyMDYwNDA1MTgwODMwMzgxNjAwMDg3ODAzYjE1MTU2MTA0MGY1NzYwMDA4MGZkNWI2MTAyYzY1YTAzZjExNTE1NjEwNDIwNTc2MDAwODBmZDViNTA1MDUwNjA0MDUxODA1MTkwNTAxNTE1NjEwNDM1NTc2MDAwODBmZDViNWI1MDUwNTA1MDU2NWI2MDAwODA5MDU0OTA2MTAxMDAwYTkwMDQ3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NjEwOGZjMzA3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjMxOTA4MTE1MDI5MDYwNDA1MTYwMDA2MDQwNTE4MDgzMDM4MTg1ODg4OGYxOTM1MDUwNTA1MDE1MTU2MTA0YjQ1NzYwMDA4MGZkNWI1NjAwYTE2NTYyN2E3YTcyMzA1ODIwNDIxOTNiOGZhMzZiYjIxMTE0MzgxOWE1MjVmZTA3ZjU5N2E1N2FjNTFiZGE3MzU0OTllY2ViZTJlZGE2NDg4NzAwMjlhMTY1NjI3YTdhNzIzMDU4MjAxMWIzZTc4NjgyMGJiZjk3NGZiZjg4MDJjNmJmZDBmYjQ0YWIyZWMzMGVkOTAxOGI5MWFhZDc1MDNjZDIxNGFhMDAyOSc7XG4iXX0=
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsaURBQWtEO0FBRWxELG1EQUF1RDtBQUN2RCwrQ0FBaUM7QUFDakMsZ0VBQXFDO0FBQ3JDLDJEQUE0RTtBQUM1RSxtREFBc0Y7QUFDdEYsMkNBQTJEO0FBRTNEOzs7Ozs7O0dBT0c7QUFDSCxTQUFnQixXQUFXLENBQUMsWUFBb0I7SUFDOUMsSUFBSTtRQUNGLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN4RCxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLGdFQUFnRTtRQUN4RixNQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUM7UUFDeEUsSUFBSSxPQUFPLEdBQUcsQ0FBQyxDQUFDO1FBQ2hCLElBQUksSUFBSSxDQUFDO1FBQ1QsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLEVBQUU7WUFDNUIsTUFBTSxDQUFDLEVBQUUsRUFBRSxNQUFNLENBQUMsR0FBRyxJQUFBLGdDQUFrQixFQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3RELElBQUksR0FBRyxNQUFNLENBQUM7WUFDZCxPQUFPLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQztTQUN0QjtRQUNELE1BQU0sTUFBTSxHQUFpQjtZQUMzQixLQUFLLEVBQUUsaUNBQWtCLENBQUMsTUFBTTtZQUNoQyxLQUFLLEVBQUUsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUM3RCxRQUFRLEVBQUUsUUFBUSxDQUFDLFdBQVcsRUFBRSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLHNCQUFTLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRTtZQUN4RixRQUFRLEVBQUUsUUFBUSxDQUFDLFdBQVcsRUFBRSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLHNCQUFTLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRTtZQUN4RixLQUFLLEVBQUUsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLHNCQUFTLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRTtZQUMvRSxJQUFJO1lBQ0osT0FBTztZQUNQLElBQUk7WUFDSixDQUFDO1lBQ0QsQ0FBQztZQUNELENBQUM7U0FDRixDQUFDO1FBRUYsSUFBSSxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ2YsTUFBTSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUM7U0FDaEI7UUFFRCxPQUFPLE1BQU0sQ0FBQztLQUNmO0lBQUMsTUFBTTtRQUNOLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO0tBQ25FO0FBQ0gsQ0FBQztBQWxDRCxrQ0FrQ0M7QUFFRCxNQUFNLE9BQU8sR0FBcUMsSUFBSSxHQUFHLENBQThCO0lBQ3JGLENBQUMscUJBQVcsQ0FBQyxPQUFPLEVBQUUseUJBQWEsQ0FBQztJQUNwQyxDQUFDLHFCQUFXLENBQUMsT0FBTyxFQUFFLHlCQUFhLENBQUM7Q0FDckMsQ0FBQyxDQUFDO0FBRUg7O0dBRUc7QUFDSCxTQUFnQixTQUFTLENBQUMsT0FBb0I7SUFDNUMsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwQyxJQUFJLENBQUMsTUFBTSxFQUFFO1FBQ1gsTUFBTSxJQUFJLGtDQUF1QixDQUFDLHNDQUFzQyxDQUFDLENBQUM7S0FDM0U7SUFDRCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBTkQsOEJBTUM7QUFFRDs7Ozs7O0VBTUU7QUFDVyxRQUFBLG9CQUFvQixHQUMvQiwwclZBQTByVixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmV0d29ya1R5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCBFdGhlcmV1bUNvbW1vbiBmcm9tICdAZXRoZXJldW1qcy9jb21tb24nO1xuaW1wb3J0IHsgcmVjb3ZlclRyYW5zYWN0aW9uIH0gZnJvbSAnQGNlbG8vd2FsbGV0LWJhc2UnO1xuaW1wb3J0ICogYXMgZXRoZXJzIGZyb20gJ2V0aGVycyc7XG5pbXBvcnQgQmlnTnVtYmVyIGZyb20gJ2JpZ251bWJlci5qcyc7XG5pbXBvcnQgeyBFVEhUcmFuc2FjdGlvblR5cGUsIExlZ2FjeVR4RGF0YSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWV0aCc7XG5pbXBvcnQgeyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciwgUGFyc2VUcmFuc2FjdGlvbkVycm9yIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgbWFpbm5ldENvbW1vbiwgdGVzdG5ldENvbW1vbiB9IGZyb20gJy4vcmVzb3VyY2VzJztcblxuLyoqXG4gKiBDZWxvIHRyYW5zYWN0aW9uIGRlc2VyaWFsaXphdGlvbiBiYXNlZCBvbiBjb2RlXG4gKiBmcm9tIEBjZWxvL2NvbnRyYWN0a2l0L2xpYi91dGlscy9zaWduaW5nLXV0aWxzXG4gKiBnaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9jZWxvLW9yZy9jZWxvLW1vbm9yZXBvL3RyZWUvbWFzdGVyL3BhY2thZ2VzL2NvbnRyYWN0a2l0XG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IHNlcmlhbGl6ZWRUeCB0aGUgc2VyaWFsaXplZCB0cmFuc2FjdGlvblxuICogQHJldHVybnMge0xlZ2FjeVR4RGF0YX0gdGhlIGRlc2VyaWFsaXplZCB0cmFuc2FjdGlvblxuICovXG5leHBvcnQgZnVuY3Rpb24gZGVzZXJpYWxpemUoc2VyaWFsaXplZFR4OiBzdHJpbmcpOiBMZWdhY3lUeERhdGEge1xuICB0cnkge1xuICAgIGNvbnN0IGRlY29kZWRUeCA9IGV0aGVycy51dGlscy5STFAuZGVjb2RlKHNlcmlhbGl6ZWRUeCk7XG4gICAgZGVjb2RlZFR4LnNwbGljZSgzLCAzKTsgLy8gcmVtb3ZlIHVudXNlZCBmZWVDdXJyZW5jeSwgZ2F0ZXdheUZlZVJlY2lwaWVudCBhbmQgZ2F0ZXdheUZlZVxuICAgIGNvbnN0IFtub25jZSwgZ2FzUHJpY2UsIGdhc0xpbWl0LCB0bywgdmFsdWUsIGRhdGEsIHYsIHIsIHNdID0gZGVjb2RlZFR4O1xuICAgIGxldCBjaGFpbklkID0gdjtcbiAgICBsZXQgZnJvbTtcbiAgICBpZiAociAhPT0gJzB4JyAmJiBzICE9PSAnMHgnKSB7XG4gICAgICBjb25zdCBbdHgsIHNlbmRlcl0gPSByZWNvdmVyVHJhbnNhY3Rpb24oc2VyaWFsaXplZFR4KTtcbiAgICAgIGZyb20gPSBzZW5kZXI7XG4gICAgICBjaGFpbklkID0gdHguY2hhaW5JZDtcbiAgICB9XG4gICAgY29uc3QgY2Vsb1R4OiBMZWdhY3lUeERhdGEgPSB7XG4gICAgICBfdHlwZTogRVRIVHJhbnNhY3Rpb25UeXBlLkxFR0FDWSxcbiAgICAgIG5vbmNlOiBub25jZS50b0xvd2VyQ2FzZSgpID09PSAnMHgnID8gMCA6IHBhcnNlSW50KG5vbmNlLCAxNiksXG4gICAgICBnYXNQcmljZTogZ2FzUHJpY2UudG9Mb3dlckNhc2UoKSA9PT0gJzB4JyA/ICcwJyA6IG5ldyBCaWdOdW1iZXIoZ2FzUHJpY2UsIDE2KS50b1N0cmluZygpLFxuICAgICAgZ2FzTGltaXQ6IGdhc0xpbWl0LnRvTG93ZXJDYXNlKCkgPT09ICcweCcgPyAnMCcgOiBuZXcgQmlnTnVtYmVyKGdhc0xpbWl0LCAxNikudG9TdHJpbmcoKSxcbiAgICAgIHZhbHVlOiB2YWx1ZS50b0xvd2VyQ2FzZSgpID09PSAnMHgnID8gJzAnIDogbmV3IEJpZ051bWJlcih2YWx1ZSwgMTYpLnRvU3RyaW5nKCksXG4gICAgICBkYXRhLFxuICAgICAgY2hhaW5JZCxcbiAgICAgIGZyb20sXG4gICAgICB2LFxuICAgICAgcixcbiAgICAgIHMsXG4gICAgfTtcblxuICAgIGlmICh0byAhPT0gJzB4Jykge1xuICAgICAgY2Vsb1R4LnRvID0gdG87XG4gICAgfVxuXG4gICAgcmV0dXJuIGNlbG9UeDtcbiAgfSBjYXRjaCB7XG4gICAgdGhyb3cgbmV3IFBhcnNlVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBzZXJpYWxpemVkIHRyYW5zYWN0aW9uJyk7XG4gIH1cbn1cblxuY29uc3QgY29tbW9uczogTWFwPE5ldHdvcmtUeXBlLCBFdGhlcmV1bUNvbW1vbj4gPSBuZXcgTWFwPE5ldHdvcmtUeXBlLCBFdGhlcmV1bUNvbW1vbj4oW1xuICBbTmV0d29ya1R5cGUuTUFJTk5FVCwgbWFpbm5ldENvbW1vbl0sXG4gIFtOZXR3b3JrVHlwZS5URVNUTkVULCB0ZXN0bmV0Q29tbW9uXSxcbl0pO1xuXG4vKipcbiAqIEBwYXJhbSBuZXR3b3JrXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRDb21tb24obmV0d29yazogTmV0d29ya1R5cGUpOiBFdGhlcmV1bUNvbW1vbiB7XG4gIGNvbnN0IGNvbW1vbiA9IGNvbW1vbnMuZ2V0KG5ldHdvcmspO1xuICBpZiAoIWNvbW1vbikge1xuICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignTWlzc2luZyBuZXR3b3JrIGNvbW1vbiBjb25maWd1cmF0aW9uJyk7XG4gIH1cbiAgcmV0dXJuIGNvbW1vbjtcbn1cblxuLypcbiAgU3RlcHMgdG8gcmVwcm9kdWNlOlxuICBDaGVja291dCBodHRwczovL2dpdGh1Yi5jb20vYml0Z28vZXRoLW11bHRpc2lnLXYyXG4gIG5wbSBpbnN0YWxsIC1nIHNvbGNAMC40LjE4XG4gIHNvbGNqcyAtLWJpbiAuL2NvbnRyYWN0cy9jb2lucy9DZWxvV2FsbGV0U2ltcGxlLnNvbCAuL2NvbnRyYWN0cy9Gb3J3YXJkZXIuc29sIC4vY29udHJhY3RzL0VSQzIwSW50ZXJmYWNlLnNvbFxuICBjYXQgQ2Vsb1dhbGxldFNpbXBsZS5iaW5cbiovXG5leHBvcnQgY29uc3Qgd2FsbGV0U2ltcGxlQnl0ZUNvZGUgPVxuICAnMHg2MDYwNjA0MDUyNjAwMDYwMDE2MDAwNjEwMTAwMGE4MTU0ODE2MGZmMDIxOTE2OTA4MzE1MTUwMjE3OTA1NTUwMzQxNTYxMDAyYTU3NjAwMDgwZmQ1YjYwNDA1MTYxMTU1YjM4MDM4MDYxMTU1YjgzMzk4MTAxNjA0MDUyODA4MDUxODIwMTkxOTA1MDUwNjAwMzgxNTExNDE1MTU2MTAwNTY1NzYwMDA4MGZkNWI4MDYwMDA5MDgwNTE5MDYwMjAwMTkwNjEwMDZjOTI5MTkwNjEwMDczNTY1YjUwNTA2MTAxNDA1NjViODI4MDU0ODI4MjU1OTA2MDAwNTI2MDIwNjAwMDIwOTA4MTAxOTI4MjE1NjEwMGVjNTc5MTYwMjAwMjgyMDE1YjgyODExMTE1NjEwMGViNTc4MjUxODI2MDAwNjEwMTAwMGE4MTU0ODE3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYwMjE5MTY5MDgzNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTYwMjE3OTA1NTUwOTE2MDIwMDE5MTkwNjAwMTAxOTA2MTAwOTM1NjViNWI1MDkwNTA2MTAwZjk5MTkwNjEwMGZkNTY1YjUwOTA1NjViNjEwMTNkOTE5MDViODA4MjExMTU2MTAxMzk1NzYwMDA4MTgxNjEwMTAwMGE4MTU0OTA3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYwMjE5MTY5MDU1NTA2MDAxMDE2MTAxMDM1NjViNTA5MDU2NWI5MDU2NWI2MTE0MGM4MDYxMDE0ZjYwMDAzOTYwMDBmMzAwNjA2MDYwNDA1MjYwMDQzNjEwNjEwMDk5NTc2MDAwMzU3YzAxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA5MDA0NjNmZmZmZmZmZjE2ODA2MzBkY2Q3YTZjMTQ2MTAxMzM1NzgwNjMyMDc5ZmI5YTE0NjEwMWU5NTc4MDYzMmRhMDM0MDkxNDYxMDI0YzU3ODA2MzM5MTI1MjE1MTQ2MTAyYTQ1NzgwNjM3ZGY3M2UyNzE0NjEwMzdlNTc4MDYzYTBiNzk2N2IxNDYxMDNjZjU3ODA2M2E2OGE3NmNjMTQ2MTAzZjg1NzgwNjNhYmUzMjE5YzE0NjEwNDRkNTc4MDYzZmMwZjM5MmQxNDYxMDQ3YTU3NWI2MDAwMzQxMTE1NjEwMTMxNTc3ZjZlODlkNTE3MDU3MDI4MTkwNTYwZGQyMDBjZjZiZjc5Mjg0Mjg2MTM1M2QxMTczNzYxZGZhMzYyZTFjMTMzZjAzMzM0NjAwMDM2NjA0MDUxODA4NTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxODQ4MTUyNjAyMDAxODA2MDIwMDE4MjgxMDM4MjUyODQ4NDgyODE4MTUyNjAyMDAxOTI1MDgwODI4NDM3ODIwMTkxNTA1MDk1NTA1MDUwNTA1MDUwNjA0MDUxODA5MTAzOTBhMTViMDA1YjM0MTU2MTAxM2U1NzYwMDA4MGZkNWI2MTAxZTc2MDA0ODA4MDM1NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY5MDYwMjAwMTkwOTE5MDgwMzU5MDYwMjAwMTkwOTE5MDgwMzU3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjkwNjAyMDAxOTA5MTkwODAzNTkwNjAyMDAxOTA5MTkwODAzNTkwNjAyMDAxOTA5MTkwODAzNTkwNjAyMDAxOTA4MjAxODAzNTkwNjAyMDAxOTA4MDgwNjAxZjAxNjAyMDgwOTEwNDAyNjAyMDAxNjA0MDUxOTA4MTAxNjA0MDUyODA5MzkyOTE5MDgxODE1MjYwMjAwMTgzODM4MDgyODQzNzgyMDE5MTUwNTA1MDUwNTA1MDkxOTA1MDUwNjEwNDhmNTY1YjAwNWIzNDE1NjEwMWY0NTc2MDAwODBmZDViNjEwMjBhNjAwNDgwODAzNTkwNjAyMDAxOTA5MTkwNTA1MDYxMDY2ODU2NWI2MDQwNTE4MDgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWIzNDE1NjEwMjU3NTc2MDAwODBmZDViNjEwMmEyNjAwNDgwODAzNTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2OTA2MDIwMDE5MDkxOTA4MDM1NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY5MDYwMjAwMTkwOTE5MDUwNTA2MTA2YTc1NjViMDA1YjM0MTU2MTAyYWY1NzYwMDA4MGZkNWI2MTAzN2M2MDA0ODA4MDM1NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY5MDYwMjAwMTkwOTE5MDgwMzU5MDYwMjAwMTkwOTE5MDgwMzU5MDYwMjAwMTkwODIwMTgwMzU5MDYwMjAwMTkwODA4MDYwMWYwMTYwMjA4MDkxMDQwMjYwMjAwMTYwNDA1MTkwODEwMTYwNDA1MjgwOTM5MjkxOTA4MTgxNTI2MDIwMDE4MzgzODA4Mjg0Mzc4MjAxOTE1MDUwNTA1MDUwNTA5MTkwODAzNTkwNjAyMDAxOTA5MTkwODAzNTkwNjAyMDAxOTA5MTkwODAzNTkwNjAyMDAxOTA4MjAxODAzNTkwNjAyMDAxOTA4MDgwNjAxZjAxNjAyMDgwOTEwNDAyNjAyMDAxNjA0MDUxOTA4MTAxNjA0MDUyODA5MzkyOTE5MDgxODE1MjYwMjAwMTgzODM4MDgyODQzNzgyMDE5MTUwNTA1MDUwNTA1MDkxOTA1MDUwNjEwNzczNTY1YjAwNWIzNDE1NjEwMzg5NTc2MDAwODBmZDViNjEwM2I1NjAwNDgwODAzNTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2OTA2MDIwMDE5MDkxOTA1MDUwNjEwYTcyNTY1YjYwNDA1MTgwODIxNTE1MTUxNTgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWIzNDE1NjEwM2RhNTc2MDAwODBmZDViNjEwM2UyNjEwYjE2NTY1YjYwNDA1MTgwODI4MTUyNjAyMDAxOTE1MDUwNjA0MDUxODA5MTAzOTBmMzViMzQxNTYxMDQwMzU3NjAwMDgwZmQ1YjYxMDQwYjYxMGI3MDU2NWI2MDQwNTE4MDgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWIzNDE1NjEwNDU4NTc2MDAwODBmZDViNjEwNDYwNjEwYjk1NTY1YjYwNDA1MTgwODIxNTE1MTUxNTgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWIzNDE1NjEwNDg1NTc2MDAwODBmZDViNjEwNDhkNjEwYmE4NTY1YjAwNWI2MDAwODA2MTA0OWIzMzYxMGE3MjU2NWIxNTE1NjEwNGE2NTc2MDAwODBmZDViODc4Nzg3ODc4NzYwNDA1MTgwODA3ZjQzNDU0YzRmMmQ0NTUyNDMzMjMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA4MTUyNTA2MDBhMDE4NjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY2YzAxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDI4MTUyNjAxNDAxODU4MTUyNjAyMDAxODQ3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NmMwMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAyODE1MjYwMTQwMTgzODE1MjYwMjAwMTgyODE1MjYwMjAwMTk1NTA1MDUwNTA1MDUwNjA0MDUxODA5MTAzOTAyMDkxNTA2MTA1ODk4ODgzODU4ODg4NjEwYzNiNTY1YjUwODU5MDUwODA3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjYzYTkwNTljYmI4OTg5NjAwMDYwNDA1MTYwMjAwMTUyNjA0MDUxODM2M2ZmZmZmZmZmMTY3YzAxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMjgxNTI2MDA0MDE4MDgzNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE4MjgxNTI2MDIwMDE5MjUwNTA1MDYwMjA2MDQwNTE4MDgzMDM4MTYwMDA4NzgwM2IxNTE1NjEwNjM4NTc2MDAwODBmZDViNjEwMmM2NWEwM2YxMTUxNTYxMDY0OTU3NjAwMDgwZmQ1YjUwNTA1MDYwNDA1MTgwNTE5MDUwMTUxNTYxMDY1ZTU3NjAwMDgwZmQ1YjUwNTA1MDUwNTA1MDUwNTA1NjViNjAwMDgxODE1NDgxMTAxNTE1NjEwNjc3NTdmZTViOTA2MDAwNTI2MDIwNjAwMDIwOTAwMTYwMDA5MTUwNTQ5MDYxMDEwMDBhOTAwNDczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE1NjViNjAwMDYxMDZiMjMzNjEwYTcyNTY1YjE1MTU2MTA2YmQ1NzYwMDA4MGZkNWI4MjkwNTA4MDczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NjMzZWYxMzM2NzgzNjA0MDUxODI2M2ZmZmZmZmZmMTY3YzAxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMjgxNTI2MDA0MDE4MDgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE5MTUwNTA2MDAwNjA0MDUxODA4MzAzODE2MDAwODc4MDNiMTUxNTYxMDc1YTU3NjAwMDgwZmQ1YjYxMDJjNjVhMDNmMTE1MTU2MTA3NmI1NzYwMDA4MGZkNWI1MDUwNTA1MDUwNTA1NjViNjAwMDgwNjEwNzdmMzM2MTBhNzI1NjViMTUxNTYxMDc4YTU3NjAwMDgwZmQ1Yjg3ODc4Nzg3ODc2MDQwNTE4MDgwN2Y0MzQ1NGM0ZjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwODE1MjUwNjAwNDAxODY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NmMwMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAyODE1MjYwMTQwMTg1ODE1MjYwMjAwMTg0ODA1MTkwNjAyMDAxOTA4MDgzODM1YjYwMjA4MzEwMTUxNTYxMDgzMzU3ODA1MTgyNTI2MDIwODIwMTkxNTA2MDIwODEwMTkwNTA2MDIwODMwMzkyNTA2MTA4MGU1NjViNjAwMTgzNjAyMDAzNjEwMTAwMGEwMzgwMTk4MjUxMTY4MTg0NTExNjgwODIxNzg1NTI1MDUwNTA1MDUwNTA5MDUwMDE4MzgxNTI2MDIwMDE4MjgxNTI2MDIwMDE5NTUwNTA1MDUwNTA1MDYwNDA1MTgwOTEwMzkwMjA5MTUwNjEwODdmODg4Mzg1ODg4ODYxMGMzYjU2NWI5MDUwODc3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjg3ODc2MDQwNTE4MDgyODA1MTkwNjAyMDAxOTA4MDgzODM2MDAwNWI4MzgxMTAxNTYxMDhjNzU3ODA4MjAxNTE4MTg0MDE1MjYwMjA4MTAxOTA1MDYxMDhhYzU2NWI1MDUwNTA1MDkwNTA5MDgxMDE5MDYwMWYxNjgwMTU2MTA4ZjQ1NzgwODIwMzgwNTE2MDAxODM2MDIwMDM2MTAxMDAwYTAzMTkxNjgxNTI2MDIwMDE5MTUwNWI1MDkxNTA1MDYwMDA2MDQwNTE4MDgzMDM4MTg1ODc2MTg3OTY1YTAzZjE5MjUwNTA1MDE1MTU2MTA5MTg1NzYwMDA4MGZkNWI3ZjU5YmVkOWFiNWQ3ODA3MzQ2NWRkNjQyYTllM2U3NmRmZGI3ZDUzYmNhZTlkMDlkZjdkMGI4ZjUyMzRkNWE4MDYzMzgyODQ4YjhiOGI2MDQwNTE4MDg3NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE4NjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxODU2MDAwMTkxNjYwMDAxOTE2ODE1MjYwMjAwMTg0NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE4MzgxNTI2MDIwMDE4MDYwMjAwMTgyODEwMzgyNTI4MzgxODE1MTgxNTI2MDIwMDE5MTUwODA1MTkwNjAyMDAxOTA4MDgzODM2MDAwNWI4MzgxMTAxNTYxMGEyOTU3ODA4MjAxNTE4MTg0MDE1MjYwMjA4MTAxOTA1MDYxMGEwZTU2NWI1MDUwNTA1MDkwNTA5MDgxMDE5MDYwMWYxNjgwMTU2MTBhNTY1NzgwODIwMzgwNTE2MDAxODM2MDIwMDM2MTAxMDAwYTAzMTkxNjgxNTI2MDIwMDE5MTUwNWI1MDk3NTA1MDUwNTA1MDUwNTA1MDYwNDA1MTgwOTEwMzkwYTE1MDUwNTA1MDUwNTA1MDUwNTY1YjYwMDA4MDYwMDA5MDUwNWI2MDAwODA1NDkwNTA4MTEwMTU2MTBiMGI1NzgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY2MDAwODI4MTU0ODExMDE1MTU2MTBhYWQ1N2ZlNWI5MDYwMDA1MjYwMjA2MDAwMjA5MDAxNjAwMDkwNTQ5MDYxMDEwMDBhOTAwNDczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTYxNDE1NjEwYWZlNTc2MDAxOTE1MDYxMGIxMDU2NWI4MDgwNjAwMTAxOTE1MDUwNjEwYTdhNTY1YjYwMDA5MTUwNWI1MDkxOTA1MDU2NWI2MDAwODA2MDAwODA5MTUwNjAwMDkwNTA1YjYwMGE4MTEwMTU2MTBiNjU1NzgxNjAwMjgyNjAwYTgxMTAxNTE1NjEwYjNjNTdmZTViMDE1NDExMTU2MTBiNTg1NzYwMDI4MTYwMGE4MTEwMTUxNTYxMGI1MzU3ZmU1YjAxNTQ5MTUwNWI4MDgwNjAwMTAxOTE1MDUwNjEwYjIzNTY1YjYwMDE4MjAxOTI1MDUwNTA5MDU2NWI2MDAwNjEwYjdhNjEwZTkwNTY1YjYwNDA1MTgwOTEwMzkwNjAwMGYwODAxNTE1NjEwYjkwNTc2MDAwODBmZDViOTA1MDkwNTY1YjYwMDE2MDAwOTA1NDkwNjEwMTAwMGE5MDA0NjBmZjE2ODE1NjViNjEwYmIxMzM2MTBhNzI1NjViMTUxNTYxMGJiYzU3NjAwMDgwZmQ1YjYwMDE4MDYwMDA2MTAxMDAwYTgxNTQ4MTYwZmYwMjE5MTY5MDgzMTUxNTAyMTc5MDU1NTA3ZjA5MDllOGY3NmE0ZmQzZTk3MGYyZWFlZjU2YzBlZTZkZmFmOGI4N2M1YjhkM2Y1NmZmY2U3OGU4MjVhOTExNTczMzYwNDA1MTgwODI3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE1MjYwMjAwMTkxNTA1MDYwNDA1MTgwOTEwMzkwYTE1NjViNjAwMDgwNjEwYzQ4ODY4NjYxMGNlNjU2NWI5MDUwNjAwMTYwMDA5MDU0OTA2MTAxMDAwYTkwMDQ2MGZmMTY4MDE1NjEwYzZjNTc1MDYxMGM2YTg3NjEwYTcyNTY1YjE1NWIxNTYxMGM3NjU3NjAwMDgwZmQ1YjQyODQxMDE1NjEwYzgzNTc2MDAwODBmZDViNjEwYzhjODM2MTBkYjk1NjViNjEwYzk1ODE2MTBhNzI1NjViMTUxNTYxMGNhMDU3NjAwMDgwZmQ1YjMzNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2MTQxNTYxMGNkOTU3NjAwMDgwZmQ1YjgwOTE1MDUwOTU5NDUwNTA1MDUwNTA1NjViNjAwMDgwNjAwMDgwNjA0MTg1NTExNDE1MTU2MTBjZmM1NzYwMDA4MGZkNWI2MDIwODUwMTUxOTI1MDYwNDA4NTAxNTE5MTUwNjBmZjYwNDE4NjAxNTExNjkwNTA2MDFiODE2MGZmMTYxMDE1NjEwZDI3NTc2MDFiODEwMTkwNTA1YjYwMDE4NjgyODU4NTYwNDA1MTYwMDA4MTUyNjAyMDAxNjA0MDUyNjAwMDYwNDA1MTYwMjAwMTUyNjA0MDUxODA4NTYwMDAxOTE2NjAwMDE5MTY4MTUyNjAyMDAxODQ2MGZmMTY2MGZmMTY4MTUyNjAyMDAxODM2MDAwMTkxNjYwMDAxOTE2ODE1MjYwMjAwMTgyNjAwMDE5MTY2MDAwMTkxNjgxNTI2MDIwMDE5NDUwNTA1MDUwNTA2MDIwNjA0MDUxNjAyMDgxMDM5MDgwODQwMzkwNjAwMDg2NjE2NDZlNWEwM2YxMTUxNTYxMGRhNTU3NjAwMDgwZmQ1YjUwNTA2MDIwNjA0MDUxMDM1MTkzNTA1MDUwNTA5MjkxNTA1MDU2NWI2MDAwODA2MTBkYzUzMzYxMGE3MjU2NWIxNTE1NjEwZGQwNTc2MDAwODBmZDViNjAwMDkxNTA2MDAwOTA1MDViNjAwYTgxMTAxNTYxMGUzODU3ODI2MDAyODI2MDBhODExMDE1MTU2MTBkZjI1N2ZlNWIwMTU0MTQxNTYxMGRmZjU3NjAwMDgwZmQ1YjYwMDI4MjYwMGE4MTEwMTUxNTYxMGUwZTU3ZmU1YjAxNTQ2MDAyODI2MDBhODExMDE1MTU2MTBlMWY1N2ZlNWIwMTU0MTAxNTYxMGUyYjU3ODA5MTUwNWI4MDgwNjAwMTAxOTE1MDUwNjEwZGQ5NTY1YjYwMDI4MjYwMGE4MTEwMTUxNTYxMGU0NzU3ZmU1YjAxNTQ4MzEwMTU2MTBlNTU1NzYwMDA4MGZkNWI2MTI3MTA2MDAyODM2MDBhODExMDE1MTU2MTBlNjc1N2ZlNWIwMTU0MDE4MzExMTU2MTBlNzY1NzYwMDA4MGZkNWI4MjYwMDI4MzYwMGE4MTEwMTUxNTYxMGU4NjU3ZmU1YjAxODE5MDU1NTA1MDUwNTA1NjViNjA0MDUxNjEwNTQwODA2MTBlYTE4MzM5MDE5MDU2MDA2MDYwNjA0MDUyMzQxNTYxMDAwZjU3NjAwMDgwZmQ1YjMzNjAwMDgwNjEwMTAwMGE4MTU0ODE3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYwMjE5MTY5MDgzNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTYwMjE3OTA1NTUwNjEwNGUyODA2MTAwNWU2MDAwMzk2MDAwZjMwMDYwNjA2MDQwNTI2MDA0MzYxMDYxMDA1NjU3NjAwMDM1N2MwMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwOTAwNDYzZmZmZmZmZmYxNjgwNjI4MjFkZTMxNDYxMDE0NzU3ODA2MzNlZjEzMzY3MTQ2MTAxOWM1NzgwNjM2YjlmOTZlYTE0NjEwMWQ1NTc1YjYwMDA4MDkwNTQ5MDYxMDEwMDBhOTAwNDczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY2MTA4ZmMzNDkwODExNTAyOTA2MDQwNTE2MDAwNjA0MDUxODA4MzAzODE4NTg4ODhmMTkzNTA1MDUwNTAxNTE1NjEwMGI3NTc2MDAwODBmZDViN2Y2OWIzMTU0OGRlYTliM2I3MDdiNGRmZjM1N2QzMjZlM2U5MzQ4YjI0ZTdhNjA4MGEyMThhNmVkZWVlYzQ4ZjliMzMzNDYwMDAzNjYwNDA1MTgwODU3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE1MjYwMjAwMTg0ODE1MjYwMjAwMTgwNjAyMDAxODI4MTAzODI1Mjg0ODQ4MjgxODE1MjYwMjAwMTkyNTA4MDgyODQzNzgyMDE5MTUwNTA5NTUwNTA1MDUwNTA1MDYwNDA1MTgwOTEwMzkwYTEwMDViMzQxNTYxMDE1MjU3NjAwMDgwZmQ1YjYxMDE1YTYxMDFlYTU2NWI2MDQwNTE4MDgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWIzNDE1NjEwMWE3NTc2MDAwODBmZDViNjEwMWQzNjAwNDgwODAzNTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2OTA2MDIwMDE5MDkxOTA1MDUwNjEwMjBmNTY1YjAwNWIzNDE1NjEwMWUwNTc2MDAwODBmZDViNjEwMWU4NjEwNDNjNTY1YjAwNWI2MDAwODA5MDU0OTA2MTAxMDAwYTkwMDQ3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTY1YjYwMDA4MDYwMDA4MDYwMDA5MDU0OTA2MTAxMDAwYTkwMDQ3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2MzM3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjE0MTUxNTYxMDI2ZjU3NjAwMDgwZmQ1YjgzOTI1MDMwOTE1MDgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY2MzcwYTA4MjMxODM2MDAwNjA0MDUxNjAyMDAxNTI2MDQwNTE4MjYzZmZmZmZmZmYxNjdjMDEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAyODE1MjYwMDQwMTgwODI3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE1MjYwMjAwMTkxNTA1MDYwMjA2MDQwNTE4MDgzMDM4MTYwMDA4NzgwM2IxNTE1NjEwMzE4NTc2MDAwODBmZDViNjEwMmM2NWEwM2YxMTUxNTYxMDMyOTU3NjAwMDgwZmQ1YjUwNTA1MDYwNDA1MTgwNTE5MDUwOTA1MDYwMDA4MTE0MTU2MTAzNDM1NzYxMDQzNjU2NWI4MjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NjNhOTA1OWNiYjYwMDA4MDkwNTQ5MDYxMDEwMDBhOTAwNDczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODM2MDAwNjA0MDUxNjAyMDAxNTI2MDQwNTE4MzYzZmZmZmZmZmYxNjdjMDEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAyODE1MjYwMDQwMTgwODM3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE1MjYwMjAwMTgyODE1MjYwMjAwMTkyNTA1MDUwNjAyMDYwNDA1MTgwODMwMzgxNjAwMDg3ODAzYjE1MTU2MTA0MGY1NzYwMDA4MGZkNWI2MTAyYzY1YTAzZjExNTE1NjEwNDIwNTc2MDAwODBmZDViNTA1MDUwNjA0MDUxODA1MTkwNTAxNTE1NjEwNDM1NTc2MDAwODBmZDViNWI1MDUwNTA1MDU2NWI2MDAwODA5MDU0OTA2MTAxMDAwYTkwMDQ3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NjEwOGZjMzA3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjMxOTA4MTE1MDI5MDYwNDA1MTYwMDA2MDQwNTE4MDgzMDM4MTg1ODg4OGYxOTM1MDUwNTA1MDE1MTU2MTA0YjQ1NzYwMDA4MGZkNWI1NjAwYTE2NTYyN2E3YTcyMzA1ODIwNDIxOTNiOGZhMzZiYjIxMTE0MzgxOWE1MjVmZTA3ZjU5N2E1N2FjNTFiZGE3MzU0OTllY2ViZTJlZGE2NDg4NzAwMjlhMTY1NjI3YTdhNzIzMDU4MjAxMWIzZTc4NjgyMGJiZjk3NGZiZjg4MDJjNmJmZDBmYjQ0YWIyZWMzMGVkOTAxOGI5MWFhZDc1MDNjZDIxNGFhMDAyOSc7XG4iXX0=
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bitgo-beta/sdk-coin-celo",
|
|
3
|
-
"version": "1.3.3-alpha.
|
|
3
|
+
"version": "1.3.3-alpha.211",
|
|
4
4
|
"description": "BitGo SDK coin library for Celo",
|
|
5
5
|
"main": "./dist/src/index.js",
|
|
6
6
|
"types": "./dist/src/index.d.ts",
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
"author": "BitGo SDK Team <sdkteam@bitgo.com>",
|
|
19
19
|
"license": "MIT",
|
|
20
20
|
"engines": {
|
|
21
|
-
"node": ">=
|
|
21
|
+
"node": ">=18 <21"
|
|
22
22
|
},
|
|
23
23
|
"repository": {
|
|
24
24
|
"type": "git",
|
|
@@ -40,23 +40,23 @@
|
|
|
40
40
|
]
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@bitgo-beta/abstract-eth": "1.2.3-alpha.
|
|
44
|
-
"@bitgo-beta/sdk-coin-eth": "2.4.1-alpha.
|
|
45
|
-
"@bitgo-beta/sdk-core": "2.4.1-alpha.
|
|
46
|
-
"@bitgo-beta/statics": "10.0.1-alpha.
|
|
43
|
+
"@bitgo-beta/abstract-eth": "1.2.3-alpha.212",
|
|
44
|
+
"@bitgo-beta/sdk-coin-eth": "2.4.1-alpha.212",
|
|
45
|
+
"@bitgo-beta/sdk-core": "2.4.1-alpha.212",
|
|
46
|
+
"@bitgo-beta/statics": "10.0.1-alpha.212",
|
|
47
47
|
"@celo/connect": "^2.0.0",
|
|
48
48
|
"@celo/contractkit": "^2.0.0",
|
|
49
49
|
"@celo/wallet-base": "^2.0.0",
|
|
50
50
|
"@celo/wallet-local": "^2.0.0",
|
|
51
|
-
"@ethereumjs/common": "^2.
|
|
51
|
+
"@ethereumjs/common": "^2.6.5",
|
|
52
52
|
"bignumber.js": "^9.0.0",
|
|
53
53
|
"ethereumjs-abi": "^0.6.5",
|
|
54
54
|
"ethereumjs-util": "7.1.5",
|
|
55
55
|
"ethers": "^5.1.3"
|
|
56
56
|
},
|
|
57
57
|
"devDependencies": {
|
|
58
|
-
"@bitgo-beta/sdk-api": "1.6.1-alpha.
|
|
59
|
-
"@bitgo-beta/sdk-test": "^
|
|
58
|
+
"@bitgo-beta/sdk-api": "1.6.1-alpha.212",
|
|
59
|
+
"@bitgo-beta/sdk-test": "^8.0.43"
|
|
60
60
|
},
|
|
61
|
-
"gitHead": "
|
|
61
|
+
"gitHead": "a728031f0db8435d354c6a3d169a186e99c5eabc"
|
|
62
62
|
}
|