israeli-bank-scrapers 4.2.1 → 4.3.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 (62) hide show
  1. package/README.md +14 -0
  2. package/lib/assertNever.js +1 -2
  3. package/lib/constants.js +1 -1
  4. package/lib/definitions.d.ts +5 -0
  5. package/lib/definitions.js +7 -4
  6. package/lib/helpers/dates.js +1 -7
  7. package/lib/helpers/debug.js +1 -4
  8. package/lib/helpers/elements-interactions.js +5 -27
  9. package/lib/helpers/fetch.js +1 -21
  10. package/lib/helpers/navigation.js +1 -9
  11. package/lib/helpers/storage.js +1 -3
  12. package/lib/helpers/transactions.js +1 -17
  13. package/lib/helpers/waiting.js +4 -12
  14. package/lib/index.js +2 -12
  15. package/lib/scrapers/amex.js +1 -7
  16. package/lib/scrapers/amex.test.js +1 -14
  17. package/lib/scrapers/base-beinleumi-group.js +4 -67
  18. package/lib/scrapers/base-isracard-amex.js +1 -75
  19. package/lib/scrapers/base-scraper-with-browser.js +14 -82
  20. package/lib/scrapers/base-scraper-with-browser.test.js +13 -23
  21. package/lib/scrapers/base-scraper.js +13 -36
  22. package/lib/scrapers/behatsdaa.js +5 -26
  23. package/lib/scrapers/behatsdaa.test.js +1 -10
  24. package/lib/scrapers/beinleumi.js +1 -11
  25. package/lib/scrapers/beinleumi.test.js +1 -14
  26. package/lib/scrapers/beyahad-bishvilha.js +1 -35
  27. package/lib/scrapers/beyahad-bishvilha.test.js +1 -14
  28. package/lib/scrapers/discount.js +1 -31
  29. package/lib/scrapers/discount.test.js +1 -14
  30. package/lib/scrapers/errors.js +1 -5
  31. package/lib/scrapers/factory.js +4 -39
  32. package/lib/scrapers/factory.test.js +2 -4
  33. package/lib/scrapers/hapoalim.js +4 -50
  34. package/lib/scrapers/hapoalim.test.js +1 -14
  35. package/lib/scrapers/interface.js +1 -1
  36. package/lib/scrapers/isracard.js +1 -7
  37. package/lib/scrapers/isracard.test.js +1 -14
  38. package/lib/scrapers/leumi.js +13 -45
  39. package/lib/scrapers/leumi.test.js +1 -14
  40. package/lib/scrapers/massad.js +1 -11
  41. package/lib/scrapers/max.d.ts +20 -0
  42. package/lib/scrapers/max.js +76 -111
  43. package/lib/scrapers/max.test.js +21 -16
  44. package/lib/scrapers/mercantile.d.ts +20 -0
  45. package/lib/scrapers/mercantile.js +21 -0
  46. package/lib/scrapers/mercantile.test.d.ts +1 -0
  47. package/lib/scrapers/mercantile.test.js +48 -0
  48. package/lib/scrapers/mizrahi.js +14 -40
  49. package/lib/scrapers/mizrahi.test.js +1 -15
  50. package/lib/scrapers/one-zero-queries.js +1 -1
  51. package/lib/scrapers/one-zero.js +2 -54
  52. package/lib/scrapers/one-zero.test.js +1 -14
  53. package/lib/scrapers/otsar-hahayal.js +9 -47
  54. package/lib/scrapers/otsar-hahayal.test.js +1 -14
  55. package/lib/scrapers/union-bank.js +2 -60
  56. package/lib/scrapers/union-bank.test.js +1 -14
  57. package/lib/scrapers/visa-cal.js +3 -55
  58. package/lib/scrapers/visa-cal.test.js +3 -16
  59. package/lib/scrapers/yahav.js +25 -52
  60. package/lib/scrapers/yahav.test.js +1 -14
  61. package/lib/transactions.js +1 -4
  62. package/package.json +2 -7
@@ -4,107 +4,72 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = createScraper;
7
-
8
7
  var _hapoalim = _interopRequireDefault(require("./hapoalim"));
9
-
10
8
  var _otsarHahayal = _interopRequireDefault(require("./otsar-hahayal"));
11
-
12
9
  var _leumi = _interopRequireDefault(require("./leumi"));
13
-
14
10
  var _discount = _interopRequireDefault(require("./discount"));
15
-
11
+ var _mercantile = _interopRequireDefault(require("./mercantile"));
16
12
  var _max = _interopRequireDefault(require("./max"));
17
-
18
13
  var _visaCal = _interopRequireDefault(require("./visa-cal"));
19
-
20
14
  var _isracard = _interopRequireDefault(require("./isracard"));
21
-
22
15
  var _amex = _interopRequireDefault(require("./amex"));
23
-
24
16
  var _mizrahi = _interopRequireDefault(require("./mizrahi"));
25
-
26
17
  var _unionBank = _interopRequireDefault(require("./union-bank"));
27
-
28
18
  var _beinleumi = _interopRequireDefault(require("./beinleumi"));
29
-
30
19
  var _massad = _interopRequireDefault(require("./massad"));
31
-
32
20
  var _yahav = _interopRequireDefault(require("./yahav"));
33
-
34
21
  var _definitions = require("../definitions");
35
-
36
22
  var _beyahadBishvilha = _interopRequireDefault(require("./beyahad-bishvilha"));
37
-
38
23
  var _oneZero = _interopRequireDefault(require("./one-zero"));
39
-
40
24
  var _behatsdaa = _interopRequireDefault(require("./behatsdaa"));
41
-
42
25
  var _assertNever = require("../assertNever");
43
-
44
26
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
45
-
46
27
  function createScraper(options) {
47
28
  switch (options.companyId) {
48
29
  case _definitions.CompanyTypes.hapoalim:
49
30
  return new _hapoalim.default(options);
50
-
51
31
  case _definitions.CompanyTypes.hapoalimBeOnline:
52
32
  // eslint-disable-next-line no-console
53
33
  console.warn("hapoalimBeOnline is deprecated, use 'hapoalim' instead");
54
34
  return new _hapoalim.default(options);
55
-
56
35
  case _definitions.CompanyTypes.leumi:
57
36
  return new _leumi.default(options);
58
-
59
37
  case _definitions.CompanyTypes.beyahadBishvilha:
60
38
  return new _beyahadBishvilha.default(options);
61
-
62
39
  case _definitions.CompanyTypes.mizrahi:
63
40
  return new _mizrahi.default(options);
64
-
65
41
  case _definitions.CompanyTypes.discount:
66
42
  return new _discount.default(options);
67
-
43
+ case _definitions.CompanyTypes.mercantile:
44
+ return new _mercantile.default(options);
68
45
  case _definitions.CompanyTypes.otsarHahayal:
69
46
  return new _otsarHahayal.default(options);
70
-
71
47
  case _definitions.CompanyTypes.visaCal:
72
48
  return new _visaCal.default(options);
73
-
74
49
  case _definitions.CompanyTypes.leumiCard:
75
50
  // eslint-disable-next-line no-console
76
51
  console.warn("leumiCard is deprecated, use 'max' instead");
77
52
  return new _max.default(options);
78
-
79
53
  case _definitions.CompanyTypes.max:
80
54
  return new _max.default(options);
81
-
82
55
  case _definitions.CompanyTypes.isracard:
83
56
  return new _isracard.default(options);
84
-
85
57
  case _definitions.CompanyTypes.amex:
86
58
  return new _amex.default(options);
87
-
88
59
  case _definitions.CompanyTypes.union:
89
60
  return new _unionBank.default(options);
90
-
91
61
  case _definitions.CompanyTypes.beinleumi:
92
62
  return new _beinleumi.default(options);
93
-
94
63
  case _definitions.CompanyTypes.massad:
95
64
  return new _massad.default(options);
96
-
97
65
  case _definitions.CompanyTypes.yahav:
98
66
  return new _yahav.default(options);
99
-
100
67
  case _definitions.CompanyTypes.oneZero:
101
68
  return new _oneZero.default(options);
102
-
103
69
  case _definitions.CompanyTypes.behatsdaa:
104
70
  return new _behatsdaa.default(options);
105
-
106
71
  default:
107
72
  return (0, _assertNever.assertNever)(options.companyId, `unknown company id ${options.companyId}`);
108
73
  }
109
74
  }
110
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JhcGVycy9mYWN0b3J5LnRzIl0sIm5hbWVzIjpbImNyZWF0ZVNjcmFwZXIiLCJvcHRpb25zIiwiY29tcGFueUlkIiwiQ29tcGFueVR5cGVzIiwiaGFwb2FsaW0iLCJIYXBvYWxpbVNjcmFwZXIiLCJoYXBvYWxpbUJlT25saW5lIiwiY29uc29sZSIsIndhcm4iLCJsZXVtaSIsIkxldW1pU2NyYXBlciIsImJleWFoYWRCaXNodmlsaGEiLCJCZXlhaGFkQmlzaHZpbGhhU2NyYXBlciIsIm1penJhaGkiLCJNaXpyYWhpU2NyYXBlciIsImRpc2NvdW50IiwiRGlzY291bnRTY3JhcGVyIiwib3RzYXJIYWhheWFsIiwiT3RzYXJIYWhheWFsU2NyYXBlciIsInZpc2FDYWwiLCJWaXNhQ2FsU2NyYXBlciIsImxldW1pQ2FyZCIsIk1heFNjcmFwZXIiLCJtYXgiLCJpc3JhY2FyZCIsIklzcmFjYXJkU2NyYXBlciIsImFtZXgiLCJBbWV4U2NyYXBlciIsInVuaW9uIiwiVW5pb25CYW5rU2NyYXBlciIsImJlaW5sZXVtaSIsIkJlaW5sZXVtaVNjcmFwZXIiLCJtYXNzYWQiLCJNYXNzYWRTY3JhcGVyIiwieWFoYXYiLCJZYWhhdlNjcmFwZXIiLCJvbmVaZXJvIiwiT25lWmVyb1NjcmFwZXIiLCJiZWhhdHNkYWEiLCJCZWhhdHNkYWFTY3JhcGVyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7QUFFZSxTQUFTQSxhQUFULENBQXVCQyxPQUF2QixFQUE2RTtBQUMxRixVQUFRQSxPQUFPLENBQUNDLFNBQWhCO0FBQ0UsU0FBS0MsMEJBQWFDLFFBQWxCO0FBQ0UsYUFBTyxJQUFJQyxpQkFBSixDQUFvQkosT0FBcEIsQ0FBUDs7QUFDRixTQUFLRSwwQkFBYUcsZ0JBQWxCO0FBQ0U7QUFDQUMsTUFBQUEsT0FBTyxDQUFDQyxJQUFSLENBQWEsd0RBQWI7QUFDQSxhQUFPLElBQUlILGlCQUFKLENBQW9CSixPQUFwQixDQUFQOztBQUNGLFNBQUtFLDBCQUFhTSxLQUFsQjtBQUNFLGFBQU8sSUFBSUMsY0FBSixDQUFpQlQsT0FBakIsQ0FBUDs7QUFDRixTQUFLRSwwQkFBYVEsZ0JBQWxCO0FBQ0UsYUFBTyxJQUFJQyx5QkFBSixDQUE0QlgsT0FBNUIsQ0FBUDs7QUFDRixTQUFLRSwwQkFBYVUsT0FBbEI7QUFDRSxhQUFPLElBQUlDLGdCQUFKLENBQW1CYixPQUFuQixDQUFQOztBQUNGLFNBQUtFLDBCQUFhWSxRQUFsQjtBQUNFLGFBQU8sSUFBSUMsaUJBQUosQ0FBb0JmLE9BQXBCLENBQVA7O0FBQ0YsU0FBS0UsMEJBQWFjLFlBQWxCO0FBQ0UsYUFBTyxJQUFJQyxxQkFBSixDQUF3QmpCLE9BQXhCLENBQVA7O0FBQ0YsU0FBS0UsMEJBQWFnQixPQUFsQjtBQUNFLGFBQU8sSUFBSUMsZ0JBQUosQ0FBbUJuQixPQUFuQixDQUFQOztBQUNGLFNBQUtFLDBCQUFha0IsU0FBbEI7QUFDRTtBQUNBZCxNQUFBQSxPQUFPLENBQUNDLElBQVIsQ0FBYSw0Q0FBYjtBQUNBLGFBQU8sSUFBSWMsWUFBSixDQUFlckIsT0FBZixDQUFQOztBQUNGLFNBQUtFLDBCQUFhb0IsR0FBbEI7QUFDRSxhQUFPLElBQUlELFlBQUosQ0FBZXJCLE9BQWYsQ0FBUDs7QUFDRixTQUFLRSwwQkFBYXFCLFFBQWxCO0FBQ0UsYUFBTyxJQUFJQyxpQkFBSixDQUFvQnhCLE9BQXBCLENBQVA7O0FBQ0YsU0FBS0UsMEJBQWF1QixJQUFsQjtBQUNFLGFBQU8sSUFBSUMsYUFBSixDQUFnQjFCLE9BQWhCLENBQVA7O0FBQ0YsU0FBS0UsMEJBQWF5QixLQUFsQjtBQUNFLGFBQU8sSUFBSUMsa0JBQUosQ0FBcUI1QixPQUFyQixDQUFQOztBQUNGLFNBQUtFLDBCQUFhMkIsU0FBbEI7QUFDRSxhQUFPLElBQUlDLGtCQUFKLENBQXFCOUIsT0FBckIsQ0FBUDs7QUFDRixTQUFLRSwwQkFBYTZCLE1BQWxCO0FBQ0UsYUFBTyxJQUFJQyxlQUFKLENBQWtCaEMsT0FBbEIsQ0FBUDs7QUFDRixTQUFLRSwwQkFBYStCLEtBQWxCO0FBQ0UsYUFBTyxJQUFJQyxjQUFKLENBQWlCbEMsT0FBakIsQ0FBUDs7QUFDRixTQUFLRSwwQkFBYWlDLE9BQWxCO0FBQ0UsYUFBTyxJQUFJQyxnQkFBSixDQUFtQnBDLE9BQW5CLENBQVA7O0FBQ0YsU0FBS0UsMEJBQWFtQyxTQUFsQjtBQUNFLGFBQU8sSUFBSUMsa0JBQUosQ0FBcUJ0QyxPQUFyQixDQUFQOztBQUNGO0FBQ0UsYUFBTyw4QkFBWUEsT0FBTyxDQUFDQyxTQUFwQixFQUFnQyxzQkFBcUJELE9BQU8sQ0FBQ0MsU0FBVSxFQUF2RSxDQUFQO0FBMUNKO0FBNENEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEhhcG9hbGltU2NyYXBlciBmcm9tICcuL2hhcG9hbGltJztcbmltcG9ydCBPdHNhckhhaGF5YWxTY3JhcGVyIGZyb20gJy4vb3RzYXItaGFoYXlhbCc7XG5pbXBvcnQgTGV1bWlTY3JhcGVyIGZyb20gJy4vbGV1bWknO1xuaW1wb3J0IERpc2NvdW50U2NyYXBlciBmcm9tICcuL2Rpc2NvdW50JztcbmltcG9ydCBNYXhTY3JhcGVyIGZyb20gJy4vbWF4JztcbmltcG9ydCBWaXNhQ2FsU2NyYXBlciBmcm9tICcuL3Zpc2EtY2FsJztcbmltcG9ydCBJc3JhY2FyZFNjcmFwZXIgZnJvbSAnLi9pc3JhY2FyZCc7XG5pbXBvcnQgQW1leFNjcmFwZXIgZnJvbSAnLi9hbWV4JztcbmltcG9ydCBNaXpyYWhpU2NyYXBlciBmcm9tICcuL21penJhaGknO1xuaW1wb3J0IFVuaW9uQmFua1NjcmFwZXIgZnJvbSAnLi91bmlvbi1iYW5rJztcbmltcG9ydCBCZWlubGV1bWlTY3JhcGVyIGZyb20gJy4vYmVpbmxldW1pJztcbmltcG9ydCBNYXNzYWRTY3JhcGVyIGZyb20gJy4vbWFzc2FkJztcbmltcG9ydCBZYWhhdlNjcmFwZXIgZnJvbSAnLi95YWhhdic7XG5pbXBvcnQgeyBTY3JhcGVyLCBTY3JhcGVyQ3JlZGVudGlhbHMsIFNjcmFwZXJPcHRpb25zIH0gZnJvbSAnLi9pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29tcGFueVR5cGVzIH0gZnJvbSAnLi4vZGVmaW5pdGlvbnMnO1xuaW1wb3J0IEJleWFoYWRCaXNodmlsaGFTY3JhcGVyIGZyb20gJy4vYmV5YWhhZC1iaXNodmlsaGEnO1xuaW1wb3J0IE9uZVplcm9TY3JhcGVyIGZyb20gJy4vb25lLXplcm8nO1xuaW1wb3J0IEJlaGF0c2RhYVNjcmFwZXIgZnJvbSAnLi9iZWhhdHNkYWEnO1xuaW1wb3J0IHsgYXNzZXJ0TmV2ZXIgfSBmcm9tICcuLi9hc3NlcnROZXZlcic7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGNyZWF0ZVNjcmFwZXIob3B0aW9uczogU2NyYXBlck9wdGlvbnMpOiBTY3JhcGVyPFNjcmFwZXJDcmVkZW50aWFscz4ge1xuICBzd2l0Y2ggKG9wdGlvbnMuY29tcGFueUlkKSB7XG4gICAgY2FzZSBDb21wYW55VHlwZXMuaGFwb2FsaW06XG4gICAgICByZXR1cm4gbmV3IEhhcG9hbGltU2NyYXBlcihvcHRpb25zKTtcbiAgICBjYXNlIENvbXBhbnlUeXBlcy5oYXBvYWxpbUJlT25saW5lOlxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgIGNvbnNvbGUud2FybihcImhhcG9hbGltQmVPbmxpbmUgaXMgZGVwcmVjYXRlZCwgdXNlICdoYXBvYWxpbScgaW5zdGVhZFwiKTtcbiAgICAgIHJldHVybiBuZXcgSGFwb2FsaW1TY3JhcGVyKG9wdGlvbnMpO1xuICAgIGNhc2UgQ29tcGFueVR5cGVzLmxldW1pOlxuICAgICAgcmV0dXJuIG5ldyBMZXVtaVNjcmFwZXIob3B0aW9ucyk7XG4gICAgY2FzZSBDb21wYW55VHlwZXMuYmV5YWhhZEJpc2h2aWxoYTpcbiAgICAgIHJldHVybiBuZXcgQmV5YWhhZEJpc2h2aWxoYVNjcmFwZXIob3B0aW9ucyk7XG4gICAgY2FzZSBDb21wYW55VHlwZXMubWl6cmFoaTpcbiAgICAgIHJldHVybiBuZXcgTWl6cmFoaVNjcmFwZXIob3B0aW9ucyk7XG4gICAgY2FzZSBDb21wYW55VHlwZXMuZGlzY291bnQ6XG4gICAgICByZXR1cm4gbmV3IERpc2NvdW50U2NyYXBlcihvcHRpb25zKTtcbiAgICBjYXNlIENvbXBhbnlUeXBlcy5vdHNhckhhaGF5YWw6XG4gICAgICByZXR1cm4gbmV3IE90c2FySGFoYXlhbFNjcmFwZXIob3B0aW9ucyk7XG4gICAgY2FzZSBDb21wYW55VHlwZXMudmlzYUNhbDpcbiAgICAgIHJldHVybiBuZXcgVmlzYUNhbFNjcmFwZXIob3B0aW9ucyk7XG4gICAgY2FzZSBDb21wYW55VHlwZXMubGV1bWlDYXJkOlxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgIGNvbnNvbGUud2FybihcImxldW1pQ2FyZCBpcyBkZXByZWNhdGVkLCB1c2UgJ21heCcgaW5zdGVhZFwiKTtcbiAgICAgIHJldHVybiBuZXcgTWF4U2NyYXBlcihvcHRpb25zKTtcbiAgICBjYXNlIENvbXBhbnlUeXBlcy5tYXg6XG4gICAgICByZXR1cm4gbmV3IE1heFNjcmFwZXIob3B0aW9ucyk7XG4gICAgY2FzZSBDb21wYW55VHlwZXMuaXNyYWNhcmQ6XG4gICAgICByZXR1cm4gbmV3IElzcmFjYXJkU2NyYXBlcihvcHRpb25zKTtcbiAgICBjYXNlIENvbXBhbnlUeXBlcy5hbWV4OlxuICAgICAgcmV0dXJuIG5ldyBBbWV4U2NyYXBlcihvcHRpb25zKTtcbiAgICBjYXNlIENvbXBhbnlUeXBlcy51bmlvbjpcbiAgICAgIHJldHVybiBuZXcgVW5pb25CYW5rU2NyYXBlcihvcHRpb25zKTtcbiAgICBjYXNlIENvbXBhbnlUeXBlcy5iZWlubGV1bWk6XG4gICAgICByZXR1cm4gbmV3IEJlaW5sZXVtaVNjcmFwZXIob3B0aW9ucyk7XG4gICAgY2FzZSBDb21wYW55VHlwZXMubWFzc2FkOlxuICAgICAgcmV0dXJuIG5ldyBNYXNzYWRTY3JhcGVyKG9wdGlvbnMpO1xuICAgIGNhc2UgQ29tcGFueVR5cGVzLnlhaGF2OlxuICAgICAgcmV0dXJuIG5ldyBZYWhhdlNjcmFwZXIob3B0aW9ucyk7XG4gICAgY2FzZSBDb21wYW55VHlwZXMub25lWmVybzpcbiAgICAgIHJldHVybiBuZXcgT25lWmVyb1NjcmFwZXIob3B0aW9ucyk7XG4gICAgY2FzZSBDb21wYW55VHlwZXMuYmVoYXRzZGFhOlxuICAgICAgcmV0dXJuIG5ldyBCZWhhdHNkYWFTY3JhcGVyKG9wdGlvbnMpO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gYXNzZXJ0TmV2ZXIob3B0aW9ucy5jb21wYW55SWQsIGB1bmtub3duIGNvbXBhbnkgaWQgJHtvcHRpb25zLmNvbXBhbnlJZH1gKTtcbiAgfVxufVxuIl19
75
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaGFwb2FsaW0iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9vdHNhckhhaGF5YWwiLCJfbGV1bWkiLCJfZGlzY291bnQiLCJfbWVyY2FudGlsZSIsIl9tYXgiLCJfdmlzYUNhbCIsIl9pc3JhY2FyZCIsIl9hbWV4IiwiX21penJhaGkiLCJfdW5pb25CYW5rIiwiX2JlaW5sZXVtaSIsIl9tYXNzYWQiLCJfeWFoYXYiLCJfZGVmaW5pdGlvbnMiLCJfYmV5YWhhZEJpc2h2aWxoYSIsIl9vbmVaZXJvIiwiX2JlaGF0c2RhYSIsIl9hc3NlcnROZXZlciIsIm9iaiIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiY3JlYXRlU2NyYXBlciIsIm9wdGlvbnMiLCJjb21wYW55SWQiLCJDb21wYW55VHlwZXMiLCJoYXBvYWxpbSIsIkhhcG9hbGltU2NyYXBlciIsImhhcG9hbGltQmVPbmxpbmUiLCJjb25zb2xlIiwid2FybiIsImxldW1pIiwiTGV1bWlTY3JhcGVyIiwiYmV5YWhhZEJpc2h2aWxoYSIsIkJleWFoYWRCaXNodmlsaGFTY3JhcGVyIiwibWl6cmFoaSIsIk1penJhaGlTY3JhcGVyIiwiZGlzY291bnQiLCJEaXNjb3VudFNjcmFwZXIiLCJtZXJjYW50aWxlIiwiTWVyY2FudGlsZVNjcmFwZXIiLCJvdHNhckhhaGF5YWwiLCJPdHNhckhhaGF5YWxTY3JhcGVyIiwidmlzYUNhbCIsIlZpc2FDYWxTY3JhcGVyIiwibGV1bWlDYXJkIiwiTWF4U2NyYXBlciIsIm1heCIsImlzcmFjYXJkIiwiSXNyYWNhcmRTY3JhcGVyIiwiYW1leCIsIkFtZXhTY3JhcGVyIiwidW5pb24iLCJVbmlvbkJhbmtTY3JhcGVyIiwiYmVpbmxldW1pIiwiQmVpbmxldW1pU2NyYXBlciIsIm1hc3NhZCIsIk1hc3NhZFNjcmFwZXIiLCJ5YWhhdiIsIllhaGF2U2NyYXBlciIsIm9uZVplcm8iLCJPbmVaZXJvU2NyYXBlciIsImJlaGF0c2RhYSIsIkJlaGF0c2RhYVNjcmFwZXIiLCJhc3NlcnROZXZlciJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JhcGVycy9mYWN0b3J5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBIYXBvYWxpbVNjcmFwZXIgZnJvbSAnLi9oYXBvYWxpbSc7XG5pbXBvcnQgT3RzYXJIYWhheWFsU2NyYXBlciBmcm9tICcuL290c2FyLWhhaGF5YWwnO1xuaW1wb3J0IExldW1pU2NyYXBlciBmcm9tICcuL2xldW1pJztcbmltcG9ydCBEaXNjb3VudFNjcmFwZXIgZnJvbSAnLi9kaXNjb3VudCc7XG5pbXBvcnQgTWVyY2FudGlsZVNjcmFwZXIgZnJvbSAnLi9tZXJjYW50aWxlJztcbmltcG9ydCBNYXhTY3JhcGVyIGZyb20gJy4vbWF4JztcbmltcG9ydCBWaXNhQ2FsU2NyYXBlciBmcm9tICcuL3Zpc2EtY2FsJztcbmltcG9ydCBJc3JhY2FyZFNjcmFwZXIgZnJvbSAnLi9pc3JhY2FyZCc7XG5pbXBvcnQgQW1leFNjcmFwZXIgZnJvbSAnLi9hbWV4JztcbmltcG9ydCBNaXpyYWhpU2NyYXBlciBmcm9tICcuL21penJhaGknO1xuaW1wb3J0IFVuaW9uQmFua1NjcmFwZXIgZnJvbSAnLi91bmlvbi1iYW5rJztcbmltcG9ydCBCZWlubGV1bWlTY3JhcGVyIGZyb20gJy4vYmVpbmxldW1pJztcbmltcG9ydCBNYXNzYWRTY3JhcGVyIGZyb20gJy4vbWFzc2FkJztcbmltcG9ydCBZYWhhdlNjcmFwZXIgZnJvbSAnLi95YWhhdic7XG5pbXBvcnQgeyBTY3JhcGVyLCBTY3JhcGVyQ3JlZGVudGlhbHMsIFNjcmFwZXJPcHRpb25zIH0gZnJvbSAnLi9pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29tcGFueVR5cGVzIH0gZnJvbSAnLi4vZGVmaW5pdGlvbnMnO1xuaW1wb3J0IEJleWFoYWRCaXNodmlsaGFTY3JhcGVyIGZyb20gJy4vYmV5YWhhZC1iaXNodmlsaGEnO1xuaW1wb3J0IE9uZVplcm9TY3JhcGVyIGZyb20gJy4vb25lLXplcm8nO1xuaW1wb3J0IEJlaGF0c2RhYVNjcmFwZXIgZnJvbSAnLi9iZWhhdHNkYWEnO1xuaW1wb3J0IHsgYXNzZXJ0TmV2ZXIgfSBmcm9tICcuLi9hc3NlcnROZXZlcic7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGNyZWF0ZVNjcmFwZXIob3B0aW9uczogU2NyYXBlck9wdGlvbnMpOiBTY3JhcGVyPFNjcmFwZXJDcmVkZW50aWFscz4ge1xuICBzd2l0Y2ggKG9wdGlvbnMuY29tcGFueUlkKSB7XG4gICAgY2FzZSBDb21wYW55VHlwZXMuaGFwb2FsaW06XG4gICAgICByZXR1cm4gbmV3IEhhcG9hbGltU2NyYXBlcihvcHRpb25zKTtcbiAgICBjYXNlIENvbXBhbnlUeXBlcy5oYXBvYWxpbUJlT25saW5lOlxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgIGNvbnNvbGUud2FybihcImhhcG9hbGltQmVPbmxpbmUgaXMgZGVwcmVjYXRlZCwgdXNlICdoYXBvYWxpbScgaW5zdGVhZFwiKTtcbiAgICAgIHJldHVybiBuZXcgSGFwb2FsaW1TY3JhcGVyKG9wdGlvbnMpO1xuICAgIGNhc2UgQ29tcGFueVR5cGVzLmxldW1pOlxuICAgICAgcmV0dXJuIG5ldyBMZXVtaVNjcmFwZXIob3B0aW9ucyk7XG4gICAgY2FzZSBDb21wYW55VHlwZXMuYmV5YWhhZEJpc2h2aWxoYTpcbiAgICAgIHJldHVybiBuZXcgQmV5YWhhZEJpc2h2aWxoYVNjcmFwZXIob3B0aW9ucyk7XG4gICAgY2FzZSBDb21wYW55VHlwZXMubWl6cmFoaTpcbiAgICAgIHJldHVybiBuZXcgTWl6cmFoaVNjcmFwZXIob3B0aW9ucyk7XG4gICAgY2FzZSBDb21wYW55VHlwZXMuZGlzY291bnQ6XG4gICAgICByZXR1cm4gbmV3IERpc2NvdW50U2NyYXBlcihvcHRpb25zKTtcbiAgICBjYXNlIENvbXBhbnlUeXBlcy5tZXJjYW50aWxlOlxuICAgICAgcmV0dXJuIG5ldyBNZXJjYW50aWxlU2NyYXBlcihvcHRpb25zKTtcbiAgICBjYXNlIENvbXBhbnlUeXBlcy5vdHNhckhhaGF5YWw6XG4gICAgICByZXR1cm4gbmV3IE90c2FySGFoYXlhbFNjcmFwZXIob3B0aW9ucyk7XG4gICAgY2FzZSBDb21wYW55VHlwZXMudmlzYUNhbDpcbiAgICAgIHJldHVybiBuZXcgVmlzYUNhbFNjcmFwZXIob3B0aW9ucyk7XG4gICAgY2FzZSBDb21wYW55VHlwZXMubGV1bWlDYXJkOlxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgIGNvbnNvbGUud2FybihcImxldW1pQ2FyZCBpcyBkZXByZWNhdGVkLCB1c2UgJ21heCcgaW5zdGVhZFwiKTtcbiAgICAgIHJldHVybiBuZXcgTWF4U2NyYXBlcihvcHRpb25zKTtcbiAgICBjYXNlIENvbXBhbnlUeXBlcy5tYXg6XG4gICAgICByZXR1cm4gbmV3IE1heFNjcmFwZXIob3B0aW9ucyk7XG4gICAgY2FzZSBDb21wYW55VHlwZXMuaXNyYWNhcmQ6XG4gICAgICByZXR1cm4gbmV3IElzcmFjYXJkU2NyYXBlcihvcHRpb25zKTtcbiAgICBjYXNlIENvbXBhbnlUeXBlcy5hbWV4OlxuICAgICAgcmV0dXJuIG5ldyBBbWV4U2NyYXBlcihvcHRpb25zKTtcbiAgICBjYXNlIENvbXBhbnlUeXBlcy51bmlvbjpcbiAgICAgIHJldHVybiBuZXcgVW5pb25CYW5rU2NyYXBlcihvcHRpb25zKTtcbiAgICBjYXNlIENvbXBhbnlUeXBlcy5iZWlubGV1bWk6XG4gICAgICByZXR1cm4gbmV3IEJlaW5sZXVtaVNjcmFwZXIob3B0aW9ucyk7XG4gICAgY2FzZSBDb21wYW55VHlwZXMubWFzc2FkOlxuICAgICAgcmV0dXJuIG5ldyBNYXNzYWRTY3JhcGVyKG9wdGlvbnMpO1xuICAgIGNhc2UgQ29tcGFueVR5cGVzLnlhaGF2OlxuICAgICAgcmV0dXJuIG5ldyBZYWhhdlNjcmFwZXIob3B0aW9ucyk7XG4gICAgY2FzZSBDb21wYW55VHlwZXMub25lWmVybzpcbiAgICAgIHJldHVybiBuZXcgT25lWmVyb1NjcmFwZXIob3B0aW9ucyk7XG4gICAgY2FzZSBDb21wYW55VHlwZXMuYmVoYXRzZGFhOlxuICAgICAgcmV0dXJuIG5ldyBCZWhhdHNkYWFTY3JhcGVyKG9wdGlvbnMpO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gYXNzZXJ0TmV2ZXIob3B0aW9ucy5jb21wYW55SWQsIGB1bmtub3duIGNvbXBhbnkgaWQgJHtvcHRpb25zLmNvbXBhbnlJZH1gKTtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxTQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxhQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRSxNQUFBLEdBQUFILHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRyxTQUFBLEdBQUFKLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBSSxXQUFBLEdBQUFMLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBSyxJQUFBLEdBQUFOLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBTSxRQUFBLEdBQUFQLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBTyxTQUFBLEdBQUFSLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBUSxLQUFBLEdBQUFULHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBUyxRQUFBLEdBQUFWLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBVSxVQUFBLEdBQUFYLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBVyxVQUFBLEdBQUFaLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBWSxPQUFBLEdBQUFiLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBYSxNQUFBLEdBQUFkLHNCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBYyxZQUFBLEdBQUFkLE9BQUE7QUFDQSxJQUFBZSxpQkFBQSxHQUFBaEIsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFnQixRQUFBLEdBQUFqQixzQkFBQSxDQUFBQyxPQUFBO0FBQ0Es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
@@ -1,12 +1,10 @@
1
1
  "use strict";
2
2
 
3
3
  var _definitions = require("../definitions");
4
-
5
4
  var _factory = _interopRequireDefault(require("./factory"));
6
-
7
5
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
8
-
9
6
  /* eslint-disable @typescript-eslint/unbound-method */
7
+
10
8
  describe('Factory', () => {
11
9
  test('should return a scraper instance', () => {
12
10
  const scraper = (0, _factory.default)({
@@ -18,4 +16,4 @@ describe('Factory', () => {
18
16
  expect(scraper.onProgress).toBeInstanceOf(Function);
19
17
  });
20
18
  });
21
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JhcGVycy9mYWN0b3J5LnRlc3QudHMiXSwibmFtZXMiOlsiZGVzY3JpYmUiLCJ0ZXN0Iiwic2NyYXBlciIsImNvbXBhbnlJZCIsIkNvbXBhbnlUeXBlcyIsImhhcG9hbGltIiwic3RhcnREYXRlIiwiRGF0ZSIsImV4cGVjdCIsInRvQmVEZWZpbmVkIiwic2NyYXBlIiwidG9CZUluc3RhbmNlT2YiLCJGdW5jdGlvbiIsIm9uUHJvZ3Jlc3MiXSwibWFwcGluZ3MiOiI7O0FBQ0E7O0FBQ0E7Ozs7QUFGQTtBQUlBQSxRQUFRLENBQUMsU0FBRCxFQUFZLE1BQU07QUFDeEJDLEVBQUFBLElBQUksQ0FBQyxrQ0FBRCxFQUFxQyxNQUFNO0FBQzdDLFVBQU1DLE9BQU8sR0FBRyxzQkFBYztBQUM1QkMsTUFBQUEsU0FBUyxFQUFFQywwQkFBYUMsUUFESTtBQUU1QkMsTUFBQUEsU0FBUyxFQUFFLElBQUlDLElBQUo7QUFGaUIsS0FBZCxDQUFoQjtBQUlBQyxJQUFBQSxNQUFNLENBQUNOLE9BQUQsQ0FBTixDQUFnQk8sV0FBaEI7QUFFQUQsSUFBQUEsTUFBTSxDQUFDTixPQUFPLENBQUNRLE1BQVQsQ0FBTixDQUF1QkMsY0FBdkIsQ0FBc0NDLFFBQXRDO0FBQ0FKLElBQUFBLE1BQU0sQ0FBQ04sT0FBTyxDQUFDVyxVQUFULENBQU4sQ0FBMkJGLGNBQTNCLENBQTBDQyxRQUExQztBQUNELEdBVEcsQ0FBSjtBQVVELENBWE8sQ0FBUiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC91bmJvdW5kLW1ldGhvZCAqL1xuaW1wb3J0IHsgQ29tcGFueVR5cGVzIH0gZnJvbSAnLi4vZGVmaW5pdGlvbnMnO1xuaW1wb3J0IGNyZWF0ZVNjcmFwZXIgZnJvbSAnLi9mYWN0b3J5JztcblxuZGVzY3JpYmUoJ0ZhY3RvcnknLCAoKSA9PiB7XG4gIHRlc3QoJ3Nob3VsZCByZXR1cm4gYSBzY3JhcGVyIGluc3RhbmNlJywgKCkgPT4ge1xuICAgIGNvbnN0IHNjcmFwZXIgPSBjcmVhdGVTY3JhcGVyKHtcbiAgICAgIGNvbXBhbnlJZDogQ29tcGFueVR5cGVzLmhhcG9hbGltLFxuICAgICAgc3RhcnREYXRlOiBuZXcgRGF0ZSgpLFxuICAgIH0pO1xuICAgIGV4cGVjdChzY3JhcGVyKS50b0JlRGVmaW5lZCgpO1xuXG4gICAgZXhwZWN0KHNjcmFwZXIuc2NyYXBlKS50b0JlSW5zdGFuY2VPZihGdW5jdGlvbik7XG4gICAgZXhwZWN0KHNjcmFwZXIub25Qcm9ncmVzcykudG9CZUluc3RhbmNlT2YoRnVuY3Rpb24pO1xuICB9KTtcbn0pO1xuIl19
19
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGVmaW5pdGlvbnMiLCJyZXF1aXJlIiwiX2ZhY3RvcnkiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0Iiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJkZXNjcmliZSIsInRlc3QiLCJzY3JhcGVyIiwiY3JlYXRlU2NyYXBlciIsImNvbXBhbnlJZCIsIkNvbXBhbnlUeXBlcyIsImhhcG9hbGltIiwic3RhcnREYXRlIiwiRGF0ZSIsImV4cGVjdCIsInRvQmVEZWZpbmVkIiwic2NyYXBlIiwidG9CZUluc3RhbmNlT2YiLCJGdW5jdGlvbiIsIm9uUHJvZ3Jlc3MiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc2NyYXBlcnMvZmFjdG9yeS50ZXN0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC91bmJvdW5kLW1ldGhvZCAqL1xuaW1wb3J0IHsgQ29tcGFueVR5cGVzIH0gZnJvbSAnLi4vZGVmaW5pdGlvbnMnO1xuaW1wb3J0IGNyZWF0ZVNjcmFwZXIgZnJvbSAnLi9mYWN0b3J5JztcblxuZGVzY3JpYmUoJ0ZhY3RvcnknLCAoKSA9PiB7XG4gIHRlc3QoJ3Nob3VsZCByZXR1cm4gYSBzY3JhcGVyIGluc3RhbmNlJywgKCkgPT4ge1xuICAgIGNvbnN0IHNjcmFwZXIgPSBjcmVhdGVTY3JhcGVyKHtcbiAgICAgIGNvbXBhbnlJZDogQ29tcGFueVR5cGVzLmhhcG9hbGltLFxuICAgICAgc3RhcnREYXRlOiBuZXcgRGF0ZSgpLFxuICAgIH0pO1xuICAgIGV4cGVjdChzY3JhcGVyKS50b0JlRGVmaW5lZCgpO1xuXG4gICAgZXhwZWN0KHNjcmFwZXIuc2NyYXBlKS50b0JlSW5zdGFuY2VPZihGdW5jdGlvbik7XG4gICAgZXhwZWN0KHNjcmFwZXIub25Qcm9ncmVzcykudG9CZUluc3RhbmNlT2YoRnVuY3Rpb24pO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOztBQUNBLElBQUFBLFlBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLFFBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUFzQyxTQUFBRSx1QkFBQUMsR0FBQSxXQUFBQSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxHQUFBRCxHQUFBLEtBQUFFLE9BQUEsRUFBQUYsR0FBQTtBQUZ0Qzs7QUFJQUcsUUFBUSxDQUFDLFNBQVMsRUFBRSxNQUFNO0VBQ3hCQyxJQUFJLENBQUMsa0NBQWtDLEVBQUUsTUFBTTtJQUM3QyxNQUFNQyxPQUFPLEdBQUcsSUFBQUMsZ0JBQWEsRUFBQztNQUM1QkMsU0FBUyxFQUFFQyx5QkFBWSxDQUFDQyxRQUFRO01BQ2hDQyxTQUFTLEVBQUUsSUFBSUMsSUFBSSxDQUFDO0lBQ3RCLENBQUMsQ0FBQztJQUNGQyxNQUFNLENBQUNQLE9BQU8sQ0FBQyxDQUFDUSxXQUFXLENBQUMsQ0FBQztJQUU3QkQsTUFBTSxDQUFDUCxPQUFPLENBQUNTLE1BQU0sQ0FBQyxDQUFDQyxjQUFjLENBQUNDLFFBQVEsQ0FBQztJQUMvQ0osTUFBTSxDQUFDUCxPQUFPLENBQUNZLFVBQVUsQ0FBQyxDQUFDRixjQUFjLENBQUNDLFFBQVEsQ0FBQztFQUNyRCxDQUFDLENBQUM7QUFDSixDQUFDLENBQUMifQ==
@@ -1,46 +1,32 @@
1
1
  "use strict";
2
2
 
3
3
  require("core-js/modules/es.array.iterator");
4
-
5
4
  require("core-js/modules/es.promise");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports.default = void 0;
11
-
12
9
  var _moment = _interopRequireDefault(require("moment"));
13
-
14
10
  var _v = _interopRequireDefault(require("uuid/v4"));
15
-
16
11
  var _baseScraperWithBrowser = require("./base-scraper-with-browser");
17
-
18
12
  var _navigation = require("../helpers/navigation");
19
-
20
13
  var _waiting = require("../helpers/waiting");
21
-
22
14
  var _fetch = require("../helpers/fetch");
23
-
24
15
  var _transactions = require("../transactions");
25
-
26
16
  var _debug = require("../helpers/debug");
27
-
28
17
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29
-
30
18
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
31
-
32
19
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
33
-
34
20
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
35
-
36
21
  const debug = (0, _debug.getDebug)('hapoalim');
37
- const DATE_FORMAT = 'YYYYMMDD'; // eslint-disable-next-line @typescript-eslint/no-namespace
22
+ const DATE_FORMAT = 'YYYYMMDD';
23
+
24
+ // eslint-disable-next-line @typescript-eslint/no-namespace
38
25
 
39
26
  function convertTransactions(txns) {
40
27
  return txns.map(txn => {
41
28
  const isOutbound = txn.eventActivityTypeCode === 2;
42
29
  let memo = '';
43
-
44
30
  if (txn.beneficiaryDetailsData) {
45
31
  const {
46
32
  partyHeadline,
@@ -49,28 +35,22 @@ function convertTransactions(txns) {
49
35
  messageDetail
50
36
  } = txn.beneficiaryDetailsData;
51
37
  const memoLines = [];
52
-
53
38
  if (partyHeadline) {
54
39
  memoLines.push(partyHeadline);
55
40
  }
56
-
57
41
  if (partyName) {
58
42
  memoLines.push(`${partyName}.`);
59
43
  }
60
-
61
44
  if (messageHeadline) {
62
45
  memoLines.push(messageHeadline);
63
46
  }
64
-
65
47
  if (messageDetail) {
66
48
  memoLines.push(`${messageDetail}.`);
67
49
  }
68
-
69
50
  if (memoLines.length) {
70
51
  memo = memoLines.join(' ');
71
52
  }
72
53
  }
73
-
74
54
  const result = {
75
55
  type: _transactions.TransactionTypes.Normal,
76
56
  identifier: txn.referenceNumber,
@@ -86,7 +66,6 @@ function convertTransactions(txns) {
86
66
  return result;
87
67
  });
88
68
  }
89
-
90
69
  async function getRestContext(page) {
91
70
  await (0, _waiting.waitUntil)(() => {
92
71
  return page.evaluate(() => !!window.bnhpApp);
@@ -96,38 +75,31 @@ async function getRestContext(page) {
96
75
  });
97
76
  return result.slice(1);
98
77
  }
99
-
100
78
  async function fetchPoalimXSRFWithinPage(page, url, pageUuid) {
101
79
  const cookies = await page.cookies();
102
80
  const XSRFCookie = cookies.find(cookie => cookie.name === 'XSRF-TOKEN');
103
81
  const headers = {};
104
-
105
82
  if (XSRFCookie != null) {
106
83
  headers['X-XSRF-TOKEN'] = XSRFCookie.value;
107
84
  }
108
-
109
85
  headers.pageUuid = pageUuid;
110
86
  headers.uuid = (0, _v.default)();
111
87
  headers['Content-Type'] = 'application/json;charset=UTF-8';
112
88
  return (0, _fetch.fetchPostWithinPage)(page, url, [], headers);
113
89
  }
114
-
115
90
  async function getExtraScrap(txnsResult, baseUrl, page, accountNumber) {
116
91
  const promises = txnsResult.transactions.map(async transaction => {
117
92
  const {
118
93
  pfmDetails,
119
94
  serialNumber
120
95
  } = transaction;
121
-
122
96
  if (serialNumber !== 0) {
123
97
  const url = `${baseUrl}${pfmDetails}&accountId=${accountNumber}&lang=he`;
124
98
  const extraTransactionDetails = (await (0, _fetch.fetchGetWithinPage)(page, url)) || [];
125
-
126
99
  if (extraTransactionDetails && extraTransactionDetails.length) {
127
100
  const {
128
101
  transactionNumber
129
102
  } = extraTransactionDetails[0];
130
-
131
103
  if (transactionNumber) {
132
104
  return _objectSpread({}, transaction, {
133
105
  referenceNumber: transactionNumber
@@ -135,7 +107,6 @@ async function getExtraScrap(txnsResult, baseUrl, page, accountNumber) {
135
107
  }
136
108
  }
137
109
  }
138
-
139
110
  return transaction;
140
111
  });
141
112
  const res = await Promise.all(promises);
@@ -143,22 +114,18 @@ async function getExtraScrap(txnsResult, baseUrl, page, accountNumber) {
143
114
  transactions: res
144
115
  };
145
116
  }
146
-
147
117
  async function getAccountTransactions(baseUrl, apiSiteUrl, page, accountNumber, startDate, endDate, additionalTransactionInformation = false) {
148
118
  var _finalResult$transact;
149
-
150
119
  const txnsUrl = `${apiSiteUrl}/current-account/transactions?accountId=${accountNumber}&numItemsPerPage=1000&retrievalEndDate=${endDate}&retrievalStartDate=${startDate}&sortCode=1`;
151
120
  const txnsResult = await fetchPoalimXSRFWithinPage(page, txnsUrl, '/current-account/transactions');
152
121
  const finalResult = additionalTransactionInformation && (txnsResult === null || txnsResult === void 0 ? void 0 : txnsResult.transactions.length) ? await getExtraScrap(txnsResult, baseUrl, page, accountNumber) : txnsResult;
153
122
  return convertTransactions((_finalResult$transact = finalResult === null || finalResult === void 0 ? void 0 : finalResult.transactions) !== null && _finalResult$transact !== void 0 ? _finalResult$transact : []);
154
123
  }
155
-
156
124
  async function getAccountBalance(apiSiteUrl, page, accountNumber) {
157
125
  const balanceAndCreditLimitUrl = `${apiSiteUrl}/current-account/composite/balanceAndCreditLimit?accountId=${accountNumber}&view=details&lang=he`;
158
126
  const balanceAndCreditLimit = await (0, _fetch.fetchGetWithinPage)(page, balanceAndCreditLimitUrl);
159
127
  return balanceAndCreditLimit === null || balanceAndCreditLimit === void 0 ? void 0 : balanceAndCreditLimit.currentBalance;
160
128
  }
161
-
162
129
  async function fetchAccountData(page, baseUrl, options) {
163
130
  const restContext = await getRestContext(page);
164
131
  const apiSiteUrl = `${baseUrl}/${restContext}`;
@@ -168,27 +135,22 @@ async function fetchAccountData(page, baseUrl, options) {
168
135
  debug('got %d accounts, fetching txns and balance', accountsInfo.length);
169
136
  const defaultStartMoment = (0, _moment.default)().subtract(1, 'years').add(1, 'day');
170
137
  const startDate = options.startDate || defaultStartMoment.toDate();
171
-
172
138
  const startMoment = _moment.default.max(defaultStartMoment, (0, _moment.default)(startDate));
173
-
174
139
  const {
175
140
  additionalTransactionInformation
176
141
  } = options;
177
142
  const startDateStr = startMoment.format(DATE_FORMAT);
178
143
  const endDateStr = (0, _moment.default)().format(DATE_FORMAT);
179
144
  const accounts = [];
180
-
181
145
  for (const account of accountsInfo) {
182
146
  let balance;
183
147
  const accountNumber = `${account.bankNumber}-${account.branchNumber}-${account.accountNumber}`;
184
148
  const isActiveAccount = account.accountClosingReasonCode === 0;
185
-
186
149
  if (isActiveAccount) {
187
150
  balance = await getAccountBalance(apiSiteUrl, page, accountNumber);
188
151
  } else {
189
152
  debug('Skipping balance for a closed account, balance will be undefined');
190
153
  }
191
-
192
154
  const txns = await getAccountTransactions(baseUrl, apiSiteUrl, page, accountNumber, startDateStr, endDateStr, additionalTransactionInformation);
193
155
  accounts.push({
194
156
  accountNumber,
@@ -196,7 +158,6 @@ async function fetchAccountData(page, baseUrl, options) {
196
158
  txns
197
159
  });
198
160
  }
199
-
200
161
  const accountData = {
201
162
  success: true,
202
163
  accounts
@@ -204,7 +165,6 @@ async function fetchAccountData(page, baseUrl, options) {
204
165
  debug('fetching ended');
205
166
  return accountData;
206
167
  }
207
-
208
168
  function getPossibleLoginResults(baseUrl) {
209
169
  const urls = {};
210
170
  urls[_baseScraperWithBrowser.LoginResults.Success] = [`${baseUrl}/portalserver/HomePage`, `${baseUrl}/ng-portals-bt/rb/he/homepage`, `${baseUrl}/ng-portals/rb/he/homepage`];
@@ -212,7 +172,6 @@ function getPossibleLoginResults(baseUrl) {
212
172
  urls[_baseScraperWithBrowser.LoginResults.ChangePassword] = [`${baseUrl}/MCP/START?flow=MCP&state=START&expiredDate=null`, /\/ABOUTTOEXPIRE\/START/i];
213
173
  return urls;
214
174
  }
215
-
216
175
  function createLoginFields(credentials) {
217
176
  return [{
218
177
  selector: '#userCode',
@@ -222,13 +181,11 @@ function createLoginFields(credentials) {
222
181
  value: credentials.password
223
182
  }];
224
183
  }
225
-
226
184
  class HapoalimScraper extends _baseScraperWithBrowser.BaseScraperWithBrowser {
227
185
  // eslint-disable-next-line class-methods-use-this
228
186
  get baseUrl() {
229
187
  return 'https://login.bankhapoalim.co.il';
230
188
  }
231
-
232
189
  getLoginOptions(credentials) {
233
190
  return {
234
191
  loginUrl: `${this.baseUrl}/cgi-bin/poalwwwc?reqName=getLogonPage`,
@@ -238,13 +195,10 @@ class HapoalimScraper extends _baseScraperWithBrowser.BaseScraperWithBrowser {
238
195
  possibleResults: getPossibleLoginResults(this.baseUrl)
239
196
  };
240
197
  }
241
-
242
198
  async fetchData() {
243
199
  return fetchAccountData(this.page, this.baseUrl, this.options);
244
200
  }
245
-
246
201
  }
247
-
248
202
  var _default = HapoalimScraper;
249
203
  exports.default = _default;
250
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JhcGVycy9oYXBvYWxpbS50cyJdLCJuYW1lcyI6WyJkZWJ1ZyIsIkRBVEVfRk9STUFUIiwiY29udmVydFRyYW5zYWN0aW9ucyIsInR4bnMiLCJtYXAiLCJ0eG4iLCJpc091dGJvdW5kIiwiZXZlbnRBY3Rpdml0eVR5cGVDb2RlIiwibWVtbyIsImJlbmVmaWNpYXJ5RGV0YWlsc0RhdGEiLCJwYXJ0eUhlYWRsaW5lIiwicGFydHlOYW1lIiwibWVzc2FnZUhlYWRsaW5lIiwibWVzc2FnZURldGFpbCIsIm1lbW9MaW5lcyIsInB1c2giLCJsZW5ndGgiLCJqb2luIiwicmVzdWx0IiwidHlwZSIsIlRyYW5zYWN0aW9uVHlwZXMiLCJOb3JtYWwiLCJpZGVudGlmaWVyIiwicmVmZXJlbmNlTnVtYmVyIiwiZGF0ZSIsImV2ZW50RGF0ZSIsInRvSVNPU3RyaW5nIiwicHJvY2Vzc2VkRGF0ZSIsInZhbHVlRGF0ZSIsIm9yaWdpbmFsQW1vdW50IiwiZXZlbnRBbW91bnQiLCJvcmlnaW5hbEN1cnJlbmN5IiwiY2hhcmdlZEFtb3VudCIsImRlc2NyaXB0aW9uIiwiYWN0aXZpdHlEZXNjcmlwdGlvbiIsInN0YXR1cyIsInNlcmlhbE51bWJlciIsIlRyYW5zYWN0aW9uU3RhdHVzZXMiLCJQZW5kaW5nIiwiQ29tcGxldGVkIiwiZ2V0UmVzdENvbnRleHQiLCJwYWdlIiwiZXZhbHVhdGUiLCJ3aW5kb3ciLCJibmhwQXBwIiwicmVzdENvbnRleHQiLCJzbGljZSIsImZldGNoUG9hbGltWFNSRldpdGhpblBhZ2UiLCJ1cmwiLCJwYWdlVXVpZCIsImNvb2tpZXMiLCJYU1JGQ29va2llIiwiZmluZCIsImNvb2tpZSIsIm5hbWUiLCJoZWFkZXJzIiwidmFsdWUiLCJ1dWlkIiwiZ2V0RXh0cmFTY3JhcCIsInR4bnNSZXN1bHQiLCJiYXNlVXJsIiwiYWNjb3VudE51bWJlciIsInByb21pc2VzIiwidHJhbnNhY3Rpb25zIiwidHJhbnNhY3Rpb24iLCJwZm1EZXRhaWxzIiwiZXh0cmFUcmFuc2FjdGlvbkRldGFpbHMiLCJ0cmFuc2FjdGlvbk51bWJlciIsInJlcyIsIlByb21pc2UiLCJhbGwiLCJnZXRBY2NvdW50VHJhbnNhY3Rpb25zIiwiYXBpU2l0ZVVybCIsInN0YXJ0RGF0ZSIsImVuZERhdGUiLCJhZGRpdGlvbmFsVHJhbnNhY3Rpb25JbmZvcm1hdGlvbiIsInR4bnNVcmwiLCJmaW5hbFJlc3VsdCIsImdldEFjY291bnRCYWxhbmNlIiwiYmFsYW5jZUFuZENyZWRpdExpbWl0VXJsIiwiYmFsYW5jZUFuZENyZWRpdExpbWl0IiwiY3VycmVudEJhbGFuY2UiLCJmZXRjaEFjY291bnREYXRhIiwib3B0aW9ucyIsImFjY291bnREYXRhVXJsIiwiYWNjb3VudHNJbmZvIiwiZGVmYXVsdFN0YXJ0TW9tZW50Iiwic3VidHJhY3QiLCJhZGQiLCJ0b0RhdGUiLCJzdGFydE1vbWVudCIsIm1vbWVudCIsIm1heCIsInN0YXJ0RGF0ZVN0ciIsImZvcm1hdCIsImVuZERhdGVTdHIiLCJhY2NvdW50cyIsImFjY291bnQiLCJiYWxhbmNlIiwiYmFua051bWJlciIsImJyYW5jaE51bWJlciIsImlzQWN0aXZlQWNjb3VudCIsImFjY291bnRDbG9zaW5nUmVhc29uQ29kZSIsImFjY291bnREYXRhIiwic3VjY2VzcyIsImdldFBvc3NpYmxlTG9naW5SZXN1bHRzIiwidXJscyIsIkxvZ2luUmVzdWx0cyIsIlN1Y2Nlc3MiLCJJbnZhbGlkUGFzc3dvcmQiLCJDaGFuZ2VQYXNzd29yZCIsImNyZWF0ZUxvZ2luRmllbGRzIiwiY3JlZGVudGlhbHMiLCJzZWxlY3RvciIsInVzZXJDb2RlIiwicGFzc3dvcmQiLCJIYXBvYWxpbVNjcmFwZXIiLCJCYXNlU2NyYXBlcldpdGhCcm93c2VyIiwiZ2V0TG9naW5PcHRpb25zIiwibG9naW5VcmwiLCJmaWVsZHMiLCJzdWJtaXRCdXR0b25TZWxlY3RvciIsInBvc3RBY3Rpb24iLCJwb3NzaWJsZVJlc3VsdHMiLCJmZXRjaERhdGEiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBR0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBR0E7Ozs7Ozs7Ozs7QUFHQSxNQUFNQSxLQUFLLEdBQUcscUJBQVMsVUFBVCxDQUFkO0FBRUEsTUFBTUMsV0FBVyxHQUFHLFVBQXBCLEMsQ0FFQTs7QUFrREEsU0FBU0MsbUJBQVQsQ0FBNkJDLElBQTdCLEVBQXdFO0FBQ3RFLFNBQU9BLElBQUksQ0FBQ0MsR0FBTCxDQUFVQyxHQUFELElBQVM7QUFDdkIsVUFBTUMsVUFBVSxHQUFHRCxHQUFHLENBQUNFLHFCQUFKLEtBQThCLENBQWpEO0FBRUEsUUFBSUMsSUFBSSxHQUFHLEVBQVg7O0FBQ0EsUUFBSUgsR0FBRyxDQUFDSSxzQkFBUixFQUFnQztBQUM5QixZQUFNO0FBQ0pDLFFBQUFBLGFBREk7QUFFSkMsUUFBQUEsU0FGSTtBQUdKQyxRQUFBQSxlQUhJO0FBSUpDLFFBQUFBO0FBSkksVUFLRlIsR0FBRyxDQUFDSSxzQkFMUjtBQU1BLFlBQU1LLFNBQW1CLEdBQUcsRUFBNUI7O0FBQ0EsVUFBSUosYUFBSixFQUFtQjtBQUNqQkksUUFBQUEsU0FBUyxDQUFDQyxJQUFWLENBQWVMLGFBQWY7QUFDRDs7QUFFRCxVQUFJQyxTQUFKLEVBQWU7QUFDYkcsUUFBQUEsU0FBUyxDQUFDQyxJQUFWLENBQWdCLEdBQUVKLFNBQVUsR0FBNUI7QUFDRDs7QUFFRCxVQUFJQyxlQUFKLEVBQXFCO0FBQ25CRSxRQUFBQSxTQUFTLENBQUNDLElBQVYsQ0FBZUgsZUFBZjtBQUNEOztBQUVELFVBQUlDLGFBQUosRUFBbUI7QUFDakJDLFFBQUFBLFNBQVMsQ0FBQ0MsSUFBVixDQUFnQixHQUFFRixhQUFjLEdBQWhDO0FBQ0Q7O0FBRUQsVUFBSUMsU0FBUyxDQUFDRSxNQUFkLEVBQXNCO0FBQ3BCUixRQUFBQSxJQUFJLEdBQUdNLFNBQVMsQ0FBQ0csSUFBVixDQUFlLEdBQWYsQ0FBUDtBQUNEO0FBQ0Y7O0FBRUQsVUFBTUMsTUFBbUIsR0FBRztBQUMxQkMsTUFBQUEsSUFBSSxFQUFFQywrQkFBaUJDLE1BREc7QUFFMUJDLE1BQUFBLFVBQVUsRUFBRWpCLEdBQUcsQ0FBQ2tCLGVBRlU7QUFHMUJDLE1BQUFBLElBQUksRUFBRSxxQkFBT25CLEdBQUcsQ0FBQ29CLFNBQVgsRUFBc0J4QixXQUF0QixFQUFtQ3lCLFdBQW5DLEVBSG9CO0FBSTFCQyxNQUFBQSxhQUFhLEVBQUUscUJBQU90QixHQUFHLENBQUN1QixTQUFYLEVBQXNCM0IsV0FBdEIsRUFBbUN5QixXQUFuQyxFQUpXO0FBSzFCRyxNQUFBQSxjQUFjLEVBQUV2QixVQUFVLEdBQUcsQ0FBQ0QsR0FBRyxDQUFDeUIsV0FBUixHQUFzQnpCLEdBQUcsQ0FBQ3lCLFdBTDFCO0FBTTFCQyxNQUFBQSxnQkFBZ0IsRUFBRSxLQU5RO0FBTzFCQyxNQUFBQSxhQUFhLEVBQUUxQixVQUFVLEdBQUcsQ0FBQ0QsR0FBRyxDQUFDeUIsV0FBUixHQUFzQnpCLEdBQUcsQ0FBQ3lCLFdBUHpCO0FBUTFCRyxNQUFBQSxXQUFXLEVBQUU1QixHQUFHLENBQUM2QixtQkFBSixJQUEyQixFQVJkO0FBUzFCQyxNQUFBQSxNQUFNLEVBQUU5QixHQUFHLENBQUMrQixZQUFKLEtBQXFCLENBQXJCLEdBQXlCQyxrQ0FBb0JDLE9BQTdDLEdBQXVERCxrQ0FBb0JFLFNBVHpEO0FBVTFCL0IsTUFBQUE7QUFWMEIsS0FBNUI7QUFhQSxXQUFPVSxNQUFQO0FBQ0QsR0EvQ00sQ0FBUDtBQWdERDs7QUFFRCxlQUFlc0IsY0FBZixDQUE4QkMsSUFBOUIsRUFBMEM7QUFDeEMsUUFBTSx3QkFBVSxNQUFNO0FBQ3BCLFdBQU9BLElBQUksQ0FBQ0MsUUFBTCxDQUFjLE1BQU0sQ0FBQyxDQUFDQyxNQUFNLENBQUNDLE9BQTdCLENBQVA7QUFDRCxHQUZLLEVBRUgsMkJBRkcsQ0FBTjtBQUlBLFFBQU0xQixNQUFNLEdBQUcsTUFBTXVCLElBQUksQ0FBQ0MsUUFBTCxDQUFjLE1BQU07QUFDdkMsV0FBT0MsTUFBTSxDQUFDQyxPQUFQLENBQWVDLFdBQXRCO0FBQ0QsR0FGb0IsQ0FBckI7QUFJQSxTQUFPM0IsTUFBTSxDQUFDNEIsS0FBUCxDQUFhLENBQWIsQ0FBUDtBQUNEOztBQUVELGVBQWVDLHlCQUFmLENBQXlDTixJQUF6QyxFQUFxRE8sR0FBckQsRUFBa0VDLFFBQWxFLEVBQW9JO0FBQ2xJLFFBQU1DLE9BQU8sR0FBRyxNQUFNVCxJQUFJLENBQUNTLE9BQUwsRUFBdEI7QUFDQSxRQUFNQyxVQUFVLEdBQUdELE9BQU8sQ0FBQ0UsSUFBUixDQUFjQyxNQUFELElBQVlBLE1BQU0sQ0FBQ0MsSUFBUCxLQUFnQixZQUF6QyxDQUFuQjtBQUNBLFFBQU1DLE9BQTRCLEdBQUcsRUFBckM7O0FBQ0EsTUFBSUosVUFBVSxJQUFJLElBQWxCLEVBQXdCO0FBQ3RCSSxJQUFBQSxPQUFPLENBQUMsY0FBRCxDQUFQLEdBQTBCSixVQUFVLENBQUNLLEtBQXJDO0FBQ0Q7O0FBQ0RELEVBQUFBLE9BQU8sQ0FBQ04sUUFBUixHQUFtQkEsUUFBbkI7QUFDQU0sRUFBQUEsT0FBTyxDQUFDRSxJQUFSLEdBQWUsaUJBQWY7QUFDQUYsRUFBQUEsT0FBTyxDQUFDLGNBQUQsQ0FBUCxHQUEwQixnQ0FBMUI7QUFDQSxTQUFPLGdDQUFvRGQsSUFBcEQsRUFBMERPLEdBQTFELEVBQStELEVBQS9ELEVBQW1FTyxPQUFuRSxDQUFQO0FBQ0Q7O0FBRUQsZUFBZUcsYUFBZixDQUE2QkMsVUFBN0IsRUFBeUVDLE9BQXpFLEVBQTBGbkIsSUFBMUYsRUFBc0dvQixhQUF0RyxFQUFzSztBQUNwSyxRQUFNQyxRQUFRLEdBQUdILFVBQVUsQ0FBQ0ksWUFBWCxDQUF3QjNELEdBQXhCLENBQTRCLE1BQU80RCxXQUFQLElBQXdFO0FBQ25ILFVBQU07QUFBRUMsTUFBQUEsVUFBRjtBQUFjN0IsTUFBQUE7QUFBZCxRQUErQjRCLFdBQXJDOztBQUNBLFFBQUk1QixZQUFZLEtBQUssQ0FBckIsRUFBd0I7QUFDdEIsWUFBTVksR0FBRyxHQUFJLEdBQUVZLE9BQVEsR0FBRUssVUFBVyxjQUFhSixhQUFjLFVBQS9EO0FBQ0EsWUFBTUssdUJBQXVCLEdBQUcsT0FBTSwrQkFBNEN6QixJQUE1QyxFQUFrRE8sR0FBbEQsQ0FBTixLQUFnRSxFQUFoRzs7QUFDQSxVQUFJa0IsdUJBQXVCLElBQUlBLHVCQUF1QixDQUFDbEQsTUFBdkQsRUFBK0Q7QUFDN0QsY0FBTTtBQUFFbUQsVUFBQUE7QUFBRixZQUF3QkQsdUJBQXVCLENBQUMsQ0FBRCxDQUFyRDs7QUFDQSxZQUFJQyxpQkFBSixFQUF1QjtBQUNyQixtQ0FBWUgsV0FBWjtBQUF5QnpDLFlBQUFBLGVBQWUsRUFBRTRDO0FBQTFDO0FBQ0Q7QUFDRjtBQUNGOztBQUNELFdBQU9ILFdBQVA7QUFDRCxHQWJnQixDQUFqQjtBQWNBLFFBQU1JLEdBQUcsR0FBRyxNQUFNQyxPQUFPLENBQUNDLEdBQVIsQ0FBWVIsUUFBWixDQUFsQjtBQUNBLFNBQU87QUFBRUMsSUFBQUEsWUFBWSxFQUFFSztBQUFoQixHQUFQO0FBQ0Q7O0FBRUQsZUFBZUcsc0JBQWYsQ0FBc0NYLE9BQXRDLEVBQXVEWSxVQUF2RCxFQUEyRS9CLElBQTNFLEVBQXVGb0IsYUFBdkYsRUFBOEdZLFNBQTlHLEVBQWlJQyxPQUFqSSxFQUFrSkMsZ0NBQWdDLEdBQUcsS0FBckwsRUFBNEw7QUFBQTs7QUFDMUwsUUFBTUMsT0FBTyxHQUFJLEdBQUVKLFVBQVcsMkNBQTBDWCxhQUFjLDBDQUF5Q2EsT0FBUSx1QkFBc0JELFNBQVUsYUFBdks7QUFDQSxRQUFNZCxVQUFVLEdBQUcsTUFBTVoseUJBQXlCLENBQUNOLElBQUQsRUFBT21DLE9BQVAsRUFBZ0IsK0JBQWhCLENBQWxEO0FBRUEsUUFBTUMsV0FBVyxHQUNmRixnQ0FBZ0MsS0FBSWhCLFVBQUosYUFBSUEsVUFBSix1QkFBSUEsVUFBVSxDQUFFSSxZQUFaLENBQXlCL0MsTUFBN0IsQ0FBaEMsR0FDRSxNQUFNMEMsYUFBYSxDQUFDQyxVQUFELEVBQWFDLE9BQWIsRUFBc0JuQixJQUF0QixFQUE0Qm9CLGFBQTVCLENBRHJCLEdBRUVGLFVBSEo7QUFLQSxTQUFPekQsbUJBQW1CLDBCQUFDMkUsV0FBRCxhQUFDQSxXQUFELHVCQUFDQSxXQUFXLENBQUVkLFlBQWQseUVBQThCLEVBQTlCLENBQTFCO0FBQ0Q7O0FBRUQsZUFBZWUsaUJBQWYsQ0FBaUNOLFVBQWpDLEVBQXFEL0IsSUFBckQsRUFBaUVvQixhQUFqRSxFQUF3RjtBQUN0RixRQUFNa0Isd0JBQXdCLEdBQUksR0FBRVAsVUFBVyw4REFBNkRYLGFBQWMsdUJBQTFIO0FBQ0EsUUFBTW1CLHFCQUFxQixHQUFHLE1BQU0sK0JBQTBDdkMsSUFBMUMsRUFBZ0RzQyx3QkFBaEQsQ0FBcEM7QUFFQSxTQUFPQyxxQkFBUCxhQUFPQSxxQkFBUCx1QkFBT0EscUJBQXFCLENBQUVDLGNBQTlCO0FBQ0Q7O0FBRUQsZUFBZUMsZ0JBQWYsQ0FBZ0N6QyxJQUFoQyxFQUE0Q21CLE9BQTVDLEVBQTZEdUIsT0FBN0QsRUFBc0Y7QUFDcEYsUUFBTXRDLFdBQVcsR0FBRyxNQUFNTCxjQUFjLENBQUNDLElBQUQsQ0FBeEM7QUFDQSxRQUFNK0IsVUFBVSxHQUFJLEdBQUVaLE9BQVEsSUFBR2YsV0FBWSxFQUE3QztBQUNBLFFBQU11QyxjQUFjLEdBQUksR0FBRXhCLE9BQVEsa0NBQWxDO0FBRUE1RCxFQUFBQSxLQUFLLENBQUMsd0JBQUQsQ0FBTDtBQUNBLFFBQU1xRixZQUFZLEdBQUcsT0FBTSwrQkFBdUM1QyxJQUF2QyxFQUE2QzJDLGNBQTdDLENBQU4sS0FBc0UsRUFBM0Y7QUFDQXBGLEVBQUFBLEtBQUssQ0FBQyw0Q0FBRCxFQUErQ3FGLFlBQVksQ0FBQ3JFLE1BQTVELENBQUw7QUFFQSxRQUFNc0Usa0JBQWtCLEdBQUcsdUJBQVNDLFFBQVQsQ0FBa0IsQ0FBbEIsRUFBcUIsT0FBckIsRUFBOEJDLEdBQTlCLENBQWtDLENBQWxDLEVBQXFDLEtBQXJDLENBQTNCO0FBQ0EsUUFBTWYsU0FBUyxHQUFHVSxPQUFPLENBQUNWLFNBQVIsSUFBcUJhLGtCQUFrQixDQUFDRyxNQUFuQixFQUF2Qzs7QUFDQSxRQUFNQyxXQUFXLEdBQUdDLGdCQUFPQyxHQUFQLENBQVdOLGtCQUFYLEVBQStCLHFCQUFPYixTQUFQLENBQS9CLENBQXBCOztBQUNBLFFBQU07QUFBRUUsSUFBQUE7QUFBRixNQUF1Q1EsT0FBN0M7QUFFQSxRQUFNVSxZQUFZLEdBQUdILFdBQVcsQ0FBQ0ksTUFBWixDQUFtQjdGLFdBQW5CLENBQXJCO0FBQ0EsUUFBTThGLFVBQVUsR0FBRyx1QkFBU0QsTUFBVCxDQUFnQjdGLFdBQWhCLENBQW5CO0FBRUEsUUFBTStGLFFBQStCLEdBQUcsRUFBeEM7O0FBRUEsT0FBSyxNQUFNQyxPQUFYLElBQXNCWixZQUF0QixFQUFvQztBQUNsQyxRQUFJYSxPQUFKO0FBQ0EsVUFBTXJDLGFBQWEsR0FBSSxHQUFFb0MsT0FBTyxDQUFDRSxVQUFXLElBQUdGLE9BQU8sQ0FBQ0csWUFBYSxJQUFHSCxPQUFPLENBQUNwQyxhQUFjLEVBQTdGO0FBRUEsVUFBTXdDLGVBQWUsR0FBR0osT0FBTyxDQUFDSyx3QkFBUixLQUFxQyxDQUE3RDs7QUFDQSxRQUFJRCxlQUFKLEVBQXFCO0FBQ25CSCxNQUFBQSxPQUFPLEdBQUcsTUFBTXBCLGlCQUFpQixDQUFDTixVQUFELEVBQWEvQixJQUFiLEVBQW1Cb0IsYUFBbkIsQ0FBakM7QUFDRCxLQUZELE1BRU87QUFDTDdELE1BQUFBLEtBQUssQ0FBQyxrRUFBRCxDQUFMO0FBQ0Q7O0FBRUQsVUFBTUcsSUFBSSxHQUFHLE1BQU1vRSxzQkFBc0IsQ0FDdkNYLE9BRHVDLEVBRXZDWSxVQUZ1QyxFQUd2Qy9CLElBSHVDLEVBSXZDb0IsYUFKdUMsRUFLdkNnQyxZQUx1QyxFQU12Q0UsVUFOdUMsRUFPdkNwQixnQ0FQdUMsQ0FBekM7QUFVQXFCLElBQUFBLFFBQVEsQ0FBQ2pGLElBQVQsQ0FBYztBQUNaOEMsTUFBQUEsYUFEWTtBQUVacUMsTUFBQUEsT0FGWTtBQUdaL0YsTUFBQUE7QUFIWSxLQUFkO0FBS0Q7O0FBRUQsUUFBTW9HLFdBQVcsR0FBRztBQUNsQkMsSUFBQUEsT0FBTyxFQUFFLElBRFM7QUFFbEJSLElBQUFBO0FBRmtCLEdBQXBCO0FBSUFoRyxFQUFBQSxLQUFLLENBQUMsZ0JBQUQsQ0FBTDtBQUNBLFNBQU91RyxXQUFQO0FBQ0Q7O0FBRUQsU0FBU0UsdUJBQVQsQ0FBaUM3QyxPQUFqQyxFQUFrRDtBQUNoRCxRQUFNOEMsSUFBMEIsR0FBRyxFQUFuQztBQUNBQSxFQUFBQSxJQUFJLENBQUNDLHFDQUFhQyxPQUFkLENBQUosR0FBNkIsQ0FDMUIsR0FBRWhELE9BQVEsd0JBRGdCLEVBRTFCLEdBQUVBLE9BQVEsK0JBRmdCLEVBRzFCLEdBQUVBLE9BQVEsNEJBSGdCLENBQTdCO0FBSUE4QyxFQUFBQSxJQUFJLENBQUNDLHFDQUFhRSxlQUFkLENBQUosR0FBcUMsQ0FBRSxHQUFFakQsT0FBUSw4RUFBWixDQUFyQztBQUNBOEMsRUFBQUEsSUFBSSxDQUFDQyxxQ0FBYUcsY0FBZCxDQUFKLEdBQW9DLENBQ2pDLEdBQUVsRCxPQUFRLGtEQUR1QixFQUVsQyx5QkFGa0MsQ0FBcEM7QUFJQSxTQUFPOEMsSUFBUDtBQUNEOztBQUVELFNBQVNLLGlCQUFULENBQTJCQyxXQUEzQixFQUFvRTtBQUNsRSxTQUFPLENBQ0w7QUFBRUMsSUFBQUEsUUFBUSxFQUFFLFdBQVo7QUFBeUJ6RCxJQUFBQSxLQUFLLEVBQUV3RCxXQUFXLENBQUNFO0FBQTVDLEdBREssRUFFTDtBQUFFRCxJQUFBQSxRQUFRLEVBQUUsV0FBWjtBQUF5QnpELElBQUFBLEtBQUssRUFBRXdELFdBQVcsQ0FBQ0c7QUFBNUMsR0FGSyxDQUFQO0FBSUQ7O0FBSUQsTUFBTUMsZUFBTixTQUE4QkMsOENBQTlCLENBQWlGO0FBQy9FO0FBQ0EsTUFBSXpELE9BQUosR0FBYztBQUNaLFdBQU8sa0NBQVA7QUFDRDs7QUFFRDBELEVBQUFBLGVBQWUsQ0FBQ04sV0FBRCxFQUEwQztBQUN2RCxXQUFPO0FBQ0xPLE1BQUFBLFFBQVEsRUFBRyxHQUFFLEtBQUszRCxPQUFRLHdDQURyQjtBQUVMNEQsTUFBQUEsTUFBTSxFQUFFVCxpQkFBaUIsQ0FBQ0MsV0FBRCxDQUZwQjtBQUdMUyxNQUFBQSxvQkFBb0IsRUFBRSxZQUhqQjtBQUlMQyxNQUFBQSxVQUFVLEVBQUUsWUFBWSxpQ0FBZ0IsS0FBS2pGLElBQXJCLENBSm5CO0FBS0xrRixNQUFBQSxlQUFlLEVBQUVsQix1QkFBdUIsQ0FBQyxLQUFLN0MsT0FBTjtBQUxuQyxLQUFQO0FBT0Q7O0FBRUQsUUFBTWdFLFNBQU4sR0FBa0I7QUFDaEIsV0FBTzFDLGdCQUFnQixDQUFDLEtBQUt6QyxJQUFOLEVBQVksS0FBS21CLE9BQWpCLEVBQTBCLEtBQUt1QixPQUEvQixDQUF2QjtBQUNEOztBQWxCOEU7O2VBcUJsRWlDLGUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgdXVpZDQgZnJvbSAndXVpZC92NCc7XG5cbmltcG9ydCB7IFBhZ2UgfSBmcm9tICdwdXBwZXRlZXInO1xuaW1wb3J0IHsgQmFzZVNjcmFwZXJXaXRoQnJvd3NlciwgTG9naW5SZXN1bHRzLCBQb3NzaWJsZUxvZ2luUmVzdWx0cyB9IGZyb20gJy4vYmFzZS1zY3JhcGVyLXdpdGgtYnJvd3Nlcic7XG5pbXBvcnQgeyB3YWl0Rm9yUmVkaXJlY3QgfSBmcm9tICcuLi9oZWxwZXJzL25hdmlnYXRpb24nO1xuaW1wb3J0IHsgd2FpdFVudGlsIH0gZnJvbSAnLi4vaGVscGVycy93YWl0aW5nJztcbmltcG9ydCB7IGZldGNoR2V0V2l0aGluUGFnZSwgZmV0Y2hQb3N0V2l0aGluUGFnZSB9IGZyb20gJy4uL2hlbHBlcnMvZmV0Y2gnO1xuaW1wb3J0IHtcbiAgVHJhbnNhY3Rpb25zQWNjb3VudCwgVHJhbnNhY3Rpb24sIFRyYW5zYWN0aW9uU3RhdHVzZXMsIFRyYW5zYWN0aW9uVHlwZXMsXG59IGZyb20gJy4uL3RyYW5zYWN0aW9ucyc7XG5pbXBvcnQgeyBnZXREZWJ1ZyB9IGZyb20gJy4uL2hlbHBlcnMvZGVidWcnO1xuaW1wb3J0IHsgU2NyYXBlck9wdGlvbnMgfSBmcm9tICcuL2ludGVyZmFjZSc7XG5cbmNvbnN0IGRlYnVnID0gZ2V0RGVidWcoJ2hhcG9hbGltJyk7XG5cbmNvbnN0IERBVEVfRk9STUFUID0gJ1lZWVlNTUREJztcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1uYW1lc3BhY2VcbmRlY2xhcmUgbmFtZXNwYWNlIHdpbmRvdyB7XG4gIGNvbnN0IGJuaHBBcHA6IGFueTtcbn1cblxuaW50ZXJmYWNlIFNjcmFwZWRUcmFuc2FjdGlvbiB7XG4gIHNlcmlhbE51bWJlcj86IG51bWJlcjtcbiAgYWN0aXZpdHlEZXNjcmlwdGlvbj86IHN0cmluZztcbiAgZXZlbnRBbW91bnQ6IG51bWJlcjtcbiAgdmFsdWVEYXRlPzogc3RyaW5nO1xuICBldmVudERhdGU/OiBzdHJpbmc7XG4gIHJlZmVyZW5jZU51bWJlcj86IG51bWJlcjtcbiAgU2NyYXBlZFRyYW5zYWN0aW9uPzogc3RyaW5nO1xuICBldmVudEFjdGl2aXR5VHlwZUNvZGU6IG51bWJlcjtcbiAgY3VycmVudEJhbGFuY2U6IG51bWJlcjtcbiAgcGZtRGV0YWlsczogc3RyaW5nO1xuICBiZW5lZmljaWFyeURldGFpbHNEYXRhPzoge1xuICAgIHBhcnR5SGVhZGxpbmU/OiBzdHJpbmc7XG4gICAgcGFydHlOYW1lPzogc3RyaW5nO1xuICAgIG1lc3NhZ2VIZWFkbGluZT86IHN0cmluZztcbiAgICBtZXNzYWdlRGV0YWlsPzogc3RyaW5nO1xuICB9O1xufVxuXG5pbnRlcmZhY2UgU2NyYXBlZFBmbVRyYW5zYWN0aW9uIHtcbiAgdHJhbnNhY3Rpb25OdW1iZXI6IG51bWJlcjtcbn1cblxudHlwZSBGZXRjaGVkQWNjb3VudERhdGEgPSB7XG4gIGJhbmtOdW1iZXI6IHN0cmluZztcbiAgYWNjb3VudE51bWJlcjogc3RyaW5nO1xuICBicmFuY2hOdW1iZXI6IHN0cmluZztcbiAgYWNjb3VudENsb3NpbmdSZWFzb25Db2RlOiBudW1iZXI7XG59W107XG5cbnR5cGUgRmV0Y2hlZEFjY291bnRUcmFuc2FjdGlvbnNEYXRhID0ge1xuICB0cmFuc2FjdGlvbnM6IFNjcmFwZWRUcmFuc2FjdGlvbltdO1xufTtcblxudHlwZSBCYWxhbmNlQW5kQ3JlZGl0TGltaXQgPSB7XG4gIGNyZWRpdExpbWl0QW1vdW50OiBudW1iZXI7XG4gIGNyZWRpdExpbWl0RGVzY3JpcHRpb246IHN0cmluZztcbiAgY3JlZGl0TGltaXRVdGlsaXphdGlvbkFtb3VudDogbnVtYmVyO1xuICBjcmVkaXRMaW1pdFV0aWxpemF0aW9uRXhpc3RhbmNlQ29kZTogbnVtYmVyO1xuICBjcmVkaXRMaW1pdFV0aWxpemF0aW9uUGVyY2VudDogbnVtYmVyO1xuICBjdXJyZW50QWNjb3VudExpbWl0c0Ftb3VudDogbnVtYmVyO1xuICBjdXJyZW50QmFsYW5jZTogbnVtYmVyO1xuICB3aXRoZHJhd2FsQmFsYW5jZTogbnVtYmVyO1xufTtcblxuZnVuY3Rpb24gY29udmVydFRyYW5zYWN0aW9ucyh0eG5zOiBTY3JhcGVkVHJhbnNhY3Rpb25bXSk6IFRyYW5zYWN0aW9uW10ge1xuICByZXR1cm4gdHhucy5tYXAoKHR4bikgPT4ge1xuICAgIGNvbnN0IGlzT3V0Ym91bmQgPSB0eG4uZXZlbnRBY3Rpdml0eVR5cGVDb2RlID09PSAyO1xuXG4gICAgbGV0IG1lbW8gPSAnJztcbiAgICBpZiAodHhuLmJlbmVmaWNpYXJ5RGV0YWlsc0RhdGEpIHtcbiAgICAgIGNvbnN0IHtcbiAgICAgICAgcGFydHlIZWFkbGluZSxcbiAgICAgICAgcGFydHlOYW1lLFxuICAgICAgICBtZXNzYWdlSGVhZGxpbmUsXG4gICAgICAgIG1lc3NhZ2VEZXRhaWwsXG4gICAgICB9ID0gdHhuLmJlbmVmaWNpYXJ5RGV0YWlsc0RhdGE7XG4gICAgICBjb25zdCBtZW1vTGluZXM6IHN0cmluZ1tdID0gW107XG4gICAgICBpZiAocGFydHlIZWFkbGluZSkge1xuICAgICAgICBtZW1vTGluZXMucHVzaChwYXJ0eUhlYWRsaW5lKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHBhcnR5TmFtZSkge1xuICAgICAgICBtZW1vTGluZXMucHVzaChgJHtwYXJ0eU5hbWV9LmApO1xuICAgICAgfVxuXG4gICAgICBpZiAobWVzc2FnZUhlYWRsaW5lKSB7XG4gICAgICAgIG1lbW9MaW5lcy5wdXNoKG1lc3NhZ2VIZWFkbGluZSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChtZXNzYWdlRGV0YWlsKSB7XG4gICAgICAgIG1lbW9MaW5lcy5wdXNoKGAke21lc3NhZ2VEZXRhaWx9LmApO1xuICAgICAgfVxuXG4gICAgICBpZiAobWVtb0xpbmVzLmxlbmd0aCkge1xuICAgICAgICBtZW1vID0gbWVtb0xpbmVzLmpvaW4oJyAnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCByZXN1bHQ6IFRyYW5zYWN0aW9uID0ge1xuICAgICAgdHlwZTogVHJhbnNhY3Rpb25UeXBlcy5Ob3JtYWwsXG4gICAgICBpZGVudGlmaWVyOiB0eG4ucmVmZXJlbmNlTnVtYmVyLFxuICAgICAgZGF0ZTogbW9tZW50KHR4bi5ldmVudERhdGUsIERBVEVfRk9STUFUKS50b0lTT1N0cmluZygpLFxuICAgICAgcHJvY2Vzc2VkRGF0ZTogbW9tZW50KHR4bi52YWx1ZURhdGUsIERBVEVfRk9STUFUKS50b0lTT1N0cmluZygpLFxuICAgICAgb3JpZ2luYWxBbW91bnQ6IGlzT3V0Ym91bmQgPyAtdHhuLmV2ZW50QW1vdW50IDogdHhuLmV2ZW50QW1vdW50LFxuICAgICAgb3JpZ2luYWxDdXJyZW5jeTogJ0lMUycsXG4gICAgICBjaGFyZ2VkQW1vdW50OiBpc091dGJvdW5kID8gLXR4bi5ldmVudEFtb3VudCA6IHR4bi5ldmVudEFtb3VudCxcbiAgICAgIGRlc2NyaXB0aW9uOiB0eG4uYWN0aXZpdHlEZXNjcmlwdGlvbiB8fCAnJyxcbiAgICAgIHN0YXR1czogdHhuLnNlcmlhbE51bWJlciA9PT0gMCA/IFRyYW5zYWN0aW9uU3RhdHVzZXMuUGVuZGluZyA6IFRyYW5zYWN0aW9uU3RhdHVzZXMuQ29tcGxldGVkLFxuICAgICAgbWVtbyxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfSk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGdldFJlc3RDb250ZXh0KHBhZ2U6IFBhZ2UpIHtcbiAgYXdhaXQgd2FpdFVudGlsKCgpID0+IHtcbiAgICByZXR1cm4gcGFnZS5ldmFsdWF0ZSgoKSA9PiAhIXdpbmRvdy5ibmhwQXBwKTtcbiAgfSwgJ3dhaXRpbmcgZm9yIGFwcCBkYXRhIGxvYWQnKTtcblxuICBjb25zdCByZXN1bHQgPSBhd2FpdCBwYWdlLmV2YWx1YXRlKCgpID0+IHtcbiAgICByZXR1cm4gd2luZG93LmJuaHBBcHAucmVzdENvbnRleHQ7XG4gIH0pO1xuXG4gIHJldHVybiByZXN1bHQuc2xpY2UoMSk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGZldGNoUG9hbGltWFNSRldpdGhpblBhZ2UocGFnZTogUGFnZSwgdXJsOiBzdHJpbmcsIHBhZ2VVdWlkOiBzdHJpbmcpOiBQcm9taXNlPEZldGNoZWRBY2NvdW50VHJhbnNhY3Rpb25zRGF0YSB8IG51bGw+IHtcbiAgY29uc3QgY29va2llcyA9IGF3YWl0IHBhZ2UuY29va2llcygpO1xuICBjb25zdCBYU1JGQ29va2llID0gY29va2llcy5maW5kKChjb29raWUpID0+IGNvb2tpZS5uYW1lID09PSAnWFNSRi1UT0tFTicpO1xuICBjb25zdCBoZWFkZXJzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XG4gIGlmIChYU1JGQ29va2llICE9IG51bGwpIHtcbiAgICBoZWFkZXJzWydYLVhTUkYtVE9LRU4nXSA9IFhTUkZDb29raWUudmFsdWU7XG4gIH1cbiAgaGVhZGVycy5wYWdlVXVpZCA9IHBhZ2VVdWlkO1xuICBoZWFkZXJzLnV1aWQgPSB1dWlkNCgpO1xuICBoZWFkZXJzWydDb250ZW50LVR5cGUnXSA9ICdhcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9VVRGLTgnO1xuICByZXR1cm4gZmV0Y2hQb3N0V2l0aGluUGFnZTxGZXRjaGVkQWNjb3VudFRyYW5zYWN0aW9uc0RhdGE+KHBhZ2UsIHVybCwgW10sIGhlYWRlcnMpO1xufVxuXG5hc3luYyBmdW5jdGlvbiBnZXRFeHRyYVNjcmFwKHR4bnNSZXN1bHQ6IEZldGNoZWRBY2NvdW50VHJhbnNhY3Rpb25zRGF0YSwgYmFzZVVybDogc3RyaW5nLCBwYWdlOiBQYWdlLCBhY2NvdW50TnVtYmVyOiBzdHJpbmcpOiBQcm9taXNlPEZldGNoZWRBY2NvdW50VHJhbnNhY3Rpb25zRGF0YT4ge1xuICBjb25zdCBwcm9taXNlcyA9IHR4bnNSZXN1bHQudHJhbnNhY3Rpb25zLm1hcChhc3luYyAodHJhbnNhY3Rpb246IFNjcmFwZWRUcmFuc2FjdGlvbik6IFByb21pc2U8U2NyYXBlZFRyYW5zYWN0aW9uPiA9PiB7XG4gICAgY29uc3QgeyBwZm1EZXRhaWxzLCBzZXJpYWxOdW1iZXIgfSA9IHRyYW5zYWN0aW9uO1xuICAgIGlmIChzZXJpYWxOdW1iZXIgIT09IDApIHtcbiAgICAgIGNvbnN0IHVybCA9IGAke2Jhc2VVcmx9JHtwZm1EZXRhaWxzfSZhY2NvdW50SWQ9JHthY2NvdW50TnVtYmVyfSZsYW5nPWhlYDtcbiAgICAgIGNvbnN0IGV4dHJhVHJhbnNhY3Rpb25EZXRhaWxzID0gYXdhaXQgZmV0Y2hHZXRXaXRoaW5QYWdlPFNjcmFwZWRQZm1UcmFuc2FjdGlvbltdPihwYWdlLCB1cmwpIHx8IFtdO1xuICAgICAgaWYgKGV4dHJhVHJhbnNhY3Rpb25EZXRhaWxzICYmIGV4dHJhVHJhbnNhY3Rpb25EZXRhaWxzLmxlbmd0aCkge1xuICAgICAgICBjb25zdCB7IHRyYW5zYWN0aW9uTnVtYmVyIH0gPSBleHRyYVRyYW5zYWN0aW9uRGV0YWlsc1swXTtcbiAgICAgICAgaWYgKHRyYW5zYWN0aW9uTnVtYmVyKSB7XG4gICAgICAgICAgcmV0dXJuIHsgLi4udHJhbnNhY3Rpb24sIHJlZmVyZW5jZU51bWJlcjogdHJhbnNhY3Rpb25OdW1iZXIgfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHJhbnNhY3Rpb247XG4gIH0pO1xuICBjb25zdCByZXMgPSBhd2FpdCBQcm9taXNlLmFsbChwcm9taXNlcyk7XG4gIHJldHVybiB7IHRyYW5zYWN0aW9uczogcmVzIH07XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGdldEFjY291bnRUcmFuc2FjdGlvbnMoYmFzZVVybDogc3RyaW5nLCBhcGlTaXRlVXJsOiBzdHJpbmcsIHBhZ2U6IFBhZ2UsIGFjY291bnROdW1iZXI6IHN0cmluZywgc3RhcnREYXRlOiBzdHJpbmcsIGVuZERhdGU6IHN0cmluZywgYWRkaXRpb25hbFRyYW5zYWN0aW9uSW5mb3JtYXRpb24gPSBmYWxzZSkge1xuICBjb25zdCB0eG5zVXJsID0gYCR7YXBpU2l0ZVVybH0vY3VycmVudC1hY2NvdW50L3RyYW5zYWN0aW9ucz9hY2NvdW50SWQ9JHthY2NvdW50TnVtYmVyfSZudW1JdGVtc1BlclBhZ2U9MTAwMCZyZXRyaWV2YWxFbmREYXRlPSR7ZW5kRGF0ZX0mcmV0cmlldmFsU3RhcnREYXRlPSR7c3RhcnREYXRlfSZzb3J0Q29kZT0xYDtcbiAgY29uc3QgdHhuc1Jlc3VsdCA9IGF3YWl0IGZldGNoUG9hbGltWFNSRldpdGhpblBhZ2UocGFnZSwgdHhuc1VybCwgJy9jdXJyZW50LWFjY291bnQvdHJhbnNhY3Rpb25zJyk7XG5cbiAgY29uc3QgZmluYWxSZXN1bHQgPVxuICAgIGFkZGl0aW9uYWxUcmFuc2FjdGlvbkluZm9ybWF0aW9uICYmIHR4bnNSZXN1bHQ/LnRyYW5zYWN0aW9ucy5sZW5ndGggP1xuICAgICAgYXdhaXQgZ2V0RXh0cmFTY3JhcCh0eG5zUmVzdWx0LCBiYXNlVXJsLCBwYWdlLCBhY2NvdW50TnVtYmVyKSA6XG4gICAgICB0eG5zUmVzdWx0O1xuXG4gIHJldHVybiBjb252ZXJ0VHJhbnNhY3Rpb25zKGZpbmFsUmVzdWx0Py50cmFuc2FjdGlvbnMgPz8gW10pO1xufVxuXG5hc3luYyBmdW5jdGlvbiBnZXRBY2NvdW50QmFsYW5jZShhcGlTaXRlVXJsOiBzdHJpbmcsIHBhZ2U6IFBhZ2UsIGFjY291bnROdW1iZXI6IHN0cmluZykge1xuICBjb25zdCBiYWxhbmNlQW5kQ3JlZGl0TGltaXRVcmwgPSBgJHthcGlTaXRlVXJsfS9jdXJyZW50LWFjY291bnQvY29tcG9zaXRlL2JhbGFuY2VBbmRDcmVkaXRMaW1pdD9hY2NvdW50SWQ9JHthY2NvdW50TnVtYmVyfSZ2aWV3PWRldGFpbHMmbGFuZz1oZWA7XG4gIGNvbnN0IGJhbGFuY2VBbmRDcmVkaXRMaW1pdCA9IGF3YWl0IGZldGNoR2V0V2l0aGluUGFnZTxCYWxhbmNlQW5kQ3JlZGl0TGltaXQ+KHBhZ2UsIGJhbGFuY2VBbmRDcmVkaXRMaW1pdFVybCk7XG5cbiAgcmV0dXJuIGJhbGFuY2VBbmRDcmVkaXRMaW1pdD8uY3VycmVudEJhbGFuY2U7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGZldGNoQWNjb3VudERhdGEocGFnZTogUGFnZSwgYmFzZVVybDogc3RyaW5nLCBvcHRpb25zOiBTY3JhcGVyT3B0aW9ucykge1xuICBjb25zdCByZXN0Q29udGV4dCA9IGF3YWl0IGdldFJlc3RDb250ZXh0KHBhZ2UpO1xuICBjb25zdCBhcGlTaXRlVXJsID0gYCR7YmFzZVVybH0vJHtyZXN0Q29udGV4dH1gO1xuICBjb25zdCBhY2NvdW50RGF0YVVybCA9IGAke2Jhc2VVcmx9L1NlcnZlclNlcnZpY2VzL2dlbmVyYWwvYWNjb3VudHNgO1xuXG4gIGRlYnVnKCdmZXRjaGluZyBhY2NvdW50cyBkYXRhJyk7XG4gIGNvbnN0IGFjY291bnRzSW5mbyA9IGF3YWl0IGZldGNoR2V0V2l0aGluUGFnZTxGZXRjaGVkQWNjb3VudERhdGE+KHBhZ2UsIGFjY291bnREYXRhVXJsKSB8fCBbXTtcbiAgZGVidWcoJ2dvdCAlZCBhY2NvdW50cywgZmV0Y2hpbmcgdHhucyBhbmQgYmFsYW5jZScsIGFjY291bnRzSW5mby5sZW5ndGgpO1xuXG4gIGNvbnN0IGRlZmF1bHRTdGFydE1vbWVudCA9IG1vbWVudCgpLnN1YnRyYWN0KDEsICd5ZWFycycpLmFkZCgxLCAnZGF5Jyk7XG4gIGNvbnN0IHN0YXJ0RGF0ZSA9IG9wdGlvbnMuc3RhcnREYXRlIHx8IGRlZmF1bHRTdGFydE1vbWVudC50b0RhdGUoKTtcbiAgY29uc3Qgc3RhcnRNb21lbnQgPSBtb21lbnQubWF4KGRlZmF1bHRTdGFydE1vbWVudCwgbW9tZW50KHN0YXJ0RGF0ZSkpO1xuICBjb25zdCB7IGFkZGl0aW9uYWxUcmFuc2FjdGlvbkluZm9ybWF0aW9uIH0gPSBvcHRpb25zO1xuXG4gIGNvbnN0IHN0YXJ0RGF0ZVN0ciA9IHN0YXJ0TW9tZW50LmZvcm1hdChEQVRFX0ZPUk1BVCk7XG4gIGNvbnN0IGVuZERhdGVTdHIgPSBtb21lbnQoKS5mb3JtYXQoREFURV9GT1JNQVQpO1xuXG4gIGNvbnN0IGFjY291bnRzOiBUcmFuc2FjdGlvbnNBY2NvdW50W10gPSBbXTtcblxuICBmb3IgKGNvbnN0IGFjY291bnQgb2YgYWNjb3VudHNJbmZvKSB7XG4gICAgbGV0IGJhbGFuY2U6IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICBjb25zdCBhY2NvdW50TnVtYmVyID0gYCR7YWNjb3VudC5iYW5rTnVtYmVyfS0ke2FjY291bnQuYnJhbmNoTnVtYmVyfS0ke2FjY291bnQuYWNjb3VudE51bWJlcn1gO1xuXG4gICAgY29uc3QgaXNBY3RpdmVBY2NvdW50ID0gYWNjb3VudC5hY2NvdW50Q2xvc2luZ1JlYXNvbkNvZGUgPT09IDA7XG4gICAgaWYgKGlzQWN0aXZlQWNjb3VudCkge1xuICAgICAgYmFsYW5jZSA9IGF3YWl0IGdldEFjY291bnRCYWxhbmNlKGFwaVNpdGVVcmwsIHBhZ2UsIGFjY291bnROdW1iZXIpO1xuICAgIH0gZWxzZSB7XG4gICAgICBkZWJ1ZygnU2tpcHBpbmcgYmFsYW5jZSBmb3IgYSBjbG9zZWQgYWNjb3VudCwgYmFsYW5jZSB3aWxsIGJlIHVuZGVmaW5lZCcpO1xuICAgIH1cblxuICAgIGNvbnN0IHR4bnMgPSBhd2FpdCBnZXRBY2NvdW50VHJhbnNhY3Rpb25zKFxuICAgICAgYmFzZVVybCxcbiAgICAgIGFwaVNpdGVVcmwsXG4gICAgICBwYWdlLFxuICAgICAgYWNjb3VudE51bWJlcixcbiAgICAgIHN0YXJ0RGF0ZVN0cixcbiAgICAgIGVuZERhdGVTdHIsXG4gICAgICBhZGRpdGlvbmFsVHJhbnNhY3Rpb25JbmZvcm1hdGlvbixcbiAgICApO1xuXG4gICAgYWNjb3VudHMucHVzaCh7XG4gICAgICBhY2NvdW50TnVtYmVyLFxuICAgICAgYmFsYW5jZSxcbiAgICAgIHR4bnMsXG4gICAgfSk7XG4gIH1cblxuICBjb25zdCBhY2NvdW50RGF0YSA9IHtcbiAgICBzdWNjZXNzOiB0cnVlLFxuICAgIGFjY291bnRzLFxuICB9O1xuICBkZWJ1ZygnZmV0Y2hpbmcgZW5kZWQnKTtcbiAgcmV0dXJuIGFjY291bnREYXRhO1xufVxuXG5mdW5jdGlvbiBnZXRQb3NzaWJsZUxvZ2luUmVzdWx0cyhiYXNlVXJsOiBzdHJpbmcpIHtcbiAgY29uc3QgdXJsczogUG9zc2libGVMb2dpblJlc3VsdHMgPSB7fTtcbiAgdXJsc1tMb2dpblJlc3VsdHMuU3VjY2Vzc10gPSBbXG4gICAgYCR7YmFzZVVybH0vcG9ydGFsc2VydmVyL0hvbWVQYWdlYCxcbiAgICBgJHtiYXNlVXJsfS9uZy1wb3J0YWxzLWJ0L3JiL2hlL2hvbWVwYWdlYCxcbiAgICBgJHtiYXNlVXJsfS9uZy1wb3J0YWxzL3JiL2hlL2hvbWVwYWdlYF07XG4gIHVybHNbTG9naW5SZXN1bHRzLkludmFsaWRQYXNzd29yZF0gPSBbYCR7YmFzZVVybH0vQVVUSEVOVElDQVRFL0xPR09OP2Zsb3c9QVVUSEVOVElDQVRFJnN0YXRlPUxPR09OJmVycm9yY29kZT0xLjYmY2FsbG1lPWZhbHNlYF07XG4gIHVybHNbTG9naW5SZXN1bHRzLkNoYW5nZVBhc3N3b3JkXSA9IFtcbiAgICBgJHtiYXNlVXJsfS9NQ1AvU1RBUlQ/Zmxvdz1NQ1Amc3RhdGU9U1RBUlQmZXhwaXJlZERhdGU9bnVsbGAsXG4gICAgL1xcL0FCT1VUVE9FWFBJUkVcXC9TVEFSVC9pLFxuICBdO1xuICByZXR1cm4gdXJscztcbn1cblxuZnVuY3Rpb24gY3JlYXRlTG9naW5GaWVsZHMoY3JlZGVudGlhbHM6IFNjcmFwZXJTcGVjaWZpY0NyZWRlbnRpYWxzKSB7XG4gIHJldHVybiBbXG4gICAgeyBzZWxlY3RvcjogJyN1c2VyQ29kZScsIHZhbHVlOiBjcmVkZW50aWFscy51c2VyQ29kZSB9LFxuICAgIHsgc2VsZWN0b3I6ICcjcGFzc3dvcmQnLCB2YWx1ZTogY3JlZGVudGlhbHMucGFzc3dvcmQgfSxcbiAgXTtcbn1cblxudHlwZSBTY3JhcGVyU3BlY2lmaWNDcmVkZW50aWFscyA9IHsgdXNlckNvZGU6IHN0cmluZywgcGFzc3dvcmQ6IHN0cmluZyB9O1xuXG5jbGFzcyBIYXBvYWxpbVNjcmFwZXIgZXh0ZW5kcyBCYXNlU2NyYXBlcldpdGhCcm93c2VyPFNjcmFwZXJTcGVjaWZpY0NyZWRlbnRpYWxzPiB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBjbGFzcy1tZXRob2RzLXVzZS10aGlzXG4gIGdldCBiYXNlVXJsKCkge1xuICAgIHJldHVybiAnaHR0cHM6Ly9sb2dpbi5iYW5raGFwb2FsaW0uY28uaWwnO1xuICB9XG5cbiAgZ2V0TG9naW5PcHRpb25zKGNyZWRlbnRpYWxzOiBTY3JhcGVyU3BlY2lmaWNDcmVkZW50aWFscykge1xuICAgIHJldHVybiB7XG4gICAgICBsb2dpblVybDogYCR7dGhpcy5iYXNlVXJsfS9jZ2ktYmluL3BvYWx3d3djP3JlcU5hbWU9Z2V0TG9nb25QYWdlYCxcbiAgICAgIGZpZWxkczogY3JlYXRlTG9naW5GaWVsZHMoY3JlZGVudGlhbHMpLFxuICAgICAgc3VibWl0QnV0dG9uU2VsZWN0b3I6ICcubG9naW4tYnRuJyxcbiAgICAgIHBvc3RBY3Rpb246IGFzeW5jICgpID0+IHdhaXRGb3JSZWRpcmVjdCh0aGlzLnBhZ2UpLFxuICAgICAgcG9zc2libGVSZXN1bHRzOiBnZXRQb3NzaWJsZUxvZ2luUmVzdWx0cyh0aGlzLmJhc2VVcmwpLFxuICAgIH07XG4gIH1cblxuICBhc3luYyBmZXRjaERhdGEoKSB7XG4gICAgcmV0dXJuIGZldGNoQWNjb3VudERhdGEodGhpcy5wYWdlLCB0aGlzLmJhc2VVcmwsIHRoaXMub3B0aW9ucyk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgSGFwb2FsaW1TY3JhcGVyO1xuIl19
204
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbW9tZW50IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfdiIsIl9iYXNlU2NyYXBlcldpdGhCcm93c2VyIiwiX25hdmlnYXRpb24iLCJfd2FpdGluZyIsIl9mZXRjaCIsIl90cmFuc2FjdGlvbnMiLCJfZGVidWciLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIm93bktleXMiLCJvYmplY3QiLCJlbnVtZXJhYmxlT25seSIsImtleXMiLCJPYmplY3QiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJzeW1ib2xzIiwiZmlsdGVyIiwic3ltIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJ0YXJnZXQiLCJpIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwic291cmNlIiwiZm9yRWFjaCIsImtleSIsIl9kZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJ2YWx1ZSIsImNvbmZpZ3VyYWJsZSIsIndyaXRhYmxlIiwiZGVidWciLCJnZXREZWJ1ZyIsIkRBVEVfRk9STUFUIiwiY29udmVydFRyYW5zYWN0aW9ucyIsInR4bnMiLCJtYXAiLCJ0eG4iLCJpc091dGJvdW5kIiwiZXZlbnRBY3Rpdml0eVR5cGVDb2RlIiwibWVtbyIsImJlbmVmaWNpYXJ5RGV0YWlsc0RhdGEiLCJwYXJ0eUhlYWRsaW5lIiwicGFydHlOYW1lIiwibWVzc2FnZUhlYWRsaW5lIiwibWVzc2FnZURldGFpbCIsIm1lbW9MaW5lcyIsImpvaW4iLCJyZXN1bHQiLCJ0eXBlIiwiVHJhbnNhY3Rpb25UeXBlcyIsIk5vcm1hbCIsImlkZW50aWZpZXIiLCJyZWZlcmVuY2VOdW1iZXIiLCJkYXRlIiwibW9tZW50IiwiZXZlbnREYXRlIiwidG9JU09TdHJpbmciLCJwcm9jZXNzZWREYXRlIiwidmFsdWVEYXRlIiwib3JpZ2luYWxBbW91bnQiLCJldmVudEFtb3VudCIsIm9yaWdpbmFsQ3VycmVuY3kiLCJjaGFyZ2VkQW1vdW50IiwiZGVzY3JpcHRpb24iLCJhY3Rpdml0eURlc2NyaXB0aW9uIiwic3RhdHVzIiwic2VyaWFsTnVtYmVyIiwiVHJhbnNhY3Rpb25TdGF0dXNlcyIsIlBlbmRpbmciLCJDb21wbGV0ZWQiLCJnZXRSZXN0Q29udGV4dCIsInBhZ2UiLCJ3YWl0VW50aWwiLCJldmFsdWF0ZSIsIndpbmRvdyIsImJuaHBBcHAiLCJyZXN0Q29udGV4dCIsInNsaWNlIiwiZmV0Y2hQb2FsaW1YU1JGV2l0aGluUGFnZSIsInVybCIsInBhZ2VVdWlkIiwiY29va2llcyIsIlhTUkZDb29raWUiLCJmaW5kIiwiY29va2llIiwibmFtZSIsImhlYWRlcnMiLCJ1dWlkIiwidXVpZDQiLCJmZXRjaFBvc3RXaXRoaW5QYWdlIiwiZ2V0RXh0cmFTY3JhcCIsInR4bnNSZXN1bHQiLCJiYXNlVXJsIiwiYWNjb3VudE51bWJlciIsInByb21pc2VzIiwidHJhbnNhY3Rpb25zIiwidHJhbnNhY3Rpb24iLCJwZm1EZXRhaWxzIiwiZXh0cmFUcmFuc2FjdGlvbkRldGFpbHMiLCJmZXRjaEdldFdpdGhpblBhZ2UiLCJ0cmFuc2FjdGlvbk51bWJlciIsInJlcyIsIlByb21pc2UiLCJhbGwiLCJnZXRBY2NvdW50VHJhbnNhY3Rpb25zIiwiYXBpU2l0ZVVybCIsInN0YXJ0RGF0ZSIsImVuZERhdGUiLCJhZGRpdGlvbmFsVHJhbnNhY3Rpb25JbmZvcm1hdGlvbiIsIl9maW5hbFJlc3VsdCR0cmFuc2FjdCIsInR4bnNVcmwiLCJmaW5hbFJlc3VsdCIsImdldEFjY291bnRCYWxhbmNlIiwiYmFsYW5jZUFuZENyZWRpdExpbWl0VXJsIiwiYmFsYW5jZUFuZENyZWRpdExpbWl0IiwiY3VycmVudEJhbGFuY2UiLCJmZXRjaEFjY291bnREYXRhIiwib3B0aW9ucyIsImFjY291bnREYXRhVXJsIiwiYWNjb3VudHNJbmZvIiwiZGVmYXVsdFN0YXJ0TW9tZW50Iiwic3VidHJhY3QiLCJhZGQiLCJ0b0RhdGUiLCJzdGFydE1vbWVudCIsIm1heCIsInN0YXJ0RGF0ZVN0ciIsImZvcm1hdCIsImVuZERhdGVTdHIiLCJhY2NvdW50cyIsImFjY291bnQiLCJiYWxhbmNlIiwiYmFua051bWJlciIsImJyYW5jaE51bWJlciIsImlzQWN0aXZlQWNjb3VudCIsImFjY291bnRDbG9zaW5nUmVhc29uQ29kZSIsImFjY291bnREYXRhIiwic3VjY2VzcyIsImdldFBvc3NpYmxlTG9naW5SZXN1bHRzIiwidXJscyIsIkxvZ2luUmVzdWx0cyIsIlN1Y2Nlc3MiLCJJbnZhbGlkUGFzc3dvcmQiLCJDaGFuZ2VQYXNzd29yZCIsImNyZWF0ZUxvZ2luRmllbGRzIiwiY3JlZGVudGlhbHMiLCJzZWxlY3RvciIsInVzZXJDb2RlIiwicGFzc3dvcmQiLCJIYXBvYWxpbVNjcmFwZXIiLCJCYXNlU2NyYXBlcldpdGhCcm93c2VyIiwiZ2V0TG9naW5PcHRpb25zIiwibG9naW5VcmwiLCJmaWVsZHMiLCJzdWJtaXRCdXR0b25TZWxlY3RvciIsInBvc3RBY3Rpb24iLCJ3YWl0Rm9yUmVkaXJlY3QiLCJwb3NzaWJsZVJlc3VsdHMiLCJmZXRjaERhdGEiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc2NyYXBlcnMvaGFwb2FsaW0udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHV1aWQ0IGZyb20gJ3V1aWQvdjQnO1xuXG5pbXBvcnQgeyBQYWdlIH0gZnJvbSAncHVwcGV0ZWVyJztcbmltcG9ydCB7IEJhc2VTY3JhcGVyV2l0aEJyb3dzZXIsIExvZ2luUmVzdWx0cywgUG9zc2libGVMb2dpblJlc3VsdHMgfSBmcm9tICcuL2Jhc2Utc2NyYXBlci13aXRoLWJyb3dzZXInO1xuaW1wb3J0IHsgd2FpdEZvclJlZGlyZWN0IH0gZnJvbSAnLi4vaGVscGVycy9uYXZpZ2F0aW9uJztcbmltcG9ydCB7IHdhaXRVbnRpbCB9IGZyb20gJy4uL2hlbHBlcnMvd2FpdGluZyc7XG5pbXBvcnQgeyBmZXRjaEdldFdpdGhpblBhZ2UsIGZldGNoUG9zdFdpdGhpblBhZ2UgfSBmcm9tICcuLi9oZWxwZXJzL2ZldGNoJztcbmltcG9ydCB7XG4gIFRyYW5zYWN0aW9uc0FjY291bnQsIFRyYW5zYWN0aW9uLCBUcmFuc2FjdGlvblN0YXR1c2VzLCBUcmFuc2FjdGlvblR5cGVzLFxufSBmcm9tICcuLi90cmFuc2FjdGlvbnMnO1xuaW1wb3J0IHsgZ2V0RGVidWcgfSBmcm9tICcuLi9oZWxwZXJzL2RlYnVnJztcbmltcG9ydCB7IFNjcmFwZXJPcHRpb25zIH0gZnJvbSAnLi9pbnRlcmZhY2UnO1xuXG5jb25zdCBkZWJ1ZyA9IGdldERlYnVnKCdoYXBvYWxpbScpO1xuXG5jb25zdCBEQVRFX0ZPUk1BVCA9ICdZWVlZTU1ERCc7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbmFtZXNwYWNlXG5kZWNsYXJlIG5hbWVzcGFjZSB3aW5kb3cge1xuICBjb25zdCBibmhwQXBwOiBhbnk7XG59XG5cbmludGVyZmFjZSBTY3JhcGVkVHJhbnNhY3Rpb24ge1xuICBzZXJpYWxOdW1iZXI/OiBudW1iZXI7XG4gIGFjdGl2aXR5RGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGV2ZW50QW1vdW50OiBudW1iZXI7XG4gIHZhbHVlRGF0ZT86IHN0cmluZztcbiAgZXZlbnREYXRlPzogc3RyaW5nO1xuICByZWZlcmVuY2VOdW1iZXI/OiBudW1iZXI7XG4gIFNjcmFwZWRUcmFuc2FjdGlvbj86IHN0cmluZztcbiAgZXZlbnRBY3Rpdml0eVR5cGVDb2RlOiBudW1iZXI7XG4gIGN1cnJlbnRCYWxhbmNlOiBudW1iZXI7XG4gIHBmbURldGFpbHM6IHN0cmluZztcbiAgYmVuZWZpY2lhcnlEZXRhaWxzRGF0YT86IHtcbiAgICBwYXJ0eUhlYWRsaW5lPzogc3RyaW5nO1xuICAgIHBhcnR5TmFtZT86IHN0cmluZztcbiAgICBtZXNzYWdlSGVhZGxpbmU/OiBzdHJpbmc7XG4gICAgbWVzc2FnZURldGFpbD86IHN0cmluZztcbiAgfTtcbn1cblxuaW50ZXJmYWNlIFNjcmFwZWRQZm1UcmFuc2FjdGlvbiB7XG4gIHRyYW5zYWN0aW9uTnVtYmVyOiBudW1iZXI7XG59XG5cbnR5cGUgRmV0Y2hlZEFjY291bnREYXRhID0ge1xuICBiYW5rTnVtYmVyOiBzdHJpbmc7XG4gIGFjY291bnROdW1iZXI6IHN0cmluZztcbiAgYnJhbmNoTnVtYmVyOiBzdHJpbmc7XG4gIGFjY291bnRDbG9zaW5nUmVhc29uQ29kZTogbnVtYmVyO1xufVtdO1xuXG50eXBlIEZldGNoZWRBY2NvdW50VHJhbnNhY3Rpb25zRGF0YSA9IHtcbiAgdHJhbnNhY3Rpb25zOiBTY3JhcGVkVHJhbnNhY3Rpb25bXTtcbn07XG5cbnR5cGUgQmFsYW5jZUFuZENyZWRpdExpbWl0ID0ge1xuICBjcmVkaXRMaW1pdEFtb3VudDogbnVtYmVyO1xuICBjcmVkaXRMaW1pdERlc2NyaXB0aW9uOiBzdHJpbmc7XG4gIGNyZWRpdExpbWl0VXRpbGl6YXRpb25BbW91bnQ6IG51bWJlcjtcbiAgY3JlZGl0TGltaXRVdGlsaXphdGlvbkV4aXN0YW5jZUNvZGU6IG51bWJlcjtcbiAgY3JlZGl0TGltaXRVdGlsaXphdGlvblBlcmNlbnQ6IG51bWJlcjtcbiAgY3VycmVudEFjY291bnRMaW1pdHNBbW91bnQ6IG51bWJlcjtcbiAgY3VycmVudEJhbGFuY2U6IG51bWJlcjtcbiAgd2l0aGRyYXdhbEJhbGFuY2U6IG51bWJlcjtcbn07XG5cbmZ1bmN0aW9uIGNvbnZlcnRUcmFuc2FjdGlvbnModHhuczogU2NyYXBlZFRyYW5zYWN0aW9uW10pOiBUcmFuc2FjdGlvbltdIHtcbiAgcmV0dXJuIHR4bnMubWFwKCh0eG4pID0+IHtcbiAgICBjb25zdCBpc091dGJvdW5kID0gdHhuLmV2ZW50QWN0aXZpdHlUeXBlQ29kZSA9PT0gMjtcblxuICAgIGxldCBtZW1vID0gJyc7XG4gICAgaWYgKHR4bi5iZW5lZmljaWFyeURldGFpbHNEYXRhKSB7XG4gICAgICBjb25zdCB7XG4gICAgICAgIHBhcnR5SGVhZGxpbmUsXG4gICAgICAgIHBhcnR5TmFtZSxcbiAgICAgICAgbWVzc2FnZUhlYWRsaW5lLFxuICAgICAgICBtZXNzYWdlRGV0YWlsLFxuICAgICAgfSA9IHR4bi5iZW5lZmljaWFyeURldGFpbHNEYXRhO1xuICAgICAgY29uc3QgbWVtb0xpbmVzOiBzdHJpbmdbXSA9IFtdO1xuICAgICAgaWYgKHBhcnR5SGVhZGxpbmUpIHtcbiAgICAgICAgbWVtb0xpbmVzLnB1c2gocGFydHlIZWFkbGluZSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChwYXJ0eU5hbWUpIHtcbiAgICAgICAgbWVtb0xpbmVzLnB1c2goYCR7cGFydHlOYW1lfS5gKTtcbiAgICAgIH1cblxuICAgICAgaWYgKG1lc3NhZ2VIZWFkbGluZSkge1xuICAgICAgICBtZW1vTGluZXMucHVzaChtZXNzYWdlSGVhZGxpbmUpO1xuICAgICAgfVxuXG4gICAgICBpZiAobWVzc2FnZURldGFpbCkge1xuICAgICAgICBtZW1vTGluZXMucHVzaChgJHttZXNzYWdlRGV0YWlsfS5gKTtcbiAgICAgIH1cblxuICAgICAgaWYgKG1lbW9MaW5lcy5sZW5ndGgpIHtcbiAgICAgICAgbWVtbyA9IG1lbW9MaW5lcy5qb2luKCcgJyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgcmVzdWx0OiBUcmFuc2FjdGlvbiA9IHtcbiAgICAgIHR5cGU6IFRyYW5zYWN0aW9uVHlwZXMuTm9ybWFsLFxuICAgICAgaWRlbnRpZmllcjogdHhuLnJlZmVyZW5jZU51bWJlcixcbiAgICAgIGRhdGU6IG1vbWVudCh0eG4uZXZlbnREYXRlLCBEQVRFX0ZPUk1BVCkudG9JU09TdHJpbmcoKSxcbiAgICAgIHByb2Nlc3NlZERhdGU6IG1vbWVudCh0eG4udmFsdWVEYXRlLCBEQVRFX0ZPUk1BVCkudG9JU09TdHJpbmcoKSxcbiAgICAgIG9yaWdpbmFsQW1vdW50OiBpc091dGJvdW5kID8gLXR4bi5ldmVudEFtb3VudCA6IHR4bi5ldmVudEFtb3VudCxcbiAgICAgIG9yaWdpbmFsQ3VycmVuY3k6ICdJTFMnLFxuICAgICAgY2hhcmdlZEFtb3VudDogaXNPdXRib3VuZCA/IC10eG4uZXZlbnRBbW91bnQgOiB0eG4uZXZlbnRBbW91bnQsXG4gICAgICBkZXNjcmlwdGlvbjogdHhuLmFjdGl2aXR5RGVzY3JpcHRpb24gfHwgJycsXG4gICAgICBzdGF0dXM6IHR4bi5zZXJpYWxOdW1iZXIgPT09IDAgPyBUcmFuc2FjdGlvblN0YXR1c2VzLlBlbmRpbmcgOiBUcmFuc2FjdGlvblN0YXR1c2VzLkNvbXBsZXRlZCxcbiAgICAgIG1lbW8sXG4gICAgfTtcblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH0pO1xufVxuXG5hc3luYyBmdW5jdGlvbiBnZXRSZXN0Q29udGV4dChwYWdlOiBQYWdlKSB7XG4gIGF3YWl0IHdhaXRVbnRpbCgoKSA9PiB7XG4gICAgcmV0dXJuIHBhZ2UuZXZhbHVhdGUoKCkgPT4gISF3aW5kb3cuYm5ocEFwcCk7XG4gIH0sICd3YWl0aW5nIGZvciBhcHAgZGF0YSBsb2FkJyk7XG5cbiAgY29uc3QgcmVzdWx0ID0gYXdhaXQgcGFnZS5ldmFsdWF0ZSgoKSA9PiB7XG4gICAgcmV0dXJuIHdpbmRvdy5ibmhwQXBwLnJlc3RDb250ZXh0O1xuICB9KTtcblxuICByZXR1cm4gcmVzdWx0LnNsaWNlKDEpO1xufVxuXG5hc3luYyBmdW5jdGlvbiBmZXRjaFBvYWxpbVhTUkZXaXRoaW5QYWdlKHBhZ2U6IFBhZ2UsIHVybDogc3RyaW5nLCBwYWdlVXVpZDogc3RyaW5nKTogUHJvbWlzZTxGZXRjaGVkQWNjb3VudFRyYW5zYWN0aW9uc0RhdGEgfCBudWxsPiB7XG4gIGNvbnN0IGNvb2tpZXMgPSBhd2FpdCBwYWdlLmNvb2tpZXMoKTtcbiAgY29uc3QgWFNSRkNvb2tpZSA9IGNvb2tpZXMuZmluZCgoY29va2llKSA9PiBjb29raWUubmFtZSA9PT0gJ1hTUkYtVE9LRU4nKTtcbiAgY29uc3QgaGVhZGVyczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuICBpZiAoWFNSRkNvb2tpZSAhPSBudWxsKSB7XG4gICAgaGVhZGVyc1snWC1YU1JGLVRPS0VOJ10gPSBYU1JGQ29va2llLnZhbHVlO1xuICB9XG4gIGhlYWRlcnMucGFnZVV1aWQgPSBwYWdlVXVpZDtcbiAgaGVhZGVycy51dWlkID0gdXVpZDQoKTtcbiAgaGVhZGVyc1snQ29udGVudC1UeXBlJ10gPSAnYXBwbGljYXRpb24vanNvbjtjaGFyc2V0PVVURi04JztcbiAgcmV0dXJuIGZldGNoUG9zdFdpdGhpblBhZ2U8RmV0Y2hlZEFjY291bnRUcmFuc2FjdGlvbnNEYXRhPihwYWdlLCB1cmwsIFtdLCBoZWFkZXJzKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZ2V0RXh0cmFTY3JhcCh0eG5zUmVzdWx0OiBGZXRjaGVkQWNjb3VudFRyYW5zYWN0aW9uc0RhdGEsIGJhc2VVcmw6IHN0cmluZywgcGFnZTogUGFnZSwgYWNjb3VudE51bWJlcjogc3RyaW5nKTogUHJvbWlzZTxGZXRjaGVkQWNjb3VudFRyYW5zYWN0aW9uc0RhdGE+IHtcbiAgY29uc3QgcHJvbWlzZXMgPSB0eG5zUmVzdWx0LnRyYW5zYWN0aW9ucy5tYXAoYXN5bmMgKHRyYW5zYWN0aW9uOiBTY3JhcGVkVHJhbnNhY3Rpb24pOiBQcm9taXNlPFNjcmFwZWRUcmFuc2FjdGlvbj4gPT4ge1xuICAgIGNvbnN0IHsgcGZtRGV0YWlscywgc2VyaWFsTnVtYmVyIH0gPSB0cmFuc2FjdGlvbjtcbiAgICBpZiAoc2VyaWFsTnVtYmVyICE9PSAwKSB7XG4gICAgICBjb25zdCB1cmwgPSBgJHtiYXNlVXJsfSR7cGZtRGV0YWlsc30mYWNjb3VudElkPSR7YWNjb3VudE51bWJlcn0mbGFuZz1oZWA7XG4gICAgICBjb25zdCBleHRyYVRyYW5zYWN0aW9uRGV0YWlscyA9IGF3YWl0IGZldGNoR2V0V2l0aGluUGFnZTxTY3JhcGVkUGZtVHJhbnNhY3Rpb25bXT4ocGFnZSwgdXJsKSB8fCBbXTtcbiAgICAgIGlmIChleHRyYVRyYW5zYWN0aW9uRGV0YWlscyAmJiBleHRyYVRyYW5zYWN0aW9uRGV0YWlscy5sZW5ndGgpIHtcbiAgICAgICAgY29uc3QgeyB0cmFuc2FjdGlvbk51bWJlciB9ID0gZXh0cmFUcmFuc2FjdGlvbkRldGFpbHNbMF07XG4gICAgICAgIGlmICh0cmFuc2FjdGlvbk51bWJlcikge1xuICAgICAgICAgIHJldHVybiB7IC4uLnRyYW5zYWN0aW9uLCByZWZlcmVuY2VOdW1iZXI6IHRyYW5zYWN0aW9uTnVtYmVyIH07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRyYW5zYWN0aW9uO1xuICB9KTtcbiAgY29uc3QgcmVzID0gYXdhaXQgUHJvbWlzZS5hbGwocHJvbWlzZXMpO1xuICByZXR1cm4geyB0cmFuc2FjdGlvbnM6IHJlcyB9O1xufVxuXG5hc3luYyBmdW5jdGlvbiBnZXRBY2NvdW50VHJhbnNhY3Rpb25zKGJhc2VVcmw6IHN0cmluZywgYXBpU2l0ZVVybDogc3RyaW5nLCBwYWdlOiBQYWdlLCBhY2NvdW50TnVtYmVyOiBzdHJpbmcsIHN0YXJ0RGF0ZTogc3RyaW5nLCBlbmREYXRlOiBzdHJpbmcsIGFkZGl0aW9uYWxUcmFuc2FjdGlvbkluZm9ybWF0aW9uID0gZmFsc2UpIHtcbiAgY29uc3QgdHhuc1VybCA9IGAke2FwaVNpdGVVcmx9L2N1cnJlbnQtYWNjb3VudC90cmFuc2FjdGlvbnM/YWNjb3VudElkPSR7YWNjb3VudE51bWJlcn0mbnVtSXRlbXNQZXJQYWdlPTEwMDAmcmV0cmlldmFsRW5kRGF0ZT0ke2VuZERhdGV9JnJldHJpZXZhbFN0YXJ0RGF0ZT0ke3N0YXJ0RGF0ZX0mc29ydENvZGU9MWA7XG4gIGNvbnN0IHR4bnNSZXN1bHQgPSBhd2FpdCBmZXRjaFBvYWxpbVhTUkZXaXRoaW5QYWdlKHBhZ2UsIHR4bnNVcmwsICcvY3VycmVudC1hY2NvdW50L3RyYW5zYWN0aW9ucycpO1xuXG4gIGNvbnN0IGZpbmFsUmVzdWx0ID1cbiAgICBhZGRpdGlvbmFsVHJhbnNhY3Rpb25JbmZvcm1hdGlvbiAmJiB0eG5zUmVzdWx0Py50cmFuc2FjdGlvbnMubGVuZ3RoID9cbiAgICAgIGF3YWl0IGdldEV4dHJhU2NyYXAodHhuc1Jlc3VsdCwgYmFzZVVybCwgcGFnZSwgYWNjb3VudE51bWJlcikgOlxuICAgICAgdHhuc1Jlc3VsdDtcblxuICByZXR1cm4gY29udmVydFRyYW5zYWN0aW9ucyhmaW5hbFJlc3VsdD8udHJhbnNhY3Rpb25zID8/IFtdKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZ2V0QWNjb3VudEJhbGFuY2UoYXBpU2l0ZVVybDogc3RyaW5nLCBwYWdlOiBQYWdlLCBhY2NvdW50TnVtYmVyOiBzdHJpbmcpIHtcbiAgY29uc3QgYmFsYW5jZUFuZENyZWRpdExpbWl0VXJsID0gYCR7YXBpU2l0ZVVybH0vY3VycmVudC1hY2NvdW50L2NvbXBvc2l0ZS9iYWxhbmNlQW5kQ3JlZGl0TGltaXQ/YWNjb3VudElkPSR7YWNjb3VudE51bWJlcn0mdmlldz1kZXRhaWxzJmxhbmc9aGVgO1xuICBjb25zdCBiYWxhbmNlQW5kQ3JlZGl0TGltaXQgPSBhd2FpdCBmZXRjaEdldFdpdGhpblBhZ2U8QmFsYW5jZUFuZENyZWRpdExpbWl0PihwYWdlLCBiYWxhbmNlQW5kQ3JlZGl0TGltaXRVcmwpO1xuXG4gIHJldHVybiBiYWxhbmNlQW5kQ3JlZGl0TGltaXQ/LmN1cnJlbnRCYWxhbmNlO1xufVxuXG5hc3luYyBmdW5jdGlvbiBmZXRjaEFjY291bnREYXRhKHBhZ2U6IFBhZ2UsIGJhc2VVcmw6IHN0cmluZywgb3B0aW9uczogU2NyYXBlck9wdGlvbnMpIHtcbiAgY29uc3QgcmVzdENvbnRleHQgPSBhd2FpdCBnZXRSZXN0Q29udGV4dChwYWdlKTtcbiAgY29uc3QgYXBpU2l0ZVVybCA9IGAke2Jhc2VVcmx9LyR7cmVzdENvbnRleHR9YDtcbiAgY29uc3QgYWNjb3VudERhdGFVcmwgPSBgJHtiYXNlVXJsfS9TZXJ2ZXJTZXJ2aWNlcy9nZW5lcmFsL2FjY291bnRzYDtcblxuICBkZWJ1ZygnZmV0Y2hpbmcgYWNjb3VudHMgZGF0YScpO1xuICBjb25zdCBhY2NvdW50c0luZm8gPSBhd2FpdCBmZXRjaEdldFdpdGhpblBhZ2U8RmV0Y2hlZEFjY291bnREYXRhPihwYWdlLCBhY2NvdW50RGF0YVVybCkgfHwgW107XG4gIGRlYnVnKCdnb3QgJWQgYWNjb3VudHMsIGZldGNoaW5nIHR4bnMgYW5kIGJhbGFuY2UnLCBhY2NvdW50c0luZm8ubGVuZ3RoKTtcblxuICBjb25zdCBkZWZhdWx0U3RhcnRNb21lbnQgPSBtb21lbnQoKS5zdWJ0cmFjdCgxLCAneWVhcnMnKS5hZGQoMSwgJ2RheScpO1xuICBjb25zdCBzdGFydERhdGUgPSBvcHRpb25zLnN0YXJ0RGF0ZSB8fCBkZWZhdWx0U3RhcnRNb21lbnQudG9EYXRlKCk7XG4gIGNvbnN0IHN0YXJ0TW9tZW50ID0gbW9tZW50Lm1heChkZWZhdWx0U3RhcnRNb21lbnQsIG1vbWVudChzdGFydERhdGUpKTtcbiAgY29uc3QgeyBhZGRpdGlvbmFsVHJhbnNhY3Rpb25JbmZvcm1hdGlvbiB9ID0gb3B0aW9ucztcblxuICBjb25zdCBzdGFydERhdGVTdHIgPSBzdGFydE1vbWVudC5mb3JtYXQoREFURV9GT1JNQVQpO1xuICBjb25zdCBlbmREYXRlU3RyID0gbW9tZW50KCkuZm9ybWF0KERBVEVfRk9STUFUKTtcblxuICBjb25zdCBhY2NvdW50czogVHJhbnNhY3Rpb25zQWNjb3VudFtdID0gW107XG5cbiAgZm9yIChjb25zdCBhY2NvdW50IG9mIGFjY291bnRzSW5mbykge1xuICAgIGxldCBiYWxhbmNlOiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gICAgY29uc3QgYWNjb3VudE51bWJlciA9IGAke2FjY291bnQuYmFua051bWJlcn0tJHthY2NvdW50LmJyYW5jaE51bWJlcn0tJHthY2NvdW50LmFjY291bnROdW1iZXJ9YDtcblxuICAgIGNvbnN0IGlzQWN0aXZlQWNjb3VudCA9IGFjY291bnQuYWNjb3VudENsb3NpbmdSZWFzb25Db2RlID09PSAwO1xuICAgIGlmIChpc0FjdGl2ZUFjY291bnQpIHtcbiAgICAgIGJhbGFuY2UgPSBhd2FpdCBnZXRBY2NvdW50QmFsYW5jZShhcGlTaXRlVXJsLCBwYWdlLCBhY2NvdW50TnVtYmVyKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZGVidWcoJ1NraXBwaW5nIGJhbGFuY2UgZm9yIGEgY2xvc2VkIGFjY291bnQsIGJhbGFuY2Ugd2lsbCBiZSB1bmRlZmluZWQnKTtcbiAgICB9XG5cbiAgICBjb25zdCB0eG5zID0gYXdhaXQgZ2V0QWNjb3VudFRyYW5zYWN0aW9ucyhcbiAgICAgIGJhc2VVcmwsXG4gICAgICBhcGlTaXRlVXJsLFxuICAgICAgcGFnZSxcbiAgICAgIGFjY291bnROdW1iZXIsXG4gICAgICBzdGFydERhdGVTdHIsXG4gICAgICBlbmREYXRlU3RyLFxuICAgICAgYWRkaXRpb25hbFRyYW5zYWN0aW9uSW5mb3JtYXRpb24sXG4gICAgKTtcblxuICAgIGFjY291bnRzLnB1c2goe1xuICAgICAgYWNjb3VudE51bWJlcixcbiAgICAgIGJhbGFuY2UsXG4gICAgICB0eG5zLFxuICAgIH0pO1xuICB9XG5cbiAgY29uc3QgYWNjb3VudERhdGEgPSB7XG4gICAgc3VjY2VzczogdHJ1ZSxcbiAgICBhY2NvdW50cyxcbiAgfTtcbiAgZGVidWcoJ2ZldGNoaW5nIGVuZGVkJyk7XG4gIHJldHVybiBhY2NvdW50RGF0YTtcbn1cblxuZnVuY3Rpb24gZ2V0UG9zc2libGVMb2dpblJlc3VsdHMoYmFzZVVybDogc3RyaW5nKSB7XG4gIGNvbnN0IHVybHM6IFBvc3NpYmxlTG9naW5SZXN1bHRzID0ge307XG4gIHVybHNbTG9naW5SZXN1bHRzLlN1Y2Nlc3NdID0gW1xuICAgIGAke2Jhc2VVcmx9L3BvcnRhbHNlcnZlci9Ib21lUGFnZWAsXG4gICAgYCR7YmFzZVVybH0vbmctcG9ydGFscy1idC9yYi9oZS9ob21lcGFnZWAsXG4gICAgYCR7YmFzZVVybH0vbmctcG9ydGFscy9yYi9oZS9ob21lcGFnZWBdO1xuICB1cmxzW0xvZ2luUmVzdWx0cy5JbnZhbGlkUGFzc3dvcmRdID0gW2Ake2Jhc2VVcmx9L0FVVEhFTlRJQ0FURS9MT0dPTj9mbG93PUFVVEhFTlRJQ0FURSZzdGF0ZT1MT0dPTiZlcnJvcmNvZGU9MS42JmNhbGxtZT1mYWxzZWBdO1xuICB1cmxzW0xvZ2luUmVzdWx0cy5DaGFuZ2VQYXNzd29yZF0gPSBbXG4gICAgYCR7YmFzZVVybH0vTUNQL1NUQVJUP2Zsb3c9TUNQJnN0YXRlPVNUQVJUJmV4cGlyZWREYXRlPW51bGxgLFxuICAgIC9cXC9BQk9VVFRPRVhQSVJFXFwvU1RBUlQvaSxcbiAgXTtcbiAgcmV0dXJuIHVybHM7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUxvZ2luRmllbGRzKGNyZWRlbnRpYWxzOiBTY3JhcGVyU3BlY2lmaWNDcmVkZW50aWFscykge1xuICByZXR1cm4gW1xuICAgIHsgc2VsZWN0b3I6ICcjdXNlckNvZGUnLCB2YWx1ZTogY3JlZGVudGlhbHMudXNlckNvZGUgfSxcbiAgICB7IHNlbGVjdG9yOiAnI3Bhc3N3b3JkJywgdmFsdWU6IGNyZWRlbnRpYWxzLnBhc3N3b3JkIH0sXG4gIF07XG59XG5cbnR5cGUgU2NyYXBlclNwZWNpZmljQ3JlZGVudGlhbHMgPSB7IHVzZXJDb2RlOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcgfTtcblxuY2xhc3MgSGFwb2FsaW1TY3JhcGVyIGV4dGVuZHMgQmFzZVNjcmFwZXJXaXRoQnJvd3NlcjxTY3JhcGVyU3BlY2lmaWNDcmVkZW50aWFscz4ge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgY2xhc3MtbWV0aG9kcy11c2UtdGhpc1xuICBnZXQgYmFzZVVybCgpIHtcbiAgICByZXR1cm4gJ2h0dHBzOi8vbG9naW4uYmFua2hhcG9hbGltLmNvLmlsJztcbiAgfVxuXG4gIGdldExvZ2luT3B0aW9ucyhjcmVkZW50aWFsczogU2NyYXBlclNwZWNpZmljQ3JlZGVudGlhbHMpIHtcbiAgICByZXR1cm4ge1xuICAgICAgbG9naW5Vcmw6IGAke3RoaXMuYmFzZVVybH0vY2dpLWJpbi9wb2Fsd3d3Yz9yZXFOYW1lPWdldExvZ29uUGFnZWAsXG4gICAgICBmaWVsZHM6IGNyZWF0ZUxvZ2luRmllbGRzKGNyZWRlbnRpYWxzKSxcbiAgICAgIHN1Ym1pdEJ1dHRvblNlbGVjdG9yOiAnLmxvZ2luLWJ0bicsXG4gICAgICBwb3N0QWN0aW9uOiBhc3luYyAoKSA9PiB3YWl0Rm9yUmVkaXJlY3QodGhpcy5wYWdlKSxcbiAgICAgIHBvc3NpYmxlUmVzdWx0czogZ2V0UG9zc2libGVMb2dpblJlc3VsdHModGhpcy5iYXNlVXJsKSxcbiAgICB9O1xuICB9XG5cbiAgYXN5bmMgZmV0Y2hEYXRhKCkge1xuICAgIHJldHVybiBmZXRjaEFjY291bnREYXRhKHRoaXMucGFnZSwgdGhpcy5iYXNlVXJsLCB0aGlzLm9wdGlvbnMpO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IEhhcG9hbGltU2NyYXBlcjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxJQUFBQSxPQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxFQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFHQSxJQUFBRSx1QkFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsV0FBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksUUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssTUFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sYUFBQSxHQUFBTixPQUFBO0FBR0EsSUFBQU8sTUFBQSxHQUFBUCxPQUFBO0FBQTRDLFNBQUFELHVCQUFBUyxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsS0FBQUUsT0FBQSxFQUFBRixHQUFBO0FBQUEsU0FBQUcsUUFBQUMsTUFBQSxFQUFBQyxjQUFBLFFBQUFDLElBQUEsR0FBQUMsTUFBQSxDQUFBRCxJQUFBLENBQUFGLE1BQUEsT0FBQUcsTUFBQSxDQUFBQyxxQkFBQSxRQUFBQyxPQUFBLEdBQUFGLE1BQUEs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
@@ -1,27 +1,16 @@
1
1
  "use strict";
2
2
 
3
3
  require("core-js/modules/es.promise");
4
-
5
4
  require("core-js/modules/es.string.trim");
6
-
7
5
  var _hapoalim = _interopRequireDefault(require("./hapoalim"));
8
-
9
6
  var _testsUtils = require("../tests/tests-utils");
10
-
11
7
  var _definitions = require("../definitions");
12
-
13
8
  var _baseScraperWithBrowser = require("./base-scraper-with-browser");
14
-
15
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
-
17
10
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
18
-
19
11
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
20
-
21
12
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
22
-
23
13
  const COMPANY_ID = 'hapoalim'; // TODO this property should be hard-coded in the provider
24
-
25
14
  const testsConfig = (0, _testsUtils.getTestsConfig)();
26
15
  describe('Hapoalim legacy scraper', () => {
27
16
  beforeAll(() => {
@@ -36,7 +25,6 @@ describe('Hapoalim legacy scraper', () => {
36
25
  const options = _objectSpread({}, testsConfig.options, {
37
26
  companyId: COMPANY_ID
38
27
  });
39
-
40
28
  const scraper = new _hapoalim.default(options);
41
29
  const result = await scraper.scrape({
42
30
  userCode: 'e10s12',
@@ -50,7 +38,6 @@ describe('Hapoalim legacy scraper', () => {
50
38
  const options = _objectSpread({}, testsConfig.options, {
51
39
  companyId: COMPANY_ID
52
40
  });
53
-
54
41
  const scraper = new _hapoalim.default(options);
55
42
  const result = await scraper.scrape(testsConfig.credentials.hapoalim);
56
43
  expect(result).toBeDefined();
@@ -60,4 +47,4 @@ describe('Hapoalim legacy scraper', () => {
60
47
  (0, _testsUtils.exportTransactions)(COMPANY_ID, result.accounts || []);
61
48
  });
62
49
  });
63
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JhcGVycy9oYXBvYWxpbS50ZXN0LnRzIl0sIm5hbWVzIjpbIkNPTVBBTllfSUQiLCJ0ZXN0c0NvbmZpZyIsImRlc2NyaWJlIiwiYmVmb3JlQWxsIiwidGVzdCIsImV4cGVjdCIsIlNDUkFQRVJTIiwiaGFwb2FsaW0iLCJ0b0JlRGVmaW5lZCIsImxvZ2luRmllbGRzIiwidG9Db250YWluIiwiY29uZmlnIiwiY29tcGFueUFQSSIsImludmFsaWRQYXNzd29yZCIsIm9wdGlvbnMiLCJjb21wYW55SWQiLCJzY3JhcGVyIiwiSGFwb2FsaW1TY3JhcGVyIiwicmVzdWx0Iiwic2NyYXBlIiwidXNlckNvZGUiLCJwYXNzd29yZCIsInN1Y2Nlc3MiLCJ0b0JlRmFsc3kiLCJlcnJvclR5cGUiLCJ0b0JlIiwiTG9naW5SZXN1bHRzIiwiSW52YWxpZFBhc3N3b3JkIiwiY3JlZGVudGlhbHMiLCJlcnJvciIsImVycm9yTWVzc2FnZSIsInRyaW0iLCJ0b0JlVHJ1dGh5IiwiYWNjb3VudHMiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBOztBQUNBOztBQUdBOztBQUNBOzs7Ozs7Ozs7O0FBRUEsTUFBTUEsVUFBVSxHQUFHLFVBQW5CLEMsQ0FBK0I7O0FBQy9CLE1BQU1DLFdBQVcsR0FBRyxpQ0FBcEI7QUFFQUMsUUFBUSxDQUFDLHlCQUFELEVBQTRCLE1BQU07QUFDeENDLEVBQUFBLFNBQVMsQ0FBQyxNQUFNO0FBQ2QsMENBRGMsQ0FDUTtBQUN2QixHQUZRLENBQVQ7QUFJQUMsRUFBQUEsSUFBSSxDQUFDLGlEQUFELEVBQW9ELE1BQU07QUFDNURDLElBQUFBLE1BQU0sQ0FBQ0Msc0JBQVNDLFFBQVYsQ0FBTixDQUEwQkMsV0FBMUI7QUFDQUgsSUFBQUEsTUFBTSxDQUFDQyxzQkFBU0MsUUFBVCxDQUFrQkUsV0FBbkIsQ0FBTixDQUFzQ0MsU0FBdEMsQ0FBZ0QsVUFBaEQ7QUFDQUwsSUFBQUEsTUFBTSxDQUFDQyxzQkFBU0MsUUFBVCxDQUFrQkUsV0FBbkIsQ0FBTixDQUFzQ0MsU0FBdEMsQ0FBZ0QsVUFBaEQ7QUFDRCxHQUpHLENBQUo7QUFNQSx1Q0FBb0JWLFVBQXBCLEVBQWlDVyxNQUFELElBQVlBLE1BQU0sQ0FBQ0MsVUFBUCxDQUFrQkMsZUFBOUQsRUFBK0UsdUNBQS9FLEVBQXdILFlBQVk7QUFDbEksVUFBTUMsT0FBTyxxQkFDUmIsV0FBVyxDQUFDYSxPQURKO0FBRVhDLE1BQUFBLFNBQVMsRUFBRWY7QUFGQSxNQUFiOztBQUtBLFVBQU1nQixPQUFPLEdBQUcsSUFBSUMsaUJBQUosQ0FBb0JILE9BQXBCLENBQWhCO0FBRUEsVUFBTUksTUFBTSxHQUFHLE1BQU1GLE9BQU8sQ0FBQ0csTUFBUixDQUFlO0FBQUVDLE1BQUFBLFFBQVEsRUFBRSxRQUFaO0FBQXNCQyxNQUFBQSxRQUFRLEVBQUU7QUFBaEMsS0FBZixDQUFyQjtBQUVBaEIsSUFBQUEsTUFBTSxDQUFDYSxNQUFELENBQU4sQ0FBZVYsV0FBZjtBQUNBSCxJQUFBQSxNQUFNLENBQUNhLE1BQU0sQ0FBQ0ksT0FBUixDQUFOLENBQXVCQyxTQUF2QjtBQUNBbEIsSUFBQUEsTUFBTSxDQUFDYSxNQUFNLENBQUNNLFNBQVIsQ0FBTixDQUF5QkMsSUFBekIsQ0FBOEJDLHFDQUFhQyxlQUEzQztBQUNELEdBYkQ7QUFlQSx1Q0FBb0IzQixVQUFwQixFQUFnQyw2QkFBaEMsRUFBK0QsWUFBWTtBQUN6RSxVQUFNYyxPQUFPLHFCQUNSYixXQUFXLENBQUNhLE9BREo7QUFFWEMsTUFBQUEsU0FBUyxFQUFFZjtBQUZBLE1BQWI7O0FBS0EsVUFBTWdCLE9BQU8sR0FBRyxJQUFJQyxpQkFBSixDQUFvQkgsT0FBcEIsQ0FBaEI7QUFDQSxVQUFNSSxNQUFNLEdBQUcsTUFBTUYsT0FBTyxDQUFDRyxNQUFSLENBQWVsQixXQUFXLENBQUMyQixXQUFaLENBQXdCckIsUUFBdkMsQ0FBckI7QUFDQUYsSUFBQUEsTUFBTSxDQUFDYSxNQUFELENBQU4sQ0FBZVYsV0FBZjtBQUNBLFVBQU1xQixLQUFLLEdBQUksR0FBRVgsTUFBTSxDQUFDTSxTQUFQLElBQW9CLEVBQUcsSUFBR04sTUFBTSxDQUFDWSxZQUFQLElBQXVCLEVBQUcsRUFBdkQsQ0FBeURDLElBQXpELEVBQWQ7QUFDQTFCLElBQUFBLE1BQU0sQ0FBQ3dCLEtBQUQsQ0FBTixDQUFjSixJQUFkLENBQW1CLEVBQW5CO0FBQ0FwQixJQUFBQSxNQUFNLENBQUNhLE1BQU0sQ0FBQ0ksT0FBUixDQUFOLENBQXVCVSxVQUF2QjtBQUVBLHdDQUFtQmhDLFVBQW5CLEVBQStCa0IsTUFBTSxDQUFDZSxRQUFQLElBQW1CLEVBQWxEO0FBQ0QsR0FkRDtBQWVELENBekNPLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgSGFwb2FsaW1TY3JhcGVyIGZyb20gJy4vaGFwb2FsaW0nO1xuaW1wb3J0IHtcbiAgbWF5YmVUZXN0Q29tcGFueUFQSSwgZXh0ZW5kQXN5bmNUaW1lb3V0LCBnZXRUZXN0c0NvbmZpZywgZXhwb3J0VHJhbnNhY3Rpb25zLFxufSBmcm9tICcuLi90ZXN0cy90ZXN0cy11dGlscyc7XG5pbXBvcnQgeyBTQ1JBUEVSUyB9IGZyb20gJy4uL2RlZmluaXRpb25zJztcbmltcG9ydCB7IExvZ2luUmVzdWx0cyB9IGZyb20gJy4vYmFzZS1zY3JhcGVyLXdpdGgtYnJvd3Nlcic7XG5cbmNvbnN0IENPTVBBTllfSUQgPSAnaGFwb2FsaW0nOyAvLyBUT0RPIHRoaXMgcHJvcGVydHkgc2hvdWxkIGJlIGhhcmQtY29kZWQgaW4gdGhlIHByb3ZpZGVyXG5jb25zdCB0ZXN0c0NvbmZpZyA9IGdldFRlc3RzQ29uZmlnKCk7XG5cbmRlc2NyaWJlKCdIYXBvYWxpbSBsZWdhY3kgc2NyYXBlcicsICgpID0+IHtcbiAgYmVmb3JlQWxsKCgpID0+IHtcbiAgICBleHRlbmRBc3luY1RpbWVvdXQoKTsgLy8gVGhlIGRlZmF1bHQgdGltZW91dCBpcyA1IHNlY29uZHMgcGVyIGFzeW5jIHRlc3QsIHRoaXMgZnVuY3Rpb24gZXh0ZW5kcyB0aGUgdGltZW91dCB2YWx1ZVxuICB9KTtcblxuICB0ZXN0KCdzaG91bGQgZXhwb3NlIGxvZ2luIGZpZWxkcyBpbiBzY3JhcGVycyBjb25zdGFudCcsICgpID0+IHtcbiAgICBleHBlY3QoU0NSQVBFUlMuaGFwb2FsaW0pLnRvQmVEZWZpbmVkKCk7XG4gICAgZXhwZWN0KFNDUkFQRVJTLmhhcG9hbGltLmxvZ2luRmllbGRzKS50b0NvbnRhaW4oJ3VzZXJDb2RlJyk7XG4gICAgZXhwZWN0KFNDUkFQRVJTLmhhcG9hbGltLmxvZ2luRmllbGRzKS50b0NvbnRhaW4oJ3Bhc3N3b3JkJyk7XG4gIH0pO1xuXG4gIG1heWJlVGVzdENvbXBhbnlBUEkoQ09NUEFOWV9JRCwgKGNvbmZpZykgPT4gY29uZmlnLmNvbXBhbnlBUEkuaW52YWxpZFBhc3N3b3JkKSgnc2hvdWxkIGZhaWwgb24gaW52YWxpZCB1c2VyL3Bhc3N3b3JkXCInLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICAgIC4uLnRlc3RzQ29uZmlnLm9wdGlvbnMsXG4gICAgICBjb21wYW55SWQ6IENPTVBBTllfSUQsXG4gICAgfTtcblxuICAgIGNvbnN0IHNjcmFwZXIgPSBuZXcgSGFwb2FsaW1TY3JhcGVyKG9wdGlvbnMpO1xuXG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgc2NyYXBlci5zY3JhcGUoeyB1c2VyQ29kZTogJ2UxMHMxMicsIHBhc3N3b3JkOiAnM2Yzc3MzZCcgfSk7XG5cbiAgICBleHBlY3QocmVzdWx0KS50b0JlRGVmaW5lZCgpO1xuICAgIGV4cGVjdChyZXN1bHQuc3VjY2VzcykudG9CZUZhbHN5KCk7XG4gICAgZXhwZWN0KHJlc3VsdC5lcnJvclR5cGUpLnRvQmUoTG9naW5SZXN1bHRzLkludmFsaWRQYXNzd29yZCk7XG4gIH0pO1xuXG4gIG1heWJlVGVzdENvbXBhbnlBUEkoQ09NUEFOWV9JRCkoJ3Nob3VsZCBzY3JhcGUgdHJhbnNhY3Rpb25zXCInLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICAgIC4uLnRlc3RzQ29uZmlnLm9wdGlvbnMsXG4gICAgICBjb21wYW55SWQ6IENPTVBBTllfSUQsXG4gICAgfTtcblxuICAgIGNvbnN0IHNjcmFwZXIgPSBuZXcgSGFwb2FsaW1TY3JhcGVyKG9wdGlvbnMpO1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHNjcmFwZXIuc2NyYXBlKHRlc3RzQ29uZmlnLmNyZWRlbnRpYWxzLmhhcG9hbGltKTtcbiAgICBleHBlY3QocmVzdWx0KS50b0JlRGVmaW5lZCgpO1xuICAgIGNvbnN0IGVycm9yID0gYCR7cmVzdWx0LmVycm9yVHlwZSB8fCAnJ30gJHtyZXN1bHQuZXJyb3JNZXNzYWdlIHx8ICcnfWAudHJpbSgpO1xuICAgIGV4cGVjdChlcnJvcikudG9CZSgnJyk7XG4gICAgZXhwZWN0KHJlc3VsdC5zdWNjZXNzKS50b0JlVHJ1dGh5KCk7XG5cbiAgICBleHBvcnRUcmFuc2FjdGlvbnMoQ09NUEFOWV9JRCwgcmVzdWx0LmFjY291bnRzIHx8IFtdKTtcbiAgfSk7XG59KTtcbiJdfQ==
50
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaGFwb2FsaW0iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl90ZXN0c1V0aWxzIiwiX2RlZmluaXRpb25zIiwiX2Jhc2VTY3JhcGVyV2l0aEJyb3dzZXIiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIm93bktleXMiLCJvYmplY3QiLCJlbnVtZXJhYmxlT25seSIsImtleXMiLCJPYmplY3QiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJzeW1ib2xzIiwiZmlsdGVyIiwic3ltIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJ0YXJnZXQiLCJpIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwic291cmNlIiwiZm9yRWFjaCIsImtleSIsIl9kZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJ2YWx1ZSIsImNvbmZpZ3VyYWJsZSIsIndyaXRhYmxlIiwiQ09NUEFOWV9JRCIsInRlc3RzQ29uZmlnIiwiZ2V0VGVzdHNDb25maWciLCJkZXNjcmliZSIsImJlZm9yZUFsbCIsImV4dGVuZEFzeW5jVGltZW91dCIsInRlc3QiLCJleHBlY3QiLCJTQ1JBUEVSUyIsImhhcG9hbGltIiwidG9CZURlZmluZWQiLCJsb2dpbkZpZWxkcyIsInRvQ29udGFpbiIsIm1heWJlVGVzdENvbXBhbnlBUEkiLCJjb25maWciLCJjb21wYW55QVBJIiwiaW52YWxpZFBhc3N3b3JkIiwib3B0aW9ucyIsImNvbXBhbnlJZCIsInNjcmFwZXIiLCJIYXBvYWxpbVNjcmFwZXIiLCJyZXN1bHQiLCJzY3JhcGUiLCJ1c2VyQ29kZSIsInBhc3N3b3JkIiwic3VjY2VzcyIsInRvQmVGYWxzeSIsImVycm9yVHlwZSIsInRvQmUiLCJMb2dpblJlc3VsdHMiLCJJbnZhbGlkUGFzc3dvcmQiLCJjcmVkZW50aWFscyIsImVycm9yIiwiZXJyb3JNZXNzYWdlIiwidHJpbSIsInRvQmVUcnV0aHkiLCJleHBvcnRUcmFuc2FjdGlvbnMiLCJhY2NvdW50cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JhcGVycy9oYXBvYWxpbS50ZXN0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBIYXBvYWxpbVNjcmFwZXIgZnJvbSAnLi9oYXBvYWxpbSc7XG5pbXBvcnQge1xuICBtYXliZVRlc3RDb21wYW55QVBJLCBleHRlbmRBc3luY1RpbWVvdXQsIGdldFRlc3RzQ29uZmlnLCBleHBvcnRUcmFuc2FjdGlvbnMsXG59IGZyb20gJy4uL3Rlc3RzL3Rlc3RzLXV0aWxzJztcbmltcG9ydCB7IFNDUkFQRVJTIH0gZnJvbSAnLi4vZGVmaW5pdGlvbnMnO1xuaW1wb3J0IHsgTG9naW5SZXN1bHRzIH0gZnJvbSAnLi9iYXNlLXNjcmFwZXItd2l0aC1icm93c2VyJztcblxuY29uc3QgQ09NUEFOWV9JRCA9ICdoYXBvYWxpbSc7IC8vIFRPRE8gdGhpcyBwcm9wZXJ0eSBzaG91bGQgYmUgaGFyZC1jb2RlZCBpbiB0aGUgcHJvdmlkZXJcbmNvbnN0IHRlc3RzQ29uZmlnID0gZ2V0VGVzdHNDb25maWcoKTtcblxuZGVzY3JpYmUoJ0hhcG9hbGltIGxlZ2FjeSBzY3JhcGVyJywgKCkgPT4ge1xuICBiZWZvcmVBbGwoKCkgPT4ge1xuICAgIGV4dGVuZEFzeW5jVGltZW91dCgpOyAvLyBUaGUgZGVmYXVsdCB0aW1lb3V0IGlzIDUgc2Vjb25kcyBwZXIgYXN5bmMgdGVzdCwgdGhpcyBmdW5jdGlvbiBleHRlbmRzIHRoZSB0aW1lb3V0IHZhbHVlXG4gIH0pO1xuXG4gIHRlc3QoJ3Nob3VsZCBleHBvc2UgbG9naW4gZmllbGRzIGluIHNjcmFwZXJzIGNvbnN0YW50JywgKCkgPT4ge1xuICAgIGV4cGVjdChTQ1JBUEVSUy5oYXBvYWxpbSkudG9CZURlZmluZWQoKTtcbiAgICBleHBlY3QoU0NSQVBFUlMuaGFwb2FsaW0ubG9naW5GaWVsZHMpLnRvQ29udGFpbigndXNlckNvZGUnKTtcbiAgICBleHBlY3QoU0NSQVBFUlMuaGFwb2FsaW0ubG9naW5GaWVsZHMpLnRvQ29udGFpbigncGFzc3dvcmQnKTtcbiAgfSk7XG5cbiAgbWF5YmVUZXN0Q29tcGFueUFQSShDT01QQU5ZX0lELCAoY29uZmlnKSA9PiBjb25maWcuY29tcGFueUFQSS5pbnZhbGlkUGFzc3dvcmQpKCdzaG91bGQgZmFpbCBvbiBpbnZhbGlkIHVzZXIvcGFzc3dvcmRcIicsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgLi4udGVzdHNDb25maWcub3B0aW9ucyxcbiAgICAgIGNvbXBhbnlJZDogQ09NUEFOWV9JRCxcbiAgICB9O1xuXG4gICAgY29uc3Qgc2NyYXBlciA9IG5ldyBIYXBvYWxpbVNjcmFwZXIob3B0aW9ucyk7XG5cbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBzY3JhcGVyLnNjcmFwZSh7IHVzZXJDb2RlOiAnZTEwczEyJywgcGFzc3dvcmQ6ICczZjNzczNkJyB9KTtcblxuICAgIGV4cGVjdChyZXN1bHQpLnRvQmVEZWZpbmVkKCk7XG4gICAgZXhwZWN0KHJlc3VsdC5zdWNjZXNzKS50b0JlRmFsc3koKTtcbiAgICBleHBlY3QocmVzdWx0LmVycm9yVHlwZSkudG9CZShMb2dpblJlc3VsdHMuSW52YWxpZFBhc3N3b3JkKTtcbiAgfSk7XG5cbiAgbWF5YmVUZXN0Q29tcGFueUFQSShDT01QQU5ZX0lEKSgnc2hvdWxkIHNjcmFwZSB0cmFuc2FjdGlvbnNcIicsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgLi4udGVzdHNDb25maWcub3B0aW9ucyxcbiAgICAgIGNvbXBhbnlJZDogQ09NUEFOWV9JRCxcbiAgICB9O1xuXG4gICAgY29uc3Qgc2NyYXBlciA9IG5ldyBIYXBvYWxpbVNjcmFwZXIob3B0aW9ucyk7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgc2NyYXBlci5zY3JhcGUodGVzdHNDb25maWcuY3JlZGVudGlhbHMuaGFwb2FsaW0pO1xuICAgIGV4cGVjdChyZXN1bHQpLnRvQmVEZWZpbmVkKCk7XG4gICAgY29uc3QgZXJyb3IgPSBgJHtyZXN1bHQuZXJyb3JUeXBlIHx8ICcnfSAke3Jlc3VsdC5lcnJvck1lc3NhZ2UgfHwgJyd9YC50cmltKCk7XG4gICAgZXhwZWN0KGVycm9yKS50b0JlKCcnKTtcbiAgICBleHBlY3QocmVzdWx0LnN1Y2Nlc3MpLnRvQmVUcnV0aHkoKTtcblxuICAgIGV4cG9ydFRyYW5zYWN0aW9ucyhDT01QQU5ZX0lELCByZXN1bHQuYWNjb3VudHMgfHwgW10pO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUEsSUFBQUEsU0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsV0FBQSxHQUFBRCxPQUFBO0FBR0EsSUFBQUUsWUFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsdUJBQUEsR0FBQUgsT0FBQTtBQUEyRCxTQUFBRCx1QkFBQUssR0FBQSxXQUFBQSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxHQUFBRCxHQUFBLEtBQUFFLE9BQUEsRUFBQUYsR0FBQTtBQUFBLFNBQUFHLFFBQUFDLE1BQUEsRUFBQUMsY0FBQSxRQUFBQyxJQUFBLEdBQUFDLE1BQUEsQ0FBQUQsSUFBQSxDQUFBRixNQUFBLE9BQUFHLE1BQUEsQ0FBQUMscUJBQUEsUUFBQUMsT0FBQSxHQUFBRixNQUFBLENBQUFDLHFCQUFBLENBQUFKLE1BQUEsT0FBQUMsY0FBQSxFQUFBSSxPQUFBLEdBQUFBLE9BQUEsQ0FBQUMsTUFBQSxXQUFBQyxHQUFBLFdBQUFKLE1BQUEsQ0FBQUssd0JBQUEsQ0FBQVIsTUFBQSxFQUFBTyxHQUFBLEVBQUFFLFVBQUEsTUFBQVAsSUFBQSxDQUFBUSxJQUFBLENBQUFDLEtBQUEsQ0FBQVQsSUFBQSxFQUFBRyxPQUFBLFlBQUFILElBQUE7QUFBQSxTQUFBVSxjQUFBQyxNQUFBLGFBQUFDLENBQUEsTUFBQUEsQ0FBQSxHQUFBQyxTQUFB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
@@ -1,2 +1,2 @@
1
1
  "use strict";
2
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbXX0=
2
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmFwZXJzL2ludGVyZmFjZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCcm93c2VyLCBQYWdlIH0gZnJvbSAncHVwcGV0ZWVyJztcbmltcG9ydCB7IENvbXBhbnlUeXBlcywgU2NyYXBlclByb2dyZXNzVHlwZXMgfSBmcm9tICcuLi9kZWZpbml0aW9ucyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbnNBY2NvdW50IH0gZnJvbSAnLi4vdHJhbnNhY3Rpb25zJztcbmltcG9ydCB7IEVycm9yUmVzdWx0LCBTY3JhcGVyRXJyb3JUeXBlcyB9IGZyb20gJy4vZXJyb3JzJztcblxuLy8gVE9ETzogUmVtb3ZlIHRoaXMgdHlwZSB3aGVuIHRoZSBzY3JhcGVyICdmYWN0b3J5JyB3aWxsIHJldHVybiBjb25jcmV0ZSBzY3JhcGVyIHR5cGVzXG4vLyBJbnN0ZWFkIG9mIGEgZ2VuZXJpYyBpbnRlcmZhY2UgKHdoaWNoIGluIHR1cm4gdXNlcyB0aGlzIHR5cGUpXG5leHBvcnQgdHlwZSBTY3JhcGVyQ3JlZGVudGlhbHMgPVxuICAgIHt1c2VyQ29kZTogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nfSB8XG4gICAge3VzZXJuYW1lOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmd9IHxcbiAgICB7aWQ6IHN0cmluZywgcGFzc3dvcmQ6IHN0cmluZ30gfFxuICAgIHtpZDogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nLCBudW06IHN0cmluZ30gfFxuICAgIHtpZDogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nLCBjYXJkNkRpZ2l0czogc3RyaW5nfSB8XG4gICAge3VzZXJuYW1lOiBzdHJpbmcsIG5hdGlvbmFsSUQ6IHN0cmluZywgcGFzc3dvcmQ6IHN0cmluZ30gfFxuICAgICh7ZW1haWw6IHN0cmluZywgcGFzc3dvcmQ6IHN0cmluZ30gJiAoe1xuICAgICAgb3RwQ29kZVJldHJpZXZlcjogKCkgPT4gUHJvbWlzZTxzdHJpbmc+O1xuICAgICAgcGhvbmVOdW1iZXI6IHN0cmluZztcbiAgICB9IHwge1xuICAgICAgb3RwTG9uZ1Rlcm1Ub2tlbjogc3RyaW5nO1xuICAgIH0pKTtcblxuZXhwb3J0IGludGVyZmFjZSBGdXR1cmVEZWJpdCB7XG4gIGFtb3VudDogbnVtYmVyO1xuICBhbW91bnRDdXJyZW5jeTogc3RyaW5nO1xuICBjaGFyZ2VEYXRlPzogc3RyaW5nO1xuICBiYW5rQWNjb3VudE51bWJlcj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTY3JhcGVyT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgY29tcGFueSB5b3Ugd2FudCB0byBzY3JhcGVcbiAgICovXG4gIGNvbXBhbnlJZDogQ29tcGFueVR5cGVzO1xuXG4gIC8qKlxuICAgKiBpbmNsdWRlIG1vcmUgZGVidWcgaW5mbyBhYm91dCBpbiB0aGUgb3V0cHV0XG4gICAqL1xuICB2ZXJib3NlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogdGhlIGRhdGUgdG8gZmV0Y2ggdHJhbnNhY3Rpb25zIGZyb20gKGNhbid0IGJlIGJlZm9yZSB0aGUgbWluaW11bSBhbGxvd2VkIHRpbWUgZGlmZmVyZW5jZSBmb3IgdGhlIHNjcmFwZXIpXG4gICAqL1xuICBzdGFydERhdGU6IERhdGU7XG5cbiAgLyoqXG4gICAqIHNob3dzIHRoZSBicm93c2VyIHdoaWxlIHNjcmFwaW5nLCBnb29kIGZvciBkZWJ1Z2dpbmcgKGRlZmF1bHQgZmFsc2UpXG4gICAqL1xuICBzaG93QnJvd3Nlcj86IGJvb2xlYW47XG5cblxuICAvKipcbiAgICogc2NyYXBlIHRyYW5zYWN0aW9ucyB0byBiZSBwcm9jZXNzZWQgWCBtb250aHMgaW4gdGhlIGZ1dHVyZVxuICAgKi9cbiAgZnV0dXJlTW9udGhzVG9TY3JhcGU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIG9wdGlvbiBmcm9tIGluaXQgcHVwcGV0ZWVyIGJyb3dzZXIgaW5zdGFuY2Ugb3V0c2lkZSB0aGUgbGliYXJ5IHNjb3BlLiB5b3UgY2FuIGdldFxuICAgKiBicm93c2VyIGRpcmV0bHkgZnJvbSBwdXBwZXRlZXIgdmlhIGBwdXBwZXRlZXIubGF1bmNoKClgXG4gICAqL1xuICBicm93c2VyPzogYW55O1xuXG4gIC8qKlxuICAgKiBwcm92aWRlIGEgcGF0Y2ggdG8gbG9jYWwgY2hyb21pdW0gdG8gYmUgdXNlZCBieSBwdXBwZXRlZXIuIFJlbGV2YW50IHdoZW4gdXNpbmdcbiAgICogYGlzcmFlbGktYmFuay1zY3JhcGVycy1jb3JlYCBsaWJyYXJ5XG4gICAqL1xuICBleGVjdXRhYmxlUGF0aD86IHN0cmluZztcblxuICAvKipcbiAgICogaWYgc2V0IHRvIHRydWUsIGFsbCBpbnN0YWxsbWVudCB0cmFuc2FjdGlvbnMgd2lsbCBiZSBjb21iaW5lIGludG8gdGhlIGZpcnN0IG9uZVxuICAgKi9cbiAgY29tYmluZUluc3RhbGxtZW50cz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIGFkZGl0aW9uYWwgYXJndW1lbnRzIHRvIHBhc3MgdG8gdGhlIGJyb3dzZXIgaW5zdGFuY2UuIFRoZSBsaXN0IG9mIGZsYWdzIGNhbiBiZSBmb3VuZCBpblxuICAgKlxuICAgKiBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL01vemlsbGEvQ29tbWFuZF9MaW5lX09wdGlvbnNcbiAgICogaHR0cHM6Ly9wZXRlci5zaC9leHBlcmltZW50cy9jaHJvbWl1bS1jb21tYW5kLWxpbmUtc3dpdGNoZXMvXG4gICAqL1xuICBhcmdzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIE1heGltdW0gbmF2aWdhdGlvbiB0aW1lIGluIG1pbGxpc2Vjb25kcywgcGFzcyAwIHRvIGRpc2FibGUgdGltZW91dC5cbiAgICogQGRlZmF1bHQgMzAwMDBcbiAgICovXG4gIHRpbWVvdXQ/OiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIGFkanVzdCB0aGUgYnJvd3NlciBpbnN0YW5jZSBiZWZvcmUgaXQgaXMgYmVpbmcgdXNlZFxuICAgKlxuICAgKiBAcGFyYW0gYnJvd3NlclxuICAgKi9cbiAgcHJlcGFyZUJyb3dzZXI/OiAoYnJvd3NlcjogQnJvd3NlcikgPT4gUHJvbWlzZTx2b2lkPjtcblxuICAvKipcbiAgICogYWRqdXN0IHRoZSBwYWdlIGluc3RhbmNlIGJlZm9yZSBpdCBpcyBiZWluZyB1c2VkLlxuICAgKlxuICAgKiBAcGFyYW0gcGFnZVxuICAgKi9cbiAgcHJlcGFyZVBhZ2U/OiAocGFnZTogUGFnZSkgPT4gUHJvbWlzZTx2b2lkPjtcblxuICAvKipcbiAgICogaWYgc2V0LCBzdG9yZSBhIHNjcmVlbnNob3QgaWYgZmFpbGVkIHRvIHNjcmFwZS4gVXNlZCBmb3IgZGVidWcgcHVycG9zZXNcbiAgICovXG4gIHN0b3JlRmFpbHVyZVNjcmVlblNob3RQYXRoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBpZiBzZXQsIHdpbGwgc2V0IHRoZSB0aW1lb3V0IGluIG1pbGxpc2Vjb25kcyBvZiBwdXBwZXRlZXIncyBgcGFnZS5zZXREZWZhdWx0VGltZW91dGAuXG4gICAqL1xuICBkZWZhdWx0VGltZW91dD86IG51bWJlcjtcblxuICAvKipcbiAgICogT3B0aW9ucyBmb3IgbWFuaXB1bGF0aW9uIG9mIG91dHB1dCBkYXRhXG4gICAqL1xuICBvdXRwdXREYXRhPzogT3V0cHV0RGF0YU9wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFBlcmZvcm0gYWRkaXRpb25hbCBvcGVyYXRpb24gZm9yIGVhY2ggdHJhbnNhY3Rpb24gdG8gZ2V0IG1vcmUgaW5mb3JtYXRpb24gKExpa2UgY2F0ZWdvcnkpIGFib3V0IGl0LlxuICAgKiBQbGVhc2Ugbm90ZTogSXQgd2lsbCB0YWtlIG1vcmUgdGltZSB0byBmaW5pc2ggdGhlIHByb2Nlc3MuXG4gICAqL1xuICBhZGRpdGlvbmFsVHJhbnNhY3Rpb25JbmZvcm1hdGlvbj86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT3V0cHV0RGF0YU9wdGlvbnMge1xuICAvKipcbiAgICogaWYgdHJ1ZSwgdGhlIHJlc3VsdCB3b3VsZG4ndCBiZSBmaWx0ZXJlZCBvdXQgYnkgZGF0ZSwgYW5kIHlvdSB3aWxsIHJldHVybiB1bmZpbHRlcmVkIHNjcmFwcGVkIGRhdGEuXG4gICAqL1xuICBlbmFibGVUcmFuc2FjdGlvbnNGaWx0ZXJCeURhdGU/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNjcmFwZXJTY3JhcGluZ1Jlc3VsdCB7XG4gIHN1Y2Nlc3M6IGJvb2xlYW47XG4gIGFjY291bnRzPzogVHJhbnNhY3Rpb25zQWNjb3VudFtdO1xuICBmdXR1cmVEZWJpdHM/OiBGdXR1cmVEZWJpdFtdO1xuICBlcnJvclR5cGU/OiBTY3JhcGVyRXJyb3JUeXBlcztcbiAgZXJyb3JNZXNzYWdlPzogc3RyaW5nOyAvLyBvbmx5IG9uIHN1Y2Nlc3M9ZmFsc2Vcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTY3JhcGVyPFRDcmVkZW50aWFscyBleHRlbmRzIFNjcmFwZXJDcmVkZW50aWFscz4ge1xuICBzY3JhcGUoY3JlZGVudGlhbHM6IFRDcmVkZW50aWFscyk6IFByb21pc2U8U2NyYXBlclNjcmFwaW5nUmVzdWx0PjtcbiAgb25Qcm9ncmVzcyhmdW5jOiAoY29tcGFueUlkOiBDb21wYW55VHlwZXMsIHBheWxvYWQ6IHt0eXBlOiBTY3JhcGVyUHJvZ3Jlc3NUeXBlc30pID0+IHZvaWQpOiB2b2lkO1xuICB0cmlnZ2VyVHdvRmFjdG9yQXV0aChwaG9uZU51bWJlcjogc3RyaW5nKTogUHJvbWlzZTxTY3JhcGVyVHdvRmFjdG9yQXV0aFRyaWdnZXJSZXN1bHQ+O1xuICBnZXRMb25nVGVybVR3b0ZhY3RvclRva2VuKG90cENvZGU6IHN0cmluZyk6IFByb21pc2U8U2NyYXBlckdldExvbmdUZXJtVHdvRmFjdG9yVG9rZW5SZXN1bHQ+O1xufVxuXG5leHBvcnQgdHlwZSBTY3JhcGVyVHdvRmFjdG9yQXV0aFRyaWdnZXJSZXN1bHQgPSBFcnJvclJlc3VsdCB8IHtcbiAgc3VjY2VzczogdHJ1ZTtcbn07XG5cbmV4cG9ydCB0eXBlIFNjcmFwZXJHZXRMb25nVGVybVR3b0ZhY3RvclRva2VuUmVzdWx0ID0gRXJyb3JSZXN1bHQgfCB7XG4gIHN1Y2Nlc3M6IHRydWU7XG4gIGxvbmdUZXJtVHdvRmFjdG9yQXV0aFRva2VuOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIFNjcmFwZXJMb2dpblJlc3VsdCB7XG4gIHN1Y2Nlc3M6IGJvb2xlYW47XG4gIGVycm9yVHlwZT86IFNjcmFwZXJFcnJvclR5cGVzO1xuICBlcnJvck1lc3NhZ2U/OiBzdHJpbmc7IC8vIG9ubHkgb24gc3VjY2Vzcz1mYWxzZVxuICBwZXJzaXN0ZW50T3RwVG9rZW4/OiBzdHJpbmc7XG59XG4iXSwibWFwcGluZ3MiOiIifQ==
@@ -4,21 +4,15 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _baseIsracardAmex = _interopRequireDefault(require("./base-isracard-amex"));
9
-
10
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
-
12
9
  const BASE_URL = 'https://digital.isracard.co.il';
13
10
  const COMPANY_CODE = '11';
14
-
15
11
  class IsracardScraper extends _baseIsracardAmex.default {
16
12
  constructor(options) {
17
13
  super(options, BASE_URL, COMPANY_CODE);
18
14
  }
19
-
20
15
  }
21
-
22
16
  var _default = IsracardScraper;
23
17
  exports.default = _default;
24
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JhcGVycy9pc3JhY2FyZC50cyJdLCJuYW1lcyI6WyJCQVNFX1VSTCIsIkNPTVBBTllfQ09ERSIsIklzcmFjYXJkU2NyYXBlciIsIklzcmFjYXJkQW1leEJhc2VTY3JhcGVyIiwiY29uc3RydWN0b3IiLCJvcHRpb25zIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7Ozs7QUFHQSxNQUFNQSxRQUFRLEdBQUcsZ0NBQWpCO0FBQ0EsTUFBTUMsWUFBWSxHQUFHLElBQXJCOztBQUVBLE1BQU1DLGVBQU4sU0FBOEJDLHlCQUE5QixDQUFzRDtBQUNwREMsRUFBQUEsV0FBVyxDQUFDQyxPQUFELEVBQTBCO0FBQ25DLFVBQU1BLE9BQU4sRUFBZUwsUUFBZixFQUF5QkMsWUFBekI7QUFDRDs7QUFIbUQ7O2VBTXZDQyxlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IElzcmFjYXJkQW1leEJhc2VTY3JhcGVyIGZyb20gJy4vYmFzZS1pc3JhY2FyZC1hbWV4JztcbmltcG9ydCB7IFNjcmFwZXJPcHRpb25zIH0gZnJvbSAnLi9pbnRlcmZhY2UnO1xuXG5jb25zdCBCQVNFX1VSTCA9ICdodHRwczovL2RpZ2l0YWwuaXNyYWNhcmQuY28uaWwnO1xuY29uc3QgQ09NUEFOWV9DT0RFID0gJzExJztcblxuY2xhc3MgSXNyYWNhcmRTY3JhcGVyIGV4dGVuZHMgSXNyYWNhcmRBbWV4QmFzZVNjcmFwZXIge1xuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBTY3JhcGVyT3B0aW9ucykge1xuICAgIHN1cGVyKG9wdGlvbnMsIEJBU0VfVVJMLCBDT01QQU5ZX0NPREUpO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IElzcmFjYXJkU2NyYXBlcjtcbiJdfQ==
18
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYmFzZUlzcmFjYXJkQW1leCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJCQVNFX1VSTCIsIkNPTVBBTllfQ09ERSIsIklzcmFjYXJkU2NyYXBlciIsIklzcmFjYXJkQW1leEJhc2VTY3JhcGVyIiwiY29uc3RydWN0b3IiLCJvcHRpb25zIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmFwZXJzL2lzcmFjYXJkLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBJc3JhY2FyZEFtZXhCYXNlU2NyYXBlciBmcm9tICcuL2Jhc2UtaXNyYWNhcmQtYW1leCc7XG5pbXBvcnQgeyBTY3JhcGVyT3B0aW9ucyB9IGZyb20gJy4vaW50ZXJmYWNlJztcblxuY29uc3QgQkFTRV9VUkwgPSAnaHR0cHM6Ly9kaWdpdGFsLmlzcmFjYXJkLmNvLmlsJztcbmNvbnN0IENPTVBBTllfQ09ERSA9ICcxMSc7XG5cbmNsYXNzIElzcmFjYXJkU2NyYXBlciBleHRlbmRzIElzcmFjYXJkQW1leEJhc2VTY3JhcGVyIHtcbiAgY29uc3RydWN0b3Iob3B0aW9uczogU2NyYXBlck9wdGlvbnMpIHtcbiAgICBzdXBlcihvcHRpb25zLCBCQVNFX1VSTCwgQ09NUEFOWV9DT0RFKTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBJc3JhY2FyZFNjcmFwZXI7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLGlCQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFBMkQsU0FBQUQsdUJBQUFFLEdBQUEsV0FBQUEsR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsR0FBQUQsR0FBQSxLQUFBRSxPQUFBLEVBQUFGLEdBQUE7QUFHM0QsTUFBTUcsUUFBUSxHQUFHLGdDQUFnQztBQUNqRCxNQUFNQyxZQUFZLEdBQUcsSUFBSTtBQUV6QixNQUFNQyxlQUFlLFNBQVNDLHlCQUF1QixDQUFDO0VBQ3BEQyxXQUFXQSxDQUFDQyxPQUF1QixFQUFFO0lBQ25DLEtBQUssQ0FBQ0EsT0FBTyxFQUFFTCxRQUFRLEVBQUVDLFlBQVksQ0FBQztFQUN4QztBQUNGO0FBQUMsSUFBQUssUUFBQSxHQUVjSixlQUFlO0FBQUFLLE9BQUEsQ0FBQVIsT0FBQSxHQUFBTyxRQUFBIn0=