@bitgo/sdk-coin-canton 1.2.0 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/resources/hash/hash.d.ts +5 -0
- package/dist/resources/hash/hash.js +298 -0
- package/dist/resources/proto/damlTransaction.js +4 -4
- package/dist/resources/proto/damlTransactionNode.js +3 -3
- package/dist/resources/proto/damlTransactionNodeSeed.js +2 -2
- package/dist/resources/proto/metadata/metadataGlobalKeyMappingEntry.js +4 -4
- package/dist/resources/proto/metadata/metadataInputContract.js +3 -3
- package/dist/resources/proto/metadata/metadataSubmitterInfo.js +2 -2
- package/dist/resources/proto/metadata.js +5 -5
- package/dist/resources/proto/node/empty.js +2 -2
- package/dist/resources/proto/node/globalKey.js +4 -4
- package/dist/resources/proto/node/identifier.js +2 -2
- package/dist/resources/proto/node/node.js +16 -8
- package/dist/resources/proto/node/timestamp.js +3 -3
- package/dist/resources/proto/node/value.js +28 -14
- package/dist/resources/proto/preparedTransaction.js +4 -4
- package/dist/src/lib/constant.d.ts +2 -0
- package/dist/src/lib/constant.d.ts.map +1 -1
- package/dist/src/lib/constant.js +4 -2
- package/dist/src/lib/iface.d.ts +26 -6
- package/dist/src/lib/iface.d.ts.map +1 -1
- package/dist/src/lib/iface.js +1 -1
- package/dist/src/lib/index.d.ts +2 -1
- package/dist/src/lib/index.d.ts.map +1 -1
- package/dist/src/lib/index.js +5 -3
- package/dist/src/lib/oneStepPreApprovalBuilder.d.ts +49 -0
- package/dist/src/lib/oneStepPreApprovalBuilder.d.ts.map +1 -0
- package/dist/src/lib/oneStepPreApprovalBuilder.js +87 -0
- package/dist/src/lib/transaction/transaction.d.ts +18 -0
- package/dist/src/lib/transaction/transaction.d.ts.map +1 -0
- package/dist/src/lib/transaction/transaction.js +79 -0
- package/dist/src/lib/transactionBuilder.d.ts +7 -14
- package/dist/src/lib/transactionBuilder.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilder.js +31 -23
- package/dist/src/lib/transactionBuilderFactory.d.ts +4 -1
- package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilderFactory.js +10 -3
- package/dist/src/lib/transferBuilder.d.ts +2 -0
- package/dist/src/lib/transferBuilder.d.ts.map +1 -1
- package/dist/src/lib/transferBuilder.js +4 -1
- package/dist/src/lib/utils.d.ts +37 -0
- package/dist/src/lib/utils.d.ts.map +1 -1
- package/dist/src/lib/utils.js +66 -1
- package/dist/src/lib/walletInitBuilder.d.ts +98 -0
- package/dist/src/lib/walletInitBuilder.d.ts.map +1 -0
- package/dist/src/lib/walletInitBuilder.js +223 -0
- package/dist/src/lib/walletInitialization/walletInitTransaction.d.ts +16 -0
- package/dist/src/lib/walletInitialization/walletInitTransaction.d.ts.map +1 -0
- package/dist/src/lib/walletInitialization/walletInitTransaction.js +59 -0
- package/dist/test/resources.d.ts +38 -0
- package/dist/test/resources.d.ts.map +1 -1
- package/dist/test/resources.js +50 -2
- package/dist/test/unit/builder/oneStepEnablement/oneStepEnablementBuilder.d.ts +2 -0
- package/dist/test/unit/builder/oneStepEnablement/oneStepEnablementBuilder.d.ts.map +1 -0
- package/dist/test/unit/builder/oneStepEnablement/oneStepEnablementBuilder.js +67 -0
- package/dist/test/unit/builder/walletInit/walletInitBuilder.d.ts +2 -0
- package/dist/test/unit/builder/walletInit/walletInitBuilder.d.ts.map +1 -0
- package/dist/test/unit/builder/walletInit/walletInitBuilder.js +66 -0
- package/dist/test/unit/utils.js +15 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +20 -6
- package/dist/src/lib/transaction.d.ts +0 -13
- package/dist/src/lib/transaction.d.ts.map +0 -1
- package/dist/src/lib/transaction.js +0 -53
- package/dist/src/lib/walletInitialization/walletInitializationTransaction.d.ts +0 -13
- package/dist/src/lib/walletInitialization/walletInitializationTransaction.d.ts.map +0 -1
- package/dist/src/lib/walletInitialization/walletInitializationTransaction.js +0 -38
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.WalletInitBuilder = void 0;
|
|
7
|
+
const sdk_core_1 = require("@bitgo/sdk-core");
|
|
8
|
+
const keyPair_1 = require("./keyPair");
|
|
9
|
+
const utils_1 = __importDefault(require("./utils"));
|
|
10
|
+
const walletInitTransaction_1 = require("./walletInitialization/walletInitTransaction");
|
|
11
|
+
const constant_1 = require("./constant");
|
|
12
|
+
class WalletInitBuilder extends sdk_core_1.BaseTransactionBuilder {
|
|
13
|
+
constructor(_coinConfig) {
|
|
14
|
+
super(_coinConfig);
|
|
15
|
+
this._localParticipantObservationOnly = false;
|
|
16
|
+
this._otherConfirmingParticipantUids = [];
|
|
17
|
+
this._confirmationThreshold = 1;
|
|
18
|
+
this._observingParticipantUids = [];
|
|
19
|
+
this._transaction = new walletInitTransaction_1.WalletInitTransaction(_coinConfig);
|
|
20
|
+
}
|
|
21
|
+
initBuilder(tx) {
|
|
22
|
+
this._transaction = tx;
|
|
23
|
+
}
|
|
24
|
+
buildImplementation() {
|
|
25
|
+
throw new Error('Not implemented');
|
|
26
|
+
}
|
|
27
|
+
fromImplementation(rawTransaction, isFirstSigner) {
|
|
28
|
+
throw new Error('Not implemented');
|
|
29
|
+
}
|
|
30
|
+
signImplementation(key) {
|
|
31
|
+
throw new Error('Not implemented');
|
|
32
|
+
}
|
|
33
|
+
get transaction() {
|
|
34
|
+
return this._transaction;
|
|
35
|
+
}
|
|
36
|
+
set transaction(transaction) {
|
|
37
|
+
this._transaction.preparedParty = transaction;
|
|
38
|
+
}
|
|
39
|
+
validateAddress(address, addressFormat) {
|
|
40
|
+
if (!utils_1.default.isValidAddress(address.address)) {
|
|
41
|
+
throw new sdk_core_1.BuildTransactionError('Invalid address ' + address.address);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
validateKey(key) {
|
|
45
|
+
let keyPair;
|
|
46
|
+
try {
|
|
47
|
+
keyPair = new keyPair_1.KeyPair({ prv: key.key });
|
|
48
|
+
}
|
|
49
|
+
catch {
|
|
50
|
+
throw new sdk_core_1.BuildTransactionError('Invalid key');
|
|
51
|
+
}
|
|
52
|
+
if (!keyPair.getKeys().prv) {
|
|
53
|
+
throw new sdk_core_1.BuildTransactionError('Invalid key');
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
validateRawTransaction(rawTransaction) {
|
|
57
|
+
if (!rawTransaction || !this._transaction.preparedParty) {
|
|
58
|
+
throw new sdk_core_1.BuildTransactionError('invalid raw transaction');
|
|
59
|
+
}
|
|
60
|
+
const localHash = utils_1.default.computeHashFromCreatePartyResponse(rawTransaction);
|
|
61
|
+
if (localHash !== this._transaction.preparedParty.multiHash) {
|
|
62
|
+
throw new sdk_core_1.BuildTransactionError('invalid raw transaction, hash not matching');
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
validateTransaction(transaction) {
|
|
66
|
+
if (!transaction?.preparedParty) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
const localHash = utils_1.default.computeHashFromCreatePartyResponse(transaction.preparedParty.topologyTransactions);
|
|
70
|
+
if (localHash !== this._transaction.preparedParty.multiHash) {
|
|
71
|
+
throw new sdk_core_1.BuildTransactionError('invalid transaction');
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
// not implemented because wallet initialization doesn't require any value
|
|
75
|
+
validateValue(value) {
|
|
76
|
+
throw new Error('Not implemented');
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Sets the public key used for signing.
|
|
80
|
+
*
|
|
81
|
+
* @param key - The public key of the wallet.
|
|
82
|
+
* @returns The current builder instance for chaining.
|
|
83
|
+
* @throws Error if key is not a valid public key
|
|
84
|
+
*/
|
|
85
|
+
publicKey(key) {
|
|
86
|
+
utils_1.default.isValidPublicKey(key);
|
|
87
|
+
this._publicKey = {
|
|
88
|
+
format: constant_1.PUBLIC_KEY_FORMAT,
|
|
89
|
+
keyData: key,
|
|
90
|
+
keySpec: constant_1.PUBLIC_KEY_SPEC,
|
|
91
|
+
};
|
|
92
|
+
return this;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Sets the party hint (alias or name) used during wallet initialization.
|
|
96
|
+
*
|
|
97
|
+
* @param hint - A 5-character non-empty string representing the party hint.
|
|
98
|
+
* @returns The current builder instance for chaining.
|
|
99
|
+
* @throws Error if the hint is empty or more than 5 characters long.
|
|
100
|
+
*/
|
|
101
|
+
partyHint(hint) {
|
|
102
|
+
const trimmedHint = hint.trim();
|
|
103
|
+
if (!trimmedHint) {
|
|
104
|
+
throw new Error('partyHint cannot be empty');
|
|
105
|
+
}
|
|
106
|
+
if (trimmedHint.length > 5) {
|
|
107
|
+
throw new Error('partyHint must be less than 6 characters long');
|
|
108
|
+
}
|
|
109
|
+
this._partyHint = trimmedHint;
|
|
110
|
+
return this;
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Sets whether the local participant should be added in observation-only mode.
|
|
114
|
+
*
|
|
115
|
+
* @param flag - Boolean flag indicating observation-only status.
|
|
116
|
+
* @returns The current builder instance for chaining.
|
|
117
|
+
*/
|
|
118
|
+
localParticipantObservationOnly(flag) {
|
|
119
|
+
this._localParticipantObservationOnly = flag;
|
|
120
|
+
return this;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Adds a confirming participant UID to the list of other confirming participants.
|
|
124
|
+
*
|
|
125
|
+
* @param uid - A non-empty string UID of another confirming participant.
|
|
126
|
+
* @returns The current builder instance for chaining.
|
|
127
|
+
* @throws Error if the UID is empty.
|
|
128
|
+
*/
|
|
129
|
+
otherConfirmingParticipantUid(uid) {
|
|
130
|
+
const trimmedUid = uid.trim();
|
|
131
|
+
if (!trimmedUid) {
|
|
132
|
+
throw new Error('otherConfirmingParticipantUid cannot be empty');
|
|
133
|
+
}
|
|
134
|
+
if (!this._otherConfirmingParticipantUids) {
|
|
135
|
+
this._otherConfirmingParticipantUids = [];
|
|
136
|
+
}
|
|
137
|
+
this._otherConfirmingParticipantUids.push(trimmedUid);
|
|
138
|
+
return this;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Sets the confirmation threshold for the wallet initialization.
|
|
142
|
+
*
|
|
143
|
+
* @param threshold - A positive integer indicating how many confirmations are required.
|
|
144
|
+
* @returns The current builder instance for chaining.
|
|
145
|
+
* @throws Error if the threshold is not a positive integer.
|
|
146
|
+
*/
|
|
147
|
+
confirmationThreshold(threshold) {
|
|
148
|
+
if (!Number.isInteger(threshold) || threshold <= 0) {
|
|
149
|
+
throw new Error('confirmationThreshold must be a positive integer');
|
|
150
|
+
}
|
|
151
|
+
this._confirmationThreshold = threshold;
|
|
152
|
+
return this;
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Adds an observing participant UID to the list of observers.
|
|
156
|
+
*
|
|
157
|
+
* @param uid - A non-empty string UID of the observing participant.
|
|
158
|
+
* @returns The current builder instance for chaining.
|
|
159
|
+
* @throws Error if the UID is empty.
|
|
160
|
+
*/
|
|
161
|
+
observingParticipantUid(uid) {
|
|
162
|
+
const trimmedUid = uid.trim();
|
|
163
|
+
if (!trimmedUid) {
|
|
164
|
+
throw new Error('observingParticipantUid cannot be empty');
|
|
165
|
+
}
|
|
166
|
+
if (!this._observingParticipantUids) {
|
|
167
|
+
this._observingParticipantUids = [];
|
|
168
|
+
}
|
|
169
|
+
this._observingParticipantUids.push(trimmedUid);
|
|
170
|
+
return this;
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Builds and returns the WalletInitRequest object from the builder's internal state.
|
|
174
|
+
*
|
|
175
|
+
* This method performs validation before constructing the object. If required fields are
|
|
176
|
+
* missing or invalid, it throws an error.
|
|
177
|
+
*
|
|
178
|
+
* @returns {WalletInitRequest} - A fully constructed and validated request object for wallet initialization.
|
|
179
|
+
* @throws {Error} If any required field is missing or fails validation.
|
|
180
|
+
*/
|
|
181
|
+
toRequestObject() {
|
|
182
|
+
this.validate();
|
|
183
|
+
return {
|
|
184
|
+
publicKey: this._publicKey,
|
|
185
|
+
partyHint: this._partyHint,
|
|
186
|
+
localParticipantObservationOnly: this._localParticipantObservationOnly,
|
|
187
|
+
otherConfirmingParticipantUids: this._otherConfirmingParticipantUids,
|
|
188
|
+
confirmationThreshold: this._confirmationThreshold,
|
|
189
|
+
observingParticipantUids: this._observingParticipantUids,
|
|
190
|
+
};
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* Validates the internal state of the builder before building the request object.
|
|
194
|
+
*
|
|
195
|
+
* Checks for:
|
|
196
|
+
* - Presence of a synchronizer ID.
|
|
197
|
+
* - `partyHint` must not be empty and must be at most 5 characters long.
|
|
198
|
+
* - Public key must include `keyData`, `format`, and `keySpec`.
|
|
199
|
+
* - Confirmation threshold must be a positive integer.
|
|
200
|
+
* - Confirming and observing participant UID lists must be arrays.
|
|
201
|
+
*
|
|
202
|
+
* @private
|
|
203
|
+
* @throws {Error} If any required field is missing or invalid.
|
|
204
|
+
*/
|
|
205
|
+
validate() {
|
|
206
|
+
if (!this._partyHint || this._partyHint.length > 5)
|
|
207
|
+
throw new Error('Invalid partyHint');
|
|
208
|
+
if (!this._publicKey || !this._publicKey.keyData || !this._publicKey.format || !this._publicKey.keySpec) {
|
|
209
|
+
throw new Error('Invalid publicKey');
|
|
210
|
+
}
|
|
211
|
+
if (!Number.isInteger(this._confirmationThreshold) || this._confirmationThreshold <= 0) {
|
|
212
|
+
throw new Error('Invalid confirmationThreshold');
|
|
213
|
+
}
|
|
214
|
+
if (!Array.isArray(this._otherConfirmingParticipantUids)) {
|
|
215
|
+
throw new Error('otherConfirmingParticipantUids must be an array');
|
|
216
|
+
}
|
|
217
|
+
if (!Array.isArray(this._observingParticipantUids)) {
|
|
218
|
+
throw new Error('observingParticipantUids must be an array');
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
exports.WalletInitBuilder = WalletInitBuilder;
|
|
223
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FsbGV0SW5pdEJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3dhbGxldEluaXRCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUVBLDhDQUFzRztBQUd0Ryx1Q0FBb0M7QUFFcEMsb0RBQTRCO0FBQzVCLHdGQUFxRjtBQUNyRix5Q0FBZ0U7QUFFaEUsTUFBYSxpQkFBa0IsU0FBUSxpQ0FBc0I7SUFVM0QsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFOYixxQ0FBZ0MsR0FBRyxLQUFLLENBQUM7UUFDekMsb0NBQStCLEdBQWEsRUFBRSxDQUFDO1FBQy9DLDJCQUFzQixHQUFHLENBQUMsQ0FBQztRQUMzQiw4QkFBeUIsR0FBYSxFQUFFLENBQUM7UUFJL0MsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLDZDQUFxQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRCxXQUFXLENBQUMsRUFBeUI7UUFDbkMsSUFBSSxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVTLG1CQUFtQjtRQUMzQixNQUFNLElBQUksS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVTLGtCQUFrQixDQUFDLGNBQW1CLEVBQUUsYUFBdUI7UUFDdkUsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFUyxrQkFBa0IsQ0FBQyxHQUFZO1FBQ3ZDLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFJLFdBQVcsQ0FBQyxXQUEwQjtRQUN4QyxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsR0FBRyxXQUFXLENBQUM7SUFDaEQsQ0FBQztJ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S0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsK0JBQStCLENBQUMsRUFBRSxDQUFDO1lBQ3pELE1BQU0sSUFBSSxLQUFLLENBQUMsaURBQWlELENBQUMsQ0FBQztRQUNyRSxDQUFDO1FBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLEVBQUUsQ0FBQztZQUNuRCxNQUFNLElBQUksS0FBSyxDQUFDLDJDQUEyQyxDQUFDLENBQUM7UUFDL0QsQ0FBQztJQUNILENBQUM7Q0FDRjtBQXZPRCw4Q0F1T0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmlnTnVtYmVyIGZyb20gJ2JpZ251bWJlci5qcyc7XG5cbmltcG9ydCB7IEJhc2VBZGRyZXNzLCBCYXNlS2V5LCBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyLCBCdWlsZFRyYW5zYWN0aW9uRXJyb3IgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby9zdGF0aWNzJztcblxuaW1wb3J0IHsgS2V5UGFpciB9IGZyb20gJy4va2V5UGFpcic7XG5pbXBvcnQgeyBJUHVibGljS2V5LCBQcmVwYXJlZFBhcnR5LCBXYWxsZXRJbml0UmVxdWVzdCB9IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgV2FsbGV0SW5pdFRyYW5zYWN0aW9uIH0gZnJvbSAnLi93YWxsZXRJbml0aWFsaXphdGlvbi93YWxsZXRJbml0VHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgUFVCTElDX0tFWV9GT1JNQVQsIFBVQkxJQ19LRVlfU1BFQyB9IGZyb20gJy4vY29uc3RhbnQnO1xuXG5leHBvcnQgY2xhc3MgV2FsbGV0SW5pdEJ1aWxkZXIgZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgcHJpdmF0ZSBfdHJhbnNhY3Rpb246IFdhbGxldEluaXRUcmFuc2FjdGlvbjtcblxuICBwcml2YXRlIF9wdWJsaWNLZXk6IElQdWJsaWNLZXk7XG4gIHByaXZhdGUgX3BhcnR5SGludDogc3RyaW5nO1xuICBwcml2YXRlIF9sb2NhbFBhcnRpY2lwYW50T2JzZXJ2YXRpb25Pbmx5ID0gZmFsc2U7XG4gIHByaXZhdGUgX290aGVyQ29uZmlybWluZ1BhcnRpY2lwYW50VWlkczogc3RyaW5nW10gPSBbXTtcbiAgcHJpdmF0ZSBfY29uZmlybWF0aW9uVGhyZXNob2xkID0gMTtcbiAgcHJpdmF0ZSBfb2JzZXJ2aW5nUGFydGljaXBhbnRVaWRzOiBzdHJpbmdbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbiA9IG5ldyBXYWxsZXRJbml0VHJhbnNhY3Rpb24oX2NvaW5Db25maWcpO1xuICB9XG5cbiAgaW5pdEJ1aWxkZXIodHg6IFdhbGxldEluaXRUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uID0gdHg7XG4gIH1cblxuICBwcm90ZWN0ZWQgYnVpbGRJbXBsZW1lbnRhdGlvbigpOiBQcm9taXNlPFdhbGxldEluaXRUcmFuc2FjdGlvbj4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTm90IGltcGxlbWVudGVkJyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uOiBhbnksIGlzRmlyc3RTaWduZXI/OiBib29sZWFuKTogV2FsbGV0SW5pdFRyYW5zYWN0aW9uIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNpZ25JbXBsZW1lbnRhdGlvbihrZXk6IEJhc2VLZXkpOiBXYWxsZXRJbml0VHJhbnNhY3Rpb24ge1xuICAgIHRocm93IG5ldyBFcnJvcignTm90IGltcGxlbWVudGVkJyk7XG4gIH1cblxuICBnZXQgdHJhbnNhY3Rpb24oKTogV2FsbGV0SW5pdFRyYW5zYWN0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5fdHJhbnNhY3Rpb247XG4gIH1cblxuICBzZXQgdHJhbnNhY3Rpb24odHJhbnNhY3Rpb246IFByZXBhcmVkUGFydHkpIHtcbiAgICB0aGlzLl90cmFuc2FjdGlvbi5wcmVwYXJlZFBhcnR5ID0gdHJhbnNhY3Rpb247XG4gIH1cblxuICB2YWxpZGF0ZUFkZHJlc3MoYWRkcmVzczogQmFzZUFkZHJlc3MsIGFkZHJlc3NGb3JtYXQ/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIXV0aWxzLmlzVmFsaWRBZGRyZXNzKGFkZHJlc3MuYWRkcmVzcykpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgYWRkcmVzcyAnICsgYWRkcmVzcy5hZGRyZXNzKTtcbiAgICB9XG4gIH1cblxuICB2YWxpZGF0ZUtleShrZXk6IEJhc2VLZXkpOiB2b2lkIHtcbiAgICBsZXQga2V5UGFpcjogS2V5UGFpcjtcbiAgICB0cnkge1xuICAgICAga2V5UGFpciA9IG5ldyBLZXlQYWlyKHsgcHJ2OiBrZXkua2V5IH0pO1xuICAgIH0gY2F0Y2gge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBrZXknKTtcbiAgICB9XG4gICAgaWYgKCFrZXlQYWlyLmdldEtleXMoKS5wcnYpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQga2V5Jyk7XG4gICAgfVxuICB9XG5cbiAgdmFsaWRhdGVSYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nW10pOiB2b2lkIHtcbiAgICBpZiAoIXJhd1RyYW5zYWN0aW9uIHx8ICF0aGlzLl90cmFuc2FjdGlvbi5wcmVwYXJlZFBhcnR5KSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdpbnZhbGlkIHJhdyB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICBjb25zdCBsb2NhbEhhc2ggPSB1dGlscy5jb21wdXRlSGFzaEZyb21DcmVhdGVQYXJ0eVJlc3BvbnNlKHJhd1RyYW5zYWN0aW9uKTtcbiAgICBpZiAobG9jYWxIYXNoICE9PSB0aGlzLl90cmFuc2FjdGlvbi5wcmVwYXJlZFBhcnR5Lm11bHRpSGFzaCkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignaW52YWxpZCByYXcgdHJhbnNhY3Rpb24sIGhhc2ggbm90IG1hdGNoaW5nJyk7XG4gICAgfVxuICB9XG5cbiAgdmFsaWRhdGVUcmFuc2FjdGlvbih0cmFuc2FjdGlvbj86IFdhbGxldEluaXRUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIGlmICghdHJhbnNhY3Rpb24/LnByZXBhcmVkUGFydHkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgbG9jYWxIYXNoID0gdXRpbHMuY29tcHV0ZUhhc2hGcm9tQ3JlYXRlUGFydHlSZXNwb25zZSh0cmFuc2FjdGlvbi5wcmVwYXJlZFBhcnR5LnRvcG9sb2d5VHJhbnNhY3Rpb25zKTtcbiAgICBpZiAobG9jYWxIYXNoICE9PSB0aGlzLl90cmFuc2FjdGlvbi5wcmVwYXJlZFBhcnR5Lm11bHRpSGFzaCkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignaW52YWxpZCB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgfVxuXG4gIC8vIG5vdCBpbXBsZW1lbnRlZCBiZWNhdXNlIHdhbGxldCBpbml0aWFsaXphdGlvbiBkb2Vzbid0IHJlcXVpcmUgYW55IHZhbHVlXG4gIHZhbGlkYXRlVmFsdWUodmFsdWU6IEJpZ051bWJlcik6IHZvaWQge1xuICAgIHRocm93IG5ldyBFcnJvcignTm90IGltcGxlbWVudGVkJyk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcHVibGljIGtleSB1c2VkIGZvciBzaWduaW5nLlxuICAgKlxuICAgKiBAcGFyYW0ga2V5IC0gVGhlIHB1YmxpYyBrZXkgb2YgdGhlIHdhbGxldC5cbiAgICogQHJldHVybnMgVGhlIGN1cnJlbnQgYnVpbGRlciBpbnN0YW5jZSBmb3IgY2hhaW5pbmcuXG4gICAqIEB0aHJvd3MgRXJyb3IgaWYga2V5IGlzIG5vdCBhIHZhbGlkIHB1YmxpYyBrZXlcbiAgICovXG4gIHB1YmxpY0tleShrZXk6IHN0cmluZyk6IHRoaXMge1xuICAgIHV0aWxzLmlzVmFsaWRQdWJsaWNLZXkoa2V5KTtcbiAgICB0aGlzLl9wdWJsaWNLZXkgPSB7XG4gICAgICBmb3JtYXQ6IFBVQkxJQ19LRVlfRk9STUFULFxuICAgICAga2V5RGF0YToga2V5LFxuICAgICAga2V5U3BlYzogUFVCTElDX0tFWV9TUEVDLFxuICAgIH07XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcGFydHkgaGludCAoYWxpYXMgb3IgbmFtZSkgdXNlZCBkdXJpbmcgd2FsbGV0IGluaXRpYWxpemF0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gaGludCAtIEEgNS1jaGFyYWN0ZXIgbm9uLWVtcHR5IHN0cmluZyByZXByZXNlbnRpbmcgdGhlIHBhcnR5IGhpbnQuXG4gICAqIEByZXR1cm5zIFRoZSBjdXJyZW50IGJ1aWxkZXIgaW5zdGFuY2UgZm9yIGNoYWluaW5nLlxuICAgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBoaW50IGlzIGVtcHR5IG9yIG1vcmUgdGhhbiA1IGNoYXJhY3RlcnMgbG9uZy5cbiAgICovXG4gIHBhcnR5SGludChoaW50OiBzdHJpbmcpOiB0aGlzIHtcbiAgICBjb25zdCB0cmltbWVkSGludCA9IGhpbnQudHJpbSgpO1xuICAgIGlmICghdHJpbW1lZEhpbnQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigncGFydHlIaW50IGNhbm5vdCBiZSBlbXB0eScpO1xuICAgIH1cbiAgICBpZiAodHJpbW1lZEhpbnQubGVuZ3RoID4gNSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdwYXJ0eUhpbnQgbXVzdCBiZSBsZXNzIHRoYW4gNiBjaGFyYWN0ZXJzIGxvbmcnKTtcbiAgICB9XG4gICAgdGhpcy5fcGFydHlIaW50ID0gdHJpbW1lZEhpbnQ7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB3aGV0aGVyIHRoZSBsb2NhbCBwYXJ0aWNpcGFudCBzaG91bGQgYmUgYWRkZWQgaW4gb2JzZXJ2YXRpb24tb25seSBtb2RlLlxuICAgKlxuICAgKiBAcGFyYW0gZmxhZyAtIEJvb2xlYW4gZmxhZyBpbmRpY2F0aW5nIG9ic2VydmF0aW9uLW9ubHkgc3RhdHVzLlxuICAgKiBAcmV0dXJucyBUaGUgY3VycmVudCBidWlsZGVyIGluc3RhbmNlIGZvciBjaGFpbmluZy5cbiAgICovXG4gIGxvY2FsUGFydGljaXBhbnRPYnNlcnZhdGlvbk9ubHkoZmxhZzogYm9vbGVhbik6IHRoaXMge1xuICAgIHRoaXMuX2xvY2FsUGFydGljaXBhbnRPYnNlcnZhdGlvbk9ubHkgPSBmbGFnO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBjb25maXJtaW5nIHBhcnRpY2lwYW50IFVJRCB0byB0aGUgbGlzdCBvZiBvdGhlciBjb25maXJtaW5nIHBhcnRpY2lwYW50cy5cbiAgICpcbiAgICogQHBhcmFtIHVpZCAtIEEgbm9uLWVtcHR5IHN0cmluZyBVSUQgb2YgYW5vdGhlciBjb25maXJtaW5nIHBhcnRpY2lwYW50LlxuICAgKiBAcmV0dXJucyBUaGUgY3VycmVudCBidWlsZGVyIGluc3RhbmNlIGZvciBjaGFpbmluZy5cbiAgICogQHRocm93cyBFcnJvciBpZiB0aGUgVUlEIGlzIGVtcHR5LlxuICAgKi9cbiAgb3RoZXJDb25maXJtaW5nUGFydGljaXBhbnRVaWQodWlkOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBjb25zdCB0cmltbWVkVWlkID0gdWlkLnRyaW0oKTtcbiAgICBpZiAoIXRyaW1tZWRVaWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignb3RoZXJDb25maXJtaW5nUGFydGljaXBhbnRVaWQgY2Fubm90IGJlIGVtcHR5Jyk7XG4gICAgfVxuICAgIGlmICghdGhpcy5fb3RoZXJDb25maXJtaW5nUGFydGljaXBhbnRVaWRzKSB7XG4gICAgICB0aGlzLl9vdGhlckNvbmZpcm1pbmdQYXJ0aWNpcGFudFVpZHMgPSBbXTtcbiAgICB9XG4gICAgdGhpcy5fb3RoZXJDb25maXJtaW5nUGFydGljaXBhbnRVaWRzLnB1c2godHJpbW1lZFVpZCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgY29uZmlybWF0aW9uIHRocmVzaG9sZCBmb3IgdGhlIHdhbGxldCBpbml0aWFsaXphdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIHRocmVzaG9sZCAtIEEgcG9zaXRpdmUgaW50ZWdlciBpbmRpY2F0aW5nIGhvdyBtYW55IGNvbmZpcm1hdGlvbnMgYXJlIHJlcXVpcmVkLlxuICAgKiBAcmV0dXJucyBUaGUgY3VycmVudCBidWlsZGVyIGluc3RhbmNlIGZvciBjaGFpbmluZy5cbiAgICogQHRocm93cyBFcnJvciBpZiB0aGUgdGhyZXNob2xkIGlzIG5vdCBhIHBvc2l0aXZlIGludGVnZXIuXG4gICAqL1xuICBjb25maXJtYXRpb25UaHJlc2hvbGQodGhyZXNob2xkOiBudW1iZXIpOiB0aGlzIHtcbiAgICBpZiAoIU51bWJlci5pc0ludGVnZXIodGhyZXNob2xkKSB8fCB0aHJlc2hvbGQgPD0gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdjb25maXJtYXRpb25UaHJlc2hvbGQgbXVzdCBiZSBhIHBvc2l0aXZlIGludGVnZXInKTtcbiAgICB9XG4gICAgdGhpcy5fY29uZmlybWF0aW9uVGhyZXNob2xkID0gdGhyZXNob2xkO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYW4gb2JzZXJ2aW5nIHBhcnRpY2lwYW50IFVJRCB0byB0aGUgbGlzdCBvZiBvYnNlcnZlcnMuXG4gICAqXG4gICAqIEBwYXJhbSB1aWQgLSBBIG5vbi1lbXB0eSBzdHJpbmcgVUlEIG9mIHRoZSBvYnNlcnZpbmcgcGFydGljaXBhbnQuXG4gICAqIEByZXR1cm5zIFRoZSBjdXJyZW50IGJ1aWxkZXIgaW5zdGFuY2UgZm9yIGNoYWluaW5nLlxuICAgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBVSUQgaXMgZW1wdHkuXG4gICAqL1xuICBvYnNlcnZpbmdQYXJ0aWNpcGFudFVpZCh1aWQ6IHN0cmluZyk6IHRoaXMge1xuICAgIGNvbnN0IHRyaW1tZWRVaWQgPSB1aWQudHJpbSgpO1xuICAgIGlmICghdHJpbW1lZFVpZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdvYnNlcnZpbmdQYXJ0aWNpcGFudFVpZCBjYW5ub3QgYmUgZW1wdHknKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLl9vYnNlcnZpbmdQYXJ0aWNpcGFudFVpZHMpIHtcbiAgICAgIHRoaXMuX29ic2VydmluZ1BhcnRpY2lwYW50VWlkcyA9IFtdO1xuICAgIH1cbiAgICB0aGlzLl9vYnNlcnZpbmdQYXJ0aWNpcGFudFVpZHMucHVzaCh0cmltbWVkVWlkKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZHMgYW5kIHJldHVybnMgdGhlIFdhbGxldEluaXRSZXF1ZXN0IG9iamVjdCBmcm9tIHRoZSBidWlsZGVyJ3MgaW50ZXJuYWwgc3RhdGUuXG4gICAqXG4gICAqIFRoaXMgbWV0aG9kIHBlcmZvcm1zIHZhbGlkYXRpb24gYmVmb3JlIGNvbnN0cnVjdGluZyB0aGUgb2JqZWN0LiBJZiByZXF1aXJlZCBmaWVsZHMgYXJlXG4gICAqIG1pc3Npbmcgb3IgaW52YWxpZCwgaXQgdGhyb3dzIGFuIGVycm9yLlxuICAgKlxuICAgKiBAcmV0dXJucyB7V2FsbGV0SW5pdFJlcXVlc3R9IC0gQSBmdWxseSBjb25zdHJ1Y3RlZCBhbmQgdmFsaWRhdGVkIHJlcXVlc3Qgb2JqZWN0IGZvciB3YWxsZXQgaW5pdGlhbGl6YXRpb24uXG4gICAqIEB0aHJvd3Mge0Vycm9yfSBJZiBhbnkgcmVxdWlyZWQgZmllbGQgaXMgbWlzc2luZyBvciBmYWlscyB2YWxpZGF0aW9uLlxuICAgKi9cbiAgdG9SZXF1ZXN0T2JqZWN0KCk6IFdhbGxldEluaXRSZXF1ZXN0IHtcbiAgICB0aGlzLnZhbGlkYXRlKCk7XG4gICAgcmV0dXJuIHtcbiAgICAgIHB1YmxpY0tleTogdGhpcy5fcHVibGljS2V5LFxuICAgICAgcGFydHlIaW50OiB0aGlzLl9wYXJ0eUhpbnQsXG4gICAgICBsb2NhbFBhcnRpY2lwYW50T2JzZXJ2YXRpb25Pbmx5OiB0aGlzLl9sb2NhbFBhcnRpY2lwYW50T2JzZXJ2YXRpb25Pbmx5LFxuICAgICAgb3RoZXJDb25maXJtaW5nUGFydGljaXBhbnRVaWRzOiB0aGlzLl9vdGhlckNvbmZpcm1pbmdQYXJ0aWNpcGFudFVpZHMsXG4gICAgICBjb25maXJtYXRpb25UaHJlc2hvbGQ6IHRoaXMuX2NvbmZpcm1hdGlvblRocmVzaG9sZCxcbiAgICAgIG9ic2VydmluZ1BhcnRpY2lwYW50VWlkczogdGhpcy5fb2JzZXJ2aW5nUGFydGljaXBhbnRVaWRzLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGVzIHRoZSBpbnRlcm5hbCBzdGF0ZSBvZiB0aGUgYnVpbGRlciBiZWZvcmUgYnVpbGRpbmcgdGhlIHJlcXVlc3Qgb2JqZWN0LlxuICAgKlxuICAgKiBDaGVja3MgZm9yOlxuICAgKiAtIFByZXNlbmNlIG9mIGEgc3luY2hyb25pemVyIElELlxuICAgKiAtIGBwYXJ0eUhpbnRgIG11c3Qgbm90IGJlIGVtcHR5IGFuZCBtdXN0IGJlIGF0IG1vc3QgNSBjaGFyYWN0ZXJzIGxvbmcuXG4gICAqIC0gUHVibGljIGtleSBtdXN0IGluY2x1ZGUgYGtleURhdGFgLCBgZm9ybWF0YCwgYW5kIGBrZXlTcGVjYC5cbiAgICogLSBDb25maXJtYXRpb24gdGhyZXNob2xkIG11c3QgYmUgYSBwb3NpdGl2ZSBpbnRlZ2VyLlxuICAgKiAtIENvbmZpcm1pbmcgYW5kIG9ic2VydmluZyBwYXJ0aWNpcGFudCBVSUQgbGlzdHMgbXVzdCBiZSBhcnJheXMuXG4gICAqXG4gICAqIEBwcml2YXRlXG4gICAqIEB0aHJvd3Mge0Vycm9yfSBJZiBhbnkgcmVxdWlyZWQgZmllbGQgaXMgbWlzc2luZyBvciBpbnZhbGlkLlxuICAgKi9cbiAgcHJpdmF0ZSB2YWxpZGF0ZSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX3BhcnR5SGludCB8fCB0aGlzLl9wYXJ0eUhpbnQubGVuZ3RoID4gNSkgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHBhcnR5SGludCcpO1xuICAgIGlmICghdGhpcy5fcHVibGljS2V5IHx8ICF0aGlzLl9wdWJsaWNLZXkua2V5RGF0YSB8fCAhdGhpcy5fcHVibGljS2V5LmZvcm1hdCB8fCAhdGhpcy5fcHVibGljS2V5LmtleVNwZWMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBwdWJsaWNLZXknKTtcbiAgICB9XG4gICAgaWYgKCFOdW1iZXIuaXNJbnRlZ2VyKHRoaXMuX2NvbmZpcm1hdGlvblRocmVzaG9sZCkgfHwgdGhpcy5fY29uZmlybWF0aW9uVGhyZXNob2xkIDw9IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBjb25maXJtYXRpb25UaHJlc2hvbGQnKTtcbiAgICB9XG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHRoaXMuX290aGVyQ29uZmlybWluZ1BhcnRpY2lwYW50VWlkcykpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignb3RoZXJDb25maXJtaW5nUGFydGljaXBhbnRVaWRzIG11c3QgYmUgYW4gYXJyYXknKTtcbiAgICB9XG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHRoaXMuX29ic2VydmluZ1BhcnRpY2lwYW50VWlkcykpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignb2JzZXJ2aW5nUGFydGljaXBhbnRVaWRzIG11c3QgYmUgYW4gYXJyYXknKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BaseKey, BaseTransaction } from '@bitgo/sdk-core';
|
|
2
|
+
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
3
|
+
import { PreparedParty, WalletInitTxData } from '../iface';
|
|
4
|
+
export declare class WalletInitTransaction extends BaseTransaction {
|
|
5
|
+
private _preparedParty;
|
|
6
|
+
constructor(coinConfig: Readonly<CoinConfig>);
|
|
7
|
+
get preparedParty(): PreparedParty;
|
|
8
|
+
set preparedParty(transaction: PreparedParty);
|
|
9
|
+
canSign(key: BaseKey): boolean;
|
|
10
|
+
set signatures(signature: string);
|
|
11
|
+
toBroadcastFormat(): string;
|
|
12
|
+
toJson(): WalletInitTxData;
|
|
13
|
+
get signablePayload(): Buffer;
|
|
14
|
+
fromRawTransaction(rawTx: string): void;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=walletInitTransaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"walletInitTransaction.d.ts","sourceRoot":"","sources":["../../../../src/lib/walletInitialization/walletInitTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,eAAe,EAA4C,MAAM,iBAAiB,CAAC;AACrG,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE3D,qBAAa,qBAAsB,SAAQ,eAAe;IACxD,OAAO,CAAC,cAAc,CAAgB;gBAE1B,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI5C,IAAI,aAAa,IAAI,aAAa,CAEjC;IAED,IAAI,aAAa,CAAC,WAAW,EAAE,aAAa,EAI3C;IAED,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAI9B,IAAI,UAAU,CAAC,SAAS,EAAE,MAAM,EAE/B;IAED,iBAAiB,IAAI,MAAM;IAO3B,MAAM,IAAI,gBAAgB;IAY1B,IAAI,eAAe,IAAI,MAAM,CAK5B;IAED,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;CAUxC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WalletInitTransaction = void 0;
|
|
4
|
+
const sdk_core_1 = require("@bitgo/sdk-core");
|
|
5
|
+
class WalletInitTransaction extends sdk_core_1.BaseTransaction {
|
|
6
|
+
constructor(coinConfig) {
|
|
7
|
+
super(coinConfig);
|
|
8
|
+
}
|
|
9
|
+
get preparedParty() {
|
|
10
|
+
return this._preparedParty;
|
|
11
|
+
}
|
|
12
|
+
set preparedParty(transaction) {
|
|
13
|
+
this._preparedParty = transaction;
|
|
14
|
+
this._id = transaction.multiHash;
|
|
15
|
+
this._type = sdk_core_1.TransactionType.WalletInitialization;
|
|
16
|
+
}
|
|
17
|
+
canSign(key) {
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
set signatures(signature) {
|
|
21
|
+
this._signatures.push(signature);
|
|
22
|
+
}
|
|
23
|
+
toBroadcastFormat() {
|
|
24
|
+
if (!this._preparedParty) {
|
|
25
|
+
throw new sdk_core_1.InvalidTransactionError('Empty transaction data');
|
|
26
|
+
}
|
|
27
|
+
return Buffer.from(JSON.stringify(this._preparedParty)).toString('base64');
|
|
28
|
+
}
|
|
29
|
+
toJson() {
|
|
30
|
+
if (!this._preparedParty) {
|
|
31
|
+
throw new sdk_core_1.InvalidTransactionError('Empty transaction data');
|
|
32
|
+
}
|
|
33
|
+
const result = {
|
|
34
|
+
id: this.id,
|
|
35
|
+
type: this._type,
|
|
36
|
+
preparedParty: this._preparedParty,
|
|
37
|
+
};
|
|
38
|
+
return result;
|
|
39
|
+
}
|
|
40
|
+
get signablePayload() {
|
|
41
|
+
if (!this._preparedParty) {
|
|
42
|
+
throw new sdk_core_1.InvalidTransactionError('Empty transaction data');
|
|
43
|
+
}
|
|
44
|
+
return Buffer.from(this._preparedParty.multiHash);
|
|
45
|
+
}
|
|
46
|
+
fromRawTransaction(rawTx) {
|
|
47
|
+
try {
|
|
48
|
+
const decoded = JSON.parse(Buffer.from(rawTx, 'base64').toString('utf8'));
|
|
49
|
+
this._preparedParty = decoded;
|
|
50
|
+
this._type = sdk_core_1.TransactionType.WalletInitialization;
|
|
51
|
+
this._id = decoded.multiHash;
|
|
52
|
+
}
|
|
53
|
+
catch (e) {
|
|
54
|
+
throw new sdk_core_1.InvalidTransactionError('Unable to parse raw transaction data');
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
exports.WalletInitTransaction = WalletInitTransaction;
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FsbGV0SW5pdFRyYW5zYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi93YWxsZXRJbml0aWFsaXphdGlvbi93YWxsZXRJbml0VHJhbnNhY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsOENBQXFHO0FBSXJHLE1BQWEscUJBQXNCLFNBQVEsMEJBQWU7SUFHeEQsWUFBWSxVQUFnQztRQUMxQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxhQUFhLENBQUMsV0FBMEI7UUFDMUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxXQUFXLENBQUM7UUFDbEMsSUFBSSxDQUFDLEdBQUcsR0FBRyxXQUFXLENBQUMsU0FBUyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxLQUFLLEdBQUcsMEJBQWUsQ0FBQyxvQkFBb0IsQ0FBQztJQUNwRCxDQUFDO0lBRUQsT0FBTyxDQUFDLEdBQVk7UUFDbEIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsSUFBSSxVQUFVLENBQUMsU0FBaUI7UUFDOUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELGlCQUFpQjtRQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDekIsTUFBTSxJQUFJLGtDQUF1QixDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFDOUQsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDekIsTUFBTSxJQUFJLGtDQUF1QixDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFDOUQsQ0FBQztRQUNELE1BQU0sTUFBTSxHQUFxQjtZQUMvQixFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDWCxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQXdCO1lBQ25DLGFBQWEsRUFBRSxJQUFJLENBQUMsY0FBYztTQUNuQyxDQUFDO1FBQ0YsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELElBQUksZUFBZTtRQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3pCLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBQzlELENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsS0FBYTtRQUM5QixJQUFJLENBQUM7WUFDSCxNQUFNLE9BQU8sR0FBa0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUN6RixJQUFJLENBQUMsY0FBYyxHQUFHLE9BQU8sQ0FBQztZQUM5QixJQUFJLENBQUMsS0FBSyxHQUFHLDBCQUFlLENBQUMsb0JBQW9CLENBQUM7WUFDbEQsSUFBSSxDQUFDLEdBQUcsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDO1FBQy9CLENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsTUFBTSxJQUFJLGtDQUF1QixDQUFDLHNDQUFzQyxDQUFDLENBQUM7UUFDNUUsQ0FBQztJQUNILENBQUM7Q0FDRjtBQTdERCxzREE2REMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlS2V5LCBCYXNlVHJhbnNhY3Rpb24sIEludmFsaWRUcmFuc2FjdGlvbkVycm9yLCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby9zdGF0aWNzJztcbmltcG9ydCB7IFByZXBhcmVkUGFydHksIFdhbGxldEluaXRUeERhdGEgfSBmcm9tICcuLi9pZmFjZSc7XG5cbmV4cG9ydCBjbGFzcyBXYWxsZXRJbml0VHJhbnNhY3Rpb24gZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb24ge1xuICBwcml2YXRlIF9wcmVwYXJlZFBhcnR5OiBQcmVwYXJlZFBhcnR5O1xuXG4gIGNvbnN0cnVjdG9yKGNvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoY29pbkNvbmZpZyk7XG4gIH1cblxuICBnZXQgcHJlcGFyZWRQYXJ0eSgpOiBQcmVwYXJlZFBhcnR5IHtcbiAgICByZXR1cm4gdGhpcy5fcHJlcGFyZWRQYXJ0eTtcbiAgfVxuXG4gIHNldCBwcmVwYXJlZFBhcnR5KHRyYW5zYWN0aW9uOiBQcmVwYXJlZFBhcnR5KSB7XG4gICAgdGhpcy5fcHJlcGFyZWRQYXJ0eSA9IHRyYW5zYWN0aW9uO1xuICAgIHRoaXMuX2lkID0gdHJhbnNhY3Rpb24ubXVsdGlIYXNoO1xuICAgIHRoaXMuX3R5cGUgPSBUcmFuc2FjdGlvblR5cGUuV2FsbGV0SW5pdGlhbGl6YXRpb247XG4gIH1cblxuICBjYW5TaWduKGtleTogQmFzZUtleSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHNldCBzaWduYXR1cmVzKHNpZ25hdHVyZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fc2lnbmF0dXJlcy5wdXNoKHNpZ25hdHVyZSk7XG4gIH1cblxuICB0b0Jyb2FkY2FzdEZvcm1hdCgpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5fcHJlcGFyZWRQYXJ0eSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdFbXB0eSB0cmFuc2FjdGlvbiBkYXRhJyk7XG4gICAgfVxuICAgIHJldHVybiBCdWZmZXIuZnJvbShKU09OLnN0cmluZ2lmeSh0aGlzLl9wcmVwYXJlZFBhcnR5KSkudG9TdHJpbmcoJ2Jhc2U2NCcpO1xuICB9XG5cbiAgdG9Kc29uKCk6IFdhbGxldEluaXRUeERhdGEge1xuICAgIGlmICghdGhpcy5fcHJlcGFyZWRQYXJ0eSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdFbXB0eSB0cmFuc2FjdGlvbiBkYXRhJyk7XG4gICAgfVxuICAgIGNvbnN0IHJlc3VsdDogV2FsbGV0SW5pdFR4RGF0YSA9IHtcbiAgICAgIGlkOiB0aGlzLmlkLFxuICAgICAgdHlwZTogdGhpcy5fdHlwZSBhcyBUcmFuc2FjdGlvblR5cGUsXG4gICAgICBwcmVwYXJlZFBhcnR5OiB0aGlzLl9wcmVwYXJlZFBhcnR5LFxuICAgIH07XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIGdldCBzaWduYWJsZVBheWxvYWQoKTogQnVmZmVyIHtcbiAgICBpZiAoIXRoaXMuX3ByZXBhcmVkUGFydHkpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignRW1wdHkgdHJhbnNhY3Rpb24gZGF0YScpO1xuICAgIH1cbiAgICByZXR1cm4gQnVmZmVyLmZyb20odGhpcy5fcHJlcGFyZWRQYXJ0eS5tdWx0aUhhc2gpO1xuICB9XG5cbiAgZnJvbVJhd1RyYW5zYWN0aW9uKHJhd1R4OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgZGVjb2RlZDogUHJlcGFyZWRQYXJ0eSA9IEpTT04ucGFyc2UoQnVmZmVyLmZyb20ocmF3VHgsICdiYXNlNjQnKS50b1N0cmluZygndXRmOCcpKTtcbiAgICAgIHRoaXMuX3ByZXBhcmVkUGFydHkgPSBkZWNvZGVkO1xuICAgICAgdGhpcy5fdHlwZSA9IFRyYW5zYWN0aW9uVHlwZS5XYWxsZXRJbml0aWFsaXphdGlvbjtcbiAgICAgIHRoaXMuX2lkID0gZGVjb2RlZC5tdWx0aUhhc2g7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdVbmFibGUgdG8gcGFyc2UgcmF3IHRyYW5zYWN0aW9uIGRhdGEnKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
package/dist/test/resources.d.ts
CHANGED
|
@@ -1,2 +1,40 @@
|
|
|
1
1
|
export declare const PreparedTransactionRawData = "CtWhAQoDMi4xEgEwGtsMCgIxMsI+0wwK0AwKAzIuMRJCMDBjYTQyYmNiNzEyYzM1NDUwYjM5MDQxNDU4ZDg0ZWI2NGY4YjVmZDhmZWQ2NGZkMjgxZmI0YmI5Yzg3MzVjNjAwGg1zcGxpY2UtYW11bGV0Il8KQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSDVNwbGljZS5BbXVsZXQaDExvY2tlZEFtdWxldCrkCHLhCApfCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEg1TcGxpY2UuQW11bGV0GgxMb2NrZWRBbXVsZXQSrgUKBmFtdWxldBKjBXKgBQpZCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEg1TcGxpY2UuQW11bGV0GgZBbXVsZXQSUgoDZHNvEks6SURTTzo6MTIyMDMyZTA0NTIyNTc4ODBmNzg4NGQ2MGFiZmI0MmEyYzRkMDA3NDRmY2Y0MGM3MTc3OTNmMjM4NDljMzI4OTY5MWISVgoFb3duZXISTTpLYWJjLTE6OjEyMjAwYzFlZTIyNmZiZGY5ZmJhMzQ2MWMyYzBjNzMzMzFiNjlkM2M2ZmQ4Y2ZjZTI4Y2RmODY0MTQxMTQxY2M2NTZkEpYDCgZhbW91bnQSiwNyiAMKXwpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxILU3BsaWNlLkZlZXMaDkV4cGlyaW5nQW1vdW50EiAKDWluaXRpYWxBbW91bnQSDzINNDYuOTkxNzg0NTYwMBJ3CgljcmVhdGVkQXQSanJoClcKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSDFNwbGljZS5UeXBlcxoFUm91bmQSDQoGbnVtYmVyEgMYzgISiQEKDHJhdGVQZXJSb3VuZBJ5cncKXQpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxILU3BsaWNlLkZlZXMaDFJhdGVQZXJSb3VuZBIWCgRyYXRlEg4yDDAuMDAzODA1MTgwMBLMAgoEbG9jaxLDAnLAAgpbCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEg1TcGxpY2UuRXhwaXJ5GghUaW1lTG9jaxJaCgdob2xkZXJzEk9aTQpLOklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiEhYKCWV4cGlyZXNBdBIJKbjceqY/QAYAEm0KCm9wdENvbnRleHQSX1JdCltCWXRyYW5zZmVyIHRvICdhYmMtMjo6MTIyMDdlOTZhZGExOGE4NDVhZGY0ZGMwMTQxMDI2NTYzM2Q1MjY2ZGNhOWJiMjgwYzk4ZTM1YzM2OTJkYjg3ZDNlMzUnMklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiMkthYmMtMTo6MTIyMDBjMWVlMjI2ZmJkZjlmYmEzNDYxYzJjMGM3MzMzMWI2OWQzYzZmZDhjZmNlMjhjZGY4NjQxNDExNDFjYzY1NmQ6SURTTzo6MTIyMDMyZTA0NTIyNTc4ODBmNzg4NGQ2MGFiZmI0MmEyYzRkMDA3NDRmY2Y0MGM3MTc3OTNmMjM4NDljMzI4OTY5MWI6S2FiYy0xOjoxMjIwMGMxZWUyMjZmYmRmOWZiYTM0NjFjMmMwYzczMzMxYjY5ZDNjNmZkOGNmY2UyOGNkZjg2NDE0MTE0MWNjNjU2ZBrvAwoBM8I+6AMS5QMKAzIuMRKKATAwMTFmYzk2Y2NmMzljOWQwN2YyN2ZiZjA1ZTY3MDgxM2E0NDQzOWZjY2RmZDc3ZjlmZjJmMjQzODE3YjY1NDJjN2NhMTExMjIwMGIyNmY4MmRjZTBhMDYzZTRhMTAwMTBiNjhmNjMwYTE0MTY1OWUwNTFlMGEwMWNhNmNmNTY3MjdkZGRlZjMyZRoNc3BsaWNlLWFtdWxldCJhCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEgxTcGxpY2UuUm91bmQaD09wZW5NaW5pbmdSb3VuZCpJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYjJJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYjpJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYhqVCQoCMTPCPo0JCooJCgMyLjESQjAwM2Q5NzAxNjkzYjhmYWMxMjYyYmYwNzgyMThlMDVlZjkyYzE1ZjQyZDdmYWM3NDM5MjE4NTU2MDkyYjZmOTcwYxoNc3BsaWNlLWFtdWxldCJZCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEg1TcGxpY2UuQW11bGV0GgZBbXVsZXQqpAVyoQUKWQpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxINU3BsaWNlLkFtdWxldBoGQW11bGV0ElIKA2RzbxJLOklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiElYKBW93bmVyEk06S2FiYy0xOjoxMjIwMGMxZWUyMjZmYmRmOWZiYTM0NjFjMmMwYzczMzMxYjY5ZDNjNmZkOGNmY2UyOGNkZjg2NDE0MTE0MWNjNjU2ZBKXAwoGYW1vdW50EowDcokDCl8KQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSC1NwbGljZS5GZWVzGg5FeHBpcmluZ0Ftb3VudBIhCg1pbml0aWFsQW1vdW50EhAyDjQ0MC4wMDgyMTU0NDAwEncKCWNyZWF0ZWRBdBJqcmgKVwpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxIMU3BsaWNlLlR5cGVzGgVSb3VuZBINCgZudW1iZXISAxjOAhKJAQoMcmF0ZVBlclJvdW5kEnlydwpdCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEgtTcGxpY2UuRmVlcxoMUmF0ZVBlclJvdW5kEhYKBHJhdGUSDjIMMC4wMDM4MDUxODAwMklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiMkthYmMtMTo6MTIyMDBjMWVlMjI2ZmJkZjlmYmEzNDYxYzJjMGM3MzMzMWI2OWQzYzZmZDhjZmNlMjhjZGY4NjQxNDExNDFjYzY1NmQ6SURTTzo6MTIyMDMyZTA0NTIyNTc4ODBmNzg4NGQ2MGFiZmI0MmEyYzRkMDA3NDRmY2Y0MGM3MTc3OTNmMjM4NDljMzI4OTY5MWI6S2FiYy0xOjoxMjIwMGMxZWUyMjZmYmRmOWZiYTM0NjFjMmMwYzczMzMxYjY5ZDNjNmZkOGNmY2UyOGNkZjg2NDE0MTE0MWNjNjU2ZBrEBwoCMTHCPrwHCrkHCgMyLjESQjAwZDRkNGE3MmU3ZWE4NTlmODVlNjE5ZTIxMWNmYjg4YmY4ZjJlYzhjYTBmMWZmNTVhZmY1NjBjMjQxMDEzZGJiORoNc3BsaWNlLWFtdWxldCJiCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEg1TcGxpY2UuQW11bGV0Gg9BcHBSZXdhcmRDb3Vwb24qlwRylAQKYgpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxINU3BsaWNlLkFtdWxldBoPQXBwUmV3YXJkQ291cG9uElIKA2RzbxJLOklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiElkKCHByb3ZpZGVyEk06S2FiYy0xOjoxMjIwMGMxZWUyMjZmYmRmOWZiYTM0NjFjMmMwYzczMzMxYjY5ZDNjNmZkOGNmY2UyOGNkZjg2NDE0MTE0MWNjNjU2ZBIOCghmZWF0dXJlZBICEAASGAoGYW1vdW50Eg4yDDcuMDAwMDAwMDAwMBJzCgVyb3VuZBJqcmgKVwpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxIMU3BsaWNlLlR5cGVzGgVSb3VuZBINCgZudW1iZXISAxjOAhJgCgtiZW5lZmljaWFyeRJRUk8KTTpLYWJjLTE6OjEyMjAwYzFlZTIyNmZiZGY5ZmJhMzQ2MWMyYzBjNzMzMzFiNjlkM2M2ZmQ4Y2ZjZTI4Y2RmODY0MTQxMTQxY2M2NTZkMklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiOklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiOkthYmMtMTo6MTIyMDBjMWVlMjI2ZmJkZjlmYmEzNDYxYzJjMGM3MzMzMWI2OWQzYzZmZDhjZmNlMjhjZGY4NjQxNDExNDFjYzY1NmQa8QMKATHCPuoDEucDCgMyLjESigEwMGRmZTdlOGU5Nzg3ZTc1NzQ2NzdlNTZkMGY5ZjY3ZDZlZWE5MTEwMzc3ZGQ3NjljNTE5MWE0YzQ4NDVkOWUyYmRjYTExMTIyMGM2ZWQ2NjZiN2JhYWE4N2NiNTZmM2I0MzlkNzZjNWQyNWEzYjRiZTU0Y2NmMGI3ZTE2MmYxZGJmNjJhM2RhZTUaDXNwbGljZS1hbXVsZXQiYwpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxISU3BsaWNlLkFtdWxldFJ1bGVzGgtBbXVsZXRSdWxlcypJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYjJJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYjpJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYhrvAwoBNMI+6AMS5QMKAzIuMRKKATAwMTFmYzk2Y2NmMzljOWQwN2YyN2ZiZjA1ZTY3MDgxM2E0NDQzOWZjY2RmZDc3ZjlmZjJmMjQzODE3YjY1NDJjN2NhMTExMjIwMGIyNmY4MmRjZTBhMDYzZTRhMTAwMTBiNjhmNjMwYTE0MTY1OWUwNTFlMGEwMWNhNmNmNTY3MjdkZGRlZjMyZRoNc3BsaWNlLWFtdWxldCJhCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEgxTcGxpY2UuUm91bmQaD09wZW5NaW5pbmdSb3VuZCpJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYjJJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYjpJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYhrOBQoBOMI+xwUSxAUKAzIuMRKKATAwMGFhODdhMTY0MjIwMmRlYzMyMDAwNjRkOTU4MDc4ZWMxZGY1YmI3Y2ZiMDI4N2MyN2NhNTA3YzJkMTE0ZTllYmNhMTExMjIwNGY0NWZjODlkMzdmN2U1MGNiY2U0NTI3ODA4NTdhOGVmMmRkNWM5YThhNGVmNWFhYTRjMGNmZjI4ZmI3YTM0ORoNc3BsaWNlLWFtdWxldCJZCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEg1TcGxpY2UuQW11bGV0GgZBbXVsZXQqSURTTzo6MTIyMDMyZTA0NTIyNTc4ODBmNzg4NGQ2MGFiZmI0MmEyYzRkMDA3NDRmY2Y0MGM3MTc3OTNmMjM4NDljMzI4OTY5MWIqS2FiYy0xOjoxMjIwMGMxZWUyMjZmYmRmOWZiYTM0NjFjMmMwYzczMzMxYjY5ZDNjNmZkOGNmY2UyOGNkZjg2NDE0MTE0MWNjNjU2ZDJJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYjJLYWJjLTE6OjEyMjAwYzFlZTIyNmZiZGY5ZmJhMzQ2MWMyYzBjNzMzMzFiNjlkM2M2ZmQ4Y2ZjZTI4Y2RmODY0MTQxMTQxY2M2NTZkOklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiOkthYmMtMTo6MTIyMDBjMWVlMjI2ZmJkZjlmYmEzNDYxYzJjMGM3MzMzMWI2OWQzYzZmZDhjZmNlMjhjZGY4NjQxNDExNDFjYzY1NmQa2gYKAjEwwj7SBgrPBgoDMi4xEkIwMDQzMjBkZWQwYTc1NmQzYjI2ZDlmN2UxNzgxZjlkNjE4MTFiNzhjYjg3MTcxMDQ0NzY5YjhlZTk4M2U5Zjc2MzgaDXNwbGljZS1hbXVsZXQiaApANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxINU3BsaWNlLkFtdWxldBoVVmFsaWRhdG9yUmV3YXJkQ291cG9uKqcDcqQDCmgKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSDVNwbGljZS5BbXVsZXQaFVZhbGlkYXRvclJld2FyZENvdXBvbhJSCgNkc28SSzpJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYhJVCgR1c2VyEk06S2FiYy0xOjoxMjIwMGMxZWUyMjZmYmRmOWZiYTM0NjFjMmMwYzczMzMxYjY5ZDNjNmZkOGNmY2UyOGNkZjg2NDE0MTE0MWNjNjU2ZBIYCgZhbW91bnQSDjIMNy4wMDAwMDAwMDAwEnMKBXJvdW5kEmpyaApXCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEgxTcGxpY2UuVHlwZXMaBVJvdW5kEg0KBm51bWJlchIDGM4CMklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiOklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiOkthYmMtMTo6MTIyMDBjMWVlMjI2ZmJkZjlmYmEzNDYxYzJjMGM3MzMzMWI2OWQzYzZmZDhjZmNlMjhjZGY4NjQxNDExNDFjYzY1NmQayw0KAjE0wj7DDQrADQoDMi4xEkIwMGE3YjkwZjJmODIzMmNmMzg3NGM4MDQ1OGY5OTY3YTAwNWYyOGUwN2U1M2QxZWUxMGNlN2JhZjU5NDlkNjcxZTcaDXNwbGljZS1hbXVsZXQifwpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxIgU3BsaWNlLkFtdWxldFRyYW5zZmVySW5zdHJ1Y3Rpb24aGUFtdWxldFRyYW5zZmVySW5zdHJ1Y3Rpb24q5why5AgKfwpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxIgU3BsaWNlLkFtdWxldFRyYW5zZmVySW5zdHJ1Y3Rpb24aGUFtdWxldFRyYW5zZmVySW5zdHJ1Y3Rpb24SVAoMbG9ja2VkQW11bGV0EkRKQjAwY2E0MmJjYjcxMmMzNTQ1MGIzOTA0MTQ1OGQ4NGViNjRmOGI1ZmQ4ZmVkNjRmZDI4MWZiNGJiOWM4NzM1YzYwMBKKBwoIdHJhbnNmZXIS/QZy+gYKdApANTViYTRkZWIwYWQ0NjYyYzQxNjhiMzk4NTk3MzhhMGU5MTM4OGQyNTIyODY0ODBjNzMzMWIzZjcxYTUxNzI4MRImU3BsaWNlLkFwaS5Ub2tlbi5UcmFuc2Zlckluc3RydWN0aW9uVjEaCFRyYW5zZmVyElcKBnNlbmRlchJNOkthYmMtMTo6MTIyMDBjMWVlMjI2ZmJkZjlmYmEzNDYxYzJjMGM3MzMzMWI2OWQzYzZmZDhjZmNlMjhjZGY4NjQxNDExNDFjYzY1NmQSWQoIcmVjZWl2ZXISTTpLYWJjLTI6OjEyMjA3ZTk2YWRhMThhODQ1YWRmNGRjMDE0MTAyNjU2MzNkNTI2NmRjYTliYjI4MGM5OGUzNWMzNjkyZGI4N2QzZTM1EhkKBmFtb3VudBIPMg0yMC4wMDAwMDAwMDAwEugBCgxpbnN0cnVtZW50SWQS1wFy1AEKbApANzE4YTBmNzdlNTA1YThkZTIyZjE4OGJkNGM4N2ZlNzQxMDEyNzRlOWQ0Y2IxYmZhYzdkMDlhZWM3MTU4ZDM1YhIaU3BsaWNlLkFwaS5Ub2tlbi5Ib2xkaW5nVjEaDEluc3RydW1lbnRJZBJUCgVhZG1pbhJLOklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiEg4KAmlkEghCBkFtdWxldBIYCgtyZXF1ZXN0ZWRBdBIJKej3oogrQAYAEhoKDWV4ZWN1dGVCZWZvcmUSCSm43HqmP0AGABJcChBpbnB1dEhvbGRpbmdDaWRzEkhaRgpESkIwMGNhNDJiY2I3MTJjMzU0NTBiMzkwNDE0NThkODRlYjY0ZjhiNWZkOGZlZDY0ZmQyODFmYjRiYjljODczNWM2MDASswEKBG1ldGESqgFypwEKaQpANGRlZDZiNjY4Y2IzYjY0ZjdhODhhMzA4NzRjZDQxYzc1ODI5ZjVlMDY0YjNmYmJhZGY0MWVjN2U4MzYzMzU0ZhIbU3BsaWNlLkFwaS5Ub2tlbi5NZXRhZGF0YVYxGghNZXRhZGF0YRI6CgZ2YWx1ZXMSMGIuCiwKJnNwbGljZS5sZmRlY2VudHJhbGl6ZWR0cnVzdC5vcmcvcmVhc29uEgJCADJJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYjJLYWJjLTE6OjEyMjAwYzFlZTIyNmZiZGY5ZmJhMzQ2MWMyYzBjNzMzMzFiNjlkM2M2ZmQ4Y2ZjZTI4Y2RmODY0MTQxMTQxY2M2NTZkOklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiOkthYmMtMTo6MTIyMDBjMWVlMjI2ZmJkZjlmYmEzNDYxYzJjMGM3MzMzMWI2OWQzYzZmZDhjZmNlMjhjZGY4NjQxNDExNDFjYzY1NmQ6S2FiYy0yOjoxMjIwN2U5NmFkYTE4YTg0NWFkZjRkYzAxNDEwMjY1NjMzZDUyNjZkY2E5YmIyODBjOThlMzVjMzY5MmRiODdkM2UzNRrUIAoBNsI+zSAayiAKAzIuMRKKATAwZGZlN2U4ZTk3ODdlNzU3NDY3N2U1NmQwZjlmNjdkNmVlYTkxMTAzNzdkZDc2OWM1MTkxYTRjNDg0NWQ5ZTJiZGNhMTExMjIwYzZlZDY2NmI3YmFhYTg3Y2I1NmYzYjQzOWQ3NmM1ZDI1YTNiNGJlNTRjY2YwYjdlMTYyZjFkYmY2MmEzZGFlNRoNc3BsaWNlLWFtdWxldCJjCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEhJTcGxpY2UuQW11bGV0UnVsZXMaC0FtdWxldFJ1bGVzKklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiMklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiOklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiOkthYmMtMTo6MTIyMDBjMWVlMjI2ZmJkZjlmYmEzNDYxYzJjMGM3MzMzMWI2OWQzYzZmZDhjZmNlMjhjZGY4NjQxNDExNDFjYzY1NmRKFEFtdWxldFJ1bGVzX1RyYW5zZmVyUtUNctINCmwKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSElNwbGljZS5BbXVsZXRSdWxlcxoUQW11bGV0UnVsZXNfVHJhbnNmZXISsAkKCHRyYW5zZmVyEqMJcqAJCmAKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSElNwbGljZS5BbXVsZXRSdWxlcxoIVHJhbnNmZXISVwoGc2VuZGVyEk06S2FiYy0xOjoxMjIwMGMxZWUyMjZmYmRmOWZiYTM0NjFjMmMwYzczMzMxYjY5ZDNjNmZkOGNmY2UyOGNkZjg2NDE0MTE0MWNjNjU2ZBJZCghwcm92aWRlchJNOkthYmMtMTo6MTIyMDBjMWVlMjI2ZmJkZjlmYmEzNDYxYzJjMGM3MzMzMWI2OWQzYzZmZDhjZmNlMjhjZGY4NjQxNDExNDFjYzY1NmQSmAIKBmlucHV0cxKNAlqKAgqHAnqEAgplCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEhJTcGxpY2UuQW11bGV0UnVsZXMaDVRyYW5zZmVySW5wdXQSC0lucHV0QW11bGV0Go0BSooBMDAwYWE4N2ExNjQyMjAyZGVjMzIwMDA2NGQ5NTgwNzhlYzFkZjViYjdjZmIwMjg3YzI3Y2E1MDdjMmQxMTRlOWViY2ExMTEyMjA0ZjQ1ZmM4OWQzN2Y3ZTUwY2JjZTQ1Mjc4MDg1N2E4ZWYyZGQ1YzlhOGE0ZWY1YWFhNGMwY2ZmMjhmYjdhMzQ5EuwECgdvdXRwdXRzEuAEWt0ECtoEctcECmYKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSElNwbGljZS5BbXVsZXRSdWxlcxoOVHJhbnNmZXJPdXRwdXQSWQoIcmVjZWl2ZXISTTpLYWJjLTE6OjEyMjAwYzFlZTIyNmZiZGY5ZmJhMzQ2MWMyYzBjNzMzMzFiNjlkM2M2ZmQ4Y2ZjZTI4Y2RmODY0MTQxMTQxY2M2NTZkEiIKEHJlY2VpdmVyRmVlUmF0aW8SDjIMMC4wMDAwMDAwMDAwEhkKBmFtb3VudBIPMg00Ni45OTE3ODQ1NjAwEtICCgRsb2NrEskCUsYCCsMCcsACClsKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSDVNwbGljZS5FeHBpcnkaCFRpbWVMb2NrEloKB2hvbGRlcnMST1pNCks6SURTTzo6MTIyMDMyZTA0NTIyNTc4ODBmNzg4NGQ2MGFiZmI0MmEyYzRkMDA3NDRmY2Y0MGM3MTc3OTNmMjM4NDljMzI4OTY5MWISFgoJZXhwaXJlc0F0EgkpuNx6pj9ABgASbQoKb3B0Q29udGV4dBJfUl0KW0JZdHJhbnNmZXIgdG8gJ2FiYy0yOjoxMjIwN2U5NmFkYTE4YTg0NWFkZjRkYzAxNDEwMjY1NjMzZDUyNjZkY2E5YmIyODBjOThlMzVjMzY5MmRiODdkM2UzNScSzgIKB2NvbnRleHQSwgJyvwIKZwpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxISU3BsaWNlLkFtdWxldFJ1bGVzGg9UcmFuc2ZlckNvbnRleHQSoQEKD29wZW5NaW5pbmdSb3VuZBKNAUqKATAwMTFmYzk2Y2NmMzljOWQwN2YyN2ZiZjA1ZTY3MDgxM2E0NDQzOWZjY2RmZDc3ZjlmZjJmMjQzODE3YjY1NDJjN2NhMTExMjIwMGIyNmY4MmRjZTBhMDYzZTRhMTAwMTBiNjhmNjMwYTE0MTY1OWUwNTFlMGEwMWNhNmNmNTY3MjdkZGRlZjMyZRIZChNpc3N1aW5nTWluaW5nUm91bmRzEgJqABIVCg92YWxpZGF0b3JSaWdodHMSAmoAEl4KC2V4cGVjdGVkRHNvEk9STQpLOklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiYgE3YgE4YgE5YgIxMGICMTFiAjEyYgIxM2qMDnKJDgpmCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEhJTcGxpY2UuQW11bGV0UnVsZXMaDlRyYW5zZmVyUmVzdWx0EnMKBXJvdW5kEmpyaApXCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEgxTcGxpY2UuVHlwZXMaBVJvdW5kEg0KBm51bWJlchIDGM4CEu4GCgdzdW1tYXJ5EuIGct8GCmcKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSElNwbGljZS5BbXVsZXRSdWxlcxoPVHJhbnNmZXJTdW1tYXJ5EiYKFGlucHV0QXBwUmV3YXJkQW1vdW50Eg4yDDAuMDAwMDAwMDAwMBIsChppbnB1dFZhbGlkYXRvclJld2FyZEFtb3VudBIOMgwwLjAwMDAwMDAwMDASJQoTaW5wdXRTdlJld2FyZEFtb3VudBIOMgwwLjAwMDAwMDAwMDASJQoRaW5wdXRBbXVsZXRBbW91bnQSEDIONTAwLjAwMDAwMDAwMDASuAIKDmJhbGFuY2VDaGFuZ2VzEqUCaqICCp8CCk06S2FiYy0xOjoxMjIwMGMxZWUyMjZmYmRmOWZiYTM0NjFjMmMwYzczMzMxYjY5ZDNjNmZkOGNmY2UyOGNkZjg2NDE0MTE0MWNjNjU2ZBLNAXLKAQplCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEhJTcGxpY2UuQW11bGV0UnVsZXMaDUJhbGFuY2VDaGFuZ2USNgoiY2hhbmdlVG9Jbml0aWFsQW1vdW50QXNPZlJvdW5kWmVybxIQMg4tMTIuMzY0NTM0OTQwMBIpChdjaGFuZ2VUb0hvbGRpbmdGZWVzUmF0ZRIOMgwwLjAwMzgwNTE4MDASHQoLaG9sZGluZ0ZlZXMSDjIMMC4wMDAwMDAwMDAwEiAKCm91dHB1dEZlZXMSEloQCg4yDDcuMDAwMDAwMDAwMBIhCg9zZW5kZXJDaGFuZ2VGZWUSDjIMNi4wMDAwMDAwMDAwEiYKEnNlbmRlckNoYW5nZUFtb3VudBIQMg40NDAuMDA4MjE1NDQwMBIdCgthbXVsZXRQcmljZRIOMgwwLjAwNTAwMDAwMDASMAoaaW5wdXRWYWxpZGF0b3JGYXVjZXRBbW91bnQSElIQCg4yDDAuMDAwMDAwMDAwMBI4CiJpbnB1dFVuY2xhaW1lZEFjdGl2aXR5UmVjb3JkQW1vdW50EhJSEAoOMgwwLjAwMDAwMDAwMDAS5QEKDmNyZWF0ZWRBbXVsZXRzEtIBWs8BCswBeskBCmUKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSElNwbGljZS5BbXVsZXRSdWxlcxoNQ3JlYXRlZEFtdWxldBIaVHJhbnNmZXJSZXN1bHRMb2NrZWRBbXVsZXQaREpCMDBjYTQyYmNiNzEyYzM1NDUwYjM5MDQxNDU4ZDg0ZWI2NGY4YjVmZDhmZWQ2NGZkMjgxZmI0YmI5Yzg3MzVjNjAwEl4KEnNlbmRlckNoYW5nZUFtdWxldBJIUkYKREpCMDAzZDk3MDE2OTNiOGZhYzEyNjJiZjA3ODIxOGUwNWVmOTJjMTVmNDJkN2ZhYzc0MzkyMTg1NTYwOTJiNmY5NzBjEvACCgRtZXRhEucCUuQCCuECct4CCmkKQDRkZWQ2YjY2OGNiM2I2NGY3YTg4YTMwODc0Y2Q0MWM3NTgyOWY1ZTA2NGIzZmJiYWRmNDFlYzdlODM2MzM1NGYSG1NwbGljZS5BcGkuVG9rZW4uTWV0YWRhdGFWMRoITWV0YWRhdGES8AEKBnZhbHVlcxLlAWLiAQowCiZzcGxpY2UubGZkZWNlbnRyYWxpemVkdHJ1c3Qub3JnL2J1cm5lZBIGQgQxMy4wCncKJnNwbGljZS5sZmRlY2VudHJhbGl6ZWR0cnVzdC5vcmcvc2VuZGVyEk1CS2FiYy0xOjoxMjIwMGMxZWUyMjZmYmRmOWZiYTM0NjFjMmMwYzczMzMxYjY5ZDNjNmZkOGNmY2UyOGNkZjg2NDE0MTE0MWNjNjU2ZAo1CidzcGxpY2UubGZkZWNlbnRyYWxpemVkdHJ1c3Qub3JnL3R4LWtpbmQSCkIIdHJhbnNmZXIawwwKATLCPrwMGrkMCgMyLjESigEwMGRmZTdlOGU5Nzg3ZTc1NzQ2NzdlNTZkMGY5ZjY3ZDZlZWE5MTEwMzc3ZGQ3NjljNTE5MWE0YzQ4NDVkOWUyYmRjYTExMTIyMGM2ZWQ2NjZiN2JhYWE4N2NiNTZmM2I0MzlkNzZjNWQyNWEzYjRiZTU0Y2NmMGI3ZTE2MmYxZGJmNjJhM2RhZTUaDXNwbGljZS1hbXVsZXQiYwpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxISU3BsaWNlLkFtdWxldFJ1bGVzGgtBbXVsZXRSdWxlcypJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYjJJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYjpLYWJjLTE6OjEyMjAwYzFlZTIyNmZiZGY5ZmJhMzQ2MWMyYzBjNzMzMzFiNjlkM2M2ZmQ4Y2ZjZTI4Y2RmODY0MTQxMTQxY2M2NTZkShdBbXVsZXRSdWxlc19Db21wdXRlRmVlc1KYB3KVBwpvCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEhJTcGxpY2UuQW11bGV0UnVsZXMaF0FtdWxldFJ1bGVzX0NvbXB1dGVGZWVzEs4CCgdjb250ZXh0EsICcr8CCmcKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSElNwbGljZS5BbXVsZXRSdWxlcxoPVHJhbnNmZXJDb250ZXh0EqEBCg9vcGVuTWluaW5nUm91bmQSjQFKigEwMDExZmM5NmNjZjM5YzlkMDdmMjdmYmYwNWU2NzA4MTNhNDQ0MzlmY2NkZmQ3N2Y5ZmYyZjI0MzgxN2I2NTQyYzdjYTExMTIyMDBiMjZmODJkY2UwYTA2M2U0YTEwMDEwYjY4ZjYzMGExNDE2NTllMDUxZTBhMDFjYTZjZjU2NzI3ZGRkZWYzMmUSGQoTaXNzdWluZ01pbmluZ1JvdW5kcxICagASFQoPdmFsaWRhdG9yUmlnaHRzEgJqABJXCgZzZW5kZXISTTpLYWJjLTE6OjEyMjAwYzFlZTIyNmZiZGY5ZmJhMzQ2MWMyYzBjNzMzMzFiNjlkM2M2ZmQ4Y2ZjZTI4Y2RmODY0MTQxMTQxY2M2NTZkEpcCCgdvdXRwdXRzEosCWogCCoUCcoICCmYKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSElNwbGljZS5BbXVsZXRSdWxlcxoOVHJhbnNmZXJPdXRwdXQSWQoIcmVjZWl2ZXISTTpLYWJjLTI6OjEyMjA3ZTk2YWRhMThhODQ1YWRmNGRjMDE0MTAyNjU2MzNkNTI2NmRjYTliYjI4MGM5OGUzNWMzNjkyZGI4N2QzZTM1EiIKEHJlY2VpdmVyRmVlUmF0aW8SDjIMMC4wMDAwMDAwMDAwEhkKBmFtb3VudBIPMg0yMC4wMDAwMDAwMDAwEl4KC2V4cGVjdGVkRHNvEk9STQpLOklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiYgEzapYBcpMBCnUKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSElNwbGljZS5BbXVsZXRSdWxlcxodQW11bGV0UnVsZXNfQ29tcHV0ZUZlZXNSZXN1bHQSGgoEZmVlcxISWhAKDjIMNi4yMDAwMDAwMDAwGu8DCgE3wj7oAxLlAwoDMi4xEooBMDAxMWZjOTZjY2YzOWM5ZDA3ZjI3ZmJmMDVlNjcwODEzYTQ0NDM5ZmNjZGZkNzdmOWZmMmYyNDM4MTdiNjU0MmM3Y2ExMTEyMjAwYjI2ZjgyZGNlMGEwNjNlNGExMDAxMGI2OGY2MzBhMTQxNjU5ZTA1MWUwYTAxY2E2Y2Y1NjcyN2RkZGVmMzJlGg1zcGxpY2UtYW11bGV0ImEKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSDFNwbGljZS5Sb3VuZBoPT3Blbk1pbmluZ1JvdW5kKklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiMklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiOklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiGtUdCgEwwj7OHRrLHQoDMi4xEooBMDA0NTZlYWU2YWIyMjQ5ZWZiZmU3NGU5YTM4OThkY2E2NGU1NDg1ODBhMzBjNDFlNjI3MmYyM2Y0ZDdlOGQ5MmExY2ExMTEyMjA4YzA5OTc1MWYwMDJhODc4YWQ0MTM1NDY2MGY2Y2YxZTJiNWUxNTM3ODgxNTRmOGFmMDUxNDJjMTQzZGFkYjIzGg1zcGxpY2UtYW11bGV0In0KQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSH1NwbGljZS5FeHRlcm5hbFBhcnR5QW11bGV0UnVsZXMaGEV4dGVybmFsUGFydHlBbXVsZXRSdWxlcypJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYjJJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYjpLYWJjLTE6OjEyMjAwYzFlZTIyNmZiZGY5ZmJhMzQ2MWMyYzBjNzMzMzFiNjlkM2M2ZmQ4Y2ZjZTI4Y2RmODY0MTQxMTQxY2M2NTZkQnsKQDU1YmE0ZGViMGFkNDY2MmM0MTY4YjM5ODU5NzM4YTBlOTEzODhkMjUyMjg2NDgwYzczMzFiM2Y3MWE1MTcyODESJlNwbGljZS5BcGkuVG9rZW4uVHJhbnNmZXJJbnN0cnVjdGlvblYxGg9UcmFuc2ZlckZhY3RvcnlKGFRyYW5zZmVyRmFjdG9yeV9UcmFuc2ZlclKbEXKYEQqEAQpANTViYTRkZWIwYWQ0NjYyYzQxNjhiMzk4NTk3MzhhMGU5MTM4OGQyNTIyODY0ODBjNzMzMWIzZjcxYTUxNzI4MRImU3BsaWNlLkFwaS5Ub2tlbi5UcmFuc2Zlckluc3RydWN0aW9uVjEaGFRyYW5zZmVyRmFjdG9yeV9UcmFuc2ZlchJcCg1leHBlY3RlZEFkbWluEks6SURTTzo6MTIyMDMyZTA0NTIyNTc4ODBmNzg4NGQ2MGFiZmI0MmEyYzRkMDA3NDRmY2Y0MGM3MTc3OTNmMjM4NDljMzI4OTY5MWIS1wcKCHRyYW5zZmVyEsoHcscHCnQKQDU1YmE0ZGViMGFkNDY2MmM0MTY4YjM5ODU5NzM4YTBlOTEzODhkMjUyMjg2NDgwYzczMzFiM2Y3MWE1MTcyODESJlNwbGljZS5BcGkuVG9rZW4uVHJhbnNmZXJJbnN0cnVjdGlvblYxGghUcmFuc2ZlchJXCgZzZW5kZXISTTpLYWJjLTE6OjEyMjAwYzFlZTIyNmZiZGY5ZmJhMzQ2MWMyYzBjNzMzMzFiNjlkM2M2ZmQ4Y2ZjZTI4Y2RmODY0MTQxMTQxY2M2NTZkElkKCHJlY2VpdmVyEk06S2FiYy0yOjoxMjIwN2U5NmFkYTE4YTg0NWFkZjRkYzAxNDEwMjY1NjMzZDUyNjZkY2E5YmIyODBjOThlMzVjMzY5MmRiODdkM2UzNRIZCgZhbW91bnQSDzINMjAuMDAwMDAwMDAwMBLoAQoMaW5zdHJ1bWVudElkEtcBctQBCmwKQDcxOGEwZjc3ZTUwNWE4ZGUyMmYxODhiZDRjODdmZTc0MTAxMjc0ZTlkNGNiMWJmYWM3ZDA5YWVjNzE1OGQzNWISGlNwbGljZS5BcGkuVG9rZW4uSG9sZGluZ1YxGgxJbnN0cnVtZW50SWQSVAoFYWRtaW4SSzpJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYhIOCgJpZBIIQgZBbXVsZXQSGAoLcmVxdWVzdGVkQXQSCSno96KIK0AGABIaCg1leGVjdXRlQmVmb3JlEgkpuNx6pj9ABgASqAEKEGlucHV0SG9sZGluZ0NpZHMSkwFakAEKjQFKigEwMDBhYTg3YTE2NDIyMDJkZWMzMjAwMDY0ZDk1ODA3OGVjMWRmNWJiN2NmYjAyODdjMjdjYTUwN2MyZDExNGU5ZWJjYTExMTIyMDRmNDVmYzg5ZDM3ZjdlNTBjYmNlNDUyNzgwODU3YThlZjJkZDVjOWE4YTRlZjVhYWE0YzBjZmYyOGZiN2EzNDkSswEKBG1ldGESqgFypwEKaQpANGRlZDZiNjY4Y2IzYjY0ZjdhODhhMzA4NzRjZDQxYzc1ODI5ZjVlMDY0YjNmYmJhZGY0MWVjN2U4MzYzMzU0ZhIbU3BsaWNlLkFwaS5Ub2tlbi5NZXRhZGF0YVYxGghNZXRhZGF0YRI6CgZ2YWx1ZXMSMGIuCiwKJnNwbGljZS5sZmRlY2VudHJhbGl6ZWR0cnVzdC5vcmcvcmVhc29uEgJCABLWBwoJZXh0cmFBcmdzEsgHcsUHCmoKQDRkZWQ2YjY2OGNiM2I2NGY3YTg4YTMwODc0Y2Q0MWM3NTgyOWY1ZTA2NGIzZmJiYWRmNDFlYzdlODM2MzM1NGYSG1NwbGljZS5BcGkuVG9rZW4uTWV0YWRhdGFWMRoJRXh0cmFBcmdzEtAFCgdjb250ZXh0EsQFcsEFCm4KQDRkZWQ2YjY2OGNiM2I2NGY3YTg4YTMwODc0Y2Q0MWM3NTgyOWY1ZTA2NGIzZmJiYWRmNDFlYzdlODM2MzM1NGYSG1NwbGljZS5BcGkuVG9rZW4uTWV0YWRhdGFWMRoNQ2hvaWNlQ29udGV4dBLOBAoGdmFsdWVzEsMEYsAECp4CCgxhbXVsZXQtcnVsZXMSjQJ6igIKaQpANGRlZDZiNjY4Y2IzYjY0ZjdhODhhMzA4NzRjZDQxYzc1ODI5ZjVlMDY0YjNmYmJhZGY0MWVjN2U4MzYzMzU0ZhIbU3BsaWNlLkFwaS5Ub2tlbi5NZXRhZGF0YVYxGghBbnlWYWx1ZRINQVZfQ29udHJhY3RJZBqNAUqKATAwZGZlN2U4ZTk3ODdlNzU3NDY3N2U1NmQwZjlmNjdkNmVlYTkxMTAzNzdkZDc2OWM1MTkxYTRjNDg0NWQ5ZTJiZGNhMTExMjIwYzZlZDY2NmI3YmFhYTg3Y2I1NmYzYjQzOWQ3NmM1ZDI1YTNiNGJlNTRjY2YwYjdlMTYyZjFkYmY2MmEzZGFlNQqcAgoKb3Blbi1yb3VuZBKNAnqKAgppCkA0ZGVkNmI2NjhjYjNiNjRmN2E4OGEzMDg3NGNkNDFjNzU4MjlmNWUwNjRiM2ZiYmFkZjQxZWM3ZTgzNjMzNTRmEhtTcGxpY2UuQXBpLlRva2VuLk1ldGFkYXRhVjEaCEFueVZhbHVlEg1BVl9Db250cmFjdElkGo0BSooBMDAxMWZjOTZjY2YzOWM5ZDA3ZjI3ZmJmMDVlNjcwODEzYTQ0NDM5ZmNjZGZkNzdmOWZmMmYyNDM4MTdiNjU0MmM3Y2ExMTEyMjAwYjI2ZjgyZGNlMGEwNjNlNGExMDAxMGI2OGY2MzBhMTQxNjU5ZTA1MWUwYTAxY2E2Y2Y1NjcyN2RkZGVmMzJlEoMBCgRtZXRhEntyeQppCkA0ZGVkNmI2NjhjYjNiNjRmN2E4OGEzMDg3NGNkNDFjNzU4MjlmNWUwNjRiM2ZiYmFkZjQxZWM3ZTgzNjMzNTRmEhtTcGxpY2UuQXBpLlRva2VuLk1ldGFkYXRhVjEaCE1ldGFkYXRhEgwKBnZhbHVlcxICYgBiATFiATJiATRiATViATZiAjE0av0GcvoGCoUBCkA1NWJhNGRlYjBhZDQ2NjJjNDE2OGIzOTg1OTczOGEwZTkxMzg4ZDI1MjI4NjQ4MGM3MzMxYjNmNzFhNTE3MjgxEiZTcGxpY2UuQXBpLlRva2VuLlRyYW5zZmVySW5zdHJ1Y3Rpb25WMRoZVHJhbnNmZXJJbnN0cnVjdGlvblJlc3VsdBLXAwoGb3V0cHV0EswDeskDCowBCkA1NWJhNGRlYjBhZDQ2NjJjNDE2OGIzOTg1OTczOGEwZTkxMzg4ZDI1MjI4NjQ4MGM3MzMxYjNmNzFhNTE3MjgxEiZTcGxpY2UuQXBpLlRva2VuLlRyYW5zZmVySW5zdHJ1Y3Rpb25WMRogVHJhbnNmZXJJbnN0cnVjdGlvblJlc3VsdF9PdXRwdXQSIVRyYW5zZmVySW5zdHJ1Y3Rpb25SZXN1bHRfUGVuZGluZxqUAnKRAgquAQpANTViYTRkZWIwYWQ0NjYyYzQxNjhiMzk4NTk3MzhhMGU5MTM4OGQyNTIyODY0ODBjNzMzMWIzZjcxYTUxNzI4MRImU3BsaWNlLkFwaS5Ub2tlbi5UcmFuc2Zlckluc3RydWN0aW9uVjEaQlRyYW5zZmVySW5zdHJ1Y3Rpb25SZXN1bHRfT3V0cHV0LlRyYW5zZmVySW5zdHJ1Y3Rpb25SZXN1bHRfUGVuZGluZxJeChZ0cmFuc2Zlckluc3RydWN0aW9uQ2lkEkRKQjAwYTdiOTBmMmY4MjMyY2YzODc0YzgwNDU4Zjk5NjdhMDA1ZjI4ZTA3ZTUzZDFlZTEwY2U3YmFmNTk0OWQ2NzFlNxJcChBzZW5kZXJDaGFuZ2VDaWRzEkhaRgpESkIwMDNkOTcwMTY5M2I4ZmFjMTI2MmJmMDc4MjE4ZTA1ZWY5MmMxNWY0MmQ3ZmFjNzQzOTIxODU1NjA5MmI2Zjk3MGMStwEKBG1ldGESrgFyqwEKaQpANGRlZDZiNjY4Y2IzYjY0ZjdhODhhMzA4NzRjZDQxYzc1ODI5ZjVlMDY0YjNmYmJhZGY0MWVjN2U4MzYzMzU0ZhIbU3BsaWNlLkFwaS5Ub2tlbi5NZXRhZGF0YVYxGghNZXRhZGF0YRI+CgZ2YWx1ZXMSNGIyCjAKJnNwbGljZS5sZmRlY2VudHJhbGl6ZWR0cnVzdC5vcmcvYnVybmVkEgZCBDEzLjAaxAYKATnCPr0GGroGCgMyLjESigEwMDBhYTg3YTE2NDIyMDJkZWMzMjAwMDY0ZDk1ODA3OGVjMWRmNWJiN2NmYjAyODdjMjdjYTUwN2MyZDExNGU5ZWJjYTExMTIyMDRmNDVmYzg5ZDM3ZjdlNTBjYmNlNDUyNzgwODU3YThlZjJkZDVjOWE4YTRlZjVhYWE0YzBjZmYyOGZiN2EzNDkaDXNwbGljZS1hbXVsZXQiWQpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxINU3BsaWNlLkFtdWxldBoGQW11bGV0KklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiKkthYmMtMTo6MTIyMDBjMWVlMjI2ZmJkZjlmYmEzNDYxYzJjMGM3MzMzMWI2OWQzYzZmZDhjZmNlMjhjZGY4NjQxNDExNDFjYzY1NmQySURTTzo6MTIyMDMyZTA0NTIyNTc4ODBmNzg4NGQ2MGFiZmI0MmEyYzRkMDA3NDRmY2Y0MGM3MTc3OTNmMjM4NDljMzI4OTY5MWIyS2FiYy0xOjoxMjIwMGMxZWUyMjZmYmRmOWZiYTM0NjFjMmMwYzczMzMxYjY5ZDNjNmZkOGNmY2UyOGNkZjg2NDE0MTE0MWNjNjU2ZDpJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYjpLYWJjLTE6OjEyMjAwYzFlZTIyNmZiZGY5ZmJhMzQ2MWMyYzBjNzMzMzFiNjlkM2M2ZmQ4Y2ZjZTI4Y2RmODY0MTQxMTQxY2M2NTZkSgdBcmNoaXZlUmVyYwphCkA5ZTcwYThiMzUxMGQ2MTdmOGExMzYyMTNmMzNkNmE5MDNhMTBjYTBlZWVjNzZiYjA2YmE1NWQxZWQ5NjgwZjY5EhREQS5JbnRlcm5hbC5UZW1wbGF0ZRoHQXJjaGl2ZVgBagIKABq3BgoBNcI+sAYSrQYKAzIuMRKKATAwMGFhODdhMTY0MjIwMmRlYzMyMDAwNjRkOTU4MDc4ZWMxZGY1YmI3Y2ZiMDI4N2MyN2NhNTA3YzJkMTE0ZTllYmNhMTExMjIwNGY0NWZjODlkMzdmN2U1MGNiY2U0NTI3ODA4NTdhOGVmMmRkNWM5YThhNGVmNWFhYTRjMGNmZjI4ZmI3YTM0ORoNc3BsaWNlLWFtdWxldCJZCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEg1TcGxpY2UuQW11bGV0GgZBbXVsZXQqSURTTzo6MTIyMDMyZTA0NTIyNTc4ODBmNzg4NGQ2MGFiZmI0MmEyYzRkMDA3NDRmY2Y0MGM3MTc3OTNmMjM4NDljMzI4OTY5MWIqS2FiYy0xOjoxMjIwMGMxZWUyMjZmYmRmOWZiYTM0NjFjMmMwYzczMzMxYjY5ZDNjNmZkOGNmY2UyOGNkZjg2NDE0MTE0MWNjNjU2ZDJJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYjJLYWJjLTE6OjEyMjAwYzFlZTIyNmZiZGY5ZmJhMzQ2MWMyYzBjNzMzMzFiNjlkM2M2ZmQ4Y2ZjZTI4Y2RmODY0MTQxMTQxY2M2NTZkOklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiOkthYmMtMTo6MTIyMDBjMWVlMjI2ZmJkZjlmYmEzNDYxYzJjMGM3MzMzMWI2OWQzYzZmZDhjZmNlMjhjZGY4NjQxNDExNDFjYzY1NmRCZwpANzE4YTBmNzdlNTA1YThkZTIyZjE4OGJkNGM4N2ZlNzQxMDEyNzRlOWQ0Y2IxYmZhYzdkMDlhZWM3MTU4ZDM1YhIaU3BsaWNlLkFwaS5Ub2tlbi5Ib2xkaW5nVjEaB0hvbGRpbmciIhIgx4D0qUq85aLjDcLW/xqgQlDU5EPy7kO44hBvtSdAPBIiJAgCEiAaTlp/nYjR3CjhJoCk3ZOAjaU5R8cTLJLWg6Z+L554VyIkCAYSIJDUE6VD1eRx/n2UBuUtsFvX/zc3HTzeKwPP6rMGxGIXIiQICRIgqiI4qhSuD5yIfh4mZYCdK1vF1YZ9CMHiEXKdxPwjQ8siJAgKEiAJygjowcASrLWmgPqSDvgzcxzMwsQ5qY0qFjBsS5HXBSIkCAsSIBdq09f6h0nrt8Cy2DrQGqzTnk22s5V2JQv3FF5dlQg4IiQIDBIgQ71KJaILts60r4bb45Fuxvg3lNygxOhgLd5JilpTChYiJAgNEiCPYYBtjtaHU7HB5H5ncMyOVX4X2dTVyePl3Lzb+0AZQCIkCA4SILDumoZ/Uoj3ouFJ2KSfYybDrI2ntoooLzAKADXFFDeZEod6EnMKS2FiYy0xOjoxMjIwMGMxZWUyMjZmYmRmOWZiYTM0NjFjMmMwYzczMzMxYjY5ZDNjNmZkOGNmY2UyOGNkZjg2NDE0MTE0MWNjNjU2ZBIkYzJlNjUzNzQtNDg1OC00YTZmLThkZDMtZGRhNDU1ZDI1ZTZhGlNnbG9iYWwtZG9tYWluOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYiokZmViYzM5NDgtNTBiMi00MjA0LTk4ZmYtNmU5YmFiM2MyNGRiMPOKtsa4hZADOtAOCtMJCgMyLjESigEwMDBhYTg3YTE2NDIyMDJkZWMzMjAwMDY0ZDk1ODA3OGVjMWRmNWJiN2NmYjAyODdjMjdjYTUwN2MyZDExNGU5ZWJjYTExMTIyMDRmNDVmYzg5ZDM3ZjdlNTBjYmNlNDUyNzgwODU3YThlZjJkZDVjOWE4YTRlZjVhYWE0YzBjZmYyOGZiN2EzNDkaDXNwbGljZS1hbXVsZXQiWQpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxINU3BsaWNlLkFtdWxldBoGQW11bGV0KqQFcqEFClkKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSDVNwbGljZS5BbXVsZXQaBkFtdWxldBJSCgNkc28SSzpJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYhJWCgVvd25lchJNOkthYmMtMTo6MTIyMDBjMWVlMjI2ZmJkZjlmYmEzNDYxYzJjMGM3MzMzMWI2OWQzYzZmZDhjZmNlMjhjZGY4NjQxNDExNDFjYzY1NmQSlwMKBmFtb3VudBKMA3KJAwpfCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEgtTcGxpY2UuRmVlcxoORXhwaXJpbmdBbW91bnQSIQoNaW5pdGlhbEFtb3VudBIQMg41MDAuMDAwMDAwMDAwMBJ3CgljcmVhdGVkQXQSanJoClcKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSDFNwbGljZS5UeXBlcxoFUm91bmQSDQoGbnVtYmVyEgMYzgISiQEKDHJhdGVQZXJSb3VuZBJ5cncKXQpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxILU3BsaWNlLkZlZXMaDFJhdGVQZXJSb3VuZBIWCgRyYXRlEg4yDDAuMDAzODA1MTgwMDJJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYjJLYWJjLTE6OjEyMjAwYzFlZTIyNmZiZGY5ZmJhMzQ2MWMyYzBjNzMzMzFiNjlkM2M2ZmQ4Y2ZjZTI4Y2RmODY0MTQxMTQxY2M2NTZkOklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiOkthYmMtMTo6MTIyMDBjMWVlMjI2ZmJkZjlmYmEzNDYxYzJjMGM3MzMzMWI2OWQzYzZmZDhjZmNlMjhjZGY4NjQxNDExNDFjYzY1NmTAPprH4uC3hZAD0j7sBAoDMi4xEuQECkUACqh6FkIgLewyAAZNlYB47B31u3z7AofCfKUHwtEU6evKERIgT0X8idN/flDLzkUngIV6jvLdXJqKTvWqpMDP8o+3o0kSDXNwbGljZS1hbXVsZXQaWgpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxIGU3BsaWNlEgZBbXVsZXQaBkFtdWxldCLiAWrfAQpNCks6SURTTzo6MTIyMDMyZTA0NTIyNTc4ODBmNzg4NGQ2MGFiZmI0MmEyYzRkMDA3NDRmY2Y0MGM3MTc3OTNmMjM4NDljMzI4OTY5MWIKTwpNOkthYmMtMTo6MTIyMDBjMWVlMjI2ZmJkZjlmYmEzNDYxYzJjMGM3MzMzMWI2OWQzYzZmZDhjZmNlMjhjZGY4NjQxNDExNDFjYzY1NmQKPQo7ajkKEgoQMg41MDAuMDAwMDAwMDAwMAoLCglqBwoFCgMYzgIKFgoUahIKEAoOMgwwLjAwMzgwNTE4MDAqSURTTzo6MTIyMDMyZTA0NTIyNTc4ODBmNzg4NGQ2MGFiZmI0MmEyYzRkMDA3NDRmY2Y0MGM3MTc3OTNmMjM4NDljMzI4OTY5MWIqS2FiYy0xOjoxMjIwMGMxZWUyMjZmYmRmOWZiYTM0NjFjMmMwYzczMzMxYjY5ZDNjNmZkOGNmY2UyOGNkZjg2NDE0MTE0MWNjNjU2ZDmaoxh8K0AGAEIqCiYKJAgBEiDIbmTsF2mLbs56uyDfkJkXTtqgBkwCHQDVA2WttnKwihAeOuYcCq8VCgMyLjESigEwMDExZmM5NmNjZjM5YzlkMDdmMjdmYmYwNWU2NzA4MTNhNDQ0MzlmY2NkZmQ3N2Y5ZmYyZjI0MzgxN2I2NTQyYzdjYTExMTIyMDBiMjZmODJkY2UwYTA2M2U0YTEwMDEwYjY4ZjYzMGExNDE2NTllMDUxZTBhMDFjYTZjZjU2NzI3ZGRkZWYzMmUaDXNwbGljZS1hbXVsZXQiYQpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxIMU3BsaWNlLlJvdW5kGg9PcGVuTWluaW5nUm91bmQqkhJyjxIKYQpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxIMU3BsaWNlLlJvdW5kGg9PcGVuTWluaW5nUm91bmQSUgoDZHNvEks6SURTTzo6MTIyMDMyZTA0NTIyNTc4ODBmNzg4NGQ2MGFiZmI0MmEyYzRkMDA3NDRmY2Y0MGM3MTc3OTNmMjM4NDljMzI4OTY5MWIScwoFcm91bmQSanJoClcKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSDFNwbGljZS5UeXBlcxoFUm91bmQSDQoGbnVtYmVyEgMYzgISHQoLYW11bGV0UHJpY2USDjIMMC4wMDUwMDAwMDAwEhQKB29wZW5zQXQSCSmDaVNlK0AGABIbCg50YXJnZXRDbG9zZXNBdBIJKYP12awrQAYAEoUBCgppc3N1aW5nRm9yEndydQpaCkBiNzBkYjgzNjllMWM0NjFkNWM3MGYxYzg2ZjUyNmEyOWU5Nzc2YzY1NWU2ZmZjMjU2MGY5NWIwNWNjYjhiOTQ2Eg1EQS5UaW1lLlR5cGVzGgdSZWxUaW1lEhcKDG1pY3Jvc2Vjb25kcxIHGIColcbqBRLSCQoRdHJhbnNmZXJDb25maWdVc2QSvAlyuQkKZwpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxITU3BsaWNlLkFtdWxldENvbmZpZxoOVHJhbnNmZXJDb25maWcSgQEKCWNyZWF0ZUZlZRJ0cnIKWQpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxILU3BsaWNlLkZlZXMaCEZpeGVkRmVlEhUKA2ZlZRIOMgwwLjAzMDAwMDAwMDAShwEKCmhvbGRpbmdGZWUSeXJ3Cl0KQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSC1NwbGljZS5GZWVzGgxSYXRlUGVyUm91bmQSFgoEcmF0ZRIOMgwwLjAwMDAxOTAyNTkSwwQKC3RyYW5zZmVyRmVlErMEcrAEClwKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSC1NwbGljZS5GZWVzGgtTdGVwcGVkUmF0ZRIdCgtpbml0aWFsUmF0ZRIOMgwwLjAxMDAwMDAwMDASsAMKBXN0ZXBzEqYDWqMDCocBcoQBClQKQDVhZWU5YjIxYjhlOWE0YzQ5NzViNWY0YzQxOThlNmU2ZTg0NjlkZjQ5ZTIwMTA4MjBlNzkyZjM5M2RiODcwZjQSCERBLlR5cGVzGgZUdXBsZTISFgoCXzESEDIOMTAwLjAwMDAwMDAwMDASFAoCXzISDjIMMC4wMDEwMDAwMDAwCogBcoUBClQKQDVhZWU5YjIxYjhlOWE0YzQ5NzViNWY0YzQxOThlNmU2ZTg0NjlkZjQ5ZTIwMTA4MjBlNzkyZjM5M2RiODcwZjQSCERBLlR5cGVzGgZUdXBsZTISFwoCXzESETIPMTAwMC4wMDAwMDAwMDAwEhQKAl8yEg4yDDAuMDAwMTAwMDAwMAqLAXKIAQpUCkA1YWVlOWIyMWI4ZTlhNGM0OTc1YjVmNGM0MTk4ZTZlNmU4NDY5ZGY0OWUyMDEwODIwZTc5MmYzOTNkYjg3MGY0EghEQS5UeXBlcxoGVHVwbGUyEhoKAl8xEhQyEjEwMDAwMDAuMDAwMDAwMDAwMBIUCgJfMhIOMgwwLjAwMDAxMDAwMDAShQEKDWxvY2tIb2xkZXJGZWUSdHJyClkKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSC1NwbGljZS5GZWVzGghGaXhlZEZlZRIVCgNmZWUSDjIMMC4wMDUwMDAwMDAwEi4KHGV4dHJhRmVhdHVyZWRBcHBSZXdhcmRBbW91bnQSDjIMMS4wMDAwMDAwMDAwEhMKDG1heE51bUlucHV0cxIDGMgBEhQKDW1heE51bU91dHB1dHMSAxjIARIXChFtYXhOdW1Mb2NrSG9sZGVycxICGGQSqAMKDmlzc3VhbmNlQ29uZmlnEpUDcpIDCmMKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSD1NwbGljZS5Jc3N1YW5jZRoOSXNzdWFuY2VDb25maWcSMAoUYW11bGV0VG9Jc3N1ZVBlclllYXISGDIWNDAwMDAwMDAwMDAuMDAwMDAwMDAwMBIrChl2YWxpZGF0b3JSZXdhcmRQZXJjZW50YWdlEg4yDDAuMDUwMDAwMDAwMBIlChNhcHBSZXdhcmRQZXJjZW50YWdlEg4yDDAuMTUwMDAwMDAwMBIkChJ2YWxpZGF0b3JSZXdhcmRDYXASDjIMMC4yMDAwMDAwMDAwEigKFGZlYXR1cmVkQXBwUmV3YXJkQ2FwEhAyDjEwMC4wMDAwMDAwMDAwEigKFnVuZmVhdHVyZWRBcHBSZXdhcmRDYXASDjIMMC42MDAwMDAwMDAwEisKFW9wdFZhbGlkYXRvckZhdWNldENhcBISUhAKDjIMMi44NTAwMDAwMDAwEoYBCgx0aWNrRHVyYXRpb24SdnJ0CloKQGI3MGRiODM2OWUxYzQ2MWQ1YzcwZjFjODZmNTI2YTI5ZTk3NzZjNjU1ZTZmZmMyNTYwZjk1YjA1Y2NiOGI5NDYSDURBLlRpbWUuVHlwZXMaB1JlbFRpbWUSFgoMbWljcm9zZWNvbmRzEgYYgJiavAQySURTTzo6MTIyMDMyZTA0NTIyNTc4ODBmNzg4NGQ2MGFiZmI0MmEyYzRkMDA3NDRmY2Y0MGM3MTc3OTNmMjM4NDljMzI4OTY5MWI6SURTTzo6MTIyMDMyZTA0NTIyNTc4ODBmNzg4NGQ2MGFiZmI0MmEyYzRkMDA3NDRmY2Y0MGM3MTc3OTNmMjM4NDljMzI4OTY5MWLAPoPHwIy0hZAD0j6mBwoDMi4xEp4HCkUAEfyWzPOcnQfyf78F5nCBOkRDn8zf13+f8vJDgXtlQsfKERIgCyb4Lc4KBj5KEAELaPYwoUFlngUeCgHKbPVnJ93e8y4SDXNwbGljZS1hbXVsZXQaYgpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxIGU3BsaWNlEgVSb3VuZBoPT3Blbk1pbmluZ1JvdW5kIuEEat4ECk0KSzpJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYgoLCglqBwoFCgMYzgIKEAoOMgwwLjAwNTAwMDAwMDAKCwoJKYNpU2UrQAYACgsKCSmD9dmsK0AGAAoPCg1qCwoJCgcYgKiVxuoFCpsCCpgCapUCChYKFGoSChAKDjIMMC4wMzAwMDAwMDAwChYKFGoSChAKDjIMMC4wMDAwMTkwMjU5CqQBCqEBap4BChAKDjIMMC4wMTAwMDAwMDAwCokBCoYBWoMBCihqJgoSChAyDjEwMC4wMDAwMDAwMDAwChAKDjIMMC4wMDEwMDAwMDAwCilqJwoTChEyDzEwMDAuMDAwMDAwMDAwMAoQCg4yDDAuMDAwMTAwMDAwMAosaioKFgoUMhIxMDAwMDAwLjAwMDAwMDAwMDAKEAoOMgwwLjAwMDAxMDAwMDAKFgoUahIKEAoOMgwwLjAwNTAwMDAwMDAKEAoOMgwxLjAwMDAwMDAwMDAKBQoDGMgBCgUKAxjIAQoECgIYZAqUAQqRAWqOAQoaChgyFjQwMDAwMDAwMDAwLjAwMDAwMDAwMDAKEAoOMgwwLjA1MDAwMDAwMDAKEAoOMgwwLjE1MDAwMDAwMDAKEAoOMgwwLjIwMDAwMDAwMDAKEgoQMg4xMDAuMDAwMDAwMDAwMAoQCg4yDDAuNjAwMDAwMDAwMAoUChJSEAoOMgwyLjg1MDAwMDAwMDAKDgoMagoKCAoGGICYmrwEKklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiOYMjkEErQAYAQioKJgokCAESIO0fY7ymvrflHXvdmfRaWlT0oGGyenPoJ8ORWgqqLV5EEB460QgKjwUKAzIuMRKKATAwNDU2ZWFlNmFiMjI0OWVmYmZlNzRlOWEzODk4ZGNhNjRlNTQ4NTgwYTMwYzQxZTYyNzJmMjNmNGQ3ZThkOTJhMWNhMTExMjIwOGMwOTk3NTFmMDAyYTg3OGFkNDEzNTQ2NjBmNmNmMWUyYjVlMTUzNzg4MTU0ZjhhZjA1MTQyYzE0M2RhZGIyMxoNc3BsaWNlLWFtdWxldCJ9CkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEh9TcGxpY2UuRXh0ZXJuYWxQYXJ0eUFtdWxldFJ1bGVzGhhFeHRlcm5hbFBhcnR5QW11bGV0UnVsZXMq1gFy0wEKfQpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxIfU3BsaWNlLkV4dGVybmFsUGFydHlBbXVsZXRSdWxlcxoYRXh0ZXJuYWxQYXJ0eUFtdWxldFJ1bGVzElIKA2RzbxJLOklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiMklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiOklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiwD6rtIOvoICQA9I+sQMKAzIuMRKpAwpFAEVurmqyJJ77/nTpo4mNymTlSFgKMMQeYnLyP01+jZKhyhESIIwJl1HwAqh4rUE1RmD2zx4rXhU3iBVPivBRQsFD2tsjEg1zcGxpY2UtYW11bGV0Gn4KQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSBlNwbGljZRIYRXh0ZXJuYWxQYXJ0eUFtdWxldFJ1bGVzGhhFeHRlcm5hbFBhcnR5QW11bGV0UnVsZXMiUWpPCk0KSzpJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYipJRFNPOjoxMjIwMzJlMDQ1MjI1Nzg4MGY3ODg0ZDYwYWJmYjQyYTJjNGQwMDc0NGZjZjQwYzcxNzc5M2YyMzg0OWMzMjg5NjkxYjkr2uAFAkAGAEIqCiYKJAgBEiDRn/8dILJok5hSCbO/ZG2q8F50JrDts+haNU3y8c6QbxAeOulDCrI0CgMyLjESigEwMGRmZTdlOGU5Nzg3ZTc1NzQ2NzdlNTZkMGY5ZjY3ZDZlZWE5MTEwMzc3ZGQ3NjljNTE5MWE0YzQ4NDVkOWUyYmRjYTExMTIyMGM2ZWQ2NjZiN2JhYWE4N2NiNTZmM2I0MzlkNzZjNWQyNWEzYjRiZTU0Y2NmMGI3ZTE2MmYxZGJmNjJhM2RhZTUaDXNwbGljZS1hbXVsZXQiYwpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxISU3BsaWNlLkFtdWxldFJ1bGVzGgtBbXVsZXRSdWxlcyqTMXKQMQpjCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEhJTcGxpY2UuQW11bGV0UnVsZXMaC0FtdWxldFJ1bGVzElIKA2RzbxJLOklEU086OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiEsQvCg5jb25maWdTY2hlZHVsZRKxL3KuLwpdCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEg9TcGxpY2UuU2NoZWR1bGUaCFNjaGVkdWxlErguCgxpbml0aWFsVmFsdWUSpy5ypC4KZQpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxITU3BsaWNlLkFtdWxldENvbmZpZxoMQW11bGV0Q29uZmlnEs8JCg50cmFuc2ZlckNvbmZpZxK8CXK5CQpnCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEhNTcGxpY2UuQW11bGV0Q29uZmlnGg5UcmFuc2ZlckNvbmZpZxKBAQoJY3JlYXRlRmVlEnRycgpZCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEgtTcGxpY2UuRmVlcxoIRml4ZWRGZWUSFQoDZmVlEg4yDDAuMDMwMDAwMDAwMBKHAQoKaG9sZGluZ0ZlZRJ5cncKXQpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxILU3BsaWNlLkZlZXMaDFJhdGVQZXJSb3VuZBIWCgRyYXRlEg4yDDAuMDAwMDE5MDI1ORLDBAoLdHJhbnNmZXJGZWUSswRysAQKXApANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxILU3BsaWNlLkZlZXMaC1N0ZXBwZWRSYXRlEh0KC2luaXRpYWxSYXRlEg4yDDAuMDEwMDAwMDAwMBKwAwoFc3RlcHMSpgNaowMKhwFyhAEKVApANWFlZTliMjFiOGU5YTRjNDk3NWI1ZjRjNDE5OGU2ZTZlODQ2OWRmNDllMjAxMDgyMGU3OTJmMzkzZGI4NzBmNBIIREEuVHlwZXMaBlR1cGxlMhIWCgJfMRIQMg4xMDAuMDAwMDAwMDAwMBIUCgJfMhIOMgwwLjAwMTAwMDAwMDAKiAFyhQEKVApANWFlZTliMjFiOGU5YTRjNDk3NWI1ZjRjNDE5OGU2ZTZlODQ2OWRmNDllMjAxMDgyMGU3OTJmMzkzZGI4NzBmNBIIREEuVHlwZXMaBlR1cGxlMhIXCgJfMRIRMg8xMDAwLjAwMDAwMDAwMDASFAoCXzISDjIMMC4wMDAxMDAwMDAwCosBcogBClQKQDVhZWU5YjIxYjhlOWE0YzQ5NzViNWY0YzQxOThlNmU2ZTg0NjlkZjQ5ZTIwMTA4MjBlNzkyZjM5M2RiODcwZjQSCERBLlR5cGVzGgZUdXBsZTISGgoCXzESFDISMTAwMDAwMC4wMDAwMDAwMDAwEhQKAl8yEg4yDDAuMDAwMDEwMDAwMBKFAQoNbG9ja0hvbGRlckZlZRJ0cnIKWQpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxILU3BsaWNlLkZlZXMaCEZpeGVkRmVlEhUKA2ZlZRIOMgwwLjAwNTAwMDAwMDASLgocZXh0cmFGZWF0dXJlZEFwcFJld2FyZEFtb3VudBIOMgwxLjAwMDAwMDAwMDASEwoMbWF4TnVtSW5wdXRzEgMYyAESFAoNbWF4TnVtT3V0cHV0cxIDGMgBEhcKEW1heE51bUxvY2tIb2xkZXJzEgIYZBKfGAoNaXNzdWFuY2VDdXJ2ZRKNGHKKGApdCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEg9TcGxpY2UuU2NoZWR1bGUaCFNjaGVkdWxlEqYDCgxpbml0aWFsVmFsdWUSlQNykgMKYwpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxIPU3BsaWNlLklzc3VhbmNlGg5Jc3N1YW5jZUNvbmZpZxIwChRhbXVsZXRUb0lzc3VlUGVyWWVhchIYMhY0MDAwMDAwMDAwMC4wMDAwMDAwMDAwEisKGXZhbGlkYXRvclJld2FyZFBlcmNlbnRhZ2USDjIMMC4wNTAwMDAwMDAwEiUKE2FwcFJld2FyZFBlcmNlbnRhZ2USDjIMMC4xNTAwMDAwMDAwEiQKEnZhbGlkYXRvclJld2FyZENhcBIOMgwwLjIwMDAwMDAwMDASKAoUZmVhdHVyZWRBcHBSZXdhcmRDYXASEDIOMTAwLjAwMDAwMDAwMDASKAoWdW5mZWF0dXJlZEFwcFJld2FyZENhcBIOMgwwLjYwMDAwMDAwMDASKwoVb3B0VmFsaWRhdG9yRmF1Y2V0Q2FwEhJSEAoOMgwyLjg1MDAwMDAwMDAS/xMKDGZ1dHVyZVZhbHVlcxLuE1rrEwr4BHL1BApUCkA1YWVlOWIyMWI4ZTlhNGM0OTc1YjVmNGM0MTk4ZTZlNmU4NDY5ZGY0OWUyMDEwODIwZTc5MmYzOTNkYjg3MGY0EghEQS5UeXBlcxoGVHVwbGUyEn4KAl8xEnhydgpaCkBiNzBkYjgzNjllMWM0NjFkNWM3MGYxYzg2ZjUyNmEyOWU5Nzc2YzY1NWU2ZmZjMjU2MGY5NWIwNWNjYjhiOTQ2Eg1EQS5UaW1lLlR5cGVzGgdSZWxUaW1lEhgKDG1pY3Jvc2Vjb25kcxIIGIDAz+DolQcSnAMKAl8yEpUDcpIDCmMKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSD1NwbGljZS5Jc3N1YW5jZRoOSXNzdWFuY2VDb25maWcSMAoUYW11bGV0VG9Jc3N1ZVBlclllYXISGDIWMjAwMDAwMDAwMDAuMDAwMDAwMDAwMBIrChl2YWxpZGF0b3JSZXdhcmRQZXJjZW50YWdlEg4yDDAuMTIwMDAwMDAwMBIlChNhcHBSZXdhcmRQZXJjZW50YWdlEg4yDDAuNDAwMDAwMDAwMBIkChJ2YWxpZGF0b3JSZXdhcmRDYXASDjIMMC4yMDAwMDAwMDAwEigKFGZlYXR1cmVkQXBwUmV3YXJkQ2FwEhAyDjEwMC4wMDAwMDAwMDAwEigKFnVuZmVhdHVyZWRBcHBSZXdhcmRDYXASDjIMMC42MDAwMDAwMDAwEisKFW9wdFZhbGlkYXRvckZhdWNldENhcBISUhAKDjIMMi44NTAwMDAwMDAwCvgEcvUEClQKQDVhZWU5YjIxYjhlOWE0YzQ5NzViNWY0YzQxOThlNmU2ZTg0NjlkZjQ5ZTIwMTA4MjBlNzkyZjM5M2RiODcwZjQSCERBLlR5cGVzGgZUdXBsZTISfgoCXzESeHJ2CloKQGI3MGRiODM2OWUxYzQ2MWQ1YzcwZjFjODZmNTI2YTI5ZTk3NzZjNjU1ZTZmZmMyNTYwZjk1YjA1Y2NiOGI5NDYSDURBLlRpbWUuVHlwZXMaB1JlbFRpbWUSGAoMbWljcm9zZWNvbmRzEggYgMDuobrBFRKcAwoCXzISlQNykgMKYwpANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxIPU3BsaWNlLklzc3VhbmNlGg5Jc3N1YW5jZUNvbmZpZxIwChRhbXVsZXRUb0lzc3VlUGVyWWVhchIYMhYxMDAwMDAwMDAwMC4wMDAwMDAwMDAwEisKGXZhbGlkYXRvclJld2FyZFBlcmNlbnRhZ2USDjIMMC4xODAwMDAwMDAwEiUKE2FwcFJld2FyZFBlcmNlbnRhZ2USDjIMMC42MjAwMDAwMDAwEiQKEnZhbGlkYXRvclJld2FyZENhcBIOMgwwLjIwMDAwMDAwMDASKAoUZmVhdHVyZWRBcHBSZXdhcmRDYXASEDIOMTAwLjAwMDAwMDAwMDASKAoWdW5mZWF0dXJlZEFwcFJld2FyZENhcBIOMgwwLjYwMDAwMDAwMDASKwoVb3B0VmFsaWRhdG9yRmF1Y2V0Q2FwEhJSEAoOMgwyLjg1MDAwMDAwMDAK9wRy9AQKVApANWFlZTliMjFiOGU5YTRjNDk3NWI1ZjRjNDE5OGU2ZTZlODQ2OWRmNDllMjAxMDgyMGU3OTJmMzkzZGI4NzBmNBIIREEuVHlwZXMaBlR1cGxlMhJ+CgJfMRJ4cnYKWgpAYjcwZGI4MzY5ZTFjNDYxZDVjNzBmMWM4NmY1MjZhMjllOTc3NmM2NTVlNmZmYzI1NjBmOTViMDVjY2I4Yjk0NhINREEuVGltZS5UeXBlcxoHUmVsVGltZRIYCgxtaWNyb3NlY29uZHMSCBiAgJvGl9pHEpsDCgJfMhKUA3KRAwpjCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEg9TcGxpY2UuSXNzdWFuY2UaDklzc3VhbmNlQ29uZmlnEi8KFGFtdWxldFRvSXNzdWVQZXJZZWFyEhcyFTUwMDAwMDAwMDAuMDAwMDAwMDAwMBIrChl2YWxpZGF0b3JSZXdhcmRQZXJjZW50YWdlEg4yDDAuMjEwMDAwMDAwMBIlChNhcHBSZXdhcmRQZXJjZW50YWdlEg4yDDAuNjkwMDAwMDAwMBIkChJ2YWxpZGF0b3JSZXdhcmRDYXASDjIMMC4yMDAwMDAwMDAwEigKFGZlYXR1cmVkQXBwUmV3YXJkQ2FwEhAyDjEwMC4wMDAwMDAwMDAwEigKFnVuZmVhdHVyZWRBcHBSZXdhcmRDYXASDjIMMC42MDAwMDAwMDAwEisKFW9wdFZhbGlkYXRvckZhdWNldENhcBISUhAKDjIMMi44NTAwMDAwMDAwCvgEcvUEClQKQDVhZWU5YjIxYjhlOWE0YzQ5NzViNWY0YzQxOThlNmU2ZTg0NjlkZjQ5ZTIwMTA4MjBlNzkyZjM5M2RiODcwZjQSCERBLlR5cGVzGgZUdXBsZTISfwoCXzESeXJ3CloKQGI3MGRiODM2OWUxYzQ2MWQ1YzcwZjFjODZmNTI2YTI5ZTk3NzZjNjU1ZTZmZmMyNTYwZjk1YjA1Y2NiOGI5NDYSDURBLlRpbWUuVHlwZXMaB1JlbFRpbWUSGQoMbWljcm9zZWNvbmRzEgkYgIC2jK+0jwESmwMKAl8yEpQDcpEDCmMKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSD1NwbGljZS5Jc3N1YW5jZRoOSXNzdWFuY2VDb25maWcSLwoUYW11bGV0VG9Jc3N1ZVBlclllYXISFzIVMjUwMDAwMDAwMC4wMDAwMDAwMDAwEisKGXZhbGlkYXRvclJld2FyZFBlcmNlbnRhZ2USDjIMMC4yMDAwMDAwMDAwEiUKE2FwcFJld2FyZFBlcmNlbnRhZ2USDjIMMC43NTAwMDAwMDAwEiQKEnZhbGlkYXRvclJld2FyZENhcBIOMgwwLjIwMDAwMDAwMDASKAoUZmVhdHVyZWRBcHBSZXdhcmRDYXASEDIOMTAwLjAwMDAwMDAwMDASKAoWdW5mZWF0dXJlZEFwcFJld2FyZENhcBIOMgwwLjYwMDAwMDAwMDASKwoVb3B0VmFsaWRhdG9yRmF1Y2V0Q2FwEhJSEAoOMgwyLjg1MDAwMDAwMDASoAgKGWRlY2VudHJhbGl6ZWRTeW5jaHJvbml6ZXISgghy/wcKiwEKQDZlOWZjNTBmYjk0ZTU2NzUxYjQ5ZjA5YmEyZGM4NGRhNTNhOWQ3Y2ZmMDgxMTVlYmI0ZjZiN2ExMmQwYzk5MGMSIFNwbGljZS5EZWNlbnRyYWxpemVkU3luY2hyb25pemVyGiVBbXVsZXREZWNlbnRyYWxpemVkU3luY2hyb25pemVyQ29uZmlnEtwBChVyZXF1aXJlZFN5bmNocm9uaXplcnMSwgFyvwEKVQpAYzNiYjBjNWQwNDc5OWIzZjExYmFkN2MzYzEwMjk2M2UxMTVjZjUzZGEzZTRhZmNiY2ZkOWYwNmViZDgyYjRmZhIMREEuU2V0LlR5cGVzGgNTZXQSZgoDbWFwEl9qXQpbClVCU2dsb2JhbC1kb21haW46OjEyMjAzMmUwNDUyMjU3ODgwZjc4ODRkNjBhYmZiNDJhMmM0ZDAwNzQ0ZmNmNDBjNzE3NzkzZjIzODQ5YzMyODk2OTFiEgIKABJrChJhY3RpdmVTeW5jaHJvbml6ZXISVUJTZ2xvYmFsLWRvbWFpbjo6MTIyMDMyZTA0NTIyNTc4ODBmNzg4NGQ2MGFiZmI0MmEyYzRkMDA3NDRmY2Y0MGM3MTc3OTNmMjM4NDljMzI4OTY5MWISogQKBGZlZXMSmQRylgQKfApANmU5ZmM1MGZiOTRlNTY3NTFiNDlmMDliYTJkYzg0ZGE1M2E5ZDdjZmYwODExNWViYjRmNmI3YTEyZDBjOTkwYxIgU3BsaWNlLkRlY2VudHJhbGl6ZWRTeW5jaHJvbml6ZXIaFlN5bmNocm9uaXplckZlZXNDb25maWcStwIKFWJhc2VSYXRlVHJhZmZpY0xpbWl0cxKdAnKaAgp7CkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEiBTcGxpY2UuRGVjZW50cmFsaXplZFN5bmNocm9uaXplchoVQmFzZVJhdGVUcmFmZmljTGltaXRzEhMKC2J1cnN0QW1vdW50EgQYgOowEoUBCgtidXJzdFdpbmRvdxJ2cnQKWgpAYjcwZGI4MzY5ZTFjNDYxZDVjNzBmMWM4NmY1MjZhMjllOTc3NmM2NTVlNmZmYzI1NjBmOTViMDVjY2I4Yjk0NhINREEuVGltZS5UeXBlcxoHUmVsVGltZRIWCgxtaWNyb3NlY29uZHMSBhiAsLT4CBIkChFleHRyYVRyYWZmaWNQcmljZRIPMg0xNi42NzAwMDAwMDAwEh4KGHJlYWRWc1dyaXRlU2NhbGluZ0ZhY3RvchICGAgSFgoObWluVG9wdXBBbW91bnQSBBiAtRgShgEKDHRpY2tEdXJhdGlvbhJ2cnQKWgpAYjcwZGI4MzY5ZTFjNDYxZDVjNzBmMWM4NmY1MjZhMjllOTc3NmM2NTVlNmZmYzI1NjBmOTViMDVjY2I4Yjk0NhINREEuVGltZS5UeXBlcxoHUmVsVGltZRIWCgxtaWNyb3NlY29uZHMSBhiAmJq8BBKaAgoNcGFja2FnZUNvbmZpZxKIAnKFAgpmCkA2ZTlmYzUwZmI5NGU1Njc1MWI0OWYwOWJhMmRjODRkYTUzYTlkN2NmZjA4MTE1ZWJiNGY2YjdhMTJkMGM5OTBjEhNTcGxpY2UuQW11bGV0Q29uZmlnGg1QYWNrYWdlQ29uZmlnEhIKBmFtdWxldBIIQgYwLjEuMTMSHQoRYW11bGV0TmFtZVNlcnZpY2USCEIGMC4xLjEzEhkKDWRzb0dvdmVybmFuY2USCEIGMC4xLjE3Eh0KEnZhbGlkYXRvckxpZmVjeWNsZRIHQgUwLjEuNRISCgZ3YWxsZXQSCEIGMC4xLjEzEhoKDndhbGxldFBheW1lbnRzEghCBjAuMS4xMxISCgxmdXR1cmVWYWx1ZXMSAloAEg4KCGlzRGV2TmV0EgIQATJJRFNPOjoxMjIwMzJlMDQ1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";
|
|
2
|
+
export declare const GenerateTopologyResponse: {
|
|
3
|
+
partyId: string;
|
|
4
|
+
publicKeyFingerprint: string;
|
|
5
|
+
topologyTransactions: string[];
|
|
6
|
+
multiHash: string;
|
|
7
|
+
};
|
|
8
|
+
export declare const InvalidGenerateTopologyResponse: {
|
|
9
|
+
partyId: string;
|
|
10
|
+
publicKeyFingerprint: string;
|
|
11
|
+
topologyTransactions: string[];
|
|
12
|
+
multiHash: string;
|
|
13
|
+
};
|
|
14
|
+
export declare const PrepareSubmissionResponse: {
|
|
15
|
+
preparedTransaction: string;
|
|
16
|
+
preparedTransactionHash: string;
|
|
17
|
+
hashingSchemeVersion: string;
|
|
18
|
+
hashingDetails: string;
|
|
19
|
+
};
|
|
20
|
+
export declare const WalletInitRequestData: {
|
|
21
|
+
partyHint: string;
|
|
22
|
+
publicKey: string;
|
|
23
|
+
};
|
|
24
|
+
export declare const OneStepEnablement: {
|
|
25
|
+
partyId: string;
|
|
26
|
+
commandId: string;
|
|
27
|
+
};
|
|
28
|
+
export declare const OneStepPreApprovalPrepareResponse: {
|
|
29
|
+
preparedTransaction: string;
|
|
30
|
+
preparedTransactionHash: string;
|
|
31
|
+
hashingSchemeVersion: string;
|
|
32
|
+
hashingDetails: null;
|
|
33
|
+
};
|
|
34
|
+
export declare const InvalidOneStepPreApprovalPrepareResponse: {
|
|
35
|
+
preparedTransaction: string;
|
|
36
|
+
preparedTransactionHash: string;
|
|
37
|
+
hashingSchemeVersion: string;
|
|
38
|
+
hashingDetails: null;
|
|
39
|
+
};
|
|
2
40
|
//# sourceMappingURL=resources.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../test/resources.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,0BAA0B,qz+CAC6w+C,CAAC"}
|
|
1
|
+
{"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../test/resources.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,0BAA0B,qz+CAC6w+C,CAAC;AAErz+C,eAAO,MAAM,wBAAwB;;;;;CASpC,CAAC;AAEF,eAAO,MAAM,+BAA+B;;;;;CAU3C,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;;CAOrC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;CAGjC,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;CAG7B,CAAC;AAEF,eAAO,MAAM,iCAAiC;;;;;CAM7C,CAAC;AAEF,eAAO,MAAM,wCAAwC;;;;;CAOpD,CAAC"}
|