israeli-bank-scrapers 3.4.1 → 3.7.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.
- package/README.md +42 -0
- package/lib/definitions.d.ts +6 -1
- package/lib/definitions.js +6 -1
- package/lib/helpers/fetch.d.ts +2 -1
- package/lib/helpers/fetch.js +26 -9
- package/lib/helpers/storage.d.ts +2 -0
- package/lib/helpers/storage.js +17 -0
- package/lib/index.d.ts +2 -1
- package/lib/index.js +47 -3
- package/lib/scrapers/amex.d.ts +1 -1
- package/lib/scrapers/amex.js +1 -1
- package/lib/scrapers/amex.test.js +3 -2
- package/lib/scrapers/base-beinleumi-group.d.ts +7 -4
- package/lib/scrapers/base-beinleumi-group.js +1 -1
- package/lib/scrapers/base-isracard-amex.d.ts +8 -3
- package/lib/scrapers/base-isracard-amex.js +13 -11
- package/lib/scrapers/base-scraper-with-browser.d.ts +6 -3
- package/lib/scrapers/base-scraper-with-browser.js +14 -11
- package/lib/scrapers/base-scraper.d.ts +9 -119
- package/lib/scrapers/base-scraper.js +34 -50
- package/lib/scrapers/beyahad-bishvilha.d.ts +6 -3
- package/lib/scrapers/beyahad-bishvilha.js +1 -1
- package/lib/scrapers/discount.d.ts +9 -4
- package/lib/scrapers/discount.js +4 -4
- package/lib/scrapers/discount.test.js +4 -3
- package/lib/scrapers/errors.d.ts +16 -0
- package/lib/scrapers/errors.js +37 -0
- package/lib/scrapers/factory.d.ts +2 -16
- package/lib/scrapers/factory.js +6 -1
- package/lib/scrapers/hapoalim.d.ts +6 -3
- package/lib/scrapers/hapoalim.js +1 -1
- package/lib/scrapers/hapoalim.test.js +2 -2
- package/lib/scrapers/interface.d.ts +146 -0
- package/lib/scrapers/interface.js +2 -0
- package/lib/scrapers/isracard.d.ts +1 -1
- package/lib/scrapers/isracard.js +1 -1
- package/lib/scrapers/isracard.test.js +4 -3
- package/lib/scrapers/leumi.d.ts +8 -4
- package/lib/scrapers/leumi.js +1 -1
- package/lib/scrapers/max.d.ts +6 -3
- package/lib/scrapers/max.js +1 -1
- package/lib/scrapers/mizrahi.d.ts +7 -3
- package/lib/scrapers/mizrahi.js +11 -9
- package/lib/scrapers/one-zero-queries.d.ts +2 -0
- package/lib/scrapers/one-zero-queries.js +562 -0
- package/lib/scrapers/one-zero.d.ts +36 -0
- package/lib/scrapers/one-zero.js +304 -0
- package/lib/scrapers/one-zero.test.d.ts +1 -0
- package/lib/scrapers/one-zero.test.js +67 -0
- package/lib/scrapers/otsar-hahayal.d.ts +6 -3
- package/lib/scrapers/otsar-hahayal.js +1 -1
- package/lib/scrapers/union-bank.d.ts +6 -3
- package/lib/scrapers/union-bank.js +1 -1
- package/lib/scrapers/visa-cal.d.ts +103 -15
- package/lib/scrapers/visa-cal.js +154 -265
- package/lib/scrapers/yahav.d.ts +7 -3
- package/lib/scrapers/yahav.js +1 -1
- package/package.json +2 -2
package/lib/scrapers/yahav.d.ts
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import { TransactionsAccount } from '../transactions';
|
|
2
|
-
import { ScraperCredentials } from './base-scraper';
|
|
3
2
|
import { BaseScraperWithBrowser, PossibleLoginResults } from './base-scraper-with-browser';
|
|
4
|
-
declare
|
|
5
|
-
|
|
3
|
+
declare type ScraperSpecificCredentials = {
|
|
4
|
+
username: string;
|
|
5
|
+
password: string;
|
|
6
|
+
nationalID: string;
|
|
7
|
+
};
|
|
8
|
+
declare class YahavScraper extends BaseScraperWithBrowser<ScraperSpecificCredentials> {
|
|
9
|
+
getLoginOptions(credentials: ScraperSpecificCredentials): {
|
|
6
10
|
loginUrl: string;
|
|
7
11
|
fields: {
|
|
8
12
|
selector: string;
|
package/lib/scrapers/yahav.js
CHANGED
|
@@ -271,4 +271,4 @@ class YahavScraper extends _baseScraperWithBrowser.BaseScraperWithBrowser {
|
|
|
271
271
|
|
|
272
272
|
var _default = YahavScraper;
|
|
273
273
|
exports.default = _default;
|
|
274
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JhcGVycy95YWhhdi50cyJdLCJuYW1lcyI6WyJMT0dJTl9VUkwiLCJCQVNFX1VSTCIsIklOVkFMSURfREVUQUlMU19TRUxFQ1RPUiIsIkNIQU5HRV9QQVNTV09SRF9PTERfUEFTUyIsIkJBU0VfV0VMQ09NRV9VUkwiLCJBQ0NPVU5UX0lEX1NFTEVDVE9SIiwiQUNDT1VOVF9ERVRBSUxTX1NFTEVDVE9SIiwiREFURV9GT1JNQVQiLCJVU0VSX0VMRU0iLCJQQVNTV0RfRUxFTSIsIk5BVElPTkFMSURfRUxFTSIsIlNVQk1JVF9MT0dJTl9TRUxFQ1RPUiIsImdldFBvc3NpYmxlTG9naW5SZXN1bHRzIiwicGFnZSIsInVybHMiLCJMb2dpblJlc3VsdHMiLCJTdWNjZXNzIiwiSW52YWxpZFBhc3N3b3JkIiwiQ2hhbmdlUGFzc3dvcmQiLCJnZXRBY2NvdW50SUQiLCJzZWxlY3RlZFNuaWZBY2NvdW50IiwiJGV2YWwiLCJvcHRpb24iLCJpbm5lclRleHQiLCJnZXRBbW91bnREYXRhIiwiYW1vdW50U3RyIiwiYW1vdW50U3RyQ29weSIsInJlcGxhY2UiLCJwYXJzZUZsb2F0IiwiZ2V0VHhuQW1vdW50IiwidHhuIiwiY3JlZGl0IiwiZGViaXQiLCJOdW1iZXIiLCJpc05hTiIsImNvbnZlcnRUcmFuc2FjdGlvbnMiLCJ0eG5zIiwibWFwIiwiY29udmVydGVkRGF0ZSIsImRhdGUiLCJ0b0lTT1N0cmluZyIsImNvbnZlcnRlZEFtb3VudCIsInR5cGUiLCJUcmFuc2FjdGlvblR5cGVzIiwiTm9ybWFsIiwiaWRlbnRpZmllciIsInJlZmVyZW5jZSIsInBhcnNlSW50IiwidW5kZWZpbmVkIiwicHJvY2Vzc2VkRGF0ZSIsIm9yaWdpbmFsQW1vdW50Iiwib3JpZ2luYWxDdXJyZW5jeSIsIlNIRUtFTF9DVVJSRU5DWSIsImNoYXJnZWRBbW91bnQiLCJzdGF0dXMiLCJkZXNjcmlwdGlvbiIsIm1lbW8iLCJoYW5kbGVUcmFuc2FjdGlvblJvdyIsInR4blJvdyIsImRpdiIsImlubmVyRGl2cyIsInJlZ2V4IiwidHgiLCJUcmFuc2FjdGlvblN0YXR1c2VzIiwiQ29tcGxldGVkIiwicHVzaCIsImdldEFjY291bnRUcmFuc2FjdGlvbnMiLCJ0cmFuc2FjdGlvbnNEaXZzIiwiZGl2cyIsImlkIiwiZ2V0QXR0cmlidXRlIiwiQXJyYXkiLCJmcm9tIiwiZ2V0RWxlbWVudHNCeVRhZ05hbWUiLCJzZWFyY2hCeURhdGVzIiwic3RhcnREYXRlIiwic3RhcnREYXRlRGF5IiwiZm9ybWF0Iiwic3RhcnREYXRlTW9udGgiLCJzdGFydERhdGVZZWFyIiwiZGF0ZUZyb21QaWNrIiwibW9udGhGcm9tUGljayIsImkiLCJzZWxlY3RvciIsInllYXIiLCJ5IiwibW9udGhTZWxlY3RvciIsImRheSIsImQiLCJmZXRjaEFjY291bnREYXRhIiwiYWNjb3VudElEIiwiYWNjb3VudE51bWJlciIsImZldGNoQWNjb3VudHMiLCJhY2NvdW50cyIsImFjY291bnREYXRhIiwid2FpdFJlYWRpbmVzc0ZvckFsbCIsInJlZGlyZWN0T3JEaWFsb2ciLCJoYXNNZXNzYWdlIiwicHJvbWlzZTEiLCJ3YWl0Rm9yU2VsZWN0b3IiLCJ0aW1lb3V0IiwicHJvbWlzZTIiLCJwcm9taXNlcyIsIlByb21pc2UiLCJyYWNlIiwiWWFoYXZTY3JhcGVyIiwiQmFzZVNjcmFwZXJXaXRoQnJvd3NlciIsImdldExvZ2luT3B0aW9ucyIsImNyZWRlbnRpYWxzIiwibG9naW5VcmwiLCJmaWVsZHMiLCJ2YWx1ZSIsInVzZXJuYW1lIiwicGFzc3dvcmQiLCJuYXRpb25hbElEIiwic3VibWl0QnV0dG9uU2VsZWN0b3IiLCJjaGVja1JlYWRpbmVzcyIsInBvc3RBY3Rpb24iLCJwb3NzaWJsZVJlc3VsdHMiLCJmZXRjaERhdGEiLCJkZWZhdWx0U3RhcnRNb21lbnQiLCJzdWJ0cmFjdCIsImFkZCIsIm9wdGlvbnMiLCJ0b0RhdGUiLCJzdGFydE1vbWVudCIsIm1vbWVudCIsIm1heCIsInN1Y2Nlc3MiXSwibWFwcGluZ3MiOiI7Ozs7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QUFpQ1Asd0JBQWpDLEVBQTJELElBQTNELENBQU47QUFDQSxVQUFNLHVDQUFZLEtBQUtPLElBQWpCLEVBQXVCUCx3QkFBdkIsQ0FBTjtBQUNBLFVBQU0saURBQXNCLEtBQUtPLElBQTNCLEVBQWlDLHVDQUFqQyxFQUEwRSxJQUExRSxDQUFOO0FBRUEsVUFBTTJHLGtCQUFrQixHQUFHLHVCQUFTQyxRQUFULENBQWtCLENBQWxCLEVBQXFCLFFBQXJCLEVBQStCQyxHQUEvQixDQUFtQyxDQUFuQyxFQUFzQyxLQUF0QyxDQUEzQjtBQUNBLFVBQU0vQyxTQUFTLEdBQUcsS0FBS2dELE9BQUwsQ0FBYWhELFNBQWIsSUFBMEI2QyxrQkFBa0IsQ0FBQ0ksTUFBbkIsRUFBNUM7O0FBQ0EsVUFBTUMsV0FBVyxHQUFHQyxnQkFBT0MsR0FBUCxDQUFXUCxrQkFBWCxFQUErQixxQkFBTzdDLFNBQVAsQ0FBL0IsQ0FBcEI7O0FBRUEsVUFBTWtCLFFBQVEsR0FBRyxNQUFNRCxhQUFhLENBQUMsS0FBSy9FLElBQU4sRUFBWWdILFdBQVosQ0FBcEM7QUFFQSxXQUFPO0FBQ0xHLE1BQUFBLE9BQU8sRUFBRSxJQURKO0FBRUxuQyxNQUFBQTtBQUZLLEtBQVA7QUFJRDs7QUFoQytDOztlQW1DbkNZLFkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbW9tZW50LCB7IE1vbWVudCB9IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBQYWdlIH0gZnJvbSAncHVwcGV0ZWVyJztcbmltcG9ydCB7IFNIRUtFTF9DVVJSRU5DWSB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQge1xuICBjbGlja0J1dHRvbiwgZWxlbWVudFByZXNlbnRPblBhZ2UsXG4gIHBhZ2VFdmFsQWxsLCB3YWl0VW50aWxFbGVtZW50RGlzYXBwZWFyLCB3YWl0VW50aWxFbGVtZW50Rm91bmQsXG59IGZyb20gJy4uL2hlbHBlcnMvZWxlbWVudHMtaW50ZXJhY3Rpb25zJztcbmltcG9ydCB7IHdhaXRGb3JOYXZpZ2F0aW9uIH0gZnJvbSAnLi4vaGVscGVycy9uYXZpZ2F0aW9uJztcbmltcG9ydCB7XG4gIFRyYW5zYWN0aW9uLCBUcmFuc2FjdGlvbnNBY2NvdW50LFxuICBUcmFuc2FjdGlvblN0YXR1c2VzLCBUcmFuc2FjdGlvblR5cGVzLFxufSBmcm9tICcuLi90cmFuc2FjdGlvbnMnO1xuaW1wb3J0IHsgU2NyYXBlckNyZWRlbnRpYWxzIH0gZnJvbSAnLi9iYXNlLXNjcmFwZXInO1xuaW1wb3J0IHtcbiAgQmFzZVNjcmFwZXJXaXRoQnJvd3NlcixcbiAgTG9naW5SZXN1bHRzLFxuICBQb3NzaWJsZUxvZ2luUmVzdWx0cyxcbn0gZnJvbSAnLi9iYXNlLXNjcmFwZXItd2l0aC1icm93c2VyJztcblxuY29uc3QgTE9HSU5fVVJMID0gJ2h0dHBzOi8vbG9naW4ueWFoYXYuY28uaWwvbG9naW4vJztcbmNvbnN0IEJBU0VfVVJMID0gJ2h0dHBzOi8vZGlnaXRhbC55YWhhdi5jby5pbC9CYU5DU0RpZ2l0YWxVSS9hcHAvaW5kZXguaHRtbCMvJztcbmNvbnN0IElOVkFMSURfREVUQUlMU19TRUxFQ1RPUiA9ICcudWktZGlhbG9nLWJ1dHRvbnMnO1xuY29uc3QgQ0hBTkdFX1BBU1NXT1JEX09MRF9QQVNTID0gJ2lucHV0I2VmX3JlcV9wYXJhbWV0ZXJfb2xkX2NyZWRlbnRpYWwnO1xuY29uc3QgQkFTRV9XRUxDT01FX1VSTCA9IGAke0JBU0VfVVJMfW1haW4vaG9tZWA7XG5cbmNvbnN0IEFDQ09VTlRfSURfU0VMRUNUT1IgPSAnLmRyb3Bkb3duLWRpciAuc2VsZWN0ZWQtaXRlbS10b3AnO1xuY29uc3QgQUNDT1VOVF9ERVRBSUxTX1NFTEVDVE9SID0gJy5hY2NvdW50LWRldGFpbHMnO1xuY29uc3QgREFURV9GT1JNQVQgPSAnREQvTU0vWVlZWSc7XG5cbmNvbnN0IFVTRVJfRUxFTSA9ICcjdXNlcm5hbWUnO1xuY29uc3QgUEFTU1dEX0VMRU0gPSAnI3Bhc3N3b3JkJztcbmNvbnN0IE5BVElPTkFMSURfRUxFTSA9ICcjcGlubm8nO1xuY29uc3QgU1VCTUlUX0xPR0lOX1NFTEVDVE9SID0gJy5idG4nO1xuXG5pbnRlcmZhY2UgU2NyYXBlZFRyYW5zYWN0aW9uIHtcbiAgY3JlZGl0OiBzdHJpbmc7XG4gIGRlYml0OiBzdHJpbmc7XG4gIGRhdGU6IHN0cmluZztcbiAgcmVmZXJlbmNlPzogc3RyaW5nO1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICBtZW1vOiBzdHJpbmc7XG4gIHN0YXR1czogVHJhbnNhY3Rpb25TdGF0dXNlcztcbn1cblxuZnVuY3Rpb24gZ2V0UG9zc2libGVMb2dpblJlc3VsdHMocGFnZTogUGFnZSk6IFBvc3NpYmxlTG9naW5SZXN1bHRzIHtcbiAgLy8gY2hlY2tvdXQgZmlsZSBgYmFzZS1zY3JhcGVyLXdpdGgtYnJvd3Nlci50c2AgZm9yIGF2YWlsYWJsZSByZXN1bHQgdHlwZXNcbiAgY29uc3QgdXJsczogUG9zc2libGVMb2dpblJlc3VsdHMgPSB7fTtcbiAgdXJsc1tMb2dpblJlc3VsdHMuU3VjY2Vzc10gPSBbXG4gICAgYCR7QkFTRV9XRUxDT01FX1VSTH1gLFxuICBdO1xuICB1cmxzW0xvZ2luUmVzdWx0cy5JbnZhbGlkUGFzc3dvcmRdID0gW2FzeW5jICgpID0+IHtcbiAgICByZXR1cm4gZWxlbWVudFByZXNlbnRPblBhZ2UocGFnZSwgYCR7SU5WQUxJRF9ERVRBSUxTX1NFTEVDVE9SfWApO1xuICB9XTtcblxuICB1cmxzW0xvZ2luUmVzdWx0cy5DaGFuZ2VQYXNzd29yZF0gPSBbYXN5bmMgKCkgPT4ge1xuICAgIHJldHVybiBlbGVtZW50UHJlc2VudE9uUGFnZShwYWdlLCBgJHtDSEFOR0VfUEFTU1dPUkRfT0xEX1BBU1N9YCk7XG4gIH1dO1xuXG4gIHJldHVybiB1cmxzO1xufVxuXG5hc3luYyBmdW5jdGlvbiBnZXRBY2NvdW50SUQocGFnZTogUGFnZSkge1xuICBjb25zdCBzZWxlY3RlZFNuaWZBY2NvdW50ID0gYXdhaXQgcGFnZS4kZXZhbChgJHtBQ0NPVU5UX0lEX1NFTEVDVE9SfWAsIChvcHRpb24pID0+IHtcbiAgICByZXR1cm4gKG9wdGlvbiBhcyBIVE1MRWxlbWVudCkuaW5uZXJUZXh0O1xuICB9KTtcblxuICByZXR1cm4gc2VsZWN0ZWRTbmlmQWNjb3VudDtcbn1cblxuZnVuY3Rpb24gZ2V0QW1vdW50RGF0YShhbW91bnRTdHI6IHN0cmluZykge1xuICBjb25zdCBhbW91bnRTdHJDb3B5ID0gYW1vdW50U3RyLnJlcGxhY2UoJywnLCAnJyk7XG4gIHJldHVybiBwYXJzZUZsb2F0KGFtb3VudFN0ckNvcHkpO1xufVxuXG5mdW5jdGlvbiBnZXRUeG5BbW91bnQodHhuOiBTY3JhcGVkVHJhbnNhY3Rpb24pIHtcbiAgY29uc3QgY3JlZGl0ID0gZ2V0QW1vdW50RGF0YSh0eG4uY3JlZGl0KTtcbiAgY29uc3QgZGViaXQgPSBnZXRBbW91bnREYXRhKHR4bi5kZWJpdCk7XG4gIHJldHVybiAoTnVtYmVyLmlzTmFOKGNyZWRpdCkgPyAwIDogY3JlZGl0KSAtIChOdW1iZXIuaXNOYU4oZGViaXQpID8gMCA6IGRlYml0KTtcbn1cblxudHlwZSBUcmFuc2FjdGlvbnNUciA9IHsgaWQ6IHN0cmluZywgaW5uZXJEaXZzOiBzdHJpbmdbXSB9O1xuXG5mdW5jdGlvbiBjb252ZXJ0VHJhbnNhY3Rpb25zKHR4bnM6IFNjcmFwZWRUcmFuc2FjdGlvbltdKTogVHJhbnNhY3Rpb25bXSB7XG4gIHJldHVybiB0eG5zLm1hcCgodHhuKSA9PiB7XG4gICAgY29uc3QgY29udmVydGVkRGF0ZSA9IG1vbWVudCh0eG4uZGF0ZSwgREFURV9GT1JNQVQpLnRvSVNPU3RyaW5nKCk7XG4gICAgY29uc3QgY29udmVydGVkQW1vdW50ID0gZ2V0VHhuQW1vdW50KHR4bik7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IFRyYW5zYWN0aW9uVHlwZXMuTm9ybWFsLFxuICAgICAgaWRlbnRpZmllcjogdHhuLnJlZmVyZW5jZSA/IHBhcnNlSW50KHR4bi5yZWZlcmVuY2UsIDEwKSA6IHVuZGVmaW5lZCxcbiAgICAgIGRhdGU6IGNvbnZlcnRlZERhdGUsXG4gICAgICBwcm9jZXNzZWREYXRlOiBjb252ZXJ0ZWREYXRlLFxuICAgICAgb3JpZ2luYWxBbW91bnQ6IGNvbnZlcnRlZEFtb3VudCxcbiAgICAgIG9yaWdpbmFsQ3VycmVuY3k6IFNIRUtFTF9DVVJSRU5DWSxcbiAgICAgIGNoYXJnZWRBbW91bnQ6IGNvbnZlcnRlZEFtb3VudCxcbiAgICAgIHN0YXR1czogdHhuLnN0YXR1cyxcbiAgICAgIGRlc2NyaXB0aW9uOiB0eG4uZGVzY3JpcHRpb24sXG4gICAgICBtZW1vOiB0eG4ubWVtbyxcbiAgICB9O1xuICB9KTtcbn1cblxuZnVuY3Rpb24gaGFuZGxlVHJhbnNhY3Rpb25Sb3codHhuczogU2NyYXBlZFRyYW5zYWN0aW9uW10sIHR4blJvdzogVHJhbnNhY3Rpb25zVHIpIHtcbiAgY29uc3QgZGl2ID0gdHhuUm93LmlubmVyRGl2cztcblxuICAvLyBSZW1vdmUgYW55dGhpbmcgZXhjZXB0IGRpZ2l0cy5cbiAgY29uc3QgcmVnZXggPSAvXFxEKy9nbTtcblxuICBjb25zdCB0eDogU2NyYXBlZFRyYW5zYWN0aW9uID0ge1xuICAgIGRhdGU6IGRpdlsxXSxcbiAgICByZWZlcmVuY2U6IGRpdlsyXS5yZXBsYWNlKHJlZ2V4LCAnJyksXG4gICAgbWVtbzogJycsXG4gICAgZGVzY3JpcHRpb246IGRpdlszXSxcbiAgICBkZWJpdDogZGl2WzRdLFxuICAgIGNyZWRpdDogZGl2WzVdLFxuICAgIHN0YXR1czogVHJhbnNhY3Rpb25TdGF0dXNlcy5Db21wbGV0ZWQsXG4gIH07XG5cbiAgdHhucy5wdXNoKHR4KTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZ2V0QWNjb3VudFRyYW5zYWN0aW9ucyhwYWdlOiBQYWdlKTogUHJvbWlzZTxUcmFuc2FjdGlvbltdPiB7XG4gIC8vIFdhaXQgZm9yIHRyYW5zYWN0aW9ucy5cbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsICcudW5kZXItbGluZS10eG4tdGFibGUtaGVhZGVyJywgdHJ1ZSk7XG5cbiAgY29uc3QgdHhuczogU2NyYXBlZFRyYW5zYWN0aW9uW10gPSBbXTtcbiAgY29uc3QgdHJhbnNhY3Rpb25zRGl2cyA9IGF3YWl0IHBhZ2VFdmFsQWxsPFRyYW5zYWN0aW9uc1RyW10+KHBhZ2UsICcubGlzdC1pdGVtLWhvbGRlciAuZW50aXJlLWNvbnRlbnQtY3RyJywgW10sIChkaXZzKSA9PiB7XG4gICAgcmV0dXJuIChkaXZzIGFzIEhUTUxFbGVtZW50W10pLm1hcCgoZGl2KSA9PiAoe1xuICAgICAgaWQ6IChkaXYpLmdldEF0dHJpYnV0ZSgnaWQnKSB8fCAnJyxcbiAgICAgIGlubmVyRGl2czogQXJyYXkuZnJvbShkaXYuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2RpdicpKS5tYXAoKGRpdikgPT4gKGRpdiBhcyBIVE1MRWxlbWVudCkuaW5uZXJUZXh0KSxcbiAgICB9KSk7XG4gIH0pO1xuXG4gIGZvciAoY29uc3QgdHhuUm93IG9mIHRyYW5zYWN0aW9uc0RpdnMpIHtcbiAgICBoYW5kbGVUcmFuc2FjdGlvblJvdyh0eG5zLCB0eG5Sb3cpO1xuICB9XG5cbiAgcmV0dXJuIGNvbnZlcnRUcmFuc2FjdGlvbnModHhucyk7XG59XG5cbi8vIE1hbmlwdWxhdGUgdGhlIGNhbGVuZGFyIGRyb3AgZG93biB0byBjaG9vc2UgdGhlIHR4cyBzdGFydCBkYXRlLlxuYXN5bmMgZnVuY3Rpb24gc2VhcmNoQnlEYXRlcyhwYWdlOiBQYWdlLCBzdGFydERhdGU6IE1vbWVudCkge1xuICAvLyBHZXQgdGhlIGRheSBudW1iZXIgZnJvbSBzdGFydERhdGUuIDEtMzEgKHVzdWFsbHkgMSlcbiAgY29uc3Qgc3RhcnREYXRlRGF5ID0gc3RhcnREYXRlLmZvcm1hdCgnRCcpO1xuICBjb25zdCBzdGFydERhdGVNb250aCA9IHN0YXJ0RGF0ZS5mb3JtYXQoJ00nKTtcbiAgY29uc3Qgc3RhcnREYXRlWWVhciA9IHN0YXJ0RGF0ZS5mb3JtYXQoJ1knKTtcblxuICAvLyBPcGVuIHRoZSBjYWxlbmRhciBkYXRlIHBpY2tlclxuICBjb25zdCBkYXRlRnJvbVBpY2sgPSAnZGl2LmRhdGUtb3B0aW9ucy1jZWxsOm50aC1jaGlsZCg3KSA+IGRhdGUtcGlja2VyOm50aC1jaGlsZCgxKSA+IGRpdjpudGgtY2hpbGQoMSkgPiBzcGFuOm50aC1jaGlsZCgyKSc7XG4gIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnRGb3VuZChwYWdlLCBkYXRlRnJvbVBpY2ssIHRydWUpO1xuICBhd2FpdCBjbGlja0J1dHRvbihwYWdlLCBkYXRlRnJvbVBpY2spO1xuXG4gIC8vIFdhaXQgdW50aWwgZmlyc3QgZGF5IGFwcGVhci5cbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsICcucG11LWRheXMgPiBkaXY6bnRoLWNoaWxkKDEpJywgdHJ1ZSk7XG5cbiAgLy8gT3BlbiBNb250aHMgb3B0aW9ucy5cbiAgY29uc3QgbW9udGhGcm9tUGljayA9ICcucG11LW1vbnRoJztcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsIG1vbnRoRnJvbVBpY2ssIHRydWUpO1xuICBhd2FpdCBjbGlja0J1dHRvbihwYWdlLCBtb250aEZyb21QaWNrKTtcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsICcucG11LW1vbnRocyA+IGRpdjpudGgtY2hpbGQoMSknLCB0cnVlKTtcblxuICAvLyBPcGVuIFllYXIgb3B0aW9ucy5cbiAgLy8gVXNlIHNhbWUgc2VsZWN0b3IuLi4gWWFoYXYga25vd3Mgd2h5Li4uXG4gIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnRGb3VuZChwYWdlLCBtb250aEZyb21QaWNrLCB0cnVlKTtcbiAgYXdhaXQgY2xpY2tCdXR0b24ocGFnZSwgbW9udGhGcm9tUGljayk7XG4gIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnRGb3VuZChwYWdlLCAnLnBtdS15ZWFycyA+IGRpdjpudGgtY2hpbGQoMSknLCB0cnVlKTtcblxuICAvLyBTZWxlY3QgeWVhciBmcm9tIGEgMTIgeWVhciBncmlkLlxuICBmb3IgKGxldCBpID0gMTsgaSA8IDEzOyBpICs9IDEpIHtcbiAgICBjb25zdCBzZWxlY3RvciA9IGAucG11LXllYXJzID4gZGl2Om50aC1jaGlsZCgke2l9KWA7XG4gICAgY29uc3QgeWVhciA9IGF3YWl0IHBhZ2UuJGV2YWwoc2VsZWN0b3IsICh5KSA9PiB7XG4gICAgICByZXR1cm4gKHkgYXMgSFRNTEVsZW1lbnQpLmlubmVyVGV4dDtcbiAgICB9KTtcbiAgICBpZiAoc3RhcnREYXRlWWVhciA9PT0geWVhcikge1xuICAgICAgYXdhaXQgY2xpY2tCdXR0b24ocGFnZSwgc2VsZWN0b3IpO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgLy8gU2VsZWN0IE1vbnRoLlxuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgJy5wbXUtbW9udGhzID4gZGl2Om50aC1jaGlsZCgxKScsIHRydWUpO1xuICAvLyBUaGUgZmlyc3QgZWxlbWVudCAoMSkgaXMgSmFudWFyeS5cbiAgY29uc3QgbW9udGhTZWxlY3RvciA9IGAucG11LW1vbnRocyA+IGRpdjpudGgtY2hpbGQoJHtzdGFydERhdGVNb250aH0pYDtcbiAgYXdhaXQgY2xpY2tCdXR0b24ocGFnZSwgbW9udGhTZWxlY3Rvcik7XG5cbiAgLy8gU2VsZWN0IERheS5cbiAgLy8gVGhlIGNhbGVuZGFyIGdyaWQgc2hvd3MgNyBkYXlzIGFuZCA2IHdlZWtzID0gNDIgZGF5cy5cbiAgLy8gSW4gdGhlb3J5LCB0aGUgZmlyc3QgZGF5IG9mIHRoZSBtb250aCB3aWxsIGJlIGluIHRoZSBmaXJzdCByb3cuXG4gIC8vIExldCdzIGNoZWNrIGV2ZXJ5dGhpbmcganVzdCBpbiBjYXNlLi4uXG4gIGZvciAobGV0IGkgPSAxOyBpIDwgNDI7IGkgKz0gMSkge1xuICAgIGNvbnN0IHNlbGVjdG9yID0gYC5wbXUtZGF5cyA+IGRpdjpudGgtY2hpbGQoJHtpfSlgO1xuICAgIGNvbnN0IGRheSA9IGF3YWl0IHBhZ2UuJGV2YWwoc2VsZWN0b3IsIChkKSA9PiB7XG4gICAgICByZXR1cm4gKGQgYXMgSFRNTEVsZW1lbnQpLmlubmVyVGV4dDtcbiAgICB9KTtcblxuICAgIGlmIChzdGFydERhdGVEYXkgPT09IGRheSkge1xuICAgICAgYXdhaXQgY2xpY2tCdXR0b24ocGFnZSwgc2VsZWN0b3IpO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG59XG5cblxuYXN5bmMgZnVuY3Rpb24gZmV0Y2hBY2NvdW50RGF0YShwYWdlOiBQYWdlLCBzdGFydERhdGU6IE1vbWVudCwgYWNjb3VudElEOiBzdHJpbmcpOiBQcm9taXNlPFRyYW5zYWN0aW9uc0FjY291bnQ+IHtcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudERpc2FwcGVhcihwYWdlLCAnLmxvYWRpbmctYmFyLXNwaW5uZXInKTtcbiAgYXdhaXQgc2VhcmNoQnlEYXRlcyhwYWdlLCBzdGFydERhdGUpO1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50RGlzYXBwZWFyKHBhZ2UsICcubG9hZGluZy1iYXItc3Bpbm5lcicpO1xuICBjb25zdCB0eG5zID0gYXdhaXQgZ2V0QWNjb3VudFRyYW5zYWN0aW9ucyhwYWdlKTtcblxuICByZXR1cm4ge1xuICAgIGFjY291bnROdW1iZXI6IGFjY291bnRJRCxcbiAgICB0eG5zLFxuICB9O1xufVxuXG5hc3luYyBmdW5jdGlvbiBmZXRjaEFjY291bnRzKHBhZ2U6IFBhZ2UsIHN0YXJ0RGF0ZTogTW9tZW50KTogUHJvbWlzZTxUcmFuc2FjdGlvbnNBY2NvdW50W10+IHtcbiAgY29uc3QgYWNjb3VudHM6IFRyYW5zYWN0aW9uc0FjY291bnRbXSA9IFtdO1xuXG4gIC8vIFRPRE86IGdldCBtb3JlIGFjY291bnRzLiBOb3Qgc3VyZSBpcyBzdXBwb3J0ZWQuXG4gIGNvbnN0IGFjY291bnRJRCA9IGF3YWl0IGdldEFjY291bnRJRChwYWdlKTtcbiAgY29uc3QgYWNjb3VudERhdGEgPSBhd2FpdCBmZXRjaEFjY291bnREYXRhKHBhZ2UsIHN0YXJ0RGF0ZSwgYWNjb3VudElEKTtcbiAgYWNjb3VudHMucHVzaChhY2NvdW50RGF0YSk7XG5cbiAgcmV0dXJuIGFjY291bnRzO1xufVxuXG5hc3luYyBmdW5jdGlvbiB3YWl0UmVhZGluZXNzRm9yQWxsKHBhZ2U6IFBhZ2UpIHtcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsIGAke1VTRVJfRUxFTX1gLCB0cnVlKTtcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsIGAke1BBU1NXRF9FTEVNfWAsIHRydWUpO1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgYCR7TkFUSU9OQUxJRF9FTEVNfWAsIHRydWUpO1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgYCR7U1VCTUlUX0xPR0lOX1NFTEVDVE9SfWAsIHRydWUpO1xufVxuXG5hc3luYyBmdW5jdGlvbiByZWRpcmVjdE9yRGlhbG9nKHBhZ2U6IFBhZ2UpIHtcbiAgLy8gQ2xpY2sgb24gYmFuayBtZXNzYWdlcyBpZiBhbnkuXG4gIGF3YWl0IHdhaXRGb3JOYXZpZ2F0aW9uKHBhZ2UpO1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50RGlzYXBwZWFyKHBhZ2UsICcubG9hZGluZy1iYXItc3Bpbm5lcicpO1xuICBjb25zdCBoYXNNZXNzYWdlID0gYXdhaXQgZWxlbWVudFByZXNlbnRPblBhZ2UocGFnZSwgJy5tZXNzYWdpbmctbGlua3MtY29udGFpbmVyJyk7XG4gIGlmIChoYXNNZXNzYWdlKSB7XG4gICAgYXdhaXQgY2xpY2tCdXR0b24ocGFnZSwgJy5saW5rLTEnKTtcbiAgfVxuXG4gIGNvbnN0IHByb21pc2UxID0gcGFnZS53YWl0Rm9yU2VsZWN0b3IoQUNDT1VOVF9ERVRBSUxTX1NFTEVDVE9SLCB7IHRpbWVvdXQ6IDMwMDAwIH0pO1xuICBjb25zdCBwcm9taXNlMiA9IHBhZ2Uud2FpdEZvclNlbGVjdG9yKENIQU5HRV9QQVNTV09SRF9PTERfUEFTUywgeyB0aW1lb3V0OiAzMDAwMCB9KTtcbiAgY29uc3QgcHJvbWlzZXMgPSBbcHJvbWlzZTEsIHByb21pc2UyXTtcblxuICBhd2FpdCBQcm9taXNlLnJhY2UocHJvbWlzZXMpO1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50RGlzYXBwZWFyKHBhZ2UsICcubG9hZGluZy1iYXItc3Bpbm5lcicpO1xufVxuXG5jbGFzcyBZYWhhdlNjcmFwZXIgZXh0ZW5kcyBCYXNlU2NyYXBlcldpdGhCcm93c2VyIHtcbiAgZ2V0TG9naW5PcHRpb25zKGNyZWRlbnRpYWxzOiBTY3JhcGVyQ3JlZGVudGlhbHMpIHtcbiAgICByZXR1cm4ge1xuICAgICAgbG9naW5Vcmw6IGAke0xPR0lOX1VSTH1gLFxuICAgICAgZmllbGRzOiBbXG4gICAgICAgIHsgc2VsZWN0b3I6IGAke1VTRVJfRUxFTX1gLCB2YWx1ZTogY3JlZGVudGlhbHMudXNlcm5hbWUgfSxcbiAgICAgICAgeyBzZWxlY3RvcjogYCR7UEFTU1dEX0VMRU19YCwgdmFsdWU6IGNyZWRlbnRpYWxzLnBhc3N3b3JkIH0sXG4gICAgICAgIHsgc2VsZWN0b3I6IGAke05BVElPTkFMSURfRUxFTX1gLCB2YWx1ZTogY3JlZGVudGlhbHMubmF0aW9uYWxJRCB9LFxuICAgICAgXSxcbiAgICAgIHN1Ym1pdEJ1dHRvblNlbGVjdG9yOiBgJHtTVUJNSVRfTE9HSU5fU0VMRUNUT1J9YCxcbiAgICAgIGNoZWNrUmVhZGluZXNzOiBhc3luYyAoKSA9PiB3YWl0UmVhZGluZXNzRm9yQWxsKHRoaXMucGFnZSksXG4gICAgICBwb3N0QWN0aW9uOiBhc3luYyAoKSA9PiByZWRpcmVjdE9yRGlhbG9nKHRoaXMucGFnZSksXG4gICAgICBwb3NzaWJsZVJlc3VsdHM6IGdldFBvc3NpYmxlTG9naW5SZXN1bHRzKHRoaXMucGFnZSksXG4gICAgfTtcbiAgfVxuXG4gIGFzeW5jIGZldGNoRGF0YSgpIHtcbiAgICAvLyBHb3RvIHN0YXRlbWVudHMgcGFnZVxuICAgIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnRGb3VuZCh0aGlzLnBhZ2UsIEFDQ09VTlRfREVUQUlMU19TRUxFQ1RPUiwgdHJ1ZSk7XG4gICAgYXdhaXQgY2xpY2tCdXR0b24odGhpcy5wYWdlLCBBQ0NPVU5UX0RFVEFJTFNfU0VMRUNUT1IpO1xuICAgIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnRGb3VuZCh0aGlzLnBhZ2UsICcuc3RhdGVtZW50LW9wdGlvbnMgLnNlbGVjdGVkLWl0ZW0tdG9wJywgdHJ1ZSk7XG5cbiAgICBjb25zdCBkZWZhdWx0U3RhcnRNb21lbnQgPSBtb21lbnQoKS5zdWJ0cmFjdCgzLCAnbW9udGhzJykuYWRkKDEsICdkYXknKTtcbiAgICBjb25zdCBzdGFydERhdGUgPSB0aGlzLm9wdGlvbnMuc3RhcnREYXRlIHx8IGRlZmF1bHRTdGFydE1vbWVudC50b0RhdGUoKTtcbiAgICBjb25zdCBzdGFydE1vbWVudCA9IG1vbWVudC5tYXgoZGVmYXVsdFN0YXJ0TW9tZW50LCBtb21lbnQoc3RhcnREYXRlKSk7XG5cbiAgICBjb25zdCBhY2NvdW50cyA9IGF3YWl0IGZldGNoQWNjb3VudHModGhpcy5wYWdlLCBzdGFydE1vbWVudCk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgc3VjY2VzczogdHJ1ZSxcbiAgICAgIGFjY291bnRzLFxuICAgIH07XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgWWFoYXZTY3JhcGVyO1xuIl19
|
|
274
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JhcGVycy95YWhhdi50cyJdLCJuYW1lcyI6WyJMT0dJTl9VUkwiLCJCQVNFX1VSTCIsIklOVkFMSURfREVUQUlMU19TRUxFQ1RPUiIsIkNIQU5HRV9QQVNTV09SRF9PTERfUEFTUyIsIkJBU0VfV0VMQ09NRV9VUkwiLCJBQ0NPVU5UX0lEX1NFTEVDVE9SIiwiQUNDT1VOVF9ERVRBSUxTX1NFTEVDVE9SIiwiREFURV9GT1JNQVQiLCJVU0VSX0VMRU0iLCJQQVNTV0RfRUxFTSIsIk5BVElPTkFMSURfRUxFTSIsIlNVQk1JVF9MT0dJTl9TRUxFQ1RPUiIsImdldFBvc3NpYmxlTG9naW5SZXN1bHRzIiwicGFnZSIsInVybHMiLCJMb2dpblJlc3VsdHMiLCJTdWNjZXNzIiwiSW52YWxpZFBhc3N3b3JkIiwiQ2hhbmdlUGFzc3dvcmQiLCJnZXRBY2NvdW50SUQiLCJzZWxlY3RlZFNuaWZBY2NvdW50IiwiJGV2YWwiLCJvcHRpb24iLCJpbm5lclRleHQiLCJnZXRBbW91bnREYXRhIiwiYW1vdW50U3RyIiwiYW1vdW50U3RyQ29weSIsInJlcGxhY2UiLCJwYXJzZUZsb2F0IiwiZ2V0VHhuQW1vdW50IiwidHhuIiwiY3JlZGl0IiwiZGViaXQiLCJOdW1iZXIiLCJpc05hTiIsImNvbnZlcnRUcmFuc2FjdGlvbnMiLCJ0eG5zIiwibWFwIiwiY29udmVydGVkRGF0ZSIsImRhdGUiLCJ0b0lTT1N0cmluZyIsImNvbnZlcnRlZEFtb3VudCIsInR5cGUiLCJUcmFuc2FjdGlvblR5cGVzIiwiTm9ybWFsIiwiaWRlbnRpZmllciIsInJlZmVyZW5jZSIsInBhcnNlSW50IiwidW5kZWZpbmVkIiwicHJvY2Vzc2VkRGF0ZSIsIm9yaWdpbmFsQW1vdW50Iiwib3JpZ2luYWxDdXJyZW5jeSIsIlNIRUtFTF9DVVJSRU5DWSIsImNoYXJnZWRBbW91bnQiLCJzdGF0dXMiLCJkZXNjcmlwdGlvbiIsIm1lbW8iLCJoYW5kbGVUcmFuc2FjdGlvblJvdyIsInR4blJvdyIsImRpdiIsImlubmVyRGl2cyIsInJlZ2V4IiwidHgiLCJUcmFuc2FjdGlvblN0YXR1c2VzIiwiQ29tcGxldGVkIiwicHVzaCIsImdldEFjY291bnRUcmFuc2FjdGlvbnMiLCJ0cmFuc2FjdGlvbnNEaXZzIiwiZGl2cyIsImlkIiwiZ2V0QXR0cmlidXRlIiwiQXJyYXkiLCJmcm9tIiwiZ2V0RWxlbWVudHNCeVRhZ05hbWUiLCJzZWFyY2hCeURhdGVzIiwic3RhcnREYXRlIiwic3RhcnREYXRlRGF5IiwiZm9ybWF0Iiwic3RhcnREYXRlTW9udGgiLCJzdGFydERhdGVZZWFyIiwiZGF0ZUZyb21QaWNrIiwibW9udGhGcm9tUGljayIsImkiLCJzZWxlY3RvciIsInllYXIiLCJ5IiwibW9udGhTZWxlY3RvciIsImRheSIsImQiLCJmZXRjaEFjY291bnREYXRhIiwiYWNjb3VudElEIiwiYWNjb3VudE51bWJlciIsImZldGNoQWNjb3VudHMiLCJhY2NvdW50cyIsImFjY291bnREYXRhIiwid2FpdFJlYWRpbmVzc0ZvckFsbCIsInJlZGlyZWN0T3JEaWFsb2ciLCJoYXNNZXNzYWdlIiwicHJvbWlzZTEiLCJ3YWl0Rm9yU2VsZWN0b3IiLCJ0aW1lb3V0IiwicHJvbWlzZTIiLCJwcm9taXNlcyIsIlByb21pc2UiLCJyYWNlIiwiWWFoYXZTY3JhcGVyIiwiQmFzZVNjcmFwZXJXaXRoQnJvd3NlciIsImdldExvZ2luT3B0aW9ucyIsImNyZWRlbnRpYWxzIiwibG9naW5VcmwiLCJmaWVsZHMiLCJ2YWx1ZSIsInVzZXJuYW1lIiwicGFzc3dvcmQiLCJuYXRpb25hbElEIiwic3VibWl0QnV0dG9uU2VsZWN0b3IiLCJjaGVja1JlYWRpbmVzcyIsInBvc3RBY3Rpb24iLCJwb3NzaWJsZVJlc3VsdHMiLCJmZXRjaERhdGEiLCJkZWZhdWx0U3RhcnRNb21lbnQiLCJzdWJ0cmFjdCIsImFkZCIsIm9wdGlvbnMiLCJ0b0RhdGUiLCJzdGFydE1vbWVudCIsIm1vbWVudCIsIm1heCIsInN1Y2Nlc3MiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUVBOztBQUNBOztBQUlBOztBQUNBOztBQUlBOzs7O0FBTUEsTUFBTUEsU0FBUyxHQUFHLGtDQUFsQjtBQUNBLE1BQU1DLFFBQVEsR0FBRyw2REFBakI7QUFDQSxNQUFNQyx3QkFBd0IsR0FBRyxvQkFBakM7QUFDQSxNQUFNQyx3QkFBd0IsR0FBRyx1Q0FBakM7QUFDQSxNQUFNQyxnQkFBZ0IsR0FBSSxHQUFFSCxRQUFTLFdBQXJDO0FBRUEsTUFBTUksbUJBQW1CLEdBQUcsa0NBQTVCO0FBQ0EsTUFBTUMsd0JBQXdCLEdBQUcsa0JBQWpDO0FBQ0EsTUFBTUMsV0FBVyxHQUFHLFlBQXBCO0FBRUEsTUFBTUMsU0FBUyxHQUFHLFdBQWxCO0FBQ0EsTUFBTUMsV0FBVyxHQUFHLFdBQXBCO0FBQ0EsTUFBTUMsZUFBZSxHQUFHLFFBQXhCO0FBQ0EsTUFBTUMscUJBQXFCLEdBQUcsTUFBOUI7O0FBWUEsU0FBU0MsdUJBQVQsQ0FBaUNDLElBQWpDLEVBQW1FO0FBQ2pFO0FBQ0EsUUFBTUMsSUFBMEIsR0FBRyxFQUFuQztBQUNBQSxFQUFBQSxJQUFJLENBQUNDLHFDQUFhQyxPQUFkLENBQUosR0FBNkIsQ0FDMUIsR0FBRVosZ0JBQWlCLEVBRE8sQ0FBN0I7QUFHQVUsRUFBQUEsSUFBSSxDQUFDQyxxQ0FBYUUsZUFBZCxDQUFKLEdBQXFDLENBQUMsWUFBWTtBQUNoRCxXQUFPLGdEQUFxQkosSUFBckIsRUFBNEIsR0FBRVgsd0JBQXlCLEVBQXZELENBQVA7QUFDRCxHQUZvQyxDQUFyQztBQUlBWSxFQUFBQSxJQUFJLENBQUNDLHFDQUFhRyxjQUFkLENBQUosR0FBb0MsQ0FBQyxZQUFZO0FBQy9DLFdBQU8sZ0RBQXFCTCxJQUFyQixFQUE0QixHQUFFVix3QkFBeUIsRUFBdkQsQ0FBUDtBQUNELEdBRm1DLENBQXBDO0FBSUEsU0FBT1csSUFBUDtBQUNEOztBQUVELGVBQWVLLFlBQWYsQ0FBNEJOLElBQTVCLEVBQXdDO0FBQ3RDLFFBQU1PLG1CQUFtQixHQUFHLE1BQU1QLElBQUksQ0FBQ1EsS0FBTCxDQUFZLEdBQUVoQixtQkFBb0IsRUFBbEMsRUFBc0NpQixNQUFELElBQVk7QUFDakYsV0FBUUEsTUFBRCxDQUF3QkMsU0FBL0I7QUFDRCxHQUZpQyxDQUFsQztBQUlBLFNBQU9ILG1CQUFQO0FBQ0Q7O0FBRUQsU0FBU0ksYUFBVCxDQUF1QkMsU0FBdkIsRUFBMEM7QUFDeEMsUUFBTUMsYUFBYSxHQUFHRCxTQUFTLENBQUNFLE9BQVYsQ0FBa0IsR0FBbEIsRUFBdUIsRUFBdkIsQ0FBdEI7QUFDQSxTQUFPQyxVQUFVLENBQUNGLGFBQUQsQ0FBakI7QUFDRDs7QUFFRCxTQUFTRyxZQUFULENBQXNCQyxHQUF0QixFQUErQztBQUM3QyxRQUFNQyxNQUFNLEdBQUdQLGFBQWEsQ0FBQ00sR0FBRyxDQUFDQyxNQUFMLENBQTVCO0FBQ0EsUUFBTUMsS0FBSyxHQUFHUixhQUFhLENBQUNNLEdBQUcsQ0FBQ0UsS0FBTCxDQUEzQjtBQUNBLFNBQU8sQ0FBQ0MsTUFBTSxDQUFDQyxLQUFQLENBQWFILE1BQWIsSUFBdUIsQ0FBdkIsR0FBMkJBLE1BQTVCLEtBQXVDRSxNQUFNLENBQUNDLEtBQVAsQ0FBYUYsS0FBYixJQUFzQixDQUF0QixHQUEwQkEsS0FBakUsQ0FBUDtBQUNEOztBQUlELFNBQVNHLG1CQUFULENBQTZCQyxJQUE3QixFQUF3RTtBQUN0RSxTQUFPQSxJQUFJLENBQUNDLEdBQUwsQ0FBVVAsR0FBRCxJQUFTO0FBQ3ZCLFVBQU1RLGFBQWEsR0FBRyxxQkFBT1IsR0FBRyxDQUFDUyxJQUFYLEVBQWlCaEMsV0FBakIsRUFBOEJpQyxXQUE5QixFQUF0QjtBQUNBLFVBQU1DLGVBQWUsR0FBR1osWUFBWSxDQUFDQyxHQUFELENBQXBDO0FBQ0EsV0FBTztBQUNMWSxNQUFBQSxJQUFJLEVBQUVDLCtCQUFpQkMsTUFEbEI7QUFFTEMsTUFBQUEsVUFBVSxFQUFFZixHQUFHLENBQUNnQixTQUFKLEdBQWdCQyxRQUFRLENBQUNqQixHQUFHLENBQUNnQixTQUFMLEVBQWdCLEVBQWhCLENBQXhCLEdBQThDRSxTQUZyRDtBQUdMVCxNQUFBQSxJQUFJLEVBQUVELGFBSEQ7QUFJTFcsTUFBQUEsYUFBYSxFQUFFWCxhQUpWO0FBS0xZLE1BQUFBLGNBQWMsRUFBRVQsZUFMWDtBQU1MVSxNQUFBQSxnQkFBZ0IsRUFBRUMsMEJBTmI7QUFPTEMsTUFBQUEsYUFBYSxFQUFFWixlQVBWO0FBUUxhLE1BQUFBLE1BQU0sRUFBRXhCLEdBQUcsQ0FBQ3dCLE1BUlA7QUFTTEMsTUFBQUEsV0FBVyxFQUFFekIsR0FBRyxDQUFDeUIsV0FUWjtBQVVMQyxNQUFBQSxJQUFJLEVBQUUxQixHQUFHLENBQUMwQjtBQVZMLEtBQVA7QUFZRCxHQWZNLENBQVA7QUFnQkQ7O0FBRUQsU0FBU0Msb0JBQVQsQ0FBOEJyQixJQUE5QixFQUEwRHNCLE1BQTFELEVBQWtGO0FBQ2hGLFFBQU1DLEdBQUcsR0FBR0QsTUFBTSxDQUFDRSxTQUFuQixDQURnRixDQUdoRjs7QUFDQSxRQUFNQyxLQUFLLEdBQUcsT0FBZDtBQUVBLFFBQU1DLEVBQXNCLEdBQUc7QUFDN0J2QixJQUFBQSxJQUFJLEVBQUVvQixHQUFHLENBQUMsQ0FBRCxDQURvQjtBQUU3QmIsSUFBQUEsU0FBUyxFQUFFYSxHQUFHLENBQUMsQ0FBRCxDQUFILENBQU9oQyxPQUFQLENBQWVrQyxLQUFmLEVBQXNCLEVBQXRCLENBRmtCO0FBRzdCTCxJQUFBQSxJQUFJLEVBQUUsRUFIdUI7QUFJN0JELElBQUFBLFdBQVcsRUFBRUksR0FBRyxDQUFDLENBQUQsQ0FKYTtBQUs3QjNCLElBQUFBLEtBQUssRUFBRTJCLEdBQUcsQ0FBQyxDQUFELENBTG1CO0FBTTdCNUIsSUFBQUEsTUFBTSxFQUFFNEIsR0FBRyxDQUFDLENBQUQsQ0FOa0I7QUFPN0JMLElBQUFBLE1BQU0sRUFBRVMsa0NBQW9CQztBQVBDLEdBQS9CO0FBVUE1QixFQUFBQSxJQUFJLENBQUM2QixJQUFMLENBQVVILEVBQVY7QUFDRDs7QUFFRCxlQUFlSSxzQkFBZixDQUFzQ3JELElBQXRDLEVBQTBFO0FBQ3hFO0FBQ0EsUUFBTSxpREFBc0JBLElBQXRCLEVBQTRCLDhCQUE1QixFQUE0RCxJQUE1RCxDQUFOO0FBRUEsUUFBTXVCLElBQTBCLEdBQUcsRUFBbkM7QUFDQSxRQUFNK0IsZ0JBQWdCLEdBQUcsTUFBTSx1Q0FBOEJ0RCxJQUE5QixFQUFvQyx1Q0FBcEMsRUFBNkUsRUFBN0UsRUFBa0Z1RCxJQUFELElBQVU7QUFDeEgsV0FBUUEsSUFBRCxDQUF3Qi9CLEdBQXhCLENBQTZCc0IsR0FBRCxLQUFVO0FBQzNDVSxNQUFBQSxFQUFFLEVBQUdWLEdBQUQsQ0FBTVcsWUFBTixDQUFtQixJQUFuQixLQUE0QixFQURXO0FBRTNDVixNQUFBQSxTQUFTLEVBQUVXLEtBQUssQ0FBQ0MsSUFBTixDQUFXYixHQUFHLENBQUNjLG9CQUFKLENBQXlCLEtBQXpCLENBQVgsRUFBNENwQyxHQUE1QyxDQUFpRHNCLEdBQUQsSUFBVUEsR0FBRCxDQUFxQnBDLFNBQTlFO0FBRmdDLEtBQVYsQ0FBNUIsQ0FBUDtBQUlELEdBTDhCLENBQS9COztBQU9BLE9BQUssTUFBTW1DLE1BQVgsSUFBcUJTLGdCQUFyQixFQUF1QztBQUNyQ1YsSUFBQUEsb0JBQW9CLENBQUNyQixJQUFELEVBQU9zQixNQUFQLENBQXBCO0FBQ0Q7O0FBRUQsU0FBT3ZCLG1CQUFtQixDQUFDQyxJQUFELENBQTFCO0FBQ0QsQyxDQUVEOzs7QUFDQSxlQUFlc0MsYUFBZixDQUE2QjdELElBQTdCLEVBQXlDOEQsU0FBekMsRUFBNEQ7QUFDMUQ7QUFDQSxRQUFNQyxZQUFZLEdBQUdELFNBQVMsQ0FBQ0UsTUFBVixDQUFpQixHQUFqQixDQUFyQjtBQUNBLFFBQU1DLGNBQWMsR0FBR0gsU0FBUyxDQUFDRSxNQUFWLENBQWlCLEdBQWpCLENBQXZCO0FBQ0EsUUFBTUUsYUFBYSxHQUFHSixTQUFTLENBQUNFLE1BQVYsQ0FBaUIsR0FBakIsQ0FBdEIsQ0FKMEQsQ0FNMUQ7O0FBQ0EsUUFBTUcsWUFBWSxHQUFHLHNHQUFyQjtBQUNBLFFBQU0saURBQXNCbkUsSUFBdEIsRUFBNEJtRSxZQUE1QixFQUEwQyxJQUExQyxDQUFOO0FBQ0EsUUFBTSx1Q0FBWW5FLElBQVosRUFBa0JtRSxZQUFsQixDQUFOLENBVDBELENBVzFEOztBQUNBLFFBQU0saURBQXNCbkUsSUFBdEIsRUFBNEIsOEJBQTVCLEVBQTRELElBQTVELENBQU4sQ0FaMEQsQ0FjMUQ7O0FBQ0EsUUFBTW9FLGFBQWEsR0FBRyxZQUF0QjtBQUNBLFFBQU0saURBQXNCcEUsSUFBdEIsRUFBNEJvRSxhQUE1QixFQUEyQyxJQUEzQyxDQUFOO0FBQ0EsUUFBTSx1Q0FBWXBFLElBQVosRUFBa0JvRSxhQUFsQixDQUFOO0FBQ0EsUUFBTSxpREFBc0JwRSxJQUF0QixFQUE0QixnQ0FBNUIsRUFBOEQsSUFBOUQsQ0FBTixDQWxCMEQsQ0FvQjFEO0FBQ0E7O0FBQ0EsUUFBTSxpREFBc0JBLElBQXRCLEVBQTRCb0UsYUFBNUIsRUFBMkMsSUFBM0MsQ0FBTjtBQUNBLFFBQU0sdUNBQVlwRSxJQUFaLEVBQWtCb0UsYUFBbEIsQ0FBTjtBQUNBLFFBQU0saURBQXNCcEUsSUFBdEIsRUFBNEIsK0JBQTVCLEVBQTZELElBQTdELENBQU4sQ0F4QjBELENBMEIxRDs7QUFDQSxPQUFLLElBQUlxRSxDQUFDLEdBQUcsQ0FBYixFQUFnQkEsQ0FBQyxHQUFHLEVBQXBCLEVBQXdCQSxDQUFDLElBQUksQ0FBN0IsRUFBZ0M7QUFDOUIsVUFBTUMsUUFBUSxHQUFJLDhCQUE2QkQsQ0FBRSxHQUFqRDtBQUNBLFVBQU1FLElBQUksR0FBRyxNQUFNdkUsSUFBSSxDQUFDUSxLQUFMLENBQVc4RCxRQUFYLEVBQXNCRSxDQUFELElBQU87QUFDN0MsYUFBUUEsQ0FBRCxDQUFtQjlELFNBQTFCO0FBQ0QsS0FGa0IsQ0FBbkI7O0FBR0EsUUFBSXdELGFBQWEsS0FBS0ssSUFBdEIsRUFBNEI7QUFDMUIsWUFBTSx1Q0FBWXZFLElBQVosRUFBa0JzRSxRQUFsQixDQUFOO0FBQ0E7QUFDRDtBQUNGLEdBcEN5RCxDQXNDMUQ7OztBQUNBLFFBQU0saURBQXNCdEUsSUFBdEIsRUFBNEIsZ0NBQTVCLEVBQThELElBQTlELENBQU4sQ0F2QzBELENBd0MxRDs7QUFDQSxRQUFNeUUsYUFBYSxHQUFJLCtCQUE4QlIsY0FBZSxHQUFwRTtBQUNBLFFBQU0sdUNBQVlqRSxJQUFaLEVBQWtCeUUsYUFBbEIsQ0FBTixDQTFDMEQsQ0E0QzFEO0FBQ0E7QUFDQTtBQUNBOztBQUNBLE9BQUssSUFBSUosQ0FBQyxHQUFHLENBQWIsRUFBZ0JBLENBQUMsR0FBRyxFQUFwQixFQUF3QkEsQ0FBQyxJQUFJLENBQTdCLEVBQWdDO0FBQzlCLFVBQU1DLFFBQVEsR0FBSSw2QkFBNEJELENBQUUsR0FBaEQ7QUFDQSxVQUFNSyxHQUFHLEdBQUcsTUFBTTFFLElBQUksQ0FBQ1EsS0FBTCxDQUFXOEQsUUFBWCxFQUFzQkssQ0FBRCxJQUFPO0FBQzVDLGFBQVFBLENBQUQsQ0FBbUJqRSxTQUExQjtBQUNELEtBRmlCLENBQWxCOztBQUlBLFFBQUlxRCxZQUFZLEtBQUtXLEdBQXJCLEVBQTBCO0FBQ3hCLFlBQU0sdUNBQVkxRSxJQUFaLEVBQWtCc0UsUUFBbEIsQ0FBTjtBQUNBO0FBQ0Q7QUFDRjtBQUNGOztBQUdELGVBQWVNLGdCQUFmLENBQWdDNUUsSUFBaEMsRUFBNEM4RCxTQUE1QyxFQUErRGUsU0FBL0QsRUFBZ0g7QUFDOUcsUUFBTSxxREFBMEI3RSxJQUExQixFQUFnQyxzQkFBaEMsQ0FBTjtBQUNBLFFBQU02RCxhQUFhLENBQUM3RCxJQUFELEVBQU84RCxTQUFQLENBQW5CO0FBQ0EsUUFBTSxxREFBMEI5RCxJQUExQixFQUFnQyxzQkFBaEMsQ0FBTjtBQUNBLFFBQU11QixJQUFJLEdBQUcsTUFBTThCLHNCQUFzQixDQUFDckQsSUFBRCxDQUF6QztBQUVBLFNBQU87QUFDTDhFLElBQUFBLGFBQWEsRUFBRUQsU0FEVjtBQUVMdEQsSUFBQUE7QUFGSyxHQUFQO0FBSUQ7O0FBRUQsZUFBZXdELGFBQWYsQ0FBNkIvRSxJQUE3QixFQUF5QzhELFNBQXpDLEVBQTRGO0FBQzFGLFFBQU1rQixRQUErQixHQUFHLEVBQXhDLENBRDBGLENBRzFGOztBQUNBLFFBQU1ILFNBQVMsR0FBRyxNQUFNdkUsWUFBWSxDQUFDTixJQUFELENBQXBDO0FBQ0EsUUFBTWlGLFdBQVcsR0FBRyxNQUFNTCxnQkFBZ0IsQ0FBQzVFLElBQUQsRUFBTzhELFNBQVAsRUFBa0JlLFNBQWxCLENBQTFDO0FBQ0FHLEVBQUFBLFFBQVEsQ0FBQzVCLElBQVQsQ0FBYzZCLFdBQWQ7QUFFQSxTQUFPRCxRQUFQO0FBQ0Q7O0FBRUQsZUFBZUUsbUJBQWYsQ0FBbUNsRixJQUFuQyxFQUErQztBQUM3QyxRQUFNLGlEQUFzQkEsSUFBdEIsRUFBNkIsR0FBRUwsU0FBVSxFQUF6QyxFQUE0QyxJQUE1QyxDQUFOO0FBQ0EsUUFBTSxpREFBc0JLLElBQXRCLEVBQTZCLEdBQUVKLFdBQVksRUFBM0MsRUFBOEMsSUFBOUMsQ0FBTjtBQUNBLFFBQU0saURBQXNCSSxJQUF0QixFQUE2QixHQUFFSCxlQUFnQixFQUEvQyxFQUFrRCxJQUFsRCxDQUFOO0FBQ0EsUUFBTSxpREFBc0JHLElBQXRCLEVBQTZCLEdBQUVGLHFCQUFzQixFQUFyRCxFQUF3RCxJQUF4RCxDQUFOO0FBQ0Q7O0FBRUQsZUFBZXFGLGdCQUFmLENBQWdDbkYsSUFBaEMsRUFBNEM7QUFDMUM7QUFDQSxRQUFNLG1DQUFrQkEsSUFBbEIsQ0FBTjtBQUNBLFFBQU0scURBQTBCQSxJQUExQixFQUFnQyxzQkFBaEMsQ0FBTjtBQUNBLFFBQU1vRixVQUFVLEdBQUcsTUFBTSxnREFBcUJwRixJQUFyQixFQUEyQiw0QkFBM0IsQ0FBekI7O0FBQ0EsTUFBSW9GLFVBQUosRUFBZ0I7QUFDZCxVQUFNLHVDQUFZcEYsSUFBWixFQUFrQixTQUFsQixDQUFOO0FBQ0Q7O0FBRUQsUUFBTXFGLFFBQVEsR0FBR3JGLElBQUksQ0FBQ3NGLGVBQUwsQ0FBcUI3Rix3QkFBckIsRUFBK0M7QUFBRThGLElBQUFBLE9BQU8sRUFBRTtBQUFYLEdBQS9DLENBQWpCO0FBQ0EsUUFBTUMsUUFBUSxHQUFHeEYsSUFBSSxDQUFDc0YsZUFBTCxDQUFxQmhHLHdCQUFyQixFQUErQztBQUFFaUcsSUFBQUEsT0FBTyxFQUFFO0FBQVgsR0FBL0MsQ0FBakI7QUFDQSxRQUFNRSxRQUFRLEdBQUcsQ0FBQ0osUUFBRCxFQUFXRyxRQUFYLENBQWpCO0FBRUEsUUFBTUUsT0FBTyxDQUFDQyxJQUFSLENBQWFGLFFBQWIsQ0FBTjtBQUNBLFFBQU0scURBQTBCekYsSUFBMUIsRUFBZ0Msc0JBQWhDLENBQU47QUFDRDs7QUFJRCxNQUFNNEYsWUFBTixTQUEyQkMsOENBQTNCLENBQThFO0FBQzVFQyxFQUFBQSxlQUFlLENBQUNDLFdBQUQsRUFBMEM7QUFDdkQsV0FBTztBQUNMQyxNQUFBQSxRQUFRLEVBQUcsR0FBRTdHLFNBQVUsRUFEbEI7QUFFTDhHLE1BQUFBLE1BQU0sRUFBRSxDQUNOO0FBQUUzQixRQUFBQSxRQUFRLEVBQUcsR0FBRTNFLFNBQVUsRUFBekI7QUFBNEJ1RyxRQUFBQSxLQUFLLEVBQUVILFdBQVcsQ0FBQ0k7QUFBL0MsT0FETSxFQUVOO0FBQUU3QixRQUFBQSxRQUFRLEVBQUcsR0FBRTFFLFdBQVksRUFBM0I7QUFBOEJzRyxRQUFBQSxLQUFLLEVBQUVILFdBQVcsQ0FBQ0s7QUFBakQsT0FGTSxFQUdOO0FBQUU5QixRQUFBQSxRQUFRLEVBQUcsR0FBRXpFLGVBQWdCLEVBQS9CO0FBQWtDcUcsUUFBQUEsS0FBSyxFQUFFSCxXQUFXLENBQUNNO0FBQXJELE9BSE0sQ0FGSDtBQU9MQyxNQUFBQSxvQkFBb0IsRUFBRyxHQUFFeEcscUJBQXNCLEVBUDFDO0FBUUx5RyxNQUFBQSxjQUFjLEVBQUUsWUFBWXJCLG1CQUFtQixDQUFDLEtBQUtsRixJQUFOLENBUjFDO0FBU0x3RyxNQUFBQSxVQUFVLEVBQUUsWUFBWXJCLGdCQUFnQixDQUFDLEtBQUtuRixJQUFOLENBVG5DO0FBVUx5RyxNQUFBQSxlQUFlLEVBQUUxRyx1QkFBdUIsQ0FBQyxLQUFLQyxJQUFOO0FBVm5DLEtBQVA7QUFZRDs7QUFFRCxRQUFNMEcsU0FBTixHQUFrQjtBQUNoQjtBQUNBLFVBQU0saURBQXNCLEtBQUsxRyxJQUEzQixFQUFpQ1Asd0JBQWpDLEVBQTJELElBQTNELENBQU47QUFDQSxVQUFNLHVDQUFZLEtBQUtPLElBQWpCLEVBQXVCUCx3QkFBdkIsQ0FBTjtBQUNBLFVBQU0saURBQXNCLEtBQUtPLElBQTNCLEVBQWlDLHVDQUFqQyxFQUEwRSxJQUExRSxDQUFOO0FBRUEsVUFBTTJHLGtCQUFrQixHQUFHLHVCQUFTQyxRQUFULENBQWtCLENBQWxCLEVBQXFCLFFBQXJCLEVBQStCQyxHQUEvQixDQUFtQyxDQUFuQyxFQUFzQyxLQUF0QyxDQUEzQjtBQUNBLFVBQU0vQyxTQUFTLEdBQUcsS0FBS2dELE9BQUwsQ0FBYWhELFNBQWIsSUFBMEI2QyxrQkFBa0IsQ0FBQ0ksTUFBbkIsRUFBNUM7O0FBQ0EsVUFBTUMsV0FBVyxHQUFHQyxnQkFBT0MsR0FBUCxDQUFXUCxrQkFBWCxFQUErQixxQkFBTzdDLFNBQVAsQ0FBL0IsQ0FBcEI7O0FBRUEsVUFBTWtCLFFBQVEsR0FBRyxNQUFNRCxhQUFhLENBQUMsS0FBSy9FLElBQU4sRUFBWWdILFdBQVosQ0FBcEM7QUFFQSxXQUFPO0FBQ0xHLE1BQUFBLE9BQU8sRUFBRSxJQURKO0FBRUxuQyxNQUFBQTtBQUZLLEtBQVA7QUFJRDs7QUFoQzJFOztlQW1DL0RZLFkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbW9tZW50LCB7IE1vbWVudCB9IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBQYWdlIH0gZnJvbSAncHVwcGV0ZWVyJztcbmltcG9ydCB7IFNIRUtFTF9DVVJSRU5DWSB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQge1xuICBjbGlja0J1dHRvbiwgZWxlbWVudFByZXNlbnRPblBhZ2UsXG4gIHBhZ2VFdmFsQWxsLCB3YWl0VW50aWxFbGVtZW50RGlzYXBwZWFyLCB3YWl0VW50aWxFbGVtZW50Rm91bmQsXG59IGZyb20gJy4uL2hlbHBlcnMvZWxlbWVudHMtaW50ZXJhY3Rpb25zJztcbmltcG9ydCB7IHdhaXRGb3JOYXZpZ2F0aW9uIH0gZnJvbSAnLi4vaGVscGVycy9uYXZpZ2F0aW9uJztcbmltcG9ydCB7XG4gIFRyYW5zYWN0aW9uLCBUcmFuc2FjdGlvbnNBY2NvdW50LFxuICBUcmFuc2FjdGlvblN0YXR1c2VzLCBUcmFuc2FjdGlvblR5cGVzLFxufSBmcm9tICcuLi90cmFuc2FjdGlvbnMnO1xuaW1wb3J0IHtcbiAgQmFzZVNjcmFwZXJXaXRoQnJvd3NlcixcbiAgTG9naW5SZXN1bHRzLFxuICBQb3NzaWJsZUxvZ2luUmVzdWx0cyxcbn0gZnJvbSAnLi9iYXNlLXNjcmFwZXItd2l0aC1icm93c2VyJztcblxuY29uc3QgTE9HSU5fVVJMID0gJ2h0dHBzOi8vbG9naW4ueWFoYXYuY28uaWwvbG9naW4vJztcbmNvbnN0IEJBU0VfVVJMID0gJ2h0dHBzOi8vZGlnaXRhbC55YWhhdi5jby5pbC9CYU5DU0RpZ2l0YWxVSS9hcHAvaW5kZXguaHRtbCMvJztcbmNvbnN0IElOVkFMSURfREVUQUlMU19TRUxFQ1RPUiA9ICcudWktZGlhbG9nLWJ1dHRvbnMnO1xuY29uc3QgQ0hBTkdFX1BBU1NXT1JEX09MRF9QQVNTID0gJ2lucHV0I2VmX3JlcV9wYXJhbWV0ZXJfb2xkX2NyZWRlbnRpYWwnO1xuY29uc3QgQkFTRV9XRUxDT01FX1VSTCA9IGAke0JBU0VfVVJMfW1haW4vaG9tZWA7XG5cbmNvbnN0IEFDQ09VTlRfSURfU0VMRUNUT1IgPSAnLmRyb3Bkb3duLWRpciAuc2VsZWN0ZWQtaXRlbS10b3AnO1xuY29uc3QgQUNDT1VOVF9ERVRBSUxTX1NFTEVDVE9SID0gJy5hY2NvdW50LWRldGFpbHMnO1xuY29uc3QgREFURV9GT1JNQVQgPSAnREQvTU0vWVlZWSc7XG5cbmNvbnN0IFVTRVJfRUxFTSA9ICcjdXNlcm5hbWUnO1xuY29uc3QgUEFTU1dEX0VMRU0gPSAnI3Bhc3N3b3JkJztcbmNvbnN0IE5BVElPTkFMSURfRUxFTSA9ICcjcGlubm8nO1xuY29uc3QgU1VCTUlUX0xPR0lOX1NFTEVDVE9SID0gJy5idG4nO1xuXG5pbnRlcmZhY2UgU2NyYXBlZFRyYW5zYWN0aW9uIHtcbiAgY3JlZGl0OiBzdHJpbmc7XG4gIGRlYml0OiBzdHJpbmc7XG4gIGRhdGU6IHN0cmluZztcbiAgcmVmZXJlbmNlPzogc3RyaW5nO1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICBtZW1vOiBzdHJpbmc7XG4gIHN0YXR1czogVHJhbnNhY3Rpb25TdGF0dXNlcztcbn1cblxuZnVuY3Rpb24gZ2V0UG9zc2libGVMb2dpblJlc3VsdHMocGFnZTogUGFnZSk6IFBvc3NpYmxlTG9naW5SZXN1bHRzIHtcbiAgLy8gY2hlY2tvdXQgZmlsZSBgYmFzZS1zY3JhcGVyLXdpdGgtYnJvd3Nlci50c2AgZm9yIGF2YWlsYWJsZSByZXN1bHQgdHlwZXNcbiAgY29uc3QgdXJsczogUG9zc2libGVMb2dpblJlc3VsdHMgPSB7fTtcbiAgdXJsc1tMb2dpblJlc3VsdHMuU3VjY2Vzc10gPSBbXG4gICAgYCR7QkFTRV9XRUxDT01FX1VSTH1gLFxuICBdO1xuICB1cmxzW0xvZ2luUmVzdWx0cy5JbnZhbGlkUGFzc3dvcmRdID0gW2FzeW5jICgpID0+IHtcbiAgICByZXR1cm4gZWxlbWVudFByZXNlbnRPblBhZ2UocGFnZSwgYCR7SU5WQUxJRF9ERVRBSUxTX1NFTEVDVE9SfWApO1xuICB9XTtcblxuICB1cmxzW0xvZ2luUmVzdWx0cy5DaGFuZ2VQYXNzd29yZF0gPSBbYXN5bmMgKCkgPT4ge1xuICAgIHJldHVybiBlbGVtZW50UHJlc2VudE9uUGFnZShwYWdlLCBgJHtDSEFOR0VfUEFTU1dPUkRfT0xEX1BBU1N9YCk7XG4gIH1dO1xuXG4gIHJldHVybiB1cmxzO1xufVxuXG5hc3luYyBmdW5jdGlvbiBnZXRBY2NvdW50SUQocGFnZTogUGFnZSkge1xuICBjb25zdCBzZWxlY3RlZFNuaWZBY2NvdW50ID0gYXdhaXQgcGFnZS4kZXZhbChgJHtBQ0NPVU5UX0lEX1NFTEVDVE9SfWAsIChvcHRpb24pID0+IHtcbiAgICByZXR1cm4gKG9wdGlvbiBhcyBIVE1MRWxlbWVudCkuaW5uZXJUZXh0O1xuICB9KTtcblxuICByZXR1cm4gc2VsZWN0ZWRTbmlmQWNjb3VudDtcbn1cblxuZnVuY3Rpb24gZ2V0QW1vdW50RGF0YShhbW91bnRTdHI6IHN0cmluZykge1xuICBjb25zdCBhbW91bnRTdHJDb3B5ID0gYW1vdW50U3RyLnJlcGxhY2UoJywnLCAnJyk7XG4gIHJldHVybiBwYXJzZUZsb2F0KGFtb3VudFN0ckNvcHkpO1xufVxuXG5mdW5jdGlvbiBnZXRUeG5BbW91bnQodHhuOiBTY3JhcGVkVHJhbnNhY3Rpb24pIHtcbiAgY29uc3QgY3JlZGl0ID0gZ2V0QW1vdW50RGF0YSh0eG4uY3JlZGl0KTtcbiAgY29uc3QgZGViaXQgPSBnZXRBbW91bnREYXRhKHR4bi5kZWJpdCk7XG4gIHJldHVybiAoTnVtYmVyLmlzTmFOKGNyZWRpdCkgPyAwIDogY3JlZGl0KSAtIChOdW1iZXIuaXNOYU4oZGViaXQpID8gMCA6IGRlYml0KTtcbn1cblxudHlwZSBUcmFuc2FjdGlvbnNUciA9IHsgaWQ6IHN0cmluZywgaW5uZXJEaXZzOiBzdHJpbmdbXSB9O1xuXG5mdW5jdGlvbiBjb252ZXJ0VHJhbnNhY3Rpb25zKHR4bnM6IFNjcmFwZWRUcmFuc2FjdGlvbltdKTogVHJhbnNhY3Rpb25bXSB7XG4gIHJldHVybiB0eG5zLm1hcCgodHhuKSA9PiB7XG4gICAgY29uc3QgY29udmVydGVkRGF0ZSA9IG1vbWVudCh0eG4uZGF0ZSwgREFURV9GT1JNQVQpLnRvSVNPU3RyaW5nKCk7XG4gICAgY29uc3QgY29udmVydGVkQW1vdW50ID0gZ2V0VHhuQW1vdW50KHR4bik7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IFRyYW5zYWN0aW9uVHlwZXMuTm9ybWFsLFxuICAgICAgaWRlbnRpZmllcjogdHhuLnJlZmVyZW5jZSA/IHBhcnNlSW50KHR4bi5yZWZlcmVuY2UsIDEwKSA6IHVuZGVmaW5lZCxcbiAgICAgIGRhdGU6IGNvbnZlcnRlZERhdGUsXG4gICAgICBwcm9jZXNzZWREYXRlOiBjb252ZXJ0ZWREYXRlLFxuICAgICAgb3JpZ2luYWxBbW91bnQ6IGNvbnZlcnRlZEFtb3VudCxcbiAgICAgIG9yaWdpbmFsQ3VycmVuY3k6IFNIRUtFTF9DVVJSRU5DWSxcbiAgICAgIGNoYXJnZWRBbW91bnQ6IGNvbnZlcnRlZEFtb3VudCxcbiAgICAgIHN0YXR1czogdHhuLnN0YXR1cyxcbiAgICAgIGRlc2NyaXB0aW9uOiB0eG4uZGVzY3JpcHRpb24sXG4gICAgICBtZW1vOiB0eG4ubWVtbyxcbiAgICB9O1xuICB9KTtcbn1cblxuZnVuY3Rpb24gaGFuZGxlVHJhbnNhY3Rpb25Sb3codHhuczogU2NyYXBlZFRyYW5zYWN0aW9uW10sIHR4blJvdzogVHJhbnNhY3Rpb25zVHIpIHtcbiAgY29uc3QgZGl2ID0gdHhuUm93LmlubmVyRGl2cztcblxuICAvLyBSZW1vdmUgYW55dGhpbmcgZXhjZXB0IGRpZ2l0cy5cbiAgY29uc3QgcmVnZXggPSAvXFxEKy9nbTtcblxuICBjb25zdCB0eDogU2NyYXBlZFRyYW5zYWN0aW9uID0ge1xuICAgIGRhdGU6IGRpdlsxXSxcbiAgICByZWZlcmVuY2U6IGRpdlsyXS5yZXBsYWNlKHJlZ2V4LCAnJyksXG4gICAgbWVtbzogJycsXG4gICAgZGVzY3JpcHRpb246IGRpdlszXSxcbiAgICBkZWJpdDogZGl2WzRdLFxuICAgIGNyZWRpdDogZGl2WzVdLFxuICAgIHN0YXR1czogVHJhbnNhY3Rpb25TdGF0dXNlcy5Db21wbGV0ZWQsXG4gIH07XG5cbiAgdHhucy5wdXNoKHR4KTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZ2V0QWNjb3VudFRyYW5zYWN0aW9ucyhwYWdlOiBQYWdlKTogUHJvbWlzZTxUcmFuc2FjdGlvbltdPiB7XG4gIC8vIFdhaXQgZm9yIHRyYW5zYWN0aW9ucy5cbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsICcudW5kZXItbGluZS10eG4tdGFibGUtaGVhZGVyJywgdHJ1ZSk7XG5cbiAgY29uc3QgdHhuczogU2NyYXBlZFRyYW5zYWN0aW9uW10gPSBbXTtcbiAgY29uc3QgdHJhbnNhY3Rpb25zRGl2cyA9IGF3YWl0IHBhZ2VFdmFsQWxsPFRyYW5zYWN0aW9uc1RyW10+KHBhZ2UsICcubGlzdC1pdGVtLWhvbGRlciAuZW50aXJlLWNvbnRlbnQtY3RyJywgW10sIChkaXZzKSA9PiB7XG4gICAgcmV0dXJuIChkaXZzIGFzIEhUTUxFbGVtZW50W10pLm1hcCgoZGl2KSA9PiAoe1xuICAgICAgaWQ6IChkaXYpLmdldEF0dHJpYnV0ZSgnaWQnKSB8fCAnJyxcbiAgICAgIGlubmVyRGl2czogQXJyYXkuZnJvbShkaXYuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2RpdicpKS5tYXAoKGRpdikgPT4gKGRpdiBhcyBIVE1MRWxlbWVudCkuaW5uZXJUZXh0KSxcbiAgICB9KSk7XG4gIH0pO1xuXG4gIGZvciAoY29uc3QgdHhuUm93IG9mIHRyYW5zYWN0aW9uc0RpdnMpIHtcbiAgICBoYW5kbGVUcmFuc2FjdGlvblJvdyh0eG5zLCB0eG5Sb3cpO1xuICB9XG5cbiAgcmV0dXJuIGNvbnZlcnRUcmFuc2FjdGlvbnModHhucyk7XG59XG5cbi8vIE1hbmlwdWxhdGUgdGhlIGNhbGVuZGFyIGRyb3AgZG93biB0byBjaG9vc2UgdGhlIHR4cyBzdGFydCBkYXRlLlxuYXN5bmMgZnVuY3Rpb24gc2VhcmNoQnlEYXRlcyhwYWdlOiBQYWdlLCBzdGFydERhdGU6IE1vbWVudCkge1xuICAvLyBHZXQgdGhlIGRheSBudW1iZXIgZnJvbSBzdGFydERhdGUuIDEtMzEgKHVzdWFsbHkgMSlcbiAgY29uc3Qgc3RhcnREYXRlRGF5ID0gc3RhcnREYXRlLmZvcm1hdCgnRCcpO1xuICBjb25zdCBzdGFydERhdGVNb250aCA9IHN0YXJ0RGF0ZS5mb3JtYXQoJ00nKTtcbiAgY29uc3Qgc3RhcnREYXRlWWVhciA9IHN0YXJ0RGF0ZS5mb3JtYXQoJ1knKTtcblxuICAvLyBPcGVuIHRoZSBjYWxlbmRhciBkYXRlIHBpY2tlclxuICBjb25zdCBkYXRlRnJvbVBpY2sgPSAnZGl2LmRhdGUtb3B0aW9ucy1jZWxsOm50aC1jaGlsZCg3KSA+IGRhdGUtcGlja2VyOm50aC1jaGlsZCgxKSA+IGRpdjpudGgtY2hpbGQoMSkgPiBzcGFuOm50aC1jaGlsZCgyKSc7XG4gIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnRGb3VuZChwYWdlLCBkYXRlRnJvbVBpY2ssIHRydWUpO1xuICBhd2FpdCBjbGlja0J1dHRvbihwYWdlLCBkYXRlRnJvbVBpY2spO1xuXG4gIC8vIFdhaXQgdW50aWwgZmlyc3QgZGF5IGFwcGVhci5cbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsICcucG11LWRheXMgPiBkaXY6bnRoLWNoaWxkKDEpJywgdHJ1ZSk7XG5cbiAgLy8gT3BlbiBNb250aHMgb3B0aW9ucy5cbiAgY29uc3QgbW9udGhGcm9tUGljayA9ICcucG11LW1vbnRoJztcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsIG1vbnRoRnJvbVBpY2ssIHRydWUpO1xuICBhd2FpdCBjbGlja0J1dHRvbihwYWdlLCBtb250aEZyb21QaWNrKTtcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsICcucG11LW1vbnRocyA+IGRpdjpudGgtY2hpbGQoMSknLCB0cnVlKTtcblxuICAvLyBPcGVuIFllYXIgb3B0aW9ucy5cbiAgLy8gVXNlIHNhbWUgc2VsZWN0b3IuLi4gWWFoYXYga25vd3Mgd2h5Li4uXG4gIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnRGb3VuZChwYWdlLCBtb250aEZyb21QaWNrLCB0cnVlKTtcbiAgYXdhaXQgY2xpY2tCdXR0b24ocGFnZSwgbW9udGhGcm9tUGljayk7XG4gIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnRGb3VuZChwYWdlLCAnLnBtdS15ZWFycyA+IGRpdjpudGgtY2hpbGQoMSknLCB0cnVlKTtcblxuICAvLyBTZWxlY3QgeWVhciBmcm9tIGEgMTIgeWVhciBncmlkLlxuICBmb3IgKGxldCBpID0gMTsgaSA8IDEzOyBpICs9IDEpIHtcbiAgICBjb25zdCBzZWxlY3RvciA9IGAucG11LXllYXJzID4gZGl2Om50aC1jaGlsZCgke2l9KWA7XG4gICAgY29uc3QgeWVhciA9IGF3YWl0IHBhZ2UuJGV2YWwoc2VsZWN0b3IsICh5KSA9PiB7XG4gICAgICByZXR1cm4gKHkgYXMgSFRNTEVsZW1lbnQpLmlubmVyVGV4dDtcbiAgICB9KTtcbiAgICBpZiAoc3RhcnREYXRlWWVhciA9PT0geWVhcikge1xuICAgICAgYXdhaXQgY2xpY2tCdXR0b24ocGFnZSwgc2VsZWN0b3IpO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgLy8gU2VsZWN0IE1vbnRoLlxuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgJy5wbXUtbW9udGhzID4gZGl2Om50aC1jaGlsZCgxKScsIHRydWUpO1xuICAvLyBUaGUgZmlyc3QgZWxlbWVudCAoMSkgaXMgSmFudWFyeS5cbiAgY29uc3QgbW9udGhTZWxlY3RvciA9IGAucG11LW1vbnRocyA+IGRpdjpudGgtY2hpbGQoJHtzdGFydERhdGVNb250aH0pYDtcbiAgYXdhaXQgY2xpY2tCdXR0b24ocGFnZSwgbW9udGhTZWxlY3Rvcik7XG5cbiAgLy8gU2VsZWN0IERheS5cbiAgLy8gVGhlIGNhbGVuZGFyIGdyaWQgc2hvd3MgNyBkYXlzIGFuZCA2IHdlZWtzID0gNDIgZGF5cy5cbiAgLy8gSW4gdGhlb3J5LCB0aGUgZmlyc3QgZGF5IG9mIHRoZSBtb250aCB3aWxsIGJlIGluIHRoZSBmaXJzdCByb3cuXG4gIC8vIExldCdzIGNoZWNrIGV2ZXJ5dGhpbmcganVzdCBpbiBjYXNlLi4uXG4gIGZvciAobGV0IGkgPSAxOyBpIDwgNDI7IGkgKz0gMSkge1xuICAgIGNvbnN0IHNlbGVjdG9yID0gYC5wbXUtZGF5cyA+IGRpdjpudGgtY2hpbGQoJHtpfSlgO1xuICAgIGNvbnN0IGRheSA9IGF3YWl0IHBhZ2UuJGV2YWwoc2VsZWN0b3IsIChkKSA9PiB7XG4gICAgICByZXR1cm4gKGQgYXMgSFRNTEVsZW1lbnQpLmlubmVyVGV4dDtcbiAgICB9KTtcblxuICAgIGlmIChzdGFydERhdGVEYXkgPT09IGRheSkge1xuICAgICAgYXdhaXQgY2xpY2tCdXR0b24ocGFnZSwgc2VsZWN0b3IpO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG59XG5cblxuYXN5bmMgZnVuY3Rpb24gZmV0Y2hBY2NvdW50RGF0YShwYWdlOiBQYWdlLCBzdGFydERhdGU6IE1vbWVudCwgYWNjb3VudElEOiBzdHJpbmcpOiBQcm9taXNlPFRyYW5zYWN0aW9uc0FjY291bnQ+IHtcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudERpc2FwcGVhcihwYWdlLCAnLmxvYWRpbmctYmFyLXNwaW5uZXInKTtcbiAgYXdhaXQgc2VhcmNoQnlEYXRlcyhwYWdlLCBzdGFydERhdGUpO1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50RGlzYXBwZWFyKHBhZ2UsICcubG9hZGluZy1iYXItc3Bpbm5lcicpO1xuICBjb25zdCB0eG5zID0gYXdhaXQgZ2V0QWNjb3VudFRyYW5zYWN0aW9ucyhwYWdlKTtcblxuICByZXR1cm4ge1xuICAgIGFjY291bnROdW1iZXI6IGFjY291bnRJRCxcbiAgICB0eG5zLFxuICB9O1xufVxuXG5hc3luYyBmdW5jdGlvbiBmZXRjaEFjY291bnRzKHBhZ2U6IFBhZ2UsIHN0YXJ0RGF0ZTogTW9tZW50KTogUHJvbWlzZTxUcmFuc2FjdGlvbnNBY2NvdW50W10+IHtcbiAgY29uc3QgYWNjb3VudHM6IFRyYW5zYWN0aW9uc0FjY291bnRbXSA9IFtdO1xuXG4gIC8vIFRPRE86IGdldCBtb3JlIGFjY291bnRzLiBOb3Qgc3VyZSBpcyBzdXBwb3J0ZWQuXG4gIGNvbnN0IGFjY291bnRJRCA9IGF3YWl0IGdldEFjY291bnRJRChwYWdlKTtcbiAgY29uc3QgYWNjb3VudERhdGEgPSBhd2FpdCBmZXRjaEFjY291bnREYXRhKHBhZ2UsIHN0YXJ0RGF0ZSwgYWNjb3VudElEKTtcbiAgYWNjb3VudHMucHVzaChhY2NvdW50RGF0YSk7XG5cbiAgcmV0dXJuIGFjY291bnRzO1xufVxuXG5hc3luYyBmdW5jdGlvbiB3YWl0UmVhZGluZXNzRm9yQWxsKHBhZ2U6IFBhZ2UpIHtcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsIGAke1VTRVJfRUxFTX1gLCB0cnVlKTtcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsIGAke1BBU1NXRF9FTEVNfWAsIHRydWUpO1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgYCR7TkFUSU9OQUxJRF9FTEVNfWAsIHRydWUpO1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgYCR7U1VCTUlUX0xPR0lOX1NFTEVDVE9SfWAsIHRydWUpO1xufVxuXG5hc3luYyBmdW5jdGlvbiByZWRpcmVjdE9yRGlhbG9nKHBhZ2U6IFBhZ2UpIHtcbiAgLy8gQ2xpY2sgb24gYmFuayBtZXNzYWdlcyBpZiBhbnkuXG4gIGF3YWl0IHdhaXRGb3JOYXZpZ2F0aW9uKHBhZ2UpO1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50RGlzYXBwZWFyKHBhZ2UsICcubG9hZGluZy1iYXItc3Bpbm5lcicpO1xuICBjb25zdCBoYXNNZXNzYWdlID0gYXdhaXQgZWxlbWVudFByZXNlbnRPblBhZ2UocGFnZSwgJy5tZXNzYWdpbmctbGlua3MtY29udGFpbmVyJyk7XG4gIGlmIChoYXNNZXNzYWdlKSB7XG4gICAgYXdhaXQgY2xpY2tCdXR0b24ocGFnZSwgJy5saW5rLTEnKTtcbiAgfVxuXG4gIGNvbnN0IHByb21pc2UxID0gcGFnZS53YWl0Rm9yU2VsZWN0b3IoQUNDT1VOVF9ERVRBSUxTX1NFTEVDVE9SLCB7IHRpbWVvdXQ6IDMwMDAwIH0pO1xuICBjb25zdCBwcm9taXNlMiA9IHBhZ2Uud2FpdEZvclNlbGVjdG9yKENIQU5HRV9QQVNTV09SRF9PTERfUEFTUywgeyB0aW1lb3V0OiAzMDAwMCB9KTtcbiAgY29uc3QgcHJvbWlzZXMgPSBbcHJvbWlzZTEsIHByb21pc2UyXTtcblxuICBhd2FpdCBQcm9taXNlLnJhY2UocHJvbWlzZXMpO1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50RGlzYXBwZWFyKHBhZ2UsICcubG9hZGluZy1iYXItc3Bpbm5lcicpO1xufVxuXG50eXBlIFNjcmFwZXJTcGVjaWZpY0NyZWRlbnRpYWxzID0ge3VzZXJuYW1lOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcsIG5hdGlvbmFsSUQ6IHN0cmluZ307XG5cbmNsYXNzIFlhaGF2U2NyYXBlciBleHRlbmRzIEJhc2VTY3JhcGVyV2l0aEJyb3dzZXI8U2NyYXBlclNwZWNpZmljQ3JlZGVudGlhbHM+IHtcbiAgZ2V0TG9naW5PcHRpb25zKGNyZWRlbnRpYWxzOiBTY3JhcGVyU3BlY2lmaWNDcmVkZW50aWFscykge1xuICAgIHJldHVybiB7XG4gICAgICBsb2dpblVybDogYCR7TE9HSU5fVVJMfWAsXG4gICAgICBmaWVsZHM6IFtcbiAgICAgICAgeyBzZWxlY3RvcjogYCR7VVNFUl9FTEVNfWAsIHZhbHVlOiBjcmVkZW50aWFscy51c2VybmFtZSB9LFxuICAgICAgICB7IHNlbGVjdG9yOiBgJHtQQVNTV0RfRUxFTX1gLCB2YWx1ZTogY3JlZGVudGlhbHMucGFzc3dvcmQgfSxcbiAgICAgICAgeyBzZWxlY3RvcjogYCR7TkFUSU9OQUxJRF9FTEVNfWAsIHZhbHVlOiBjcmVkZW50aWFscy5uYXRpb25hbElEIH0sXG4gICAgICBdLFxuICAgICAgc3VibWl0QnV0dG9uU2VsZWN0b3I6IGAke1NVQk1JVF9MT0dJTl9TRUxFQ1RPUn1gLFxuICAgICAgY2hlY2tSZWFkaW5lc3M6IGFzeW5jICgpID0+IHdhaXRSZWFkaW5lc3NGb3JBbGwodGhpcy5wYWdlKSxcbiAgICAgIHBvc3RBY3Rpb246IGFzeW5jICgpID0+IHJlZGlyZWN0T3JEaWFsb2codGhpcy5wYWdlKSxcbiAgICAgIHBvc3NpYmxlUmVzdWx0czogZ2V0UG9zc2libGVMb2dpblJlc3VsdHModGhpcy5wYWdlKSxcbiAgICB9O1xuICB9XG5cbiAgYXN5bmMgZmV0Y2hEYXRhKCkge1xuICAgIC8vIEdvdG8gc3RhdGVtZW50cyBwYWdlXG4gICAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHRoaXMucGFnZSwgQUNDT1VOVF9ERVRBSUxTX1NFTEVDVE9SLCB0cnVlKTtcbiAgICBhd2FpdCBjbGlja0J1dHRvbih0aGlzLnBhZ2UsIEFDQ09VTlRfREVUQUlMU19TRUxFQ1RPUik7XG4gICAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHRoaXMucGFnZSwgJy5zdGF0ZW1lbnQtb3B0aW9ucyAuc2VsZWN0ZWQtaXRlbS10b3AnLCB0cnVlKTtcblxuICAgIGNvbnN0IGRlZmF1bHRTdGFydE1vbWVudCA9IG1vbWVudCgpLnN1YnRyYWN0KDMsICdtb250aHMnKS5hZGQoMSwgJ2RheScpO1xuICAgIGNvbnN0IHN0YXJ0RGF0ZSA9IHRoaXMub3B0aW9ucy5zdGFydERhdGUgfHwgZGVmYXVsdFN0YXJ0TW9tZW50LnRvRGF0ZSgpO1xuICAgIGNvbnN0IHN0YXJ0TW9tZW50ID0gbW9tZW50Lm1heChkZWZhdWx0U3RhcnRNb21lbnQsIG1vbWVudChzdGFydERhdGUpKTtcblxuICAgIGNvbnN0IGFjY291bnRzID0gYXdhaXQgZmV0Y2hBY2NvdW50cyh0aGlzLnBhZ2UsIHN0YXJ0TW9tZW50KTtcblxuICAgIHJldHVybiB7XG4gICAgICBzdWNjZXNzOiB0cnVlLFxuICAgICAgYWNjb3VudHMsXG4gICAgfTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBZYWhhdlNjcmFwZXI7XG4iXX0=
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "israeli-bank-scrapers",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.7.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Provide scrapers for all major Israeli banks and credit card companies",
|
|
6
6
|
"engines": {
|
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
"rimraf": "^3.0.0",
|
|
77
77
|
"source-map-support": "^0.5.16",
|
|
78
78
|
"ts-jest": "^25.3.0",
|
|
79
|
-
"typescript": "^3.
|
|
79
|
+
"typescript": "^3.9.10"
|
|
80
80
|
},
|
|
81
81
|
"dependencies": {
|
|
82
82
|
"build-url": "^2.0.0",
|