@bitgo/sdk-core 36.38.0 → 36.39.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/dist/src/account-lib/mpc/util.d.ts.map +1 -1
  2. package/dist/src/account-lib/mpc/util.js +8 -3
  3. package/dist/src/bitgo/environments.d.ts.map +1 -1
  4. package/dist/src/bitgo/environments.js +19 -1
  5. package/dist/src/bitgo/keychain/iKeychains.d.ts.map +1 -1
  6. package/dist/src/bitgo/keychain/iKeychains.js +1 -1
  7. package/dist/src/bitgo/utils/mpcUtils.d.ts.map +1 -1
  8. package/dist/src/bitgo/utils/mpcUtils.js +7 -1
  9. package/dist/src/bitgo/utils/tss/baseTypes.d.ts +11 -0
  10. package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -1
  11. package/dist/src/bitgo/utils/tss/baseTypes.js +1 -1
  12. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -1
  13. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.js +6 -2
  14. package/dist/src/bitgo/wallet/BuildParams.d.ts +1 -0
  15. package/dist/src/bitgo/wallet/BuildParams.d.ts.map +1 -1
  16. package/dist/src/bitgo/wallet/BuildParams.js +2 -1
  17. package/dist/src/bitgo/wallet/iWallet.d.ts +11 -6
  18. package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
  19. package/dist/src/bitgo/wallet/iWallet.js +1 -1
  20. package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
  21. package/dist/src/bitgo/wallet/wallet.js +17 -3
  22. package/dist/src/coins/ofcToken.d.ts.map +1 -1
  23. package/dist/src/coins/ofcToken.js +4 -1
  24. package/dist/src/index.d.ts +1 -0
  25. package/dist/src/index.d.ts.map +1 -1
  26. package/dist/src/index.js +2 -1
  27. package/dist/test/unit/account-lib/mpc/util.d.ts +2 -0
  28. package/dist/test/unit/account-lib/mpc/util.d.ts.map +1 -0
  29. package/dist/test/unit/account-lib/mpc/util.js +53 -0
  30. package/dist/tsconfig.tsbuildinfo +1 -1
  31. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"ofcToken.d.ts","sourceRoot":"","sources":["../../../src/coins/ofcToken.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EACL,SAAS,EACT,eAAe,EACf,sBAAsB,IAAI,0BAA0B,EACpD,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,KAAK,CAAC;AAGb,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B,MAAM,WAAW,sBAAuB,SAAQ,0BAA0B;IACxE,UAAU,EAAE;QACV,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,GAAG,EAAE,MAAM,CAAC;CACb;AAED,OAAO,EAAE,cAAc,EAAE,CAAC;AAI1B,qBAAa,QAAS,SAAQ,GAAG;IAC/B,SAAgB,WAAW,EAAE,cAAc,CAAC;gBAEhC,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc;IAKzD,IAAI,IAAI,WAEP;IAED,IAAI,aAAa,WAEhB;IAED,IAAI,IAAI,WAEP;IAED,IAAI,WAAW,WAEd;IAED,IAAI,MAAM,YAET;IAED,QAAQ;IAIR,WAAW;IAIX,aAAa;IAIb,IAAW,IAAI,WAEd;IAED,cAAc,CAAC,SAAS,EAAE,qBAAqB,GAAG,IAAI;IAyBtD;;;OAGG;IACH,wBAAwB;IAIxB,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,cAAc,GAAG,eAAe;IAItE;;;;OAIG;IACG,eAAe,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAQjF;;;;;;OAMG;IACH,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO;CAa1C"}
1
+ {"version":3,"file":"ofcToken.d.ts","sourceRoot":"","sources":["../../../src/coins/ofcToken.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EACL,SAAS,EACT,eAAe,EACf,sBAAsB,IAAI,0BAA0B,EACpD,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,KAAK,CAAC;AAGb,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B,MAAM,WAAW,sBAAuB,SAAQ,0BAA0B;IACxE,UAAU,EAAE;QACV,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,GAAG,EAAE,MAAM,CAAC;CACb;AAED,OAAO,EAAE,cAAc,EAAE,CAAC;AAI1B,qBAAa,QAAS,SAAQ,GAAG;IAC/B,SAAgB,WAAW,EAAE,cAAc,CAAC;gBAEhC,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc;IAKzD,IAAI,IAAI,WAEP;IAED,IAAI,aAAa,WAEhB;IAED,IAAI,IAAI,WAEP;IAED,IAAI,WAAW,WAEd;IAED,IAAI,MAAM,YAET;IAED,QAAQ;IAIR,WAAW;IAIX,aAAa;IAIb,IAAW,IAAI,WAEd;IAED,cAAc,CAAC,SAAS,EAAE,qBAAqB,GAAG,IAAI;IAyBtD;;;OAGG;IACH,wBAAwB;IAIxB,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,cAAc,GAAG,eAAe;IAItE;;;;OAIG;IACG,eAAe,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAQjF;;;;;;OAMG;IACH,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO;CAkB1C"}
@@ -98,9 +98,12 @@ class OfcToken extends ofc_1.Ofc {
98
98
  }
99
99
  else {
100
100
  const backingCoin = this.bitgo.coin(this.backingCoin);
101
+ if (this.backingCoin === 'btc' || this.backingCoin === 'tbtc') {
102
+ return backingCoin.isValidAddress(address, { allowLightning: true });
103
+ }
101
104
  return backingCoin.isValidAddress(address);
102
105
  }
103
106
  }
104
107
  }
105
108
  exports.OfcToken = OfcToken;
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2ZjVG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29pbnMvb2ZjVG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBSUEsbUNBQWtDO0FBUWxDLDRDQUErQztBQUUvQywrQkFBNEI7QUFXNUIsTUFBTSxhQUFhLEdBQUcsZ0JBQWdCLENBQUM7QUFFdkMsTUFBYSxRQUFTLFNBQVEsU0FBRztJQUcvQixZQUFZLEtBQWdCLEVBQUUsV0FBMkI7UUFDdkQsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2IsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDakMsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUM7SUFDeEMsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUM7SUFDdEMsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUM7SUFDakMsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsSUFBVyxJQUFJO1FBQ2IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztJQUMvQixDQUFDO0lBRUQsY0FBYyxDQUFDLFNBQWdDO1FBQzdDLElBQUksSUFBQSwyQkFBZSxFQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ3ZDLCtEQUErRDtZQUMvRCxJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssS0FBSyxJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssTUFBTSxFQUFFLENBQUM7Z0JBQzlELE1BQU0sSUFBSSxLQUFLLENBQUMsb0VBQW9FLENBQUMsQ0FBQztZQUN4RixDQUFDO1lBRUQsdURBQXVEO1lBQ3ZELElBQUksTUFBYyxDQUFDO1lBQ25CLElBQUksQ0FBQztnQkFDSCxNQUFNLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNwQyxDQUFDO1lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztnQkFDWCxNQUFNLElBQUksS0FBSyxDQUNiLG9CQUFvQixTQUFTLENBQUMsTUFBTSxrRUFBa0UsQ0FDdkcsQ0FBQztZQUNKLENBQUM7WUFDRCxJQUFJLE1BQU0sR0FBRyxFQUFFLEVBQUUsQ0FBQztnQkFDaEIsT0FBTztZQUNULENBQUM7WUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLGtGQUFrRixDQUFDLENBQUM7UUFDdEcsQ0FBQztRQUVELEtBQUssQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVEOzs7T0FHRztJQUNILHdCQUF3QjtRQUN0QixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxNQUFNLENBQUMsc0JBQXNCLENBQUMsTUFBc0I7UUFDbEQsT0FBTyxDQUFDLEtBQWdCLEVBQUUsRUFBRSxDQUFDLElBQUksUUFBUSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxlQUFlLENBQUMsTUFBOEI7UUFDbEQsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUNyQyxNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDO1FBQ25DLE1BQU0sZUFBZSxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBUSxDQUFDO1FBQ3pFLE1BQU0sU0FBUyxHQUFXLGVBQWUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsRUFBUyxDQUFDO0lBQ3ZELENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxjQUFjLENBQUMsT0FBZ0I7UUFDN0IsSUFBSSxDQUFDLElBQUEsaUJBQVEsRUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ3ZCLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzlCLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDakMsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzNCLE9BQU8sS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM3RCxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUN0RCxPQUFPLFdBQVcsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDN0MsQ0FBQztJQUNILENBQUM7Q0FDRjtBQWxIRCw0QkFrSEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwcmV0dGllclxuICovXG5pbXBvcnQgeyBPZmNUb2tlbkNvbmZpZyB9IGZyb20gJ0BiaXRnby9zdGF0aWNzJztcbmltcG9ydCB7IGlzU3RyaW5nIH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7XG4gIEJpdEdvQmFzZSxcbiAgQ29pbkNvbnN0cnVjdG9yLFxuICBTaWduVHJhbnNhY3Rpb25PcHRpb25zIGFzIEJhc2VTaWduVHJhbnNhY3Rpb25PcHRpb25zLFxuICBTaWduZWRUcmFuc2FjdGlvbixcbiAgSVRyYW5zYWN0aW9uUmVjaXBpZW50LFxufSBmcm9tICcuLi8nO1xuaW1wb3J0IHsgaXNCb2x0MTFJbnZvaWNlIH0gZnJvbSAnLi4vbGlnaHRuaW5nJztcblxuaW1wb3J0IHsgT2ZjIH0gZnJvbSAnLi9vZmMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25UcmFuc2FjdGlvbk9wdGlvbnMgZXh0ZW5kcyBCYXNlU2lnblRyYW5zYWN0aW9uT3B0aW9ucyB7XG4gIHR4UHJlYnVpbGQ6IHtcbiAgICBwYXlsb2FkOiBzdHJpbmc7XG4gIH07XG4gIHBydjogc3RyaW5nO1xufVxuXG5leHBvcnQgeyBPZmNUb2tlbkNvbmZpZyB9O1xuXG5jb25zdCBwdWJsaWNJZFJlZ2V4ID0gL15bYS1mXFxkXXszMn0kL2k7XG5cbmV4cG9ydCBjbGFzcyBPZmNUb2tlbiBleHRlbmRzIE9mYyB7XG4gIHB1YmxpYyByZWFkb25seSB0b2tlbkNvbmZpZzogT2ZjVG9rZW5Db25maWc7XG5cbiAgY29uc3RydWN0b3IoYml0Z286IEJpdEdvQmFzZSwgdG9rZW5Db25maWc6IE9mY1Rva2VuQ29uZmlnKSB7XG4gICAgc3VwZXIoYml0Z28pO1xuICAgIHRoaXMudG9rZW5Db25maWcgPSB0b2tlbkNvbmZpZztcbiAgfVxuXG4gIGdldCBjb2luKCkge1xuICAgIHJldHVybiB0aGlzLnRva2VuQ29uZmlnLmNvaW47XG4gIH1cblxuICBnZXQgZGVjaW1hbFBsYWNlcygpIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5kZWNpbWFsUGxhY2VzO1xuICB9XG5cbiAgZ2V0IG5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcubmFtZTtcbiAgfVxuXG4gIGdldCBiYWNraW5nQ29pbigpIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5iYWNraW5nQ29pbjtcbiAgfVxuXG4gIGdldCBpc0ZpYXQoKSB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcuaXNGaWF0O1xuICB9XG5cbiAgZ2V0Q2hhaW4oKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIGdldEZ1bGxOYW1lKCkge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cblxuICBnZXRCYXNlRmFjdG9yKCkge1xuICAgIHJldHVybiBTdHJpbmcoTWF0aC5wb3coMTAsIHRoaXMuZGVjaW1hbFBsYWNlcykpO1xuICB9XG5cbiAgcHVibGljIGdldCB0eXBlKCkge1xuICAgIHJldHVybiB0aGlzLnRva2VuQ29uZmlnLnR5cGU7XG4gIH1cblxuICBjaGVja1JlY2lwaWVudChyZWNpcGllbnQ6IElUcmFuc2FjdGlvblJlY2lwaWVudCk6IHZvaWQge1xuICAgIGlmIChpc0JvbHQxMUludm9pY2UocmVjaXBpZW50LmFkZHJlc3MpKSB7XG4gICAgICAvLyBzaG91bGQgdGhyb3cgZXJyb3IgaWYgdGhpcyBpc250IGJpdGNvaW4gKG1haW5uZXQgb3IgdGVzdG5ldClcbiAgICAgIGlmICh0aGlzLmJhY2tpbmdDb2luICE9PSAnYnRjJyAmJiB0aGlzLmJhY2tpbmdDb2luICE9PSAndGJ0YycpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIGFyZ3VtZW50IC0gbGlnaHRuaW5nIGludm9pY2UgaXMgb25seSBzdXBwb3J0ZWQgZm9yIGJpdGNvaW5gKTtcbiAgICAgIH1cblxuICAgICAgLy8gYW1vdW50IGZvciBib2x0MTEgaW52b2ljZXMgbXVzdCBiZSBhIG5vbi16ZXJvIGJpZ2ludFxuICAgICAgbGV0IGFtb3VudDogYmlnaW50O1xuICAgICAgdHJ5IHtcbiAgICAgICAgYW1vdW50ID0gQmlnSW50KHJlY2lwaWVudC5hbW91bnQpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgYGludmFsaWQgYXJndW1lbnQgJHtyZWNpcGllbnQuYW1vdW50fSBmb3IgYW1vdW50IC0gbGlnaHRuaW5nIGludm9pY2UgYW1vdW50IG11c3QgYmUgYSBub24temVybyBiaWdpbnRgXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBpZiAoYW1vdW50ID4gMG4pIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIGFyZ3VtZW50IGZvciBhbW91bnQgLSBsaWdodG5pbmcgaW52b2ljZSBhbW91bnQgbXVzdCBiZSBhIG5vbi16ZXJvIGJpZ2ludGApO1xuICAgIH1cblxuICAgIHN1cGVyLmNoZWNrUmVjaXBpZW50KHJlY2lwaWVudCk7XG4gIH1cblxuICAvKipcbiAgICogRmxhZyBmb3Igc2VuZGluZyB2YWx1ZSBvZiAwXG4gICAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIG9rYXkgdG8gc2VuZCAwIHZhbHVlLCBmYWxzZSBvdGhlcndpc2VcbiAgICovXG4gIHZhbHVlbGVzc1RyYW5zZmVyQWxsb3dlZCgpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBzdGF0aWMgY3JlYXRlVG9rZW5Db25zdHJ1Y3Rvcihjb25maWc6IE9mY1Rva2VuQ29uZmlnKTogQ29pbkNvbnN0cnVjdG9yIHtcbiAgICByZXR1cm4gKGJpdGdvOiBCaXRHb0Jhc2UpID0+IG5ldyBPZmNUb2tlbihiaXRnbywgY29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBc3NlbWJsZSBrZXljaGFpbiBhbmQgaGFsZi1zaWduIHByZWJ1aWx0IHRyYW5zYWN0aW9uXG4gICAqIEBwYXJhbSBwYXJhbXNcbiAgICogQHJldHVybnMge1Byb21pc2U8U2lnbmVkVHJhbnNhY3Rpb24+fVxuICAgKi9cbiAgYXN5bmMgc2lnblRyYW5zYWN0aW9uKHBhcmFtczogU2lnblRyYW5zYWN0aW9uT3B0aW9ucyk6IFByb21pc2U8U2lnbmVkVHJhbnNhY3Rpb24+IHtcbiAgICBjb25zdCB0eFByZWJ1aWxkID0gcGFyYW1zLnR4UHJlYnVpbGQ7XG4gICAgY29uc3QgcGF5bG9hZCA9IHR4UHJlYnVpbGQucGF5bG9hZDtcbiAgICBjb25zdCBzaWduYXR1cmVCdWZmZXIgPSAoYXdhaXQgdGhpcy5zaWduTWVzc2FnZShwYXJhbXMsIHBheWxvYWQpKSBhcyBhbnk7XG4gICAgY29uc3Qgc2lnbmF0dXJlOiBzdHJpbmcgPSBzaWduYXR1cmVCdWZmZXIudG9TdHJpbmcoJ2hleCcpO1xuICAgIHJldHVybiB7IGhhbGZTaWduZWQ6IHsgcGF5bG9hZCwgc2lnbmF0dXJlIH0gfSBhcyBhbnk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgYW4gYWRkcmVzcyBpcyB2YWxpZCBmb3IgdGhpcyBvZmMgdG9rZW4uXG4gICAqXG4gICAqIFRoZXNlIGFkZHJlc3NlcyBhcmUgZWl0aGVyIGJnLTxwdWJsaWNpZD4sIHdoZXJlIHB1YmxpYyBpZCBpcyB0aGUgaW50ZXJuYWwgYWRkcmVzcyB0byBzZW5kIHRvLFxuICAgKiBvciBhcmUgYW4gYWRkcmVzcyB3aGljaCBpcyB2YWxpZCBvbiB0aGUgYmFja2luZyBjb2luIG9mIHRoaXMgb2ZjIHRva2VuLlxuICAgKiBAcGFyYW0gYWRkcmVzcyBhZGRyZXNzIHRvIGNoZWNrIGZvciB2YWxpZGl0eVxuICAgKi9cbiAgaXNWYWxpZEFkZHJlc3MoYWRkcmVzcz86IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGlmICghaXNTdHJpbmcoYWRkcmVzcykpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgaWYgKGFkZHJlc3Muc3RhcnRzV2l0aCgnYmctJykpIHtcbiAgICAgIGNvbnN0IHBhcnRzID0gYWRkcmVzcy5zcGxpdCgnLScpO1xuICAgICAgY29uc3QgYWNjb3VudElkID0gcGFydHNbMV07XG4gICAgICByZXR1cm4gcGFydHMubGVuZ3RoID09PSAyICYmIHB1YmxpY0lkUmVnZXgudGVzdChhY2NvdW50SWQpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBiYWNraW5nQ29pbiA9IHRoaXMuYml0Z28uY29pbih0aGlzLmJhY2tpbmdDb2luKTtcbiAgICAgIHJldHVybiBiYWNraW5nQ29pbi5pc1ZhbGlkQWRkcmVzcyhhZGRyZXNzKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2ZjVG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29pbnMvb2ZjVG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBSUEsbUNBQWtDO0FBUWxDLDRDQUErQztBQUUvQywrQkFBNEI7QUFXNUIsTUFBTSxhQUFhLEdBQUcsZ0JBQWdCLENBQUM7QUFFdkMsTUFBYSxRQUFTLFNBQVEsU0FBRztJQUcvQixZQUFZLEtBQWdCLEVBQUUsV0FBMkI7UUFDdkQsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2IsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDakMsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUM7SUFDeEMsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUM7SUFDdEMsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUM7SUFDakMsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsSUFBVyxJQUFJO1FBQ2IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztJQUMvQixDQUFDO0lBRUQsY0FBYyxDQUFDLFNBQWdDO1FBQzdDLElBQUksSUFBQSwyQkFBZSxFQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ3ZDLCtEQUErRDtZQUMvRCxJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssS0FBSyxJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssTUFBTSxFQUFFLENBQUM7Z0JBQzlELE1BQU0sSUFBSSxLQUFLLENBQUMsb0VBQW9FLENBQUMsQ0FBQztZQUN4RixDQUFDO1lBRUQsdURBQXVEO1lBQ3ZELElBQUksTUFBYyxDQUFDO1lBQ25CLElBQUksQ0FBQztnQkFDSCxNQUFNLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNwQyxDQUFDO1lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztnQkFDWCxNQUFNLElBQUksS0FBSyxDQUNiLG9CQUFvQixTQUFTLENBQUMsTUFBTSxrRUFBa0UsQ0FDdkcsQ0FBQztZQUNKLENBQUM7WUFDRCxJQUFJLE1BQU0sR0FBRyxFQUFFLEVBQUUsQ0FBQztnQkFDaEIsT0FBTztZQUNULENBQUM7WUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLGtGQUFrRixDQUFDLENBQUM7UUFDdEcsQ0FBQztRQUVELEtBQUssQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVEOzs7T0FHRztJQUNILHdCQUF3QjtRQUN0QixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxNQUFNLENBQUMsc0JBQXNCLENBQUMsTUFBc0I7UUFDbEQsT0FBTyxDQUFDLEtBQWdCLEVBQUUsRUFBRSxDQUFDLElBQUksUUFBUSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxlQUFlLENBQUMsTUFBOEI7UUFDbEQsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUNyQyxNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDO1FBQ25DLE1BQU0sZUFBZSxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBUSxDQUFDO1FBQ3pFLE1BQU0sU0FBUyxHQUFXLGVBQWUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsRUFBUyxDQUFDO0lBQ3ZELENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxjQUFjLENBQUMsT0FBZ0I7UUFDN0IsSUFBSSxDQUFDLElBQUEsaUJBQVEsRUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ3ZCLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzlCLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDakMsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzNCLE9BQU8sS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM3RCxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUN0RCxJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssS0FBSyxJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssTUFBTSxFQUFFLENBQUM7Z0JBQzlELE9BQ0UsV0FDRCxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUN0RCxDQUFDO1lBQ0QsT0FBTyxXQUFXLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzdDLENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUF2SEQsNEJBdUhDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuaW1wb3J0IHsgT2ZjVG9rZW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBpc1N0cmluZyB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQge1xuICBCaXRHb0Jhc2UsXG4gIENvaW5Db25zdHJ1Y3RvcixcbiAgU2lnblRyYW5zYWN0aW9uT3B0aW9ucyBhcyBCYXNlU2lnblRyYW5zYWN0aW9uT3B0aW9ucyxcbiAgU2lnbmVkVHJhbnNhY3Rpb24sXG4gIElUcmFuc2FjdGlvblJlY2lwaWVudCxcbn0gZnJvbSAnLi4vJztcbmltcG9ydCB7IGlzQm9sdDExSW52b2ljZSB9IGZyb20gJy4uL2xpZ2h0bmluZyc7XG5cbmltcG9ydCB7IE9mYyB9IGZyb20gJy4vb2ZjJztcblxuZXhwb3J0IGludGVyZmFjZSBTaWduVHJhbnNhY3Rpb25PcHRpb25zIGV4dGVuZHMgQmFzZVNpZ25UcmFuc2FjdGlvbk9wdGlvbnMge1xuICB0eFByZWJ1aWxkOiB7XG4gICAgcGF5bG9hZDogc3RyaW5nO1xuICB9O1xuICBwcnY6IHN0cmluZztcbn1cblxuZXhwb3J0IHsgT2ZjVG9rZW5Db25maWcgfTtcblxuY29uc3QgcHVibGljSWRSZWdleCA9IC9eW2EtZlxcZF17MzJ9JC9pO1xuXG5leHBvcnQgY2xhc3MgT2ZjVG9rZW4gZXh0ZW5kcyBPZmMge1xuICBwdWJsaWMgcmVhZG9ubHkgdG9rZW5Db25maWc6IE9mY1Rva2VuQ29uZmlnO1xuXG4gIGNvbnN0cnVjdG9yKGJpdGdvOiBCaXRHb0Jhc2UsIHRva2VuQ29uZmlnOiBPZmNUb2tlbkNvbmZpZykge1xuICAgIHN1cGVyKGJpdGdvKTtcbiAgICB0aGlzLnRva2VuQ29uZmlnID0gdG9rZW5Db25maWc7XG4gIH1cblxuICBnZXQgY29pbigpIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5jb2luO1xuICB9XG5cbiAgZ2V0IGRlY2ltYWxQbGFjZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcuZGVjaW1hbFBsYWNlcztcbiAgfVxuXG4gIGdldCBuYW1lKCkge1xuICAgIHJldHVybiB0aGlzLnRva2VuQ29uZmlnLm5hbWU7XG4gIH1cblxuICBnZXQgYmFja2luZ0NvaW4oKSB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcuYmFja2luZ0NvaW47XG4gIH1cblxuICBnZXQgaXNGaWF0KCkge1xuICAgIHJldHVybiB0aGlzLnRva2VuQ29uZmlnLmlzRmlhdDtcbiAgfVxuXG4gIGdldENoYWluKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGU7XG4gIH1cblxuICBnZXRGdWxsTmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG5cbiAgZ2V0QmFzZUZhY3RvcigpIHtcbiAgICByZXR1cm4gU3RyaW5nKE1hdGgucG93KDEwLCB0aGlzLmRlY2ltYWxQbGFjZXMpKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy50eXBlO1xuICB9XG5cbiAgY2hlY2tSZWNpcGllbnQocmVjaXBpZW50OiBJVHJhbnNhY3Rpb25SZWNpcGllbnQpOiB2b2lkIHtcbiAgICBpZiAoaXNCb2x0MTFJbnZvaWNlKHJlY2lwaWVudC5hZGRyZXNzKSkge1xuICAgICAgLy8gc2hvdWxkIHRocm93IGVycm9yIGlmIHRoaXMgaXNudCBiaXRjb2luIChtYWlubmV0IG9yIHRlc3RuZXQpXG4gICAgICBpZiAodGhpcy5iYWNraW5nQ29pbiAhPT0gJ2J0YycgJiYgdGhpcy5iYWNraW5nQ29pbiAhPT0gJ3RidGMnKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgaW52YWxpZCBhcmd1bWVudCAtIGxpZ2h0bmluZyBpbnZvaWNlIGlzIG9ubHkgc3VwcG9ydGVkIGZvciBiaXRjb2luYCk7XG4gICAgICB9XG5cbiAgICAgIC8vIGFtb3VudCBmb3IgYm9sdDExIGludm9pY2VzIG11c3QgYmUgYSBub24temVybyBiaWdpbnRcbiAgICAgIGxldCBhbW91bnQ6IGJpZ2ludDtcbiAgICAgIHRyeSB7XG4gICAgICAgIGFtb3VudCA9IEJpZ0ludChyZWNpcGllbnQuYW1vdW50KTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgIGBpbnZhbGlkIGFyZ3VtZW50ICR7cmVjaXBpZW50LmFtb3VudH0gZm9yIGFtb3VudCAtIGxpZ2h0bmluZyBpbnZvaWNlIGFtb3VudCBtdXN0IGJlIGEgbm9uLXplcm8gYmlnaW50YFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgaWYgKGFtb3VudCA+IDBuKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIHRocm93IG5ldyBFcnJvcihgaW52YWxpZCBhcmd1bWVudCBmb3IgYW1vdW50IC0gbGlnaHRuaW5nIGludm9pY2UgYW1vdW50IG11c3QgYmUgYSBub24temVybyBiaWdpbnRgKTtcbiAgICB9XG5cbiAgICBzdXBlci5jaGVja1JlY2lwaWVudChyZWNpcGllbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZsYWcgZm9yIHNlbmRpbmcgdmFsdWUgb2YgMFxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiBva2F5IHRvIHNlbmQgMCB2YWx1ZSwgZmFsc2Ugb3RoZXJ3aXNlXG4gICAqL1xuICB2YWx1ZWxlc3NUcmFuc2ZlckFsbG93ZWQoKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgc3RhdGljIGNyZWF0ZVRva2VuQ29uc3RydWN0b3IoY29uZmlnOiBPZmNUb2tlbkNvbmZpZyk6IENvaW5Db25zdHJ1Y3RvciB7XG4gICAgcmV0dXJuIChiaXRnbzogQml0R29CYXNlKSA9PiBuZXcgT2ZjVG9rZW4oYml0Z28sIGNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICogQXNzZW1ibGUga2V5Y2hhaW4gYW5kIGhhbGYtc2lnbiBwcmVidWlsdCB0cmFuc2FjdGlvblxuICAgKiBAcGFyYW0gcGFyYW1zXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPFNpZ25lZFRyYW5zYWN0aW9uPn1cbiAgICovXG4gIGFzeW5jIHNpZ25UcmFuc2FjdGlvbihwYXJhbXM6IFNpZ25UcmFuc2FjdGlvbk9wdGlvbnMpOiBQcm9taXNlPFNpZ25lZFRyYW5zYWN0aW9uPiB7XG4gICAgY29uc3QgdHhQcmVidWlsZCA9IHBhcmFtcy50eFByZWJ1aWxkO1xuICAgIGNvbnN0IHBheWxvYWQgPSB0eFByZWJ1aWxkLnBheWxvYWQ7XG4gICAgY29uc3Qgc2lnbmF0dXJlQnVmZmVyID0gKGF3YWl0IHRoaXMuc2lnbk1lc3NhZ2UocGFyYW1zLCBwYXlsb2FkKSkgYXMgYW55O1xuICAgIGNvbnN0IHNpZ25hdHVyZTogc3RyaW5nID0gc2lnbmF0dXJlQnVmZmVyLnRvU3RyaW5nKCdoZXgnKTtcbiAgICByZXR1cm4geyBoYWxmU2lnbmVkOiB7IHBheWxvYWQsIHNpZ25hdHVyZSB9IH0gYXMgYW55O1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIGFuIGFkZHJlc3MgaXMgdmFsaWQgZm9yIHRoaXMgb2ZjIHRva2VuLlxuICAgKlxuICAgKiBUaGVzZSBhZGRyZXNzZXMgYXJlIGVpdGhlciBiZy08cHVibGljaWQ+LCB3aGVyZSBwdWJsaWMgaWQgaXMgdGhlIGludGVybmFsIGFkZHJlc3MgdG8gc2VuZCB0byxcbiAgICogb3IgYXJlIGFuIGFkZHJlc3Mgd2hpY2ggaXMgdmFsaWQgb24gdGhlIGJhY2tpbmcgY29pbiBvZiB0aGlzIG9mYyB0b2tlbi5cbiAgICogQHBhcmFtIGFkZHJlc3MgYWRkcmVzcyB0byBjaGVjayBmb3IgdmFsaWRpdHlcbiAgICovXG4gIGlzVmFsaWRBZGRyZXNzKGFkZHJlc3M/OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBpZiAoIWlzU3RyaW5nKGFkZHJlc3MpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGlmIChhZGRyZXNzLnN0YXJ0c1dpdGgoJ2JnLScpKSB7XG4gICAgICBjb25zdCBwYXJ0cyA9IGFkZHJlc3Muc3BsaXQoJy0nKTtcbiAgICAgIGNvbnN0IGFjY291bnRJZCA9IHBhcnRzWzFdO1xuICAgICAgcmV0dXJuIHBhcnRzLmxlbmd0aCA9PT0gMiAmJiBwdWJsaWNJZFJlZ2V4LnRlc3QoYWNjb3VudElkKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgYmFja2luZ0NvaW4gPSB0aGlzLmJpdGdvLmNvaW4odGhpcy5iYWNraW5nQ29pbik7XG4gICAgICBpZiAodGhpcy5iYWNraW5nQ29pbiA9PT0gJ2J0YycgfHwgdGhpcy5iYWNraW5nQ29pbiA9PT0gJ3RidGMnKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgYmFja2luZ0NvaW4gYXMgdW5rbm93biBhcyB7IGlzVmFsaWRBZGRyZXNzKGFkZHJlc3M6IHN0cmluZywgcGFyYW1zOiB7IGFsbG93TGlnaHRuaW5nOiBib29sZWFuIH0pOiBib29sZWFuIH1cbiAgICAgICAgKS5pc1ZhbGlkQWRkcmVzcyhhZGRyZXNzLCB7IGFsbG93TGlnaHRuaW5nOiB0cnVlIH0pO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGJhY2tpbmdDb2luLmlzVmFsaWRBZGRyZXNzKGFkZHJlc3MpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -16,5 +16,6 @@ export { TssEcdsaStep1ReturnMessage, TssEcdsaStep2ReturnMessage } from './bitgo/
16
16
  export { SShare } from './bitgo/tss/ecdsa/types';
17
17
  import * as common from './common';
18
18
  export * from './units';
19
+ export * from './lightning';
19
20
  export { common };
20
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,OAAO,KAAK,UAAU,MAAM,eAAe,CAAC;AAC5C,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,CAAC;AAC3B,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC5G,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAC3F,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,OAAO,KAAK,UAAU,MAAM,eAAe,CAAC;AAC5C,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,CAAC;AAC3B,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC5G,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAC3F,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,CAAC"}
package/dist/src/index.js CHANGED
@@ -55,4 +55,5 @@ Object.defineProperty(exports, "verifyMPCWalletAddress", { enumerable: true, get
55
55
  const common = __importStar(require("./common"));
56
56
  exports.common = common;
57
57
  __exportStar(require("./units"), exports);
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsZ0RBQThCO0FBQzlCLDREQUE0QztBQUM1Qyx3Q0FBc0I7QUFDdEIsMENBQXdCO0FBQ3hCLGlEQUErQjtBQUMvQixpREFBaUM7QUFDakMseURBQTJEO0FBQ2xELDJGQURBLGtCQUFVLE9BQ0E7QUFDbkIseURBQTJEO0FBQ2xELDJGQURBLGtCQUFVLE9BQ0E7QUFDbkIsbUVBQXFFO0FBQzVELGdHQURBLDRCQUFlLE9BQ0E7QUFDeEIsNkVBQTRHO0FBQW5HLGtJQUFBLDJCQUEyQixPQUFBO0FBQUUsNkhBQUEsc0JBQXNCLE9BQUE7QUFJNUQsaURBQW1DO0FBRTFCLHdCQUFNO0FBRGYsMENBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY2NvdW50LWxpYic7XG5leHBvcnQgKiBhcyBhY2NvdW50TGliIGZyb20gJy4vYWNjb3VudC1saWInO1xuZXhwb3J0ICogZnJvbSAnLi9hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9iaXRnbyc7XG5leHBvcnQgKiBmcm9tICcuL2JpdGdvanNFcnJvcic7XG5leHBvcnQgKiBhcyBjb2lucyBmcm9tICcuL2NvaW5zJztcbmltcG9ydCB7IEVkZHNhVXRpbHMgfSBmcm9tICcuL2JpdGdvL3V0aWxzL3Rzcy9lZGRzYS9lZGRzYSc7XG5leHBvcnQgeyBFZGRzYVV0aWxzIH07XG5pbXBvcnQgeyBFY2RzYVV0aWxzIH0gZnJvbSAnLi9iaXRnby91dGlscy90c3MvZWNkc2EvZWNkc2EnO1xuZXhwb3J0IHsgRWNkc2FVdGlscyB9O1xuaW1wb3J0IHsgRWNkc2FNUEN2MlV0aWxzIH0gZnJvbSAnLi9iaXRnby91dGlscy90c3MvZWNkc2EvZWNkc2FNUEN2Mic7XG5leHBvcnQgeyBFY2RzYU1QQ3YyVXRpbHMgfTtcbmV4cG9ydCB7IHZlcmlmeUVkZHNhVHNzV2FsbGV0QWRkcmVzcywgdmVyaWZ5TVBDV2FsbGV0QWRkcmVzcyB9IGZyb20gJy4vYml0Z28vdXRpbHMvdHNzL2FkZHJlc3NWZXJpZmljYXRpb24nO1xuZXhwb3J0IHsgR1NoYXJlLCBTaWduU2hhcmUsIFlTaGFyZSB9IGZyb20gJy4vYWNjb3VudC1saWIvbXBjL3Rzcy9lZGRzYS90eXBlcyc7XG5leHBvcnQgeyBUc3NFY2RzYVN0ZXAxUmV0dXJuTWVzc2FnZSwgVHNzRWNkc2FTdGVwMlJldHVybk1lc3NhZ2UgfSBmcm9tICcuL2JpdGdvL3Rzcy90eXBlcyc7XG5leHBvcnQgeyBTU2hhcmUgfSBmcm9tICcuL2JpdGdvL3Rzcy9lY2RzYS90eXBlcyc7XG5pbXBvcnQgKiBhcyBjb21tb24gZnJvbSAnLi9jb21tb24nO1xuZXhwb3J0ICogZnJvbSAnLi91bml0cyc7XG5leHBvcnQgeyBjb21tb24gfTtcbiJdfQ==
58
+ __exportStar(require("./lightning"), exports);
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsZ0RBQThCO0FBQzlCLDREQUE0QztBQUM1Qyx3Q0FBc0I7QUFDdEIsMENBQXdCO0FBQ3hCLGlEQUErQjtBQUMvQixpREFBaUM7QUFDakMseURBQTJEO0FBQ2xELDJGQURBLGtCQUFVLE9BQ0E7QUFDbkIseURBQTJEO0FBQ2xELDJGQURBLGtCQUFVLE9BQ0E7QUFDbkIsbUVBQXFFO0FBQzVELGdHQURBLDRCQUFlLE9BQ0E7QUFDeEIsNkVBQTRHO0FBQW5HLGtJQUFBLDJCQUEyQixPQUFBO0FBQUUsNkhBQUEsc0JBQXNCLE9BQUE7QUFJNUQsaURBQW1DO0FBRzFCLHdCQUFNO0FBRmYsMENBQXdCO0FBQ3hCLDhDQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYWNjb3VudC1saWInO1xuZXhwb3J0ICogYXMgYWNjb3VudExpYiBmcm9tICcuL2FjY291bnQtbGliJztcbmV4cG9ydCAqIGZyb20gJy4vYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vYml0Z28nO1xuZXhwb3J0ICogZnJvbSAnLi9iaXRnb2pzRXJyb3InO1xuZXhwb3J0ICogYXMgY29pbnMgZnJvbSAnLi9jb2lucyc7XG5pbXBvcnQgeyBFZGRzYVV0aWxzIH0gZnJvbSAnLi9iaXRnby91dGlscy90c3MvZWRkc2EvZWRkc2EnO1xuZXhwb3J0IHsgRWRkc2FVdGlscyB9O1xuaW1wb3J0IHsgRWNkc2FVdGlscyB9IGZyb20gJy4vYml0Z28vdXRpbHMvdHNzL2VjZHNhL2VjZHNhJztcbmV4cG9ydCB7IEVjZHNhVXRpbHMgfTtcbmltcG9ydCB7IEVjZHNhTVBDdjJVdGlscyB9IGZyb20gJy4vYml0Z28vdXRpbHMvdHNzL2VjZHNhL2VjZHNhTVBDdjInO1xuZXhwb3J0IHsgRWNkc2FNUEN2MlV0aWxzIH07XG5leHBvcnQgeyB2ZXJpZnlFZGRzYVRzc1dhbGxldEFkZHJlc3MsIHZlcmlmeU1QQ1dhbGxldEFkZHJlc3MgfSBmcm9tICcuL2JpdGdvL3V0aWxzL3Rzcy9hZGRyZXNzVmVyaWZpY2F0aW9uJztcbmV4cG9ydCB7IEdTaGFyZSwgU2lnblNoYXJlLCBZU2hhcmUgfSBmcm9tICcuL2FjY291bnQtbGliL21wYy90c3MvZWRkc2EvdHlwZXMnO1xuZXhwb3J0IHsgVHNzRWNkc2FTdGVwMVJldHVybk1lc3NhZ2UsIFRzc0VjZHNhU3RlcDJSZXR1cm5NZXNzYWdlIH0gZnJvbSAnLi9iaXRnby90c3MvdHlwZXMnO1xuZXhwb3J0IHsgU1NoYXJlIH0gZnJvbSAnLi9iaXRnby90c3MvZWNkc2EvdHlwZXMnO1xuaW1wb3J0ICogYXMgY29tbW9uIGZyb20gJy4vY29tbW9uJztcbmV4cG9ydCAqIGZyb20gJy4vdW5pdHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWdodG5pbmcnO1xuZXhwb3J0IHsgY29tbW9uIH07XG4iXX0=
@@ -0,0 +1,2 @@
1
+ import 'should';
2
+ //# sourceMappingURL=util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../../test/unit/account-lib/mpc/util.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,CAAC"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ require("should");
7
+ const sinon_1 = __importDefault(require("sinon"));
8
+ const sdk_lib_mpc_1 = require("@bitgo/sdk-lib-mpc");
9
+ const util_1 = require("../../../../src/account-lib/mpc/util");
10
+ function makeMsg(from, rHex) {
11
+ return {
12
+ payload: Buffer.from(`payload-${from}`).toString('base64'),
13
+ from,
14
+ signatureR: rHex ? Buffer.from(rHex, 'hex').toString('base64') : undefined,
15
+ };
16
+ }
17
+ describe('combineRound4DklsDsgMessages', function () {
18
+ let stub;
19
+ beforeEach(function () {
20
+ stub = sinon_1.default.stub(sdk_lib_mpc_1.DklsUtils, 'combinePartialSignatures').returns({
21
+ R: new Uint8Array([1, 2, 3]),
22
+ S: new Uint8Array([4, 5, 6]),
23
+ });
24
+ });
25
+ afterEach(function () {
26
+ stub.restore();
27
+ });
28
+ it('throws when no message contains signatureR', function () {
29
+ const msgs = [makeMsg(0), makeMsg(1), makeMsg(2)];
30
+ (() => (0, util_1.combineRound4DklsDsgMessages)(msgs)).should.throw('None of the round 4 Dkls messages contain a Signature.R value.');
31
+ });
32
+ it('throws when parties provide different signatureR values', function () {
33
+ const msgs = [makeMsg(0, 'aabbcc'), makeMsg(1, 'ddeeff'), makeMsg(2, 'aabbcc')];
34
+ (() => (0, util_1.combineRound4DklsDsgMessages)(msgs)).should.throw('signatureR mismatch across parties — possible protocol attack');
35
+ });
36
+ it('succeeds when all parties agree on signatureR', function () {
37
+ const rHex = 'aabbccddeeff0011';
38
+ const msgs = [makeMsg(0, rHex), makeMsg(1, rHex), makeMsg(2, rHex)];
39
+ const result = (0, util_1.combineRound4DklsDsgMessages)(msgs);
40
+ result.should.have.property('R');
41
+ result.should.have.property('S');
42
+ stub.calledOnce.should.be.true();
43
+ stub.firstCall.args[1].should.equal(rHex);
44
+ });
45
+ it('succeeds when only one party provides signatureR', function () {
46
+ const rHex = 'cafebabe';
47
+ const msgs = [makeMsg(0, rHex), makeMsg(1), makeMsg(2)];
48
+ const result = (0, util_1.combineRound4DklsDsgMessages)(msgs);
49
+ result.should.have.property('R');
50
+ stub.calledOnce.should.be.true();
51
+ });
52
+ });
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Rlc3QvdW5pdC9hY2NvdW50LWxpYi9tcGMvdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGtCQUFnQjtBQUNoQixrREFBMEI7QUFDMUIsb0RBQTBEO0FBQzFELCtEQUFvRjtBQUVwRixTQUFTLE9BQU8sQ0FBQyxJQUFZLEVBQUUsSUFBYTtJQUMxQyxPQUFPO1FBQ0wsT0FBTyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUM7UUFDMUQsSUFBSTtRQUNKLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUztLQUMzRSxDQUFDO0FBQ0osQ0FBQztBQUVELFFBQVEsQ0FBQyw4QkFBOEIsRUFBRTtJQUN2QyxJQUFJLElBQXFCLENBQUM7SUFFMUIsVUFBVSxDQUFDO1FBQ1QsSUFBSSxHQUFHLGVBQUssQ0FBQyxJQUFJLENBQUMsdUJBQVMsRUFBRSwwQkFBMEIsQ0FBQyxDQUFDLE9BQU8sQ0FBQztZQUMvRCxDQUFDLEVBQUUsSUFBSSxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzVCLENBQUMsRUFBRSxJQUFJLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDN0IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFFSCxTQUFTLENBQUM7UUFDUixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakIsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsNENBQTRDLEVBQUU7UUFDL0MsTUFBTSxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xELENBQUMsR0FBRyxFQUFFLENBQUMsSUFBQSxtQ0FBNEIsRUFBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQ3JELGdFQUFnRSxDQUNqRSxDQUFDO0lBQ0osQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMseURBQXlELEVBQUU7UUFDNUQsTUFBTSxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBQSxtQ0FBNEIsRUFBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQ3JELCtEQUErRCxDQUNoRSxDQUFDO0lBQ0osQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsK0NBQStDLEVBQUU7UUFDbEQsTUFBTSxJQUFJLEdBQUcsa0JBQWtCLENBQUM7UUFDaEMsTUFBTSxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3BFLE1BQU0sTUFBTSxHQUFHLElBQUEsbUNBQTRCLEVBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QyxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxrREFBa0QsRUFBRTtRQUNyRCxNQUFNLElBQUksR0FBRyxVQUFVLENBQUM7UUFDeEIsTUFBTSxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4RCxNQUFNLE1BQU0sR0FBRyxJQUFBLG1DQUE0QixFQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDbkMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnc2hvdWxkJztcbmltcG9ydCBzaW5vbiBmcm9tICdzaW5vbic7XG5pbXBvcnQgeyBEa2xzVXRpbHMsIERrbHNUeXBlcyB9IGZyb20gJ0BiaXRnby9zZGstbGliLW1wYyc7XG5pbXBvcnQgeyBjb21iaW5lUm91bmQ0RGtsc0RzZ01lc3NhZ2VzIH0gZnJvbSAnLi4vLi4vLi4vLi4vc3JjL2FjY291bnQtbGliL21wYy91dGlsJztcblxuZnVuY3Rpb24gbWFrZU1zZyhmcm9tOiBudW1iZXIsIHJIZXg/OiBzdHJpbmcpOiBEa2xzVHlwZXMuU2VyaWFsaXplZEJyb2FkY2FzdE1lc3NhZ2Uge1xuICByZXR1cm4ge1xuICAgIHBheWxvYWQ6IEJ1ZmZlci5mcm9tKGBwYXlsb2FkLSR7ZnJvbX1gKS50b1N0cmluZygnYmFzZTY0JyksXG4gICAgZnJvbSxcbiAgICBzaWduYXR1cmVSOiBySGV4ID8gQnVmZmVyLmZyb20ockhleCwgJ2hleCcpLnRvU3RyaW5nKCdiYXNlNjQnKSA6IHVuZGVmaW5lZCxcbiAgfTtcbn1cblxuZGVzY3JpYmUoJ2NvbWJpbmVSb3VuZDREa2xzRHNnTWVzc2FnZXMnLCBmdW5jdGlvbiAoKSB7XG4gIGxldCBzdHViOiBzaW5vbi5TaW5vblN0dWI7XG5cbiAgYmVmb3JlRWFjaChmdW5jdGlvbiAoKSB7XG4gICAgc3R1YiA9IHNpbm9uLnN0dWIoRGtsc1V0aWxzLCAnY29tYmluZVBhcnRpYWxTaWduYXR1cmVzJykucmV0dXJucyh7XG4gICAgICBSOiBuZXcgVWludDhBcnJheShbMSwgMiwgM10pLFxuICAgICAgUzogbmV3IFVpbnQ4QXJyYXkoWzQsIDUsIDZdKSxcbiAgICB9KTtcbiAgfSk7XG5cbiAgYWZ0ZXJFYWNoKGZ1bmN0aW9uICgpIHtcbiAgICBzdHViLnJlc3RvcmUoKTtcbiAgfSk7XG5cbiAgaXQoJ3Rocm93cyB3aGVuIG5vIG1lc3NhZ2UgY29udGFpbnMgc2lnbmF0dXJlUicsIGZ1bmN0aW9uICgpIHtcbiAgICBjb25zdCBtc2dzID0gW21ha2VNc2coMCksIG1ha2VNc2coMSksIG1ha2VNc2coMildO1xuICAgICgoKSA9PiBjb21iaW5lUm91bmQ0RGtsc0RzZ01lc3NhZ2VzKG1zZ3MpKS5zaG91bGQudGhyb3coXG4gICAgICAnTm9uZSBvZiB0aGUgcm91bmQgNCBEa2xzIG1lc3NhZ2VzIGNvbnRhaW4gYSBTaWduYXR1cmUuUiB2YWx1ZS4nXG4gICAgKTtcbiAgfSk7XG5cbiAgaXQoJ3Rocm93cyB3aGVuIHBhcnRpZXMgcHJvdmlkZSBkaWZmZXJlbnQgc2lnbmF0dXJlUiB2YWx1ZXMnLCBmdW5jdGlvbiAoKSB7XG4gICAgY29uc3QgbXNncyA9IFttYWtlTXNnKDAsICdhYWJiY2MnKSwgbWFrZU1zZygxLCAnZGRlZWZmJyksIG1ha2VNc2coMiwgJ2FhYmJjYycpXTtcbiAgICAoKCkgPT4gY29tYmluZVJvdW5kNERrbHNEc2dNZXNzYWdlcyhtc2dzKSkuc2hvdWxkLnRocm93KFxuICAgICAgJ3NpZ25hdHVyZVIgbWlzbWF0Y2ggYWNyb3NzIHBhcnRpZXMg4oCUIHBvc3NpYmxlIHByb3RvY29sIGF0dGFjaydcbiAgICApO1xuICB9KTtcblxuICBpdCgnc3VjY2VlZHMgd2hlbiBhbGwgcGFydGllcyBhZ3JlZSBvbiBzaWduYXR1cmVSJywgZnVuY3Rpb24gKCkge1xuICAgIGNvbnN0IHJIZXggPSAnYWFiYmNjZGRlZWZmMDAxMSc7XG4gICAgY29uc3QgbXNncyA9IFttYWtlTXNnKDAsIHJIZXgpLCBtYWtlTXNnKDEsIHJIZXgpLCBtYWtlTXNnKDIsIHJIZXgpXTtcbiAgICBjb25zdCByZXN1bHQgPSBjb21iaW5lUm91bmQ0RGtsc0RzZ01lc3NhZ2VzKG1zZ3MpO1xuICAgIHJlc3VsdC5zaG91bGQuaGF2ZS5wcm9wZXJ0eSgnUicpO1xuICAgIHJlc3VsdC5zaG91bGQuaGF2ZS5wcm9wZXJ0eSgnUycpO1xuICAgIHN0dWIuY2FsbGVkT25jZS5zaG91bGQuYmUudHJ1ZSgpO1xuICAgIHN0dWIuZmlyc3RDYWxsLmFyZ3NbMV0uc2hvdWxkLmVxdWFsKHJIZXgpO1xuICB9KTtcblxuICBpdCgnc3VjY2VlZHMgd2hlbiBvbmx5IG9uZSBwYXJ0eSBwcm92aWRlcyBzaWduYXR1cmVSJywgZnVuY3Rpb24gKCkge1xuICAgIGNvbnN0IHJIZXggPSAnY2FmZWJhYmUnO1xuICAgIGNvbnN0IG1zZ3MgPSBbbWFrZU1zZygwLCBySGV4KSwgbWFrZU1zZygxKSwgbWFrZU1zZygyKV07XG4gICAgY29uc3QgcmVzdWx0ID0gY29tYmluZVJvdW5kNERrbHNEc2dNZXNzYWdlcyhtc2dzKTtcbiAgICByZXN1bHQuc2hvdWxkLmhhdmUucHJvcGVydHkoJ1InKTtcbiAgICBzdHViLmNhbGxlZE9uY2Uuc2hvdWxkLmJlLnRydWUoKTtcbiAgfSk7XG59KTtcbiJdfQ==