@bitgo-beta/sdk-coin-sui 3.0.3-beta.611 → 3.0.3-beta.613
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/src/lib/mystenlab/builder/Inputs.js +2 -3
- package/dist/src/lib/mystenlab/builder/TransactionBlock.js +7 -10
- package/dist/src/lib/mystenlab/builder/TransactionDataBlock.js +13 -16
- package/dist/src/lib/mystenlab/builder/Transactions.js +3 -4
- package/dist/src/lib/mystenlab/builder/serializer.js +3 -4
- package/dist/src/lib/mystenlab/framework/framework.js +4 -7
- package/dist/src/lib/mystenlab/types/objects.js +13 -23
- package/dist/src/lib/mystenlab/types/transactions.js +16 -31
- package/dist/src/lib/utils.js +2 -3
- package/dist/src/sui.js +3 -5
- package/package.json +7 -7
|
@@ -50,7 +50,6 @@ function isSharedObjectInput(arg) {
|
|
|
50
50
|
return !!getSharedObjectInput(arg);
|
|
51
51
|
}
|
|
52
52
|
function isMutableSharedObjectInput(arg) {
|
|
53
|
-
|
|
54
|
-
return (_b = (_a = getSharedObjectInput(arg)) === null || _a === void 0 ? void 0 : _a.mutable) !== null && _b !== void 0 ? _b : false;
|
|
53
|
+
return getSharedObjectInput(arg)?.mutable ?? false;
|
|
55
54
|
}
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5wdXRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9teXN0ZW5sYWIvYnVpbGRlci9JbnB1dHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBcUNBLDRDQVFDO0FBRUQsb0RBRUM7QUFFRCxrREFFQztBQUVELGdFQUVDO0FBekRELDZDQUFvRjtBQUNwRixvQ0FBd0Y7QUFDeEYsK0JBQWdDO0FBRWhDLE1BQU0sU0FBUyxHQUFHLElBQUEsbUJBQUssRUFBQztJQUN0QixJQUFBLG9CQUFNLEVBQUMsRUFBRSxVQUFVLEVBQUUsb0JBQVksRUFBRSxDQUFDO0lBQ3BDLElBQUEsb0JBQU0sRUFBQztRQUNMLE1BQU0sRUFBRSxJQUFBLG9CQUFNLEVBQUM7WUFDYixRQUFRLEVBQUUsSUFBQSxvQkFBTSxHQUFFO1lBQ2xCLG9CQUFvQixFQUFFLElBQUEsbUJBQUssRUFBQyxDQUFDLElBQUEscUJBQU8sR0FBRSxFQUFFLElBQUEsb0JBQU0sR0FBRSxDQUFDLENBQUM7WUFDbEQsT0FBTyxFQUFFLElBQUEscUJBQU8sR0FBRTtTQUNuQixDQUFDO0tBQ0gsQ0FBQztDQUNILENBQUMsQ0FBQztBQUVVLFFBQUEsV0FBVyxHQUFHLElBQUEsb0JBQU0sRUFBQyxFQUFFLElBQUksRUFBRSxJQUFBLG1CQUFLLEVBQUMsSUFBQSxxQkFBTyxHQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDakQsUUFBQSxhQUFhLEdBQUcsSUFBQSxvQkFBTSxFQUFDLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7QUFJOUMsUUFBQSxjQUFjLEdBQUcsSUFBQSxtQkFBSyxFQUFDLENBQUMsbUJBQVcsRUFBRSxxQkFBYSxDQUFDLENBQUMsQ0FBQztBQUdyRCxRQUFBLE1BQU0sR0FBRztJQUNwQixJQUFJLENBQUMsSUFBYSxFQUFFLElBQWE7UUFDL0IsT0FBTztZQUNMLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksWUFBWSxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsYUFBTyxDQUFDLEdBQUcsQ0FBQyxJQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDekYsQ0FBQztJQUNKLENBQUM7SUFDRCxTQUFTLENBQUMsR0FBaUI7UUFDekIsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFDRCxlQUFlLENBQUMsR0FBb0I7UUFDbEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDO0lBQ3JDLENBQUM7Q0FDRixDQUFDO0FBRUYsU0FBZ0IsZ0JBQWdCLENBQUMsR0FBNkI7SUFDNUQsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM1QixPQUFPLElBQUEsMkJBQW1CLEVBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUNELElBQUksWUFBWSxJQUFJLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMvQixPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQztJQUN4QyxDQUFDO0lBQ0QsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUM7QUFDcEMsQ0FBQztBQUVELFNBQWdCLG9CQUFvQixDQUFDLEdBQW1CO0lBQ3RELE9BQU8sT0FBTyxHQUFHLEtBQUssUUFBUSxJQUFJLFFBQVEsSUFBSSxHQUFHLElBQUksUUFBUSxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDOUcsQ0FBQztBQUVELFNBQWdCLG1CQUFtQixDQUFDLEdBQW1CO0lBQ3JELE9BQU8sQ0FBQyxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3JDLENBQUM7QUFFRCxTQUFnQiwwQkFBMEIsQ0FBQyxHQUFtQjtJQUM1RCxPQUFPLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxFQUFFLE9BQU8sSUFBSSxLQUFLLENBQUM7QUFDckQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFycmF5LCBib29sZWFuLCBJbmZlciwgaW50ZWdlciwgb2JqZWN0LCBzdHJpbmcsIHVuaW9uIH0gZnJvbSAnc3VwZXJzdHJ1Y3QnO1xuaW1wb3J0IHsgbm9ybWFsaXplU3VpQWRkcmVzcywgT2JqZWN0SWQsIFNoYXJlZE9iamVjdFJlZiwgU3VpT2JqZWN0UmVmIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgYnVpbGRlciB9IGZyb20gJy4vYmNzJztcblxuY29uc3QgT2JqZWN0QXJnID0gdW5pb24oW1xuICBvYmplY3QoeyBJbW1Pck93bmVkOiBTdWlPYmplY3RSZWYgfSksXG4gIG9iamVjdCh7XG4gICAgU2hhcmVkOiBvYmplY3Qoe1xuICAgICAgb2JqZWN0SWQ6IHN0cmluZygpLFxuICAgICAgaW5pdGlhbFNoYXJlZFZlcnNpb246IHVuaW9uKFtpbnRlZ2VyKCksIHN0cmluZygpXSksXG4gICAgICBtdXRhYmxlOiBib29sZWFuKCksXG4gICAgfSksXG4gIH0pLFxuXSk7XG5cbmV4cG9ydCBjb25zdCBQdXJlQ2FsbEFyZyA9IG9iamVjdCh7IFB1cmU6IGFycmF5KGludGVnZXIoKSkgfSk7XG5leHBvcnQgY29uc3QgT2JqZWN0Q2FsbEFyZyA9IG9iamVjdCh7IE9iamVjdDogT2JqZWN0QXJnIH0pO1xuZXhwb3J0IHR5cGUgUHVyZUNhbGxBcmcgPSBJbmZlcjx0eXBlb2YgUHVyZUNhbGxBcmc+O1xuZXhwb3J0IHR5cGUgT2JqZWN0Q2FsbEFyZyA9IEluZmVyPHR5cGVvZiBPYmplY3RDYWxsQXJnPjtcblxuZXhwb3J0IGNvbnN0IEJ1aWxkZXJDYWxsQXJnID0gdW5pb24oW1B1cmVDYWxsQXJnLCBPYmplY3RDYWxsQXJnXSk7XG5leHBvcnQgdHlwZSBCdWlsZGVyQ2FsbEFyZyA9IEluZmVyPHR5cGVvZiBCdWlsZGVyQ2FsbEFyZz47XG5cbmV4cG9ydCBjb25zdCBJbnB1dHMgPSB7XG4gIFB1cmUoZGF0YTogdW5rbm93biwgdHlwZT86IHN0cmluZyk6IFB1cmVDYWxsQXJnIHtcbiAgICByZXR1cm4ge1xuICAgICAgUHVyZTogQXJyYXkuZnJvbShkYXRhIGluc3RhbmNlb2YgVWludDhBcnJheSA/IGRhdGEgOiBidWlsZGVyLnNlcih0eXBlISwgZGF0YSkudG9CeXRlcygpKSxcbiAgICB9O1xuICB9LFxuICBPYmplY3RSZWYocmVmOiBTdWlPYmplY3RSZWYpOiBPYmplY3RDYWxsQXJnIHtcbiAgICByZXR1cm4geyBPYmplY3Q6IHsgSW1tT3JPd25lZDogcmVmIH0gfTtcbiAgfSxcbiAgU2hhcmVkT2JqZWN0UmVmKHJlZjogU2hhcmVkT2JqZWN0UmVmKTogT2JqZWN0Q2FsbEFyZyB7XG4gICAgcmV0dXJuIHsgT2JqZWN0OiB7IFNoYXJlZDogcmVmIH0gfTtcbiAgfSxcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRJZEZyb21DYWxsQXJnKGFyZzogT2JqZWN0SWQgfCBPYmplY3RDYWxsQXJnKTogc3RyaW5nIHtcbiAgaWYgKHR5cGVvZiBhcmcgPT09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuIG5vcm1hbGl6ZVN1aUFkZHJlc3MoYXJnKTtcbiAgfVxuICBpZiAoJ0ltbU9yT3duZWQnIGluIGFyZy5PYmplY3QpIHtcbiAgICByZXR1cm4gYXJnLk9iamVjdC5JbW1Pck93bmVkLm9iamVjdElkO1xuICB9XG4gIHJldHVybiBhcmcuT2JqZWN0LlNoYXJlZC5vYmplY3RJZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFNoYXJlZE9iamVjdElucHV0KGFyZzogQnVpbGRlckNhbGxBcmcpOiBTaGFyZWRPYmplY3RSZWYgfCB1bmRlZmluZWQge1xuICByZXR1cm4gdHlwZW9mIGFyZyA9PT0gJ29iamVjdCcgJiYgJ09iamVjdCcgaW4gYXJnICYmICdTaGFyZWQnIGluIGFyZy5PYmplY3QgPyBhcmcuT2JqZWN0LlNoYXJlZCA6IHVuZGVmaW5lZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzU2hhcmVkT2JqZWN0SW5wdXQoYXJnOiBCdWlsZGVyQ2FsbEFyZyk6IGJvb2xlYW4ge1xuICByZXR1cm4gISFnZXRTaGFyZWRPYmplY3RJbnB1dChhcmcpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNNdXRhYmxlU2hhcmVkT2JqZWN0SW5wdXQoYXJnOiBCdWlsZGVyQ2FsbEFyZyk6IGJvb2xlYW4ge1xuICByZXR1cm4gZ2V0U2hhcmVkT2JqZWN0SW5wdXQoYXJnKT8ubXV0YWJsZSA/PyBmYWxzZTtcbn1cbiJdfQ==
|
|
@@ -23,14 +23,11 @@ const utils_1 = require("./utils");
|
|
|
23
23
|
function createTransactionResult(index) {
|
|
24
24
|
const baseResult = { kind: 'Result', index };
|
|
25
25
|
const nestedResults = [];
|
|
26
|
-
const nestedResultFor = (resultIndex) => {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
resultIndex,
|
|
32
|
-
}));
|
|
33
|
-
};
|
|
26
|
+
const nestedResultFor = (resultIndex) => (nestedResults[resultIndex] ?? (nestedResults[resultIndex] = {
|
|
27
|
+
kind: 'NestedResult',
|
|
28
|
+
index,
|
|
29
|
+
resultIndex,
|
|
30
|
+
}));
|
|
34
31
|
return new Proxy(baseResult, {
|
|
35
32
|
set() {
|
|
36
33
|
throw new Error('The transaction result is a proxy, and does not support setting properties directly');
|
|
@@ -187,7 +184,7 @@ class TransactionBlock {
|
|
|
187
184
|
const id = (0, Inputs_1.getIdFromCallArg)(value);
|
|
188
185
|
// deduplicate
|
|
189
186
|
const inserted = __classPrivateFieldGet(this, _TransactionBlock_blockData, "f").inputs.find((i) => i.type === 'object' && id === (0, Inputs_1.getIdFromCallArg)(i.value));
|
|
190
|
-
return inserted
|
|
187
|
+
return inserted ?? this.input('object', value);
|
|
191
188
|
}
|
|
192
189
|
/**
|
|
193
190
|
* Add a new non-object input to the transaction.
|
|
@@ -255,4 +252,4 @@ class TransactionBlock {
|
|
|
255
252
|
}
|
|
256
253
|
}
|
|
257
254
|
exports.TransactionBlock = TransactionBlock;
|
|
258
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNhY3Rpb25CbG9jay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbXlzdGVubGFiL2J1aWxkZXIvVHJhbnNhY3Rpb25CbG9jay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQSxxQ0FBc0M7QUFDdEMsNkNBQXVDO0FBQ3ZDLG9DQUFrRDtBQUNsRCxpREFBMkc7QUFDM0cscUNBQW1GO0FBQ25GLGlFQUE0RjtBQUM1RixtQ0FBaUM7QUFJakMsU0FBUyx1QkFBdUIsQ0FBQyxLQUFhO0lBQzVDLE1BQU0sVUFBVSxHQUF3QixFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFFbEUsTUFBTSxhQUFhLEdBQTBCLEVBQUUsQ0FBQztJQUNoRCxNQUFNLGVBQWUsR0FBRyxDQUFDLFdBQW1CLEVBQXVCLEVBQUU7O1FBQ25FLE9BQUEsT0FBQyxhQUFhLENBQUMsV0FBVyxxQ0FBekIsYUFBYSxDQUFDLFdBQVcsSUFBTTtZQUM5QixJQUFJLEVBQUUsY0FBYztZQUNwQixLQUFLO1lBQ0wsV0FBVztTQUNaLEVBQUMsQ0FBQTtLQUFBLENBQUM7SUFFTCxPQUFPLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRTtRQUMzQixHQUFHO1lBQ0QsTUFBTSxJQUFJLEtBQUssQ0FBQyxxRkFBcUYsQ0FBQyxDQUFDO1FBQ3pHLENBQUM7UUFDRCw2RUFBNkU7UUFDN0UsNEVBQTRFO1FBQzVFLG1DQUFtQztRQUNuQyxHQUFHLENBQUMsTUFBTSxFQUFFLFFBQVE7WUFDbEIseUVBQXlFO1lBQ3pFLElBQUksUUFBUSxJQUFJLE1BQU0sRUFBRSxDQUFDO2dCQUN2QixPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQ3ZDLENBQUM7WUFFRCx5QkFBeUI7WUFDekIsSUFBSSxRQUFRLEtBQUssTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNq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Q0FBQyxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFDRCxRQUFRLENBQUMsR0FBRyxJQUFtRDtRQUM3RCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsMkJBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFDRCxlQUFlLENBQUMsR0FBRyxJQUEwRDtRQUMzRSxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsMkJBQVksQ0FBQyxlQUFlLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFDRCxXQUFXLENBQUMsR0FBRyxJQUFzRDtRQUNuRSxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsMkJBQVksQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRDs7Ozs7Ozs7Ozs7T0FXRztJQUNILFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsdUJBQUEsSUFBSSxtQ0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELDBDQUEwQztJQUMxQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsbUJBQW1CLEtBQW1CLEVBQUU7UUFDcEQsT0FBTyx1QkFBQSxJQUFJLG1DQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxnQ0FBZ0M7SUFDaEMsS0FBSyxDQUFDLFNBQVM7UUFDYixPQUFPLHVCQUFBLElBQUksbUNBQVcsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0NBQ0Y7QUFwTkQsNENBb05DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZnJvbUI2NCB9IGZyb20gJ0BteXN0ZW4vYmNzJztcbmltcG9ydCB7IGlzLCBtYXNrIH0gZnJvbSAnc3VwZXJzdHJ1Y3QnO1xuaW1wb3J0IHsgT2JqZWN0SWQsIFN1aU9iamVjdFJlZiB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9ucywgVHJhbnNhY3Rpb25Bcmd1bWVudCwgVHJhbnNhY3Rpb25UeXBlLCBUcmFuc2FjdGlvbkJsb2NrSW5wdXQgfSBmcm9tICcuL1RyYW5zYWN0aW9ucyc7XG5pbXBvcnQgeyBCdWlsZGVyQ2FsbEFyZywgZ2V0SWRGcm9tQ2FsbEFyZywgSW5wdXRzLCBPYmplY3RDYWxsQXJnIH0gZnJvbSAnLi9JbnB1dHMnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25CbG9ja0RhdGFCdWlsZGVyLCBUcmFuc2FjdGlvbkV4cGlyYXRpb24gfSBmcm9tICcuL1RyYW5zYWN0aW9uRGF0YUJsb2NrJztcbmltcG9ydCB7IGNyZWF0ZSB9IGZyb20gJy4vdXRpbHMnO1xuXG50eXBlIFRyYW5zYWN0aW9uUmVzdWx0ID0gVHJhbnNhY3Rpb25Bcmd1bWVudCAmIFRyYW5zYWN0aW9uQXJndW1lbnRbXTtcblxuZnVuY3Rpb24gY3JlYXRlVHJhbnNhY3Rpb25SZXN1bHQoaW5kZXg6IG51bWJlcik6IFRyYW5zYWN0aW9uUmVzdWx0IHtcbiAgY29uc3QgYmFzZVJlc3VsdDogVHJhbnNhY3Rpb25Bcmd1bWVudCA9IHsga2luZDogJ1Jlc3VsdCcsIGluZGV4IH07XG5cbiAgY29uc3QgbmVzdGVkUmVzdWx0czogVHJhbnNhY3Rpb25Bcmd1bWVudFtdID0gW107XG4gIGNvbnN0IG5lc3RlZFJlc3VsdEZvciA9IChyZXN1bHRJbmRleDogbnVtYmVyKTogVHJhbnNhY3Rpb25Bcmd1bWVudCA9PlxuICAgIChuZXN0ZWRSZXN1bHRzW3Jlc3VsdEluZGV4XSA/Pz0ge1xuICAgICAga2luZDogJ05lc3RlZFJlc3VsdCcsXG4gICAgICBpbmRleCxcbiAgICAgIHJlc3VsdEluZGV4LFxuICAgIH0pO1xuXG4gIHJldHVybiBuZXcgUHJveHkoYmFzZVJlc3VsdCwge1xuICAgIHNldCgpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIHRyYW5zYWN0aW9uIHJlc3VsdCBpcyBhIHByb3h5LCBhbmQgZG9lcyBub3Qgc3VwcG9ydCBzZXR0aW5nIHByb3BlcnRpZXMgZGlyZWN0bHknKTtcbiAgICB9LFxuICAgIC8vIFRPRE86IEluc3RlYWQgb2YgbWFraW5nIHRoaXMgcmV0dXJuIGEgY29uY3JldGUgYXJndW1lbnQsIHdlIHNob3VsZCBpZGVhbGx5XG4gICAgLy8gbWFrZSBpdCByZWZlcmVuY2UtYmFzZWQgKHNvIHRoYXQgdGhpcyBnZXRzIHJlc29sdmVkIGF0IGJ1aWxkLXRpbWUpLCB3aGljaFxuICAgIC8vIGFsbG93cyByZS1vcmRlcmluZyB0cmFuc2FjdGlvbnMuXG4gICAgZ2V0KHRhcmdldCwgcHJvcGVydHkpIHtcbiAgICAgIC8vIFRoaXMgYWxsb3dzIHRoaXMgdHJhbnNhY3Rpb24gYXJndW1lbnQgdG8gYmUgdXNlZCBpbiB0aGUgc2luZ3VsYXIgZm9ybTpcbiAgICAgIGlmIChwcm9wZXJ0eSBpbiB0YXJnZXQpIHtcbiAgICAgICAgcmV0dXJuIFJlZmxlY3QuZ2V0KHRhcmdldCwgcHJvcGVydHkpO1xuICAgICAgfVxuXG4gICAgICAvLyBTdXBwb3J0IGRlc3RydWN0dXJpbmc6XG4gICAgICBpZiAocHJvcGVydHkgPT09IFN5bWJvbC5pdGVyYXRvcikge1xuICAgICAgICByZXR1cm4gZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICBsZXQgaSA9IDA7XG4gICAgICAgICAgd2hpbGUgKHRydWUpIHtcbiAgICAgICAgICAgIHlpZWxkIG5lc3RlZFJlc3VsdEZvcihpKTtcbiAgICAgICAgICAgIGkrKztcbiAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlb2YgcHJvcGVydHkgPT09ICdzeW1ib2wnKSByZXR1cm47XG5cbiAgICAgIGNvbnN0IHJlc3VsdEluZGV4ID0gcGFyc2VJbnQocHJvcGVydHksIDEwKTtcbiAgICAgIGlmIChOdW1iZXIuaXNOYU4ocmVzdWx0SW5kZXgpIHx8IHJlc3VsdEluZGV4IDwgMCkgcmV0dXJuO1xuICAgICAgcmV0dXJuIG5lc3RlZFJlc3VsdEZvcihyZXN1bHRJbmRleCk7XG4gICAgfSxcbiAgfSkgYXMgVHJhbnNhY3Rpb25SZXN1bHQ7XG59XG5cbmNvbnN0IFRSQU5TQUNUSU9OX0JSQU5EID0gU3ltYm9sLmZvcignQG15c3Rlbi90cmFuc2FjdGlvbicpO1xuXG4vLyBUaGUgbWF4aW11bSBudW1iZXIgb2YgZ2FzIG9iamVjdHMgdGhhdCBjYW4gYmUgc2VsZWN0ZWQgZm9yIG9uZSB0cmFuc2FjdGlvbi5cbmNvbnN0IE1BWF9HQVNfT0JKRUNUUyA9IDI1NjtcblxuLy8gVGhlIG1heGltdW0gZ2FzIHRoYXQgaXMgYWxsb3dlZC5cbmNvbnN0IE1BWF9HQVMgPSAxMDAwMDAwMDAwO1xuXG4vLyBBIGd1ZXNzIGFib3V0IGhvdyBtdWNoIG92ZXJoZWFkIGVhY2ggY29pbiBwcm92aWRlcyBmb3IgZ2FzIGNhbGN1bGF0aW9ucy5cbi8vIEB0cy1pZ25vcmVcbmNvbnN0IEdBU19PVkVSSEVBRF9QRVJfQ09JTiA9IDEwbjtcblxuaW50ZXJmYWNlIEJ1aWxkT3B0aW9ucyB7XG4gIG9ubHlUcmFuc2FjdGlvbktpbmQ/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFRyYW5zYWN0aW9uIEJ1aWxkZXJcbiAqL1xuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uQmxvY2sge1xuICAvKiogUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIG9iamVjdCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgVHJhbnNhY3Rpb24gYnVpbGRlciBjbGFzcy4gKi9cbiAgc3RhdGljIGlzKG9iajogdW5rbm93bik6IG9iaiBpcyBUcmFuc2FjdGlvbkJsb2NrIHtcbiAgICByZXR1cm4gISFvYmogJiYgdHlwZW9mIG9iaiA9PT0gJ29iamVjdCcgJiYgKG9iaiBhcyBhbnkpW1RSQU5TQUNUSU9OX0JSQU5EXSA9PT0gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyBmcm9tIGEgc2VyaWFsaXplIHRyYW5zYWN0aW9uIGtpbmQgKGJ1aWx0IHdpdGggYGJ1aWxkKHsgb25seVRyYW5zYWN0aW9uS2luZDogdHJ1ZSB9KWApIHRvIGEgYFRyYW5zYWN0aW9uYCBjbGFzcy5cbiAgICogU3VwcG9ydHMgZWl0aGVyIGEgYnl0ZSBhcnJheSwgb3IgYmFzZTY0LWVuY29kZWQgYnl0ZXMuXG4gICAqL1xuICBzdGF0aWMgZnJvbUtpbmQoc2VyaWFsaXplZDogc3RyaW5nIHwgVWludDhBcnJheSkge1xuICAgIGNvbnN0IHR4ID0gbmV3IFRyYW5zYWN0aW9uQmxvY2soKTtcblxuICAgIHR4LiNibG9ja0RhdGEgPSBUcmFuc2FjdGlvbkJsb2NrRGF0YUJ1aWxkZXIuZnJvbUtpbmRCeXRlcyhcbiAgICAgIHR5cGVvZiBzZXJpYWxpemVkID09PSAnc3RyaW5nJyA/IGZyb21CNjQoc2VyaWFsaXplZCkgOiBzZXJpYWxpemVkXG4gICAgKTtcblxuICAgIHJldHVybiB0eDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyBmcm9tIGEgc2VyaWFsaXplZCB0cmFuc2FjdGlvbiBmb3JtYXQgdG8gYSBgVHJhbnNhY3Rpb25gIGNsYXNzLlxuICAgKiBUaGVyZSBhcmUgdHdvIHN1cHBvcnRlZCBzZXJpYWxpemVkIGZvcm1hdHM6XG4gICAqIC0gQSBzdHJpbmcgcmV0dXJuZWQgZnJvbSBgVHJhbnNhY3Rpb24jc2VyaWFsaXplYC4gVGhlIHNlcmlhbGl6ZWQgZm9ybWF0IG11c3QgYmUgY29tcGF0aWJsZSwgb3IgaXQgd2lsbCB0aHJvdyBhbiBlcnJvci5cbiAgICogLSBBIGJ5dGUgYXJyYXkgKG9yIGJhc2U2NC1lbmNvZGVkIGJ5dGVzKSBjb250YWluaW5nIEJDUyB0cmFuc2FjdGlvbiBkYXRhLlxuICAgKi9cbiAgc3RhdGljIGZyb20oc2VyaWFsaXplZDogc3RyaW5nIHwgVWludDhBcnJheSkge1xuICAgIGNvbnN0IHR4ID0gbmV3IFRyYW5zYWN0aW9uQmxvY2soKTtcblxuICAgIC8vIENoZWNrIGZvciBieXRlczpcbiAgICBpZiAodHlwZW9mIHNlcmlhbGl6ZWQgIT09ICdzdHJpbmcnIHx8ICFzZXJpYWxpemVkLnN0YXJ0c1dpdGgoJ3snKSkge1xuICAgICAgdHguI2Jsb2NrRGF0YSA9IFRyYW5zYWN0aW9uQmxvY2tEYXRhQnVpbGRlci5mcm9tQnl0ZXMoXG4gICAgICAgIHR5cGVvZiBzZXJpYWxpemVkID09PSAnc3RyaW5nJyA/IGZyb21CNjQoc2VyaWFsaXplZCkgOiBzZXJpYWxpemVkXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0eC4jYmxvY2tEYXRhID0gVHJhbnNhY3Rpb25CbG9ja0RhdGFCdWlsZGVyLnJlc3RvcmUoSlNPTi5wYXJzZShzZXJpYWxpemVkKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHR4O1xuICB9XG5cbiAgLyoqIEEgaGVscGVyIHRvIHJldHJpZXZlIHRoZSBUcmFuc2FjdGlvbiBidWlsZGVyIGBUcmFuc2FjdGlvbnNgICovXG4gIHN0YXRpYyBnZXQgVHJhbnNhY3Rpb25zKCkge1xuICAgIHJldHVybiBUcmFuc2FjdGlvbnM7XG4gIH1cblxuICAvKiogQSBoZWxwZXIgdG8gcmV0cmlldmUgdGhlIFRyYW5zYWN0aW9uIGJ1aWxkZXIgYElucHV0c2AgKi9cbiAgc3RhdGljIGdldCBJbnB1dHMoKSB7XG4gICAgcmV0dXJuIElucHV0cztcbiAgfVxuXG4gIHNldFNlbmRlcihzZW5kZXI6IHN0cmluZykge1xuICAgIHRoaXMuI2Jsb2NrRGF0YS5zZW5kZXIgPSBzZW5kZXI7XG4gIH1cbiAgLyoqXG4gICAqIFNldHMgdGhlIHNlbmRlciBvbmx5IGlmIGl0IGhhcyBub3QgYWxyZWFkeSBiZWVuIHNldC5cbiAgICogVGhpcyBpcyB1c2VmdWwgZm9yIHNwb25zb3JlZCB0cmFuc2FjdGlvbiBmbG93cyB3aGVyZSB0aGUgc2VuZGVyIG1heSBub3QgYmUgdGhlIHNhbWUgYXMgdGhlIHNpZ25lciBhZGRyZXNzLlxuICAgKi9cbiAgc2V0U2VuZGVySWZOb3RTZXQoc2VuZGVyOiBzdHJpbmcpIHtcbiAgICBpZiAoIXRoaXMuI2Jsb2NrRGF0YS5zZW5kZXIpIHtcbiAgICAgIHRoaXMuI2Jsb2NrRGF0YS5zZW5kZXIgPSBzZW5kZXI7XG4gICAgfVxuICB9XG4gIHNldEV4cGlyYXRpb24oZXhwaXJhdGlvbj86IFRyYW5zYWN0aW9uRXhwaXJhdGlvbikge1xuICAgIHRoaXMuI2Jsb2NrRGF0YS5leHBpcmF0aW9uID0gZXhwaXJhdGlvbjtcbiAgfVxuICBzZXRHYXNQcmljZShwcmljZTogbnVtYmVyIHwgYmlnaW50KSB7XG4gICAgdGhpcy4jYmxvY2tEYXRhLmdhc0NvbmZpZy5wcmljZSA9IFN0cmluZyhwcmljZSk7XG4gIH1cbiAgc2V0R2FzQnVkZ2V0KGJ1ZGdldDogbnVtYmVyIHwgYmlnaW50KSB7XG4gICAgdGhpcy4jYmxvY2tEYXRhLmdhc0NvbmZpZy5idWRnZXQgPSBTdHJpbmcoYnVkZ2V0KTtcbiAgfVxuICBzZXRHYXNPd25lcihvd25lcjogc3RyaW5nKSB7XG4gICAgdGhpcy4jYmxvY2tEYXRhLmdhc0NvbmZpZy5vd25lciA9IG93bmVyO1xuICB9XG4gIHNldEdhc1BheW1lbnQocGF5bWVudHM6IFN1aU9iamVjdFJlZltdKSB7XG4gICAgaWYgKHBheW1lbnRzLmxlbmd0aCA+PSBNQVhfR0FTX09CSkVDVFMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgUGF5bWVudCBvYmplY3RzIGV4Y2VlZCBtYXhpbXVtIGFtb3VudCAke01BWF9HQVNfT0JKRUNUU31gKTtcbiAgICB9XG4gICAgdGhpcy4jYmxvY2tEYXRhLmdhc0NvbmZpZy5wYXltZW50ID0gcGF5bWVudHMubWFwKChwYXltZW50KSA9PiBtYXNrKHBheW1lbnQsIFN1aU9iamVjdFJlZikpO1xuICB9XG5cbiAgI2Jsb2NrRGF0YTogVHJhbnNhY3Rpb25CbG9ja0RhdGFCdWlsZGVyO1xuICAvKiogR2V0IGEgc25hcHNob3Qgb2YgdGhlIHRyYW5zYWN0aW9uIGRhdGEsIGluIEpTT04gZm9ybTogKi9cbiAgZ2V0IGJsb2NrRGF0YSgpIHtcbiAgICByZXR1cm4gdGhpcy4jYmxvY2tEYXRhLnNuYXBzaG90KCk7XG4gIH1cblxuICAvLyBVc2VkIHRvIGJyYW5kIHRyYW5zYWN0aW9uIGNsYXNzZXMgc28gdGhhdCB0aGV5IGNhbiBiZSBpZGVudGlmaWVkLCBldmVuIGJldHdlZW4gbXVsdGlwbGUgY29waWVzXG4gIC8vIG9mIHRoZSBidWlsZGVyLlxuICBnZXQgW1RSQU5TQUNUSU9OX0JSQU5EXSgpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHRyYW5zYWN0aW9uPzogVHJhbnNhY3Rpb25CbG9jaykge1xuICAgIHRoaXMuI2Jsb2NrRGF0YSA9IG5ldyBUcmFuc2FjdGlvbkJsb2NrRGF0YUJ1aWxkZXIodHJhbnNhY3Rpb24gPyB0cmFuc2FjdGlvbi4jYmxvY2tEYXRhIDogdW5kZWZpbmVkKTtcbiAgfVxuXG4gIC8qKiBSZXR1cm5zIGFuIGFyZ3VtZW50IGZvciB0aGUgZ2FzIGNvaW4sIHRvIGJlIHVzZWQgaW4gYSB0cmFuc2FjdGlvbi4gKi9cbiAgZ2V0IGdhcygpOiBUcmFuc2FjdGlvbkFyZ3VtZW50IHtcbiAgICByZXR1cm4geyBraW5kOiAnR2FzQ29pbicgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEeW5hbWljYWxseSBjcmVhdGUgYSBuZXcgaW5wdXQsIHdoaWNoIGlzIHNlcGFyYXRlIGZyb20gdGhlIGBpbnB1dGAuIFRoaXMgaXMgaW1wb3J0YW50XG4gICAqIGZvciBnZW5lcmF0ZWQgY2xpZW50cyB0byBiZSBhYmxlIHRvIGRlZmluZSB1bmlxdWUgaW5wdXRzIHRoYXQgYXJlIG5vbi1vdmVybGFwcGluZyB3aXRoIHRoZVxuICAgKiBkZWZpbmVkIGlucHV0cy5cbiAgICpcbiAgICogRm9yIGBVaW50OEFycmF5YCB0eXBlIGF1dG9tYXRpY2FsbHkgY29udmVydCB0aGUgaW5wdXQgaW50byBhIGBQdXJlYCBDYWxsQXJnLCBzaW5jZSB0aGlzXG4gICAqIGlzIHRoZSBmb3JtYXQgcmVxdWlyZWQgZm9yIGN1c3RvbSBzZXJpYWxpemF0aW9uLlxuICAgKlxuICAgKi9cbiAgaW5wdXQodHlwZTogJ29iamVjdCcgfCAncHVyZScsIHZhbHVlPzogdW5rbm93bikge1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy4jYmxvY2tEYXRhLmlucHV0cy5sZW5ndGg7XG4gICAgY29uc3QgaW5wdXQgPSBjcmVhdGUoXG4gICAgICB7XG4gICAgICAgIGtpbmQ6ICdJbnB1dCcsXG4gICAgICAgIC8vIGJpZ2ludHMgY2FuJ3QgYmUgc2VyaWFsaXplZCB0byBKU09OLCBzbyBqdXN0IHN0cmluZy1jb252ZXJ0IHRoZW0gaGVyZTpcbiAgICAgICAgdmFsdWU6IHR5cGVvZiB2YWx1ZSA9PT0gJ2JpZ2ludCcgPyBTdHJpbmcodmFsdWUpIDogdmFsdWUsXG4gICAgICAgIGluZGV4LFxuICAgICAgICB0eXBlLFxuICAgICAgfSxcbiAgICAgIFRyYW5zYWN0aW9uQmxvY2tJbnB1dFxuICAgICk7XG4gICAgdGhpcy4jYmxvY2tEYXRhLmlucHV0cy5wdXNoKGlucHV0KTtcbiAgICByZXR1cm4gaW5wdXQ7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgbmV3IG9iamVjdCBpbnB1dCB0byB0aGUgdHJhbnNhY3Rpb24uXG4gICAqL1xuICBvYmplY3QodmFsdWU6IE9iamVjdElkIHwgT2JqZWN0Q2FsbEFyZykge1xuICAgIGNvbnN0IGlkID0gZ2V0SWRGcm9tQ2FsbEFyZyh2YWx1ZSk7XG4gICAgLy8gZGVkdXBsaWNhdGVcbiAgICBjb25zdCBpbnNlcnRlZCA9IHRoaXMuI2Jsb2NrRGF0YS5pbnB1dHMuZmluZCgoaSkgPT4gaS50eXBlID09PSAnb2JqZWN0JyAmJiBpZCA9PT0gZ2V0SWRGcm9tQ2FsbEFyZyhpLnZhbHVlKSk7XG4gICAgcmV0dXJuIGluc2VydGVkID8/IHRoaXMuaW5wdXQoJ29iamVjdCcsIHZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBuZXcgbm9uLW9iamVjdCBpbnB1dCB0byB0aGUgdHJhbnNhY3Rpb24uXG4gICAqL1xuICBwdXJlKFxuICAgIC8qKlxuICAgICAqIFRoZSBwdXJlIHZhbHVlIHRoYXQgd2lsbCBiZSB1c2VkIGFzIHRoZSBpbnB1dCB2YWx1ZS4gSWYgdGhpcyBpcyBhIFVpbnQ4QXJyYXksIHRoZW4gdGhlIHZhbHVlXG4gICAgICogaXMgYXNzdW1lZCB0byBiZSByYXcgYnl0ZXMsIGFuZCB3aWxsIGJlIHVzZWQgZGlyZWN0bHkuXG4gICAgICovXG4gICAgdmFsdWU6IHVua25vd24sXG4gICAgLyoqXG4gICAgICogVGhlIEJDUyB0eXBlIHRvIHNlcmlhbGl6ZSB0aGUgdmFsdWUgaW50by4gSWYgbm90IHByb3ZpZGVkLCB0aGUgdHlwZSB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgZGV0ZXJtaW5lZFxuICAgICAqIGJhc2VkIG9uIGhvdyB0aGUgaW5wdXQgaXMgdXNlZC5cbiAgICAgKi9cbiAgICB0eXBlPzogc3RyaW5nXG4gICkge1xuICAgIC8vIFRPRE86IHdlIGNhbiBhbHNvIGRvIHNvbWUgZGVkdXBsaWNhdGlvbiBoZXJlXG4gICAgcmV0dXJuIHRoaXMuaW5wdXQoXG4gICAgICAncHVyZScsXG4gICAgICB2YWx1ZSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkgPyBJbnB1dHMuUHVyZSh2YWx1ZSkgOiB0eXBlID8gSW5wdXRzLlB1cmUodmFsdWUsIHR5cGUpIDogdmFsdWVcbiAgICApO1xuICB9XG5cbiAgLyoqIEFkZCBhIHRyYW5zYWN0aW9uIHRvIHRoZSB0cmFuc2FjdGlvbiBibG9jay4gKi9cbiAgYWRkKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvblR5cGUpIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuI2Jsb2NrRGF0YS50cmFuc2FjdGlvbnMucHVzaCh0cmFuc2FjdGlvbik7XG4gICAgcmV0dXJuIGNyZWF0ZVRyYW5zYWN0aW9uUmVzdWx0KGluZGV4IC0gMSk7XG4gIH1cblxuICAvLyBNZXRob2Qgc2hvcnRoYW5kczpcblxuICBzcGxpdENvaW5zKC4uLmFyZ3M6IFBhcmFtZXRlcnM8KHR5cGVvZiBUcmFuc2FjdGlvbnMpWydTcGxpdENvaW5zJ10+KSB7XG4gICAgcmV0dXJuIHRoaXMuYWRkKFRyYW5zYWN0aW9ucy5TcGxpdENvaW5zKC4uLmFyZ3MpKTtcbiAgfVxuICBtZXJnZUNvaW5zKC4uLmFyZ3M6IFBhcmFtZXRlcnM8KHR5cGVvZiBUcmFuc2FjdGlvbnMpWydNZXJnZUNvaW5zJ10+KSB7XG4gICAgcmV0dXJuIHRoaXMuYWRkKFRyYW5zYWN0aW9ucy5NZXJnZUNvaW5zKC4uLmFyZ3MpKTtcbiAgfVxuICBwdWJsaXNoKC4uLmFyZ3M6IFBhcmFtZXRlcnM8KHR5cGVvZiBUcmFuc2FjdGlvbnMpWydQdWJsaXNoJ10+KSB7XG4gICAgcmV0dXJuIHRoaXMuYWRkKFRyYW5zYWN0aW9ucy5QdWJsaXNoKC4uLmFyZ3MpKTtcbiAgfVxuICBtb3ZlQ2FsbCguLi5hcmdzOiBQYXJhbWV0ZXJzPCh0eXBlb2YgVHJhbnNhY3Rpb25zKVsnTW92ZUNhbGwnXT4pIHtcbiAgICByZXR1cm4gdGhpcy5hZGQoVHJhbnNhY3Rpb25zLk1vdmVDYWxsKC4uLmFyZ3MpKTtcbiAgfVxuICB0cmFuc2Zlck9iamVjdHMoLi4uYXJnczogUGFyYW1ldGVyczwodHlwZW9mIFRyYW5zYWN0aW9ucylbJ1RyYW5zZmVyT2JqZWN0cyddPikge1xuICAgIHJldHVybiB0aGlzLmFkZChUcmFuc2FjdGlvbnMuVHJhbnNmZXJPYmplY3RzKC4uLmFyZ3MpKTtcbiAgfVxuICBtYWtlTW92ZVZlYyguLi5hcmdzOiBQYXJhbWV0ZXJzPCh0eXBlb2YgVHJhbnNhY3Rpb25zKVsnTWFrZU1vdmVWZWMnXT4pIHtcbiAgICByZXR1cm4gdGhpcy5hZGQoVHJhbnNhY3Rpb25zLk1ha2VNb3ZlVmVjKC4uLmFyZ3MpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXJpYWxpemUgdGhlIHRyYW5zYWN0aW9uIHRvIGEgc3RyaW5nIHNvIHRoYXQgaXQgY2FuIGJlIHNlbnQgdG8gYSBzZXBhcmF0ZSBjb250ZXh0LlxuICAgKiBUaGlzIGlzIGRpZmZlcmVudCBmcm9tIGBidWlsZGAgaW4gdGhhdCBpdCBkb2VzIG5vdCBzZXJpYWxpemUgdG8gQkNTIGJ5dGVzLCBhbmQgaW5zdGVhZFxuICAgKiB1c2VzIGEgc2VwYXJhdGUgZm9ybWF0IHRoYXQgaXMgdW5pcXVlIHRvIHRoZSB0cmFuc2FjdGlvbiBidWlsZGVyLiBUaGlzIGFsbG93c1xuICAgKiB1cyB0byBzZXJpYWxpemUgcGFydGlhbGx5LWNvbXBsZXRlIHRyYW5zYWN0aW9ucywgdGhhdCBjYW4gdGhlbiBiZSBjb21wbGV0ZWQgYW5kXG4gICAqIGJ1aWx0IGluIGEgc2VwYXJhdGUgY29udGV4dC5cbiAgICpcbiAgICogRm9yIGV4YW1wbGUsIGEgZGFwcCBjYW4gY29uc3RydWN0IGEgdHJhbnNhY3Rpb24sIGJ1dCBub3QgcHJvdmlkZSBnYXMgb2JqZWN0c1xuICAgKiBvciBhIGdhcyBidWRnZXQuIFRoZSB0cmFuc2FjdGlvbiB0aGVuIGNhbiBiZSBzZW50IHRvIHRoZSB3YWxsZXQsIHdoZXJlIHRoaXNcbiAgICogaW5mb3JtYXRpb24gaXMgYXV0b21hdGljYWxseSBmaWxsZWQgaW4gKGUuZy4gYnkgcXVlcnlpbmcgZm9yIGNvaW4gb2JqZWN0c1xuICAgKiBhbmQgcGVyZm9ybWluZyBhIGRyeSBydW4pLlxuICAgKi9cbiAgc2VyaWFsaXplKCkge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh0aGlzLiNibG9ja0RhdGEuc25hcHNob3QoKSk7XG4gIH1cblxuICAvKiogQnVpbGQgdGhlIHRyYW5zYWN0aW9uIHRvIEJDUyBieXRlcy4gKi9cbiAgYXN5bmMgYnVpbGQoeyBvbmx5VHJhbnNhY3Rpb25LaW5kIH06IEJ1aWxkT3B0aW9ucyA9IHt9KTogUHJvbWlzZTxVaW50OEFycmF5PiB7XG4gICAgcmV0dXJuIHRoaXMuI2Jsb2NrRGF0YS5idWlsZCh7IG9ubHlUcmFuc2FjdGlvbktpbmQgfSk7XG4gIH1cblxuICAvKiogRGVyaXZlIHRyYW5zYWN0aW9uIGRpZ2VzdCAqL1xuICBhc3luYyBnZXREaWdlc3QoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy4jYmxvY2tEYXRhLmdldERpZ2VzdCgpO1xuICB9XG59XG4iXX0=
|
|
255
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNhY3Rpb25CbG9jay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbXlzdGVubGFiL2J1aWxkZXIvVHJhbnNhY3Rpb25CbG9jay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQSxxQ0FBc0M7QUFDdEMsNkNBQXVDO0FBQ3ZDLG9DQUFrRDtBQUNsRCxpREFBMkc7QUFDM0cscUNBQW1GO0FBQ25GLGlFQUE0RjtBQUM1RixtQ0FBaUM7QUFJakMsU0FBUyx1QkFBdUIsQ0FBQyxLQUFhO0lBQzVDLE1BQU0sVUFBVSxHQUF3QixFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFFbEUsTUFBTSxhQUFhLEdBQTBCLEVBQUUsQ0FBQztJQUNoRCxNQUFNLGVBQWUsR0FBRyxDQUFDLFdBQW1CLEVBQXVCLEVBQUUsQ0FDbkUsQ0FBQyxhQUFhLENBQUMsV0FBVyxNQUF6QixhQUFhLENBQUMsV0FBVyxJQUFNO1FBQzlCLElBQUksRUFBRSxjQUFjO1FBQ3BCLEtBQUs7UUFDTCxXQUFXO0tBQ1osRUFBQyxDQUFDO0lBRUwsT0FBTyxJQUFJLEtBQUssQ0FBQyxVQUFVLEVBQUU7UUFDM0IsR0FBRztZQUNELE1BQU0sSUFBSSxLQUFLLENBQUMscUZBQXFGLENBQUMsQ0FBQztRQUN6RyxDQUFDO1FBQ0QsNkVBQTZFO1FBQzdFLDRFQUE0RTtRQUM1RSxtQ0FBbUM7UUFDbkMsR0FBRyxDQUFDLE1BQU0sRUFBRSxRQUFRO1lBQ2xCLHlFQUF5RTtZQUN6RSxJQUFJLFFBQVEsSUFBSSxNQUFNLEVBQUUsQ0FBQztnQkFDdkIsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQztZQUN2QyxDQUFDO1lBRUQseUJBQXlCO1lBQ3pCLElBQUksUUFBUSxLQUFLLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDakMsT0FBTyxRQUFRLENBQUM7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QUM7SUFDakQsQ0FBQztJQUNELFFBQVEsQ0FBQyxHQUFHLElBQW1EO1FBQzdELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQywyQkFBWSxDQUFDLFFBQVEsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUNELGVBQWUsQ0FBQyxHQUFHLElBQTBEO1FBQzNFLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQywyQkFBWSxDQUFDLGVBQWUsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUNELFdBQVcsQ0FBQyxHQUFHLElBQXNEO1FBQ25FLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQywyQkFBWSxDQUFDLFdBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVEOzs7Ozs7Ozs7OztPQVdHO0lBQ0gsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyx1QkFBQSxJQUFJLG1DQUFXLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsMENBQTBDO0lBQzFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxtQkFBbUIsS0FBbUIsRUFBRTtRQUNwRCxPQUFPLHVCQUFBLElBQUksbUNBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxtQkFBbUIsRUFBRSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELGdDQUFnQztJQUNoQyxLQUFLLENBQUMsU0FBUztRQUNiLE9BQU8sdUJBQUEsSUFBSSxtQ0FBVyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3JDLENBQUM7Q0FDRjtBQXBORCw0Q0FvTkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmcm9tQjY0IH0gZnJvbSAnQG15c3Rlbi9iY3MnO1xuaW1wb3J0IHsgaXMsIG1hc2sgfSBmcm9tICdzdXBlcnN0cnVjdCc7XG5pbXBvcnQgeyBPYmplY3RJZCwgU3VpT2JqZWN0UmVmIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25zLCBUcmFuc2FjdGlvbkFyZ3VtZW50LCBUcmFuc2FjdGlvblR5cGUsIFRyYW5zYWN0aW9uQmxvY2tJbnB1dCB9IGZyb20gJy4vVHJhbnNhY3Rpb25zJztcbmltcG9ydCB7IEJ1aWxkZXJDYWxsQXJnLCBnZXRJZEZyb21DYWxsQXJnLCBJbnB1dHMsIE9iamVjdENhbGxBcmcgfSBmcm9tICcuL0lucHV0cyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJsb2NrRGF0YUJ1aWxkZXIsIFRyYW5zYWN0aW9uRXhwaXJhdGlvbiB9IGZyb20gJy4vVHJhbnNhY3Rpb25EYXRhQmxvY2snO1xuaW1wb3J0IHsgY3JlYXRlIH0gZnJvbSAnLi91dGlscyc7XG5cbnR5cGUgVHJhbnNhY3Rpb25SZXN1bHQgPSBUcmFuc2FjdGlvbkFyZ3VtZW50ICYgVHJhbnNhY3Rpb25Bcmd1bWVudFtdO1xuXG5mdW5jdGlvbiBjcmVhdGVUcmFuc2FjdGlvblJlc3VsdChpbmRleDogbnVtYmVyKTogVHJhbnNhY3Rpb25SZXN1bHQge1xuICBjb25zdCBiYXNlUmVzdWx0OiBUcmFuc2FjdGlvbkFyZ3VtZW50ID0geyBraW5kOiAnUmVzdWx0JywgaW5kZXggfTtcblxuICBjb25zdCBuZXN0ZWRSZXN1bHRzOiBUcmFuc2FjdGlvbkFyZ3VtZW50W10gPSBbXTtcbiAgY29uc3QgbmVzdGVkUmVzdWx0Rm9yID0gKHJlc3VsdEluZGV4OiBudW1iZXIpOiBUcmFuc2FjdGlvbkFyZ3VtZW50ID0+XG4gICAgKG5lc3RlZFJlc3VsdHNbcmVzdWx0SW5kZXhdID8/PSB7XG4gICAgICBraW5kOiAnTmVzdGVkUmVzdWx0JyxcbiAgICAgIGluZGV4LFxuICAgICAgcmVzdWx0SW5kZXgsXG4gICAgfSk7XG5cbiAgcmV0dXJuIG5ldyBQcm94eShiYXNlUmVzdWx0LCB7XG4gICAgc2V0KCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgdHJhbnNhY3Rpb24gcmVzdWx0IGlzIGEgcHJveHksIGFuZCBkb2VzIG5vdCBzdXBwb3J0IHNldHRpbmcgcHJvcGVydGllcyBkaXJlY3RseScpO1xuICAgIH0sXG4gICAgLy8gVE9ETzogSW5zdGVhZCBvZiBtYWtpbmcgdGhpcyByZXR1cm4gYSBjb25jcmV0ZSBhcmd1bWVudCwgd2Ugc2hvdWxkIGlkZWFsbHlcbiAgICAvLyBtYWtlIGl0IHJlZmVyZW5jZS1iYXNlZCAoc28gdGhhdCB0aGlzIGdldHMgcmVzb2x2ZWQgYXQgYnVpbGQtdGltZSksIHdoaWNoXG4gICAgLy8gYWxsb3dzIHJlLW9yZGVyaW5nIHRyYW5zYWN0aW9ucy5cbiAgICBnZXQodGFyZ2V0LCBwcm9wZXJ0eSkge1xuICAgICAgLy8gVGhpcyBhbGxvd3MgdGhpcyB0cmFuc2FjdGlvbiBhcmd1bWVudCB0byBiZSB1c2VkIGluIHRoZSBzaW5ndWxhciBmb3JtOlxuICAgICAgaWYgKHByb3BlcnR5IGluIHRhcmdldCkge1xuICAgICAgICByZXR1cm4gUmVmbGVjdC5nZXQodGFyZ2V0LCBwcm9wZXJ0eSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFN1cHBvcnQgZGVzdHJ1Y3R1cmluZzpcbiAgICAgIGlmIChwcm9wZXJ0eSA9PT0gU3ltYm9sLml0ZXJhdG9yKSB7XG4gICAgICAgIHJldHVybiBmdW5jdGlvbiogKCkge1xuICAgICAgICAgIGxldCBpID0gMDtcbiAgICAgICAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICAgICAgeWllbGQgbmVzdGVkUmVzdWx0Rm9yKGkpO1xuICAgICAgICAgICAgaSsrO1xuICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgIH1cblxuICAgICAgaWYgKHR5cGVvZiBwcm9wZXJ0eSA9PT0gJ3N5bWJvbCcpIHJldHVybjtcblxuICAgICAgY29uc3QgcmVzdWx0SW5kZXggPSBwYXJzZUludChwcm9wZXJ0eSwgMTApO1xuICAgICAgaWYgKE51bWJlci5pc05hTihyZXN1bHRJbmRleCkgfHwgcmVzdWx0SW5kZXggPCAwKSByZXR1cm47XG4gICAgICByZXR1cm4gbmVzdGVkUmVzdWx0Rm9yKHJlc3VsdEluZGV4KTtcbiAgICB9LFxuICB9KSBhcyBUcmFuc2FjdGlvblJlc3VsdDtcbn1cblxuY29uc3QgVFJBTlNBQ1RJT05fQlJBTkQgPSBTeW1ib2wuZm9yKCdAbXlzdGVuL3RyYW5zYWN0aW9uJyk7XG5cbi8vIFRoZSBtYXhpbXVtIG51bWJlciBvZiBnYXMgb2JqZWN0cyB0aGF0IGNhbiBiZSBzZWxlY3RlZCBmb3Igb25lIHRyYW5zYWN0aW9uLlxuY29uc3QgTUFYX0dBU19PQkpFQ1RTID0gMjU2O1xuXG4vLyBUaGUgbWF4aW11bSBnYXMgdGhhdCBpcyBhbGxvd2VkLlxuY29uc3QgTUFYX0dBUyA9IDEwMDAwMDAwMDA7XG5cbi8vIEEgZ3Vlc3MgYWJvdXQgaG93IG11Y2ggb3ZlcmhlYWQgZWFjaCBjb2luIHByb3ZpZGVzIGZvciBnYXMgY2FsY3VsYXRpb25zLlxuLy8gQHRzLWlnbm9yZVxuY29uc3QgR0FTX09WRVJIRUFEX1BFUl9DT0lOID0gMTBuO1xuXG5pbnRlcmZhY2UgQnVpbGRPcHRpb25zIHtcbiAgb25seVRyYW5zYWN0aW9uS2luZD86IGJvb2xlYW47XG59XG5cbi8qKlxuICogVHJhbnNhY3Rpb24gQnVpbGRlclxuICovXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25CbG9jayB7XG4gIC8qKiBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgb2JqZWN0IGlzIGFuIGluc3RhbmNlIG9mIHRoZSBUcmFuc2FjdGlvbiBidWlsZGVyIGNsYXNzLiAqL1xuICBzdGF0aWMgaXMob2JqOiB1bmtub3duKTogb2JqIGlzIFRyYW5zYWN0aW9uQmxvY2sge1xuICAgIHJldHVybiAhIW9iaiAmJiB0eXBlb2Ygb2JqID09PSAnb2JqZWN0JyAmJiAob2JqIGFzIGFueSlbVFJBTlNBQ1RJT05fQlJBTkRdID09PSB0cnVlO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGZyb20gYSBzZXJpYWxpemUgdHJhbnNhY3Rpb24ga2luZCAoYnVpbHQgd2l0aCBgYnVpbGQoeyBvbmx5VHJhbnNhY3Rpb25LaW5kOiB0cnVlIH0pYCkgdG8gYSBgVHJhbnNhY3Rpb25gIGNsYXNzLlxuICAgKiBTdXBwb3J0cyBlaXRoZXIgYSBieXRlIGFycmF5LCBvciBiYXNlNjQtZW5jb2RlZCBieXRlcy5cbiAgICovXG4gIHN0YXRpYyBmcm9tS2luZChzZXJpYWxpemVkOiBzdHJpbmcgfCBVaW50OEFycmF5KSB7XG4gICAgY29uc3QgdHggPSBuZXcgVHJhbnNhY3Rpb25CbG9jaygpO1xuXG4gICAgdHguI2Jsb2NrRGF0YSA9IFRyYW5zYWN0aW9uQmxvY2tEYXRhQnVpbGRlci5mcm9tS2luZEJ5dGVzKFxuICAgICAgdHlwZW9mIHNlcmlhbGl6ZWQgPT09ICdzdHJpbmcnID8gZnJvbUI2NChzZXJpYWxpemVkKSA6IHNlcmlhbGl6ZWRcbiAgICApO1xuXG4gICAgcmV0dXJuIHR4O1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGZyb20gYSBzZXJpYWxpemVkIHRyYW5zYWN0aW9uIGZvcm1hdCB0byBhIGBUcmFuc2FjdGlvbmAgY2xhc3MuXG4gICAqIFRoZXJlIGFyZSB0d28gc3VwcG9ydGVkIHNlcmlhbGl6ZWQgZm9ybWF0czpcbiAgICogLSBBIHN0cmluZyByZXR1cm5lZCBmcm9tIGBUcmFuc2FjdGlvbiNzZXJpYWxpemVgLiBUaGUgc2VyaWFsaXplZCBmb3JtYXQgbXVzdCBiZSBjb21wYXRpYmxlLCBvciBpdCB3aWxsIHRocm93IGFuIGVycm9yLlxuICAgKiAtIEEgYnl0ZSBhcnJheSAob3IgYmFzZTY0LWVuY29kZWQgYnl0ZXMpIGNvbnRhaW5pbmcgQkNTIHRyYW5zYWN0aW9uIGRhdGEuXG4gICAqL1xuICBzdGF0aWMgZnJvbShzZXJpYWxpemVkOiBzdHJpbmcgfCBVaW50OEFycmF5KSB7XG4gICAgY29uc3QgdHggPSBuZXcgVHJhbnNhY3Rpb25CbG9jaygpO1xuXG4gICAgLy8gQ2hlY2sgZm9yIGJ5dGVzOlxuICAgIGlmICh0eXBlb2Ygc2VyaWFsaXplZCAhPT0gJ3N0cmluZycgfHwgIXNlcmlhbGl6ZWQuc3RhcnRzV2l0aCgneycpKSB7XG4gICAgICB0eC4jYmxvY2tEYXRhID0gVHJhbnNhY3Rpb25CbG9ja0RhdGFCdWlsZGVyLmZyb21CeXRlcyhcbiAgICAgICAgdHlwZW9mIHNlcmlhbGl6ZWQgPT09ICdzdHJpbmcnID8gZnJvbUI2NChzZXJpYWxpemVkKSA6IHNlcmlhbGl6ZWRcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHR4LiNibG9ja0RhdGEgPSBUcmFuc2FjdGlvbkJsb2NrRGF0YUJ1aWxkZXIucmVzdG9yZShKU09OLnBhcnNlKHNlcmlhbGl6ZWQpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHg7XG4gIH1cblxuICAvKiogQSBoZWxwZXIgdG8gcmV0cmlldmUgdGhlIFRyYW5zYWN0aW9uIGJ1aWxkZXIgYFRyYW5zYWN0aW9uc2AgKi9cbiAgc3RhdGljIGdldCBUcmFuc2FjdGlvbnMoKSB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9ucztcbiAgfVxuXG4gIC8qKiBBIGhlbHBlciB0byByZXRyaWV2ZSB0aGUgVHJhbnNhY3Rpb24gYnVpbGRlciBgSW5wdXRzYCAqL1xuICBzdGF0aWMgZ2V0IElucHV0cygpIHtcbiAgICByZXR1cm4gSW5wdXRzO1xuICB9XG5cbiAgc2V0U2VuZGVyKHNlbmRlcjogc3RyaW5nKSB7XG4gICAgdGhpcy4jYmxvY2tEYXRhLnNlbmRlciA9IHNlbmRlcjtcbiAgfVxuICAvKipcbiAgICogU2V0cyB0aGUgc2VuZGVyIG9ubHkgaWYgaXQgaGFzIG5vdCBhbHJlYWR5IGJlZW4gc2V0LlxuICAgKiBUaGlzIGlzIHVzZWZ1bCBmb3Igc3BvbnNvcmVkIHRyYW5zYWN0aW9uIGZsb3dzIHdoZXJlIHRoZSBzZW5kZXIgbWF5IG5vdCBiZSB0aGUgc2FtZSBhcyB0aGUgc2lnbmVyIGFkZHJlc3MuXG4gICAqL1xuICBzZXRTZW5kZXJJZk5vdFNldChzZW5kZXI6IHN0cmluZykge1xuICAgIGlmICghdGhpcy4jYmxvY2tEYXRhLnNlbmRlcikge1xuICAgICAgdGhpcy4jYmxvY2tEYXRhLnNlbmRlciA9IHNlbmRlcjtcbiAgICB9XG4gIH1cbiAgc2V0RXhwaXJhdGlvbihleHBpcmF0aW9uPzogVHJhbnNhY3Rpb25FeHBpcmF0aW9uKSB7XG4gICAgdGhpcy4jYmxvY2tEYXRhLmV4cGlyYXRpb24gPSBleHBpcmF0aW9uO1xuICB9XG4gIHNldEdhc1ByaWNlKHByaWNlOiBudW1iZXIgfCBiaWdpbnQpIHtcbiAgICB0aGlzLiNibG9ja0RhdGEuZ2FzQ29uZmlnLnByaWNlID0gU3RyaW5nKHByaWNlKTtcbiAgfVxuICBzZXRHYXNCdWRnZXQoYnVkZ2V0OiBudW1iZXIgfCBiaWdpbnQpIHtcbiAgICB0aGlzLiNibG9ja0RhdGEuZ2FzQ29uZmlnLmJ1ZGdldCA9IFN0cmluZyhidWRnZXQpO1xuICB9XG4gIHNldEdhc093bmVyKG93bmVyOiBzdHJpbmcpIHtcbiAgICB0aGlzLiNibG9ja0RhdGEuZ2FzQ29uZmlnLm93bmVyID0gb3duZXI7XG4gIH1cbiAgc2V0R2FzUGF5bWVudChwYXltZW50czogU3VpT2JqZWN0UmVmW10pIHtcbiAgICBpZiAocGF5bWVudHMubGVuZ3RoID49IE1BWF9HQVNfT0JKRUNUUykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBQYXltZW50IG9iamVjdHMgZXhjZWVkIG1heGltdW0gYW1vdW50ICR7TUFYX0dBU19PQkpFQ1RTfWApO1xuICAgIH1cbiAgICB0aGlzLiNibG9ja0RhdGEuZ2FzQ29uZmlnLnBheW1lbnQgPSBwYXltZW50cy5tYXAoKHBheW1lbnQpID0+IG1hc2socGF5bWVudCwgU3VpT2JqZWN0UmVmKSk7XG4gIH1cblxuICAjYmxvY2tEYXRhOiBUcmFuc2FjdGlvbkJsb2NrRGF0YUJ1aWxkZXI7XG4gIC8qKiBHZXQgYSBzbmFwc2hvdCBvZiB0aGUgdHJhbnNhY3Rpb24gZGF0YSwgaW4gSlNPTiBmb3JtOiAqL1xuICBnZXQgYmxvY2tEYXRhKCkge1xuICAgIHJldHVybiB0aGlzLiNibG9ja0RhdGEuc25hcHNob3QoKTtcbiAgfVxuXG4gIC8vIFVzZWQgdG8gYnJhbmQgdHJhbnNhY3Rpb24gY2xhc3NlcyBzbyB0aGF0IHRoZXkgY2FuIGJlIGlkZW50aWZpZWQsIGV2ZW4gYmV0d2VlbiBtdWx0aXBsZSBjb3BpZXNcbiAgLy8gb2YgdGhlIGJ1aWxkZXIuXG4gIGdldCBbVFJBTlNBQ1RJT05fQlJBTkRdKCkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgY29uc3RydWN0b3IodHJhbnNhY3Rpb24/OiBUcmFuc2FjdGlvbkJsb2NrKSB7XG4gICAgdGhpcy4jYmxvY2tEYXRhID0gbmV3IFRyYW5zYWN0aW9uQmxvY2tEYXRhQnVpbGRlcih0cmFuc2FjdGlvbiA/IHRyYW5zYWN0aW9uLiNibG9ja0RhdGEgOiB1bmRlZmluZWQpO1xuICB9XG5cbiAgLyoqIFJldHVybnMgYW4gYXJndW1lbnQgZm9yIHRoZSBnYXMgY29pbiwgdG8gYmUgdXNlZCBpbiBhIHRyYW5zYWN0aW9uLiAqL1xuICBnZXQgZ2FzKCk6IFRyYW5zYWN0aW9uQXJndW1lbnQge1xuICAgIHJldHVybiB7IGtpbmQ6ICdHYXNDb2luJyB9O1xuICB9XG5cbiAgLyoqXG4gICAqIER5bmFtaWNhbGx5IGNyZWF0ZSBhIG5ldyBpbnB1dCwgd2hpY2ggaXMgc2VwYXJhdGUgZnJvbSB0aGUgYGlucHV0YC4gVGhpcyBpcyBpbXBvcnRhbnRcbiAgICogZm9yIGdlbmVyYXRlZCBjbGllbnRzIHRvIGJlIGFibGUgdG8gZGVmaW5lIHVuaXF1ZSBpbnB1dHMgdGhhdCBhcmUgbm9uLW92ZXJsYXBwaW5nIHdpdGggdGhlXG4gICAqIGRlZmluZWQgaW5wdXRzLlxuICAgKlxuICAgKiBGb3IgYFVpbnQ4QXJyYXlgIHR5cGUgYXV0b21hdGljYWxseSBjb252ZXJ0IHRoZSBpbnB1dCBpbnRvIGEgYFB1cmVgIENhbGxBcmcsIHNpbmNlIHRoaXNcbiAgICogaXMgdGhlIGZvcm1hdCByZXF1aXJlZCBmb3IgY3VzdG9tIHNlcmlhbGl6YXRpb24uXG4gICAqXG4gICAqL1xuICBpbnB1dCh0eXBlOiAnb2JqZWN0JyB8ICdwdXJlJywgdmFsdWU/OiB1bmtub3duKSB7XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLiNibG9ja0RhdGEuaW5wdXRzLmxlbmd0aDtcbiAgICBjb25zdCBpbnB1dCA9IGNyZWF0ZShcbiAgICAgIHtcbiAgICAgICAga2luZDogJ0lucHV0JyxcbiAgICAgICAgLy8gYmlnaW50cyBjYW4ndCBiZSBzZXJpYWxpemVkIHRvIEpTT04sIHNvIGp1c3Qgc3RyaW5nLWNvbnZlcnQgdGhlbSBoZXJlOlxuICAgICAgICB2YWx1ZTogdHlwZW9mIHZhbHVlID09PSAnYmlnaW50JyA/IFN0cmluZyh2YWx1ZSkgOiB2YWx1ZSxcbiAgICAgICAgaW5kZXgsXG4gICAgICAgIHR5cGUsXG4gICAgICB9LFxuICAgICAgVHJhbnNhY3Rpb25CbG9ja0lucHV0XG4gICAgKTtcbiAgICB0aGlzLiNibG9ja0RhdGEuaW5wdXRzLnB1c2goaW5wdXQpO1xuICAgIHJldHVybiBpbnB1dDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBuZXcgb2JqZWN0IGlucHV0IHRvIHRoZSB0cmFuc2FjdGlvbi5cbiAgICovXG4gIG9iamVjdCh2YWx1ZTogT2JqZWN0SWQgfCBPYmplY3RDYWxsQXJnKSB7XG4gICAgY29uc3QgaWQgPSBnZXRJZEZyb21DYWxsQXJnKHZhbHVlKTtcbiAgICAvLyBkZWR1cGxpY2F0ZVxuICAgIGNvbnN0IGluc2VydGVkID0gdGhpcy4jYmxvY2tEYXRhLmlucHV0cy5maW5kKChpKSA9PiBpLnR5cGUgPT09ICdvYmplY3QnICYmIGlkID09PSBnZXRJZEZyb21DYWxsQXJnKGkudmFsdWUpKTtcbiAgICByZXR1cm4gaW5zZXJ0ZWQgPz8gdGhpcy5pbnB1dCgnb2JqZWN0JywgdmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIG5ldyBub24tb2JqZWN0IGlucHV0IHRvIHRoZSB0cmFuc2FjdGlvbi5cbiAgICovXG4gIHB1cmUoXG4gICAgLyoqXG4gICAgICogVGhlIHB1cmUgdmFsdWUgdGhhdCB3aWxsIGJlIHVzZWQgYXMgdGhlIGlucHV0IHZhbHVlLiBJZiB0aGlzIGlzIGEgVWludDhBcnJheSwgdGhlbiB0aGUgdmFsdWVcbiAgICAgKiBpcyBhc3N1bWVkIHRvIGJlIHJhdyBieXRlcywgYW5kIHdpbGwgYmUgdXNlZCBkaXJlY3RseS5cbiAgICAgKi9cbiAgICB2YWx1ZTogdW5rbm93bixcbiAgICAvKipcbiAgICAgKiBUaGUgQkNTIHR5cGUgdG8gc2VyaWFsaXplIHRoZSB2YWx1ZSBpbnRvLiBJZiBub3QgcHJvdmlkZWQsIHRoZSB0eXBlIHdpbGwgYXV0b21hdGljYWxseSBiZSBkZXRlcm1pbmVkXG4gICAgICogYmFzZWQgb24gaG93IHRoZSBpbnB1dCBpcyB1c2VkLlxuICAgICAqL1xuICAgIHR5cGU/OiBzdHJpbmdcbiAgKSB7XG4gICAgLy8gVE9ETzogd2UgY2FuIGFsc28gZG8gc29tZSBkZWR1cGxpY2F0aW9uIGhlcmVcbiAgICByZXR1cm4gdGhpcy5pbnB1dChcbiAgICAgICdwdXJlJyxcbiAgICAgIHZhbHVlIGluc3RhbmNlb2YgVWludDhBcnJheSA/IElucHV0cy5QdXJlKHZhbHVlKSA6IHR5cGUgPyBJbnB1dHMuUHVyZSh2YWx1ZSwgdHlwZSkgOiB2YWx1ZVxuICAgICk7XG4gIH1cblxuICAvKiogQWRkIGEgdHJhbnNhY3Rpb24gdG8gdGhlIHRyYW5zYWN0aW9uIGJsb2NrLiAqL1xuICBhZGQodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uVHlwZSkge1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy4jYmxvY2tEYXRhLnRyYW5zYWN0aW9ucy5wdXNoKHRyYW5zYWN0aW9uKTtcbiAgICByZXR1cm4gY3JlYXRlVHJhbnNhY3Rpb25SZXN1bHQoaW5kZXggLSAxKTtcbiAgfVxuXG4gIC8vIE1ldGhvZCBzaG9ydGhhbmRzOlxuXG4gIHNwbGl0Q29pbnMoLi4uYXJnczogUGFyYW1ldGVyczwodHlwZW9mIFRyYW5zYWN0aW9ucylbJ1NwbGl0Q29pbnMnXT4pIHtcbiAgICByZXR1cm4gdGhpcy5hZGQoVHJhbnNhY3Rpb25zLlNwbGl0Q29pbnMoLi4uYXJncykpO1xuICB9XG4gIG1lcmdlQ29pbnMoLi4uYXJnczogUGFyYW1ldGVyczwodHlwZW9mIFRyYW5zYWN0aW9ucylbJ01lcmdlQ29pbnMnXT4pIHtcbiAgICByZXR1cm4gdGhpcy5hZGQoVHJhbnNhY3Rpb25zLk1lcmdlQ29pbnMoLi4uYXJncykpO1xuICB9XG4gIHB1Ymxpc2goLi4uYXJnczogUGFyYW1ldGVyczwodHlwZW9mIFRyYW5zYWN0aW9ucylbJ1B1Ymxpc2gnXT4pIHtcbiAgICByZXR1cm4gdGhpcy5hZGQoVHJhbnNhY3Rpb25zLlB1Ymxpc2goLi4uYXJncykpO1xuICB9XG4gIG1vdmVDYWxsKC4uLmFyZ3M6IFBhcmFtZXRlcnM8KHR5cGVvZiBUcmFuc2FjdGlvbnMpWydNb3ZlQ2FsbCddPikge1xuICAgIHJldHVybiB0aGlzLmFkZChUcmFuc2FjdGlvbnMuTW92ZUNhbGwoLi4uYXJncykpO1xuICB9XG4gIHRyYW5zZmVyT2JqZWN0cyguLi5hcmdzOiBQYXJhbWV0ZXJzPCh0eXBlb2YgVHJhbnNhY3Rpb25zKVsnVHJhbnNmZXJPYmplY3RzJ10+KSB7XG4gICAgcmV0dXJuIHRoaXMuYWRkKFRyYW5zYWN0aW9ucy5UcmFuc2Zlck9iamVjdHMoLi4uYXJncykpO1xuICB9XG4gIG1ha2VNb3ZlVmVjKC4uLmFyZ3M6IFBhcmFtZXRlcnM8KHR5cGVvZiBUcmFuc2FjdGlvbnMpWydNYWtlTW92ZVZlYyddPikge1xuICAgIHJldHVybiB0aGlzLmFkZChUcmFuc2FjdGlvbnMuTWFrZU1vdmVWZWMoLi4uYXJncykpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlcmlhbGl6ZSB0aGUgdHJhbnNhY3Rpb24gdG8gYSBzdHJpbmcgc28gdGhhdCBpdCBjYW4gYmUgc2VudCB0byBhIHNlcGFyYXRlIGNvbnRleHQuXG4gICAqIFRoaXMgaXMgZGlmZmVyZW50IGZyb20gYGJ1aWxkYCBpbiB0aGF0IGl0IGRvZXMgbm90IHNlcmlhbGl6ZSB0byBCQ1MgYnl0ZXMsIGFuZCBpbnN0ZWFkXG4gICAqIHVzZXMgYSBzZXBhcmF0ZSBmb3JtYXQgdGhhdCBpcyB1bmlxdWUgdG8gdGhlIHRyYW5zYWN0aW9uIGJ1aWxkZXIuIFRoaXMgYWxsb3dzXG4gICAqIHVzIHRvIHNlcmlhbGl6ZSBwYXJ0aWFsbHktY29tcGxldGUgdHJhbnNhY3Rpb25zLCB0aGF0IGNhbiB0aGVuIGJlIGNvbXBsZXRlZCBhbmRcbiAgICogYnVpbHQgaW4gYSBzZXBhcmF0ZSBjb250ZXh0LlxuICAgKlxuICAgKiBGb3IgZXhhbXBsZSwgYSBkYXBwIGNhbiBjb25zdHJ1Y3QgYSB0cmFuc2FjdGlvbiwgYnV0IG5vdCBwcm92aWRlIGdhcyBvYmplY3RzXG4gICAqIG9yIGEgZ2FzIGJ1ZGdldC4gVGhlIHRyYW5zYWN0aW9uIHRoZW4gY2FuIGJlIHNlbnQgdG8gdGhlIHdhbGxldCwgd2hlcmUgdGhpc1xuICAgKiBpbmZvcm1hdGlvbiBpcyBhdXRvbWF0aWNhbGx5IGZpbGxlZCBpbiAoZS5nLiBieSBxdWVyeWluZyBmb3IgY29pbiBvYmplY3RzXG4gICAqIGFuZCBwZXJmb3JtaW5nIGEgZHJ5IHJ1bikuXG4gICAqL1xuICBzZXJpYWxpemUoKSB7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMuI2Jsb2NrRGF0YS5zbmFwc2hvdCgpKTtcbiAgfVxuXG4gIC8qKiBCdWlsZCB0aGUgdHJhbnNhY3Rpb24gdG8gQkNTIGJ5dGVzLiAqL1xuICBhc3luYyBidWlsZCh7IG9ubHlUcmFuc2FjdGlvbktpbmQgfTogQnVpbGRPcHRpb25zID0ge30pOiBQcm9taXNlPFVpbnQ4QXJyYXk+IHtcbiAgICByZXR1cm4gdGhpcy4jYmxvY2tEYXRhLmJ1aWxkKHsgb25seVRyYW5zYWN0aW9uS2luZCB9KTtcbiAgfVxuXG4gIC8qKiBEZXJpdmUgdHJhbnNhY3Rpb24gZGlnZXN0ICovXG4gIGFzeW5jIGdldERpZ2VzdCgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLiNibG9ja0RhdGEuZ2V0RGlnZXN0KCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -45,7 +45,7 @@ exports.TRANSACTION_DATA_MAX_SIZE = 128 * 1024;
|
|
|
45
45
|
class TransactionBlockDataBuilder {
|
|
46
46
|
static fromKindBytes(bytes) {
|
|
47
47
|
const kind = bcs_2.builder.de('TransactionKind', bytes);
|
|
48
|
-
const programmableTx = kind
|
|
48
|
+
const programmableTx = kind?.ProgrammableTransaction;
|
|
49
49
|
if (!programmableTx) {
|
|
50
50
|
throw new Error('Unable to deserialize from bytes.');
|
|
51
51
|
}
|
|
@@ -63,10 +63,9 @@ class TransactionBlockDataBuilder {
|
|
|
63
63
|
return TransactionBlockDataBuilder.restore(serialized);
|
|
64
64
|
}
|
|
65
65
|
static fromBytes(bytes) {
|
|
66
|
-
var _a;
|
|
67
66
|
const rawData = bcs_2.builder.de('TransactionData', bytes);
|
|
68
|
-
const data = rawData
|
|
69
|
-
const programmableTx =
|
|
67
|
+
const data = rawData?.V1;
|
|
68
|
+
const programmableTx = data?.kind?.ProgrammableTransaction;
|
|
70
69
|
if (!data || !programmableTx) {
|
|
71
70
|
throw new Error('Unable to deserialize from bytes.');
|
|
72
71
|
}
|
|
@@ -102,16 +101,14 @@ class TransactionBlockDataBuilder {
|
|
|
102
101
|
return (0, bcs_1.toB58)(hash);
|
|
103
102
|
}
|
|
104
103
|
constructor(clone) {
|
|
105
|
-
var _a, _b, _c;
|
|
106
104
|
this.version = 1;
|
|
107
|
-
this.sender = clone
|
|
108
|
-
this.expiration = clone
|
|
109
|
-
this.gasConfig =
|
|
110
|
-
this.inputs =
|
|
111
|
-
this.transactions =
|
|
105
|
+
this.sender = clone?.sender;
|
|
106
|
+
this.expiration = clone?.expiration;
|
|
107
|
+
this.gasConfig = clone?.gasConfig ?? {};
|
|
108
|
+
this.inputs = clone?.inputs ?? [];
|
|
109
|
+
this.transactions = clone?.transactions ?? [];
|
|
112
110
|
}
|
|
113
111
|
build({ overrides, onlyTransactionKind, } = {}) {
|
|
114
|
-
var _a, _b, _c;
|
|
115
112
|
// Resolve inputs down to values:
|
|
116
113
|
const inputs = this.inputs.map((input) => {
|
|
117
114
|
(0, superstruct_1.assert)(input.value, Inputs_1.BuilderCallArg);
|
|
@@ -126,9 +123,9 @@ class TransactionBlockDataBuilder {
|
|
|
126
123
|
if (onlyTransactionKind) {
|
|
127
124
|
return bcs_2.builder.ser('TransactionKind', kind, { maxSize: exports.TRANSACTION_DATA_MAX_SIZE }).toBytes();
|
|
128
125
|
}
|
|
129
|
-
const expiration =
|
|
130
|
-
const sender =
|
|
131
|
-
const gasConfig = { ...this.gasConfig, ...overrides
|
|
126
|
+
const expiration = overrides?.expiration ?? this.expiration;
|
|
127
|
+
const sender = overrides?.sender ?? this.sender;
|
|
128
|
+
const gasConfig = { ...this.gasConfig, ...overrides?.gasConfig };
|
|
132
129
|
if (!sender) {
|
|
133
130
|
throw new Error('Missing transaction sender');
|
|
134
131
|
}
|
|
@@ -146,7 +143,7 @@ class TransactionBlockDataBuilder {
|
|
|
146
143
|
expiration: expiration ? expiration : { None: true },
|
|
147
144
|
gasData: {
|
|
148
145
|
payment: gasConfig.payment,
|
|
149
|
-
owner: prepareSuiAddress(
|
|
146
|
+
owner: prepareSuiAddress(this.gasConfig.owner ?? sender),
|
|
150
147
|
price: BigInt(gasConfig.price),
|
|
151
148
|
budget: BigInt(gasConfig.budget),
|
|
152
149
|
},
|
|
@@ -168,4 +165,4 @@ class TransactionBlockDataBuilder {
|
|
|
168
165
|
}
|
|
169
166
|
}
|
|
170
167
|
exports.TransactionBlockDataBuilder = TransactionBlockDataBuilder;
|
|
171
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNhY3Rpb25EYXRhQmxvY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL215c3RlbmxhYi9idWlsZGVyL1RyYW5zYWN0aW9uRGF0YUJsb2NrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFDQUFvQztBQUNwQyw2Q0FhcUI7QUFDckIsK0NBQXFEO0FBQ3JELG9DQUE2RDtBQUM3RCwrQkFBZ0M7QUFDaEMsaURBQXdFO0FBQ3hFLHFDQUF1RDtBQUN2RCxtQ0FBaUM7QUFFcEIsUUFBQSxxQkFBcUIsR0FBRyxJQUFBLHNCQUFRLEVBQzNDLElBQUEsc0JBQVEsRUFBQyxJQUFBLG1CQUFLLEVBQUMsQ0FBQyxJQUFBLG9CQUFNLEVBQUMsRUFBRSxLQUFLLEVBQUUsSUFBQSxxQkFBTyxHQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUEsb0JBQU0sRUFBQyxFQUFFLElBQUksRUFBRSxJQUFBLG1CQUFLLEVBQUMsQ0FBQyxJQUFBLHFCQUFPLEVBQUMsSUFBSSxDQUFDLEVBQUUsSUFBQSxxQkFBTyxFQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ3pHLENBQUM7QUFHRixNQUFNLFVBQVUsR0FBRyxJQUFBLG9CQUFNLEdBQUUsQ0FBQztBQUU1QixNQUFNLG1CQUFtQixHQUFHLElBQUEsb0JBQU0sRUFBUyxxQkFBcUIsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFO0lBQ3hFLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sR0FBRyxDQUFDO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFFdkUsSUFBSSxDQUFDO1FBQ0gsTUFBTSxDQUFDLEdBQWEsQ0FBQyxDQUFDO1FBQ3RCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUFDLE1BQU0sQ0FBQztRQUNQLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztB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QkFDeEQsS0FBSyxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO2dCQUM5QixNQUFNLEVBQUUsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUM7YUFDakM7WUFDRCxJQUFJLEVBQUU7Z0JBQ0osdUJBQXVCLEVBQUU7b0JBQ3ZCLE1BQU07b0JBQ04sWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO2lCQUNoQzthQUNGO1NBQ0YsQ0FBQztRQUVGLE9BQU8sYUFBTyxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLEVBQUUsRUFBRSxlQUFlLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxpQ0FBeUIsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDbkgsQ0FBQztJQUVELFNBQVM7UUFDUCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsbUJBQW1CLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUN6RCxPQUFPLDJCQUEyQixDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFBLGNBQU0sRUFBQyxJQUFJLEVBQUUsd0NBQWdDLENBQUMsQ0FBQztJQUN4RCxDQUFDO0NBQ0Y7QUF6S0Qsa0VBeUtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdG9CNTggfSBmcm9tICdAbXlzdGVuL2Jjcyc7XG5pbXBvcnQge1xuICBhcnJheSxcbiAgYXNzZXJ0LFxuICBkZWZpbmUsXG4gIEluZmVyLFxuICBpbnRlZ2VyLFxuICBpcyxcbiAgbGl0ZXJhbCxcbiAgbnVsbGFibGUsXG4gIG9iamVjdCxcbiAgb3B0aW9uYWwsXG4gIHN0cmluZyxcbiAgdW5pb24sXG59IGZyb20gJ3N1cGVyc3RydWN0JztcbmltcG9ydCB7IGhhc2hUeXBlZERhdGEgfSBmcm9tICcuLi9jcnlwdG9ncmFwaHkvaGFzaCc7XG5pbXBvcnQgeyBub3JtYWxpemVTdWlBZGRyZXNzLCBTdWlPYmplY3RSZWYgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBidWlsZGVyIH0gZnJvbSAnLi9iY3MnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25UeXBlLCBUcmFuc2FjdGlvbkJsb2NrSW5wdXQgfSBmcm9tICcuL1RyYW5zYWN0aW9ucyc7XG5pbXBvcnQgeyBCdWlsZGVyQ2FsbEFyZywgUHVyZUNhbGxBcmcgfSBmcm9tICcuL0lucHV0cyc7XG5pbXBvcnQgeyBjcmVhdGUgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IFRyYW5zYWN0aW9uRXhwaXJhdGlvbiA9IG9wdGlvbmFsKFxuICBudWxsYWJsZSh1bmlvbihbb2JqZWN0KHsgRXBvY2g6IGludGVnZXIoKSB9KSwgb2JqZWN0KHsgTm9uZTogdW5pb24oW2xpdGVyYWwodHJ1ZSksIGxpdGVyYWwobnVsbCldKSB9KV0pKVxuKTtcbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uRXhwaXJhdGlvbiA9IEluZmVyPHR5cGVvZiBUcmFuc2FjdGlvbkV4cGlyYXRpb24+O1xuXG5jb25zdCBTdWlBZGRyZXNzID0gc3RyaW5nKCk7XG5cbmNvbnN0IFN0cmluZ0VuY29kZWRCaWdpbnQgPSBkZWZpbmU8c3RyaW5nPignU3RyaW5nRW5jb2RlZEJpZ2ludCcsICh2YWwpID0+IHtcbiAgaWYgKCFbJ3N0cmluZycsICdudW1iZXInLCAnYmlnaW50J10uaW5jbHVkZXModHlwZW9mIHZhbCkpIHJldHVybiBmYWxzZTtcblxuICB0cnkge1xuICAgIEJpZ0ludCh2YWwgYXMgc3RyaW5nKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59KTtcblxuY29uc3QgR2FzQ29uZmlnID0gb2JqZWN0KHtcbiAgYnVkZ2V0OiBvcHRpb25hbChTdHJpbmdFbmNvZGVkQmlnaW50KSxcbiAgcHJpY2U6IG9wdGlvbmFsKFN0cmluZ0VuY29kZWRCaWdpbnQpLFxuICBwYXltZW50OiBvcHRpb25hbChhcnJheShTdWlPYmplY3RSZWYpKSxcbiAgb3duZXI6IG9wdGlvbmFsKFN1aUFkZHJlc3MpLFxufSk7XG50eXBlIEdhc0NvbmZpZyA9IEluZmVyPHR5cGVvZiBHYXNDb25maWc+O1xuXG5leHBvcnQgY29uc3QgU2VyaWFsaXplZFRyYW5zYWN0aW9uRGF0YUJ1aWxkZXIgPSBvYmplY3Qoe1xuICB2ZXJzaW9uOiBsaXRlcmFsKDEpLFxuICBzZW5kZXI6IG9wdGlvbmFsKFN1aUFkZHJlc3MpLFxuICBleHBpcmF0aW9uOiBUcmFuc2FjdGlvbkV4cGlyYXRpb24sXG4gIGdhc0NvbmZpZzogR2FzQ29uZmlnLFxuICBpbnB1dHM6IGFycmF5KFRyYW5zYWN0aW9uQmxvY2tJbnB1dCksXG4gIHRyYW5zYWN0aW9uczogYXJyYXkoVHJhbnNhY3Rpb25UeXBlKSxcbn0pO1xuZXhwb3J0IHR5cGUgU2VyaWFsaXplZFRyYW5zYWN0aW9uRGF0YUJ1aWxkZXIgPSBJbmZlcjx0eXBlb2YgU2VyaWFsaXplZFRyYW5zYWN0aW9uRGF0YUJ1aWxkZXI+O1xuXG5mdW5jdGlvbiBwcmVwYXJlU3VpQWRkcmVzcyhhZGRyZXNzOiBzdHJpbmcpIHtcbiAgcmV0dXJuIG5vcm1hbGl6ZVN1aUFkZHJlc3MoYWRkcmVzcykucmVwbGFjZSgnMHgnLCAnJyk7XG59XG5cbi8vIE5PVEU6IFRoaXMgdmFsdWUgc2hvdWxkIGJlIGtlcHQgaW4gc3luYyB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIHZhbHVlIGluXG4vLyBjcmF0ZXMvc3VpLXByb3RvY29sLWNvbmZpZy9zcmMvbGliLnJzXG5leHBvcnQgY29uc3QgVFJBTlNBQ1RJT05fREFUQV9NQVhfU0laRSA9IDEyOCAqIDEwMjQ7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkJsb2NrRGF0YUJ1aWxkZXIge1xuICBzdGF0aWMgZnJvbUtpbmRCeXRlcyhieXRlczogVWludDhBcnJheSkge1xuICAgIGNvbnN0IGtpbmQgPSBidWlsZGVyLmRlKCdUcmFuc2FjdGlvbktpbmQnLCBieXRlcyk7XG4gICAgY29uc3QgcHJvZ3JhbW1hYmxlVHggPSBraW5kPy5Qcm9ncmFtbWFibGVUcmFuc2FjdGlvbjtcbiAgICBpZiAoIXByb2dyYW1tYWJsZVR4KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1VuYWJsZSB0byBkZXNlcmlhbGl6ZSBmcm9tIGJ5dGVzLicpO1xuICAgIH1cblxuICAgIGNvbnN0IHNlcmlhbGl6ZWQgPSBjcmVhdGUoXG4gICAgICB7XG4gICAgICAgIHZlcnNpb246IDEsXG4gICAgICAgIGdhc0NvbmZpZzoge30sXG4gICAgICAgIGlucHV0czogcHJvZ3JhbW1hYmxlVHguaW5wdXRzLm1hcCgodmFsdWU6IHVua25vd24sIGluZGV4OiBudW1iZXIpID0+XG4gICAgICAgICAgY3JlYXRlKFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBraW5kOiAnSW5wdXQnLFxuICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgICAgaW5kZXgsXG4gICAgICAgICAgICAgIHR5cGU6IGlzKHZhbHVlLCBQdXJlQ2FsbEFyZykgPyAncHVyZScgOiAnb2JqZWN0JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBUcmFuc2FjdGlvbkJsb2NrSW5wdXRcbiAgICAgICAgICApXG4gICAgICAgICksXG4gICAgICAgIHRyYW5zYWN0aW9uczogcHJvZ3JhbW1hYmxlVHgudHJhbnNhY3Rpb25zLFxuICAgICAgfSxcbiAgICAgIFNlcmlhbGl6ZWRUcmFuc2FjdGlvbkRhdGFCdWlsZGVyXG4gICAgKTtcblxuICAgIHJldHVybiBUcmFuc2FjdGlvbkJsb2NrRGF0YUJ1aWxkZXIucmVzdG9yZShzZXJpYWxpemVkKTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tQnl0ZXMoYnl0ZXM6IFVpbnQ4QXJyYXkpIHtcbiAgICBjb25zdCByYXdEYXRhID0gYnVpbGRlci5kZSgnVHJhbnNhY3Rpb25EYXRhJywgYnl0ZXMpO1xuICAgIGNvbnN0IGRhdGEgPSByYXdEYXRhPy5WMTtcbiAgICBjb25zdCBwcm9ncmFtbWFibGVUeCA9IGRhdGE/LmtpbmQ/LlByb2dyYW1tYWJsZVRyYW5zYWN0aW9uO1xuICAgIGlmICghZGF0YSB8fCAhcHJvZ3JhbW1hYmxlVHgpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVW5hYmxlIHRvIGRlc2VyaWFsaXplIGZyb20gYnl0ZXMuJyk7XG4gICAgfVxuXG4gICAgY29uc3Qgc2VyaWFsaXplZCA9IGNyZWF0ZShcbiAgICAgIHtcbiAgICAgICAgdmVyc2lvbjogMSxcbiAgICAgICAgc2VuZGVyOiBkYXRhLnNlbmRlcixcbiAgICAgICAgZXhwaXJhdGlvbjogZGF0YS5leHBpcmF0aW9uLFxuICAgICAgICBnYXNDb25maWc6IGRhdGEuZ2FzRGF0YSxcbiAgICAgICAgaW5wdXRzOiBwcm9ncmFtbWFibGVUeC5pbnB1dHMubWFwKCh2YWx1ZTogdW5rbm93biwgaW5kZXg6IG51bWJlcikgPT5cbiAgICAgICAgICBjcmVhdGUoXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGtpbmQ6ICdJbnB1dCcsXG4gICAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgICBpbmRleCxcbiAgICAgICAgICAgICAgdHlwZTogaXModmFsdWUsIFB1cmVDYWxsQXJnKSA/ICdwdXJlJyA6ICdvYmplY3QnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFRyYW5zYWN0aW9uQmxvY2tJbnB1dFxuICAgICAgICAgIClcbiAgICAgICAgKSxcbiAgICAgICAgdHJhbnNhY3Rpb25zOiBwcm9ncmFtbWFibGVUeC50cmFuc2FjdGlvbnMsXG4gICAgICB9LFxuICAgICAgU2VyaWFsaXplZFRyYW5zYWN0aW9uRGF0YUJ1aWxkZXJcbiAgICApO1xuXG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uQmxvY2tEYXRhQnVpbGRlci5yZXN0b3JlKHNlcmlhbGl6ZWQpO1xuICB9XG5cbiAgc3RhdGljIHJlc3RvcmUoZGF0YTogU2VyaWFsaXplZFRyYW5zYWN0aW9uRGF0YUJ1aWxkZXIpIHtcbiAgICBhc3NlcnQoZGF0YSwgU2VyaWFsaXplZFRyYW5zYWN0aW9uRGF0YUJ1aWxkZXIpO1xuICAgIGNvbnN0IHRyYW5zYWN0aW9uRGF0YSA9IG5ldyBUcmFuc2FjdGlvbkJsb2NrRGF0YUJ1aWxkZXIoKTtcbiAgICBPYmplY3QuYXNzaWduKHRyYW5zYWN0aW9uRGF0YSwgZGF0YSk7XG4gICAgcmV0dXJuIHRyYW5zYWN0aW9uRGF0YTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSB0cmFuc2FjdGlvbiBkaWdlc3QuXG4gICAqXG4gICAqIEBwYXJhbSBieXRlcyBCQ1Mgc2VyaWFsaXplZCB0cmFuc2FjdGlvbiBkYXRhXG4gICAqIEByZXR1cm5zIHRyYW5zYWN0aW9uIGRpZ2VzdC5cbiAgICovXG4gIHN0YXRpYyBnZXREaWdlc3RGcm9tQnl0ZXMoYnl0ZXM6IFVpbnQ4QXJyYXkpIHtcbiAgICBjb25zdCBoYXNoID0gaGFzaFR5cGVkRGF0YSgnVHJhbnNhY3Rpb25EYXRhJywgYnl0ZXMpO1xuICAgIHJldHVybiB0b0I1OChoYXNoKTtcbiAgfVxuXG4gIHZlcnNpb24gPSAxIGFzIGNvbnN0O1xuICBzZW5kZXI/OiBzdHJpbmc7XG4gIGV4cGlyYXRpb24/OiBUcmFuc2FjdGlvbkV4cGlyYXRpb247XG4gIGdhc0NvbmZpZzogR2FzQ29uZmlnO1xuICBpbnB1dHM6IFRyYW5zYWN0aW9uQmxvY2tJbnB1dFtdO1xuICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uVHlwZVtdO1xuXG4gIGNvbnN0cnVjdG9yKGNsb25lPzogVHJhbnNhY3Rpb25CbG9ja0RhdGFCdWlsZGVyKSB7XG4gICAgdGhpcy5zZW5kZXIgPSBjbG9uZT8uc2VuZGVyO1xuICAgIHRoaXMuZXhwaXJhdGlvbiA9IGNsb25lPy5leHBpcmF0aW9uO1xuICAgIHRoaXMuZ2FzQ29uZmlnID0gY2xvbmU/Lmdhc0NvbmZpZyA/PyB7fTtcbiAgICB0aGlzLmlucHV0cyA9IGNsb25lPy5pbnB1dHMgPz8gW107XG4gICAgdGhpcy50cmFuc2FjdGlvbnMgPSBjbG9uZT8udHJhbnNhY3Rpb25zID8/IFtdO1xuICB9XG5cbiAgYnVpbGQoe1xuICAgIG92ZXJyaWRlcyxcbiAgICBvbmx5VHJhbnNhY3Rpb25LaW5kLFxuICB9OiB7XG4gICAgb3ZlcnJpZGVzPzogUGljazxQYXJ0aWFsPFRyYW5zYWN0aW9uQmxvY2tEYXRhQnVpbGRlcj4sICdzZW5kZXInIHwgJ2dhc0NvbmZpZycgfCAnZXhwaXJhdGlvbic+O1xuICAgIG9ubHlUcmFuc2FjdGlvbktpbmQ/OiBib29sZWFuO1xuICB9ID0ge30pIHtcbiAgICAvLyBSZXNvbHZlIGlucHV0cyBkb3duIHRvIHZhbHVlczpcbiAgICBjb25zdCBpbnB1dHMgPSB0aGlzLmlucHV0cy5tYXAoKGlucHV0KSA9PiB7XG4gICAgICBhc3NlcnQoaW5wdXQudmFsdWUsIEJ1aWxkZXJDYWxsQXJnKTtcbiAgICAgIHJldHVybiBpbnB1dC52YWx1ZTtcbiAgICB9KTtcblxuICAgIGNvbnN0IGtpbmQgPSB7XG4gICAgICBQcm9ncmFtbWFibGVUcmFuc2FjdGlvbjoge1xuICAgICAgICBpbnB1dHMsXG4gICAgICAgIHRyYW5zYWN0aW9uczogdGhpcy50cmFuc2FjdGlvbnMsXG4gICAgICB9LFxuICAgIH07XG5cbiAgICBpZiAob25seVRyYW5zYWN0aW9uS2luZCkge1xuICAgICAgcmV0dXJuIGJ1aWxkZXIuc2VyKCdUcmFuc2FjdGlvbktpbmQnLCBraW5kLCB7IG1heFNpemU6IFRSQU5TQUNUSU9OX0RBVEFfTUFYX1NJWkUgfSkudG9CeXRlcygpO1xuICAgIH1cblxuICAgIGNvbnN0IGV4cGlyYXRpb24gPSBvdmVycmlkZXM/LmV4cGlyYXRpb24gPz8gdGhpcy5leHBpcmF0aW9uO1xuICAgIGNvbnN0IHNlbmRlciA9IG92ZXJyaWRlcz8uc2VuZGVyID8/IHRoaXMuc2VuZGVyO1xuICAgIGNvbnN0IGdhc0NvbmZpZyA9IHsgLi4udGhpcy5nYXNDb25maWcsIC4uLm92ZXJyaWRlcz8uZ2FzQ29uZmlnIH07XG5cbiAgICBpZiAoIXNlbmRlcikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNaXNzaW5nIHRyYW5zYWN0aW9uIHNlbmRlcicpO1xuICAgIH1cblxuICAgIGlmICghZ2FzQ29uZmlnLmJ1ZGdldCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNaXNzaW5nIGdhcyBidWRnZXQnKTtcbiAgICB9XG5cbiAgICBpZiAoIWdhc0NvbmZpZy5wYXltZW50KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ01pc3NpbmcgZ2FzIHBheW1lbnQnKTtcbiAgICB9XG5cbiAgICBpZiAoIWdhc0NvbmZpZy5wcmljZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNaXNzaW5nIGdhcyBwcmljZScpO1xuICAgIH1cblxuICAgIGNvbnN0IHRyYW5zYWN0aW9uRGF0YSA9IHtcbiAgICAgIHNlbmRlcjogcHJlcGFyZVN1aUFkZHJlc3Moc2VuZGVyKSxcbiAgICAgIGV4cGlyYXRpb246IGV4cGlyYXRpb24gPyBleHBpcmF0aW9uIDogeyBOb25lOiB0cnVlIH0sXG4gICAgICBnYXNEYXRhOiB7XG4gICAgICAgIHBheW1lbnQ6IGdhc0NvbmZpZy5wYXltZW50LFxuICAgICAgICBvd25lcjogcHJlcGFyZVN1aUFkZHJlc3ModGhpcy5nYXNDb25maWcub3duZXIgPz8gc2VuZGVyKSxcbiAgICAgICAgcHJpY2U6IEJpZ0ludChnYXNDb25maWcucHJpY2UpLFxuICAgICAgICBidWRnZXQ6IEJpZ0ludChnYXNDb25maWcuYnVkZ2V0KSxcbiAgICAgIH0sXG4gICAgICBraW5kOiB7XG4gICAgICAgIFByb2dyYW1tYWJsZVRyYW5zYWN0aW9uOiB7XG4gICAgICAgICAgaW5wdXRzLFxuICAgICAgICAgIHRyYW5zYWN0aW9uczogdGhpcy50cmFuc2FjdGlvbnMsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG5cbiAgICByZXR1cm4gYnVpbGRlci5zZXIoJ1RyYW5zYWN0aW9uRGF0YScsIHsgVjE6IHRyYW5zYWN0aW9uRGF0YSB9LCB7IG1heFNpemU6IFRSQU5TQUNUSU9OX0RBVEFfTUFYX1NJWkUgfSkudG9CeXRlcygpO1xuICB9XG5cbiAgZ2V0RGlnZXN0KCkge1xuICAgIGNvbnN0IGJ5dGVzID0gdGhpcy5idWlsZCh7IG9ubHlUcmFuc2FjdGlvbktpbmQ6IGZhbHNlIH0pO1xuICAgIHJldHVybiBUcmFuc2FjdGlvbkJsb2NrRGF0YUJ1aWxkZXIuZ2V0RGlnZXN0RnJvbUJ5dGVzKGJ5dGVzKTtcbiAgfVxuXG4gIHNuYXBzaG90KCk6IFNlcmlhbGl6ZWRUcmFuc2FjdGlvbkRhdGFCdWlsZGVyIHtcbiAgICByZXR1cm4gY3JlYXRlKHRoaXMsIFNlcmlhbGl6ZWRUcmFuc2FjdGlvbkRhdGFCdWlsZGVyKTtcbiAgfVxufVxuIl19
|
|
168
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNhY3Rpb25EYXRhQmxvY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL215c3RlbmxhYi9idWlsZGVyL1RyYW5zYWN0aW9uRGF0YUJsb2NrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFDQUFvQztBQUNwQyw2Q0FhcUI7QUFDckIsK0NBQXFEO0FBQ3JELG9DQUE2RDtBQUM3RCwrQkFBZ0M7QUFDaEMsaURBQXdFO0FBQ3hFLHFDQUF1RDtBQUN2RCxtQ0FBaUM7QUFFcEIsUUFBQSxxQkFBcUIsR0FBRyxJQUFBLHNCQUFRLEVBQzNDLElBQUEsc0JBQVEsRUFBQyxJQUFBLG1CQUFLLEVBQUMsQ0FBQyxJQUFBLG9CQUFNLEVBQUMsRUFBRSxLQUFLLEVBQUUsSUFBQSxxQkFBTyxHQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUEsb0JBQU0sRUFBQyxFQUFFLElBQUksRUFBRSxJQUFBLG1CQUFLLEVBQUMsQ0FBQyxJQUFBLHFCQUFPLEVBQUMsSUFBSSxDQUFDLEVBQUUsSUFBQSxxQkFBTyxFQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ3pHLENBQUM7QUFHRixNQUFNLFVBQVUsR0FBRyxJQUFBLG9CQUFNLEdBQUUsQ0FBQztBQUU1QixNQUFNLG1CQUFtQixHQUFHLElBQUEsb0JBQU0sRUFBUyxxQkFBcUIsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFO0lBQ3hFLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sR0FBRyxDQUFDO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFFdkUsSUFBSSxDQUFDO1FBQ0gsTUFBTSxDQUFDLEdBQWEsQ0FBQyxDQUFDO1FBQ3RCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUFDLE1BQU0sQ0FBQztRQUNQLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztBQUNILENBQUMsQ0FBQyxDQUFDO0FBRUgsTUFBTSxTQUFTLEdBQUcsSUFBQSxvQkFBTSxFQUFDO0lBQ3ZCLE1BQU0sRUFBRSxJQUFBLHNCQUFRLEVBQUMsbUJBQW1CLENBQUM7SUFDckMsS0FBSyxFQUFFLElBQUEsc0JBQVEsRUFBQyxtQkFBbUIsQ0FBQztJQUNwQyxPQUFPLEVBQUUsSUFBQSxzQkFBUSxFQUFDLElBQUEsbUJBQUssRUFBQyxvQkFBWSxDQUFDLENBQUM7SUFDdEMsS0FBSyxFQUFFLElBQUEsc0JBQVEsRUFBQyxVQUFVLENBQUM7Q0FDNUIsQ0FBQyxDQUFDO0FBR1UsUUFBQSxnQ0FBZ0MsR0FBRyxJQUFBLG9CQUFNLEVBQUM7SUFDckQsT0FBTyxFQUFFLElBQUEscUJBQU8sRUFBQyxDQUFDLENBQUM7SUFDbkIsTUFBTSxFQUFFLElBQUEsc0JBQVEsRUFBQyxVQUFVLENBQUM7SUFDNUIsVUFBVSxFQUFFLDZCQUFxQjtJQUNqQyxTQUFTLEVBQUUsU0FBUztJQUNwQixNQUFNLEVBQUUsSUFBQSxtQkFBSyxFQUFDLG9DQUFxQixDQUFDO0lBQ3BDLFlBQVksRUFBRSxJQUFBLG1CQUFLLEVBQUMsOEJBQWUsQ0FBQztDQUNyQyxDQUFDLENBQUM7QUFHSCxTQUFTLGlCQUFpQixDQUFDLE9BQWU7SUFDeEMsT0FBTyxJQUFBLDJCQUFtQixFQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDeEQsQ0FBQztBQUVELDBFQUEwRTtBQUMxRSx3Q0FBd0M7QUFDM0IsUUFBQSx5QkFBeUIsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDO0FBRXBELE1BQWEsMkJBQTJCO0lBQ3RDLE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBaUI7UUFDcEMsTUFBTSxJQUFJLEdBQUcsYUFBTyxDQUFDLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNsRCxNQUFNLGNBQWMsR0FBRyxJQUFJLEVBQUUsdUJBQXVCLENBQUM7UUFDckQsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQUMsbUNBQW1DLENBQUMsQ0FBQztRQUN2RCxDQUFDO1FBRUQsTUFBTSxVQUFVLEdBQUcsSUFBQSxjQUFNLEVBQ3ZCO1lBQ0UsT0FBTyxFQUFFLENBQUM7WUFDVixTQUFTLEVBQUUsRUFBRTtZQUNiLE1BQU0sRUFBRSxjQUFjLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQWMsRUFBRSxLQUFhLEVBQUUsRUFBRSxDQUNsRSxJQUFBLGNBQU0sRUFDSjtnQkFDRSxJQUFJLEVBQUUsT0FBTztnQkFDYixLQUFLO2dCQUNMLEtBQUs7Z0JBQ0wsSUFBSSxFQUFFLElBQUEsZ0JBQUUsRUFBQyxLQUFLLEVBQUUsb0JBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVE7YUFDakQsRUFDRCxvQ0FBcUIsQ0FDdEIsQ0FDRjtZQUNELFlBQVksRUFBRSxjQUFjLENBQUMsWUFBWTtTQUMxQyxFQUNELHdDQUFnQyxDQUNqQyxDQUFDO1FBRUYsT0FBTywyQkFBMkIsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBaUI7UUFDaEMsTUFBTSxPQUFPLEdBQUcsYUFBTyxDQUFDLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNyRCxNQUFNLElBQUksR0FBRyxPQUFPLEVBQUUsRUFBRSxDQUFDO1FBQ3pCLE1BQU0sY0FBYyxHQUFHLElBQUksRUFBRSxJQUFJLEVBQUUsdUJBQXVCLENBQUM7UUFDM0QsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQzdCLE1BQU0sSUFBSSxLQUFLLENBQUMsbUNBQW1DLENBQUMsQ0FBQztRQUN2RCxDQUFDO1FBRUQsTUFBTSxVQUFVLEdBQUcsSUFBQSxjQUFNLEVBQ3ZCO1lBQ0UsT0FBTyxFQUFFLENBQUM7WUFDVixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzNCLFNBQVMsRUFBRSxJQUFJLENBQUMsT0FBTztZQUN2QixNQUFNLEVBQUUsY0FBYyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFjLEVBQUUsS0FBYSxFQUFFLEVBQUUsQ0FDbEUsSUFBQSxjQUFNLEVBQ0o7Z0JBQ0UsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsS0FBSztnQkFDTCxLQUFLO2dCQUNMLElBQUksRUFBRSxJQUFBLGdCQUFFLEVBQUMsS0FBSyxFQUFFLG9CQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxRQUFRO2FBQ2pELEVBQ0Qsb0NBQXFCLENBQ3RCLENBQ0Y7WUFDRCxZQUFZLEVBQUUsY0FBYyxDQUFDLFlBQVk7U0FDMUMsRUFDRCx3Q0FBZ0MsQ0FDakMsQ0FBQztRQUVGLE9BQU8sMkJBQTJCLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxNQUFNLENBQUMsT0FBTyxDQUFDLElBQXNDO1FBQ25ELElBQUEsb0JBQU0sRUFBQyxJQUFJLEVBQUUsd0NBQWdDLENBQUMsQ0FBQztRQUMvQyxNQUFNLGVBQWUsR0FBRyxJQUFJLDJCQUEyQixFQUFFLENBQUM7UUFDMUQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDckMsT0FBTyxlQUFlLENBQUM7SUFDekIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLGtCQUFrQixDQUFDLEtBQWlCO1FBQ3pDLE1BQU0sSUFBSSxHQUFHLElBQUEsb0JBQWEsRUFBQyxpQkFBaUIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNyRCxPQUFPLElBQUEsV0FBSyxFQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFTRCxZQUFZLEtBQW1DO1FBUC9DLFlBQU8sR0FBRyxDQUFVLENBQUM7UUFRbkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLEVBQUUsTUFBTSxDQUFDO1FBQzVCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxFQUFFLFVBQVUsQ0FBQztRQUNwQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssRUFBRSxTQUFTLElBQUksRUFBRSxDQUFDO1FBQ3hDLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxFQUFFLE1BQU0sSUFBSSxFQUFFLENBQUM7UUFDbEMsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLEVBQUUsWUFBWSxJQUFJLEVBQUUsQ0FBQztJQUNoRCxDQUFDO0lBRUQsS0FBSyxDQUFDLEVBQ0osU0FBUyxFQUNULG1CQUFtQixNQUlqQixFQUFFO1FBQ0osaUNBQWlDO1FBQ2pDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDdkMsSUFBQSxvQkFBTSxFQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsdUJBQWMsQ0FBQyxDQUFDO1lBQ3BDLE9BQU8sS0FBSyxDQUFDLEtBQUssQ0FBQztRQUNyQixDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sSUFBSSxHQUFHO1lBQ1gsdUJBQXVCLEVBQUU7Z0JBQ3ZCLE1BQU07Z0JBQ04sWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO2FBQ2hDO1NBQ0YsQ0FBQztRQUVGLElBQUksbUJBQW1CLEVBQUUsQ0FBQztZQUN4QixPQUFPLGFBQU8sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLEVBQUUsT0FBTyxFQUFFLGlDQUF5QixFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNoRyxDQUFDO1FBRUQsTUFBTSxVQUFVLEdBQUcsU0FBUyxFQUFFLFVBQVUsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQzVELE1BQU0sTUFBTSxHQUFHLFNBQVMsRUFBRSxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUNoRCxNQUFNLFNBQVMsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxHQUFHLFNBQVMsRUFBRSxTQUFTLEVBQUUsQ0FBQztRQUVqRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDWixNQUFNLElBQUksS0FBSyxDQUFDLDRCQUE0QixDQUFDLENBQUM7UUFDaEQsQ0FBQztRQUVELElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQ3hDLENBQUM7UUFFRCxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3ZCLE1BQU0sSUFBSSxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUN6QyxDQUFDO1FBRUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNyQixNQUFNLElBQUksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDdkMsQ0FBQztRQUVELE1BQU0sZUFBZSxHQUFHO1lBQ3RCLE1BQU0sRUFBRSxpQkFBaUIsQ0FBQyxNQUFNLENBQUM7WUFDakMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7WUFDcEQsT0FBTyxFQUFFO2dCQUNQLE9BQU8sRUFBRSxTQUFTLENBQUMsT0FBTztnQkFDMUIsS0FBSyxFQUFFLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxJQUFJLE1BQU0sQ0FBQztnQkFDeEQsS0FBSyxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO2dCQUM5QixNQUFNLEVBQUUsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUM7YUFDakM7WUFDRCxJQUFJLEVBQUU7Z0JBQ0osdUJBQXVCLEVBQUU7b0JBQ3ZCLE1BQU07b0JBQ04sWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO2lCQUNoQzthQUNGO1NBQ0YsQ0FBQztRQUVGLE9BQU8sYUFBTyxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLEVBQUUsRUFBRSxlQUFlLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxpQ0FBeUIsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDbkgsQ0FBQztJQUVELFNBQVM7UUFDUCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsbUJBQW1CLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUN6RCxPQUFPLDJCQUEyQixDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFBLGNBQU0sRUFBQyxJQUFJLEVBQUUsd0NBQWdDLENBQUMsQ0FBQztJQUN4RCxDQUFDO0NBQ0Y7QUF6S0Qsa0VBeUtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdG9CNTggfSBmcm9tICdAbXlzdGVuL2Jjcyc7XG5pbXBvcnQge1xuICBhcnJheSxcbiAgYXNzZXJ0LFxuICBkZWZpbmUsXG4gIEluZmVyLFxuICBpbnRlZ2VyLFxuICBpcyxcbiAgbGl0ZXJhbCxcbiAgbnVsbGFibGUsXG4gIG9iamVjdCxcbiAgb3B0aW9uYWwsXG4gIHN0cmluZyxcbiAgdW5pb24sXG59IGZyb20gJ3N1cGVyc3RydWN0JztcbmltcG9ydCB7IGhhc2hUeXBlZERhdGEgfSBmcm9tICcuLi9jcnlwdG9ncmFwaHkvaGFzaCc7XG5pbXBvcnQgeyBub3JtYWxpemVTdWlBZGRyZXNzLCBTdWlPYmplY3RSZWYgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBidWlsZGVyIH0gZnJvbSAnLi9iY3MnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25UeXBlLCBUcmFuc2FjdGlvbkJsb2NrSW5wdXQgfSBmcm9tICcuL1RyYW5zYWN0aW9ucyc7XG5pbXBvcnQgeyBCdWlsZGVyQ2FsbEFyZywgUHVyZUNhbGxBcmcgfSBmcm9tICcuL0lucHV0cyc7XG5pbXBvcnQgeyBjcmVhdGUgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IFRyYW5zYWN0aW9uRXhwaXJhdGlvbiA9IG9wdGlvbmFsKFxuICBudWxsYWJsZSh1bmlvbihbb2JqZWN0KHsgRXBvY2g6IGludGVnZXIoKSB9KSwgb2JqZWN0KHsgTm9uZTogdW5pb24oW2xpdGVyYWwodHJ1ZSksIGxpdGVyYWwobnVsbCldKSB9KV0pKVxuKTtcbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uRXhwaXJhdGlvbiA9IEluZmVyPHR5cGVvZiBUcmFuc2FjdGlvbkV4cGlyYXRpb24+O1xuXG5jb25zdCBTdWlBZGRyZXNzID0gc3RyaW5nKCk7XG5cbmNvbnN0IFN0cmluZ0VuY29kZWRCaWdpbnQgPSBkZWZpbmU8c3RyaW5nPignU3RyaW5nRW5jb2RlZEJpZ2ludCcsICh2YWwpID0+IHtcbiAgaWYgKCFbJ3N0cmluZycsICdudW1iZXInLCAnYmlnaW50J10uaW5jbHVkZXModHlwZW9mIHZhbCkpIHJldHVybiBmYWxzZTtcblxuICB0cnkge1xuICAgIEJpZ0ludCh2YWwgYXMgc3RyaW5nKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59KTtcblxuY29uc3QgR2FzQ29uZmlnID0gb2JqZWN0KHtcbiAgYnVkZ2V0OiBvcHRpb25hbChTdHJpbmdFbmNvZGVkQmlnaW50KSxcbiAgcHJpY2U6IG9wdGlvbmFsKFN0cmluZ0VuY29kZWRCaWdpbnQpLFxuICBwYXltZW50OiBvcHRpb25hbChhcnJheShTdWlPYmplY3RSZWYpKSxcbiAgb3duZXI6IG9wdGlvbmFsKFN1aUFkZHJlc3MpLFxufSk7XG50eXBlIEdhc0NvbmZpZyA9IEluZmVyPHR5cGVvZiBHYXNDb25maWc+O1xuXG5leHBvcnQgY29uc3QgU2VyaWFsaXplZFRyYW5zYWN0aW9uRGF0YUJ1aWxkZXIgPSBvYmplY3Qoe1xuICB2ZXJzaW9uOiBsaXRlcmFsKDEpLFxuICBzZW5kZXI6IG9wdGlvbmFsKFN1aUFkZHJlc3MpLFxuICBleHBpcmF0aW9uOiBUcmFuc2FjdGlvbkV4cGlyYXRpb24sXG4gIGdhc0NvbmZpZzogR2FzQ29uZmlnLFxuICBpbnB1dHM6IGFycmF5KFRyYW5zYWN0aW9uQmxvY2tJbnB1dCksXG4gIHRyYW5zYWN0aW9uczogYXJyYXkoVHJhbnNhY3Rpb25UeXBlKSxcbn0pO1xuZXhwb3J0IHR5cGUgU2VyaWFsaXplZFRyYW5zYWN0aW9uRGF0YUJ1aWxkZXIgPSBJbmZlcjx0eXBlb2YgU2VyaWFsaXplZFRyYW5zYWN0aW9uRGF0YUJ1aWxkZXI+O1xuXG5mdW5jdGlvbiBwcmVwYXJlU3VpQWRkcmVzcyhhZGRyZXNzOiBzdHJpbmcpIHtcbiAgcmV0dXJuIG5vcm1hbGl6ZVN1aUFkZHJlc3MoYWRkcmVzcykucmVwbGFjZSgnMHgnLCAnJyk7XG59XG5cbi8vIE5PVEU6IFRoaXMgdmFsdWUgc2hvdWxkIGJlIGtlcHQgaW4gc3luYyB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIHZhbHVlIGluXG4vLyBjcmF0ZXMvc3VpLXByb3RvY29sLWNvbmZpZy9zcmMvbGliLnJzXG5leHBvcnQgY29uc3QgVFJBTlNBQ1RJT05fREFUQV9NQVhfU0laRSA9IDEyOCAqIDEwMjQ7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkJsb2NrRGF0YUJ1aWxkZXIge1xuICBzdGF0aWMgZnJvbUtpbmRCeXRlcyhieXRlczogVWludDhBcnJheSkge1xuICAgIGNvbnN0IGtpbmQgPSBidWlsZGVyLmRlKCdUcmFuc2FjdGlvbktpbmQnLCBieXRlcyk7XG4gICAgY29uc3QgcHJvZ3JhbW1hYmxlVHggPSBraW5kPy5Qcm9ncmFtbWFibGVUcmFuc2FjdGlvbjtcbiAgICBpZiAoIXByb2dyYW1tYWJsZVR4KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1VuYWJsZSB0byBkZXNlcmlhbGl6ZSBmcm9tIGJ5dGVzLicpO1xuICAgIH1cblxuICAgIGNvbnN0IHNlcmlhbGl6ZWQgPSBjcmVhdGUoXG4gICAgICB7XG4gICAgICAgIHZlcnNpb246IDEsXG4gICAgICAgIGdhc0NvbmZpZzoge30sXG4gICAgICAgIGlucHV0czogcHJvZ3JhbW1hYmxlVHguaW5wdXRzLm1hcCgodmFsdWU6IHVua25vd24sIGluZGV4OiBudW1iZXIpID0+XG4gICAgICAgICAgY3JlYXRlKFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBraW5kOiAnSW5wdXQnLFxuICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgICAgaW5kZXgsXG4gICAgICAgICAgICAgIHR5cGU6IGlzKHZhbHVlLCBQdXJlQ2FsbEFyZykgPyAncHVyZScgOiAnb2JqZWN0JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBUcmFuc2FjdGlvbkJsb2NrSW5wdXRcbiAgICAgICAgICApXG4gICAgICAgICksXG4gICAgICAgIHRyYW5zYWN0aW9uczogcHJvZ3JhbW1hYmxlVHgudHJhbnNhY3Rpb25zLFxuICAgICAgfSxcbiAgICAgIFNlcmlhbGl6ZWRUcmFuc2FjdGlvbkRhdGFCdWlsZGVyXG4gICAgKTtcblxuICAgIHJldHVybiBUcmFuc2FjdGlvbkJsb2NrRGF0YUJ1aWxkZXIucmVzdG9yZShzZXJpYWxpemVkKTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tQnl0ZXMoYnl0ZXM6IFVpbnQ4QXJyYXkpIHtcbiAgICBjb25zdCByYXdEYXRhID0gYnVpbGRlci5kZSgnVHJhbnNhY3Rpb25EYXRhJywgYnl0ZXMpO1xuICAgIGNvbnN0IGRhdGEgPSByYXdEYXRhPy5WMTtcbiAgICBjb25zdCBwcm9ncmFtbWFibGVUeCA9IGRhdGE/LmtpbmQ/LlByb2dyYW1tYWJsZVRyYW5zYWN0aW9uO1xuICAgIGlmICghZGF0YSB8fCAhcHJvZ3JhbW1hYmxlVHgpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVW5hYmxlIHRvIGRlc2VyaWFsaXplIGZyb20gYnl0ZXMuJyk7XG4gICAgfVxuXG4gICAgY29uc3Qgc2VyaWFsaXplZCA9IGNyZWF0ZShcbiAgICAgIHtcbiAgICAgICAgdmVyc2lvbjogMSxcbiAgICAgICAgc2VuZGVyOiBkYXRhLnNlbmRlcixcbiAgICAgICAgZXhwaXJhdGlvbjogZGF0YS5leHBpcmF0aW9uLFxuICAgICAgICBnYXNDb25maWc6IGRhdGEuZ2FzRGF0YSxcbiAgICAgICAgaW5wdXRzOiBwcm9ncmFtbWFibGVUeC5pbnB1dHMubWFwKCh2YWx1ZTogdW5rbm93biwgaW5kZXg6IG51bWJlcikgPT5cbiAgICAgICAgICBjcmVhdGUoXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGtpbmQ6ICdJbnB1dCcsXG4gICAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgICBpbmRleCxcbiAgICAgICAgICAgICAgdHlwZTogaXModmFsdWUsIFB1cmVDYWxsQXJnKSA/ICdwdXJlJyA6ICdvYmplY3QnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFRyYW5zYWN0aW9uQmxvY2tJbnB1dFxuICAgICAgICAgIClcbiAgICAgICAgKSxcbiAgICAgICAgdHJhbnNhY3Rpb25zOiBwcm9ncmFtbWFibGVUeC50cmFuc2FjdGlvbnMsXG4gICAgICB9LFxuICAgICAgU2VyaWFsaXplZFRyYW5zYWN0aW9uRGF0YUJ1aWxkZXJcbiAgICApO1xuXG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uQmxvY2tEYXRhQnVpbGRlci5yZXN0b3JlKHNlcmlhbGl6ZWQpO1xuICB9XG5cbiAgc3RhdGljIHJlc3RvcmUoZGF0YTogU2VyaWFsaXplZFRyYW5zYWN0aW9uRGF0YUJ1aWxkZXIpIHtcbiAgICBhc3NlcnQoZGF0YSwgU2VyaWFsaXplZFRyYW5zYWN0aW9uRGF0YUJ1aWxkZXIpO1xuICAgIGNvbnN0IHRyYW5zYWN0aW9uRGF0YSA9IG5ldyBUcmFuc2FjdGlvbkJsb2NrRGF0YUJ1aWxkZXIoKTtcbiAgICBPYmplY3QuYXNzaWduKHRyYW5zYWN0aW9uRGF0YSwgZGF0YSk7XG4gICAgcmV0dXJuIHRyYW5zYWN0aW9uRGF0YTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSB0cmFuc2FjdGlvbiBkaWdlc3QuXG4gICAqXG4gICAqIEBwYXJhbSBieXRlcyBCQ1Mgc2VyaWFsaXplZCB0cmFuc2FjdGlvbiBkYXRhXG4gICAqIEByZXR1cm5zIHRyYW5zYWN0aW9uIGRpZ2VzdC5cbiAgICovXG4gIHN0YXRpYyBnZXREaWdlc3RGcm9tQnl0ZXMoYnl0ZXM6IFVpbnQ4QXJyYXkpIHtcbiAgICBjb25zdCBoYXNoID0gaGFzaFR5cGVkRGF0YSgnVHJhbnNhY3Rpb25EYXRhJywgYnl0ZXMpO1xuICAgIHJldHVybiB0b0I1OChoYXNoKTtcbiAgfVxuXG4gIHZlcnNpb24gPSAxIGFzIGNvbnN0O1xuICBzZW5kZXI/OiBzdHJpbmc7XG4gIGV4cGlyYXRpb24/OiBUcmFuc2FjdGlvbkV4cGlyYXRpb247XG4gIGdhc0NvbmZpZzogR2FzQ29uZmlnO1xuICBpbnB1dHM6IFRyYW5zYWN0aW9uQmxvY2tJbnB1dFtdO1xuICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uVHlwZVtdO1xuXG4gIGNvbnN0cnVjdG9yKGNsb25lPzogVHJhbnNhY3Rpb25CbG9ja0RhdGFCdWlsZGVyKSB7XG4gICAgdGhpcy5zZW5kZXIgPSBjbG9uZT8uc2VuZGVyO1xuICAgIHRoaXMuZXhwaXJhdGlvbiA9IGNsb25lPy5leHBpcmF0aW9uO1xuICAgIHRoaXMuZ2FzQ29uZmlnID0gY2xvbmU/Lmdhc0NvbmZpZyA/PyB7fTtcbiAgICB0aGlzLmlucHV0cyA9IGNsb25lPy5pbnB1dHMgPz8gW107XG4gICAgdGhpcy50cmFuc2FjdGlvbnMgPSBjbG9uZT8udHJhbnNhY3Rpb25zID8/IFtdO1xuICB9XG5cbiAgYnVpbGQoe1xuICAgIG92ZXJyaWRlcyxcbiAgICBvbmx5VHJhbnNhY3Rpb25LaW5kLFxuICB9OiB7XG4gICAgb3ZlcnJpZGVzPzogUGljazxQYXJ0aWFsPFRyYW5zYWN0aW9uQmxvY2tEYXRhQnVpbGRlcj4sICdzZW5kZXInIHwgJ2dhc0NvbmZpZycgfCAnZXhwaXJhdGlvbic+O1xuICAgIG9ubHlUcmFuc2FjdGlvbktpbmQ/OiBib29sZWFuO1xuICB9ID0ge30pIHtcbiAgICAvLyBSZXNvbHZlIGlucHV0cyBkb3duIHRvIHZhbHVlczpcbiAgICBjb25zdCBpbnB1dHMgPSB0aGlzLmlucHV0cy5tYXAoKGlucHV0KSA9PiB7XG4gICAgICBhc3NlcnQoaW5wdXQudmFsdWUsIEJ1aWxkZXJDYWxsQXJnKTtcbiAgICAgIHJldHVybiBpbnB1dC52YWx1ZTtcbiAgICB9KTtcblxuICAgIGNvbnN0IGtpbmQgPSB7XG4gICAgICBQcm9ncmFtbWFibGVUcmFuc2FjdGlvbjoge1xuICAgICAgICBpbnB1dHMsXG4gICAgICAgIHRyYW5zYWN0aW9uczogdGhpcy50cmFuc2FjdGlvbnMsXG4gICAgICB9LFxuICAgIH07XG5cbiAgICBpZiAob25seVRyYW5zYWN0aW9uS2luZCkge1xuICAgICAgcmV0dXJuIGJ1aWxkZXIuc2VyKCdUcmFuc2FjdGlvbktpbmQnLCBraW5kLCB7IG1heFNpemU6IFRSQU5TQUNUSU9OX0RBVEFfTUFYX1NJWkUgfSkudG9CeXRlcygpO1xuICAgIH1cblxuICAgIGNvbnN0IGV4cGlyYXRpb24gPSBvdmVycmlkZXM/LmV4cGlyYXRpb24gPz8gdGhpcy5leHBpcmF0aW9uO1xuICAgIGNvbnN0IHNlbmRlciA9IG92ZXJyaWRlcz8uc2VuZGVyID8/IHRoaXMuc2VuZGVyO1xuICAgIGNvbnN0IGdhc0NvbmZpZyA9IHsgLi4udGhpcy5nYXNDb25maWcsIC4uLm92ZXJyaWRlcz8uZ2FzQ29uZmlnIH07XG5cbiAgICBpZiAoIXNlbmRlcikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNaXNzaW5nIHRyYW5zYWN0aW9uIHNlbmRlcicpO1xuICAgIH1cblxuICAgIGlmICghZ2FzQ29uZmlnLmJ1ZGdldCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNaXNzaW5nIGdhcyBidWRnZXQnKTtcbiAgICB9XG5cbiAgICBpZiAoIWdhc0NvbmZpZy5wYXltZW50KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ01pc3NpbmcgZ2FzIHBheW1lbnQnKTtcbiAgICB9XG5cbiAgICBpZiAoIWdhc0NvbmZpZy5wcmljZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNaXNzaW5nIGdhcyBwcmljZScpO1xuICAgIH1cblxuICAgIGNvbnN0IHRyYW5zYWN0aW9uRGF0YSA9IHtcbiAgICAgIHNlbmRlcjogcHJlcGFyZVN1aUFkZHJlc3Moc2VuZGVyKSxcbiAgICAgIGV4cGlyYXRpb246IGV4cGlyYXRpb24gPyBleHBpcmF0aW9uIDogeyBOb25lOiB0cnVlIH0sXG4gICAgICBnYXNEYXRhOiB7XG4gICAgICAgIHBheW1lbnQ6IGdhc0NvbmZpZy5wYXltZW50LFxuICAgICAgICBvd25lcjogcHJlcGFyZVN1aUFkZHJlc3ModGhpcy5nYXNDb25maWcub3duZXIgPz8gc2VuZGVyKSxcbiAgICAgICAgcHJpY2U6IEJpZ0ludChnYXNDb25maWcucHJpY2UpLFxuICAgICAgICBidWRnZXQ6IEJpZ0ludChnYXNDb25maWcuYnVkZ2V0KSxcbiAgICAgIH0sXG4gICAgICBraW5kOiB7XG4gICAgICAgIFByb2dyYW1tYWJsZVRyYW5zYWN0aW9uOiB7XG4gICAgICAgICAgaW5wdXRzLFxuICAgICAgICAgIHRyYW5zYWN0aW9uczogdGhpcy50cmFuc2FjdGlvbnMsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG5cbiAgICByZXR1cm4gYnVpbGRlci5zZXIoJ1RyYW5zYWN0aW9uRGF0YScsIHsgVjE6IHRyYW5zYWN0aW9uRGF0YSB9LCB7IG1heFNpemU6IFRSQU5TQUNUSU9OX0RBVEFfTUFYX1NJWkUgfSkudG9CeXRlcygpO1xuICB9XG5cbiAgZ2V0RGlnZXN0KCkge1xuICAgIGNvbnN0IGJ5dGVzID0gdGhpcy5idWlsZCh7IG9ubHlUcmFuc2FjdGlvbktpbmQ6IGZhbHNlIH0pO1xuICAgIHJldHVybiBUcmFuc2FjdGlvbkJsb2NrRGF0YUJ1aWxkZXIuZ2V0RGlnZXN0RnJvbUJ5dGVzKGJ5dGVzKTtcbiAgfVxuXG4gIHNuYXBzaG90KCk6IFNlcmlhbGl6ZWRUcmFuc2FjdGlvbkRhdGFCdWlsZGVyIHtcbiAgICByZXR1cm4gY3JlYXRlKHRoaXMsIFNlcmlhbGl6ZWRUcmFuc2FjdGlvbkRhdGFCdWlsZGVyKTtcbiAgfVxufVxuIl19
|
|
@@ -88,12 +88,11 @@ function getTransactionType(data) {
|
|
|
88
88
|
*/
|
|
89
89
|
exports.Transactions = {
|
|
90
90
|
MoveCall(input) {
|
|
91
|
-
var _a, _b;
|
|
92
91
|
return (0, utils_1.create)({
|
|
93
92
|
kind: 'MoveCall',
|
|
94
93
|
target: input.target,
|
|
95
|
-
arguments:
|
|
96
|
-
typeArguments:
|
|
94
|
+
arguments: input.arguments ?? [],
|
|
95
|
+
typeArguments: input.typeArguments ?? [],
|
|
97
96
|
}, exports.MoveCallTransaction);
|
|
98
97
|
},
|
|
99
98
|
TransferObjects(objects, address) {
|
|
@@ -116,4 +115,4 @@ exports.Transactions = {
|
|
|
116
115
|
}, exports.MakeMoveVecTransaction);
|
|
117
116
|
},
|
|
118
117
|
};
|
|
119
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNhY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9teXN0ZW5sYWIvYnVpbGRlci9UcmFuc2FjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBbUhBLGdEQUdDO0FBdEhELHFDQUFrQztBQUNsQyw2Q0FjcUI7QUFDckIsNENBQTJDO0FBQzNDLG1DQUFzRTtBQUV0RSxNQUFNLE1BQU0sR0FBRyxDQUE2QixJQUFPLEVBQUUsRUFBRSxDQUNyRCxJQUFBLG1CQUFLLEVBQUMsQ0FBQyxJQUFBLG9CQUFNLEVBQUMsRUFBRSxJQUFJLEVBQUUsSUFBQSxxQkFBTyxFQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxJQUFBLG9CQUFNLEVBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFFdEQsUUFBQSxxQkFBcUIsR0FBRyxJQUFBLG9CQUFNLEVBQUM7SUFDMUMsSUFBSSxFQUFFLElBQUEscUJBQU8sRUFBQyxPQUFPLENBQUM7SUFDdEIsS0FBSyxFQUFFLElBQUEscUJBQU8sR0FBRTtJQUNoQixLQUFLLEVBQUUsSUFBQSxzQkFBUSxFQUFDLElBQUEsaUJBQUcsR0FBRSxDQUFDO0lBQ3RCLElBQUksRUFBRSxJQUFBLHNCQUFRLEVBQUMsSUFBQSxtQkFBSyxFQUFDLENBQUMsSUFBQSxxQkFBTyxFQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUEscUJBQU8sRUFBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7Q0FDNUQsQ0FBQyxDQUFDO0FBR0gsTUFBTSx3QkFBd0IsR0FBRztJQUMvQiw2QkFBcUI7SUFDckIsSUFBQSxvQkFBTSxFQUFDLEVBQUUsSUFBSSxFQUFFLElBQUEscUJBQU8sRUFBQyxTQUFTLENBQUMsRUFBRSxDQUFDO0lBQ3BDLElBQUEsb0JBQU0sRUFBQyxFQUFFLElBQUksRUFBRSxJQUFBLHFCQUFPLEVBQUMsUUFBUSxDQUFDLEVBQUUs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bEUsT0FBTyxJQUFBLGNBQU0sRUFBQyxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLDZCQUFxQixDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUNELFVBQVUsQ0FBQyxXQUFnQyxFQUFFLE9BQThCO1FBQ3pFLE9BQU8sSUFBQSxjQUFNLEVBQUMsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsRUFBRSw2QkFBcUIsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7SUFDRCxPQUFPLENBQUMsT0FBbUIsRUFBRSxZQUF3QjtRQUNuRCxPQUFPLElBQUEsY0FBTSxFQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLEVBQUUsMEJBQWtCLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBQ0QsV0FBVyxDQUFDLEVBQ1YsSUFBSSxFQUNKLE9BQU8sR0FHUjtRQUNDLE9BQU8sSUFBQSxjQUFNLEVBQ1g7WUFDRSxJQUFJLEVBQUUsYUFBYTtZQUNuQixJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFO1lBQzVDLE9BQU87U0FDUixFQUNELDhCQUFzQixDQUN2QixDQUFDO0lBQ0osQ0FBQztDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCQ1MgfSBmcm9tICdAbXlzdGVuL2Jjcyc7XG5pbXBvcnQge1xuICBpcyxcbiAgYW55LFxuICBhcnJheSxcbiAgSW5mZXIsXG4gIGludGVnZXIsXG4gIGxpdGVyYWwsXG4gIG9iamVjdCxcbiAgb3B0aW9uYWwsXG4gIHN0cmluZyxcbiAgdW5pb24sXG4gIGFzc2VydCxcbiAgU3RydWN0LFxuICBkZWZpbmUsXG59IGZyb20gJ3N1cGVyc3RydWN0JztcbmltcG9ydCB7IE9iamVjdElkIH0gZnJvbSAnLi4vdHlwZXMvY29tbW9uJztcbmltcG9ydCB7IFRSQU5TQUNUSU9OX1RZUEUsIFdlbGxLbm93bkVuY29kaW5nLCBjcmVhdGUgfSBmcm9tICcuL3V0aWxzJztcblxuY29uc3Qgb3B0aW9uID0gPFQgZXh0ZW5kcyBTdHJ1Y3Q8YW55LCBhbnk+Pihzb21lOiBUKSA9PlxuICB1bmlvbihbb2JqZWN0KHsgTm9uZTogbGl0ZXJhbChudWxsKSB9KSwgb2JqZWN0KHsgU29tZTogc29tZSB9KV0pO1xuXG5leHBvcnQgY29uc3QgVHJhbnNhY3Rpb25CbG9ja0lucHV0ID0gb2JqZWN0KHtcbiAga2luZDogbGl0ZXJhbCgnSW5wdXQnKSxcbiAgaW5kZXg6IGludGVnZXIoKSxcbiAgdmFsdWU6IG9wdGlvbmFsKGFueSgpKSxcbiAgdHlwZTogb3B0aW9uYWwodW5pb24oW2xpdGVyYWwoJ3B1cmUnKSwgbGl0ZXJhbCgnb2JqZWN0JyldKSksXG59KTtcbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uQmxvY2tJbnB1dCA9IEluZmVyPHR5cGVvZiBUcmFuc2FjdGlvbkJsb2NrSW5wdXQ+O1xuXG5jb25zdCBUcmFuc2FjdGlvbkFyZ3VtZW50VHlwZXMgPSBbXG4gIFRyYW5zYWN0aW9uQmxvY2tJbnB1dCxcbiAgb2JqZWN0KHsga2luZDogbGl0ZXJhbCgnR2FzQ29pbicpIH0pLFxuICBvYmplY3QoeyBraW5kOiBsaXRlcmFsKCdSZXN1bHQnKSwgaW5kZXg6IGludGVnZXIoKSB9KSxcbiAgb2JqZWN0KHtcbiAgICBraW5kOiBsaXRlcmFsKCdOZXN0ZWRSZXN1bHQnKSxcbiAgICBpbmRleDogaW50ZWdlcigpLFxuICAgIHJlc3VsdEluZGV4OiBpbnRlZ2VyKCksXG4gIH0pLFxuXSBhcyBjb25zdDtcblxuLy8gR2VuZXJpYyB0cmFuc2FjdGlvbiBhcmd1bWVudFxuZXhwb3J0IGNvbnN0IFRyYW5zYWN0aW9uQXJndW1lbnQgPSB1bmlvbihbLi4uVHJhbnNhY3Rpb25Bcmd1bWVudFR5cGVzXSk7XG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvbkFyZ3VtZW50ID0gSW5mZXI8dHlwZW9mIFRyYW5zYWN0aW9uQXJndW1lbnQ+O1xuXG4vLyBUcmFuc2FjdGlvbiBhcmd1bWVudCByZWZlcnJpbmcgdG8gYW4gb2JqZWN0OlxuZXhwb3J0IGNvbnN0IE9iamVjdFRyYW5zYWN0aW9uQXJndW1lbnQgPSB1bmlvbihbLi4uVHJhbnNhY3Rpb25Bcmd1bWVudFR5cGVzXSk7XG4oT2JqZWN0VHJhbnNhY3Rpb25Bcmd1bWVudCBhcyBhbnkpW1RSQU5TQUNUSU9OX1RZUEVdID0ge1xuICBraW5kOiAnb2JqZWN0Jyxcbn0gYXMgV2VsbEtub3duRW5jb2Rpbmc7XG5cbmV4cG9ydCBjb25zdCBQdXJlVHJhbnNhY3Rpb25Bcmd1bWVudCA9ICh0eXBlOiBzdHJpbmcpID0+IHtcbiAgY29uc3Qgc3RydWN0ID0gdW5pb24oWy4uLlRyYW5zYWN0aW9uQXJndW1lbnRUeXBlc10pO1xuICAoc3RydWN0IGFzIGFueSlbVFJBTlNBQ1RJT05fVFlQRV0gPSB7XG4gICAga2luZDogJ3B1cmUnLFxuICAgIHR5cGUsXG4gIH0gYXMgV2VsbEtub3duRW5jb2Rpbmc7XG4gIHJldHVybiBzdHJ1Y3Q7XG59O1xuXG5leHBvcnQgY29uc3QgTW92ZUNhbGxUcmFuc2FjdGlvbiA9IG9iamVjdCh7XG4gIGtpbmQ6IGxpdGVyYWwoJ01vdmVDYWxsJyksXG4gIHRhcmdldDogZGVmaW5lPGAke3N0cmluZ306OiR7c3RyaW5nfTo6JHtzdHJpbmd9YD4oJ3RhcmdldCcsIHN0cmluZygpLnZhbGlkYXRvciksXG4gIHR5cGVBcmd1bWVudHM6IGFycmF5KHN0cmluZygpKSxcbiAgYXJndW1lbnRzOiBhcnJheShUcmFuc2FjdGlvbkFyZ3VtZW50KSxcbn0pO1xuZXhwb3J0IHR5cGUgTW92ZUNhbGxUcmFuc2FjdGlvbiA9IEluZmVyPHR5cGVvZiBNb3ZlQ2FsbFRyYW5zYWN0aW9uPjtcblxuZXhwb3J0IGNvbnN0IFRyYW5zZmVyT2JqZWN0c1RyYW5zYWN0aW9uID0gb2JqZWN0KHtcbiAga2luZDogbGl0ZXJhbCgnVHJhbnNmZXJPYmplY3RzJyksXG4gIG9iamVjdHM6IGFycmF5KE9iamVjdFRyYW5zYWN0aW9uQXJndW1lbnQpLFxuICBhZGRyZXNzOiBQdXJlVHJhbnNhY3Rpb25Bcmd1bWVudChCQ1MuQUREUkVTUyksXG59KTtcbmV4cG9ydCB0eXBlIFRyYW5zZmVyT2JqZWN0c1RyYW5zYWN0aW9uID0gSW5mZXI8dHlwZW9mIFRyYW5zZmVyT2JqZWN0c1RyYW5zYWN0aW9uPjtcblxuZXhwb3J0IGNvbnN0IFNwbGl0Q29pbnNUcmFuc2FjdGlvbiA9IG9iamVjdCh7XG4gIGtpbmQ6IGxpdGVyYWwoJ1NwbGl0Q29pbnMnKSxcbiAgY29pbjogT2JqZWN0VHJhbnNhY3Rpb25Bcmd1bWVudCxcbiAgYW1vdW50czogYXJyYXkoUHVyZVRyYW5zYWN0aW9uQXJndW1lbnQoJ3U2NCcpKSxcbn0pO1xuZXhwb3J0IHR5cGUgU3BsaXRDb2luc1RyYW5zYWN0aW9uID0gSW5mZXI8dHlwZW9mIFNwbGl0Q29pbnNUcmFuc2FjdGlvbj47XG5cbmV4cG9ydCBjb25zdCBNZXJnZUNvaW5zVHJhbnNhY3Rpb24gPSBvYmplY3Qoe1xuICBraW5kOiBsaXRlcmFsKCdNZXJnZUNvaW5zJyksXG4gIGRlc3RpbmF0aW9uOiBPYmplY3RUcmFuc2FjdGlvbkFyZ3VtZW50LFxuICBzb3VyY2VzOiBhcnJheShPYmplY3RUcmFuc2FjdGlvbkFyZ3VtZW50KSxcbn0pO1xuZXhwb3J0IHR5cGUgTWVyZ2VDb2luc1RyYW5zYWN0aW9uID0gSW5mZXI8dHlwZW9mIE1lcmdlQ29pbnNUcmFuc2FjdGlvbj47XG5cbmV4cG9ydCBjb25zdCBNYWtlTW92ZVZlY1RyYW5zYWN0aW9uID0gb2JqZWN0KHtcbiAga2luZDogbGl0ZXJhbCgnTWFrZU1vdmVWZWMnKSxcbiAgdHlwZTogb3B0aW9uYWwob3B0aW9uKHN0cmluZygpKSksXG4gIG9iamVjdHM6IGFycmF5KE9iamVjdFRyYW5zYWN0aW9uQXJndW1lbnQpLFxufSk7XG5leHBvcnQgdHlwZSBNYWtlTW92ZVZlY1RyYW5zYWN0aW9uID0gSW5mZXI8dHlwZW9mIE1ha2VNb3ZlVmVjVHJhbnNhY3Rpb24+O1xuXG5leHBvcnQgY29uc3QgUHVibGlzaFRyYW5zYWN0aW9uID0gb2JqZWN0KHtcbiAga2luZDogbGl0ZXJhbCgnUHVibGlzaCcpLFxuICBtb2R1bGVzOiBhcnJheShhcnJheShpbnRlZ2VyKCkpKSxcbiAgZGVwZW5kZW5jaWVzOiBhcnJheShPYmplY3RJZCksXG59KTtcbmV4cG9ydCB0eXBlIFB1Ymxpc2hUcmFuc2FjdGlvbiA9IEluZmVyPHR5cGVvZiBQdWJsaXNoVHJhbnNhY3Rpb24+O1xuXG5jb25zdCBUcmFuc2FjdGlvblR5cGVzID0gW1xuICBNb3ZlQ2FsbFRyYW5zYWN0aW9uLFxuICBUcmFuc2Zlck9iamVjdHNUcmFuc2FjdGlvbixcbiAgU3BsaXRDb2luc1RyYW5zYWN0aW9uLFxuICBNZXJnZUNvaW5zVHJhbnNhY3Rpb24sXG4gIFB1Ymxpc2hUcmFuc2FjdGlvbixcbiAgTWFrZU1vdmVWZWNUcmFuc2FjdGlvbixcbl0gYXMgY29uc3Q7XG5cbmV4cG9ydCBjb25zdCBUcmFuc2FjdGlvblR5cGUgPSB1bmlvbihbLi4uVHJhbnNhY3Rpb25UeXBlc10pO1xuZXhwb3J0IHR5cGUgVHJhbnNhY3Rpb25UeXBlID0gSW5mZXI8dHlwZW9mIFRyYW5zYWN0aW9uVHlwZT47XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRUcmFuc2FjdGlvblR5cGUoZGF0YTogdW5rbm93bikge1xuICBhc3NlcnQoZGF0YSwgVHJhbnNhY3Rpb25UeXBlKTtcbiAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZXMuZmluZCgoc2NoZW1hKSA9PiBpcyhkYXRhLCBzY2hlbWEgYXMgU3RydWN0KSkhO1xufVxuXG4vKipcbiAqIFNpbXBsZSBoZWxwZXJzIHVzZWQgdG8gY29uc3RydWN0IHRyYW5zYWN0aW9uczpcbiAqL1xuZXhwb3J0IGNvbnN0IFRyYW5zYWN0aW9ucyA9IHtcbiAgTW92ZUNhbGwoXG4gICAgaW5wdXQ6IE9taXQ8TW92ZUNhbGxUcmFuc2FjdGlvbiwgJ2tpbmQnIHwgJ2FyZ3VtZW50cycgfCAndHlwZUFyZ3VtZW50cyc+ICYge1xuICAgICAgYXJndW1lbnRzPzogVHJhbnNhY3Rpb25Bcmd1bWVudFtdO1xuICAgICAgdHlwZUFyZ3VtZW50cz86IHN0cmluZ1tdO1xuICAgIH1cbiAgKTogTW92ZUNhbGxUcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIGNyZWF0ZShcbiAgICAgIHtcbiAgICAgICAga2luZDogJ01vdmVDYWxsJyxcbiAgICAgICAgdGFyZ2V0OiBpbnB1dC50YXJnZXQsXG4gICAgICAgIGFyZ3VtZW50czogaW5wdXQuYXJndW1lbnRzID8/IFtdLFxuICAgICAgICB0eXBlQXJndW1lbnRzOiBpbnB1dC50eXBlQXJndW1lbnRzID8/IFtdLFxuICAgICAgfSxcbiAgICAgIE1vdmVDYWxsVHJhbnNhY3Rpb25cbiAgICApO1xuICB9LFxuICBUcmFuc2Zlck9iamVjdHMob2JqZWN0czogVHJhbnNhY3Rpb25Bcmd1bWVudFtdLCBhZGRyZXNzOiBUcmFuc2FjdGlvbkFyZ3VtZW50KTogVHJhbnNmZXJPYmplY3RzVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiBjcmVhdGUoeyBraW5kOiAnVHJhbnNmZXJPYmplY3RzJywgb2JqZWN0cywgYWRkcmVzcyB9LCBUcmFuc2Zlck9iamVjdHNUcmFuc2FjdGlvbik7XG4gIH0sXG4gIFNwbGl0Q29pbnMoY29pbjogVHJhbnNhY3Rpb25Bcmd1bWVudCwgYW1vdW50czogVHJhbnNhY3Rpb25Bcmd1bWVudFtdKTogU3BsaXRDb2luc1RyYW5zYWN0aW9uIHtcbiAgICByZXR1cm4gY3JlYXRlKHsga2luZDogJ1NwbGl0Q29pbnMnLCBjb2luLCBhbW91bnRzIH0sIFNwbGl0Q29pbnNUcmFuc2FjdGlvbik7XG4gIH0sXG4gIE1lcmdlQ29pbnMoZGVzdGluYXRpb246IFRyYW5zYWN0aW9uQXJndW1lbnQsIHNvdXJjZXM6IFRyYW5zYWN0aW9uQXJndW1lbnRbXSk6IE1lcmdlQ29pbnNUcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIGNyZWF0ZSh7IGtpbmQ6ICdNZXJnZUNvaW5zJywgZGVzdGluYXRpb24sIHNvdXJjZXMgfSwgTWVyZ2VDb2luc1RyYW5zYWN0aW9uKTtcbiAgfSxcbiAgUHVibGlzaChtb2R1bGVzOiBudW1iZXJbXVtdLCBkZXBlbmRlbmNpZXM6IE9iamVjdElkW10pOiBQdWJsaXNoVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiBjcmVhdGUoeyBraW5kOiAnUHVibGlzaCcsIG1vZHVsZXMsIGRlcGVuZGVuY2llcyB9LCBQdWJsaXNoVHJhbnNhY3Rpb24pO1xuICB9LFxuICBNYWtlTW92ZVZlYyh7XG4gICAgdHlwZSxcbiAgICBvYmplY3RzLFxuICB9OiBPbWl0PE1ha2VNb3ZlVmVjVHJhbnNhY3Rpb24sICdraW5kJyB8ICd0eXBlJz4gJiB7XG4gICAgdHlwZT86IHN0cmluZztcbiAgfSk6IE1ha2VNb3ZlVmVjVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiBjcmVhdGUoXG4gICAgICB7XG4gICAgICAgIGtpbmQ6ICdNYWtlTW92ZVZlYycsXG4gICAgICAgIHR5cGU6IHR5cGUgPyB7IFNvbWU6IHR5cGUgfSA6IHsgTm9uZTogbnVsbCB9LFxuICAgICAgICBvYmplY3RzLFxuICAgICAgfSxcbiAgICAgIE1ha2VNb3ZlVmVjVHJhbnNhY3Rpb25cbiAgICApO1xuICB9LFxufTtcbiJdfQ==
|
|
118
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNhY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9teXN0ZW5sYWIvYnVpbGRlci9UcmFuc2FjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBbUhBLGdEQUdDO0FBdEhELHFDQUFrQztBQUNsQyw2Q0FjcUI7QUFDckIsNENBQTJDO0FBQzNDLG1DQUFzRTtBQUV0RSxNQUFNLE1BQU0sR0FBRyxDQUE2QixJQUFPLEVBQUUsRUFBRSxDQUNyRCxJQUFBLG1CQUFLLEVBQUMsQ0FBQyxJQUFBLG9CQUFNLEVBQUMsRUFBRSxJQUFJLEVBQUUsSUFBQSxxQkFBTyxFQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxJQUFBLG9CQUFNLEVBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFFdEQsUUFBQSxxQkFBcUIsR0FBRyxJQUFBLG9CQUFNLEVBQUM7SUFDMUMsSUFBSSxFQUFFLElBQUEscUJBQU8sRUFBQyxPQUFPLENBQUM7SUFDdEIsS0FBSyxFQUFFLElBQUEscUJBQU8sR0FBRTtJQUNoQixLQUFLLEVBQUUsSUFBQSxzQkFBUSxFQUFDLElBQUEsaUJBQUcsR0FBRSxDQUFDO0lBQ3RCLElBQUksRUFBRSxJQUFBLHNCQUFRLEVBQUMsSUFBQSxtQkFBSyxFQUFDLENBQUMsSUFBQSxxQkFBTyxFQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUEscUJBQU8sRUFBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7Q0FDNUQsQ0FBQyxDQUFDO0FBR0gsTUFBTSx3QkFBd0IsR0FBRztJQUMvQiw2QkFBcUI7SUFDckIsSUFBQSxvQkFBTSxFQUFDLEVBQUUsSUFBSSxFQUFFLElBQUEscUJBQU8sRUFBQyxTQUFTLENBQUMsRUFBRSxDQUFDO0lBQ3BDLElBQUEsb0JBQU0sRUFBQyxFQUFFLElBQUksRUFBRSxJQUFBLHFCQUFPLEVBQUMsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUEscUJBQU8sR0FBRSxFQUFFLENBQUM7SUFDckQsSUFBQSxvQkFBTSxFQUFDO1FBQ0wsSUFBSSxFQUFFLElBQUEscUJBQU8sRUFBQyxjQUFjLENBQUM7UUFDN0IsS0FBSyxFQUFFLElBQUEscUJBQU8sR0FBRTtRQUNoQixXQUFXLEVBQUUsSUFBQSxxQkFBTyxHQUFFO0tBQ3ZCLENBQUM7Q0FDTSxDQUFDO0FBRVgsK0JBQStCO0FBQ2xCLFFBQUEsbUJBQW1CLEdBQUcsSUFBQSxtQkFBSyxFQUFDLENBQUMsR0FBRyx3QkFBd0IsQ0FBQyxDQUFDLENBQUM7QUFHeEUsK0NBQStDO0FBQ2xDLFFBQUEseUJBQXlCLEdBQUcsSUFBQSxtQkFBSyxFQUFDLENBQUMsR0FBRyx3QkFBd0IsQ0FBQyxDQUFDLENBQUM7QUFDN0UsaUNBQWlDLENBQUMsd0JBQWdCLENBQUMsR0FBRztJQUNyRCxJQUFJLEVBQUUsUUFBUTtDQUNNLENBQUM7QUFFaEIsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLElBQVksRUFBRSxFQUFFO0lBQ3RELE1BQU0sTUFBTSxHQUFHLElBQUEsbUJBQUssRUFBQyxDQUFDLEdBQUcsd0JBQXdCLENBQUMsQ0FBQyxDQUFDO0lBQ25ELE1BQWMsQ0FBQyx3QkFBZ0IsQ0FBQyxHQUFHO1FBQ2xDLElBQUksRUFBRSxNQUFNO1FBQ1osSUFBSTtLQUNnQixDQUFDO0lBQ3ZCLE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMsQ0FBQztBQVBXLFFBQUEsdUJBQXVCLDJCQU9sQztBQUVXLFFBQUEsbUJBQW1CLEdBQUcsSUFBQSxvQkFBTSxFQUFDO0lBQ3hDLElBQUksRUFBRSxJQUFBLHFCQUFPLEVBQUMsVUFBVSxDQUFDO0lBQ3pCLE1BQU0sRUFBRSxJQUFBLG9CQUFNLEVBQW9DLFFBQVEsRUFBRSxJQUFBLG9CQUFNLEdBQUUsQ0FBQyxTQUFTLENBQUM7SUFDL0UsYUFBYSxFQUFFLElBQUEsbUJBQUssRUFBQyxJQUFBLG9CQUFNLEdBQUUsQ0FBQztJQUM5QixTQUFTLEVBQUUsSUFBQSxtQkFBSyxFQUFDLDJCQUFtQixDQUFDO0NBQ3RDLENBQUMsQ0FBQztBQUdVLFFBQUEsMEJBQTBCLEdBQUcsSUFBQSxvQkFBTSxFQUFDO0lBQy9DLElBQUksRUFBRSxJQUFBLHFCQUFPLEVBQUMsaUJBQWlCLENBQUM7SUFDaEMsT0FBTyxFQUFFLElBQUEsbUJBQUssRUFBQyxpQ0FBeUIsQ0FBQztJQUN6QyxPQUFPLEVBQUUsSUFBQSwrQkFBdUIsRUFBQyxTQUFHLENBQUMsT0FBTyxDQUFDO0NBQzlDLENBQUMsQ0FBQztBQUdVLFFBQUEscUJBQXFCLEdBQUcsSUFBQSxvQkFBTSxFQUFDO0lBQzFDLElBQUksRUFBRSxJQUFBLHFCQUFPLEVBQUMsWUFBWSxDQUFDO0lBQzNCLElBQUksRUFBRSxpQ0FBeUI7SUFDL0IsT0FBTyxFQUFFLElBQUEsbUJBQUssRUFBQyxJQUFBLCtCQUF1QixFQUFDLEtBQUssQ0FBQyxDQUFDO0NBQy9DLENBQUMsQ0FBQztBQUdVLFFBQUEscUJBQXFCLEdBQUcsSUFBQSxvQkFBTSxFQUFDO0lBQzFDLElBQUksRUFBRSxJQUFBLHFCQUFPLEVBQUMsWUFBWSxDQUFDO0lBQzNCLFdBQVcsRUFBRSxpQ0FBeUI7SUFDdEMsT0FBTyxFQUFFLElBQUEsbUJBQUssRUFBQyxpQ0FBeUIsQ0FBQztDQUMxQyxDQUFDLENBQUM7QUFHVSxRQUFBLHNCQUFzQixHQUFHLElBQUEsb0JBQU0sRUFBQztJQUMzQyxJQUFJLEVBQUUsSUFBQSxxQkFBTyxFQUFDLGFBQWEsQ0FBQztJQUM1QixJQUFJLEVBQUUsSUFBQSxzQkFBUSxFQUFDLE1BQU0sQ0FBQyxJQUFBLG9CQUFNLEdBQUUsQ0FBQyxDQUFDO0lBQ2hDLE9BQU8sRUFBRSxJQUFBLG1CQUFLLEVBQUMsaUNBQXlCLENBQUM7Q0FDMUMsQ0FBQyxDQUFDO0FBR1UsUUFBQSxrQkFBa0IsR0FBRyxJQUFBLG9CQUFNLEVBQUM7SUFDdkMsSUFBSSxFQUFFLElBQUEscUJBQU8sRUFBQyxTQUFTLENBQUM7SUFDeEIsT0FBTyxFQUFFLElBQUEsbUJBQUssRUFBQyxJQUFBLG1CQUFLLEVBQUMsSUFBQSxxQkFBTyxHQUFFLENBQUMsQ0FBQztJQUNoQyxZQUFZLEVBQUUsSUFBQSxtQkFBSyxFQUFDLGlCQUFRLENBQUM7Q0FDOUIsQ0FBQyxDQUFDO0FBR0gsTUFBTSxnQkFBZ0IsR0FBRztJQUN2QiwyQkFBbUI7SUFDbkIsa0NBQTBCO0lBQzFCLDZCQUFxQjtJQUNyQiw2QkFBcUI7SUFDckIsMEJBQWtCO0lBQ2xCLDhCQUFzQjtDQUNkLENBQUM7QUFFRSxRQUFBLGVBQWUsR0FBRyxJQUFBLG1CQUFLLEVBQUMsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLENBQUMsQ0FBQztBQUc1RCxTQUFnQixrQkFBa0IsQ0FBQyxJQUFhO0lBQzlDLElBQUEsb0JBQU0sRUFBQyxJQUFJLEVBQUUsdUJBQWUsQ0FBQyxDQUFDO0lBQzlCLE9BQU8sZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxJQUFBLGdCQUFFLEVBQUMsSUFBSSxFQUFFLE1BQWdCLENBQUMsQ0FBRSxDQUFDO0FBQ3hFLENBQUM7QUFFRDs7R0FFRztBQUNVLFFBQUEsWUFBWSxHQUFHO0lBQzFCLFFBQVEsQ0FDTixLQUdDO1FBRUQsT0FBTyxJQUFBLGNBQU0sRUFDWDtZQUNFLElBQUksRUFBRSxVQUFVO1lBQ2hCLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTtZQUNwQixTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVMsSUFBSSxFQUFFO1lBQ2hDLGFBQWEsRUFBRSxLQUFLLENBQUMsYUFBYSxJQUFJLEVBQUU7U0FDekMsRUFDRCwyQkFBbUIsQ0FDcEIsQ0FBQztJQUNKLENBQUM7SUFDRCxlQUFlLENBQUMsT0FBOEIsRUFBRSxPQUE0QjtRQUMxRSxPQUFPLElBQUEsY0FBTSxFQUFDLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsRUFBRSxrQ0FBMEIsQ0FBQyxDQUFDO0lBQzNGLENBQUM7SUFDRCxVQUFVLENBQUMsSUFBeUIsRUFBRSxPQUE4QjtRQUNsRSxPQUFPLElBQUEsY0FBTSxFQUFDLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUUsNkJBQXFCLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBQ0QsVUFBVSxDQUFDLFdBQWdDLEVBQUUsT0FBOEI7UUFDekUsT0FBTyxJQUFBLGNBQU0sRUFBQyxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxFQUFFLDZCQUFxQixDQUFDLENBQUM7SUFDckYsQ0FBQztJQUNELE9BQU8sQ0FBQyxPQUFtQixFQUFFLFlBQXdCO1FBQ25ELE9BQU8sSUFBQSxjQUFNLEVBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsRUFBRSwwQkFBa0IsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFDRCxXQUFXLENBQUMsRUFDVixJQUFJLEVBQ0osT0FBTyxHQUdSO1FBQ0MsT0FBTyxJQUFBLGNBQU0sRUFDWDtZQUNFLElBQUksRUFBRSxhQUFhO1lBQ25CLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7WUFDNUMsT0FBTztTQUNSLEVBQ0QsOEJBQXNCLENBQ3ZCLENBQUM7SUFDSixDQUFDO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJDUyB9IGZyb20gJ0BteXN0ZW4vYmNzJztcbmltcG9ydCB7XG4gIGlzLFxuICBhbnksXG4gIGFycmF5LFxuICBJbmZlcixcbiAgaW50ZWdlcixcbiAgbGl0ZXJhbCxcbiAgb2JqZWN0LFxuICBvcHRpb25hbCxcbiAgc3RyaW5nLFxuICB1bmlvbixcbiAgYXNzZXJ0LFxuICBTdHJ1Y3QsXG4gIGRlZmluZSxcbn0gZnJvbSAnc3VwZXJzdHJ1Y3QnO1xuaW1wb3J0IHsgT2JqZWN0SWQgfSBmcm9tICcuLi90eXBlcy9jb21tb24nO1xuaW1wb3J0IHsgVFJBTlNBQ1RJT05fVFlQRSwgV2VsbEtub3duRW5jb2RpbmcsIGNyZWF0ZSB9IGZyb20gJy4vdXRpbHMnO1xuXG5jb25zdCBvcHRpb24gPSA8VCBleHRlbmRzIFN0cnVjdDxhbnksIGFueT4+KHNvbWU6IFQpID0+XG4gIHVuaW9uKFtvYmplY3QoeyBOb25lOiBsaXRlcmFsKG51bGwpIH0pLCBvYmplY3QoeyBTb21lOiBzb21lIH0pXSk7XG5cbmV4cG9ydCBjb25zdCBUcmFuc2FjdGlvbkJsb2NrSW5wdXQgPSBvYmplY3Qoe1xuICBraW5kOiBsaXRlcmFsKCdJbnB1dCcpLFxuICBpbmRleDogaW50ZWdlcigpLFxuICB2YWx1ZTogb3B0aW9uYWwoYW55KCkpLFxuICB0eXBlOiBvcHRpb25hbCh1bmlvbihbbGl0ZXJhbCgncHVyZScpLCBsaXRlcmFsKCdvYmplY3QnKV0pKSxcbn0pO1xuZXhwb3J0IHR5cGUgVHJhbnNhY3Rpb25CbG9ja0lucHV0ID0gSW5mZXI8dHlwZW9mIFRyYW5zYWN0aW9uQmxvY2tJbnB1dD47XG5cbmNvbnN0IFRyYW5zYWN0aW9uQXJndW1lbnRUeXBlcyA9IFtcbiAgVHJhbnNhY3Rpb25CbG9ja0lucHV0LFxuICBvYmplY3QoeyBraW5kOiBsaXRlcmFsKCdHYXNDb2luJykgfSksXG4gIG9iamVjdCh7IGtpbmQ6IGxpdGVyYWwoJ1Jlc3VsdCcpLCBpbmRleDogaW50ZWdlcigpIH0pLFxuICBvYmplY3Qoe1xuICAgIGtpbmQ6IGxpdGVyYWwoJ05lc3RlZFJlc3VsdCcpLFxuICAgIGluZGV4OiBpbnRlZ2VyKCksXG4gICAgcmVzdWx0SW5kZXg6IGludGVnZXIoKSxcbiAgfSksXG5dIGFzIGNvbnN0O1xuXG4vLyBHZW5lcmljIHRyYW5zYWN0aW9uIGFyZ3VtZW50XG5leHBvcnQgY29uc3QgVHJhbnNhY3Rpb25Bcmd1bWVudCA9IHVuaW9uKFsuLi5UcmFuc2FjdGlvbkFyZ3VtZW50VHlwZXNdKTtcbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uQXJndW1lbnQgPSBJbmZlcjx0eXBlb2YgVHJhbnNhY3Rpb25Bcmd1bWVudD47XG5cbi8vIFRyYW5zYWN0aW9uIGFyZ3VtZW50IHJlZmVycmluZyB0byBhbiBvYmplY3Q6XG5leHBvcnQgY29uc3QgT2JqZWN0VHJhbnNhY3Rpb25Bcmd1bWVudCA9IHVuaW9uKFsuLi5UcmFuc2FjdGlvbkFyZ3VtZW50VHlwZXNdKTtcbihPYmplY3RUcmFuc2FjdGlvbkFyZ3VtZW50IGFzIGFueSlbVFJBTlNBQ1RJT05fVFlQRV0gPSB7XG4gIGtpbmQ6ICdvYmplY3QnLFxufSBhcyBXZWxsS25vd25FbmNvZGluZztcblxuZXhwb3J0IGNvbnN0IFB1cmVUcmFuc2FjdGlvbkFyZ3VtZW50ID0gKHR5cGU6IHN0cmluZykgPT4ge1xuICBjb25zdCBzdHJ1Y3QgPSB1bmlvbihbLi4uVHJhbnNhY3Rpb25Bcmd1bWVudFR5cGVzXSk7XG4gIChzdHJ1Y3QgYXMgYW55KVtUUkFOU0FDVElPTl9UWVBFXSA9IHtcbiAgICBraW5kOiAncHVyZScsXG4gICAgdHlwZSxcbiAgfSBhcyBXZWxsS25vd25FbmNvZGluZztcbiAgcmV0dXJuIHN0cnVjdDtcbn07XG5cbmV4cG9ydCBjb25zdCBNb3ZlQ2FsbFRyYW5zYWN0aW9uID0gb2JqZWN0KHtcbiAga2luZDogbGl0ZXJhbCgnTW92ZUNhbGwnKSxcbiAgdGFyZ2V0OiBkZWZpbmU8YCR7c3RyaW5nfTo6JHtzdHJpbmd9Ojoke3N0cmluZ31gPigndGFyZ2V0Jywgc3RyaW5nKCkudmFsaWRhdG9yKSxcbiAgdHlwZUFyZ3VtZW50czogYXJyYXkoc3RyaW5nKCkpLFxuICBhcmd1bWVudHM6IGFycmF5KFRyYW5zYWN0aW9uQXJndW1lbnQpLFxufSk7XG5leHBvcnQgdHlwZSBNb3ZlQ2FsbFRyYW5zYWN0aW9uID0gSW5mZXI8dHlwZW9mIE1vdmVDYWxsVHJhbnNhY3Rpb24+O1xuXG5leHBvcnQgY29uc3QgVHJhbnNmZXJPYmplY3RzVHJhbnNhY3Rpb24gPSBvYmplY3Qoe1xuICBraW5kOiBsaXRlcmFsKCdUcmFuc2Zlck9iamVjdHMnKSxcbiAgb2JqZWN0czogYXJyYXkoT2JqZWN0VHJhbnNhY3Rpb25Bcmd1bWVudCksXG4gIGFkZHJlc3M6IFB1cmVUcmFuc2FjdGlvbkFyZ3VtZW50KEJDUy5BRERSRVNTKSxcbn0pO1xuZXhwb3J0IHR5cGUgVHJhbnNmZXJPYmplY3RzVHJhbnNhY3Rpb24gPSBJbmZlcjx0eXBlb2YgVHJhbnNmZXJPYmplY3RzVHJhbnNhY3Rpb24+O1xuXG5leHBvcnQgY29uc3QgU3BsaXRDb2luc1RyYW5zYWN0aW9uID0gb2JqZWN0KHtcbiAga2luZDogbGl0ZXJhbCgnU3BsaXRDb2lucycpLFxuICBjb2luOiBPYmplY3RUcmFuc2FjdGlvbkFyZ3VtZW50LFxuICBhbW91bnRzOiBhcnJheShQdXJlVHJhbnNhY3Rpb25Bcmd1bWVudCgndTY0JykpLFxufSk7XG5leHBvcnQgdHlwZSBTcGxpdENvaW5zVHJhbnNhY3Rpb24gPSBJbmZlcjx0eXBlb2YgU3BsaXRDb2luc1RyYW5zYWN0aW9uPjtcblxuZXhwb3J0IGNvbnN0IE1lcmdlQ29pbnNUcmFuc2FjdGlvbiA9IG9iamVjdCh7XG4gIGtpbmQ6IGxpdGVyYWwoJ01lcmdlQ29pbnMnKSxcbiAgZGVzdGluYXRpb246IE9iamVjdFRyYW5zYWN0aW9uQXJndW1lbnQsXG4gIHNvdXJjZXM6IGFycmF5KE9iamVjdFRyYW5zYWN0aW9uQXJndW1lbnQpLFxufSk7XG5leHBvcnQgdHlwZSBNZXJnZUNvaW5zVHJhbnNhY3Rpb24gPSBJbmZlcjx0eXBlb2YgTWVyZ2VDb2luc1RyYW5zYWN0aW9uPjtcblxuZXhwb3J0IGNvbnN0IE1ha2VNb3ZlVmVjVHJhbnNhY3Rpb24gPSBvYmplY3Qoe1xuICBraW5kOiBsaXRlcmFsKCdNYWtlTW92ZVZlYycpLFxuICB0eXBlOiBvcHRpb25hbChvcHRpb24oc3RyaW5nKCkpKSxcbiAgb2JqZWN0czogYXJyYXkoT2JqZWN0VHJhbnNhY3Rpb25Bcmd1bWVudCksXG59KTtcbmV4cG9ydCB0eXBlIE1ha2VNb3ZlVmVjVHJhbnNhY3Rpb24gPSBJbmZlcjx0eXBlb2YgTWFrZU1vdmVWZWNUcmFuc2FjdGlvbj47XG5cbmV4cG9ydCBjb25zdCBQdWJsaXNoVHJhbnNhY3Rpb24gPSBvYmplY3Qoe1xuICBraW5kOiBsaXRlcmFsKCdQdWJsaXNoJyksXG4gIG1vZHVsZXM6IGFycmF5KGFycmF5KGludGVnZXIoKSkpLFxuICBkZXBlbmRlbmNpZXM6IGFycmF5KE9iamVjdElkKSxcbn0pO1xuZXhwb3J0IHR5cGUgUHVibGlzaFRyYW5zYWN0aW9uID0gSW5mZXI8dHlwZW9mIFB1Ymxpc2hUcmFuc2FjdGlvbj47XG5cbmNvbnN0IFRyYW5zYWN0aW9uVHlwZXMgPSBbXG4gIE1vdmVDYWxsVHJhbnNhY3Rpb24sXG4gIFRyYW5zZmVyT2JqZWN0c1RyYW5zYWN0aW9uLFxuICBTcGxpdENvaW5zVHJhbnNhY3Rpb24sXG4gIE1lcmdlQ29pbnNUcmFuc2FjdGlvbixcbiAgUHVibGlzaFRyYW5zYWN0aW9uLFxuICBNYWtlTW92ZVZlY1RyYW5zYWN0aW9uLFxuXSBhcyBjb25zdDtcblxuZXhwb3J0IGNvbnN0IFRyYW5zYWN0aW9uVHlwZSA9IHVuaW9uKFsuLi5UcmFuc2FjdGlvblR5cGVzXSk7XG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvblR5cGUgPSBJbmZlcjx0eXBlb2YgVHJhbnNhY3Rpb25UeXBlPjtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFRyYW5zYWN0aW9uVHlwZShkYXRhOiB1bmtub3duKSB7XG4gIGFzc2VydChkYXRhLCBUcmFuc2FjdGlvblR5cGUpO1xuICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlcy5maW5kKChzY2hlbWEpID0+IGlzKGRhdGEsIHNjaGVtYSBhcyBTdHJ1Y3QpKSE7XG59XG5cbi8qKlxuICogU2ltcGxlIGhlbHBlcnMgdXNlZCB0byBjb25zdHJ1Y3QgdHJhbnNhY3Rpb25zOlxuICovXG5leHBvcnQgY29uc3QgVHJhbnNhY3Rpb25zID0ge1xuICBNb3ZlQ2FsbChcbiAgICBpbnB1dDogT21pdDxNb3ZlQ2FsbFRyYW5zYWN0aW9uLCAna2luZCcgfCAnYXJndW1lbnRzJyB8ICd0eXBlQXJndW1lbnRzJz4gJiB7XG4gICAgICBhcmd1bWVudHM/OiBUcmFuc2FjdGlvbkFyZ3VtZW50W107XG4gICAgICB0eXBlQXJndW1lbnRzPzogc3RyaW5nW107XG4gICAgfVxuICApOiBNb3ZlQ2FsbFRyYW5zYWN0aW9uIHtcbiAgICByZXR1cm4gY3JlYXRlKFxuICAgICAge1xuICAgICAgICBraW5kOiAnTW92ZUNhbGwnLFxuICAgICAgICB0YXJnZXQ6IGlucHV0LnRhcmdldCxcbiAgICAgICAgYXJndW1lbnRzOiBpbnB1dC5hcmd1bWVudHMgPz8gW10sXG4gICAgICAgIHR5cGVBcmd1bWVudHM6IGlucHV0LnR5cGVBcmd1bWVudHMgPz8gW10sXG4gICAgICB9LFxuICAgICAgTW92ZUNhbGxUcmFuc2FjdGlvblxuICAgICk7XG4gIH0sXG4gIFRyYW5zZmVyT2JqZWN0cyhvYmplY3RzOiBUcmFuc2FjdGlvbkFyZ3VtZW50W10sIGFkZHJlc3M6IFRyYW5zYWN0aW9uQXJndW1lbnQpOiBUcmFuc2Zlck9iamVjdHNUcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIGNyZWF0ZSh7IGtpbmQ6ICdUcmFuc2Zlck9iamVjdHMnLCBvYmplY3RzLCBhZGRyZXNzIH0sIFRyYW5zZmVyT2JqZWN0c1RyYW5zYWN0aW9uKTtcbiAgfSxcbiAgU3BsaXRDb2lucyhjb2luOiBUcmFuc2FjdGlvbkFyZ3VtZW50LCBhbW91bnRzOiBUcmFuc2FjdGlvbkFyZ3VtZW50W10pOiBTcGxpdENvaW5zVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiBjcmVhdGUoeyBraW5kOiAnU3BsaXRDb2lucycsIGNvaW4sIGFtb3VudHMgfSwgU3BsaXRDb2luc1RyYW5zYWN0aW9uKTtcbiAgfSxcbiAgTWVyZ2VDb2lucyhkZXN0aW5hdGlvbjogVHJhbnNhY3Rpb25Bcmd1bWVudCwgc291cmNlczogVHJhbnNhY3Rpb25Bcmd1bWVudFtdKTogTWVyZ2VDb2luc1RyYW5zYWN0aW9uIHtcbiAgICByZXR1cm4gY3JlYXRlKHsga2luZDogJ01lcmdlQ29pbnMnLCBkZXN0aW5hdGlvbiwgc291cmNlcyB9LCBNZXJnZUNvaW5zVHJhbnNhY3Rpb24pO1xuICB9LFxuICBQdWJsaXNoKG1vZHVsZXM6IG51bWJlcltdW10sIGRlcGVuZGVuY2llczogT2JqZWN0SWRbXSk6IFB1Ymxpc2hUcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIGNyZWF0ZSh7IGtpbmQ6ICdQdWJsaXNoJywgbW9kdWxlcywgZGVwZW5kZW5jaWVzIH0sIFB1Ymxpc2hUcmFuc2FjdGlvbik7XG4gIH0sXG4gIE1ha2VNb3ZlVmVjKHtcbiAgICB0eXBlLFxuICAgIG9iamVjdHMsXG4gIH06IE9taXQ8TWFrZU1vdmVWZWNUcmFuc2FjdGlvbiwgJ2tpbmQnIHwgJ3R5cGUnPiAmIHtcbiAgICB0eXBlPzogc3RyaW5nO1xuICB9KTogTWFrZU1vdmVWZWNUcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIGNyZWF0ZShcbiAgICAgIHtcbiAgICAgICAga2luZDogJ01ha2VNb3ZlVmVjJyxcbiAgICAgICAgdHlwZTogdHlwZSA/IHsgU29tZTogdHlwZSB9IDogeyBOb25lOiBudWxsIH0sXG4gICAgICAgIG9iamVjdHMsXG4gICAgICB9LFxuICAgICAgTWFrZU1vdmVWZWNUcmFuc2FjdGlvblxuICAgICk7XG4gIH0sXG59O1xuIl19
|
|
@@ -31,9 +31,8 @@ const RESOLVED_STD_OPTION = {
|
|
|
31
31
|
};
|
|
32
32
|
const isSameStruct = (a, b) => a.address === b.address && a.module === b.module && a.name === b.name;
|
|
33
33
|
function isTxContext(param) {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
return (struct === null || struct === void 0 ? void 0 : struct.address) === '0x2' && (struct === null || struct === void 0 ? void 0 : struct.module) === 'tx_context' && (struct === null || struct === void 0 ? void 0 : struct.name) === 'TxContext';
|
|
34
|
+
const struct = (0, types_1.extractStructTag)(param)?.Struct;
|
|
35
|
+
return struct?.address === '0x2' && struct?.module === 'tx_context' && struct?.name === 'TxContext';
|
|
37
36
|
}
|
|
38
37
|
function expectType(typeName, argVal) {
|
|
39
38
|
if (typeof argVal === 'undefined') {
|
|
@@ -97,4 +96,4 @@ function getPureSerializationType(normalizedType, argVal) {
|
|
|
97
96
|
}
|
|
98
97
|
return undefined;
|
|
99
98
|
}
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VyaWFsaXplci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbXlzdGVubGFiL2J1aWxkZXIvc2VyaWFsaXplci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQTRDQSxrQ0FHQztBQWFELDREQTBEQztBQXRIRCxvQ0FTa0I7QUFFbEIsTUFBTSxxQkFBcUIsR0FBRyxPQUFPLENBQUM7QUFDdEMsTUFBTSxxQkFBcUIsR0FBRyxRQUFRLENBQUM7QUFFdkMsTUFBTSxvQkFBb0IsR0FBRyxRQUFRLENBQUM7QUFDdEMsTUFBTSxvQkFBb0IsR0FBRyxRQUFRLENBQUM7QUFFdEMsTUFBTSxzQkFBc0IsR0FBRyxRQUFRLENBQUM7QUFDeEMsTUFBTSxzQkFBc0IsR0FBRyxRQUFRLENBQUM7QUFFeEMsTUFBTSxlQUFlLEdBQUc7SUFDdEIsT0FBTyxFQUFFLDZCQUFxQjtJQUM5QixNQUFNLEVBQUUsMEJBQWtCO0lBQzFCLElBQUksRUFBRSxzQkFBYztDQUNyQixDQUFDO0FBQ0YsTUFBTSxrQkFBa0IsR0FBRztJQUN6QixPQUFPLEVBQUUsMkJBQW1CO0lBQzVCLE1BQU0sRUFBRSxxQkFBcUI7SUFDN0IsSUFBSSxFQUFFLHFCQUFxQjtDQUM1QixDQUFDO0FBQ0YsTUFBTSxpQkFBaUIsR0FBRztJQUN4QixPQUFPLEVBQUUsMkJBQW1CO0lBQzVCLE1BQU0sRUFBRSxvQkFBb0I7SUFDNUIsSUFBSSxFQUFFLG9CQUFvQjtDQUMzQixDQUFDO0FBRUYsTUFBTSxtQkFBbUIsR0FBRztJQUMxQixPQUFPLEVBQUUsMkJBQW1CO0lBQzVCLE1BQU0sRUFBRSxzQkFBc0I7SUFDOUIsSUFBSSxFQUFFLHNCQUFzQjtDQUM3QixDQUFDO0FBRUYsTUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFNLEVBQUUsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxLQUFLLENBQUMsQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDLE1BQU0sS0FB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QUFDLENBQUMsU0FBUyxDQUMvQixDQUFDO1FBRUYsSUFBSSxTQUFTLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDNUIsT0FBTztRQUNULENBQUM7UUFFRCxPQUFPLFVBQVUsU0FBUyxHQUFHLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQUksUUFBUSxJQUFJLGNBQWMsRUFBRSxDQUFDO1FBQy9CLElBQUksWUFBWSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsa0JBQWtCLENBQUMsRUFBRSxDQUFDO1lBQzVELE9BQU8sUUFBUSxDQUFDO1FBQ2xCLENBQUM7YUFBTSxJQUFJLFlBQVksQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLGlCQUFpQixDQUFDLEVBQUUsQ0FBQztZQUNsRSxPQUFPLFlBQVksQ0FBQztRQUN0QixDQUFDO2FBQU0sSUFBSSxZQUFZLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxlQUFlLENBQUMsRUFBRSxDQUFDO1lBQ2hFLE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUM7YUFBTSxJQUFJLFlBQVksQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLG1CQUFtQixDQUFDLEVBQUUsQ0FBQztZQUNwRSxNQUFNLFdBQVcsR0FBMEI7Z0JBQ3pDLE1BQU0sRUFBRSxjQUFjLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7YUFDL0MsQ0FBQztZQUNGLE9BQU8sd0JBQXdCLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZELENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGV4dHJhY3RTdHJ1Y3RUYWcsXG4gIElEX1NUUlVDVF9OQU1FLFxuICBpc1ZhbGlkU3VpQWRkcmVzcyxcbiAgTU9WRV9TVERMSUJfQUREUkVTUyxcbiAgT0JKRUNUX01PRFVMRV9OQU1FLFxuICBTdWlKc29uVmFsdWUsXG4gIFN1aU1vdmVOb3JtYWxpemVkVHlwZSxcbiAgU1VJX0ZSQU1FV09SS19BRERSRVNTLFxufSBmcm9tICcuLi90eXBlcyc7XG5cbmNvbnN0IFNURF9BU0NJSV9NT0RVTEVfTkFNRSA9ICdhc2NpaSc7XG5jb25zdCBTVERfQVNDSUlfU1RSVUNUX05BTUUgPSAnU3RyaW5nJztcblxuY29uc3QgU1REX1VURjhfTU9EVUxFX05BTUUgPSAnc3RyaW5nJztcbmNvbnN0IFNURF9VVEY4X1NUUlVDVF9OQU1FID0gJ1N0cmluZyc7XG5cbmNvbnN0IFNURF9PUFRJT05fTU9EVUxFX05BTUUgPSAnb3B0aW9uJztcbmNvbnN0IFNURF9PUFRJT05fU1RSVUNUX05BTUUgPSAnT3B0aW9uJztcblxuY29uc3QgUkVTT0xWRURfU1VJX0lEID0ge1xuICBhZGRyZXNzOiBTVUlfRlJBTUVXT1JLX0FERFJFU1MsXG4gIG1vZHVsZTogT0JKRUNUX01PRFVMRV9OQU1FLFxuICBuYW1lOiBJRF9TVFJVQ1RfTkFNRSxcbn07XG5jb25zdCBSRVNPTFZFRF9BU0NJSV9TVFIgPSB7XG4gIGFkZHJlc3M6IE1PVkVfU1RETElCX0FERFJFU1MsXG4gIG1vZHVsZTogU1REX0FTQ0lJX01PRFVMRV9OQU1FLFxuICBuYW1lOiBTVERfQVNDSUlfU1RSVUNUX05BTUUsXG59O1xuY29uc3QgUkVTT0xWRURfVVRGOF9TVFIgPSB7XG4gIGFkZHJlc3M6IE1PVkVfU1RETElCX0FERFJFU1MsXG4gIG1vZHVsZTogU1REX1VURjhfTU9EVUxFX05BTUUsXG4gIG5hbWU6IFNURF9VVEY4X1NUUlVDVF9OQU1FLFxufTtcblxuY29uc3QgUkVTT0xWRURfU1REX09QVElPTiA9IHtcbiAgYWRkcmVzczogTU9WRV9TVERMSUJfQUREUkVTUyxcbiAgbW9kdWxlOiBTVERfT1BUSU9OX01PRFVMRV9OQU1FLFxuICBuYW1lOiBTVERfT1BUSU9OX1NUUlVDVF9OQU1FLFxufTtcblxuY29uc3QgaXNTYW1lU3RydWN0ID0gKGE6IGFueSwgYjogYW55KSA9PiBhLmFkZHJlc3MgPT09IGIuYWRkcmVzcyAmJiBhLm1vZHVsZSA9PT0gYi5tb2R1bGUgJiYgYS5uYW1lID09PSBiLm5hbWU7XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1R4Q29udGV4dChwYXJhbTogU3VpTW92ZU5vcm1hbGl6ZWRUeXBlKTogYm9vbGVhbiB7XG4gIGNvbnN0IHN0cnVjdCA9IGV4dHJhY3RTdHJ1Y3RUYWcocGFyYW0pPy5TdHJ1Y3Q7XG4gIHJldHVybiBzdHJ1Y3Q/LmFkZHJlc3MgPT09ICcweDInICYmIHN0cnVjdD8ubW9kdWxlID09PSAndHhfY29udGV4dCcgJiYgc3RydWN0Py5uYW1lID09PSAnVHhDb250ZXh0Jztcbn1cblxuZnVuY3Rpb24gZXhwZWN0VHlwZSh0eXBlTmFtZTogc3RyaW5nLCBhcmdWYWw/OiBTdWlKc29uVmFsdWUpIHtcbiAgaWYgKHR5cGVvZiBhcmdWYWwgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgcmV0dXJuO1xuICB9XG4gIGlmICh0eXBlb2YgYXJnVmFsICE9PSB0eXBlTmFtZSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ICR7YXJnVmFsfSB0byBiZSAke3R5cGVOYW1lfSwgcmVjZWl2ZWQgJHt0eXBlb2YgYXJnVmFsfWApO1xuICB9XG59XG5cbmNvbnN0IGFsbG93ZWRUeXBlcyA9IFsnQWRkcmVzcycsICdCb29sJywgJ1U4JywgJ1UxNicsICdVMzInLCAnVTY0JywgJ1UxMjgnLCAnVTI1NiddO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0UHVyZVNlcmlhbGl6YXRpb25UeXBlKFxuICBub3JtYWxpemVkVHlwZTogU3VpTW92ZU5vcm1hbGl6ZWRUeXBlLFxuICBhcmdWYWw6IFN1aUpzb25WYWx1ZSB8IHVuZGVmaW5lZFxuKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgaWYgKHR5cGVvZiBub3JtYWxpemVkVHlwZSA9PT0gJ3N0cmluZycgJiYgYWxsb3dlZFR5cGVzLmluY2x1ZGVzKG5vcm1hbGl6ZWRUeXBlKSkge1xuICAgIGlmIChub3JtYWxpemVkVHlwZSBpbiBbJ1U4JywgJ1UxNicsICdVMzInLCAnVTY0JywgJ1UxMjgnLCAnVTI1NiddKSB7XG4gICAgICBleHBlY3RUeXBlKCdudW1iZXInLCBhcmdWYWwpO1xuICAgIH0gZWxzZSBpZiAobm9ybWFsaXplZFR5cGUgPT09ICdCb29sJykge1xuICAgICAgZXhwZWN0VHlwZSgnYm9vbGVhbicsIGFyZ1ZhbCk7XG4gICAgfSBlbHNlIGlmIChub3JtYWxpemVkVHlwZSA9PT0gJ0FkZHJlc3MnKSB7XG4gICAgICBleHBlY3RUeXBlKCdzdHJpbmcnLCBhcmdWYWwpO1xuICAgICAgaWYgKGFyZ1ZhbCAmJiAhaXNWYWxpZFN1aUFkZHJlc3MoYXJnVmFsIGFzIHN0cmluZykpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIFN1aSBBZGRyZXNzJyk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBub3JtYWxpemVkVHlwZS50b0xvd2VyQ2FzZSgpO1xuICB9IGVsc2UgaWYgKHR5cGVvZiBub3JtYWxpemVkVHlwZSA9PT0gJ3N0cmluZycpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gcHVyZSBub3JtYWxpemVkIHR5cGUgJHtKU09OLnN0cmluZ2lmeShub3JtYWxpemVkVHlwZSwgbnVsbCwgMil9YCk7XG4gIH1cblxuICBpZiAoJ1ZlY3RvcicgaW4gbm9ybWFsaXplZFR5cGUpIHtcbiAgICBpZiAoKGFyZ1ZhbCA9PT0gdW5kZWZpbmVkIHx8IHR5cGVvZiBhcmdWYWwgPT09ICdzdHJpbmcnKSAmJiBub3JtYWxpemVkVHlwZS5WZWN0b3IgPT09ICdVOCcpIHtcbiAgICAgIHJldHVybiAnc3RyaW5nJztcbiAgICB9XG5cbiAgICBpZiAoYXJnVmFsICE9PSB1bmRlZmluZWQgJiYgIUFycmF5LmlzQXJyYXkoYXJnVmFsKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBFeHBlY3QgJHthcmdWYWx9IHRvIGJlIGEgYXJyYXksIHJlY2VpdmVkICR7dHlwZW9mIGFyZ1ZhbH1gKTtcbiAgICB9XG5cbiAgICBjb25zdCBpbm5lclR5cGUgPSBnZXRQdXJlU2VyaWFsaXphdGlvblR5cGUoXG4gICAgICBub3JtYWxpemVkVHlwZS5WZWN0b3IsXG4gICAgICAvLyB1bmRlZmluZWQgd2hlbiBhcmdWYWwgaXMgZW1wdHlcbiAgICAgIGFyZ1ZhbCA/IGFyZ1ZhbFswXSA6IHVuZGVmaW5lZFxuICAgICk7XG5cbiAgICBpZiAoaW5uZXJUeXBlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICByZXR1cm4gYHZlY3Rvcjwke2lubmVyVHlwZX0+YDtcbiAgfVxuXG4gIGlmICgnU3RydWN0JyBpbiBub3JtYWxpemVkVHlwZSkge1xuICAgIGlmIChpc1NhbWVTdHJ1Y3Qobm9ybWFsaXplZFR5cGUuU3RydWN0LCBSRVNPTFZFRF9BU0NJSV9TVFIpKSB7XG4gICAgICByZXR1cm4gJ3N0cmluZyc7XG4gICAgfSBlbHNlIGlmIChpc1NhbWVTdHJ1Y3Qobm9ybWFsaXplZFR5cGUuU3RydWN0LCBSRVNPTFZFRF9VVEY4X1NUUikpIHtcbiAgICAgIHJldHVybiAndXRmOHN0cmluZyc7XG4gICAgfSBlbHNlIGlmIChpc1NhbWVTdHJ1Y3Qobm9ybWFsaXplZFR5cGUuU3RydWN0LCBSRVNPTFZFRF9TVUlfSUQpKSB7XG4gICAgICByZXR1cm4gJ2FkZHJlc3MnO1xuICAgIH0gZWxzZSBpZiAoaXNTYW1lU3RydWN0KG5vcm1hbGl6ZWRUeXBlLlN0cnVjdCwgUkVTT0xWRURfU1REX09QVElPTikpIHtcbiAgICAgIGNvbnN0IG9wdGlvblRvVmVjOiBTdWlNb3ZlTm9ybWFsaXplZFR5cGUgPSB7XG4gICAgICAgIFZlY3Rvcjogbm9ybWFsaXplZFR5cGUuU3RydWN0LnR5cGVBcmd1bWVudHNbMF0sXG4gICAgICB9O1xuICAgICAgcmV0dXJuIGdldFB1cmVTZXJpYWxpemF0aW9uVHlwZShvcHRpb25Ub1ZlYywgYXJnVmFsKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdW5kZWZpbmVkO1xufVxuIl19
|
|
@@ -37,12 +37,10 @@ exports.CoinMetadataStruct = (0, superstruct_1.object)({
|
|
|
37
37
|
*/
|
|
38
38
|
class Coin {
|
|
39
39
|
static isCoin(data) {
|
|
40
|
-
|
|
41
|
-
return ((_a = Coin.getType(data)) === null || _a === void 0 ? void 0 : _a.match(exports.COIN_TYPE_ARG_REGEX)) != null;
|
|
40
|
+
return Coin.getType(data)?.match(exports.COIN_TYPE_ARG_REGEX) != null;
|
|
42
41
|
}
|
|
43
42
|
static getCoinType(type) {
|
|
44
|
-
|
|
45
|
-
const [, res] = (_a = type.match(exports.COIN_TYPE_ARG_REGEX)) !== null && _a !== void 0 ? _a : [];
|
|
43
|
+
const [, res] = type.match(exports.COIN_TYPE_ARG_REGEX) ?? [];
|
|
46
44
|
return res || null;
|
|
47
45
|
}
|
|
48
46
|
static getCoinTypeArg(obj) {
|
|
@@ -87,11 +85,10 @@ class Coin {
|
|
|
87
85
|
return BigInt(coin.balance);
|
|
88
86
|
}
|
|
89
87
|
static getBalance(data) {
|
|
90
|
-
var _a;
|
|
91
88
|
if (!Coin.isCoin(data)) {
|
|
92
89
|
return undefined;
|
|
93
90
|
}
|
|
94
|
-
const balance = (
|
|
91
|
+
const balance = (0, objects_1.getObjectFields)(data)?.balance;
|
|
95
92
|
return BigInt(balance);
|
|
96
93
|
}
|
|
97
94
|
static getType(data) {
|
|
@@ -135,4 +132,4 @@ class Delegation {
|
|
|
135
132
|
}
|
|
136
133
|
exports.Delegation = Delegation;
|
|
137
134
|
Delegation.SUI_OBJECT_TYPE = '0x2::delegation::Delegation';
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhbWV3b3JrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9teXN0ZW5sYWIvZnJhbWV3b3JrL2ZyYW1ld29yay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFvQ0EsNENBRUM7QUF0Q0QsOENBUTBCO0FBQzFCLDRDQUE2RTtBQUU3RSw0Q0FBb0Q7QUFHcEQsNkNBQTRFO0FBRS9ELFFBQUEsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO0FBQzNCLFFBQUEscUJBQXFCLEdBQUcsS0FBSyxDQUFDO0FBQzlCLFFBQUEsbUJBQW1CLEdBQUcsS0FBSyxDQUFDO0FBQzVCLFFBQUEsa0JBQWtCLEdBQUcsUUFBUSxDQUFDO0FBQzlCLFFBQUEsZUFBZSxHQUFHLEtBQUssQ0FBQztBQUN4QixRQUFBLGNBQWMsR0FBRyxJQUFJLENBQUM7QUFDdEIsUUFBQSxZQUFZLEdBQUcsR0FBRyw2QkFBcUIsWUFBWSxDQUFDO0FBQ3BELFFBQUEsdUJBQXVCLEdBQUcsNkNBQTZDLENBQUM7QUFFeEUsUUFBQSxtQkFBbUIsR0FBRyxJQUFBLDZCQUFvQixFQUFDLEtBQUssQ0FBQyxDQUFDO0FBRS9ELHNGQUFzRjtBQUN6RSxRQUFBLGVBQWUsR0FBRyxLQUFLLENBQUM7QUFDeEIsUUFBQSw0QkFBNEIsR0FBRyxXQUFXLENBQUM7QUFDM0MsUUFBQSx1QkFBdUIsR0FBRyxNQUFNLENBQUM7QUFDakMsUUFBQSxtQkFBbUIsR0FBRyx5QkFBeUIsQ0FBQztBQUs3RCxTQUFnQixnQkFBZ0IsQ0FBQyxJQUFpQztJQUNoRSxPQUFPLENBQUMsQ0FBRSxJQUEwQixDQUFDLElBQUksSUFBSSxDQUFDLENBQUUsSUFBc0IsQ0FBQyxJQUFJLENBQUM7QUFDOUUsQ0FBQztBQUVZLFFBQUEsa0JBQWtCLEdBQUcsSUFBQSxvQkFBTSxFQUFDO0lBQ3ZDLFFBQVEsRUFBRSxJQUFBLG9CQUFNLEdBQUU7SUFDbEIsSUFBSSxFQUFFLElBQUEsb0JBQU0sR0FBRTtJ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Q0M7QUF0Q3dCLDBCQUFlLEdBQUcsNkJBQTZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBnZXRPYmplY3RGaWVsZHMsXG4gIFN1aU9iamVjdFJlc3BvbnNlLFxuICBTdWlNb3ZlT2JqZWN0LFxuICBTdWlPYmplY3RJbmZvLFxuICBTdWlPYmplY3REYXRhLFxuICBnZXRPYmplY3RJZCxcbiAgZ2V0T2JqZWN0VHlwZSxcbn0gZnJvbSAnLi4vdHlwZXMvb2JqZWN0cyc7XG5pbXBvcnQgeyBub3JtYWxpemVTdWlPYmplY3RJZCwgT2JqZWN0SWQsIFN1aUFkZHJlc3MgfSBmcm9tICcuLi90eXBlcy9jb21tb24nO1xuXG5pbXBvcnQgeyBnZXRPcHRpb24sIE9wdGlvbiB9IGZyb20gJy4uL3R5cGVzL29wdGlvbic7XG5pbXBvcnQgeyBDb2luU3RydWN0IH0gZnJvbSAnLi4vdHlwZXMvY29pbic7XG5pbXBvcnQgeyBTdHJ1Y3RUYWcgfSBmcm9tICcuLi90eXBlcy9zdWktYmNzJztcbmltcG9ydCB7IEluZmVyLCBsaXRlcmFsLCBudW1iZXIsIG9iamVjdCwgc3RyaW5nLCB1bmlvbiB9IGZyb20gJ3N1cGVyc3RydWN0JztcblxuZXhwb3J0IGNvbnN0IFNVSV9TWVNURU1fQUREUkVTUyA9ICcweDMnO1xuZXhwb3J0IGNvbnN0IFNVSV9GUkFNRVdPUktfQUREUkVTUyA9ICcweDInO1xuZXhwb3J0IGNvbnN0IE1PVkVfU1RETElCX0FERFJFU1MgPSAnMHgxJztcbmV4cG9ydCBjb25zdCBPQkpFQ1RfTU9EVUxFX05BTUUgPSAnb2JqZWN0JztcbmV4cG9ydCBjb25zdCBVSURfU1RSVUNUX05BTUUgPSAnVUlEJztcbmV4cG9ydCBjb25zdCBJRF9TVFJVQ1RfTkFNRSA9ICdJRCc7XG5leHBvcnQgY29uc3QgU1VJX1RZUEVfQVJHID0gYCR7U1VJX0ZSQU1FV09SS19BRERSRVNTfTo6c3VpOjpTVUlgO1xuZXhwb3J0IGNvbnN0IFZBTElEQVRPUlNfRVZFTlRTX1FVRVJZID0gJzB4Mzo6dmFsaWRhdG9yX3NldDo6VmFsaWRhdG9yRXBvY2hJbmZvRXZlbnQnO1xuXG5leHBvcnQgY29uc3QgU1VJX0NMT0NLX09CSkVDVF9JRCA9IG5vcm1hbGl6ZVN1aU9iamVjdElkKCcweDYnKTtcblxuLy8gYHN1aTo6cGF5YCBtb2R1bGUgaXMgdXNlZCBmb3IgQ29pbiBtYW5hZ2VtZW50IChzcGxpdCwgam9pbiwgam9pbl9hbmRfdHJhbnNmZXIgZXRjKTtcbmV4cG9ydCBjb25zdCBQQVlfTU9EVUxFX05BTUUgPSAncGF5JztcbmV4cG9ydCBjb25zdCBQQVlfU1BMSVRfQ09JTl9WRUNfRlVOQ19OQU1FID0gJ3NwbGl0X3ZlYyc7XG5leHBvcnQgY29uc3QgUEFZX0pPSU5fQ09JTl9GVU5DX05BTUUgPSAnam9pbic7XG5leHBvcnQgY29uc3QgQ09JTl9UWVBFX0FSR19SRUdFWCA9IC9eMHgyOjpjb2luOjpDb2luPCguKyk+JC87XG5cbnR5cGUgT2JqZWN0RGF0YSA9IE9iamVjdERhdGFGdWxsIHwgU3VpT2JqZWN0SW5mbztcbnR5cGUgT2JqZWN0RGF0YUZ1bGwgPSBTdWlPYmplY3RSZXNwb25zZSB8IFN1aU1vdmVPYmplY3Q7XG5cbmV4cG9ydCBmdW5jdGlvbiBpc09iamVjdERhdGFGdWxsKHJlc3A6IE9iamVjdERhdGEgfCBPYmplY3REYXRhRnVsbCk6IHJlc3AgaXMgU3VpT2JqZWN0UmVzcG9uc2Uge1xuICByZXR1cm4gISEocmVzcCBhcyBTdWlPYmplY3RSZXNwb25zZSkuZGF0YSB8fCAhIShyZXNwIGFzIFN1aU1vdmVPYmplY3QpLnR5cGU7XG59XG5cbmV4cG9ydCBjb25zdCBDb2luTWV0YWRhdGFTdHJ1Y3QgPSBvYmplY3Qoe1xuICBkZWNpbWFsczogbnVtYmVyKCksXG4gIG5hbWU6IHN0cmluZygpLFxuICBzeW1ib2w6IHN0cmluZygpLFxuICBkZXNjcmlwdGlvbjogc3RyaW5nKCksXG4gIGljb25Vcmw6IHVuaW9uKFtzdHJpbmcoKSwgbGl0ZXJhbChudWxsKV0pLFxuICBpZDogdW5pb24oW09iamVjdElkLCBsaXRlcmFsKG51bGwpXSksXG59KTtcblxuZXhwb3J0IHR5cGUgQ29pbk1ldGFkYXRhID0gSW5mZXI8dHlwZW9mIENvaW5NZXRhZGF0YVN0cnVjdD47XG5cbi8qKlxuICogVXRpbGl0eSBjbGFzcyBmb3IgMHgyOjpjb2luXG4gKiBhcyBkZWZpbmVkIGluIGh0dHBzOi8vZ2l0aHViLmNvbS9NeXN0ZW5MYWJzL3N1aS9ibG9iL2NhOTA0NmZkOGIxYTllODYzNGE0Yjc0YjBlN2RhYmRjN2VhNTQ0NzUvc3VpX3Byb2dyYW1tYWJpbGl0eS9mcmFtZXdvcmsvc291cmNlcy9Db2luLm1vdmUjTDRcbiAqL1xuZXhwb3J0IGNsYXNzIENvaW4ge1xuICBzdGF0aWMgaXNDb2luKGRhdGE6IE9iamVjdERhdGEpOiBib29sZWFuIHtcbiAgICByZXR1cm4gQ29pbi5nZXRUeXBlKGRhdGEpPy5tYXRjaChDT0lOX1RZUEVfQVJHX1JFR0VYKSAhPSBudWxsO1xuICB9XG5cbiAgc3RhdGljIGdldENvaW5UeXBlKHR5cGU6IHN0cmluZykge1xuICAgIGNvbnN0IFssIHJlc10gPSB0eXBlLm1hdGNoKENPSU5fVFlQRV9BUkdfUkVHRVgpID8/IFtdO1xuICAgIHJldHVybiByZXMgfHwgbnVsbDtcbiAgfVxuXG4gIHN0YXRpYyBnZXRDb2luVHlwZUFyZyhvYmo6IE9iamVjdERhdGEpIHtcbiAgICBjb25zdCB0eXBlID0gQ29pbi5nZXRUeXBlKG9iaik7XG4gICAgcmV0dXJuIHR5cGUgPyBDb2luLmdldENvaW5UeXBlKHR5cGUpIDogbnVsbDtcbiAgfVxuXG4gIHN0YXRpYyBpc1NVSShvYmo6IE9iamVjdERhdGEpIHtcbiAgICBjb25zdCBhcmcgPSBDb2luLmdldENvaW5UeXBlQXJnKG9iaik7XG4gICAgcmV0dXJuIGFyZyA/IENvaW4uZ2V0Q29pblN5bWJvbChhcmcpID09PSAnU1VJJyA6IGZhbHNlO1xuICB9XG5cbiAgc3RhdGljIGdldENvaW5TeW1ib2woY29pblR5cGVBcmc6IHN0cmluZykge1xuICAgIHJldHVybiBjb2luVHlwZUFyZy5zdWJzdHJpbmcoY29pblR5cGVBcmcubGFzdEluZGV4T2YoJzonKSArIDEpO1xuICB9XG5cbiAgc3RhdGljIGdldENvaW5TdHJ1Y3RUYWcoY29pblR5cGVBcmc6IHN0cmluZyk6IFN0cnVjdFRhZyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGFkZHJlc3M6IG5vcm1hbGl6ZVN1aU9iamVjdElkKGNvaW5UeXBlQXJnLnNwbGl0KCc6OicpWzBdKSxcbiAgICAgIG1vZHVsZTogY29pblR5cGVBcmcuc3BsaXQoJzo6JylbMV0sXG4gICAgICBuYW1lOiBjb2luVHlwZUFyZy5zcGxpdCgnOjonKVsyXSxcbiAgICAgIHR5cGVQYXJhbXM6IFtdLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGdldElEKG9iajogT2JqZWN0RGF0YSk6IE9iamVjdElkIHtcbiAgICBpZiAoJ2ZpZWxkcycgaW4gb2JqKSB7XG4gICAgICByZXR1cm4gb2JqLmZpZWxkcy5pZC5pZDtcbiAgICB9XG4gICAgcmV0dXJuIGdldE9iamVjdElkKG9iaik7XG4gIH1cblxuICBzdGF0aWMgdG90YWxCYWxhbmNlKGNvaW5zOiBDb2luU3RydWN0W10pOiBiaWdpbnQge1xuICAgIHJldHVybiBjb2lucy5yZWR1Y2UoKHBhcnRpYWxTdW0sIGMpID0+IHBhcnRpYWxTdW0gKyBDb2luLmdldEJhbGFuY2VGcm9tQ29pblN0cnVjdChjKSwgQmlnSW50KDApKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTb3J0IGNvaW4gYnkgYmFsYW5jZSBpbiBhbiBhc2NlbmRpbmcgb3JkZXJcbiAgICovXG4gIHN0YXRpYyBzb3J0QnlCYWxhbmNlKGNvaW5zOiBDb2luU3RydWN0W10pOiBDb2luU3RydWN0W10ge1xuICAgIHJldHVybiBbLi4uY29pbnNdLnNvcnQoKGEsIGIpID0+XG4gICAgICBDb2luLmdldEJhbGFuY2VGcm9tQ29pblN0cnVjdChhKSA8IENvaW4uZ2V0QmFsYW5jZUZyb21Db2luU3RydWN0KGIpXG4gICAgICAgID8gLTFcbiAgICAgICAgOiBDb2luLmdldEJhbGFuY2VGcm9tQ29pblN0cnVjdChhKSA+IENvaW4uZ2V0QmFsYW5jZUZyb21Db2luU3RydWN0KGIpXG4gICAgICAgID8gMVxuICAgICAgICA6IDBcbiAgICApO1xuICB9XG5cbiAgc3RhdGljIGdldEJhbGFuY2VGcm9tQ29pblN0cnVjdChjb2luOiBDb2luU3RydWN0KTogYmlnaW50IHtcbiAgICByZXR1cm4gQmlnSW50KGNvaW4uYmFsYW5jZSk7XG4gIH1cblxuICBzdGF0aWMgZ2V0QmFsYW5jZShkYXRhOiBPYmplY3REYXRhRnVsbCk6IGJpZ2ludCB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCFDb2luLmlzQ29pbihkYXRhKSkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gICAgY29uc3QgYmFsYW5jZSA9IGdldE9iamVjdEZpZWxkcyhkYXRhKT8uYmFsYW5jZTtcbiAgICByZXR1cm4gQmlnSW50KGJhbGFuY2UpO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgZ2V0VHlwZShkYXRhOiBPYmplY3REYXRhKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoaXNPYmplY3REYXRhRnVsbChkYXRhKSkge1xuICAgICAgcmV0dXJuIGdldE9iamVjdFR5cGUoZGF0YSk7XG4gICAgfVxuICAgIHJldHVybiBkYXRhLnR5cGU7XG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgRGVsZWdhdGlvbkRhdGEgPSBTdWlNb3ZlT2JqZWN0ICYge1xuICBkYXRhVHlwZTogJ21vdmVPYmplY3QnO1xuICB0eXBlOiAnMHgyOjpkZWxlZ2F0aW9uOjpEZWxlZ2F0aW9uJztcbiAgZmllbGRzOiB7XG4gICAgYWN0aXZlX2RlbGVnYXRpb246IE9wdGlvbjxudW1iZXI+O1xuICAgIGRlbGVnYXRlX2Ftb3VudDogbnVtYmVyO1xuICAgIG5leHRfcmV3YXJkX3VuY2xhaW1lZF9lcG9jaDogbnVtYmVyO1xuICAgIHZhbGlkYXRvcl9hZGRyZXNzOiBTdWlBZGRyZXNzO1xuICAgIGluZm86IHtcbiAgICAgIGlkOiBzdHJpbmc7XG4gICAgICB2ZXJzaW9uOiBudW1iZXI7XG4gICAgfTtcbiAgICBjb2luX2xvY2tlZF91bnRpbF9lcG9jaDogT3B0aW9uPFN1aU1vdmVPYmplY3Q+O1xuICAgIGVuZGluZ19lcG9jaDogT3B0aW9uPG51bWJlcj47XG4gIH07XG59O1xuXG5leHBvcnQgdHlwZSBEZWxlZ2F0aW9uU3VpT2JqZWN0ID0gT21pdDxTdWlPYmplY3REYXRhLCAnZGF0YSc+ICYge1xuICBkYXRhOiBEZWxlZ2F0aW9uRGF0YTtcbn07XG5cbi8vIENsYXNzIGZvciBkZWxlZ2F0aW9uLm1vdmVcbi8vIHNlZSBodHRwczovL2dpdGh1Yi5jb20vTXlzdGVuTGFicy9mYXN0bmZ0L2Jsb2IvMTYxYWEyN2ZlN2ViOGVjZjI4NjZlYzllYjE5MmU3NjhmMjVkYTc2OC9jcmF0ZXMvc3VpLWZyYW1ld29yay9zb3VyY2VzL2dvdmVybmFuY2UvZGVsZWdhdGlvbi5tb3ZlXG5leHBvcnQgY2xhc3MgRGVsZWdhdGlvbiB7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgU1VJX09CSkVDVF9UWVBFID0gJzB4Mjo6ZGVsZWdhdGlvbjo6RGVsZWdhdGlvbic7XG4gIHByaXZhdGUgc3VpT2JqZWN0OiBEZWxlZ2F0aW9uU3VpT2JqZWN0O1xuXG4gIHB1YmxpYyBzdGF0aWMgaXNEZWxlZ2F0aW9uU3VpT2JqZWN0KG9iajogU3VpT2JqZWN0RGF0YSk6IG9iaiBpcyBEZWxlZ2F0aW9uU3VpT2JqZWN0IHtcbiAgICByZXR1cm4gJ3R5cGUnIGluIG9iaiAmJiBvYmoudHlwZSA9PT0gRGVsZWdhdGlvbi5TVUlfT0JKRUNUX1RZUEU7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihvYmo6IERlbGVnYXRpb25TdWlPYmplY3QpIHtcbiAgICB0aGlzLnN1aU9iamVjdCA9IG9iajtcbiAgfVxuXG4gIHB1YmxpYyBuZXh0UmV3YXJkVW5jbGFpbWVkRXBvY2goKSB7XG4gICAgcmV0dXJuIHRoaXMuc3VpT2JqZWN0LmRhdGEuZmllbGRzLm5leHRfcmV3YXJkX3VuY2xhaW1lZF9lcG9jaDtcbiAgfVxuXG4gIHB1YmxpYyBhY3RpdmVEZWxlZ2F0aW9uKCkge1xuICAgIHJldHVybiBCaWdJbnQoZ2V0T3B0aW9uKHRoaXMuc3VpT2JqZWN0LmRhdGEuZmllbGRzLmFjdGl2ZV9kZWxlZ2F0aW9uKSB8fCAwKTtcbiAgfVxuXG4gIHB1YmxpYyBkZWxlZ2F0ZUFtb3VudCgpIHtcbiAgICByZXR1cm4gdGhpcy5zdWlPYmplY3QuZGF0YS5maWVsZHMuZGVsZWdhdGVfYW1vdW50O1xuICB9XG5cbiAgcHVibGljIGVuZGluZ0Vwb2NoKCkge1xuICAgIHJldHVybiBnZXRPcHRpb24odGhpcy5zdWlPYmplY3QuZGF0YS5maWVsZHMuZW5kaW5nX2Vwb2NoKTtcbiAgfVxuXG4gIHB1YmxpYyB2YWxpZGF0b3JBZGRyZXNzKCkge1xuICAgIHJldHVybiB0aGlzLnN1aU9iamVjdC5kYXRhLmZpZWxkcy52YWxpZGF0b3JfYWRkcmVzcztcbiAgfVxuXG4gIHB1YmxpYyBpc0FjdGl2ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmVEZWxlZ2F0aW9uKCkgPiAwICYmICF0aGlzLmVuZGluZ0Vwb2NoKCk7XG4gIH1cblxuICBwdWJsaWMgaGFzVW5jbGFpbWVkUmV3YXJkcyhlcG9jaDogbnVtYmVyKSB7XG4gICAgcmV0dXJuIHRoaXMubmV4dFJld2FyZFVuY2xhaW1lZEVwb2NoKCkgPD0gZXBvY2ggJiYgKHRoaXMuaXNBY3RpdmUoKSB8fCAodGhpcy5lbmRpbmdFcG9jaCgpIHx8IDApID4gZXBvY2gpO1xuICB9XG59XG4iXX0=
|
|
135
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhbWV3b3JrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9teXN0ZW5sYWIvZnJhbWV3b3JrL2ZyYW1ld29yay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFvQ0EsNENBRUM7QUF0Q0QsOENBUTBCO0FBQzFCLDRDQUE2RTtBQUU3RSw0Q0FBb0Q7QUFHcEQsNkNBQTRFO0FBRS9ELFFBQUEsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO0FBQzNCLFFBQUEscUJBQXFCLEdBQUcsS0FBSyxDQUFDO0FBQzlCLFFBQUEsbUJBQW1CLEdBQUcsS0FBSyxDQUFDO0FBQzVCLFFBQUEsa0JBQWtCLEdBQUcsUUFBUSxDQUFDO0FBQzlCLFFBQUEsZUFBZSxHQUFHLEtBQUssQ0FBQztBQUN4QixRQUFBLGNBQWMsR0FBRyxJQUFJLENBQUM7QUFDdEIsUUFBQSxZQUFZLEdBQUcsR0FBRyw2QkFBcUIsWUFBWSxDQUFDO0FBQ3BELFFBQUEsdUJBQXVCLEdBQUcsNkNBQTZDLENBQUM7QUFFeEUsUUFBQSxtQkFBbUIsR0FBRyxJQUFBLDZCQUFvQixFQUFDLEtBQUssQ0FBQyxDQUFDO0FBRS9ELHNGQUFzRjtBQUN6RSxRQUFBLGVBQWUsR0FBRyxLQUFLLENBQUM7QUFDeEIsUUFBQSw0QkFBNEIsR0FBRyxXQUFXLENBQUM7QUFDM0MsUUFBQSx1QkFBdUIsR0FBRyxNQUFNLENBQUM7QUFDakMsUUFBQSxtQkFBbUIsR0FBRyx5QkFBeUIsQ0FBQztBQUs3RCxTQUFnQixnQkFBZ0IsQ0FBQyxJQUFpQztJQUNoRSxPQUFPLENBQUMsQ0FBRSxJQUEwQixDQUFDLElBQUksSUFBSSxDQUFDLENBQUUsSUFBc0IsQ0FBQyxJQUFJLENBQUM7QUFDOUUsQ0FBQztBQUVZLFFBQUEsa0JBQWtCLEdBQUcsSUFBQSxvQkFBTSxFQUFDO0lBQ3ZDLFFBQVEsRUFBRSxJQUFBLG9CQUFNLEdBQUU7SUFDbEIsSUFBSSxFQUFFLElBQUEsb0JBQU0sR0FBRTtJ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QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgZ2V0T2JqZWN0RmllbGRzLFxuICBTdWlPYmplY3RSZXNwb25zZSxcbiAgU3VpTW92ZU9iamVjdCxcbiAgU3VpT2JqZWN0SW5mbyxcbiAgU3VpT2JqZWN0RGF0YSxcbiAgZ2V0T2JqZWN0SWQsXG4gIGdldE9iamVjdFR5cGUsXG59IGZyb20gJy4uL3R5cGVzL29iamVjdHMnO1xuaW1wb3J0IHsgbm9ybWFsaXplU3VpT2JqZWN0SWQsIE9iamVjdElkLCBTdWlBZGRyZXNzIH0gZnJvbSAnLi4vdHlwZXMvY29tbW9uJztcblxuaW1wb3J0IHsgZ2V0T3B0aW9uLCBPcHRpb24gfSBmcm9tICcuLi90eXBlcy9vcHRpb24nO1xuaW1wb3J0IHsgQ29pblN0cnVjdCB9IGZyb20gJy4uL3R5cGVzL2NvaW4nO1xuaW1wb3J0IHsgU3RydWN0VGFnIH0gZnJvbSAnLi4vdHlwZXMvc3VpLWJjcyc7XG5pbXBvcnQgeyBJbmZlciwgbGl0ZXJhbCwgbnVtYmVyLCBvYmplY3QsIHN0cmluZywgdW5pb24gfSBmcm9tICdzdXBlcnN0cnVjdCc7XG5cbmV4cG9ydCBjb25zdCBTVUlfU1lTVEVNX0FERFJFU1MgPSAnMHgzJztcbmV4cG9ydCBjb25zdCBTVUlfRlJBTUVXT1JLX0FERFJFU1MgPSAnMHgyJztcbmV4cG9ydCBjb25zdCBNT1ZFX1NURExJQl9BRERSRVNTID0gJzB4MSc7XG5leHBvcnQgY29uc3QgT0JKRUNUX01PRFVMRV9OQU1FID0gJ29iamVjdCc7XG5leHBvcnQgY29uc3QgVUlEX1NUUlVDVF9OQU1FID0gJ1VJRCc7XG5leHBvcnQgY29uc3QgSURfU1RSVUNUX05BTUUgPSAnSUQnO1xuZXhwb3J0IGNvbnN0IFNVSV9UWVBFX0FSRyA9IGAke1NVSV9GUkFNRVdPUktfQUREUkVTU306OnN1aTo6U1VJYDtcbmV4cG9ydCBjb25zdCBWQUxJREFUT1JTX0VWRU5UU19RVUVSWSA9ICcweDM6OnZhbGlkYXRvcl9zZXQ6OlZhbGlkYXRvckVwb2NoSW5mb0V2ZW50JztcblxuZXhwb3J0IGNvbnN0IFNVSV9DTE9DS19PQkpFQ1RfSUQgPSBub3JtYWxpemVTdWlPYmplY3RJZCgnMHg2Jyk7XG5cbi8vIGBzdWk6OnBheWAgbW9kdWxlIGlzIHVzZWQgZm9yIENvaW4gbWFuYWdlbWVudCAoc3BsaXQsIGpvaW4sIGpvaW5fYW5kX3RyYW5zZmVyIGV0Yyk7XG5leHBvcnQgY29uc3QgUEFZX01PRFVMRV9OQU1FID0gJ3BheSc7XG5leHBvcnQgY29uc3QgUEFZX1NQTElUX0NPSU5fVkVDX0ZVTkNfTkFNRSA9ICdzcGxpdF92ZWMnO1xuZXhwb3J0IGNvbnN0IFBBWV9KT0lOX0NPSU5fRlVOQ19OQU1FID0gJ2pvaW4nO1xuZXhwb3J0IGNvbnN0IENPSU5fVFlQRV9BUkdfUkVHRVggPSAvXjB4Mjo6Y29pbjo6Q29pbjwoLispPiQvO1xuXG50eXBlIE9iamVjdERhdGEgPSBPYmplY3REYXRhRnVsbCB8IFN1aU9iamVjdEluZm87XG50eXBlIE9iamVjdERhdGFGdWxsID0gU3VpT2JqZWN0UmVzcG9uc2UgfCBTdWlNb3ZlT2JqZWN0O1xuXG5leHBvcnQgZnVuY3Rpb24gaXNPYmplY3REYXRhRnVsbChyZXNwOiBPYmplY3REYXRhIHwgT2JqZWN0RGF0YUZ1bGwpOiByZXNwIGlzIFN1aU9iamVjdFJlc3BvbnNlIHtcbiAgcmV0dXJuICEhKHJlc3AgYXMgU3VpT2JqZWN0UmVzcG9uc2UpLmRhdGEgfHwgISEocmVzcCBhcyBTdWlNb3ZlT2JqZWN0KS50eXBlO1xufVxuXG5leHBvcnQgY29uc3QgQ29pbk1ldGFkYXRhU3RydWN0ID0gb2JqZWN0KHtcbiAgZGVjaW1hbHM6IG51bWJlcigpLFxuICBuYW1lOiBzdHJpbmcoKSxcbiAgc3ltYm9sOiBzdHJpbmcoKSxcbiAgZGVzY3JpcHRpb246IHN0cmluZygpLFxuICBpY29uVXJsOiB1bmlvbihbc3RyaW5nKCksIGxpdGVyYWwobnVsbCldKSxcbiAgaWQ6IHVuaW9uKFtPYmplY3RJZCwgbGl0ZXJhbChudWxsKV0pLFxufSk7XG5cbmV4cG9ydCB0eXBlIENvaW5NZXRhZGF0YSA9IEluZmVyPHR5cGVvZiBDb2luTWV0YWRhdGFTdHJ1Y3Q+O1xuXG4vKipcbiAqIFV0aWxpdHkgY2xhc3MgZm9yIDB4Mjo6Y29pblxuICogYXMgZGVmaW5lZCBpbiBodHRwczovL2dpdGh1Yi5jb20vTXlzdGVuTGFicy9zdWkvYmxvYi9jYTkwNDZmZDhiMWE5ZTg2MzRhNGI3NGIwZTdkYWJkYzdlYTU0NDc1L3N1aV9wcm9ncmFtbWFiaWxpdHkvZnJhbWV3b3JrL3NvdXJjZXMvQ29pbi5tb3ZlI0w0XG4gKi9cbmV4cG9ydCBjbGFzcyBDb2luIHtcbiAgc3RhdGljIGlzQ29pbihkYXRhOiBPYmplY3REYXRhKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIENvaW4uZ2V0VHlwZShkYXRhKT8ubWF0Y2goQ09JTl9UWVBFX0FSR19SRUdFWCkgIT0gbnVsbDtcbiAgfVxuXG4gIHN0YXRpYyBnZXRDb2luVHlwZSh0eXBlOiBzdHJpbmcpIHtcbiAgICBjb25zdCBbLCByZXNdID0gdHlwZS5tYXRjaChDT0lOX1RZUEVfQVJHX1JFR0VYKSA/PyBbXTtcbiAgICByZXR1cm4gcmVzIHx8IG51bGw7XG4gIH1cblxuICBzdGF0aWMgZ2V0Q29pblR5cGVBcmcob2JqOiBPYmplY3REYXRhKSB7XG4gICAgY29uc3QgdHlwZSA9IENvaW4uZ2V0VHlwZShvYmopO1xuICAgIHJldHVybiB0eXBlID8gQ29pbi5nZXRDb2luVHlwZSh0eXBlKSA6IG51bGw7XG4gIH1cblxuICBzdGF0aWMgaXNTVUkob2JqOiBPYmplY3REYXRhKSB7XG4gICAgY29uc3QgYXJnID0gQ29pbi5nZXRDb2luVHlwZUFyZyhvYmopO1xuICAgIHJldHVybiBhcmcgPyBDb2luLmdldENvaW5TeW1ib2woYXJnKSA9PT0gJ1NVSScgOiBmYWxzZTtcbiAgfVxuXG4gIHN0YXRpYyBnZXRDb2luU3ltYm9sKGNvaW5UeXBlQXJnOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gY29pblR5cGVBcmcuc3Vic3RyaW5nKGNvaW5UeXBlQXJnLmxhc3RJbmRleE9mKCc6JykgKyAxKTtcbiAgfVxuXG4gIHN0YXRpYyBnZXRDb2luU3RydWN0VGFnKGNvaW5UeXBlQXJnOiBzdHJpbmcpOiBTdHJ1Y3RUYWcge1xuICAgIHJldHVybiB7XG4gICAgICBhZGRyZXNzOiBub3JtYWxpemVTdWlPYmplY3RJZChjb2luVHlwZUFyZy5zcGxpdCgnOjonKVswXSksXG4gICAgICBtb2R1bGU6IGNvaW5UeXBlQXJnLnNwbGl0KCc6OicpWzFdLFxuICAgICAgbmFtZTogY29pblR5cGVBcmcuc3BsaXQoJzo6JylbMl0sXG4gICAgICB0eXBlUGFyYW1zOiBbXSxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBnZXRJRChvYmo6IE9iamVjdERhdGEpOiBPYmplY3RJZCB7XG4gICAgaWYgKCdmaWVsZHMnIGluIG9iaikge1xuICAgICAgcmV0dXJuIG9iai5maWVsZHMuaWQuaWQ7XG4gICAgfVxuICAgIHJldHVybiBnZXRPYmplY3RJZChvYmopO1xuICB9XG5cbiAgc3RhdGljIHRvdGFsQmFsYW5jZShjb2luczogQ29pblN0cnVjdFtdKTogYmlnaW50IHtcbiAgICByZXR1cm4gY29pbnMucmVkdWNlKChwYXJ0aWFsU3VtLCBjKSA9PiBwYXJ0aWFsU3VtICsgQ29pbi5nZXRCYWxhbmNlRnJvbUNvaW5TdHJ1Y3QoYyksIEJpZ0ludCgwKSk7XG4gIH1cblxuICAvKipcbiAgICogU29ydCBjb2luIGJ5IGJhbGFuY2UgaW4gYW4gYXNjZW5kaW5nIG9yZGVyXG4gICAqL1xuICBzdGF0aWMgc29ydEJ5QmFsYW5jZShjb2luczogQ29pblN0cnVjdFtdKTogQ29pblN0cnVjdFtdIHtcbiAgICByZXR1cm4gWy4uLmNvaW5zXS5zb3J0KChhLCBiKSA9PlxuICAgICAgQ29pbi5nZXRCYWxhbmNlRnJvbUNvaW5TdHJ1Y3QoYSkgPCBDb2luLmdldEJhbGFuY2VGcm9tQ29pblN0cnVjdChiKVxuICAgICAgICA/IC0xXG4gICAgICAgIDogQ29pbi5nZXRCYWxhbmNlRnJvbUNvaW5TdHJ1Y3QoYSkgPiBDb2luLmdldEJhbGFuY2VGcm9tQ29pblN0cnVjdChiKVxuICAgICAgICA/IDFcbiAgICAgICAgOiAwXG4gICAgKTtcbiAgfVxuXG4gIHN0YXRpYyBnZXRCYWxhbmNlRnJvbUNvaW5TdHJ1Y3QoY29pbjogQ29pblN0cnVjdCk6IGJpZ2ludCB7XG4gICAgcmV0dXJuIEJpZ0ludChjb2luLmJhbGFuY2UpO1xuICB9XG5cbiAgc3RhdGljIGdldEJhbGFuY2UoZGF0YTogT2JqZWN0RGF0YUZ1bGwpOiBiaWdpbnQgfCB1bmRlZmluZWQge1xuICAgIGlmICghQ29pbi5pc0NvaW4oZGF0YSkpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIGNvbnN0IGJhbGFuY2UgPSBnZXRPYmplY3RGaWVsZHMoZGF0YSk/LmJhbGFuY2U7XG4gICAgcmV0dXJuIEJpZ0ludChiYWxhbmNlKTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIGdldFR5cGUoZGF0YTogT2JqZWN0RGF0YSk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKGlzT2JqZWN0RGF0YUZ1bGwoZGF0YSkpIHtcbiAgICAgIHJldHVybiBnZXRPYmplY3RUeXBlKGRhdGEpO1xuICAgIH1cbiAgICByZXR1cm4gZGF0YS50eXBlO1xuICB9XG59XG5cbmV4cG9ydCB0eXBlIERlbGVnYXRpb25EYXRhID0gU3VpTW92ZU9iamVjdCAmIHtcbiAgZGF0YVR5cGU6ICdtb3ZlT2JqZWN0JztcbiAgdHlwZTogJzB4Mjo6ZGVsZWdhdGlvbjo6RGVsZWdhdGlvbic7XG4gIGZpZWxkczoge1xuICAgIGFjdGl2ZV9kZWxlZ2F0aW9uOiBPcHRpb248bnVtYmVyPjtcbiAgICBkZWxlZ2F0ZV9hbW91bnQ6IG51bWJlcjtcbiAgICBuZXh0X3Jld2FyZF91bmNsYWltZWRfZXBvY2g6IG51bWJlcjtcbiAgICB2YWxpZGF0b3JfYWRkcmVzczogU3VpQWRkcmVzcztcbiAgICBpbmZvOiB7XG4gICAgICBpZDogc3RyaW5nO1xuICAgICAgdmVyc2lvbjogbnVtYmVyO1xuICAgIH07XG4gICAgY29pbl9sb2NrZWRfdW50aWxfZXBvY2g6IE9wdGlvbjxTdWlNb3ZlT2JqZWN0PjtcbiAgICBlbmRpbmdfZXBvY2g6IE9wdGlvbjxudW1iZXI+O1xuICB9O1xufTtcblxuZXhwb3J0IHR5cGUgRGVsZWdhdGlvblN1aU9iamVjdCA9IE9taXQ8U3VpT2JqZWN0RGF0YSwgJ2RhdGEnPiAmIHtcbiAgZGF0YTogRGVsZWdhdGlvbkRhdGE7XG59O1xuXG4vLyBDbGFzcyBmb3IgZGVsZWdhdGlvbi5tb3ZlXG4vLyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL015c3RlbkxhYnMvZmFzdG5mdC9ibG9iLzE2MWFhMjdmZTdlYjhlY2YyODY2ZWM5ZWIxOTJlNzY4ZjI1ZGE3NjgvY3JhdGVzL3N1aS1mcmFtZXdvcmsvc291cmNlcy9nb3Zlcm5hbmNlL2RlbGVnYXRpb24ubW92ZVxuZXhwb3J0IGNsYXNzIERlbGVnYXRpb24ge1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFNVSV9PQkpFQ1RfVFlQRSA9ICcweDI6OmRlbGVnYXRpb246OkRlbGVnYXRpb24nO1xuICBwcml2YXRlIHN1aU9iamVjdDogRGVsZWdhdGlvblN1aU9iamVjdDtcblxuICBwdWJsaWMgc3RhdGljIGlzRGVsZWdhdGlvblN1aU9iamVjdChvYmo6IFN1aU9iamVjdERhdGEpOiBvYmogaXMgRGVsZWdhdGlvblN1aU9iamVjdCB7XG4gICAgcmV0dXJuICd0eXBlJyBpbiBvYmogJiYgb2JqLnR5cGUgPT09IERlbGVnYXRpb24uU1VJX09CSkVDVF9UWVBFO1xuICB9XG5cbiAgY29uc3RydWN0b3Iob2JqOiBEZWxlZ2F0aW9uU3VpT2JqZWN0KSB7XG4gICAgdGhpcy5zdWlPYmplY3QgPSBvYmo7XG4gIH1cblxuICBwdWJsaWMgbmV4dFJld2FyZFVuY2xhaW1lZEVwb2NoKCkge1xuICAgIHJldHVybiB0aGlzLnN1aU9iamVjdC5kYXRhLmZpZWxkcy5uZXh0X3Jld2FyZF91bmNsYWltZWRfZXBvY2g7XG4gIH1cblxuICBwdWJsaWMgYWN0aXZlRGVsZWdhdGlvbigpIHtcbiAgICByZXR1cm4gQmlnSW50KGdldE9wdGlvbih0aGlzLnN1aU9iamVjdC5kYXRhLmZpZWxkcy5hY3RpdmVfZGVsZWdhdGlvbikgfHwgMCk7XG4gIH1cblxuICBwdWJsaWMgZGVsZWdhdGVBbW91bnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3VpT2JqZWN0LmRhdGEuZmllbGRzLmRlbGVnYXRlX2Ftb3VudDtcbiAgfVxuXG4gIHB1YmxpYyBlbmRpbmdFcG9jaCgpIHtcbiAgICByZXR1cm4gZ2V0T3B0aW9uKHRoaXMuc3VpT2JqZWN0LmRhdGEuZmllbGRzLmVuZGluZ19lcG9jaCk7XG4gIH1cblxuICBwdWJsaWMgdmFsaWRhdG9yQWRkcmVzcygpIHtcbiAgICByZXR1cm4gdGhpcy5zdWlPYmplY3QuZGF0YS5maWVsZHMudmFsaWRhdG9yX2FkZHJlc3M7XG4gIH1cblxuICBwdWJsaWMgaXNBY3RpdmUoKSB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlRGVsZWdhdGlvbigpID4gMCAmJiAhdGhpcy5lbmRpbmdFcG9jaCgpO1xuICB9XG5cbiAgcHVibGljIGhhc1VuY2xhaW1lZFJld2FyZHMoZXBvY2g6IG51bWJlcikge1xuICAgIHJldHVybiB0aGlzLm5leHRSZXdhcmRVbmNsYWltZWRFcG9jaCgpIDw9IGVwb2NoICYmICh0aGlzLmlzQWN0aXZlKCkgfHwgKHRoaXMuZW5kaW5nRXBvY2goKSB8fCAwKSA+IGVwb2NoKTtcbiAgfVxufVxuIl19
|