@bitgo-beta/sdk-core 8.2.1-beta.1189 → 8.2.1-beta.1190

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.
@@ -19,11 +19,13 @@ async function bulkSignAccountBasedMessagesWithProvider(provider, wallet, messag
19
19
  }
20
20
  // Extract wallet constructor params
21
21
  const { bitgo, baseCoin, _wallet: walletData } = wallet;
22
- // Process all messages in parallel, each with a new Wallet instance
23
- const results = await Promise.all(allMessages.map(async (messageInfo) => {
22
+ // Process all messages sequentially, each with a new Wallet instance
23
+ const results = [];
24
+ for (const messageInfo of allMessages) {
24
25
  const newWallet = new wallet_1.Wallet(bitgo, baseCoin, walletData);
25
- return signOrBuildMessage(newWallet, messageInfo, messageStandardType, walletPassphrase);
26
- }));
26
+ const result = await signOrBuildMessage(newWallet, messageInfo, messageStandardType, walletPassphrase);
27
+ results.push(result);
28
+ }
27
29
  processResults(results, txRequests, failedAddresses);
28
30
  return { failedAddresses, txRequests };
29
31
  }
@@ -67,4 +69,4 @@ function processResults(results, txRequests, failedAddresses) {
67
69
  }
68
70
  }
69
71
  }
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbkFjY291bnRCYXNlZE1pZG5pZ2h0Q2xhaW1NZXNzYWdlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby93YWxsZXRVdGlsL3NpZ25BY2NvdW50QmFzZWRNaWRuaWdodENsYWltTWVzc2FnZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFVQSw4RkFRQztBQWxCRCxzQ0FBNEM7QUFFNUMsdUVBQW9FO0FBUTdELEtBQUssVUFBVSx5Q0FBeUMsQ0FDN0QsTUFBZSxFQUNmLG1CQUF3QyxFQUN4QyxrQkFBMEIsRUFDMUIsZ0JBQXlCO0lBRXpCLE1BQU0sUUFBUSxHQUFHLElBQUksaURBQXVCLENBQUMsTUFBTSxFQUFFLGtCQUFrQixDQUFDLENBQUM7SUFDekUsT0FBTyx3Q0FBd0MsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixDQUFDLENBQUM7QUFDM0csQ0FBQztBQUVELEtBQUssVUFBVSx3Q0FBd0MsQ0FDckQsUUFBMEIsRUFDMUIsTUFBZSxFQUNmLG1CQUF3QyxFQUN4QyxnQkFBeUI7SUFFekIsTUFBTSxlQUFlLEdBQWEsRUFBRSxDQUFDO0lBQ3JDLE1BQU0sVUFBVSxHQUE4QixFQUFFLENBQUM7SUFFakQsdURBQXVEO0lBQ3ZELElBQUksV0FBVyxHQUFrQixFQUFFLENBQUM7SUFDcEMsSUFBSSxRQUFRLEdBQWtCLE1BQU0sUUFBUSxDQUFDLDZCQUE2QixFQUFFLENBQUM7SUFDN0UsT0FBTyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQzNCLFdBQVcsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzNDLFFBQVEsR0FBRyxNQUFNLFFBQVEsQ0FBQyw2QkFBNkIsRUFBRSxDQUFDO0lBQzVELENBQUM7SUFFRCxvQ0FBb0M7SUFDcEMsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLE1BQWdCLENBQUM7SUFFbEUsb0VBQW9FO0lBQ3BFLE1BQU0sT0FBTyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDL0IsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsV0FBVyxFQUFFLEVBQUU7UUFDcEMsTUFBTSxTQUFTLEdBQUcsSUFBSSxlQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUMxRCxPQUFPLGtCQUFrQixDQUFDLFNBQVMsRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUMzRixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0YsY0FBYyxDQUFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDckQsT0FBTyxFQUFFLGVBQWUsRUFBRSxVQUFVLEVBQUUsQ0FBQztBQUN6QyxDQUFDO0FBRUQsS0FBSyxVQUFVLGtCQUFrQixDQUMvQixNQUFlLEVBQ2YsV0FBd0IsRUFDeEIsbUJBQXdDLEVBQ3hDLGdCQUF5QjtJQUV6QixJQUFJLFdBQW1CLENBQUM7SUFDeEIsSUFBSSxnQkFBZ0IsS0FBSyxTQUFTLEVBQUUsQ0FBQztRQUNuQyxvQ0FBb0M7UUFDcEMsTUFBTSxhQUFhLEdBQUcsTUFBTSxNQUFNLENBQUMsV0FBVyxDQUFDO1lBQzdDLE9BQU8sRUFBRTtnQkFDUCxVQUFVLEVBQUUsV0FBVyxDQUFDLE9BQU87Z0JBQy9CLG1CQUFtQjtnQkFDbkIsYUFBYSxFQUFFLFdBQVcsQ0FBQyxPQUFPO2FBQ25DO1lBQ0QsZ0JBQWdCO1NBQ2pCLENBQUMsQ0FBQztRQUNILFdBQVcsR0FBRyxhQUFhLENBQUMsV0FBVyxDQUFDO0lBQzFDLENBQUM7U0FBTSxDQUFDO1FBQ04saUNBQWlDO1FBQ2pDLE1BQU0sU0FBUyxHQUFHLE1BQU0sTUFBTSxDQUFDLHVCQUF1QixDQUFDO1lBQ3JELE9BQU8sRUFBRTtnQkFDUCxVQUFVLEVBQUUsV0FBVyxDQUFDLE9BQU87Z0JBQy9CLG1CQUFtQjtnQkFDbkIsYUFBYSxFQUFFLFdBQVcsQ0FBQyxPQUFPO2FBQ25DO1NBQ0YsQ0FBQyxDQUFDO1FBQ0gsV0FBVyxHQUFHLFNBQVMsQ0FBQyxXQUFXLENBQUM7SUFDdEMsQ0FBQztJQUNELE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxXQUFXLENBQUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxDQUFDO0FBQ3RFLENBQUM7QUFFRCxTQUFTLGNBQWMsQ0FDckIsT0FBc0UsRUFDdEUsVUFBcUMsRUFDckMsZUFBeUI7SUFFekIsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUM3QixJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNuQixVQUFVLENBQUMsSUFBSSxDQUFDO2dCQUNkLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTztnQkFDdkIsV0FBVyxFQUFFLE1BQU0sQ0FBQyxXQUFXO2FBQ2hDLENBQUMsQ0FBQztRQUNMLENBQUM7YUFBTSxDQUFDO1lBQ04sZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkMsQ0FBQztJQUNILENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgV2FsbGV0LCBJV2FsbGV0IH0gZnJvbSAnLi4vd2FsbGV0JztcbmltcG9ydCB7IE1lc3NhZ2VTdGFuZGFyZFR5cGUgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBNaWRuaWdodE1lc3NhZ2VQcm92aWRlciB9IGZyb20gJy4vbWlkbmlnaHRNZXNzYWdlUHJvdmlkZXInO1xuaW1wb3J0IHsgSU1lc3NhZ2VQcm92aWRlciwgTWVzc2FnZUluZm8gfSBmcm9tICcuL2lNZXNzYWdlUHJvdmlkZXInO1xuXG50eXBlIEJ1bGtBY2NvdW50QmFzZWRNZXNzYWdlUmVzcG9uc2UgPSB7XG4gIHR4UmVxdWVzdHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+W107XG4gIGZhaWxlZEFkZHJlc3Nlczogc3RyaW5nW107XG59O1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYnVsa1NpZ25BY2NvdW50QmFzZWRNaWRuaWdodENsYWltTWVzc2FnZXMoXG4gIHdhbGxldDogSVdhbGxldCxcbiAgbWVzc2FnZVN0YW5kYXJkVHlwZTogTWVzc2FnZVN0YW5kYXJkVHlwZSxcbiAgZGVzdGluYXRpb25BZGRyZXNzOiBzdHJpbmcsXG4gIHdhbGxldFBhc3NwaHJhc2U/OiBzdHJpbmdcbik6IFByb21pc2U8QnVsa0FjY291bnRCYXNlZE1lc3NhZ2VSZXNwb25zZT4ge1xuICBjb25zdCBwcm92aWRlciA9IG5ldyBNaWRuaWdodE1lc3NhZ2VQcm92aWRlcih3YWxsZXQsIGRlc3RpbmF0aW9uQWRkcmVzcyk7XG4gIHJldHVybiBidWxrU2lnbkFjY291bnRCYXNlZE1lc3NhZ2VzV2l0aFByb3ZpZGVyKHByb3ZpZGVyLCB3YWxsZXQsIG1lc3NhZ2VTdGFuZGFyZFR5cGUsIHdhbGxldFBhc3NwaHJhc2UpO1xufVxuXG5hc3luYyBmdW5jdGlvbiBidWxrU2lnbkFjY291bnRCYXNlZE1lc3NhZ2VzV2l0aFByb3ZpZGVyKFxuICBwcm92aWRlcjogSU1lc3NhZ2VQcm92aWRlcixcbiAgd2FsbGV0OiBJV2FsbGV0LFxuICBtZXNzYWdlU3RhbmRhcmRUeXBlOiBNZXNzYWdlU3RhbmRhcmRUeXBlLFxuICB3YWxsZXRQYXNzcGhyYXNlPzogc3RyaW5nXG4pOiBQcm9taXNlPEJ1bGtBY2NvdW50QmFzZWRNZXNzYWdlUmVzcG9uc2U+IHtcbiAgY29uc3QgZmFpbGVkQWRkcmVzc2VzOiBzdHJpbmdbXSA9IFtdO1xuICBjb25zdCB0eFJlcXVlc3RzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPltdID0gW107XG5cbiAgLy8gR2F0aGVyIGFsbCBtZXNzYWdlcyB0byBwcm9jZXNzIChmbGF0dGVuIGFsbCBiYXRjaGVzKVxuICBsZXQgYWxsTWVzc2FnZXM6IE1lc3NhZ2VJbmZvW10gPSBbXTtcbiAgbGV0IG1lc3NhZ2VzOiBNZXNzYWdlSW5mb1tdID0gYXdhaXQgcHJvdmlkZXIuZ2V0TWVzc2FnZXNBbmRBZGRyZXNzZXNUb1NpZ24oKTtcbiAgd2hpbGUgKG1lc3NhZ2VzLmxlbmd0aCA+IDApIHtcbiAgICBhbGxNZXNzYWdlcyA9IGFsbE1lc3NhZ2VzLmNvbmNhdChtZXNzYWdlcyk7XG4gICAgbWVzc2FnZXMgPSBhd2FpdCBwcm92aWRlci5nZXRNZXNzYWdlc0FuZEFkZHJlc3Nlc1RvU2lnbigpO1xuICB9XG5cbiAgLy8gRXh0cmFjdCB3YWxsZXQgY29uc3RydWN0b3IgcGFyYW1zXG4gIGNvbnN0IHsgYml0Z28sIGJhc2VDb2luLCBfd2FsbGV0OiB3YWxsZXREYXRhIH0gPSB3YWxsZXQgYXMgV2FsbGV0O1xuXG4gIC8vIFByb2Nlc3MgYWxsIG1lc3NhZ2VzIGluIHBhcmFsbGVsLCBlYWNoIHdpdGggYSBuZXcgV2FsbGV0IGluc3RhbmNlXG4gIGNvbnN0IHJlc3VsdHMgPSBhd2FpdCBQcm9taXNlLmFsbChcbiAgICBhbGxNZXNzYWdlcy5tYXAoYXN5bmMgKG1lc3NhZ2VJbmZvKSA9PiB7XG4gICAgICBjb25zdCBuZXdXYWxsZXQgPSBuZXcgV2FsbGV0KGJpdGdvLCBiYXNlQ29pbiwgd2FsbGV0RGF0YSk7XG4gICAgICByZXR1cm4gc2lnbk9yQnVpbGRNZXNzYWdlKG5ld1dhbGxldCwgbWVzc2FnZUluZm8sIG1lc3NhZ2VTdGFuZGFyZFR5cGUsIHdhbGxldFBhc3NwaHJhc2UpO1xuICAgIH0pXG4gICk7XG4gIHByb2Nlc3NSZXN1bHRzKHJlc3VsdHMsIHR4UmVxdWVzdHMsIGZhaWxlZEFkZHJlc3Nlcyk7XG4gIHJldHVybiB7IGZhaWxlZEFkZHJlc3NlcywgdHhSZXF1ZXN0cyB9O1xufVxuXG5hc3luYyBmdW5jdGlvbiBzaWduT3JCdWlsZE1lc3NhZ2UoXG4gIHdhbGxldDogSVdhbGxldCxcbiAgbWVzc2FnZUluZm86IE1lc3NhZ2VJbmZvLFxuICBtZXNzYWdlU3RhbmRhcmRUeXBlOiBNZXNzYWdlU3RhbmRhcmRUeXBlLFxuICB3YWxsZXRQYXNzcGhyYXNlPzogc3RyaW5nXG4pOiBQcm9taXNlPHsgc3VjY2VzczogYm9vbGVhbjsgYWRkcmVzczogc3RyaW5nOyB0eFJlcXVlc3RJZD86IHN0cmluZyB9PiB7XG4gIGxldCB0eFJlcXVlc3RJZDogc3RyaW5nO1xuICBpZiAod2FsbGV0UGFzc3BocmFzZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgLy8gU2lnbiB0aGUgbWVzc2FnZXMgd2l0aCB0aGUgd2FsbGV0XG4gICAgY29uc3Qgc2lnbmVkTWVzc2FnZSA9IGF3YWl0IHdhbGxldC5zaWduTWVzc2FnZSh7XG4gICAgICBtZXNzYWdlOiB7XG4gICAgICAgIG1lc3NhZ2VSYXc6IG1lc3NhZ2VJbmZvLm1lc3NhZ2UsXG4gICAgICAgIG1lc3NhZ2VTdGFuZGFyZFR5cGUsXG4gICAgICAgIHNpZ25lckFkZHJlc3M6IG1lc3NhZ2VJbmZvLmFkZHJlc3MsXG4gICAgICB9LFxuICAgICAgd2FsbGV0UGFzc3BocmFzZSxcbiAgICB9KTtcbiAgICB0eFJlcXVlc3RJZCA9IHNpZ25lZE1lc3NhZ2UudHhSZXF1ZXN0SWQ7XG4gIH0gZWxzZSB7XG4gICAgLy8gQnVpbGQgdGhlIHNpZ24gbWVzc2FnZSByZXF1ZXN0XG4gICAgY29uc3QgdHhSZXF1ZXN0ID0gYXdhaXQgd2FsbGV0LmJ1aWxkU2lnbk1lc3NhZ2VSZXF1ZXN0KHtcbiAgICAgIG1lc3NhZ2U6IHtcbiAgICAgICAgbWVzc2FnZVJhdzogbWVzc2FnZUluZm8ubWVzc2FnZSxcbiAgICAgICAgbWVzc2FnZVN0YW5kYXJkVHlwZSxcbiAgICAgICAgc2lnbmVyQWRkcmVzczogbWVzc2FnZUluZm8uYWRkcmVzcyxcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgdHhSZXF1ZXN0SWQgPSB0eFJlcXVlc3QudHhSZXF1ZXN0SWQ7XG4gIH1cbiAgcmV0dXJuIHsgc3VjY2VzczogdHJ1ZSwgYWRkcmVzczogbWVzc2FnZUluZm8uYWRkcmVzcywgdHhSZXF1ZXN0SWQgfTtcbn1cblxuZnVuY3Rpb24gcHJvY2Vzc1Jlc3VsdHMoXG4gIHJlc3VsdHM6IHsgc3VjY2VzczogYm9vbGVhbjsgYWRkcmVzczogc3RyaW5nOyB0eFJlcXVlc3RJZD86IHN0cmluZyB9W10sXG4gIHR4UmVxdWVzdHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+W10sXG4gIGZhaWxlZEFkZHJlc3Nlczogc3RyaW5nW11cbik6IHZvaWQge1xuICBmb3IgKGNvbnN0IHJlc3VsdCBvZiByZXN1bHRzKSB7XG4gICAgaWYgKHJlc3VsdC5zdWNjZXNzKSB7XG4gICAgICB0eFJlcXVlc3RzLnB1c2goe1xuICAgICAgICBhZGRyZXNzOiByZXN1bHQuYWRkcmVzcyxcbiAgICAgICAgdHhSZXF1ZXN0SWQ6IHJlc3VsdC50eFJlcXVlc3RJZCxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBmYWlsZWRBZGRyZXNzZXMucHVzaChyZXN1bHQuYWRkcmVzcyk7XG4gICAgfVxuICB9XG59XG4iXX0=
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbkFjY291bnRCYXNlZE1pZG5pZ2h0Q2xhaW1NZXNzYWdlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby93YWxsZXRVdGlsL3NpZ25BY2NvdW50QmFzZWRNaWRuaWdodENsYWltTWVzc2FnZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFVQSw4RkFRQztBQWxCRCxzQ0FBNEM7QUFFNUMsdUVBQW9FO0FBUTdELEtBQUssVUFBVSx5Q0FBeUMsQ0FDN0QsTUFBZSxFQUNmLG1CQUF3QyxFQUN4QyxrQkFBMEIsRUFDMUIsZ0JBQXlCO0lBRXpCLE1BQU0sUUFBUSxHQUFHLElBQUksaURBQXVCLENBQUMsTUFBTSxFQUFFLGtCQUFrQixDQUFDLENBQUM7SUFDekUsT0FBTyx3Q0FBd0MsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixDQUFDLENBQUM7QUFDM0csQ0FBQztBQUVELEtBQUssVUFBVSx3Q0FBd0MsQ0FDckQsUUFBMEIsRUFDMUIsTUFBZSxFQUNmLG1CQUF3QyxFQUN4QyxnQkFBeUI7SUFFekIsTUFBTSxlQUFlLEdBQWEsRUFBRSxDQUFDO0lBQ3JDLE1BQU0sVUFBVSxHQUE4QixFQUFFLENBQUM7SUFFakQsdURBQXVEO0lBQ3ZELElBQUksV0FBVyxHQUFrQixFQUFFLENBQUM7SUFDcEMsSUFBSSxRQUFRLEdBQWtCLE1BQU0sUUFBUSxDQUFDLDZCQUE2QixFQUFFLENBQUM7SUFDN0UsT0FBTyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQzNCLFdBQVcsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzNDLFFBQVEsR0FBRyxNQUFNLFFBQVEsQ0FBQyw2QkFBNkIsRUFBRSxDQUFDO0lBQzVELENBQUM7SUFFRCxvQ0FBb0M7SUFDcEMsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLE1BQWdCLENBQUM7SUFFbEUscUVBQXFFO0lBQ3JFLE1BQU0sT0FBTyxHQUFrRSxFQUFFLENBQUM7SUFDbEYsS0FBSyxNQUFNLFdBQVcsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUN0QyxNQUFNLFNBQVMsR0FBRyxJQUFJLGVBQU0sQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQzFELE1BQU0sTUFBTSxHQUFHLE1BQU0sa0JBQWtCLENBQUMsU0FBUyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3ZHLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUNELGNBQWMsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLENBQUM7QUFDekMsQ0FBQztBQUVELEtBQUssVUFBVSxrQkFBa0IsQ0FDL0IsTUFBZSxFQUNmLFdBQXdCLEVBQ3hCLG1CQUF3QyxFQUN4QyxnQkFBeUI7SUFFekIsSUFBSSxXQUFtQixDQUFDO0lBQ3hCLElBQUksZ0JBQWdCLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDbkMsb0NBQW9DO1FBQ3BDLE1BQU0sYUFBYSxHQUFHLE1BQU0sTUFBTSxDQUFDLFdBQVcsQ0FBQztZQUM3QyxPQUFPLEVBQUU7Z0JBQ1AsVUFBVSxFQUFFLFdBQVcsQ0FBQyxPQUFPO2dCQUMvQixtQkFBbUI7Z0JBQ25CLGFBQWEsRUFBRSxXQUFXLENBQUMsT0FBTzthQUNuQztZQUNELGdCQUFnQjtTQUNqQixDQUFDLENBQUM7UUFDSCxXQUFXLEdBQUcsYUFBYSxDQUFDLFdBQVcsQ0FBQztJQUMxQyxDQUFDO1NBQU0sQ0FBQztRQUNOLGlDQUFpQztRQUNqQyxNQUFNLFNBQVMsR0FBRyxNQUFNLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQztZQUNyRCxPQUFPLEVBQUU7Z0JBQ1AsVUFBVSxFQUFFLFdBQVcsQ0FBQyxPQUFPO2dCQUMvQixtQkFBbUI7Z0JBQ25CLGFBQWEsRUFBRSxXQUFXLENBQUMsT0FBTzthQUNuQztTQUNGLENBQUMsQ0FBQztRQUNILFdBQVcsR0FBRyxTQUFTLENBQUMsV0FBVyxDQUFDO0lBQ3RDLENBQUM7SUFDRCxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsV0FBVyxDQUFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsQ0FBQztBQUN0RSxDQUFDO0FBRUQsU0FBUyxjQUFjLENBQ3JCLE9BQXNFLEVBQ3RFLFVBQXFDLEVBQ3JDLGVBQXlCO0lBRXpCLEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFLENBQUM7UUFDN0IsSUFBSSxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbkIsVUFBVSxDQUFDLElBQUksQ0FBQztnQkFDZCxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU87Z0JBQ3ZCLFdBQVcsRUFBRSxNQUFNLENBQUMsV0FBVzthQUNoQyxDQUFDLENBQUM7UUFDTCxDQUFDO2FBQU0sQ0FBQztZQUNOLGVBQWUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7SUFDSCxDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFdhbGxldCwgSVdhbGxldCB9IGZyb20gJy4uL3dhbGxldCc7XG5pbXBvcnQgeyBNZXNzYWdlU3RhbmRhcmRUeXBlIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgTWlkbmlnaHRNZXNzYWdlUHJvdmlkZXIgfSBmcm9tICcuL21pZG5pZ2h0TWVzc2FnZVByb3ZpZGVyJztcbmltcG9ydCB7IElNZXNzYWdlUHJvdmlkZXIsIE1lc3NhZ2VJbmZvIH0gZnJvbSAnLi9pTWVzc2FnZVByb3ZpZGVyJztcblxudHlwZSBCdWxrQWNjb3VudEJhc2VkTWVzc2FnZVJlc3BvbnNlID0ge1xuICB0eFJlcXVlc3RzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPltdO1xuICBmYWlsZWRBZGRyZXNzZXM6IHN0cmluZ1tdO1xufTtcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGJ1bGtTaWduQWNjb3VudEJhc2VkTWlkbmlnaHRDbGFpbU1lc3NhZ2VzKFxuICB3YWxsZXQ6IElXYWxsZXQsXG4gIG1lc3NhZ2VTdGFuZGFyZFR5cGU6IE1lc3NhZ2VTdGFuZGFyZFR5cGUsXG4gIGRlc3RpbmF0aW9uQWRkcmVzczogc3RyaW5nLFxuICB3YWxsZXRQYXNzcGhyYXNlPzogc3RyaW5nXG4pOiBQcm9taXNlPEJ1bGtBY2NvdW50QmFzZWRNZXNzYWdlUmVzcG9uc2U+IHtcbiAgY29uc3QgcHJvdmlkZXIgPSBuZXcgTWlkbmlnaHRNZXNzYWdlUHJvdmlkZXIod2FsbGV0LCBkZXN0aW5hdGlvbkFkZHJlc3MpO1xuICByZXR1cm4gYnVsa1NpZ25BY2NvdW50QmFzZWRNZXNzYWdlc1dpdGhQcm92aWRlcihwcm92aWRlciwgd2FsbGV0LCBtZXNzYWdlU3RhbmRhcmRUeXBlLCB3YWxsZXRQYXNzcGhyYXNlKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gYnVsa1NpZ25BY2NvdW50QmFzZWRNZXNzYWdlc1dpdGhQcm92aWRlcihcbiAgcHJvdmlkZXI6IElNZXNzYWdlUHJvdmlkZXIsXG4gIHdhbGxldDogSVdhbGxldCxcbiAgbWVzc2FnZVN0YW5kYXJkVHlwZTogTWVzc2FnZVN0YW5kYXJkVHlwZSxcbiAgd2FsbGV0UGFzc3BocmFzZT86IHN0cmluZ1xuKTogUHJvbWlzZTxCdWxrQWNjb3VudEJhc2VkTWVzc2FnZVJlc3BvbnNlPiB7XG4gIGNvbnN0IGZhaWxlZEFkZHJlc3Nlczogc3RyaW5nW10gPSBbXTtcbiAgY29uc3QgdHhSZXF1ZXN0czogUmVjb3JkPHN0cmluZywgdW5rbm93bj5bXSA9IFtdO1xuXG4gIC8vIEdhdGhlciBhbGwgbWVzc2FnZXMgdG8gcHJvY2VzcyAoZmxhdHRlbiBhbGwgYmF0Y2hlcylcbiAgbGV0IGFsbE1lc3NhZ2VzOiBNZXNzYWdlSW5mb1tdID0gW107XG4gIGxldCBtZXNzYWdlczogTWVzc2FnZUluZm9bXSA9IGF3YWl0IHByb3ZpZGVyLmdldE1lc3NhZ2VzQW5kQWRkcmVzc2VzVG9TaWduKCk7XG4gIHdoaWxlIChtZXNzYWdlcy5sZW5ndGggPiAwKSB7XG4gICAgYWxsTWVzc2FnZXMgPSBhbGxNZXNzYWdlcy5jb25jYXQobWVzc2FnZXMpO1xuICAgIG1lc3NhZ2VzID0gYXdhaXQgcHJvdmlkZXIuZ2V0TWVzc2FnZXNBbmRBZGRyZXNzZXNUb1NpZ24oKTtcbiAgfVxuXG4gIC8vIEV4dHJhY3Qgd2FsbGV0IGNvbnN0cnVjdG9yIHBhcmFtc1xuICBjb25zdCB7IGJpdGdvLCBiYXNlQ29pbiwgX3dhbGxldDogd2FsbGV0RGF0YSB9ID0gd2FsbGV0IGFzIFdhbGxldDtcblxuICAvLyBQcm9jZXNzIGFsbCBtZXNzYWdlcyBzZXF1ZW50aWFsbHksIGVhY2ggd2l0aCBhIG5ldyBXYWxsZXQgaW5zdGFuY2VcbiAgY29uc3QgcmVzdWx0czogeyBzdWNjZXNzOiBib29sZWFuOyBhZGRyZXNzOiBzdHJpbmc7IHR4UmVxdWVzdElkPzogc3RyaW5nIH1bXSA9IFtdO1xuICBmb3IgKGNvbnN0IG1lc3NhZ2VJbmZvIG9mIGFsbE1lc3NhZ2VzKSB7XG4gICAgY29uc3QgbmV3V2FsbGV0ID0gbmV3IFdhbGxldChiaXRnbywgYmFzZUNvaW4sIHdhbGxldERhdGEpO1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHNpZ25PckJ1aWxkTWVzc2FnZShuZXdXYWxsZXQsIG1lc3NhZ2VJbmZvLCBtZXNzYWdlU3RhbmRhcmRUeXBlLCB3YWxsZXRQYXNzcGhyYXNlKTtcbiAgICByZXN1bHRzLnB1c2gocmVzdWx0KTtcbiAgfVxuICBwcm9jZXNzUmVzdWx0cyhyZXN1bHRzLCB0eFJlcXVlc3RzLCBmYWlsZWRBZGRyZXNzZXMpO1xuICByZXR1cm4geyBmYWlsZWRBZGRyZXNzZXMsIHR4UmVxdWVzdHMgfTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gc2lnbk9yQnVpbGRNZXNzYWdlKFxuICB3YWxsZXQ6IElXYWxsZXQsXG4gIG1lc3NhZ2VJbmZvOiBNZXNzYWdlSW5mbyxcbiAgbWVzc2FnZVN0YW5kYXJkVHlwZTogTWVzc2FnZVN0YW5kYXJkVHlwZSxcbiAgd2FsbGV0UGFzc3BocmFzZT86IHN0cmluZ1xuKTogUHJvbWlzZTx7IHN1Y2Nlc3M6IGJvb2xlYW47IGFkZHJlc3M6IHN0cmluZzsgdHhSZXF1ZXN0SWQ/OiBzdHJpbmcgfT4ge1xuICBsZXQgdHhSZXF1ZXN0SWQ6IHN0cmluZztcbiAgaWYgKHdhbGxldFBhc3NwaHJhc2UgIT09IHVuZGVmaW5lZCkge1xuICAgIC8vIFNpZ24gdGhlIG1lc3NhZ2VzIHdpdGggdGhlIHdhbGxldFxuICAgIGNvbnN0IHNpZ25lZE1lc3NhZ2UgPSBhd2FpdCB3YWxsZXQuc2lnbk1lc3NhZ2Uoe1xuICAgICAgbWVzc2FnZToge1xuICAgICAgICBtZXNzYWdlUmF3OiBtZXNzYWdlSW5mby5tZXNzYWdlLFxuICAgICAgICBtZXNzYWdlU3RhbmRhcmRUeXBlLFxuICAgICAgICBzaWduZXJBZGRyZXNzOiBtZXNzYWdlSW5mby5hZGRyZXNzLFxuICAgICAgfSxcbiAgICAgIHdhbGxldFBhc3NwaHJhc2UsXG4gICAgfSk7XG4gICAgdHhSZXF1ZXN0SWQgPSBzaWduZWRNZXNzYWdlLnR4UmVxdWVzdElkO1xuICB9IGVsc2Uge1xuICAgIC8vIEJ1aWxkIHRoZSBzaWduIG1lc3NhZ2UgcmVxdWVzdFxuICAgIGNvbnN0IHR4UmVxdWVzdCA9IGF3YWl0IHdhbGxldC5idWlsZFNpZ25NZXNzYWdlUmVxdWVzdCh7XG4gICAgICBtZXNzYWdlOiB7XG4gICAgICAgIG1lc3NhZ2VSYXc6IG1lc3NhZ2VJbmZvLm1lc3NhZ2UsXG4gICAgICAgIG1lc3NhZ2VTdGFuZGFyZFR5cGUsXG4gICAgICAgIHNpZ25lckFkZHJlc3M6IG1lc3NhZ2VJbmZvLmFkZHJlc3MsXG4gICAgICB9LFxuICAgIH0pO1xuICAgIHR4UmVxdWVzdElkID0gdHhSZXF1ZXN0LnR4UmVxdWVzdElkO1xuICB9XG4gIHJldHVybiB7IHN1Y2Nlc3M6IHRydWUsIGFkZHJlc3M6IG1lc3NhZ2VJbmZvLmFkZHJlc3MsIHR4UmVxdWVzdElkIH07XG59XG5cbmZ1bmN0aW9uIHByb2Nlc3NSZXN1bHRzKFxuICByZXN1bHRzOiB7IHN1Y2Nlc3M6IGJvb2xlYW47IGFkZHJlc3M6IHN0cmluZzsgdHhSZXF1ZXN0SWQ/OiBzdHJpbmcgfVtdLFxuICB0eFJlcXVlc3RzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPltdLFxuICBmYWlsZWRBZGRyZXNzZXM6IHN0cmluZ1tdXG4pOiB2b2lkIHtcbiAgZm9yIChjb25zdCByZXN1bHQgb2YgcmVzdWx0cykge1xuICAgIGlmIChyZXN1bHQuc3VjY2Vzcykge1xuICAgICAgdHhSZXF1ZXN0cy5wdXNoKHtcbiAgICAgICAgYWRkcmVzczogcmVzdWx0LmFkZHJlc3MsXG4gICAgICAgIHR4UmVxdWVzdElkOiByZXN1bHQudHhSZXF1ZXN0SWQsXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgZmFpbGVkQWRkcmVzc2VzLnB1c2gocmVzdWx0LmFkZHJlc3MpO1xuICAgIH1cbiAgfVxufVxuIl19