@bitgo-beta/sdk-coin-avaxp 2.0.1-beta.21 → 2.0.1-beta.210

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.
Files changed (43) hide show
  1. package/CHANGELOG.md +122 -0
  2. package/dist/src/avaxp.d.ts +26 -5
  3. package/dist/src/avaxp.d.ts.map +1 -1
  4. package/dist/src/avaxp.js +106 -18
  5. package/dist/src/iface.d.ts +10 -7
  6. package/dist/src/iface.d.ts.map +1 -1
  7. package/dist/src/iface.js +1 -1
  8. package/dist/src/index.d.ts +1 -0
  9. package/dist/src/index.d.ts.map +1 -1
  10. package/dist/src/index.js +2 -1
  11. package/dist/src/lib/atomicTransactionBuilder.js +2 -2
  12. package/dist/src/lib/delegatorTxBuilder.js +2 -2
  13. package/dist/src/lib/exportInCTxBuilder.d.ts +5 -0
  14. package/dist/src/lib/exportInCTxBuilder.d.ts.map +1 -1
  15. package/dist/src/lib/exportInCTxBuilder.js +20 -12
  16. package/dist/src/lib/iface.d.ts +5 -0
  17. package/dist/src/lib/iface.d.ts.map +1 -1
  18. package/dist/src/lib/iface.js +1 -1
  19. package/dist/src/lib/transaction.d.ts +20 -1
  20. package/dist/src/lib/transaction.d.ts.map +1 -1
  21. package/dist/src/lib/transaction.js +73 -12
  22. package/dist/src/lib/utils.d.ts +12 -0
  23. package/dist/src/lib/utils.d.ts.map +1 -1
  24. package/dist/src/lib/utils.js +17 -1
  25. package/dist/src/lib/utxoEngine.js +3 -3
  26. package/dist/src/register.d.ts +3 -0
  27. package/dist/src/register.d.ts.map +1 -0
  28. package/dist/src/register.js +11 -0
  29. package/dist/test/resources/avaxp.d.ts +7 -0
  30. package/dist/test/resources/avaxp.d.ts.map +1 -1
  31. package/dist/test/resources/avaxp.js +74 -67
  32. package/dist/test/resources/errors.d.ts +1 -0
  33. package/dist/test/resources/errors.d.ts.map +1 -1
  34. package/dist/test/resources/errors.js +3 -2
  35. package/dist/test/resources/tx/exportC.js +3 -3
  36. package/dist/test/resources/tx/importC.js +2 -2
  37. package/dist/test/resources/tx/importP.js +2 -2
  38. package/dist/test/unit/avaxp.js +186 -24
  39. package/dist/test/unit/lib/exportC2PTxBuilder.js +17 -2
  40. package/dist/test/unit/lib/transactionBuilderFactory.js +52 -1
  41. package/dist/test/unit/lib/utxoEngine.js +8 -8
  42. package/dist/tsconfig.tsbuildinfo +3372 -1954
  43. package/package.json +8 -7
@@ -28,11 +28,26 @@ const errorMessage = __importStar(require("../../resources/errors"));
28
28
  const lib_1 = require("../../../src/lib");
29
29
  const statics_1 = require("@bitgo-beta/statics");
30
30
  const exportC_1 = require("../../resources/tx/exportC");
31
+ const avalanche_1 = require("avalanche");
31
32
  describe('AvaxP Export C2P Tx Builder', () => {
32
33
  const factory = new lib_1.TransactionBuilderFactory(statics_1.coins.get('tavaxp'));
33
34
  const data = exportC_1.EXPORT_C;
34
35
  describe('validate txBuilder fields', () => {
35
- // const txBuilder = factory.getExportInCBuilder();
36
+ const txBuilder = factory.getExportInCBuilder();
37
+ it('should fail amount low or equal than zero', () => {
38
+ for (const amount of [new avalanche_1.BN(0), new avalanche_1.BN(-1), '0', '-1']) {
39
+ assert_1.default.throws(() => {
40
+ txBuilder.amount(amount);
41
+ }, (e) => e.message === errorMessage.ERROR_AMOUNT);
42
+ }
43
+ });
44
+ it('should fail nonce low than zero', () => {
45
+ for (const nonce of [-1, '-1']) {
46
+ assert_1.default.throws(() => {
47
+ txBuilder.nonce(nonce);
48
+ }, (e) => e.message === errorMessage.ERROR_NONCE);
49
+ }
50
+ });
36
51
  });
37
52
  describe('should build ', () => {
38
53
  const newTxBuilder = () => factory
@@ -93,4 +108,4 @@ describe('AvaxP Export C2P Tx Builder', () => {
93
108
  });
94
109
  });
95
110
  });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0QzJQVHhCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdGVzdC91bml0L2xpYi9leHBvcnRDMlBUeEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0RBQTRCO0FBQzVCLGtCQUFnQjtBQUNoQixxRUFBdUQ7QUFDdkQsMENBQTZEO0FBQzdELGlEQUE0QztBQUM1Qyx3REFBc0Q7QUFFdEQsUUFBUSxDQUFDLDZCQUE2QixFQUFFLEdBQUcsRUFBRTtJQUMzQyxNQUFNLE9BQU8sR0FBRyxJQUFJLCtCQUF5QixDQUFDLGVBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUNuRSxNQUFNLElBQUksR0FBRyxrQkFBUSxDQUFDO0lBQ3RCLFFBQVEsQ0FBQywyQkFBMkIsRUFBRSxHQUFHLEVBQUU7UUFDekMsbURBQW1EO0lBQ3JELENBQUMsQ0FBQyxDQUFDO0lBRUgsUUFBUSxDQUFDLGVBQWUsRUFBRSxHQUFHLEVBQUU7UUFDN0IsTUFBTSxZQUFZLEdBQUcsR0FBRyxFQUFFLENBQ3hCLE9BQU87YUFDSixtQkFBbUIsRUFBRTthQUNyQixVQUFVLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQzthQUM1QixLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQzthQUNqQixNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQzthQUNuQixTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQzthQUN6QixRQUFRLENBQUMsQ0FBQyxDQUFDO2FBQ1gsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7YUFDbkIsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV2QixFQUFFLENBQUMseUNBQXlDLEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDdkQsTUFBTSxTQUFTLEdBQUcsWUFBWSxFQUFFLENBQUM7WUFFakMsTUFBTSxFQUFF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VUFBVSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUMvQixTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1lBQ3RDLFNBQVM7aUJBQ04sS0FBSyxFQUFFO2lCQUNQLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQkFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztpQkFDdEMsS0FBSyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQ2IsR0FBRyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMscUJBQXFCLENBQUMsQ0FBQztZQUNsRSxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCAnc2hvdWxkJztcbmltcG9ydCAqIGFzIGVycm9yTWVzc2FnZSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvZXJyb3JzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgfSBmcm9tICcuLi8uLi8uLi9zcmMvbGliJztcbmltcG9ydCB7IGNvaW5zIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBFWFBPUlRfQyB9IGZyb20gJy4uLy4uL3Jlc291cmNlcy90eC9leHBvcnRDJztcblxuZGVzY3JpYmUoJ0F2YXhQIEV4cG9ydCBDMlAgVHggQnVpbGRlcicsICgpID0+IHtcbiAgY29uc3QgZmFjdG9yeSA9IG5ldyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5KGNvaW5zLmdldCgndGF2YXhwJykpO1xuICBjb25zdCBkYXRhID0gRVhQT1JUX0M7XG4gIGRlc2NyaWJlKCd2YWxpZGF0ZSB0eEJ1aWxkZXIgZmllbGRzJywgKCkgPT4ge1xuICAgIC8vIGNvbnN0IHR4QnVpbGRlciA9IGZhY3RvcnkuZ2V0RXhwb3J0SW5DQnVpbGRlcigpO1xuICB9KTtcblxuICBkZXNjcmliZSgnc2hvdWxkIGJ1aWxkICcsICgpID0+IHtcbiAgICBjb25zdCBuZXdUeEJ1aWxkZXIgPSAoKSA9PlxuICAgICAgZmFjdG9yeVxuICAgICAgICAuZ2V0RXhwb3J0SW5DQnVpbGRlcigpXG4gICAgICAgIC5mcm9tUHViS2V5KGRhdGEuY0hleEFkZHJlc3MpXG4gICAgICAgIC5ub25jZShkYXRhLm5vbmNlKVxuICAgICAgICAuYW1vdW50KGRhdGEuYW1vdW50KVxuICAgICAgICAudGhyZXNob2xkKGRhdGEudGhyZXNob2xkKVxuICAgICAgICAubG9ja3RpbWUoMClcbiAgICAgICAgLnRvKGRhdGEucEFkZHJlc3NlcylcbiAgICAgICAgLmZlZVJhdGUoZGF0YS5mZWUpO1xuXG4gICAgaXQoJ1Nob3VsZCBjcmVhdGUgZXhwb3J0IHR4IGZvciBzYW1lIHZhbHVlcycsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHR4QnVpbGRlciA9IG5ld1R4QnVpbGRlcigpO1xuXG4gICAgICBjb25zdCB0eCA9IGF3YWl0IHR4QnVpbGRlci5idWlsZCgpO1xuICAgICAgY29uc3QgcmF3VHggPSB0eC50b0Jyb2FkY2FzdEZvcm1hdCgpO1xuICAgICAgcmF3VHguc2hvdWxkLmVxdWFsKGRhdGEudW5zaWduZWRUeEhleCk7XG4gICAgfSk7XG5cbiAgICBpdCgnU2hvdWxkIHJlY292ZXIgZXhwb3J0IHR4IGZyb20gcmF3IHR4JywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdHhCdWlsZGVyID0gbmV3IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkoY29pbnMuZ2V0KCd0YXZheHAnKSkuZnJvbShkYXRhLnVuc2lnbmVkVHhIZXgpO1xuXG4gICAgICBjb25zdCB0eCA9IGF3YWl0IHR4QnVpbGRlci5idWlsZCgpO1xuICAgICAgY29uc3QgcmF3VHggPSB0eC50b0Jyb2FkY2FzdEZvcm1hdCgpO1xuICAgICAgcmF3VHguc2hvdWxkLmVxdWFsKGRhdGEudW5zaWduZWRUeEhleCk7XG4gICAgfSk7XG5cbiAgICBpdCgnU2hvdWxkIHJlY292ZXIgc2lnbmVkIGV4cG9ydCAgZnJvbSBzaWduZWQgcmF3IHR4JywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdHhCdWlsZGVyID0gbmV3IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkoY29pbnMuZ2V0KCd0YXZheHAnKSkuZnJvbShkYXRhLmZ1bGxzaWdudHhIZXgpO1xuICAgICAgY29uc3QgdHggPSBhd2FpdCB0eEJ1aWxkZXIuYnVpbGQoKTtcbiAgICAgIGNvbnN0IHJhd1R4ID0gdHgudG9Ccm9hZGNhc3RGb3JtYXQoKTtcbiAgICAgIHJhd1R4LnNob3VsZC5lcXVhbChkYXRhLmZ1bGxzaWdudHhIZXgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ1Nob3VsZCBmdWxsIHNpZ24gYSBleHBvcnQgdHggZm9yIHNhbWUgdmFsdWVzJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdHhCdWlsZGVyID0gbmV3VHhCdWlsZGVyKCk7XG5cbiAgICAgIHR4QnVpbGRlci5zaWduKHsga2V5OiBkYXRhLnByaXZLZXkgfSk7XG4gICAgICBjb25zdCB0eCA9IGF3YWl0IHR4QnVpbGRlci5idWlsZCgpO1xuICAgICAgY29uc3QgcmF3VHggPSB0eC50b0Jyb2FkY2FzdEZvcm1hdCgpO1xuICAgICAgcmF3VHguc2hvdWxkLmVxdWFsKGRhdGEuZnVsbHNpZ250eEhleCk7XG4gICAgfSk7XG5cbiAgICBpdCgnU2hvdWxkIGZ1bGwgc2lnbiBhIGV4cG9ydCB0eCBmcm9tIHVuc2lnbmVkIHJhdyB0eCcsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHR4QnVpbGRlciA9IG5ldyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5KGNvaW5zLmdldCgndGF2YXhwJykpLmZyb20oZGF0YS51bnNpZ25lZFR4SGV4KTtcbiAgICAgIHR4QnVpbGRlci5zaWduKHsga2V5OiBkYXRhLnByaXZLZXkgfSk7XG4gICAgICBjb25zdCB0eCA9IGF3YWl0IHR4QnVpbGRlci5idWlsZCgpO1xuICAgICAgY29uc3QgcmF3VHggPSB0eC50b0Jyb2FkY2FzdEZvcm1hdCgpO1xuICAgICAgcmF3VHguc2hvdWxkLmVxdWFsKGRhdGEuZnVsbHNpZ250eEhleCk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIC8vIFRPRE8oQkctNTY3MDApOiAgSW1wcm92ZSBjYW5TaWduIGJ5IGNoZWNrIGluIGFkZHJlc3NlcyBpbiBlbXB0eSBjcmVkZW50aWFscyBtYXRjaCBzaWduZXJcbiAgeGRlc2NyaWJlKCdLZXkgY2Fubm90IHNpZ24gdGhlIHRyYW5zYWN0aW9uICcsICgpID0+IHtcbiAgICBpdCgnU2hvdWxkIGZ1bGwgc2lnbiBhIGV4cG9ydCAgdHggZnJvbSB1bnNpZ25lZCByYXcgdHgnLCAoKSA9PiB7XG4gICAgICBjb25zdCB0eEJ1aWxkZXIgPSBuZXcgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeShjb2lucy5nZXQoJ3RhdmF4cCcpKVxuICAgICAgICAuZnJvbShkYXRhLnVuc2lnbmVkVHhIZXgpXG4gICAgICAgIC5mcm9tUHViS2V5KGRhdGEucEFkZHJlc3Nlcyk7XG4gICAgICB0eEJ1aWxkZXIuc2lnbih7IGtleTogZGF0YS5wcml2S2V5IH0pO1xuICAgICAgdHhCdWlsZGVyXG4gICAgICAgIC5idWlsZCgpXG4gICAgICAgIC50aGVuKCgpID0+IGFzc2VydC5mYWlsKCdpdCBjYW4gc2lnbicpKVxuICAgICAgICAuY2F0Y2goKGVycikgPT4ge1xuICAgICAgICAgIGVyci5tZXNzYWdlLnNob3VsZC5iZS5lcXVhbChlcnJvck1lc3NhZ2UuRVJST1JfS0VZX0NBTk5PVF9TSUdOKTtcbiAgICAgICAgfSk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0QzJQVHhCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdGVzdC91bml0L2xpYi9leHBvcnRDMlBUeEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0RBQTRCO0FBQzVCLGtCQUFnQjtBQUNoQixxRUFBdUQ7QUFDdkQsMENBQTZEO0FBQzdELGlEQUE0QztBQUM1Qyx3REFBc0Q7QUFDdEQseUNBQStCO0FBRS9CLFFBQVEsQ0FBQyw2QkFBNkIsRUFBRSxHQUFHLEVBQUU7SUFDM0MsTUFBTSxPQUFPLEdBQUcsSUFBSSwrQkFBeUIsQ0FBQyxlQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDbkUsTUFBTSxJQUFJLEdBQUcsa0JBQVEsQ0FBQztJQUN0QixRQUFRLENBQUMsMkJBQTJCLEVBQUUsR0FBRyxFQUFFO1FBQ3pDLE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQ2hELEVBQUUsQ0FBQywyQ0FBMkMsRUFBRSxHQUFHLEVBQUU7WUFDbkQsS0FBSyxNQUFNLE1BQU0sSUFBSSxDQUFDLElBQUksY0FBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxFQUFFO2dCQUN2RCxnQkFBTSxDQUFDLE1BQU0sQ0FDWCxHQUFHLEVBQUU7b0JBQ0gsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDM0IsQ0FBQyxFQUNELENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxLQUFLLFlBQVksQ0FBQyxZQUFZLENBQy9DLENBQUM7YUFDSDtRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsRUFBRSxDQUFDLGlDQUFpQyxFQUFFLEdBQUcsRUFBRTtZQUN6QyxLQUFLLE1BQU0sS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEVBQUU7Z0JBQzlCLGdCQUFNLENBQUMsTUFBTSxDQUNYLEdBQUcsRUFBRTtvQkFDSCxTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUN6QixDQUFDLEVBQ0QsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssWUFBWSxDQUFDLFdBQVcsQ0FDOUMsQ0FBQzthQUNIO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVILFFBQVEsQ0FBQyxlQUFlLEVBQUUsR0FBRyxFQUFFO1FBQzdCLE1BQU0sWUFBWSxHQUFHLEdBQUcsRUFBRSxDQUN4QixPQUFPO2FBQ0osbUJBQW1CLEVBQUU7YUFDckIsVUFBVSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7YUFDNUIsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7YUFDakIsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7YUFDbkIsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7YUFDekIsUUFBUSxDQUFDLENBQUMsQ0FBQzthQUNYLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO2FBQ25CLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFdkIsRUFBRSxDQUFDLHlDQUF5QyxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ3ZELE1BQU0sU0FBUyxHQUFHLFlBQVksRUFBRSxDQUFDO1lBRWpDLE1BQU0sRUFBRSxHQUFHLE1BQU0sU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ25DLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3JDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN6QyxDQUFDLENBQUMsQ0FBQztRQUVILEVBQUUsQ0FBQyxzQ0FBc0MsRUFBRSxLQUFLLElBQUksRUFBRTtZQUNwRCxNQUFNLFNBQVMsR0FBRyxJQUFJLCtCQUF5QixDQUFDLGVBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBRTlGLE1BQU0sRUFBRSxHQUFHLE1BQU0sU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ25DLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3JDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN6QyxDQUFDLENBQUMsQ0FBQztRQUVILEVBQUUsQ0FBQyxrREFBa0QsRUFBRSxLQUFLLElBQUksRUFBRTtZQUNoRSxNQUFNLFNBQVMsR0FBRyxJQUFJLCtCQUF5QixDQUFDLGVBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQzlGLE1BQU0sRUFBRSxHQUFHLE1BQU0sU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ25DLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3JDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN6QyxDQUFDLENBQUMsQ0FBQztRQUVILEVBQUUsQ0FBQyw4Q0FBOEMsRUFBRSxLQUFLLElBQUksRUFBRTtZQUM1RCxNQUFNLFNBQVMsR0FBRyxZQUFZLEVBQUUsQ0FBQztZQUVqQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1lBQ3RDLE1BQU0sRUFBRSxHQUFHLE1BQU0sU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ25DLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3JDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN6QyxDQUFDLENBQUMsQ0FBQztRQUVILEVBQUUsQ0FBQyxtREFBbUQsRUFBRSxLQUFLLElBQUksRUFBRTtZQUNqRSxNQUFNLFNBQVMsR0FBRyxJQUFJLCtCQUF5QixDQUFDLGVBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQzlGLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7WUFDdEMsTUFBTSxFQUFFLEdBQUcsTUFBTSxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbkMsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDckMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3pDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFFSCwyRkFBMkY7SUFDM0YsU0FBUyxDQUFDLGtDQUFrQyxFQUFFLEdBQUcsRUFBRTtRQUNqRCxFQUFFLENBQUMsb0RBQW9ELEVBQUUsR0FBRyxFQUFFO1lBQzVELE1BQU0sU0FBUyxHQUFHLElBQUksK0JBQXlCLENBQUMsZUFBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztpQkFDakUsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUM7aUJBQ3hCLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDL0IsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztZQUN0QyxTQUFTO2lCQUNOLEtBQUssRUFBRTtpQkFDUCxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsZ0JBQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7aUJBQ3RDLEtBQUssQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO2dCQUNiLEdBQUcsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLHFCQUFxQixDQUFDLENBQUM7WUFDbEUsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgJ3Nob3VsZCc7XG5pbXBvcnQgKiBhcyBlcnJvck1lc3NhZ2UgZnJvbSAnLi4vLi4vcmVzb3VyY2VzL2Vycm9ycyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi4vLi4vLi4vc3JjL2xpYic7XG5pbXBvcnQgeyBjb2lucyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgRVhQT1JUX0MgfSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvdHgvZXhwb3J0Qyc7XG5pbXBvcnQgeyBCTiB9IGZyb20gJ2F2YWxhbmNoZSc7XG5cbmRlc2NyaWJlKCdBdmF4UCBFeHBvcnQgQzJQIFR4IEJ1aWxkZXInLCAoKSA9PiB7XG4gIGNvbnN0IGZhY3RvcnkgPSBuZXcgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeShjb2lucy5nZXQoJ3RhdmF4cCcpKTtcbiAgY29uc3QgZGF0YSA9IEVYUE9SVF9DO1xuICBkZXNjcmliZSgndmFsaWRhdGUgdHhCdWlsZGVyIGZpZWxkcycsICgpID0+IHtcbiAgICBjb25zdCB0eEJ1aWxkZXIgPSBmYWN0b3J5LmdldEV4cG9ydEluQ0J1aWxkZXIoKTtcbiAgICBpdCgnc2hvdWxkIGZhaWwgYW1vdW50IGxvdyBvciBlcXVhbCB0aGFuIHplcm8nLCAoKSA9PiB7XG4gICAgICBmb3IgKGNvbnN0IGFtb3VudCBvZiBbbmV3IEJOKDApLCBuZXcgQk4oLTEpLCAnMCcsICctMSddKSB7XG4gICAgICAgIGFzc2VydC50aHJvd3MoXG4gICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgdHhCdWlsZGVyLmFtb3VudChhbW91bnQpO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgKGUpID0+IGUubWVzc2FnZSA9PT0gZXJyb3JNZXNzYWdlLkVSUk9SX0FNT1VOVFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBmYWlsIG5vbmNlIGxvdyB0aGFuIHplcm8nLCAoKSA9PiB7XG4gICAgICBmb3IgKGNvbnN0IG5vbmNlIG9mIFstMSwgJy0xJ10pIHtcbiAgICAgICAgYXNzZXJ0LnRocm93cyhcbiAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICB0eEJ1aWxkZXIubm9uY2Uobm9uY2UpO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgKGUpID0+IGUubWVzc2FnZSA9PT0gZXJyb3JNZXNzYWdlLkVSUk9SX05PTkNFXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdzaG91bGQgYnVpbGQgJywgKCkgPT4ge1xuICAgIGNvbnN0IG5ld1R4QnVpbGRlciA9ICgpID0+XG4gICAgICBmYWN0b3J5XG4gICAgICAgIC5nZXRFeHBvcnRJbkNCdWlsZGVyKClcbiAgICAgICAgLmZyb21QdWJLZXkoZGF0YS5jSGV4QWRkcmVzcylcbiAgICAgICAgLm5vbmNlKGRhdGEubm9uY2UpXG4gICAgICAgIC5hbW91bnQoZGF0YS5hbW91bnQpXG4gICAgICAgIC50aHJlc2hvbGQoZGF0YS50aHJlc2hvbGQpXG4gICAgICAgIC5sb2NrdGltZSgwKVxuICAgICAgICAudG8oZGF0YS5wQWRkcmVzc2VzKVxuICAgICAgICAuZmVlUmF0ZShkYXRhLmZlZSk7XG5cbiAgICBpdCgnU2hvdWxkIGNyZWF0ZSBleHBvcnQgdHggZm9yIHNhbWUgdmFsdWVzJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdHhCdWlsZGVyID0gbmV3VHhCdWlsZGVyKCk7XG5cbiAgICAgIGNvbnN0IHR4ID0gYXdhaXQgdHhCdWlsZGVyLmJ1aWxkKCk7XG4gICAgICBjb25zdCByYXdUeCA9IHR4LnRvQnJvYWRjYXN0Rm9ybWF0KCk7XG4gICAgICByYXdUeC5zaG91bGQuZXF1YWwoZGF0YS51bnNpZ25lZFR4SGV4KTtcbiAgICB9KTtcblxuICAgIGl0KCdTaG91bGQgcmVjb3ZlciBleHBvcnQgdHggZnJvbSByYXcgdHgnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0eEJ1aWxkZXIgPSBuZXcgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeShjb2lucy5nZXQoJ3RhdmF4cCcpKS5mcm9tKGRhdGEudW5zaWduZWRUeEhleCk7XG5cbiAgICAgIGNvbnN0IHR4ID0gYXdhaXQgdHhCdWlsZGVyLmJ1aWxkKCk7XG4gICAgICBjb25zdCByYXdUeCA9IHR4LnRvQnJvYWRjYXN0Rm9ybWF0KCk7XG4gICAgICByYXdUeC5zaG91bGQuZXF1YWwoZGF0YS51bnNpZ25lZFR4SGV4KTtcbiAgICB9KTtcblxuICAgIGl0KCdTaG91bGQgcmVjb3ZlciBzaWduZWQgZXhwb3J0ICBmcm9tIHNpZ25lZCByYXcgdHgnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0eEJ1aWxkZXIgPSBuZXcgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeShjb2lucy5nZXQoJ3RhdmF4cCcpKS5mcm9tKGRhdGEuZnVsbHNpZ250eEhleCk7XG4gICAgICBjb25zdCB0eCA9IGF3YWl0IHR4QnVpbGRlci5idWlsZCgpO1xuICAgICAgY29uc3QgcmF3VHggPSB0eC50b0Jyb2FkY2FzdEZvcm1hdCgpO1xuICAgICAgcmF3VHguc2hvdWxkLmVxdWFsKGRhdGEuZnVsbHNpZ250eEhleCk7XG4gICAgfSk7XG5cbiAgICBpdCgnU2hvdWxkIGZ1bGwgc2lnbiBhIGV4cG9ydCB0eCBmb3Igc2FtZSB2YWx1ZXMnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0eEJ1aWxkZXIgPSBuZXdUeEJ1aWxkZXIoKTtcblxuICAgICAgdHhCdWlsZGVyLnNpZ24oeyBrZXk6IGRhdGEucHJpdktleSB9KTtcbiAgICAgIGNvbnN0IHR4ID0gYXdhaXQgdHhCdWlsZGVyLmJ1aWxkKCk7XG4gICAgICBjb25zdCByYXdUeCA9IHR4LnRvQnJvYWRjYXN0Rm9ybWF0KCk7XG4gICAgICByYXdUeC5zaG91bGQuZXF1YWwoZGF0YS5mdWxsc2lnbnR4SGV4KTtcbiAgICB9KTtcblxuICAgIGl0KCdTaG91bGQgZnVsbCBzaWduIGEgZXhwb3J0IHR4IGZyb20gdW5zaWduZWQgcmF3IHR4JywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdHhCdWlsZGVyID0gbmV3IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkoY29pbnMuZ2V0KCd0YXZheHAnKSkuZnJvbShkYXRhLnVuc2lnbmVkVHhIZXgpO1xuICAgICAgdHhCdWlsZGVyLnNpZ24oeyBrZXk6IGRhdGEucHJpdktleSB9KTtcbiAgICAgIGNvbnN0IHR4ID0gYXdhaXQgdHhCdWlsZGVyLmJ1aWxkKCk7XG4gICAgICBjb25zdCByYXdUeCA9IHR4LnRvQnJvYWRjYXN0Rm9ybWF0KCk7XG4gICAgICByYXdUeC5zaG91bGQuZXF1YWwoZGF0YS5mdWxsc2lnbnR4SGV4KTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgLy8gVE9ETyhCRy01NjcwMCk6ICBJbXByb3ZlIGNhblNpZ24gYnkgY2hlY2sgaW4gYWRkcmVzc2VzIGluIGVtcHR5IGNyZWRlbnRpYWxzIG1hdGNoIHNpZ25lclxuICB4ZGVzY3JpYmUoJ0tleSBjYW5ub3Qgc2lnbiB0aGUgdHJhbnNhY3Rpb24gJywgKCkgPT4ge1xuICAgIGl0KCdTaG91bGQgZnVsbCBzaWduIGEgZXhwb3J0ICB0eCBmcm9tIHVuc2lnbmVkIHJhdyB0eCcsICgpID0+IHtcbiAgICAgIGNvbnN0IHR4QnVpbGRlciA9IG5ldyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5KGNvaW5zLmdldCgndGF2YXhwJykpXG4gICAgICAgIC5mcm9tKGRhdGEudW5zaWduZWRUeEhleClcbiAgICAgICAgLmZyb21QdWJLZXkoZGF0YS5wQWRkcmVzc2VzKTtcbiAgICAgIHR4QnVpbGRlci5zaWduKHsga2V5OiBkYXRhLnByaXZLZXkgfSk7XG4gICAgICB0eEJ1aWxkZXJcbiAgICAgICAgLmJ1aWxkKClcbiAgICAgICAgLnRoZW4oKCkgPT4gYXNzZXJ0LmZhaWwoJ2l0IGNhbiBzaWduJykpXG4gICAgICAgIC5jYXRjaCgoZXJyKSA9PiB7XG4gICAgICAgICAgZXJyLm1lc3NhZ2Uuc2hvdWxkLmJlLmVxdWFsKGVycm9yTWVzc2FnZS5FUlJPUl9LRVlfQ0FOTk9UX1NJR04pO1xuICAgICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdfQ==
@@ -29,6 +29,9 @@ const lib_1 = require("../../../src/lib");
29
29
  const statics_1 = require("@bitgo-beta/statics");
30
30
  const sdk_core_1 = require("@bitgo-beta/sdk-core");
31
31
  const importP_1 = require("../../resources/tx/importP");
32
+ const importC_1 = require("../../resources/tx/importC");
33
+ const exportC_1 = require("../../resources/tx/exportC");
34
+ const avaxp_1 = require("../../resources/avaxp");
32
35
  describe('AvaxP Transaction Builder Factory', () => {
33
36
  const factory = new lib_1.TransactionBuilderFactory(statics_1.coins.get('tavaxp'));
34
37
  describe('should validate', () => {
@@ -110,5 +113,53 @@ describe('AvaxP Transaction Builder Factory', () => {
110
113
  txExplain.outputs[0].address.should.equal(testData.ADDVALIDATOR_SAMPLES.nodeID);
111
114
  });
112
115
  });
116
+ describe('Cross chain transfer has source and destination chains', () => {
117
+ const p2cTxs = [
118
+ importP_1.IMPORT_P.fullsigntxHex,
119
+ importP_1.IMPORT_P.halfsigntxHex,
120
+ importP_1.IMPORT_P.unsignedTxHex,
121
+ exportC_1.EXPORT_C.fullsigntxHex,
122
+ exportC_1.EXPORT_C.unsignedTxHex,
123
+ ];
124
+ const c2pTxs = [
125
+ importC_1.IMPORT_C.fullsigntxHex,
126
+ importC_1.IMPORT_C.halfsigntxHex,
127
+ importC_1.IMPORT_C.unsignedTxHex,
128
+ testData.EXPORT_P_2_C.fullsigntxHex,
129
+ testData.EXPORT_P_2_C.halfsigntxHex,
130
+ testData.EXPORT_P_2_C.unsignedTxHex,
131
+ ];
132
+ const noCrossChainTxs = [
133
+ avaxp_1.ADDVALIDATOR_SAMPLES.fullsigntxHex,
134
+ avaxp_1.ADDVALIDATOR_SAMPLES.halfsigntxHex,
135
+ avaxp_1.ADDVALIDATOR_SAMPLES.unsignedTxHex,
136
+ ];
137
+ async function toJson(txHex) {
138
+ const txBuilder = new lib_1.TransactionBuilderFactory(statics_1.coins.get('tavaxp')).from(txHex);
139
+ const tx = await txBuilder.build();
140
+ return tx.toJson();
141
+ }
142
+ it('Should json have sourceChain C and destinationChain P', async () => {
143
+ for (const rawTx of p2cTxs) {
144
+ const txJson = await toJson(rawTx);
145
+ txJson.sourceChain.should.equal('C');
146
+ txJson.destinationChain.should.equal('P');
147
+ }
148
+ });
149
+ it('Should json have sourceChain P and destinationChain C', async () => {
150
+ for (const rawTx of c2pTxs) {
151
+ const txJson = await toJson(rawTx);
152
+ txJson.sourceChain.should.equal('P');
153
+ txJson.destinationChain.should.equal('C');
154
+ }
155
+ });
156
+ it('Should json have not sourceChain either destinationChain ', async () => {
157
+ for (const rawTx of noCrossChainTxs) {
158
+ const txJson = await toJson(rawTx);
159
+ txJson.should.property('sourceChain').be.undefined();
160
+ txJson.should.property('destinationChain').be.undefined();
161
+ }
162
+ });
163
+ });
113
164
  });
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Rlc3QvdW5pdC9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvREFBNEI7QUFDNUIsZ0VBQWtEO0FBQ2xELHFFQUF1RDtBQUN2RCwwQ0FBNkQ7QUFDN0QsaURBQTRDO0FBQzVDLG1EQUF3RTtBQUN4RSx3REFBc0Q7QUFFdEQsUUFBUSxDQUFDLG1DQUFtQyxFQUFFLEdBQUcsRUFBRTtJQUNqRCxNQUFNLE9BQU8sR0FBRyxJQUFJLCtCQUF5QixDQUFDLGVBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUVuRSxRQUFRLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxFQUFFO1FBQy9CLEVBQUUsQ0FBQywwQkFBMEIsRUFBRSxHQUFHLEVBQUU7WUFDbEMsZ0JBQU0sQ0FBQyxNQUFNLENBQ1gsR0FBRyxFQUFFO2dCQUNILE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDbkIsQ0FBQyxFQUNELENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxLQUFLLFlBQVksQ0FBQywyQkFBMkIsQ0FDOUQsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUgsRUFBRSxDQUFDLHFDQUFxQyxFQUFFLEdBQUcsRUFBRTtZQUM3QyxnQkFBTSxDQUFDLE1BQU0sQ0FDWCxHQUFHLEVBQUU7Z0JBQ0gsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsdUJBQXVCLENBQUMsQ0FBQztZQUNqRCxDQUFDLEVBQ0QsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssWUFBWSxDQUFDLGlCQUFpQixDQUNwRCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFFSCxFQUFFLENB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QUM7WUFDMUQsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbEYsQ0FBQyxDQUFDLENBQUM7UUFFSCxFQUFFLENBQUMsMkNBQTJDLEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDekQsTUFBTSxTQUFTLEdBQUcsSUFBSSwrQkFBeUIsQ0FBQyxlQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUN2RSxRQUFRLENBQUMsb0JBQW9CLENBQUMsYUFBYSxDQUM1QyxDQUFDO1lBQ0YsTUFBTSxFQUFFLEdBQUcsTUFBTSxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbkMsTUFBTSxTQUFTLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDMUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQ3JGLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQywwQkFBZSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQzFELFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2xGLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCAqIGFzIHRlc3REYXRhIGZyb20gJy4uLy4uL3Jlc291cmNlcy9hdmF4cCc7XG5pbXBvcnQgKiBhcyBlcnJvck1lc3NhZ2UgZnJvbSAnLi4vLi4vcmVzb3VyY2VzL2Vycm9ycyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi4vLi4vLi4vc3JjL2xpYic7XG5pbXBvcnQgeyBjb2lucyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgQmFzZVRyYW5zYWN0aW9uLCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBJTVBPUlRfUCB9IGZyb20gJy4uLy4uL3Jlc291cmNlcy90eC9pbXBvcnRQJztcblxuZGVzY3JpYmUoJ0F2YXhQIFRyYW5zYWN0aW9uIEJ1aWxkZXIgRmFjdG9yeScsICgpID0+IHtcbiAgY29uc3QgZmFjdG9yeSA9IG5ldyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5KGNvaW5zLmdldCgndGF2YXhwJykpO1xuXG4gIGRlc2NyaWJlKCdzaG91bGQgdmFsaWRhdGUnLCAoKSA9PiB7XG4gICAgaXQoJ2FuIGVtcHR5IHJhdyB0cmFuc2FjdGlvbicsICgpID0+IHtcbiAgICAgIGFzc2VydC50aHJvd3MoXG4gICAgICAgICgpID0+IHtcbiAgICAgICAgICBmYWN0b3J5LmZyb20oJycpO1xuICAgICAgICB9LFxuICAgICAgICAoZSkgPT4gZS5tZXNzYWdlID09PSBlcnJvck1lc3NhZ2UuRVJST1JfRU1QVFlfUkFXX1RSQU5TQUNUSU9OXG4gICAgICApO1xuICAgIH0pO1xuXG4gICAgaXQoJ2FuIGludmFsaWQgcmF3IHRyYW5zZmVyIHRyYW5zYWN0aW9uJywgKCkgPT4ge1xuICAgICAgYXNzZXJ0LnRocm93cyhcbiAgICAgICAgKCkgPT4ge1xuICAgICAgICAgIGZhY3RvcnkuZnJvbSh0ZXN0RGF0YS5JTlZBTElEX1JBV19UUkFOU0FDVElPTik7XG4gICAgICAgIH0sXG4gICAgICAgIChlKSA9PiBlLm1lc3NhZ2UgPT09IGVycm9yTWVzc2FnZS5FUlJPUl9SQVdfUEFSU0lOR1xuICAgICAgKTtcbiAgICB9KTtcblxuICAgIGl0KCdTaG91bGQgdmFsaWRhdGUgYSBjb3JyZWN0IHJhdyB0eCcsICgpID0+IHtcbiAgICAgIGZhY3RvcnkuZnJvbSh0ZXN0RGF0YS5BRERWQUxJREFUT1JfU0FNUExFUy51bnNpZ25lZFR4SGV4KTtcbiAgICAgIC8vIHNob3VsZCBub3QgdGhyb3cgYSBlcnJvciFcbiAgICB9KTtcblxuICAgIGl0KFwiU2hvdWxkbid0IGdldCBhIHdhbGxldCBpbml0aWFsaXphdGlvbiBidWlsZGVyXCIsICgpID0+IHtcbiAgICAgIGFzc2VydC50aHJvd3MoXG4gICAgICAgICgpID0+IHtcbiAgICAgICAgICBmYWN0b3J5LmdldFdhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlcigpO1xuICAgICAgICB9LFxuICAgICAgICAoZSkgPT4gZS5tZXNzYWdlID09PSBlcnJvck1lc3NhZ2UuRVJST1JfV0FMTEVUX0lOSVRJQUxJWkFUSU9OXG4gICAgICApO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnVHJhbnNhY3Rpb24gcmVhZGFibGUnLCAoKSA9PiB7XG4gICAgY29uc3QgcmF3VHhzID0gW1xuICAgICAgdGVzdERhdGEuQUREX1ZBTElEQVRPUl9JRF9TQU1QTEUuZnVsbHNpZ250eEhleCxcbiAgICAgIHRlc3REYXRhLkVYUE9SVF9QXzJfQy5mdWxsc2lnbnR4SGV4LFxuICAgICAgdGVzdERhdGEuRVhQT1JUX1BfMl9DLmhhbGZzaWdudHhIZXgsXG4gICAgICB0ZXN0RGF0YS5FWFBPUlRfUF8yX0MudW5zaWduZWRUeEhleCxcbiAgICAgIElNUE9SVF9QLmZ1bGxzaWdudHhIZXgsXG4gICAgICBJTVBPUlRfUC5oYWxmc2lnbnR4SGV4LFxuICAgICAgSU1QT1JUX1AudW5zaWduZWRUeEhleCxcbiAgICBdO1xuICAgIGxldCB0eDogQmFzZVRyYW5zYWN0aW9uO1xuICAgIGJlZm9yZShhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0eEJ1aWxkZXIgPSBuZXcgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeShjb2lucy5nZXQoJ3RhdmF4cCcpKS5mcm9tKFxuICAgICAgICB0ZXN0RGF0YS5BRERfVkFMSURBVE9SX0lEX1NBTVBMRS5mdWxsc2lnbnR4SGV4XG4gICAgICApO1xuICAgICAgdHggPSBhd2FpdCB0eEJ1aWxkZXIuYnVpbGQoKTtcbiAgICB9KTtcblxuICAgIGl0KCdTaG91bGQganNvbiBzdHJpbmdpZml5IGFueSB0cmFuc2FjdGlvbiBvYmplY3QnLCBhc3luYyAoKSA9PiB7XG4gICAgICBmb3IgKGNvbnN0IHJhd1R4IG9mIHJhd1R4cykge1xuICAgICAgICBjb25zdCB0eEJ1aWxkZXIgPSBuZXcgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeShjb2lucy5nZXQoJ3RhdmF4cCcpKS5mcm9tKHJhd1R4KTtcbiAgICAgICAgY29uc3QgdHggPSBhd2FpdCB0eEJ1aWxkZXIuYnVpbGQoKTtcbiAgICAgICAgY29uc3QgdHhKc29uID0gdHgudG9Kc29uKCk7XG4gICAgICAgIGFzc2VydCh0eXBlb2YgSlNPTi5zdHJpbmdpZnkodHhKc29uKSwgJ3N0cmluZycpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaXQoJ1Nob3VsZCBqc29uIHN0cmluZ2lmaXkgYWRkVmFsaWRhdG9yIHRyYW5zYWN0aW9uJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdHhKc29uID0gdHgudG9Kc29uKCk7XG4gICAgICBhc3NlcnQodHlwZW9mIEpTT04uc3RyaW5naWZ5KHR4LnRvSnNvbigpKSwgJ3N0cmluZycpO1xuICAgICAgdHhKc29uLmlkLnNob3VsZC5lcXVhbCh0ZXN0RGF0YS5BRERfVkFMSURBVE9SX0lEX1NBTVBMRS50eGlkKTtcbiAgICB9KTtcblxuICAgIGl0KCdTaG91bGQgZ2V0IGEgdHhpZCcsIGFzeW5jICgpID0+IHtcbiAgICAgIHR4LmlkLnNob3VsZC5lcXVhbCh0ZXN0RGF0YS5BRERfVkFMSURBVE9SX0lEX1NBTVBMRS50eGlkKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ3Nob3VsZCBleHBsYWlucyB0cmFuc2FjdGlvbicsICgpID0+IHtcbiAgICBpdCgnc2hvdWxkIGV4cGxhaW5zIGEgU2lnbmVkIEFkZFZhbGlkYXRvclR4JywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdHhCdWlsZGVyID0gbmV3IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkoY29pbnMuZ2V0KCd0YXZheHAnKSkuZnJvbShcbiAgICAgICAgdGVzdERhdGEuQUREVkFMSURBVE9SX1NBTVBMRVMuZnVsbHNpZ250eEhleFxuICAgICAgKTtcbiAgICAgIGNvbnN0IHR4ID0gYXdhaXQgdHhCdWlsZGVyLmJ1aWxkKCk7XG4gICAgICBjb25zdCB0eEV4cGxhaW4gPSB0eC5leHBsYWluVHJhbnNhY3Rpb24oKTtcbiAgICAgIHR4RXhwbGFpbi5vdXRwdXRBbW91bnQuc2hvdWxkLmVxdWFsKHRlc3REYXRhLkFERFZBTElEQVRPUl9TQU1QTEVTLm1pblZhbGlkYXRvclN0YWtlKTtcbiAgICAgIHR4RXhwbGFpbi50eXBlLnNob3VsZC5lcXVhbChUcmFuc2FjdGlvblR5cGUuQWRkVmFsaWRhdG9yKTtcbiAgICAgIHR4RXhwbGFpbi5vdXRwdXRzWzBdLmFkZHJlc3Muc2hvdWxkLmVxdWFsKHRlc3REYXRhLkFERFZBTElEQVRPUl9TQU1QTEVTLm5vZGVJRCk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGV4cGxhaW5zIGEgSGFsZiBTaWduZWQgQWRkVmFsaWRhdG9yVHgnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0eEJ1aWxkZXIgPSBuZXcgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeShjb2lucy5nZXQoJ3RhdmF4cCcpKS5mcm9tKFxuICAgICAgICB0ZXN0RGF0YS5BRERWQUxJREFUT1JfU0FNUExFUy5oYWxmc2lnbnR4SGV4XG4gICAgICApO1xuICAgICAgY29uc3QgdHggPSBhd2FpdCB0eEJ1aWxkZXIuYnVpbGQoKTtcbiAgICAgIGNvbnN0IHR4RXhwbGFpbiA9IHR4LmV4cGxhaW5UcmFuc2FjdGlvbigpO1xuICAgICAgdHhFeHBsYWluLm91dHB1dEFtb3VudC5zaG91bGQuZXF1YWwodGVzdERhdGEuQUREVkFMSURBVE9SX1NBTVBMRVMubWluVmFsaWRhdG9yU3Rha2UpO1xuICAgICAgdHhFeHBsYWluLnR5cGUuc2hvdWxkLmVxdWFsKFRyYW5zYWN0aW9uVHlwZS5BZGRWYWxpZGF0b3IpO1xuICAgICAgdHhFeHBsYWluLm91dHB1dHNbMF0uYWRkcmVzcy5zaG91bGQuZXF1YWwodGVzdERhdGEuQUREVkFMSURBVE9SX1NBTVBMRVMubm9kZUlEKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgZXhwbGFpbnMgYSB1bnNpZ25lZCBBZGRWYWxpZGF0b3JUeCcsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHR4QnVpbGRlciA9IG5ldyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5KGNvaW5zLmdldCgndGF2YXhwJykpLmZyb20oXG4gICAgICAgIHRlc3REYXRhLkFERFZBTElEQVRPUl9TQU1QTEVTLnVuc2lnbmVkVHhIZXhcbiAgICAgICk7XG4gICAgICBjb25zdCB0eCA9IGF3YWl0IHR4QnVpbGRlci5idWlsZCgpO1xuICAgICAgY29uc3QgdHhFeHBsYWluID0gdHguZXhwbGFpblRyYW5zYWN0aW9uKCk7XG4gICAgICB0eEV4cGxhaW4ub3V0cHV0QW1vdW50LnNob3VsZC5lcXVhbCh0ZXN0RGF0YS5BRERWQUxJREFUT1JfU0FNUExFUy5taW5WYWxpZGF0b3JTdGFrZSk7XG4gICAgICB0eEV4cGxhaW4udHlwZS5zaG91bGQuZXF1YWwoVHJhbnNhY3Rpb25UeXBlLkFkZFZhbGlkYXRvcik7XG4gICAgICB0eEV4cGxhaW4ub3V0cHV0c1swXS5hZGRyZXNzLnNob3VsZC5lcXVhbCh0ZXN0RGF0YS5BRERWQUxJREFUT1JfU0FNUExFUy5ub2RlSUQpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
165
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Rlc3QvdW5pdC9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvREFBNEI7QUFDNUIsZ0VBQWtEO0FBQ2xELHFFQUF1RDtBQUN2RCwwQ0FBcUU7QUFDckUsaURBQTRDO0FBQzVDLG1EQUF3RTtBQUN4RSx3REFBc0Q7QUFDdEQsd0RBQXNEO0FBQ3RELHdEQUFzRDtBQUN0RCxpREFBNkQ7QUFFN0QsUUFBUSxDQUFDLG1DQUFtQyxFQUFFLEdBQUcsRUFBRTtJQUNqRCxNQUFNLE9BQU8sR0FBRyxJQUFJLCtCQUF5QixDQUFDLGVBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUVuRSxRQUFRLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxFQUFFO1FBQy9CLEVBQUUsQ0FBQywwQkFBMEIsRUFBRSxHQUFHLEVBQUU7WUFDbEMsZ0JBQU0sQ0FBQyxNQUFNLENBQ1gsR0FBRyxFQUFFO2dCQUNILE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDbkIsQ0FBQyxFQUNELENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxLQUFLLFlBQVksQ0FBQywyQkFBMkIsQ0FDOUQsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUgsRUFBRSxDQUFDLHFDQUFxQyxFQUFFLEdBQUcsRUFBRTtZQUM3QyxnQkFBTSxDQUFDLE1BQU0sQ0FDWCxHQUFHLEVBQUU7Z0JBQ0gsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsdUJBQXVCLENBQUMsQ0FBQztZQUNqRCxDQUFDLEVBQ0QsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssWUFBWSxDQUFDLGlCQUFpQixDQUNw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RTtnQkFDMUIsTUFBTSxNQUFNLEdBQUcsTUFBTSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ25DLE1BQU0sQ0FBQyxXQUFZLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDdEMsTUFBTSxDQUFDLGdCQUFpQixDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDNUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILEVBQUUsQ0FBQywyREFBMkQsRUFBRSxLQUFLLElBQUksRUFBRTtZQUN6RSxLQUFLLE1BQU0sS0FBSyxJQUFJLGVBQWUsRUFBRTtnQkFDbkMsTUFBTSxNQUFNLEdBQUcsTUFBTSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ25DLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDckQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUM7YUFDM0Q7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgKiBhcyB0ZXN0RGF0YSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvYXZheHAnO1xuaW1wb3J0ICogYXMgZXJyb3JNZXNzYWdlIGZyb20gJy4uLy4uL3Jlc291cmNlcy9lcnJvcnMnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSwgVHhEYXRhIH0gZnJvbSAnLi4vLi4vLi4vc3JjL2xpYic7XG5pbXBvcnQgeyBjb2lucyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgQmFzZVRyYW5zYWN0aW9uLCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBJTVBPUlRfUCB9IGZyb20gJy4uLy4uL3Jlc291cmNlcy90eC9pbXBvcnRQJztcbmltcG9ydCB7IElNUE9SVF9DIH0gZnJvbSAnLi4vLi4vcmVzb3VyY2VzL3R4L2ltcG9ydEMnO1xuaW1wb3J0IHsgRVhQT1JUX0MgfSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvdHgvZXhwb3J0Qyc7XG5pbXBvcnQgeyBBRERWQUxJREFUT1JfU0FNUExFUyB9IGZyb20gJy4uLy4uL3Jlc291cmNlcy9hdmF4cCc7XG5cbmRlc2NyaWJlKCdBdmF4UCBUcmFuc2FjdGlvbiBCdWlsZGVyIEZhY3RvcnknLCAoKSA9PiB7XG4gIGNvbnN0IGZhY3RvcnkgPSBuZXcgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeShjb2lucy5nZXQoJ3RhdmF4cCcpKTtcblxuICBkZXNjcmliZSgnc2hvdWxkIHZhbGlkYXRlJywgKCkgPT4ge1xuICAgIGl0KCdhbiBlbXB0eSByYXcgdHJhbnNhY3Rpb24nLCAoKSA9PiB7XG4gICAgICBhc3NlcnQudGhyb3dzKFxuICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgZmFjdG9yeS5mcm9tKCcnKTtcbiAgICAgICAgfSxcbiAgICAgICAgKGUpID0+IGUubWVzc2FnZSA9PT0gZXJyb3JNZXNzYWdlLkVSUk9SX0VNUFRZX1JBV19UUkFOU0FDVElPTlxuICAgICAgKTtcbiAgICB9KTtcblxuICAgIGl0KCdhbiBpbnZhbGlkIHJhdyB0cmFuc2ZlciB0cmFuc2FjdGlvbicsICgpID0+IHtcbiAgICAgIGFzc2VydC50aHJvd3MoXG4gICAgICAgICgpID0+IHtcbiAgICAgICAgICBmYWN0b3J5LmZyb20odGVzdERhdGEuSU5WQUxJRF9SQVdfVFJBTlNBQ1RJT04pO1xuICAgICAgICB9LFxuICAgICAgICAoZSkgPT4gZS5tZXNzYWdlID09PSBlcnJvck1lc3NhZ2UuRVJST1JfUkFXX1BBUlNJTkdcbiAgICAgICk7XG4gICAgfSk7XG5cbiAgICBpdCgnU2hvdWxkIHZhbGlkYXRlIGEgY29ycmVjdCByYXcgdHgnLCAoKSA9PiB7XG4gICAgICBmYWN0b3J5LmZyb20odGVzdERhdGEuQUREVkFMSURBVE9SX1NBTVBMRVMudW5zaWduZWRUeEhleCk7XG4gICAgICAvLyBzaG91bGQgbm90IHRocm93IGEgZXJyb3IhXG4gICAgfSk7XG5cbiAgICBpdChcIlNob3VsZG4ndCBnZXQgYSB3YWxsZXQgaW5pdGlhbGl6YXRpb24gYnVpbGRlclwiLCAoKSA9PiB7XG4gICAgICBhc3NlcnQudGhyb3dzKFxuICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgZmFjdG9yeS5nZXRXYWxsZXRJbml0aWFsaXphdGlvbkJ1aWxkZXIoKTtcbiAgICAgICAgfSxcbiAgICAgICAgKGUpID0+IGUubWVzc2FnZSA9PT0gZXJyb3JNZXNzYWdlLkVSUk9SX1dBTExFVF9JTklUSUFMSVpBVElPTlxuICAgICAgKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ1RyYW5zYWN0aW9uIHJlYWRhYmxlJywgKCkgPT4ge1xuICAgIGNvbnN0IHJhd1R4cyA9IFtcbiAgICAgIHRlc3REYXRhLkFERF9WQUxJREFUT1JfSURfU0FNUExFLmZ1bGxzaWdudHhIZXgsXG4gICAgICB0ZXN0RGF0YS5FWFBPUlRfUF8yX0MuZnVsbHNpZ250eEhleCxcbiAgICAgIHRlc3REYXRhLkVYUE9SVF9QXzJfQy5oYWxmc2lnbnR4SGV4LFxuICAgICAgdGVzdERhdGEuRVhQT1JUX1BfMl9DLnVuc2lnbmVkVHhIZXgsXG4gICAgICBJTVBPUlRfUC5mdWxsc2lnbnR4SGV4LFxuICAgICAgSU1QT1JUX1AuaGFsZnNpZ250eEhleCxcbiAgICAgIElNUE9SVF9QLnVuc2lnbmVkVHhIZXgsXG4gICAgXTtcbiAgICBsZXQgdHg6IEJhc2VUcmFuc2FjdGlvbjtcbiAgICBiZWZvcmUoYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdHhCdWlsZGVyID0gbmV3IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkoY29pbnMuZ2V0KCd0YXZheHAnKSkuZnJvbShcbiAgICAgICAgdGVzdERhdGEuQUREX1ZBTElEQVRPUl9JRF9TQU1QTEUuZnVsbHNpZ250eEhleFxuICAgICAgKTtcbiAgICAgIHR4ID0gYXdhaXQgdHhCdWlsZGVyLmJ1aWxkKCk7XG4gICAgfSk7XG5cbiAgICBpdCgnU2hvdWxkIGpzb24gc3RyaW5naWZpeSBhbnkgdHJhbnNhY3Rpb24gb2JqZWN0JywgYXN5bmMgKCkgPT4ge1xuICAgICAgZm9yIChjb25zdCByYXdUeCBvZiByYXdUeHMpIHtcbiAgICAgICAgY29uc3QgdHhCdWlsZGVyID0gbmV3IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkoY29pbnMuZ2V0KCd0YXZheHAnKSkuZnJvbShyYXdUeCk7XG4gICAgICAgIGNvbnN0IHR4ID0gYXdhaXQgdHhCdWlsZGVyLmJ1aWxkKCk7XG4gICAgICAgIGNvbnN0IHR4SnNvbiA9IHR4LnRvSnNvbigpO1xuICAgICAgICBhc3NlcnQodHlwZW9mIEpTT04uc3RyaW5naWZ5KHR4SnNvbiksICdzdHJpbmcnKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGl0KCdTaG91bGQganNvbiBzdHJpbmdpZml5IGFkZFZhbGlkYXRvciB0cmFuc2FjdGlvbicsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHR4SnNvbiA9IHR4LnRvSnNvbigpO1xuICAgICAgYXNzZXJ0KHR5cGVvZiBKU09OLnN0cmluZ2lmeSh0eC50b0pzb24oKSksICdzdHJpbmcnKTtcbiAgICAgIHR4SnNvbi5pZC5zaG91bGQuZXF1YWwodGVzdERhdGEuQUREX1ZBTElEQVRPUl9JRF9TQU1QTEUudHhpZCk7XG4gICAgfSk7XG5cbiAgICBpdCgnU2hvdWxkIGdldCBhIHR4aWQnLCBhc3luYyAoKSA9PiB7XG4gICAgICB0eC5pZC5zaG91bGQuZXF1YWwodGVzdERhdGEuQUREX1ZBTElEQVRPUl9JRF9TQU1QTEUudHhpZCk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdzaG91bGQgZXhwbGFpbnMgdHJhbnNhY3Rpb24nLCAoKSA9PiB7XG4gICAgaXQoJ3Nob3VsZCBleHBsYWlucyBhIFNpZ25lZCBBZGRWYWxpZGF0b3JUeCcsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHR4QnVpbGRlciA9IG5ldyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5KGNvaW5zLmdldCgndGF2YXhwJykpLmZyb20oXG4gICAgICAgIHRlc3REYXRhLkFERFZBTElEQVRPUl9TQU1QTEVTLmZ1bGxzaWdudHhIZXhcbiAgICAgICk7XG4gICAgICBjb25zdCB0eCA9IGF3YWl0IHR4QnVpbGRlci5idWlsZCgpO1xuICAgICAgY29uc3QgdHhFeHBsYWluID0gdHguZXhwbGFpblRyYW5zYWN0aW9uKCk7XG4gICAgICB0eEV4cGxhaW4ub3V0cHV0QW1vdW50LnNob3VsZC5lcXVhbCh0ZXN0RGF0YS5BRERWQUxJREFUT1JfU0FNUExFUy5taW5WYWxpZGF0b3JTdGFrZSk7XG4gICAgICB0eEV4cGxhaW4udHlwZS5zaG91bGQuZXF1YWwoVHJhbnNhY3Rpb25UeXBlLkFkZFZhbGlkYXRvcik7XG4gICAgICB0eEV4cGxhaW4ub3V0cHV0c1swXS5hZGRyZXNzLnNob3VsZC5lcXVhbCh0ZXN0RGF0YS5BRERWQUxJREFUT1JfU0FNUExFUy5ub2RlSUQpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBleHBsYWlucyBhIEhhbGYgU2lnbmVkIEFkZFZhbGlkYXRvclR4JywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdHhCdWlsZGVyID0gbmV3IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkoY29pbnMuZ2V0KCd0YXZheHAnKSkuZnJvbShcbiAgICAgICAgdGVzdERhdGEuQUREVkFMSURBVE9SX1NBTVBMRVMuaGFsZnNpZ250eEhleFxuICAgICAgKTtcbiAgICAgIGNvbnN0IHR4ID0gYXdhaXQgdHhCdWlsZGVyLmJ1aWxkKCk7XG4gICAgICBjb25zdCB0eEV4cGxhaW4gPSB0eC5leHBsYWluVHJhbnNhY3Rpb24oKTtcbiAgICAgIHR4RXhwbGFpbi5vdXRwdXRBbW91bnQuc2hvdWxkLmVxdWFsKHRlc3REYXRhLkFERFZBTElEQVRPUl9TQU1QTEVTLm1pblZhbGlkYXRvclN0YWtlKTtcbiAgICAgIHR4RXhwbGFpbi50eXBlLnNob3VsZC5lcXVhbChUcmFuc2FjdGlvblR5cGUuQWRkVmFsaWRhdG9yKTtcbiAgICAgIHR4RXhwbGFpbi5vdXRwdXRzWzBdLmFkZHJlc3Muc2hvdWxkLmVxdWFsKHRlc3REYXRhLkFERFZBTElEQVRPUl9TQU1QTEVTLm5vZGVJRCk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGV4cGxhaW5zIGEgdW5zaWduZWQgQWRkVmFsaWRhdG9yVHgnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB0eEJ1aWxkZXIgPSBuZXcgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeShjb2lucy5nZXQoJ3RhdmF4cCcpKS5mcm9tKFxuICAgICAgICB0ZXN0RGF0YS5BRERWQUxJREFUT1JfU0FNUExFUy51bnNpZ25lZFR4SGV4XG4gICAgICApO1xuICAgICAgY29uc3QgdHggPSBhd2FpdCB0eEJ1aWxkZXIuYnVpbGQoKTtcbiAgICAgIGNvbnN0IHR4RXhwbGFpbiA9IHR4LmV4cGxhaW5UcmFuc2FjdGlvbigpO1xuICAgICAgdHhFeHBsYWluLm91dHB1dEFtb3VudC5zaG91bGQuZXF1YWwodGVzdERhdGEuQUREVkFMSURBVE9SX1NBTVBMRVMubWluVmFsaWRhdG9yU3Rha2UpO1xuICAgICAgdHhFeHBsYWluLnR5cGUuc2hvdWxkLmVxdWFsKFRyYW5zYWN0aW9uVHlwZS5BZGRWYWxpZGF0b3IpO1xuICAgICAgdHhFeHBsYWluLm91dHB1dHNbMF0uYWRkcmVzcy5zaG91bGQuZXF1YWwodGVzdERhdGEuQUREVkFMSURBVE9SX1NBTVBMRVMubm9kZUlEKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ0Nyb3NzIGNoYWluIHRyYW5zZmVyIGhhcyBzb3VyY2UgYW5kIGRlc3RpbmF0aW9uIGNoYWlucycsICgpID0+IHtcbiAgICBjb25zdCBwMmNUeHMgPSBbXG4gICAgICBJTVBPUlRfUC5mdWxsc2lnbnR4SGV4LFxuICAgICAgSU1QT1JUX1AuaGFsZnNpZ250eEhleCxcbiAgICAgIElNUE9SVF9QLnVuc2lnbmVkVHhIZXgsXG4gICAgICBFWFBPUlRfQy5mdWxsc2lnbnR4SGV4LFxuICAgICAgRVhQT1JUX0MudW5zaWduZWRUeEhleCxcbiAgICBdO1xuXG4gICAgY29uc3QgYzJwVHhzID0gW1xuICAgICAgSU1QT1JUX0MuZnVsbHNpZ250eEhleCxcbiAgICAgIElNUE9SVF9DLmhhbGZzaWdudHhIZXgsXG4gICAgICBJTVBPUlRfQy51bnNpZ25lZFR4SGV4LFxuICAgICAgdGVzdERhdGEuRVhQT1JUX1BfMl9DLmZ1bGxzaWdudHhIZXgsXG4gICAgICB0ZXN0RGF0YS5FWFBPUlRfUF8yX0MuaGFsZnNpZ250eEhleCxcbiAgICAgIHRlc3REYXRhLkVYUE9SVF9QXzJfQy51bnNpZ25lZFR4SGV4LFxuICAgIF07XG5cbiAgICBjb25zdCBub0Nyb3NzQ2hhaW5UeHMgPSBbXG4gICAgICBBRERWQUxJREFUT1JfU0FNUExFUy5mdWxsc2lnbnR4SGV4LFxuICAgICAgQUREVkFMSURBVE9SX1NBTVBMRVMuaGFsZnNpZ250eEhleCxcbiAgICAgIEFERFZBTElEQVRPUl9TQU1QTEVTLnVuc2lnbmVkVHhIZXgsXG4gICAgXTtcblxuICAgIGFzeW5jIGZ1bmN0aW9uIHRvSnNvbih0eEhleDogc3RyaW5nKTogUHJvbWlzZTxUeERhdGE+IHtcbiAgICAgIGNvbnN0IHR4QnVpbGRlciA9IG5ldyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5KGNvaW5zLmdldCgndGF2YXhwJykpLmZyb20odHhIZXgpO1xuICAgICAgY29uc3QgdHggPSBhd2FpdCB0eEJ1aWxkZXIuYnVpbGQoKTtcbiAgICAgIHJldHVybiB0eC50b0pzb24oKTtcbiAgICB9XG5cbiAgICBpdCgnU2hvdWxkIGpzb24gaGF2ZSBzb3VyY2VDaGFpbiBDIGFuZCBkZXN0aW5hdGlvbkNoYWluIFAnLCBhc3luYyAoKSA9PiB7XG4gICAgICBmb3IgKGNvbnN0IHJhd1R4IG9mIHAyY1R4cykge1xuICAgICAgICBjb25zdCB0eEpzb24gPSBhd2FpdCB0b0pzb24ocmF3VHgpO1xuICAgICAgICB0eEpzb24uc291cmNlQ2hhaW4hLnNob3VsZC5lcXVhbCgnQycpO1xuICAgICAgICB0eEpzb24uZGVzdGluYXRpb25DaGFpbiEuc2hvdWxkLmVxdWFsKCdQJyk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpdCgnU2hvdWxkIGpzb24gaGF2ZSBzb3VyY2VDaGFpbiBQIGFuZCBkZXN0aW5hdGlvbkNoYWluIEMnLCBhc3luYyAoKSA9PiB7XG4gICAgICBmb3IgKGNvbnN0IHJhd1R4IG9mIGMycFR4cykge1xuICAgICAgICBjb25zdCB0eEpzb24gPSBhd2FpdCB0b0pzb24ocmF3VHgpO1xuICAgICAgICB0eEpzb24uc291cmNlQ2hhaW4hLnNob3VsZC5lcXVhbCgnUCcpO1xuICAgICAgICB0eEpzb24uZGVzdGluYXRpb25DaGFpbiEuc2hvdWxkLmVxdWFsKCdDJyk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpdCgnU2hvdWxkIGpzb24gaGF2ZSBub3Qgc291cmNlQ2hhaW4gZWl0aGVyIGRlc3RpbmF0aW9uQ2hhaW4gJywgYXN5bmMgKCkgPT4ge1xuICAgICAgZm9yIChjb25zdCByYXdUeCBvZiBub0Nyb3NzQ2hhaW5UeHMpIHtcbiAgICAgICAgY29uc3QgdHhKc29uID0gYXdhaXQgdG9Kc29uKHJhd1R4KTtcbiAgICAgICAgdHhKc29uLnNob3VsZC5wcm9wZXJ0eSgnc291cmNlQ2hhaW4nKS5iZS51bmRlZmluZWQoKTtcbiAgICAgICAgdHhKc29uLnNob3VsZC5wcm9wZXJ0eSgnZGVzdGluYXRpb25DaGFpbicpLmJlLnVuZGVmaW5lZCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
@@ -19,7 +19,7 @@ describe('AvaxP UTXO engine', () => {
19
19
  outputID: n,
20
20
  amount: '509999975',
21
21
  txid: 'CEbFa3hCDfMFu8ASZP9rT1s3X2X8wqoPAN258kkStk9JX3wsH',
22
- outputidx: '1111XiaYg',
22
+ outputidx: '0',
23
23
  addresses: [
24
24
  'P-fuji1hdk7ntw0huhqmlhlheme9t7scsy9lhfhw3ywy4',
25
25
  'P-fuji1yzpfsdalhfwkq2ceewgs9wv7k0uft40ydpuj59',
@@ -36,7 +36,7 @@ describe('AvaxP UTXO engine', () => {
36
36
  outputID: 7,
37
37
  amount: '509999975',
38
38
  txid: 'CEbFa3hCDfMFu8ASZP9rT1s3X2X8wqoPAN258kkStk9JX3wsH',
39
- outputidx: '1111XiaYg',
39
+ outputidx: '0',
40
40
  addresses: [
41
41
  'P-fuji1hdk7ntw0huhqmlhlheme9t7scsy9lhfhw3ywy4',
42
42
  'P-fuji1yzpfsdalhfwkq2ceewgs9wv7k0uft40ydpuj59',
@@ -53,7 +53,7 @@ describe('AvaxP UTXO engine', () => {
53
53
  outputID: 7,
54
54
  amount: '509999975',
55
55
  txid: 'CEbFa3hCDfMFu8ASZP9rT1s3X2X8wqoPAN258kkStk9JX3wsH',
56
- outputidx: '1111XiaYg',
56
+ outputidx: '0',
57
57
  addresses: [
58
58
  'P-fuji1hdk7ntw0huhqmlhlheme9t7scsy9lhfhw3ywy4',
59
59
  'P-fuji1yzpfsdalhfwkq2ceewgs9wv7k0uft40ydpuj59',
@@ -71,7 +71,7 @@ describe('AvaxP UTXO engine', () => {
71
71
  outputID: 7,
72
72
  amount: '509999975',
73
73
  txid: 'CEbFa3hCDfMFu8ASZP9rT1s3X2X8wqoPAN258kkStk9JX3wsH',
74
- outputidx: '1111XiaYg',
74
+ outputidx: '0',
75
75
  addresses: [
76
76
  'P-fuji1hdk7ntw0huhqmlhlheme9t7scsy9lhfhw3ywy4',
77
77
  'P-fuji1yzpfsdalhfwkq2ceewgs9wv7k0uft40ydpuj59',
@@ -83,7 +83,7 @@ describe('AvaxP UTXO engine', () => {
83
83
  outputID: 7,
84
84
  amount: '26932830273',
85
85
  txid: '2VyWNR4q8p7ZnKfaot37SbMBCWHbEbqEca7Af1tiRTArkJMdXt',
86
- outputidx: '1111XiaYg',
86
+ outputidx: '0',
87
87
  addresses: [
88
88
  'P-fuji1yzpfsdalhfwkq2ceewgs9wv7k0uft40ydpuj59',
89
89
  'P-fuji103cmntssp6qnucejahddy42wcy4qty0uj42822',
@@ -115,7 +115,7 @@ describe('AvaxP UTXO engine', () => {
115
115
  outputID: 7,
116
116
  amount: '509999975',
117
117
  txid: 'CEbFa3hCDfMFu8ASZP9rT1s3X2X8wqoPAN258kkStk9JX3wsH',
118
- outputidx: '1111XiaYg',
118
+ outputidx: '0',
119
119
  addresses: [
120
120
  'P-fuji1hdk7ntw0huhqmlhlheme9t7scsy9lhfhw3ywy4',
121
121
  'P-fuji1yzpfsdalhfwkq2ceewgs9wv7k0uft40ydpuj59',
@@ -128,7 +128,7 @@ describe('AvaxP UTXO engine', () => {
128
128
  outputID: 7,
129
129
  amount: '26932830273',
130
130
  txid: '2VyWNR4q8p7ZnKfaot37SbMBCWHbEbqEca7Af1tiRTArkJMdXt',
131
- outputidx: '1111XiaYg',
131
+ outputidx: '0',
132
132
  addresses: [
133
133
  'P-fuji1yzpfsdalhfwkq2ceewgs9wv7k0uft40ydpuj59',
134
134
  'P-fuji13pyc89t4x5483fgdfgg9lcnpxz7ggr09vn6m6c',
@@ -165,4 +165,4 @@ describe('AvaxP UTXO engine', () => {
165
165
  });
166
166
  });
167
167
  });
168
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXR4b0VuZ2luZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Rlc3QvdW5pdC9saWIvdXR4b0VuZ2luZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG9EQUE0QjtBQUM1QixrQkFBZ0I7QUFDaEIsNERBQTBEO0FBRzFELHFFQUE2QztBQUU3QyxRQUFRLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxFQUFFO0lBQ2pDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsR0FBRyxFQUFFO1FBQzNCLE1BQU0sTUFBTSxHQUFpQjtZQUMzQiwrQ0FBK0M7WUFDL0MsK0NBQStDO1lBQy9DLCtDQUErQztTQUNoRCxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsZUFBSyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRXBDLEVBQUUsQ0FBQyxtREFBbUQsRUFBRSxHQUFHLEVBQUU7WUFDM0QsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ3JDLFFBQVEsRUFBRSxDQUFDO2dCQUNYLE1BQU0sRUFBRSxXQUFXO2dCQUNuQixJQUFJLEVBQUUsbURBQW1EO2dCQUN6RCxTQUFTLEVBQUUsV0FBVztnQkFDdEIsU0FBUyxFQUFFO29CQUNULCtDQUErQztvQkFDL0MsK0NBQStDO29CQUMvQywrQ0FBK0M7aUJBQ2hEO2dCQUNELFNBQVMsRUFBRSxDQUFDO2FBQ2IsQ0FBQyxDQUFDLENBQUM7WUFDSixNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsd0JBQVcsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDOUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQUM7UUFFSCxFQUFFLENB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QUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUV0RyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUNqRCxNQUFNLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RGLGVBQUssQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUV2RyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUNqRCxNQUFNLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RGLGVBQUssQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3pHLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0ICdzaG91bGQnO1xuaW1wb3J0IHsgdXR4b1RvSW5wdXQgfSBmcm9tICcuLi8uLi8uLi9zcmMvbGliL3V0eG9FbmdpbmUnO1xuaW1wb3J0IHsgRGVjb2RlZFV0eG9PYmogfSBmcm9tICcuLi8uLi8uLi9zcmMvbGliJztcbmltcG9ydCB7IEJ1ZmZlciBhcyBCdWZmZXJBdmF4IH0gZnJvbSAnYXZhbGFuY2hlJztcbmltcG9ydCB1dGlscyBmcm9tICcuLy4uLy4uLy4uL3NyYy9saWIvdXRpbHMnO1xuXG5kZXNjcmliZSgnQXZheFAgVVRYTyBlbmdpbmUnLCAoKSA9PiB7XG4gIGRlc2NyaWJlKCdzaG91bGQgZmFpbCcsICgpID0+IHtcbiAgICBjb25zdCBzZW5kZXI6IEJ1ZmZlckF2YXhbXSA9IFtcbiAgICAgICdQLWZ1amkxMDNjbW50c3NwNnFudWNlamFoZGR5NDJ3Y3k0cXR5MHVqNDI4MjInLFxuICAgICAgJ1AtZnVqaTFoZGs3bnR3MGh1aHFtbGhsaGVtZTl0N3Njc3k5bGhmaHczeXd5NCcsXG4gICAgICAnUC1mdWppMXl6cGZzZGFsaGZ3a3EyY2Vld2dzOXd2N2swdWZ0NDB5ZHB1ajU5JyxcbiAgICBdLm1hcCgoYSkgPT4gdXRpbHMucGFyc2VBZGRyZXNzKGEpKTtcblxuICAgIGl0KCdzaG91bGQgcmV0dXJuIGVtcHR5IGlucHV0IGZvciB1dHhvcyBvZiB3cm9uZyB0eXBlJywgKCkgPT4ge1xuICAgICAgY29uc3QgdXR4b3MgPSBbMSwgMiwgMywgNF0ubWFwKChuKSA9PiAoe1xuICAgICAgICBvdXRwdXRJRDogbixcbiAgICAgICAgYW1vdW50OiAnNTA5OTk5OTc1JyxcbiAgICAgICAgdHhpZDogJ0NFYkZhM2hDRGZNRnU4QVNaUDlyVDFzM1gyWDh3cW9QQU4yNThra1N0azlKWDN3c0gnLFxuICAgICAgICBvdXRwdXRpZHg6ICcxMTExWGlhWWcnLFxuICAgICAgICBhZGRyZXNzZXM6IFtcbiAgICAgICAgICAnUC1mdWppMWhkazdudHcwaHVocW1saGxoZW1lOXQ3c2NzeTlsaGZodzN5d3k0JyxcbiAgICAgICAgICAnUC1mdWppMXl6cGZzZGFsaGZ3a3EyY2Vld2dzOXd2N2swdWZ0NDB5ZHB1ajU5JyxcbiAgICAgICAgICAnUC1mdWppMTAzY21udHNzcDZxbnVjZWphaGRkeTQyd2N5NHF0eTB1ajQyODIyJyxcbiAgICAgICAgXSxcbiAgICAgICAgdGhyZXNob2xkOiAyLFxuICAgICAgfSkpO1xuICAgICAgY29uc3QgeyBpbnB1dHMgfSA9IHV0eG9Ub0lucHV0KHV0eG9zLCBzZW5kZXIpO1xuICAgICAgaW5wdXRzLnNob3VsZC5iZS5lbXB0eSgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBmYWlsIHdpdGggd3JvbmcgYWRkcmVzcycsICgpID0+IHtcbiAgICAgIGNvbnN0IHV0eG9zID0gW1xuICAgICAgICB7XG4gICAgICAgICAgb3V0cHV0SUQ6IDcsXG4gICAgICAgICAgYW1vdW50OiAnNTA5OTk5OTc1JyxcbiAgICAgICAgICB0eGlkOiAnQ0ViRmEzaENEZk1GdThBU1pQOXJUMXMzWDJYOHdxb1BBTjI1OGtrU3RrOUpYM3dzSCcsXG4gICAgICAgICAgb3V0cHV0aWR4OiAnMTExMVhpYVlnJyxcbiAgICAgICAgICBhZGRyZXNzZXM6IFtcbiAgICAgICAgICAgICdQLWZ1amkxaGRrN250dzBodWhxbWxobGhlbWU5dDdzY3N5OWxoZmh3M3l3eTQnLFxuICAgICAgICAgICAgJ1AtZnVqaTF5enBmc2RhbGhmd2txMmNlZXdnczl3djdrMHVmdDQweWRwdWo1OScsXG4gICAgICAgICAgICAnUC1mdWppMTNweWM4OXQ0eDU0ODNmZ2RmZ2c5bGNucHh6N2dncjA5dm42bTZjJyxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHRocmVzaG9sZDogMixcbiAgICAgICAgfSxcbiAgICAgIF07XG4gICAgICBhc3NlcnQudGhyb3dzKFxuICAgICAgICAoKSA9PiB1dHhvVG9JbnB1dCh1dHhvcywgc2VuZGVyKSxcbiAgICAgICAgKGUpID0+IGUubWVzc2FnZSA9PT0gJ0FkZHJlc3NlcyBhcmUgaW5jb25zaXN0ZW50OiBDRWJGYTNoQ0RmTUZ1OEFTWlA5clQxczNYMlg4d3FvUEFOMjU4a2tTdGs5Slgzd3NIJ1xuICAgICAgKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgZmFpbCB3aXRoIHdyb25nIHRocmVzaG9sZCcsICgpID0+IHtcbiAgICAgIGNvbnN0IHV0eG9zID0gW1xuICAgICAgICB7XG4gICAgICAgICAgb3V0cHV0SUQ6IDcsXG4gICAgICAgICAgYW1vdW50OiAnNTA5OTk5OTc1JyxcbiAgICAgICAgICB0eGlkOiAnQ0ViRmEzaENEZk1GdThBU1pQOXJUMXMzWDJYOHdxb1BBTjI1OGtrU3RrOUpYM3dzSCcsXG4gICAgICAgICAgb3V0cHV0aWR4OiAnMTExMVhpYVlnJyxcbiAgICAgICAgICBhZGRyZXNzZXM6IFtcbiAgICAgICAgICAgICdQLWZ1amkxaGRrN250dzBodWhxbWxobGhlbWU5dDdzY3N5OWxoZmh3M3l3eTQnLFxuICAgICAgICAgICAgJ1AtZnVqaTF5enBmc2RhbGhmd2txMmNlZXdnczl3djdrMHVmdDQweWRwdWo1OScsXG4gICAgICAgICAgICAnUC1mdWppMTAzY21udHNzcDZxbnVjZWphaGRkeTQyd2N5NHF0eTB1ajQyODIyJyxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHRocmVzaG9sZDogMyxcbiAgICAgICAgfSxcbiAgICAgIF07XG4gICAgICBhc3NlcnQudGhyb3dzKFxuICAgICAgICAoKSA9PiB1dHhvVG9JbnB1dCh1dHhvcywgc2VuZGVyKSxcbiAgICAgICAgKGUpID0+IGUubWVzc2FnZSA9PT0gJ1RocmVzaG9sZCBpcyBpbmNvbnNpc3RlbnQnXG4gICAgICApO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnMiBvZiAzIHNpZ25lcnMnLCAoKSA9PiB7XG4gICAgY29uc3QgdXR4b3M6IERlY29kZWRVdHhvT2JqW10gPSBbXG4gICAgICB7XG4gICAgICAgIG91dHB1dElEOiA3LFxuICAgICAgICBhbW91bnQ6ICc1MDk5OTk5NzUnLFxuICAgICAgICB0eGlkOiAnQ0ViRmEzaENEZk1GdThBU1pQOXJUMXMzWDJYOHdxb1BBTjI1OGtrU3RrOUpYM3dzSCcsXG4gICAgICAgIG91dHB1dGlkeDogJzExMTFYaWFZZycsXG4gICAgICAgIGFkZHJlc3NlczogW1xuICAgICAgICAgICdQLWZ1amkxaGRrN250dzBodWhxbWxobGhlbWU5dDdzY3N5OWxoZmh3M3l3eTQnLFxuICAgICAgICAgICdQLWZ1amkxeXpwZnNkYWxoZndrcTJjZWV3Z3M5d3Y3azB1ZnQ0MHlkcHVqNTknLFxuICAgICAgICAgICdQLWZ1amkxMDNjbW50c3NwNnFudWNlamFoZGR5NDJ3Y3k0cXR5MHVqNDI4MjInLFxuICAgICAgICBdLFxuICAgICAgICB0aHJlc2hvbGQ6IDIsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBvdXRwdXRJRDogNyxcbiAgICAgICAgYW1vdW50OiAnMjY5MzI4MzAyNzMnLFxuICAgICAgICB0eGlkOiAnMlZ5V05SNHE4cDdabktmYW90MzdTYk1CQ1dIYkVicUVjYTdBZjF0aVJUQXJrSk1kWHQnLFxuICAgICAgICBvdXRwdXRpZHg6ICcxMTExWGlhWWcnLFxuICAgICAgICBhZGRyZXNzZXM6IFtcbiAgICAgICAgICAnUC1mdWppMXl6cGZzZGFsaGZ3a3EyY2Vld2dzOXd2N2swdWZ0NDB5ZHB1ajU5JyxcbiAgICAgICAgICAnUC1mdWppMTAzY21udHNzcDZxbnVjZWphaGRkeTQyd2N5NHF0eTB1ajQyODIyJyxcbiAgICAgICAgICAnUC1mdWppMWhkazdudHcwaHVocW1saGxoZW1lOXQ3c2NzeTlsaGZodzN5d3k0JyxcbiAgICAgICAgXSxcbiAgICAgICAgdGhyZXNob2xkOiAyLFxuICAgICAgfSxcbiAgICBdO1xuICAgIGNvbnN0IHNlbmRlcjogQnVmZmVyQXZheFtdID0gW1xuICAgICAgJ1AtZnVqaTEwM2NtbnRzc3A2cW51Y2VqYWhkZHk0MndjeTRxdHkwdWo0MjgyMicsXG4gICAgICAnUC1mdWppMWhkazdudHcwaHVocW1saGxoZW1lOXQ3c2NzeTlsaGZodzN5d3k0JyxcbiAgICAgICdQLWZ1amkxeXpwZnNkYWxoZndrcTJjZWV3Z3M5d3Y3azB1ZnQ0MHlkcHVqNTknLFxuICAgIF0ubWFwKChhKSA9PiB1dGlscy5wYXJzZUFkZHJlc3MoYSkpO1xuXG4gICAgY29uc3QgZmlyc3RTaWduZXIgPSBzZW5kZXJbMF0udG9TdHJpbmcoJ2hleCcpO1xuICAgIC8vIHNlY29uZCBzaWduZXIgaXMgWmVyb3MgY3JlZGVudGlhbC5cbiAgICBpdCgnc2hvdWxkIHJldHVybiBjcmVkZW50aWFsIDIgb2YgMycsICgpID0+IHtcbiAgICAgIGNvbnN0IHsgaW5wdXRzIH0gPSB1dHhvVG9JbnB1dCh1dHhvcywgc2VuZGVyKTtcbiAgICAgIGlucHV0cy5mb3JFYWNoKChpbnB1dCwgaSkgPT4ge1xuICAgICAgICBjb25zdCBleHBlY3RlZFNpZ25hdHVyZSA9IGlucHV0LnNpZ25hdHVyZXMubWFwKChzaWduYXR1cmUpID0+XG4gICAgICAgICAgc2lnbmF0dXJlLnRvQnVmZmVyKCkudG9TdHJpbmcoJ2hleCcpLnN1YnN0cmluZyg5MClcbiAgICAgICAgKTtcbiAgICAgICAgZXhwZWN0ZWRTaWduYXR1cmUuc2hvdWxkLmNvbnRhaW5FcWwoZmlyc3RTaWduZXIpO1xuICAgICAgICBjb25zdCBmaXN0U2lnbmF0dXJlSWR4ID0gaW5wdXQuc2lnbmF0dXJlc0lkeFtleHBlY3RlZFNpZ25hdHVyZS5pbmRleE9mKGZpcnN0U2lnbmVyKV07XG4gICAgICAgIHV0aWxzLnBhcnNlQWRkcmVzcyh1dHhvc1tpXS5hZGRyZXNzZXNbZmlzdFNpZ25hdHVyZUlkeF0pLnRvU3RyaW5nKCdoZXgnKS5zaG91bGQuYmUuZXF1YWwoZmlyc3RTaWduZXIpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCc0IG9mIDQgc2lnbmVycycsICgpID0+IHtcbiAgICBjb25zdCB1dHhvczogRGVjb2RlZFV0eG9PYmpbXSA9IFtcbiAgICAgIHtcbiAgICAgICAgb3V0cHV0SUQ6IDcsXG4gICAgICAgIGFtb3VudDogJzUwOTk5OTk3NScsXG4gICAgICAgIHR4aWQ6ICdDRWJGYTNoQ0RmTUZ1OEFTWlA5clQxczNYMlg4d3FvUEFOMjU4a2tTdGs5Slgzd3NIJyxcbiAgICAgICAgb3V0cHV0aWR4OiAnMTExMVhpYVlnJyxcbiAgICAgICAgYWRkcmVzc2VzOiBbXG4gICAgICAgICAgJ1AtZnVqaTFoZGs3bnR3MGh1aHFtbGhsaGVtZTl0N3Njc3k5bGhmaHczeXd5NCcsXG4gICAgICAgICAgJ1AtZnVqaTF5enBmc2RhbGhmd2txMmNlZXdnczl3djdrMHVmdDQweWRwdWo1OScsXG4gICAgICAgICAgJ1AtZnVqaTEzcHljODl0NHg1NDgzZmdkZmdnOWxjbnB4ejdnZ3IwOXZuNm02YycsXG4gICAgICAgICAgJ1AtZnVqaTEwM2NtbnRzc3A2cW51Y2VqYWhkZHk0MndjeTRxdHkwdWo0MjgyMicsXG4gICAgICAgIF0sXG4gICAgICAgIHRocmVzaG9sZDogNCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG91dHB1dElEOiA3LFxuICAgICAgICBhbW91bnQ6ICcyNjkzMjgzMDI3MycsXG4gICAgICAgIHR4aWQ6ICcyVnlXTlI0cThwN1puS2Zhb3QzN1NiTUJDV0hiRWJxRWNhN0FmMXRpUlRBcmtKTWRYdCcsXG4gICAgICAgIG91dHB1dGlkeDogJzExMTFYaWFZZycsXG4gICAgICAgIGFkZHJlc3NlczogW1xuICAgICAgICAgICdQLWZ1amkxeXpwZnNkYWxoZndrcTJjZWV3Z3M5d3Y3azB1ZnQ0MHlkcHVqNTknLFxuICAgICAgICAgICdQLWZ1amkxM3B5Yzg5dDR4NTQ4M2ZnZGZnZzlsY25weHo3Z2dyMDl2bjZtNmMnLFxuICAgICAgICAgICdQLWZ1amkxMDNjbW50c3NwNnFudWNlamFoZGR5NDJ3Y3k0cXR5MHVqNDI4MjInLFxuICAgICAgICAgICdQLWZ1amkxaGRrN250dzBodWhxbWxobGhlbWU5dDdzY3N5OWxoZmh3M3l3eTQnLFxuICAgICAgICBdLFxuICAgICAgICB0aHJlc2hvbGQ6IDQsXG4gICAgICB9LFxuICAgIF07XG4gICAgY29uc3Qgc2VuZGVyOiBCdWZmZXJBdmF4W10gPSBbXG4gICAgICAnUC1mdWppMTAzY21udHNzcDZxbnVjZWphaGRkeTQyd2N5NHF0eTB1ajQyODIyJyxcbiAgICAgICdQLWZ1amkxaGRrN250dzBodWhxbWxobGhlbWU5dDdzY3N5OWxoZmh3M3l3eTQnLFxuICAgICAgJ1AtZnVqaTF5enBmc2RhbGhmd2txMmNlZXdnczl3djdrMHVmdDQweWRwdWo1OScsXG4gICAgICAnUC1mdWppMTNweWM4OXQ0eDU0ODNmZ2RmZ2c5bGNucHh6N2dncjA5dm42bTZjJyxcbiAgICBdLm1hcCgoYSkgPT4gdXRpbHMucGFyc2VBZGRyZXNzKGEpKTtcblxuICAgIGNvbnN0IGZpcnN0U2lnbmVyID0gc2VuZGVyWzBdLnRvU3RyaW5nKCdoZXgnKTtcbiAgICAvLyBzZWNvbmQgc2lnbmVyIGlzIFplcm9zIGNyZWRlbnRpYWwuXG4gICAgY29uc3QgdGhpcmRTaWduZXIgPSBzZW5kZXJbMl0udG9TdHJpbmcoJ2hleCcpO1xuICAgIGNvbnN0IGZvcnRoU2lnbmVyID0gc2VuZGVyWzNdLnRvU3RyaW5nKCdoZXgnKTtcblxuICAgIGl0KCdzaG91bGQgcmV0dXJuIGNyZWRlbnRpYWwnLCAoKSA9PiB7XG4gICAgICBjb25zdCB7IGlucHV0cyB9ID0gdXR4b1RvSW5wdXQodXR4b3MsIHNlbmRlciwgNCk7XG4gICAgICBpbnB1dHMuZm9yRWFjaCgoaW5wdXQsIGkpID0+IHtcbiAgICAgICAgY29uc3QgZXhwZWN0ZWRTaWduYXR1cmUgPSBpbnB1dC5zaWduYXR1cmVzLm1hcCgoc2lnbmF0dXJlKSA9PlxuICAgICAgICAgIHNpZ25hdHVyZS50b0J1ZmZlcigpLnRvU3RyaW5nKCdoZXgnKS5zdWJzdHJpbmcoOTApXG4gICAgICAgICk7XG4gICAgICAgIGV4cGVjdGVkU2lnbmF0dXJlLnNob3VsZC5jb250YWluRXFsKGZpcnN0U2lnbmVyKTtcbiAgICAgICAgY29uc3QgZmlzdFNpZ25hdHVyZUlkeCA9IGlucHV0LnNpZ25hdHVyZXNJZHhbZXhwZWN0ZWRTaWduYXR1cmUuaW5kZXhPZihmaXJzdFNpZ25lcildO1xuICAgICAgICB1dGlscy5wYXJzZUFkZHJlc3ModXR4b3NbaV0uYWRkcmVzc2VzW2Zpc3RTaWduYXR1cmVJZHhdKS50b1N0cmluZygnaGV4Jykuc2hvdWxkLmJlLmVxdWFsKGZpcnN0U2lnbmVyKTtcblxuICAgICAgICBleHBlY3RlZFNpZ25hdHVyZS5zaG91bGQuY29udGFpbkVxbCh0aGlyZFNpZ25lcik7XG4gICAgICAgIGNvbnN0IHRoaXJkU2lnbmF0dXJlSWR4ID0gaW5wdXQuc2lnbmF0dXJlc0lkeFtleHBlY3RlZFNpZ25hdHVyZS5pbmRleE9mKHRoaXJkU2lnbmVyKV07XG4gICAgICAgIHV0aWxzLnBhcnNlQWRkcmVzcyh1dHhvc1tpXS5hZGRyZXNzZXNbdGhpcmRTaWduYXR1cmVJZHhdKS50b1N0cmluZygnaGV4Jykuc2hvdWxkLmJlLmVxdWFsKHRoaXJkU2lnbmVyKTtcblxuICAgICAgICBleHBlY3RlZFNpZ25hdHVyZS5zaG91bGQuY29udGFpbkVxbChmb3J0aFNpZ25lcik7XG4gICAgICAgIGNvbnN0IGZvcnRoU2lnbmF0dXJlSWR4ID0gaW5wdXQuc2lnbmF0dXJlc0lkeFtleHBlY3RlZFNpZ25hdHVyZS5pbmRleE9mKGZvcnRoU2lnbmVyKV07XG4gICAgICAgIHV0aWxzLnBhcnNlQWRkcmVzcyh1dHhvc1tpXS5hZGRyZXNzZXNbZm9ydGhTaWduYXR1cmVJZHhdKS50b1N0cmluZygnaGV4Jykuc2hvdWxkLmJlLmVxdWFsKGZvcnRoU2lnbmVyKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
168
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXR4b0VuZ2luZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Rlc3QvdW5pdC9saWIvdXR4b0VuZ2luZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG9EQUE0QjtBQUM1QixrQkFBZ0I7QUFDaEIsNERBQTBEO0FBRzFELHFFQUE2QztBQUU3QyxRQUFRLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxFQUFFO0lBQ2pDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsR0FBRyxFQUFFO1FBQzNCLE1BQU0sTUFBTSxHQUFpQjtZQUMzQiwrQ0FBK0M7WUFDL0MsK0NBQStDO1lBQy9DLCtDQUErQztTQUNoRCxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsZUFBSyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRXBDLEVBQUUsQ0FBQyxtREFBbUQsRUFBRSxHQUFHLEVBQUU7WUFDM0QsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ3JDLFFBQVEsRUFBRSxDQUFDO2dCQUNYLE1BQU0sRUFBRSxXQUFXO2dCQUNuQixJQUFJLEVBQUUsbURBQW1EO2dCQUN6RCxTQUFTLEVBQUUsR0FBRztnQkFDZCxTQUFTLEVBQUU7b0JBQ1QsK0NBQStDO29CQUMvQywrQ0FBK0M7b0JBQy9DLCtDQUErQztpQkFDaEQ7Z0JBQ0QsU0FBUyxFQUFFLENBQUM7YUFDYixDQUFDLENBQUMsQ0FBQztZQUNKLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyx3QkFBVyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztZQUM5QyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztRQUVILEVBQUUsQ0FB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LENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7Z0JBRXRHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUM7Z0JBQ2pELE1BQU0saUJBQWlCLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztnQkFDdEYsZUFBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7Z0JBRXZHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUM7Z0JBQ2pELE1BQU0saUJBQWlCLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztnQkFDdEYsZUFBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDekcsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgJ3Nob3VsZCc7XG5pbXBvcnQgeyB1dHhvVG9JbnB1dCB9IGZyb20gJy4uLy4uLy4uL3NyYy9saWIvdXR4b0VuZ2luZSc7XG5pbXBvcnQgeyBEZWNvZGVkVXR4b09iaiB9IGZyb20gJy4uLy4uLy4uL3NyYy9saWInO1xuaW1wb3J0IHsgQnVmZmVyIGFzIEJ1ZmZlckF2YXggfSBmcm9tICdhdmFsYW5jaGUnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vLi4vLi4vLi4vc3JjL2xpYi91dGlscyc7XG5cbmRlc2NyaWJlKCdBdmF4UCBVVFhPIGVuZ2luZScsICgpID0+IHtcbiAgZGVzY3JpYmUoJ3Nob3VsZCBmYWlsJywgKCkgPT4ge1xuICAgIGNvbnN0IHNlbmRlcjogQnVmZmVyQXZheFtdID0gW1xuICAgICAgJ1AtZnVqaTEwM2NtbnRzc3A2cW51Y2VqYWhkZHk0MndjeTRxdHkwdWo0MjgyMicsXG4gICAgICAnUC1mdWppMWhkazdudHcwaHVocW1saGxoZW1lOXQ3c2NzeTlsaGZodzN5d3k0JyxcbiAgICAgICdQLWZ1amkxeXpwZnNkYWxoZndrcTJjZWV3Z3M5d3Y3azB1ZnQ0MHlkcHVqNTknLFxuICAgIF0ubWFwKChhKSA9PiB1dGlscy5wYXJzZUFkZHJlc3MoYSkpO1xuXG4gICAgaXQoJ3Nob3VsZCByZXR1cm4gZW1wdHkgaW5wdXQgZm9yIHV0eG9zIG9mIHdyb25nIHR5cGUnLCAoKSA9PiB7XG4gICAgICBjb25zdCB1dHhvcyA9IFsxLCAyLCAzLCA0XS5tYXAoKG4pID0+ICh7XG4gICAgICAgIG91dHB1dElEOiBuLFxuICAgICAgICBhbW91bnQ6ICc1MDk5OTk5NzUnLFxuICAgICAgICB0eGlkOiAnQ0ViRmEzaENEZk1GdThBU1pQOXJUMXMzWDJYOHdxb1BBTjI1OGtrU3RrOUpYM3dzSCcsXG4gICAgICAgIG91dHB1dGlkeDogJzAnLFxuICAgICAgICBhZGRyZXNzZXM6IFtcbiAgICAgICAgICAnUC1mdWppMWhkazdudHcwaHVocW1saGxoZW1lOXQ3c2NzeTlsaGZodzN5d3k0JyxcbiAgICAgICAgICAnUC1mdWppMXl6cGZzZGFsaGZ3a3EyY2Vld2dzOXd2N2swdWZ0NDB5ZHB1ajU5JyxcbiAgICAgICAgICAnUC1mdWppMTAzY21udHNzcDZxbnVjZWphaGRkeTQyd2N5NHF0eTB1ajQyODIyJyxcbiAgICAgICAgXSxcbiAgICAgICAgdGhyZXNob2xkOiAyLFxuICAgICAgfSkpO1xuICAgICAgY29uc3QgeyBpbnB1dHMgfSA9IHV0eG9Ub0lucHV0KHV0eG9zLCBzZW5kZXIpO1xuICAgICAgaW5wdXRzLnNob3VsZC5iZS5lbXB0eSgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBmYWlsIHdpdGggd3JvbmcgYWRkcmVzcycsICgpID0+IHtcbiAgICAgIGNvbnN0IHV0eG9zID0gW1xuICAgICAgICB7XG4gICAgICAgICAgb3V0cHV0SUQ6IDcsXG4gICAgICAgICAgYW1vdW50OiAnNTA5OTk5OTc1JyxcbiAgICAgICAgICB0eGlkOiAnQ0ViRmEzaENEZk1GdThBU1pQOXJUMXMzWDJYOHdxb1BBTjI1OGtrU3RrOUpYM3dzSCcsXG4gICAgICAgICAgb3V0cHV0aWR4OiAnMCcsXG4gICAgICAgICAgYWRkcmVzc2VzOiBbXG4gICAgICAgICAgICAnUC1mdWppMWhkazdudHcwaHVocW1saGxoZW1lOXQ3c2NzeTlsaGZodzN5d3k0JyxcbiAgICAgICAgICAgICdQLWZ1amkxeXpwZnNkYWxoZndrcTJjZWV3Z3M5d3Y3azB1ZnQ0MHlkcHVqNTknLFxuICAgICAgICAgICAgJ1AtZnVqaTEzcHljODl0NHg1NDgzZmdkZmdnOWxjbnB4ejdnZ3IwOXZuNm02YycsXG4gICAgICAgICAgXSxcbiAgICAgICAgICB0aHJlc2hvbGQ6IDIsXG4gICAgICAgIH0sXG4gICAgICBdO1xuICAgICAgYXNzZXJ0LnRocm93cyhcbiAgICAgICAgKCkgPT4gdXR4b1RvSW5wdXQodXR4b3MsIHNlbmRlciksXG4gICAgICAgIChlKSA9PiBlLm1lc3NhZ2UgPT09ICdBZGRyZXNzZXMgYXJlIGluY29uc2lzdGVudDogQ0ViRmEzaENEZk1GdThBU1pQOXJUMXMzWDJYOHdxb1BBTjI1OGtrU3RrOUpYM3dzSCdcbiAgICAgICk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGZhaWwgd2l0aCB3cm9uZyB0aHJlc2hvbGQnLCAoKSA9PiB7XG4gICAgICBjb25zdCB1dHhvcyA9IFtcbiAgICAgICAge1xuICAgICAgICAgIG91dHB1dElEOiA3LFxuICAgICAgICAgIGFtb3VudDogJzUwOTk5OTk3NScsXG4gICAgICAgICAgdHhpZDogJ0NFYkZhM2hDRGZNRnU4QVNaUDlyVDFzM1gyWDh3cW9QQU4yNThra1N0azlKWDN3c0gnLFxuICAgICAgICAgIG91dHB1dGlkeDogJzAnLFxuICAgICAgICAgIGFkZHJlc3NlczogW1xuICAgICAgICAgICAgJ1AtZnVqaTFoZGs3bnR3MGh1aHFtbGhsaGVtZTl0N3Njc3k5bGhmaHczeXd5NCcsXG4gICAgICAgICAgICAnUC1mdWppMXl6cGZzZGFsaGZ3a3EyY2Vld2dzOXd2N2swdWZ0NDB5ZHB1ajU5JyxcbiAgICAgICAgICAgICdQLWZ1amkxMDNjbW50c3NwNnFudWNlamFoZGR5NDJ3Y3k0cXR5MHVqNDI4MjInLFxuICAgICAgICAgIF0sXG4gICAgICAgICAgdGhyZXNob2xkOiAzLFxuICAgICAgICB9LFxuICAgICAgXTtcbiAgICAgIGFzc2VydC50aHJvd3MoXG4gICAgICAgICgpID0+IHV0eG9Ub0lucHV0KHV0eG9zLCBzZW5kZXIpLFxuICAgICAgICAoZSkgPT4gZS5tZXNzYWdlID09PSAnVGhyZXNob2xkIGlzIGluY29uc2lzdGVudCdcbiAgICAgICk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCcyIG9mIDMgc2lnbmVycycsICgpID0+IHtcbiAgICBjb25zdCB1dHhvczogRGVjb2RlZFV0eG9PYmpbXSA9IFtcbiAgICAgIHtcbiAgICAgICAgb3V0cHV0SUQ6IDcsXG4gICAgICAgIGFtb3VudDogJzUwOTk5OTk3NScsXG4gICAgICAgIHR4aWQ6ICdDRWJGYTNoQ0RmTUZ1OEFTWlA5clQxczNYMlg4d3FvUEFOMjU4a2tTdGs5Slgzd3NIJyxcbiAgICAgICAgb3V0cHV0aWR4OiAnMCcsXG4gICAgICAgIGFkZHJlc3NlczogW1xuICAgICAgICAgICdQLWZ1amkxaGRrN250dzBodWhxbWxobGhlbWU5dDdzY3N5OWxoZmh3M3l3eTQnLFxuICAgICAgICAgICdQLWZ1amkxeXpwZnNkYWxoZndrcTJjZWV3Z3M5d3Y3azB1ZnQ0MHlkcHVqNTknLFxuICAgICAgICAgICdQLWZ1amkxMDNjbW50c3NwNnFudWNlamFoZGR5NDJ3Y3k0cXR5MHVqNDI4MjInLFxuICAgICAgICBdLFxuICAgICAgICB0aHJlc2hvbGQ6IDIsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBvdXRwdXRJRDogNyxcbiAgICAgICAgYW1vdW50OiAnMjY5MzI4MzAyNzMnLFxuICAgICAgICB0eGlkOiAnMlZ5V05SNHE4cDdabktmYW90MzdTYk1CQ1dIYkVicUVjYTdBZjF0aVJUQXJrSk1kWHQnLFxuICAgICAgICBvdXRwdXRpZHg6ICcwJyxcbiAgICAgICAgYWRkcmVzc2VzOiBbXG4gICAgICAgICAgJ1AtZnVqaTF5enBmc2RhbGhmd2txMmNlZXdnczl3djdrMHVmdDQweWRwdWo1OScsXG4gICAgICAgICAgJ1AtZnVqaTEwM2NtbnRzc3A2cW51Y2VqYWhkZHk0MndjeTRxdHkwdWo0MjgyMicsXG4gICAgICAgICAgJ1AtZnVqaTFoZGs3bnR3MGh1aHFtbGhsaGVtZTl0N3Njc3k5bGhmaHczeXd5NCcsXG4gICAgICAgIF0sXG4gICAgICAgIHRocmVzaG9sZDogMixcbiAgICAgIH0sXG4gICAgXTtcbiAgICBjb25zdCBzZW5kZXI6IEJ1ZmZlckF2YXhbXSA9IFtcbiAgICAgICdQLWZ1amkxMDNjbW50c3NwNnFudWNlamFoZGR5NDJ3Y3k0cXR5MHVqNDI4MjInLFxuICAgICAgJ1AtZnVqaTFoZGs3bnR3MGh1aHFtbGhsaGVtZTl0N3Njc3k5bGhmaHczeXd5NCcsXG4gICAgICAnUC1mdWppMXl6cGZzZGFsaGZ3a3EyY2Vld2dzOXd2N2swdWZ0NDB5ZHB1ajU5JyxcbiAgICBdLm1hcCgoYSkgPT4gdXRpbHMucGFyc2VBZGRyZXNzKGEpKTtcblxuICAgIGNvbnN0IGZpcnN0U2lnbmVyID0gc2VuZGVyWzBdLnRvU3RyaW5nKCdoZXgnKTtcbiAgICAvLyBzZWNvbmQgc2lnbmVyIGlzIFplcm9zIGNyZWRlbnRpYWwuXG4gICAgaXQoJ3Nob3VsZCByZXR1cm4gY3JlZGVudGlhbCAyIG9mIDMnLCAoKSA9PiB7XG4gICAgICBjb25zdCB7IGlucHV0cyB9ID0gdXR4b1RvSW5wdXQodXR4b3MsIHNlbmRlcik7XG4gICAgICBpbnB1dHMuZm9yRWFjaCgoaW5wdXQsIGkpID0+IHtcbiAgICAgICAgY29uc3QgZXhwZWN0ZWRTaWduYXR1cmUgPSBpbnB1dC5zaWduYXR1cmVzLm1hcCgoc2lnbmF0dXJlKSA9PlxuICAgICAgICAgIHNpZ25hdHVyZS50b0J1ZmZlcigpLnRvU3RyaW5nKCdoZXgnKS5zdWJzdHJpbmcoOTApXG4gICAgICAgICk7XG4gICAgICAgIGV4cGVjdGVkU2lnbmF0dXJlLnNob3VsZC5jb250YWluRXFsKGZpcnN0U2lnbmVyKTtcbiAgICAgICAgY29uc3QgZmlzdFNpZ25hdHVyZUlkeCA9IGlucHV0LnNpZ25hdHVyZXNJZHhbZXhwZWN0ZWRTaWduYXR1cmUuaW5kZXhPZihmaXJzdFNpZ25lcildO1xuICAgICAgICB1dGlscy5wYXJzZUFkZHJlc3ModXR4b3NbaV0uYWRkcmVzc2VzW2Zpc3RTaWduYXR1cmVJZHhdKS50b1N0cmluZygnaGV4Jykuc2hvdWxkLmJlLmVxdWFsKGZpcnN0U2lnbmVyKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnNCBvZiA0IHNpZ25lcnMnLCAoKSA9PiB7XG4gICAgY29uc3QgdXR4b3M6IERlY29kZWRVdHhvT2JqW10gPSBbXG4gICAgICB7XG4gICAgICAgIG91dHB1dElEOiA3LFxuICAgICAgICBhbW91bnQ6ICc1MDk5OTk5NzUnLFxuICAgICAgICB0eGlkOiAnQ0ViRmEzaENEZk1GdThBU1pQOXJUMXMzWDJYOHdxb1BBTjI1OGtrU3RrOUpYM3dzSCcsXG4gICAgICAgIG91dHB1dGlkeDogJzAnLFxuICAgICAgICBhZGRyZXNzZXM6IFtcbiAgICAgICAgICAnUC1mdWppMWhkazdudHcwaHVocW1saGxoZW1lOXQ3c2NzeTlsaGZodzN5d3k0JyxcbiAgICAgICAgICAnUC1mdWppMXl6cGZzZGFsaGZ3a3EyY2Vld2dzOXd2N2swdWZ0NDB5ZHB1ajU5JyxcbiAgICAgICAgICAnUC1mdWppMTNweWM4OXQ0eDU0ODNmZ2RmZ2c5bGNucHh6N2dncjA5dm42bTZjJyxcbiAgICAgICAgICAnUC1mdWppMTAzY21udHNzcDZxbnVjZWphaGRkeTQyd2N5NHF0eTB1ajQyODIyJyxcbiAgICAgICAgXSxcbiAgICAgICAgdGhyZXNob2xkOiA0LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgb3V0cHV0SUQ6IDcsXG4gICAgICAgIGFtb3VudDogJzI2OTMyODMwMjczJyxcbiAgICAgICAgdHhpZDogJzJWeVdOUjRxOHA3Wm5LZmFvdDM3U2JNQkNXSGJFYnFFY2E3QWYxdGlSVEFya0pNZFh0JyxcbiAgICAgICAgb3V0cHV0aWR4OiAnMCcsXG4gICAgICAgIGFkZHJlc3NlczogW1xuICAgICAgICAgICdQLWZ1amkxeXpwZnNkYWxoZndrcTJjZWV3Z3M5d3Y3azB1ZnQ0MHlkcHVqNTknLFxuICAgICAgICAgICdQLWZ1amkxM3B5Yzg5dDR4NTQ4M2ZnZGZnZzlsY25weHo3Z2dyMDl2bjZtNmMnLFxuICAgICAgICAgICdQLWZ1amkxMDNjbW50c3NwNnFudWNlamFoZGR5NDJ3Y3k0cXR5MHVqNDI4MjInLFxuICAgICAgICAgICdQLWZ1amkxaGRrN250dzBodWhxbWxobGhlbWU5dDdzY3N5OWxoZmh3M3l3eTQnLFxuICAgICAgICBdLFxuICAgICAgICB0aHJlc2hvbGQ6IDQsXG4gICAgICB9LFxuICAgIF07XG4gICAgY29uc3Qgc2VuZGVyOiBCdWZmZXJBdmF4W10gPSBbXG4gICAgICAnUC1mdWppMTAzY21udHNzcDZxbnVjZWphaGRkeTQyd2N5NHF0eTB1ajQyODIyJyxcbiAgICAgICdQLWZ1amkxaGRrN250dzBodWhxbWxobGhlbWU5dDdzY3N5OWxoZmh3M3l3eTQnLFxuICAgICAgJ1AtZnVqaTF5enBmc2RhbGhmd2txMmNlZXdnczl3djdrMHVmdDQweWRwdWo1OScsXG4gICAgICAnUC1mdWppMTNweWM4OXQ0eDU0ODNmZ2RmZ2c5bGNucHh6N2dncjA5dm42bTZjJyxcbiAgICBdLm1hcCgoYSkgPT4gdXRpbHMucGFyc2VBZGRyZXNzKGEpKTtcblxuICAgIGNvbnN0IGZpcnN0U2lnbmVyID0gc2VuZGVyWzBdLnRvU3RyaW5nKCdoZXgnKTtcbiAgICAvLyBzZWNvbmQgc2lnbmVyIGlzIFplcm9zIGNyZWRlbnRpYWwuXG4gICAgY29uc3QgdGhpcmRTaWduZXIgPSBzZW5kZXJbMl0udG9TdHJpbmcoJ2hleCcpO1xuICAgIGNvbnN0IGZvcnRoU2lnbmVyID0gc2VuZGVyWzNdLnRvU3RyaW5nKCdoZXgnKTtcblxuICAgIGl0KCdzaG91bGQgcmV0dXJuIGNyZWRlbnRpYWwnLCAoKSA9PiB7XG4gICAgICBjb25zdCB7IGlucHV0cyB9ID0gdXR4b1RvSW5wdXQodXR4b3MsIHNlbmRlciwgNCk7XG4gICAgICBpbnB1dHMuZm9yRWFjaCgoaW5wdXQsIGkpID0+IHtcbiAgICAgICAgY29uc3QgZXhwZWN0ZWRTaWduYXR1cmUgPSBpbnB1dC5zaWduYXR1cmVzLm1hcCgoc2lnbmF0dXJlKSA9PlxuICAgICAgICAgIHNpZ25hdHVyZS50b0J1ZmZlcigpLnRvU3RyaW5nKCdoZXgnKS5zdWJzdHJpbmcoOTApXG4gICAgICAgICk7XG4gICAgICAgIGV4cGVjdGVkU2lnbmF0dXJlLnNob3VsZC5jb250YWluRXFsKGZpcnN0U2lnbmVyKTtcbiAgICAgICAgY29uc3QgZmlzdFNpZ25hdHVyZUlkeCA9IGlucHV0LnNpZ25hdHVyZXNJZHhbZXhwZWN0ZWRTaWduYXR1cmUuaW5kZXhPZihmaXJzdFNpZ25lcildO1xuICAgICAgICB1dGlscy5wYXJzZUFkZHJlc3ModXR4b3NbaV0uYWRkcmVzc2VzW2Zpc3RTaWduYXR1cmVJZHhdKS50b1N0cmluZygnaGV4Jykuc2hvdWxkLmJlLmVxdWFsKGZpcnN0U2lnbmVyKTtcblxuICAgICAgICBleHBlY3RlZFNpZ25hdHVyZS5zaG91bGQuY29udGFpbkVxbCh0aGlyZFNpZ25lcik7XG4gICAgICAgIGNvbnN0IHRoaXJkU2lnbmF0dXJlSWR4ID0gaW5wdXQuc2lnbmF0dXJlc0lkeFtleHBlY3RlZFNpZ25hdHVyZS5pbmRleE9mKHRoaXJkU2lnbmVyKV07XG4gICAgICAgIHV0aWxzLnBhcnNlQWRkcmVzcyh1dHhvc1tpXS5hZGRyZXNzZXNbdGhpcmRTaWduYXR1cmVJZHhdKS50b1N0cmluZygnaGV4Jykuc2hvdWxkLmJlLmVxdWFsKHRoaXJkU2lnbmVyKTtcblxuICAgICAgICBleHBlY3RlZFNpZ25hdHVyZS5zaG91bGQuY29udGFpbkVxbChmb3J0aFNpZ25lcik7XG4gICAgICAgIGNvbnN0IGZvcnRoU2lnbmF0dXJlSWR4ID0gaW5wdXQuc2lnbmF0dXJlc0lkeFtleHBlY3RlZFNpZ25hdHVyZS5pbmRleE9mKGZvcnRoU2lnbmVyKV07XG4gICAgICAgIHV0aWxzLnBhcnNlQWRkcmVzcyh1dHhvc1tpXS5hZGRyZXNzZXNbZm9ydGhTaWduYXR1cmVJZHhdKS50b1N0cmluZygnaGV4Jykuc2hvdWxkLmJlLmVxdWFsKGZvcnRoU2lnbmVyKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19