@bitgo-beta/sdk-coin-sui 1.4.1-alpha.42 → 1.4.1-alpha.43

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,47 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [3.0.2](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-sui@3.0.1...@bitgo/sdk-coin-sui@3.0.2) (2023-04-25)
7
+
8
+ **Note:** Version bump only for package @bitgo/sdk-coin-sui
9
+
10
+ ## [3.0.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-sui@3.0.0...@bitgo/sdk-coin-sui@3.0.1) (2023-04-20)
11
+
12
+ **Note:** Version bump only for package @bitgo/sdk-coin-sui
13
+
14
+ # [3.0.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-sui@2.0.1...@bitgo/sdk-coin-sui@3.0.0) (2023-04-13)
15
+
16
+ ### Bug Fixes
17
+
18
+ - **sdk-coin-sui:** adjust sui bcs models changes ([25f06e7](https://github.com/BitGo/BitGoJS/commit/25f06e7a0c922594858a8b9fc5b48c96acacc27f))
19
+ - **sdk-coin-sui:** export unstaking ([d23986d](https://github.com/BitGo/BitGoJS/commit/d23986dd25fba757501696263a3118012e948922))
20
+ - **sdk-coin-sui:** fix outputs address and add validation ([077640c](https://github.com/BitGo/BitGoJS/commit/077640c4b76492489a88728c272b33755ef744a9))
21
+ - **sdk-coin-sui:** fix sui verifyTransaction method ([c86766a](https://github.com/BitGo/BitGoJS/commit/c86766aa3668d2f22f1f2cf438c806bb3b88289c))
22
+ - **sdk-coin-sui:** fix tx type ([94e2178](https://github.com/BitGo/BitGoJS/commit/94e2178dff63faf5f41065e4781c47d0fc8cbd2a))
23
+ - **sdk-coin-sui:** fix txHex to hex string ([48b462e](https://github.com/BitGo/BitGoJS/commit/48b462eb914fd8f69b801bc440eb5d236c7893c6))
24
+ - **sdk-coin-sui:** fixed getAddressFromPublicKey for SUI ([0d6d72d](https://github.com/BitGo/BitGoJS/commit/0d6d72dd9529e7156b13aa204d8999806587e502))
25
+ - **sdk-coin-sui:** staking explain transaction ([fbc49f8](https://github.com/BitGo/BitGoJS/commit/fbc49f8cd39d265f7a5ff65ed5896e12389b4b09))
26
+ - **sdk-coin-sui:** tx signing flow ([ae681ed](https://github.com/BitGo/BitGoJS/commit/ae681ed6d9d895beff67621e46a589d0317eb403))
27
+
28
+ ### chore
29
+
30
+ - **sdk-coin-sui:** update bcs and tx serialization ([8280468](https://github.com/BitGo/BitGoJS/commit/82804683d6c5149e628002f64b2b9b5c8f92665b))
31
+
32
+ ### Features
33
+
34
+ - remove swtich tx builder not supported prior on 0.28 release ([2aaff40](https://github.com/BitGo/BitGoJS/commit/2aaff4018842137ea2fdef4a4ab818f28eff8232))
35
+ - **sdk-coin-sui:** add mystenlab types and remove old impl of transfer ([4a8aeaa](https://github.com/BitGo/BitGoJS/commit/4a8aeaa97cb372dfaa2b364fd9c617f47f037d03))
36
+ - **sdk-coin-sui:** build staking transaction ([53d3b6e](https://github.com/BitGo/BitGoJS/commit/53d3b6efcda6148bb20ebf6647deb05e7c464744))
37
+ - **sdk-coin-sui:** build transfer transaction ([bc0f531](https://github.com/BitGo/BitGoJS/commit/bc0f5310650dbb5a6cc16c23047f81853aec1b1e))
38
+ - **sdk-coin-sui:** build unstaking transaction ([c3ef7de](https://github.com/BitGo/BitGoJS/commit/c3ef7de26abca8d5d1161ef04891a39b5aaf6d4b))
39
+ - **sdk-coin-sui:** implement generateKeyPair ([ca9f788](https://github.com/BitGo/BitGoJS/commit/ca9f788d8e08bf6c04ae49088ee7a0b405b03be5))
40
+ - **sdk-coin-sui:** update sui models up to 0.30 ([b9de616](https://github.com/BitGo/BitGoJS/commit/b9de616afaebc8da546bd95cbec63d5d21079889))
41
+ - update signature hashing ([fcadc86](https://github.com/BitGo/BitGoJS/commit/fcadc8688ef9d0c2f1ed86b7e50053fd62045b0a))
42
+
43
+ ### BREAKING CHANGES
44
+
45
+ - **sdk-coin-sui:** gasData is added to transaction builder interface
46
+
6
47
  ## [2.0.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-sui@2.0.0...@bitgo/sdk-coin-sui@2.0.1) (2023-02-17)
7
48
 
8
49
  **Note:** Version bump only for package @bitgo/sdk-coin-sui
@@ -588,12 +588,12 @@ export declare class TransactionBlock {
588
588
  };
589
589
  /** Add a transaction to the transaction block. */
590
590
  add(transaction: TransactionType): TransactionResult;
591
- splitCoins(...args: Parameters<typeof Transactions['SplitCoins']>): TransactionResult;
592
- mergeCoins(...args: Parameters<typeof Transactions['MergeCoins']>): TransactionResult;
593
- publish(...args: Parameters<typeof Transactions['Publish']>): TransactionResult;
594
- moveCall(...args: Parameters<typeof Transactions['MoveCall']>): TransactionResult;
595
- transferObjects(...args: Parameters<typeof Transactions['TransferObjects']>): TransactionResult;
596
- makeMoveVec(...args: Parameters<typeof Transactions['MakeMoveVec']>): TransactionResult;
591
+ splitCoins(...args: Parameters<(typeof Transactions)['SplitCoins']>): TransactionResult;
592
+ mergeCoins(...args: Parameters<(typeof Transactions)['MergeCoins']>): TransactionResult;
593
+ publish(...args: Parameters<(typeof Transactions)['Publish']>): TransactionResult;
594
+ moveCall(...args: Parameters<(typeof Transactions)['MoveCall']>): TransactionResult;
595
+ transferObjects(...args: Parameters<(typeof Transactions)['TransferObjects']>): TransactionResult;
596
+ makeMoveVec(...args: Parameters<(typeof Transactions)['MakeMoveVec']>): TransactionResult;
597
597
  /**
598
598
  * Serialize the transaction to a string so that it can be sent to a separate context.
599
599
  * This is different from `build` in that it does not serialize to BCS bytes, and instead
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionBlock.d.ts","sourceRoot":"","sources":["../../../../../src/lib/mystenlab/builder/TransactionBlock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TransactionBlock.d.ts","sourceRoot":"","sources":["../../../../../src/lib/mystenlab/builder/TransactionBlock.ts"],"names":[],"mappings":"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"}
@@ -257,4 +257,4 @@ class TransactionBlock {
257
257
  }
258
258
  }
259
259
  exports.TransactionBlock = TransactionBlock;
260
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNhY3Rpb25CbG9jay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbXlzdGVubGFiL2J1aWxkZXIvVHJhbnNhY3Rpb25CbG9jay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHFDQUFzQztBQUN0Qyw2Q0FBdUM7QUFDdkMsb0NBQWtEO0FBQ2xELGlEQUEyRztBQUMzRyxxQ0FBbUY7QUFDbkYsaUVBQTRGO0FBQzVGLG1DQUFpQztBQUlqQyxTQUFTLHVCQUF1QixDQUFDLEtBQWE7SUFDNUMsTUFBTSxVQUFVLEdBQXdCLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUVsRSxNQUFNLGFBQWEsR0FBMEIsRUFBRSxDQUFDO0lBQ2hELE1BQU0sZUFBZSxHQUFHLENBQUMsV0FBbUIsRUFBdUIsRUFBRTs7UUFDbkUsT0FBQSxPQUFDLGFBQWEsQ0FBQyxXQUFXLHFDQUF6QixhQUFhLENBQUMsV0FBVyxJQUFNO1lBQzlCLElBQUksRUFBRSxjQUFjO1lBQ3BCLEtBQUs7WUFDTCxXQUFXO1NBQ1osRUFBQyxDQUFBO0tBQUEsQ0FBQztJQUVMLE9BQU8sSUFBSSxLQUFLLENBQUMsVUFBVSxFQUFFO1FBQzNCLEdBQUc7WUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLHFGQUFxRixDQUFDLENBQUM7UUFDekcsQ0FBQztRQUNELDZFQUE2RTtRQUM3RSw0RUFBNEU7UUFDNUUsbUNBQW1DO1FBQ25DLEdBQUcsQ0FBQyxNQUFNLEVBQUUsUUFBUTtZQUNsQix5RUFBeUU7WUFDekUsSUFBSSxRQUFRLElBQUksTUFBTSxFQUFFO2dCQUN0QixPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO2FBQ3RDO1lBRUQseUJBQXlCO1lBQ3pCLElBQUksUUFBUSxLQUFLLE1BQU0sQ0FBQyxRQUFRLEVBQUU7Z0JBQ2hDLE9BQU8sUUFBUSxD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LDJCQUFZLENBQUMsV0FBVyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7O09BV0c7SUFDSCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLHlDQUFnQixRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCwwQ0FBMEM7SUFDMUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLG1CQUFtQixLQUFtQixFQUFFO1FBQ3BELE9BQU8seUNBQWdCLEtBQUssQ0FBQyxFQUFFLG1CQUFtQixFQUFFLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsZ0NBQWdDO0lBQ2hDLEtBQUssQ0FBQyxTQUFTO1FBQ2IsT0FBTyx5Q0FBZ0IsU0FBUyxFQUFFLENBQUM7SUFDckMsQ0FBQztDQUNGO0FBcE5ELDRDQW9OQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZyb21CNjQgfSBmcm9tICdAbXlzdGVuL2Jjcyc7XG5pbXBvcnQgeyBpcywgbWFzayB9IGZyb20gJ3N1cGVyc3RydWN0JztcbmltcG9ydCB7IE9iamVjdElkLCBTdWlPYmplY3RSZWYgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbnMsIFRyYW5zYWN0aW9uQXJndW1lbnQsIFRyYW5zYWN0aW9uVHlwZSwgVHJhbnNhY3Rpb25CbG9ja0lucHV0IH0gZnJvbSAnLi9UcmFuc2FjdGlvbnMnO1xuaW1wb3J0IHsgQnVpbGRlckNhbGxBcmcsIGdldElkRnJvbUNhbGxBcmcsIElucHV0cywgT2JqZWN0Q2FsbEFyZyB9IGZyb20gJy4vSW5wdXRzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQmxvY2tEYXRhQnVpbGRlciwgVHJhbnNhY3Rpb25FeHBpcmF0aW9uIH0gZnJvbSAnLi9UcmFuc2FjdGlvbkRhdGFCbG9jayc7XG5pbXBvcnQgeyBjcmVhdGUgfSBmcm9tICcuL3V0aWxzJztcblxudHlwZSBUcmFuc2FjdGlvblJlc3VsdCA9IFRyYW5zYWN0aW9uQXJndW1lbnQgJiBUcmFuc2FjdGlvbkFyZ3VtZW50W107XG5cbmZ1bmN0aW9uIGNyZWF0ZVRyYW5zYWN0aW9uUmVzdWx0KGluZGV4OiBudW1iZXIpOiBUcmFuc2FjdGlvblJlc3VsdCB7XG4gIGNvbnN0IGJhc2VSZXN1bHQ6IFRyYW5zYWN0aW9uQXJndW1lbnQgPSB7IGtpbmQ6ICdSZXN1bHQnLCBpbmRleCB9O1xuXG4gIGNvbnN0IG5lc3RlZFJlc3VsdHM6IFRyYW5zYWN0aW9uQXJndW1lbnRbXSA9IFtdO1xuICBjb25zdCBuZXN0ZWRSZXN1bHRGb3IgPSAocmVzdWx0SW5kZXg6IG51bWJlcik6IFRyYW5zYWN0aW9uQXJndW1lbnQgPT5cbiAgICAobmVzdGVkUmVzdWx0c1tyZXN1bHRJbmRleF0gPz89IHtcbiAgICAgIGtpbmQ6ICdOZXN0ZWRSZXN1bHQnLFxuICAgICAgaW5kZXgsXG4gICAgICByZXN1bHRJbmRleCxcbiAgICB9KTtcblxuICByZXR1cm4gbmV3IFByb3h5KGJhc2VSZXN1bHQsIHtcbiAgICBzZXQoKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSB0cmFuc2FjdGlvbiByZXN1bHQgaXMgYSBwcm94eSwgYW5kIGRvZXMgbm90IHN1cHBvcnQgc2V0dGluZyBwcm9wZXJ0aWVzIGRpcmVjdGx5Jyk7XG4gICAgfSxcbiAgICAvLyBUT0RPOiBJbnN0ZWFkIG9mIG1ha2luZyB0aGlzIHJldHVybiBhIGNvbmNyZXRlIGFyZ3VtZW50LCB3ZSBzaG91bGQgaWRlYWxseVxuICAgIC8vIG1ha2UgaXQgcmVmZXJlbmNlLWJhc2VkIChzbyB0aGF0IHRoaXMgZ2V0cyByZXNvbHZlZCBhdCBidWlsZC10aW1lKSwgd2hpY2hcbiAgICAvLyBhbGxvd3MgcmUtb3JkZXJpbmcgdHJhbnNhY3Rpb25zLlxuICAgIGdldCh0YXJnZXQsIHByb3BlcnR5KSB7XG4gICAgICAvLyBUaGlzIGFsbG93cyB0aGlzIHRyYW5zYWN0aW9uIGFyZ3VtZW50IHRvIGJlIHVzZWQgaW4gdGhlIHNpbmd1bGFyIGZvcm06XG4gICAgICBpZiAocHJvcGVydHkgaW4gdGFyZ2V0KSB7XG4gICAgICAgIHJldHVybiBSZWZsZWN0LmdldCh0YXJnZXQsIHByb3BlcnR5KTtcbiAgICAgIH1cblxuICAgICAgLy8gU3VwcG9ydCBkZXN0cnVjdHVyaW5nOlxuICAgICAgaWYgKHByb3BlcnR5ID09PSBTeW1ib2wuaXRlcmF0b3IpIHtcbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgICAgbGV0IGkgPSAwO1xuICAgICAgICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICAgICAgICB5aWVsZCBuZXN0ZWRSZXN1bHRGb3IoaSk7XG4gICAgICAgICAgICBpKys7XG4gICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICBpZiAodHlwZW9mIHByb3BlcnR5ID09PSAnc3ltYm9sJykgcmV0dXJuO1xuXG4gICAgICBjb25zdCByZXN1bHRJbmRleCA9IHBhcnNlSW50KHByb3BlcnR5LCAxMCk7XG4gICAgICBpZiAoTnVtYmVyLmlzTmFOKHJlc3VsdEluZGV4KSB8fCByZXN1bHRJbmRleCA8IDApIHJldHVybjtcbiAgICAgIHJldHVybiBuZXN0ZWRSZXN1bHRGb3IocmVzdWx0SW5kZXgpO1xuICAgIH0sXG4gIH0pIGFzIFRyYW5zYWN0aW9uUmVzdWx0O1xufVxuXG5jb25zdCBUUkFOU0FDVElPTl9CUkFORCA9IFN5bWJvbC5mb3IoJ0BteXN0ZW4vdHJhbnNhY3Rpb24nKTtcblxuLy8gVGhlIG1heGltdW0gbnVtYmVyIG9mIGdhcyBvYmplY3RzIHRoYXQgY2FuIGJlIHNlbGVjdGVkIGZvciBvbmUgdHJhbnNhY3Rpb24uXG5jb25zdCBNQVhfR0FTX09CSkVDVFMgPSAyNTY7XG5cbi8vIFRoZSBtYXhpbXVtIGdhcyB0aGF0IGlzIGFsbG93ZWQuXG5jb25zdCBNQVhfR0FTID0gMTAwMDAwMDAwMDtcblxuLy8gQSBndWVzcyBhYm91dCBob3cgbXVjaCBvdmVyaGVhZCBlYWNoIGNvaW4gcHJvdmlkZXMgZm9yIGdhcyBjYWxjdWxhdGlvbnMuXG4vLyBAdHMtaWdub3JlXG5jb25zdCBHQVNfT1ZFUkhFQURfUEVSX0NPSU4gPSAxMG47XG5cbmludGVyZmFjZSBCdWlsZE9wdGlvbnMge1xuICBvbmx5VHJhbnNhY3Rpb25LaW5kPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBUcmFuc2FjdGlvbiBCdWlsZGVyXG4gKi9cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkJsb2NrIHtcbiAgLyoqIFJldHVybnMgYHRydWVgIGlmIHRoZSBvYmplY3QgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIFRyYW5zYWN0aW9uIGJ1aWxkZXIgY2xhc3MuICovXG4gIHN0YXRpYyBpcyhvYmo6IHVua25vd24pOiBvYmogaXMgVHJhbnNhY3Rpb25CbG9jayB7XG4gICAgcmV0dXJuICEhb2JqICYmIHR5cGVvZiBvYmogPT09ICdvYmplY3QnICYmIChvYmogYXMgYW55KVtUUkFOU0FDVElPTl9CUkFORF0gPT09IHRydWU7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgZnJvbSBhIHNlcmlhbGl6ZSB0cmFuc2FjdGlvbiBraW5kIChidWlsdCB3aXRoIGBidWlsZCh7IG9ubHlUcmFuc2FjdGlvbktpbmQ6IHRydWUgfSlgKSB0byBhIGBUcmFuc2FjdGlvbmAgY2xhc3MuXG4gICAqIFN1cHBvcnRzIGVpdGhlciBhIGJ5dGUgYXJyYXksIG9yIGJhc2U2NC1lbmNvZGVkIGJ5dGVzLlxuICAgKi9cbiAgc3RhdGljIGZyb21LaW5kKHNlcmlhbGl6ZWQ6IHN0cmluZyB8IFVpbnQ4QXJyYXkpIHtcbiAgICBjb25zdCB0eCA9IG5ldyBUcmFuc2FjdGlvbkJsb2NrKCk7XG5cbiAgICB0eC4jYmxvY2tEYXRhID0gVHJhbnNhY3Rpb25CbG9ja0RhdGFCdWlsZGVyLmZyb21LaW5kQnl0ZXMoXG4gICAgICB0eXBlb2Ygc2VyaWFsaXplZCA9PT0gJ3N0cmluZycgPyBmcm9tQjY0KHNlcmlhbGl6ZWQpIDogc2VyaWFsaXplZFxuICAgICk7XG5cbiAgICByZXR1cm4gdHg7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgZnJvbSBhIHNlcmlhbGl6ZWQgdHJhbnNhY3Rpb24gZm9ybWF0IHRvIGEgYFRyYW5zYWN0aW9uYCBjbGFzcy5cbiAgICogVGhlcmUgYXJlIHR3byBzdXBwb3J0ZWQgc2VyaWFsaXplZCBmb3JtYXRzOlxuICAgKiAtIEEgc3RyaW5nIHJldHVybmVkIGZyb20gYFRyYW5zYWN0aW9uI3NlcmlhbGl6ZWAuIFRoZSBzZXJpYWxpemVkIGZvcm1hdCBtdXN0IGJlIGNvbXBhdGlibGUsIG9yIGl0IHdpbGwgdGhyb3cgYW4gZXJyb3IuXG4gICAqIC0gQSBieXRlIGFycmF5IChvciBiYXNlNjQtZW5jb2RlZCBieXRlcykgY29udGFpbmluZyBCQ1MgdHJhbnNhY3Rpb24gZGF0YS5cbiAgICovXG4gIHN0YXRpYyBmcm9tKHNlcmlhbGl6ZWQ6IHN0cmluZyB8IFVpbnQ4QXJyYXkpIHtcbiAgICBjb25zdCB0eCA9IG5ldyBUcmFuc2FjdGlvbkJsb2NrKCk7XG5cbiAgICAvLyBDaGVjayBmb3IgYnl0ZXM6XG4gICAgaWYgKHR5cGVvZiBzZXJpYWxpemVkICE9PSAnc3RyaW5nJyB8fCAhc2VyaWFsaXplZC5zdGFydHNXaXRoKCd7JykpIHtcbiAgICAgIHR4LiNibG9ja0RhdGEgPSBUcmFuc2FjdGlvbkJsb2NrRGF0YUJ1aWxkZXIuZnJvbUJ5dGVzKFxuICAgICAgICB0eXBlb2Ygc2VyaWFsaXplZCA9PT0gJ3N0cmluZycgPyBmcm9tQjY0KHNlcmlhbGl6ZWQpIDogc2VyaWFsaXplZFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdHguI2Jsb2NrRGF0YSA9IFRyYW5zYWN0aW9uQmxvY2tEYXRhQnVpbGRlci5yZXN0b3JlKEpTT04ucGFyc2Uoc2VyaWFsaXplZCkpO1xuICAgIH1cblxuICAgIHJldHVybiB0eDtcbiAgfVxuXG4gIC8qKiBBIGhlbHBlciB0byByZXRyaWV2ZSB0aGUgVHJhbnNhY3Rpb24gYnVpbGRlciBgVHJhbnNhY3Rpb25zYCAqL1xuICBzdGF0aWMgZ2V0IFRyYW5zYWN0aW9ucygpIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25zO1xuICB9XG5cbiAgLyoqIEEgaGVscGVyIHRvIHJldHJpZXZlIHRoZSBUcmFuc2FjdGlvbiBidWlsZGVyIGBJbnB1dHNgICovXG4gIHN0YXRpYyBnZXQgSW5wdXRzKCkge1xuICAgIHJldHVybiBJbnB1dHM7XG4gIH1cblxuICBzZXRTZW5kZXIoc2VuZGVyOiBzdHJpbmcpIHtcbiAgICB0aGlzLiNibG9ja0RhdGEuc2VuZGVyID0gc2VuZGVyO1xuICB9XG4gIC8qKlxuICAgKiBTZXRzIHRoZSBzZW5kZXIgb25seSBpZiBpdCBoYXMgbm90IGFscmVhZHkgYmVlbiBzZXQuXG4gICAqIFRoaXMgaXMgdXNlZnVsIGZvciBzcG9uc29yZWQgdHJhbnNhY3Rpb24gZmxvd3Mgd2hlcmUgdGhlIHNlbmRlciBtYXkgbm90IGJlIHRoZSBzYW1lIGFzIHRoZSBzaWduZXIgYWRkcmVzcy5cbiAgICovXG4gIHNldFNlbmRlcklmTm90U2V0KHNlbmRlcjogc3RyaW5nKSB7XG4gICAgaWYgKCF0aGlzLiNibG9ja0RhdGEuc2VuZGVyKSB7XG4gICAgICB0aGlzLiNibG9ja0RhdGEuc2VuZGVyID0gc2VuZGVyO1xuICAgIH1cbiAgfVxuICBzZXRFeHBpcmF0aW9uKGV4cGlyYXRpb24/OiBUcmFuc2FjdGlvbkV4cGlyYXRpb24pIHtcbiAgICB0aGlzLiNibG9ja0RhdGEuZXhwaXJhdGlvbiA9IGV4cGlyYXRpb247XG4gIH1cbiAgc2V0R2FzUHJpY2UocHJpY2U6IG51bWJlciB8IGJpZ2ludCkge1xuICAgIHRoaXMuI2Jsb2NrRGF0YS5nYXNDb25maWcucHJpY2UgPSBTdHJpbmcocHJpY2UpO1xuICB9XG4gIHNldEdhc0J1ZGdldChidWRnZXQ6IG51bWJlciB8IGJpZ2ludCkge1xuICAgIHRoaXMuI2Jsb2NrRGF0YS5nYXNDb25maWcuYnVkZ2V0ID0gU3RyaW5nKGJ1ZGdldCk7XG4gIH1cbiAgc2V0R2FzT3duZXIob3duZXI6IHN0cmluZykge1xuICAgIHRoaXMuI2Jsb2NrRGF0YS5nYXNDb25maWcub3duZXIgPSBvd25lcjtcbiAgfVxuICBzZXRHYXNQYXltZW50KHBheW1lbnRzOiBTdWlPYmplY3RSZWZbXSkge1xuICAgIGlmIChwYXltZW50cy5sZW5ndGggPj0gTUFYX0dBU19PQkpFQ1RTKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFBheW1lbnQgb2JqZWN0cyBleGNlZWQgbWF4aW11bSBhbW91bnQgJHtNQVhfR0FTX09CSkVDVFN9YCk7XG4gICAgfVxuICAgIHRoaXMuI2Jsb2NrRGF0YS5nYXNDb25maWcucGF5bWVudCA9IHBheW1lbnRzLm1hcCgocGF5bWVudCkgPT4gbWFzayhwYXltZW50LCBTdWlPYmplY3RSZWYpKTtcbiAgfVxuXG4gICNibG9ja0RhdGE6IFRyYW5zYWN0aW9uQmxvY2tEYXRhQnVpbGRlcjtcbiAgLyoqIEdldCBhIHNuYXBzaG90IG9mIHRoZSB0cmFuc2FjdGlvbiBkYXRhLCBpbiBKU09OIGZvcm06ICovXG4gIGdldCBibG9ja0RhdGEoKSB7XG4gICAgcmV0dXJuIHRoaXMuI2Jsb2NrRGF0YS5zbmFwc2hvdCgpO1xuICB9XG5cbiAgLy8gVXNlZCB0byBicmFuZCB0cmFuc2FjdGlvbiBjbGFzc2VzIHNvIHRoYXQgdGhleSBjYW4gYmUgaWRlbnRpZmllZCwgZXZlbiBiZXR3ZWVuIG11bHRpcGxlIGNvcGllc1xuICAvLyBvZiB0aGUgYnVpbGRlci5cbiAgZ2V0IFtUUkFOU0FDVElPTl9CUkFORF0oKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcih0cmFuc2FjdGlvbj86IFRyYW5zYWN0aW9uQmxvY2spIHtcbiAgICB0aGlzLiNibG9ja0RhdGEgPSBuZXcgVHJhbnNhY3Rpb25CbG9ja0RhdGFCdWlsZGVyKHRyYW5zYWN0aW9uID8gdHJhbnNhY3Rpb24uI2Jsb2NrRGF0YSA6IHVuZGVmaW5lZCk7XG4gIH1cblxuICAvKiogUmV0dXJucyBhbiBhcmd1bWVudCBmb3IgdGhlIGdhcyBjb2luLCB0byBiZSB1c2VkIGluIGEgdHJhbnNhY3Rpb24uICovXG4gIGdldCBnYXMoKTogVHJhbnNhY3Rpb25Bcmd1bWVudCB7XG4gICAgcmV0dXJuIHsga2luZDogJ0dhc0NvaW4nIH07XG4gIH1cblxuICAvKipcbiAgICogRHluYW1pY2FsbHkgY3JlYXRlIGEgbmV3IGlucHV0LCB3aGljaCBpcyBzZXBhcmF0ZSBmcm9tIHRoZSBgaW5wdXRgLiBUaGlzIGlzIGltcG9ydGFudFxuICAgKiBmb3IgZ2VuZXJhdGVkIGNsaWVudHMgdG8gYmUgYWJsZSB0byBkZWZpbmUgdW5pcXVlIGlucHV0cyB0aGF0IGFyZSBub24tb3ZlcmxhcHBpbmcgd2l0aCB0aGVcbiAgICogZGVmaW5lZCBpbnB1dHMuXG4gICAqXG4gICAqIEZvciBgVWludDhBcnJheWAgdHlwZSBhdXRvbWF0aWNhbGx5IGNvbnZlcnQgdGhlIGlucHV0IGludG8gYSBgUHVyZWAgQ2FsbEFyZywgc2luY2UgdGhpc1xuICAgKiBpcyB0aGUgZm9ybWF0IHJlcXVpcmVkIGZvciBjdXN0b20gc2VyaWFsaXphdGlvbi5cbiAgICpcbiAgICovXG4gIGlucHV0KHR5cGU6ICdvYmplY3QnIHwgJ3B1cmUnLCB2YWx1ZT86IHVua25vd24pIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuI2Jsb2NrRGF0YS5pbnB1dHMubGVuZ3RoO1xuICAgIGNvbnN0IGlucHV0ID0gY3JlYXRlKFxuICAgICAge1xuICAgICAgICBraW5kOiAnSW5wdXQnLFxuICAgICAgICAvLyBiaWdpbnRzIGNhbid0IGJlIHNlcmlhbGl6ZWQgdG8gSlNPTiwgc28ganVzdCBzdHJpbmctY29udmVydCB0aGVtIGhlcmU6XG4gICAgICAgIHZhbHVlOiB0eXBlb2YgdmFsdWUgPT09ICdiaWdpbnQnID8gU3RyaW5nKHZhbHVlKSA6IHZhbHVlLFxuICAgICAgICBpbmRleCxcbiAgICAgICAgdHlwZSxcbiAgICAgIH0sXG4gICAgICBUcmFuc2FjdGlvbkJsb2NrSW5wdXRcbiAgICApO1xuICAgIHRoaXMuI2Jsb2NrRGF0YS5pbnB1dHMucHVzaChpbnB1dCk7XG4gICAgcmV0dXJuIGlucHV0O1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIG5ldyBvYmplY3QgaW5wdXQgdG8gdGhlIHRyYW5zYWN0aW9uLlxuICAgKi9cbiAgb2JqZWN0KHZhbHVlOiBPYmplY3RJZCB8IE9iamVjdENhbGxBcmcpIHtcbiAgICBjb25zdCBpZCA9IGdldElkRnJvbUNhbGxBcmcodmFsdWUpO1xuICAgIC8vIGRlZHVwbGljYXRlXG4gICAgY29uc3QgaW5zZXJ0ZWQgPSB0aGlzLiNibG9ja0RhdGEuaW5wdXRzLmZpbmQoKGkpID0+IGkudHlwZSA9PT0gJ29iamVjdCcgJiYgaWQgPT09IGdldElkRnJvbUNhbGxBcmcoaS52YWx1ZSkpO1xuICAgIHJldHVybiBpbnNlcnRlZCA/PyB0aGlzLmlucHV0KCdvYmplY3QnLCB2YWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgbmV3IG5vbi1vYmplY3QgaW5wdXQgdG8gdGhlIHRyYW5zYWN0aW9uLlxuICAgKi9cbiAgcHVyZShcbiAgICAvKipcbiAgICAgKiBUaGUgcHVyZSB2YWx1ZSB0aGF0IHdpbGwgYmUgdXNlZCBhcyB0aGUgaW5wdXQgdmFsdWUuIElmIHRoaXMgaXMgYSBVaW50OEFycmF5LCB0aGVuIHRoZSB2YWx1ZVxuICAgICAqIGlzIGFzc3VtZWQgdG8gYmUgcmF3IGJ5dGVzLCBhbmQgd2lsbCBiZSB1c2VkIGRpcmVjdGx5LlxuICAgICAqL1xuICAgIHZhbHVlOiB1bmtub3duLFxuICAgIC8qKlxuICAgICAqIFRoZSBCQ1MgdHlwZSB0byBzZXJpYWxpemUgdGhlIHZhbHVlIGludG8uIElmIG5vdCBwcm92aWRlZCwgdGhlIHR5cGUgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIGRldGVybWluZWRcbiAgICAgKiBiYXNlZCBvbiBob3cgdGhlIGlucHV0IGlzIHVzZWQuXG4gICAgICovXG4gICAgdHlwZT86IHN0cmluZ1xuICApIHtcbiAgICAvLyBUT0RPOiB3ZSBjYW4gYWxzbyBkbyBzb21lIGRlZHVwbGljYXRpb24gaGVyZVxuICAgIHJldHVybiB0aGlzLmlucHV0KFxuICAgICAgJ3B1cmUnLFxuICAgICAgdmFsdWUgaW5zdGFuY2VvZiBVaW50OEFycmF5ID8gSW5wdXRzLlB1cmUodmFsdWUpIDogdHlwZSA/IElucHV0cy5QdXJlKHZhbHVlLCB0eXBlKSA6IHZhbHVlXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBBZGQgYSB0cmFuc2FjdGlvbiB0byB0aGUgdHJhbnNhY3Rpb24gYmxvY2suICovXG4gIGFkZCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb25UeXBlKSB7XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLiNibG9ja0RhdGEudHJhbnNhY3Rpb25zLnB1c2godHJhbnNhY3Rpb24pO1xuICAgIHJldHVybiBjcmVhdGVUcmFuc2FjdGlvblJlc3VsdChpbmRleCAtIDEpO1xuICB9XG5cbiAgLy8gTWV0aG9kIHNob3J0aGFuZHM6XG5cbiAgc3BsaXRDb2lucyguLi5hcmdzOiBQYXJhbWV0ZXJzPHR5cGVvZiBUcmFuc2FjdGlvbnNbJ1NwbGl0Q29pbnMnXT4pIHtcbiAgICByZXR1cm4gdGhpcy5hZGQoVHJhbnNhY3Rpb25zLlNwbGl0Q29pbnMoLi4uYXJncykpO1xuICB9XG4gIG1lcmdlQ29pbnMoLi4uYXJnczogUGFyYW1ldGVyczx0eXBlb2YgVHJhbnNhY3Rpb25zWydNZXJnZUNvaW5zJ10+KSB7XG4gICAgcmV0dXJuIHRoaXMuYWRkKFRyYW5zYWN0aW9ucy5NZXJnZUNvaW5zKC4uLmFyZ3MpKTtcbiAgfVxuICBwdWJsaXNoKC4uLmFyZ3M6IFBhcmFtZXRlcnM8dHlwZW9mIFRyYW5zYWN0aW9uc1snUHVibGlzaCddPikge1xuICAgIHJldHVybiB0aGlzLmFkZChUcmFuc2FjdGlvbnMuUHVibGlzaCguLi5hcmdzKSk7XG4gIH1cbiAgbW92ZUNhbGwoLi4uYXJnczogUGFyYW1ldGVyczx0eXBlb2YgVHJhbnNhY3Rpb25zWydNb3ZlQ2FsbCddPikge1xuICAgIHJldHVybiB0aGlzLmFkZChUcmFuc2FjdGlvbnMuTW92ZUNhbGwoLi4uYXJncykpO1xuICB9XG4gIHRyYW5zZmVyT2JqZWN0cyguLi5hcmdzOiBQYXJhbWV0ZXJzPHR5cGVvZiBUcmFuc2FjdGlvbnNbJ1RyYW5zZmVyT2JqZWN0cyddPikge1xuICAgIHJldHVybiB0aGlzLmFkZChUcmFuc2FjdGlvbnMuVHJhbnNmZXJPYmplY3RzKC4uLmFyZ3MpKTtcbiAgfVxuICBtYWtlTW92ZVZlYyguLi5hcmdzOiBQYXJhbWV0ZXJzPHR5cGVvZiBUcmFuc2FjdGlvbnNbJ01ha2VNb3ZlVmVjJ10+KSB7XG4gICAgcmV0dXJuIHRoaXMuYWRkKFRyYW5zYWN0aW9ucy5NYWtlTW92ZVZlYyguLi5hcmdzKSk7XG4gIH1cblxuICAvKipcbiAgICogU2VyaWFsaXplIHRoZSB0cmFuc2FjdGlvbiB0byBhIHN0cmluZyBzbyB0aGF0IGl0IGNhbiBiZSBzZW50IHRvIGEgc2VwYXJhdGUgY29udGV4dC5cbiAgICogVGhpcyBpcyBkaWZmZXJlbnQgZnJvbSBgYnVpbGRgIGluIHRoYXQgaXQgZG9lcyBub3Qgc2VyaWFsaXplIHRvIEJDUyBieXRlcywgYW5kIGluc3RlYWRcbiAgICogdXNlcyBhIHNlcGFyYXRlIGZvcm1hdCB0aGF0IGlzIHVuaXF1ZSB0byB0aGUgdHJhbnNhY3Rpb24gYnVpbGRlci4gVGhpcyBhbGxvd3NcbiAgICogdXMgdG8gc2VyaWFsaXplIHBhcnRpYWxseS1jb21wbGV0ZSB0cmFuc2FjdGlvbnMsIHRoYXQgY2FuIHRoZW4gYmUgY29tcGxldGVkIGFuZFxuICAgKiBidWlsdCBpbiBhIHNlcGFyYXRlIGNvbnRleHQuXG4gICAqXG4gICAqIEZvciBleGFtcGxlLCBhIGRhcHAgY2FuIGNvbnN0cnVjdCBhIHRyYW5zYWN0aW9uLCBidXQgbm90IHByb3ZpZGUgZ2FzIG9iamVjdHNcbiAgICogb3IgYSBnYXMgYnVkZ2V0LiBUaGUgdHJhbnNhY3Rpb24gdGhlbiBjYW4gYmUgc2VudCB0byB0aGUgd2FsbGV0LCB3aGVyZSB0aGlzXG4gICAqIGluZm9ybWF0aW9uIGlzIGF1dG9tYXRpY2FsbHkgZmlsbGVkIGluIChlLmcuIGJ5IHF1ZXJ5aW5nIGZvciBjb2luIG9iamVjdHNcbiAgICogYW5kIHBlcmZvcm1pbmcgYSBkcnkgcnVuKS5cbiAgICovXG4gIHNlcmlhbGl6ZSgpIHtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodGhpcy4jYmxvY2tEYXRhLnNuYXBzaG90KCkpO1xuICB9XG5cbiAgLyoqIEJ1aWxkIHRoZSB0cmFuc2FjdGlvbiB0byBCQ1MgYnl0ZXMuICovXG4gIGFzeW5jIGJ1aWxkKHsgb25seVRyYW5zYWN0aW9uS2luZCB9OiBCdWlsZE9wdGlvbnMgPSB7fSk6IFByb21pc2U8VWludDhBcnJheT4ge1xuICAgIHJldHVybiB0aGlzLiNibG9ja0RhdGEuYnVpbGQoeyBvbmx5VHJhbnNhY3Rpb25LaW5kIH0pO1xuICB9XG5cbiAgLyoqIERlcml2ZSB0cmFuc2FjdGlvbiBkaWdlc3QgKi9cbiAgYXN5bmMgZ2V0RGlnZXN0KCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuI2Jsb2NrRGF0YS5nZXREaWdlc3QoKTtcbiAgfVxufVxuIl19
260
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNhY3Rpb25CbG9jay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbXlzdGVubGFiL2J1aWxkZXIvVHJhbnNhY3Rpb25CbG9jay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHFDQUFzQztBQUN0Qyw2Q0FBdUM7QUFDdkMsb0NBQWtEO0FBQ2xELGlEQUEyRztBQUMzRyxxQ0FBbUY7QUFDbkYsaUVBQTRGO0FBQzVGLG1DQUFpQztBQUlqQyxTQUFTLHVCQUF1QixDQUFDLEtBQWE7SUFDNUMsTUFBTSxVQUFVLEdBQXdCLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUVsRSxNQUFNLGFBQWEsR0FBMEIsRUFBRSxDQUFDO0lBQ2hELE1BQU0sZUFBZSxHQUFHLENBQUMsV0FBbUIsRUFBdUIsRUFBRTs7UUFDbkUsT0FBQSxPQUFDLGFBQWEsQ0FBQyxXQUFXLHFDQUF6QixhQUFhLENBQUMsV0FBVyxJQUFNO1lBQzlCLElBQUksRUFBRSxjQUFjO1lBQ3BCLEtBQUs7WUFDTCxXQUFXO1NBQ1osRUFBQyxDQUFBO0tBQUEsQ0FBQztJQUVMLE9BQU8sSUFBSSxLQUFLLENBQUMsVUFBVSxFQUFFO1FBQzNCLEdBQUc7WUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLHFGQUFxRixDQUFDLENBQUM7UUFDekcsQ0FBQztRQUNELDZFQUE2RTtRQUM3RSw0RUFBNEU7UUFDNUUsbUNBQW1DO1FBQ25DLEdBQUcsQ0FBQyxNQUFNLEVBQUUsUUFBUTtZQUNsQix5RUFBeUU7WUFDekUsSUFBSSxRQUFRLElBQUksTUFBTSxFQUFFO2dCQUN0QixPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO2FBQ3RDO1lBRUQseUJBQXlCO1lBQ3pCLElBQUksUUFBUSxLQUFLLE1BQU0sQ0FBQyxRQUFRLEVBQUU7Z0JBQ2hDLE9BQU8sUUFBUSxDQUFDO29CQUNkLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFDVixPQUFPLElBQUksRUFBRTt3QkFDWCxNQUFNLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQzt3QkFDekIsQ0FBQyxFQUFFLENBQUM7cUJBQ0w7Z0JBQ0gsQ0FBQyxDQUFDO2FBQ0g7WUFFRCxJQUFJLE9BQU8sUUFBUSxLQUFLLFFBQVE7Z0JBQUUsT0FBTztZQUV6QyxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzNDLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSSxXQUFXLEdBQUcsQ0FBQztnQkFBRSxPQUFPO1lBQ3pELE9BQU8sZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3RDLENBQUM7S0FDRixDQUFzQixDQUFDO0FBQzFCLENBQUM7QUFFRCxNQUFNLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQztBQUU1RCw4RUFBOEU7QUFDOUUsTUFBTSxlQUFlLEdBQUcsR0FBRyxDQUFDO0FBRTVCLG1DQUFtQztBQUNuQyxNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUM7QUFFM0IsMkVBQTJFO0FBQzNFLGFBQWE7QUFDYixNQUFNLHFCQUFxQixHQUFHLEdBQUcsQ0FBQztBQU1sQzs7R0FFRztBQUNILE1BQWEsZ0JBQWdCO0lBOEYzQixZQUFZLFdBQThCO1FBWjFDLDZCQUF3QztRQWF0Qyx1QkFBQSxJQUFJLGNBQWMsSUFBSSxrREFBMkIsQ0FBQyxXQUFXLENBQUMsQ0FBQyxpREFBd0IsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxFQUFDO0lBQ3RHLENBQUM7SUEvRkQsb0ZBQW9GO0lBQ3BGLE1BQU0sQ0FBQyxFQUFFLENBQUMsR0FBWTtRQUNwQixPQUFPLENBQUMsQ0FBQyxHQUFHLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxJQUFLLEdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLElBQUksQ0FBQztJQUN0RixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUErQjtRQUM3QyxNQUFNLEVBQUUsR0FBRyxJQUFJLGdCQUFnQixFQUFFLENBQUM7UUFFbEMsdUJBQUEsRUFBRSxjQUFjLGtEQUEyQixDQUFDLGFBQWEsQ0FDdkQsT0FBTyxVQUFVLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxhQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FDbEUsRUFBQztRQUVGLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUErQjtRQUN6QyxNQUFNLEVBQUUsR0FBRyxJQUFJLGdCQUFnQixFQUFFLENBQUM7UUFFbEMsbUJBQW1CO1FBQ25CLElBQUksT0FBTyxVQUFVLEtBQUssUUFBUSxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNqRSx1QkFBQSxFQUFFLGNBQWMsa0RBQTJCLENBQUMsU0FBUyxDQUNuRCxPQUFPLFVBQVUsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLGFBQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUNsRSxFQUFDO1NBQ0g7YUFBTTtZQUNMLHVCQUFBLEVBQUUsY0FBYyxrREFBMkIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFDO1NBQzdFO1FBRUQsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsa0VBQWtFO0lBQ2xFLE1BQU0sS0FBSyxZQUFZO1FBQ3JCLE9BQU8sMkJBQVksQ0FBQztJQUN0QixDQUFDO0lBRUQsNERBQTREO0lBQzVELE1BQU0sS0FBSyxNQUFNO1FBQ2YsT0FBTyxlQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELFNBQVMsQ0FBQyxNQUFjO1FBQ3RCLHlDQUFnQixNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ2xDLENBQUM7SUFDRDs7O09BR0c7SUFDSCxpQkFBaUIsQ0FBQyxNQUFjO1FBQzlCLElBQUksQ0FBQyx5Q0FBZ0IsTUFBTSxFQUFFO1lBQzNCLHlDQUFnQixNQUFNLEdBQUcsTUFBTSxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQztJQUNELGFBQWEsQ0FBQyxVQUFrQztRQUM5Qyx5Q0FBZ0IsVUFBVSxHQUFHLFVBQVUsQ0FBQztJQUMxQyxDQUFDO0lBQ0QsV0FBVyxDQUFDLEtBQXNCO1FBQ2hDLHlDQUFnQixTQUFTLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBQ0QsWUFBWSxDQUFDLE1BQXVCO1FBQ2xDLHlDQUFnQixTQUFTLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBQ0QsV0FBVyxDQUFDLEtBQWE7UUFDdkIseUNBQWdCLFNBQVMsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQzFDLENBQUM7SUFDRCxhQUFhLENBQUMsUUFBd0I7UUFDcEMsSUFBSSxRQUFRLENBQUMsTUFBTSxJQUFJLGVBQWUsRUFBRTtZQUN0QyxNQUFNLElBQUksS0FBSyxDQUFDLHlDQUF5QyxlQUFlLEVBQUUsQ0FBQyxDQUFDO1NBQzdFO1FBQ0QseUNBQWdCLFNBQVMsQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsa0JBQUksQ0FBQyxPQUFPLEVBQUUsb0JBQVksQ0FBQyxDQUFDLENBQUM7SUFDN0YsQ0FBQztJQUdELDREQUE0RDtJQUM1RCxJQUFJLFNBQVM7UUFDWCxPQUFPLHlDQUFnQixRQUFRLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsaUdBQWlHO0lBQ2pHLGtCQUFrQjtJQUNsQixJQUFJLDhCQUFDLGlCQUFpQixFQUFDO1FBQ3JCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQU1ELHlFQUF5RTtJQUN6RSxJQUFJLEdBQUc7UUFDTCxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILEtBQUssQ0FBQyxJQUF1QixFQUFFLEtBQWU7UUFDNUMsTUFBTSxLQUFLLEdBQUcseUNBQWdCLE1BQU0sQ0FBQyxNQUFNLENBQUM7UUFDNUMsTUFBTSxLQUFLLEdBQUcsY0FBTSxDQUNsQjtZQUNFLElBQUksRUFBRSxPQUFPO1lBQ2IseUVBQXlFO1lBQ3pFLEtBQUssRUFBRSxPQUFPLEtBQUssS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSztZQUN4RCxLQUFLO1lBQ0wsSUFBSTtTQUNMLEVBQ0Qsb0NBQXFCLENBQ3RCLENBQUM7UUFDRix5Q0FBZ0IsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuQyxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxLQUErQjtRQUNwQyxNQUFNLEVBQUUsR0FBRyx5QkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuQyxjQUFjO1FBQ2QsTUFBTSxRQUFRLEdBQUcseUNBQWdCLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssUUFBUSxJQUFJLEVBQUUsS0FBSyx5QkFBZ0IsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUM3RyxPQUFPLFFBQVEsYUFBUixRQUFRLGNBQVIsUUFBUSxHQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7T0FFRztJQUNILElBQUk7SUFDRjs7O09BR0c7SUFDSCxLQUFjO0lBQ2Q7OztPQUdHO0lBQ0gsSUFBYTtRQUViLCtDQUErQztRQUMvQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQ2YsTUFBTSxFQUNOLEtBQUssWUFBWSxVQUFVLENBQUMsQ0FBQyxDQUFDLGVBQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsZUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FDM0YsQ0FBQztJQUNKLENBQUM7SUFFRCxrREFBa0Q7SUFDbEQsR0FBRyxDQUFDLFdBQTRCO1FBQzlCLE1BQU0sS0FBSyxHQUFHLHlDQUFnQixZQUFZLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzdELE9BQU8sdUJBQXVCLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxxQkFBcUI7SUFFckIsVUFBVSxDQUFDLEdBQUcsSUFBcUQ7UUFDakUsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLDJCQUFZLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBQ0QsVUFBVSxDQUFDLEdBQUcsSUFBcUQ7UUFDakUsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLDJCQUFZLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBQ0QsT0FBTyxDQUFDLEdBQUcsSUFBa0Q7UUFDM0QsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLDJCQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBQ0QsUUFBUSxDQUFDLEdBQUcsSUFBbUQ7UUFDN0QsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLDJCQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBQ0QsZUFBZSxDQUFDLEdBQUcsSUFBMEQ7UUFDM0UsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLDJCQUFZLENBQUMsZUFBZSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBQ0QsV0FBVyxDQUFDLEdBQUcsSUFBc0Q7UUFDbkUsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLDJCQUFZLENBQUMsV0FBVyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7O09BV0c7SUFDSCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLHlDQUFnQixRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCwwQ0FBMEM7SUFDMUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLG1CQUFtQixLQUFtQixFQUFFO1FBQ3BELE9BQU8seUNBQWdCLEtBQUssQ0FBQyxFQUFFLG1CQUFtQixFQUFFLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsZ0NBQWdDO0lBQ2hDLEtBQUssQ0FBQyxTQUFTO1FBQ2IsT0FBTyx5Q0FBZ0IsU0FBUyxFQUFFLENBQUM7SUFDckMsQ0FBQztDQUNGO0FBcE5ELDRDQW9OQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZyb21CNjQgfSBmcm9tICdAbXlzdGVuL2Jjcyc7XG5pbXBvcnQgeyBpcywgbWFzayB9IGZyb20gJ3N1cGVyc3RydWN0JztcbmltcG9ydCB7IE9iamVjdElkLCBTdWlPYmplY3RSZWYgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbnMsIFRyYW5zYWN0aW9uQXJndW1lbnQsIFRyYW5zYWN0aW9uVHlwZSwgVHJhbnNhY3Rpb25CbG9ja0lucHV0IH0gZnJvbSAnLi9UcmFuc2FjdGlvbnMnO1xuaW1wb3J0IHsgQnVpbGRlckNhbGxBcmcsIGdldElkRnJvbUNhbGxBcmcsIElucHV0cywgT2JqZWN0Q2FsbEFyZyB9IGZyb20gJy4vSW5wdXRzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQmxvY2tEYXRhQnVpbGRlciwgVHJhbnNhY3Rpb25FeHBpcmF0aW9uIH0gZnJvbSAnLi9UcmFuc2FjdGlvbkRhdGFCbG9jayc7XG5pbXBvcnQgeyBjcmVhdGUgfSBmcm9tICcuL3V0aWxzJztcblxudHlwZSBUcmFuc2FjdGlvblJlc3VsdCA9IFRyYW5zYWN0aW9uQXJndW1lbnQgJiBUcmFuc2FjdGlvbkFyZ3VtZW50W107XG5cbmZ1bmN0aW9uIGNyZWF0ZVRyYW5zYWN0aW9uUmVzdWx0KGluZGV4OiBudW1iZXIpOiBUcmFuc2FjdGlvblJlc3VsdCB7XG4gIGNvbnN0IGJhc2VSZXN1bHQ6IFRyYW5zYWN0aW9uQXJndW1lbnQgPSB7IGtpbmQ6ICdSZXN1bHQnLCBpbmRleCB9O1xuXG4gIGNvbnN0IG5lc3RlZFJlc3VsdHM6IFRyYW5zYWN0aW9uQXJndW1lbnRbXSA9IFtdO1xuICBjb25zdCBuZXN0ZWRSZXN1bHRGb3IgPSAocmVzdWx0SW5kZXg6IG51bWJlcik6IFRyYW5zYWN0aW9uQXJndW1lbnQgPT5cbiAgICAobmVzdGVkUmVzdWx0c1tyZXN1bHRJbmRleF0gPz89IHtcbiAgICAgIGtpbmQ6ICdOZXN0ZWRSZXN1bHQnLFxuICAgICAgaW5kZXgsXG4gICAgICByZXN1bHRJbmRleCxcbiAgICB9KTtcblxuICByZXR1cm4gbmV3IFByb3h5KGJhc2VSZXN1bHQsIHtcbiAgICBzZXQoKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSB0cmFuc2FjdGlvbiByZXN1bHQgaXMgYSBwcm94eSwgYW5kIGRvZXMgbm90IHN1cHBvcnQgc2V0dGluZyBwcm9wZXJ0aWVzIGRpcmVjdGx5Jyk7XG4gICAgfSxcbiAgICAvLyBUT0RPOiBJbnN0ZWFkIG9mIG1ha2luZyB0aGlzIHJldHVybiBhIGNvbmNyZXRlIGFyZ3VtZW50LCB3ZSBzaG91bGQgaWRlYWxseVxuICAgIC8vIG1ha2UgaXQgcmVmZXJlbmNlLWJhc2VkIChzbyB0aGF0IHRoaXMgZ2V0cyByZXNvbHZlZCBhdCBidWlsZC10aW1lKSwgd2hpY2hcbiAgICAvLyBhbGxvd3MgcmUtb3JkZXJpbmcgdHJhbnNhY3Rpb25zLlxuICAgIGdldCh0YXJnZXQsIHByb3BlcnR5KSB7XG4gICAgICAvLyBUaGlzIGFsbG93cyB0aGlzIHRyYW5zYWN0aW9uIGFyZ3VtZW50IHRvIGJlIHVzZWQgaW4gdGhlIHNpbmd1bGFyIGZvcm06XG4gICAgICBpZiAocHJvcGVydHkgaW4gdGFyZ2V0KSB7XG4gICAgICAgIHJldHVybiBSZWZsZWN0LmdldCh0YXJnZXQsIHByb3BlcnR5KTtcbiAgICAgIH1cblxuICAgICAgLy8gU3VwcG9ydCBkZXN0cnVjdHVyaW5nOlxuICAgICAgaWYgKHByb3BlcnR5ID09PSBTeW1ib2wuaXRlcmF0b3IpIHtcbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgICAgbGV0IGkgPSAwO1xuICAgICAgICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICAgICAgICB5aWVsZCBuZXN0ZWRSZXN1bHRGb3IoaSk7XG4gICAgICAgICAgICBpKys7XG4gICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICBpZiAodHlwZW9mIHByb3BlcnR5ID09PSAnc3ltYm9sJykgcmV0dXJuO1xuXG4gICAgICBjb25zdCByZXN1bHRJbmRleCA9IHBhcnNlSW50KHByb3BlcnR5LCAxMCk7XG4gICAgICBpZiAoTnVtYmVyLmlzTmFOKHJlc3VsdEluZGV4KSB8fCByZXN1bHRJbmRleCA8IDApIHJldHVybjtcbiAgICAgIHJldHVybiBuZXN0ZWRSZXN1bHRGb3IocmVzdWx0SW5kZXgpO1xuICAgIH0sXG4gIH0pIGFzIFRyYW5zYWN0aW9uUmVzdWx0O1xufVxuXG5jb25zdCBUUkFOU0FDVElPTl9CUkFORCA9IFN5bWJvbC5mb3IoJ0BteXN0ZW4vdHJhbnNhY3Rpb24nKTtcblxuLy8gVGhlIG1heGltdW0gbnVtYmVyIG9mIGdhcyBvYmplY3RzIHRoYXQgY2FuIGJlIHNlbGVjdGVkIGZvciBvbmUgdHJhbnNhY3Rpb24uXG5jb25zdCBNQVhfR0FTX09CSkVDVFMgPSAyNTY7XG5cbi8vIFRoZSBtYXhpbXVtIGdhcyB0aGF0IGlzIGFsbG93ZWQuXG5jb25zdCBNQVhfR0FTID0gMTAwMDAwMDAwMDtcblxuLy8gQSBndWVzcyBhYm91dCBob3cgbXVjaCBvdmVyaGVhZCBlYWNoIGNvaW4gcHJvdmlkZXMgZm9yIGdhcyBjYWxjdWxhdGlvbnMuXG4vLyBAdHMtaWdub3JlXG5jb25zdCBHQVNfT1ZFUkhFQURfUEVSX0NPSU4gPSAxMG47XG5cbmludGVyZmFjZSBCdWlsZE9wdGlvbnMge1xuICBvbmx5VHJhbnNhY3Rpb25LaW5kPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBUcmFuc2FjdGlvbiBCdWlsZGVyXG4gKi9cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkJsb2NrIHtcbiAgLyoqIFJldHVybnMgYHRydWVgIGlmIHRoZSBvYmplY3QgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIFRyYW5zYWN0aW9uIGJ1aWxkZXIgY2xhc3MuICovXG4gIHN0YXRpYyBpcyhvYmo6IHVua25vd24pOiBvYmogaXMgVHJhbnNhY3Rpb25CbG9jayB7XG4gICAgcmV0dXJuICEhb2JqICYmIHR5cGVvZiBvYmogPT09ICdvYmplY3QnICYmIChvYmogYXMgYW55KVtUUkFOU0FDVElPTl9CUkFORF0gPT09IHRydWU7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgZnJvbSBhIHNlcmlhbGl6ZSB0cmFuc2FjdGlvbiBraW5kIChidWlsdCB3aXRoIGBidWlsZCh7IG9ubHlUcmFuc2FjdGlvbktpbmQ6IHRydWUgfSlgKSB0byBhIGBUcmFuc2FjdGlvbmAgY2xhc3MuXG4gICAqIFN1cHBvcnRzIGVpdGhlciBhIGJ5dGUgYXJyYXksIG9yIGJhc2U2NC1lbmNvZGVkIGJ5dGVzLlxuICAgKi9cbiAgc3RhdGljIGZyb21LaW5kKHNlcmlhbGl6ZWQ6IHN0cmluZyB8IFVpbnQ4QXJyYXkpIHtcbiAgICBjb25zdCB0eCA9IG5ldyBUcmFuc2FjdGlvbkJsb2NrKCk7XG5cbiAgICB0eC4jYmxvY2tEYXRhID0gVHJhbnNhY3Rpb25CbG9ja0RhdGFCdWlsZGVyLmZyb21LaW5kQnl0ZXMoXG4gICAgICB0eXBlb2Ygc2VyaWFsaXplZCA9PT0gJ3N0cmluZycgPyBmcm9tQjY0KHNlcmlhbGl6ZWQpIDogc2VyaWFsaXplZFxuICAgICk7XG5cbiAgICByZXR1cm4gdHg7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgZnJvbSBhIHNlcmlhbGl6ZWQgdHJhbnNhY3Rpb24gZm9ybWF0IHRvIGEgYFRyYW5zYWN0aW9uYCBjbGFzcy5cbiAgICogVGhlcmUgYXJlIHR3byBzdXBwb3J0ZWQgc2VyaWFsaXplZCBmb3JtYXRzOlxuICAgKiAtIEEgc3RyaW5nIHJldHVybmVkIGZyb20gYFRyYW5zYWN0aW9uI3NlcmlhbGl6ZWAuIFRoZSBzZXJpYWxpemVkIGZvcm1hdCBtdXN0IGJlIGNvbXBhdGlibGUsIG9yIGl0IHdpbGwgdGhyb3cgYW4gZXJyb3IuXG4gICAqIC0gQSBieXRlIGFycmF5IChvciBiYXNlNjQtZW5jb2RlZCBieXRlcykgY29udGFpbmluZyBCQ1MgdHJhbnNhY3Rpb24gZGF0YS5cbiAgICovXG4gIHN0YXRpYyBmcm9tKHNlcmlhbGl6ZWQ6IHN0cmluZyB8IFVpbnQ4QXJyYXkpIHtcbiAgICBjb25zdCB0eCA9IG5ldyBUcmFuc2FjdGlvbkJsb2NrKCk7XG5cbiAgICAvLyBDaGVjayBmb3IgYnl0ZXM6XG4gICAgaWYgKHR5cGVvZiBzZXJpYWxpemVkICE9PSAnc3RyaW5nJyB8fCAhc2VyaWFsaXplZC5zdGFydHNXaXRoKCd7JykpIHtcbiAgICAgIHR4LiNibG9ja0RhdGEgPSBUcmFuc2FjdGlvbkJsb2NrRGF0YUJ1aWxkZXIuZnJvbUJ5dGVzKFxuICAgICAgICB0eXBlb2Ygc2VyaWFsaXplZCA9PT0gJ3N0cmluZycgPyBmcm9tQjY0KHNlcmlhbGl6ZWQpIDogc2VyaWFsaXplZFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdHguI2Jsb2NrRGF0YSA9IFRyYW5zYWN0aW9uQmxvY2tEYXRhQnVpbGRlci5yZXN0b3JlKEpTT04ucGFyc2Uoc2VyaWFsaXplZCkpO1xuICAgIH1cblxuICAgIHJldHVybiB0eDtcbiAgfVxuXG4gIC8qKiBBIGhlbHBlciB0byByZXRyaWV2ZSB0aGUgVHJhbnNhY3Rpb24gYnVpbGRlciBgVHJhbnNhY3Rpb25zYCAqL1xuICBzdGF0aWMgZ2V0IFRyYW5zYWN0aW9ucygpIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25zO1xuICB9XG5cbiAgLyoqIEEgaGVscGVyIHRvIHJldHJpZXZlIHRoZSBUcmFuc2FjdGlvbiBidWlsZGVyIGBJbnB1dHNgICovXG4gIHN0YXRpYyBnZXQgSW5wdXRzKCkge1xuICAgIHJldHVybiBJbnB1dHM7XG4gIH1cblxuICBzZXRTZW5kZXIoc2VuZGVyOiBzdHJpbmcpIHtcbiAgICB0aGlzLiNibG9ja0RhdGEuc2VuZGVyID0gc2VuZGVyO1xuICB9XG4gIC8qKlxuICAgKiBTZXRzIHRoZSBzZW5kZXIgb25seSBpZiBpdCBoYXMgbm90IGFscmVhZHkgYmVlbiBzZXQuXG4gICAqIFRoaXMgaXMgdXNlZnVsIGZvciBzcG9uc29yZWQgdHJhbnNhY3Rpb24gZmxvd3Mgd2hlcmUgdGhlIHNlbmRlciBtYXkgbm90IGJlIHRoZSBzYW1lIGFzIHRoZSBzaWduZXIgYWRkcmVzcy5cbiAgICovXG4gIHNldFNlbmRlcklmTm90U2V0KHNlbmRlcjogc3RyaW5nKSB7XG4gICAgaWYgKCF0aGlzLiNibG9ja0RhdGEuc2VuZGVyKSB7XG4gICAgICB0aGlzLiNibG9ja0RhdGEuc2VuZGVyID0gc2VuZGVyO1xuICAgIH1cbiAgfVxuICBzZXRFeHBpcmF0aW9uKGV4cGlyYXRpb24/OiBUcmFuc2FjdGlvbkV4cGlyYXRpb24pIHtcbiAgICB0aGlzLiNibG9ja0RhdGEuZXhwaXJhdGlvbiA9IGV4cGlyYXRpb247XG4gIH1cbiAgc2V0R2FzUHJpY2UocHJpY2U6IG51bWJlciB8IGJpZ2ludCkge1xuICAgIHRoaXMuI2Jsb2NrRGF0YS5nYXNDb25maWcucHJpY2UgPSBTdHJpbmcocHJpY2UpO1xuICB9XG4gIHNldEdhc0J1ZGdldChidWRnZXQ6IG51bWJlciB8IGJpZ2ludCkge1xuICAgIHRoaXMuI2Jsb2NrRGF0YS5nYXNDb25maWcuYnVkZ2V0ID0gU3RyaW5nKGJ1ZGdldCk7XG4gIH1cbiAgc2V0R2FzT3duZXIob3duZXI6IHN0cmluZykge1xuICAgIHRoaXMuI2Jsb2NrRGF0YS5nYXNDb25maWcub3duZXIgPSBvd25lcjtcbiAgfVxuICBzZXRHYXNQYXltZW50KHBheW1lbnRzOiBTdWlPYmplY3RSZWZbXSkge1xuICAgIGlmIChwYXltZW50cy5sZW5ndGggPj0gTUFYX0dBU19PQkpFQ1RTKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFBheW1lbnQgb2JqZWN0cyBleGNlZWQgbWF4aW11bSBhbW91bnQgJHtNQVhfR0FTX09CSkVDVFN9YCk7XG4gICAgfVxuICAgIHRoaXMuI2Jsb2NrRGF0YS5nYXNDb25maWcucGF5bWVudCA9IHBheW1lbnRzLm1hcCgocGF5bWVudCkgPT4gbWFzayhwYXltZW50LCBTdWlPYmplY3RSZWYpKTtcbiAgfVxuXG4gICNibG9ja0RhdGE6IFRyYW5zYWN0aW9uQmxvY2tEYXRhQnVpbGRlcjtcbiAgLyoqIEdldCBhIHNuYXBzaG90IG9mIHRoZSB0cmFuc2FjdGlvbiBkYXRhLCBpbiBKU09OIGZvcm06ICovXG4gIGdldCBibG9ja0RhdGEoKSB7XG4gICAgcmV0dXJuIHRoaXMuI2Jsb2NrRGF0YS5zbmFwc2hvdCgpO1xuICB9XG5cbiAgLy8gVXNlZCB0byBicmFuZCB0cmFuc2FjdGlvbiBjbGFzc2VzIHNvIHRoYXQgdGhleSBjYW4gYmUgaWRlbnRpZmllZCwgZXZlbiBiZXR3ZWVuIG11bHRpcGxlIGNvcGllc1xuICAvLyBvZiB0aGUgYnVpbGRlci5cbiAgZ2V0IFtUUkFOU0FDVElPTl9CUkFORF0oKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcih0cmFuc2FjdGlvbj86IFRyYW5zYWN0aW9uQmxvY2spIHtcbiAgICB0aGlzLiNibG9ja0RhdGEgPSBuZXcgVHJhbnNhY3Rpb25CbG9ja0RhdGFCdWlsZGVyKHRyYW5zYWN0aW9uID8gdHJhbnNhY3Rpb24uI2Jsb2NrRGF0YSA6IHVuZGVmaW5lZCk7XG4gIH1cblxuICAvKiogUmV0dXJucyBhbiBhcmd1bWVudCBmb3IgdGhlIGdhcyBjb2luLCB0byBiZSB1c2VkIGluIGEgdHJhbnNhY3Rpb24uICovXG4gIGdldCBnYXMoKTogVHJhbnNhY3Rpb25Bcmd1bWVudCB7XG4gICAgcmV0dXJuIHsga2luZDogJ0dhc0NvaW4nIH07XG4gIH1cblxuICAvKipcbiAgICogRHluYW1pY2FsbHkgY3JlYXRlIGEgbmV3IGlucHV0LCB3aGljaCBpcyBzZXBhcmF0ZSBmcm9tIHRoZSBgaW5wdXRgLiBUaGlzIGlzIGltcG9ydGFudFxuICAgKiBmb3IgZ2VuZXJhdGVkIGNsaWVudHMgdG8gYmUgYWJsZSB0byBkZWZpbmUgdW5pcXVlIGlucHV0cyB0aGF0IGFyZSBub24tb3ZlcmxhcHBpbmcgd2l0aCB0aGVcbiAgICogZGVmaW5lZCBpbnB1dHMuXG4gICAqXG4gICAqIEZvciBgVWludDhBcnJheWAgdHlwZSBhdXRvbWF0aWNhbGx5IGNvbnZlcnQgdGhlIGlucHV0IGludG8gYSBgUHVyZWAgQ2FsbEFyZywgc2luY2UgdGhpc1xuICAgKiBpcyB0aGUgZm9ybWF0IHJlcXVpcmVkIGZvciBjdXN0b20gc2VyaWFsaXphdGlvbi5cbiAgICpcbiAgICovXG4gIGlucHV0KHR5cGU6ICdvYmplY3QnIHwgJ3B1cmUnLCB2YWx1ZT86IHVua25vd24pIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuI2Jsb2NrRGF0YS5pbnB1dHMubGVuZ3RoO1xuICAgIGNvbnN0IGlucHV0ID0gY3JlYXRlKFxuICAgICAge1xuICAgICAgICBraW5kOiAnSW5wdXQnLFxuICAgICAgICAvLyBiaWdpbnRzIGNhbid0IGJlIHNlcmlhbGl6ZWQgdG8gSlNPTiwgc28ganVzdCBzdHJpbmctY29udmVydCB0aGVtIGhlcmU6XG4gICAgICAgIHZhbHVlOiB0eXBlb2YgdmFsdWUgPT09ICdiaWdpbnQnID8gU3RyaW5nKHZhbHVlKSA6IHZhbHVlLFxuICAgICAgICBpbmRleCxcbiAgICAgICAgdHlwZSxcbiAgICAgIH0sXG4gICAgICBUcmFuc2FjdGlvbkJsb2NrSW5wdXRcbiAgICApO1xuICAgIHRoaXMuI2Jsb2NrRGF0YS5pbnB1dHMucHVzaChpbnB1dCk7XG4gICAgcmV0dXJuIGlucHV0O1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIG5ldyBvYmplY3QgaW5wdXQgdG8gdGhlIHRyYW5zYWN0aW9uLlxuICAgKi9cbiAgb2JqZWN0KHZhbHVlOiBPYmplY3RJZCB8IE9iamVjdENhbGxBcmcpIHtcbiAgICBjb25zdCBpZCA9IGdldElkRnJvbUNhbGxBcmcodmFsdWUpO1xuICAgIC8vIGRlZHVwbGljYXRlXG4gICAgY29uc3QgaW5zZXJ0ZWQgPSB0aGlzLiNibG9ja0RhdGEuaW5wdXRzLmZpbmQoKGkpID0+IGkudHlwZSA9PT0gJ29iamVjdCcgJiYgaWQgPT09IGdldElkRnJvbUNhbGxBcmcoaS52YWx1ZSkpO1xuICAgIHJldHVybiBpbnNlcnRlZCA/PyB0aGlzLmlucHV0KCdvYmplY3QnLCB2YWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgbmV3IG5vbi1vYmplY3QgaW5wdXQgdG8gdGhlIHRyYW5zYWN0aW9uLlxuICAgKi9cbiAgcHVyZShcbiAgICAvKipcbiAgICAgKiBUaGUgcHVyZSB2YWx1ZSB0aGF0IHdpbGwgYmUgdXNlZCBhcyB0aGUgaW5wdXQgdmFsdWUuIElmIHRoaXMgaXMgYSBVaW50OEFycmF5LCB0aGVuIHRoZSB2YWx1ZVxuICAgICAqIGlzIGFzc3VtZWQgdG8gYmUgcmF3IGJ5dGVzLCBhbmQgd2lsbCBiZSB1c2VkIGRpcmVjdGx5LlxuICAgICAqL1xuICAgIHZhbHVlOiB1bmtub3duLFxuICAgIC8qKlxuICAgICAqIFRoZSBCQ1MgdHlwZSB0byBzZXJpYWxpemUgdGhlIHZhbHVlIGludG8uIElmIG5vdCBwcm92aWRlZCwgdGhlIHR5cGUgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIGRldGVybWluZWRcbiAgICAgKiBiYXNlZCBvbiBob3cgdGhlIGlucHV0IGlzIHVzZWQuXG4gICAgICovXG4gICAgdHlwZT86IHN0cmluZ1xuICApIHtcbiAgICAvLyBUT0RPOiB3ZSBjYW4gYWxzbyBkbyBzb21lIGRlZHVwbGljYXRpb24gaGVyZVxuICAgIHJldHVybiB0aGlzLmlucHV0KFxuICAgICAgJ3B1cmUnLFxuICAgICAgdmFsdWUgaW5zdGFuY2VvZiBVaW50OEFycmF5ID8gSW5wdXRzLlB1cmUodmFsdWUpIDogdHlwZSA/IElucHV0cy5QdXJlKHZhbHVlLCB0eXBlKSA6IHZhbHVlXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBBZGQgYSB0cmFuc2FjdGlvbiB0byB0aGUgdHJhbnNhY3Rpb24gYmxvY2suICovXG4gIGFkZCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb25UeXBlKSB7XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLiNibG9ja0RhdGEudHJhbnNhY3Rpb25zLnB1c2godHJhbnNhY3Rpb24pO1xuICAgIHJldHVybiBjcmVhdGVUcmFuc2FjdGlvblJlc3VsdChpbmRleCAtIDEpO1xuICB9XG5cbiAgLy8gTWV0aG9kIHNob3J0aGFuZHM6XG5cbiAgc3BsaXRDb2lucyguLi5hcmdzOiBQYXJhbWV0ZXJzPCh0eXBlb2YgVHJhbnNhY3Rpb25zKVsnU3BsaXRDb2lucyddPikge1xuICAgIHJldHVybiB0aGlzLmFkZChUcmFuc2FjdGlvbnMuU3BsaXRDb2lucyguLi5hcmdzKSk7XG4gIH1cbiAgbWVyZ2VDb2lucyguLi5hcmdzOiBQYXJhbWV0ZXJzPCh0eXBlb2YgVHJhbnNhY3Rpb25zKVsnTWVyZ2VDb2lucyddPikge1xuICAgIHJldHVybiB0aGlzLmFkZChUcmFuc2FjdGlvbnMuTWVyZ2VDb2lucyguLi5hcmdzKSk7XG4gIH1cbiAgcHVibGlzaCguLi5hcmdzOiBQYXJhbWV0ZXJzPCh0eXBlb2YgVHJhbnNhY3Rpb25zKVsnUHVibGlzaCddPikge1xuICAgIHJldHVybiB0aGlzLmFkZChUcmFuc2FjdGlvbnMuUHVibGlzaCguLi5hcmdzKSk7XG4gIH1cbiAgbW92ZUNhbGwoLi4uYXJnczogUGFyYW1ldGVyczwodHlwZW9mIFRyYW5zYWN0aW9ucylbJ01vdmVDYWxsJ10+KSB7XG4gICAgcmV0dXJuIHRoaXMuYWRkKFRyYW5zYWN0aW9ucy5Nb3ZlQ2FsbCguLi5hcmdzKSk7XG4gIH1cbiAgdHJhbnNmZXJPYmplY3RzKC4uLmFyZ3M6IFBhcmFtZXRlcnM8KHR5cGVvZiBUcmFuc2FjdGlvbnMpWydUcmFuc2Zlck9iamVjdHMnXT4pIHtcbiAgICByZXR1cm4gdGhpcy5hZGQoVHJhbnNhY3Rpb25zLlRyYW5zZmVyT2JqZWN0cyguLi5hcmdzKSk7XG4gIH1cbiAgbWFrZU1vdmVWZWMoLi4uYXJnczogUGFyYW1ldGVyczwodHlwZW9mIFRyYW5zYWN0aW9ucylbJ01ha2VNb3ZlVmVjJ10+KSB7XG4gICAgcmV0dXJuIHRoaXMuYWRkKFRyYW5zYWN0aW9ucy5NYWtlTW92ZVZlYyguLi5hcmdzKSk7XG4gIH1cblxuICAvKipcbiAgICogU2VyaWFsaXplIHRoZSB0cmFuc2FjdGlvbiB0byBhIHN0cmluZyBzbyB0aGF0IGl0IGNhbiBiZSBzZW50IHRvIGEgc2VwYXJhdGUgY29udGV4dC5cbiAgICogVGhpcyBpcyBkaWZmZXJlbnQgZnJvbSBgYnVpbGRgIGluIHRoYXQgaXQgZG9lcyBub3Qgc2VyaWFsaXplIHRvIEJDUyBieXRlcywgYW5kIGluc3RlYWRcbiAgICogdXNlcyBhIHNlcGFyYXRlIGZvcm1hdCB0aGF0IGlzIHVuaXF1ZSB0byB0aGUgdHJhbnNhY3Rpb24gYnVpbGRlci4gVGhpcyBhbGxvd3NcbiAgICogdXMgdG8gc2VyaWFsaXplIHBhcnRpYWxseS1jb21wbGV0ZSB0cmFuc2FjdGlvbnMsIHRoYXQgY2FuIHRoZW4gYmUgY29tcGxldGVkIGFuZFxuICAgKiBidWlsdCBpbiBhIHNlcGFyYXRlIGNvbnRleHQuXG4gICAqXG4gICAqIEZvciBleGFtcGxlLCBhIGRhcHAgY2FuIGNvbnN0cnVjdCBhIHRyYW5zYWN0aW9uLCBidXQgbm90IHByb3ZpZGUgZ2FzIG9iamVjdHNcbiAgICogb3IgYSBnYXMgYnVkZ2V0LiBUaGUgdHJhbnNhY3Rpb24gdGhlbiBjYW4gYmUgc2VudCB0byB0aGUgd2FsbGV0LCB3aGVyZSB0aGlzXG4gICAqIGluZm9ybWF0aW9uIGlzIGF1dG9tYXRpY2FsbHkgZmlsbGVkIGluIChlLmcuIGJ5IHF1ZXJ5aW5nIGZvciBjb2luIG9iamVjdHNcbiAgICogYW5kIHBlcmZvcm1pbmcgYSBkcnkgcnVuKS5cbiAgICovXG4gIHNlcmlhbGl6ZSgpIHtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodGhpcy4jYmxvY2tEYXRhLnNuYXBzaG90KCkpO1xuICB9XG5cbiAgLyoqIEJ1aWxkIHRoZSB0cmFuc2FjdGlvbiB0byBCQ1MgYnl0ZXMuICovXG4gIGFzeW5jIGJ1aWxkKHsgb25seVRyYW5zYWN0aW9uS2luZCB9OiBCdWlsZE9wdGlvbnMgPSB7fSk6IFByb21pc2U8VWludDhBcnJheT4ge1xuICAgIHJldHVybiB0aGlzLiNibG9ja0RhdGEuYnVpbGQoeyBvbmx5VHJhbnNhY3Rpb25LaW5kIH0pO1xuICB9XG5cbiAgLyoqIERlcml2ZSB0cmFuc2FjdGlvbiBkaWdlc3QgKi9cbiAgYXN5bmMgZ2V0RGlnZXN0KCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuI2Jsb2NrRGF0YS5nZXREaWdlc3QoKTtcbiAgfVxufVxuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bitgo-beta/sdk-coin-sui",
3
- "version": "1.4.1-alpha.42",
3
+ "version": "1.4.1-alpha.43",
4
4
  "description": "BitGo SDK coin library for Sui",
5
5
  "main": "./dist/src/index.js",
6
6
  "types": "./dist/src/index.d.ts",
@@ -40,9 +40,9 @@
40
40
  ]
41
41
  },
42
42
  "dependencies": {
43
- "@bitgo-beta/blake2b": "3.2.1-alpha.42",
44
- "@bitgo-beta/sdk-core": "2.4.1-alpha.42",
45
- "@bitgo-beta/statics": "10.0.1-alpha.42",
43
+ "@bitgo-beta/blake2b": "3.2.1-alpha.43",
44
+ "@bitgo-beta/sdk-core": "2.4.1-alpha.43",
45
+ "@bitgo-beta/statics": "10.0.1-alpha.43",
46
46
  "@mysten/bcs": "^0.7.0",
47
47
  "bignumber.js": "^9.0.0",
48
48
  "bs58": "^4.0.1",
@@ -51,9 +51,9 @@
51
51
  "tweetnacl": "^1.0.3"
52
52
  },
53
53
  "devDependencies": {
54
- "@bitgo-beta/sdk-api": "1.6.1-alpha.42",
55
- "@bitgo-beta/sdk-test": "^1.2.15",
54
+ "@bitgo-beta/sdk-api": "1.6.1-alpha.43",
55
+ "@bitgo-beta/sdk-test": "^1.2.18",
56
56
  "@types/lodash": "^4.14.183"
57
57
  },
58
- "gitHead": "1d4d7fb4d117d6b1c3493baa99edd7dd6a4710c6"
58
+ "gitHead": "da47c2ed7125c9c0e4a059ddede378f4628cd195"
59
59
  }